Вибір діапазону ліній у Блокноті ++


10

Як швидко вибрати певний діапазон рядків у Блокноті ++? У мене є текстовий файл, який містить понад 1 млн рядків, і мені потрібно видалити з нього деякі фрагменти, але вибір рядків вручну просто займає занадто багато часу. Наприклад: мені потрібно вибрати рядки від 2000 до 12000, як зробити це швидким?


1
Аналогічне запитання щодо стека переповнення.
trejder

Відповіді:


2

Я отримав кращу відповідь. Ви можете записати макрос (видаливши, наприклад, 10рядки). Потім запустіть його кілька разів.

1) Перейти до Macro > Start recording

2) утримуйте Shiftта торкніться, Downщоб позначити, наприклад, 10рядки. І видаліть їх.

3) Перейти до Macro > Stop Recording

Тепер ваш макрос записаний, ви можете зберегти його для подальшого використання.

4) Перейти до Macro > Save Current Recording Macro.... І збережіть його з ім’ям.

5) Перемістіть курсор на рядок, який потрібно видалити після цього. Після цього перейдіть до Macro > Run A Macro Multiple Times.... І виберіть свій макрос і запустіть Nпотрібні вами часи.


Це ідея! Це може спрацювати, велике спасибі :)
Mcyg

7

Просто Left Clickодин раз у черзі 2000. Потім перейдіть до рядка 12000, утримуйте Shiftі Left Clickзнову.

1) Left Clickу рядку2000

2) Перейти до лінії 12000

3) Shift+ Left Clickу рядку12000


1
Так, але я втрачаю вибір із ctrl + G. Це те, про що я говорю, починаючи з 2000 по 12000 років.
Mcyg

Обидва рішення працюють дякую! Врятував головний біль

3

Я щойно відповів на це в цьому подібному запитанні , але це виглядає як більш відповідна відповідь тут, і я здогадуюсь, що цей Заголовок питання отримає більше звернень ... тож я публікую тут і сподіваюся, що це не так " t якийсь штучний па ... (можливо, це повинен бути лише посилання на інший?)

# File:: selectGOTO.py
#   A N++ Python Script to enhance line selection speed compared to mouse, cursor, page controls.
#   Selects text from the [ start|end ] of current line to [ end|start ] of GOTO line.

# Install using:: Plugins -> Plugin Manager -> Python Script
# Create script using:: Plugins -> Python Script -> New Script -> "selectGoto.py"
# Add to menu:: Plugins -> Python Script -> Configuration -> [select script] [ add ]
# Create shortcut:: [Restart N++]
#   Settings -> Shortcut Mapper -> Plugin Commands -> selectGOTO -> [modify] [ctrl]+[shift]+[g]

# Simple usage:
#   [ctrl]+[shift]+[g] line#
#   Do your operation... (ie: del)

from Npp import *

class startAnchor:
    pos = 0

def selectGOTO( args ):
    endPos = editor.getCurrentPos()
    if( endPos > startAnchor.pos ):
        startAnchor.pos = editor.positionFromLine( editor.lineFromPosition( startAnchor.pos ) )
    else:
        tmp = startAnchor.pos
        startAnchor.pos = endPos
        endPos = tmp
    endPos = editor.getLineEndPosition( editor.lineFromPosition( endPos ) )
    editor.setSel( startAnchor.pos, endPos )
    editor.clearCallbacks()

def main():
    startAnchor.pos = editor.getCurrentPos()
    editor.callback( selectGOTO, [SCINTILLANOTIFICATION.UPDATEUI] )
    notepad.menuCommand( MENUCOMMAND.SEARCH_GOTOLINE )

main()

Чудово! Я шукав це протягом століть. Однак я відредагував ваш код, щоб він не переміщав початкову точку вибору - не потрібно. (Видалений код після if (endPos> startAnchor.pos)).
Nigel Touch

Я також створив додаткові версії, які вибирають попередню закладку (команда 43007) та наступну закладку (43006), які мені більше підходять.
Nigel Touch

0

1) натисніть Ctrl + G дають номер рядка для переходу припустимо , що 2000
2) Клацніть правою кнопкою миші , потім виберіть Почати / Завершити варіант
3) натисніть Ctrl + G дають номер рядка , щоб перейти припустимо , що 10000
4) Клацніть правою кнопкою миші , потім виберіть Почати / Завершити варіант
5) Ctrl + c для копіювання

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.