Выбор диапазона строк в Notepad ++

10

Как быстро выбрать определенный диапазон строк в Notepad ++? У меня есть текстовый файл, содержащий более 1 млн строк, и мне нужно удалить из него некоторые фрагменты, но выбор строк вручную просто занимает слишком много времени. Например: мне нужно выбрать строки от 2000 до 12000, как сделать это быстро?

Mcyg
источник
1
Подобный вопрос о переполнении стека.
Трейдер

Ответы:

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()
Thell
источник
Большой! Я искал это целую вечность. Однако я отредактировал ваш код, чтобы он не перемещал начальную точку выбора - в этом нет необходимости. (Удален код после if (endPos> startAnchor.pos)).
Найджел
Я также создал дополнительные версии, которые выбирают «Предыдущая закладка» (команда 43007) и «Следующая закладка» (43006), которые мне больше подходят.
Найджел Тач
0

1) нажмите Ctrl + G дают номер строки для перехода предположим , что 2000
2) Щелкните правой кнопкой мыши , затем выберите Начать / Завершить вариант
3) нажмите Ctrl + G дают номер строки , чтобы перейти предположим , что 10000
4) Щелкните правой кнопкой мыши , затем выберите Начать / Завершить вариант
5) Ctrl + C, чтобы скопировать

Мээндра
источник