С помощью Notepad++ можно перейти в исходный файл по определенному номеру строки, используя опцию «-n» вместе с целевым именем файла. Теперь я хотел бы запустить Notepad++ из командной строки и сразу перейти к определенному блоку определения функции, например, указав определенную текстовую строку в командной строке. Таким образом, реализуются прямые ссылки на блок кода соура, номер стартовой строки которого может часто меняться. Возможно ли это как-нибудь?
2 ответа
1
Попробуйте сначала узнать номер строки и передать ее в качестве аргумента в Notepad++.
set results = find /n "искомая строка" C:\path-to-file.txt
/n добавляет номер строки в начале ваших результатов
findstr может быть полезен для извлечения номера строки после того, как вы использовали find: echo% results% | findstr /R some_pattern
Смотрите также:
0
Лучший способ - создать небольшой скрипт (Batch, Perl и т.д.), Который извлекает номер строки и запускает Notepad++.
Вот пример с пакетом окон; чтобы запустить его, вам просто нужно сделать Notepad_jumpline.bat <filename> <section>
@REM --Notepad_jumpline.bat--
@echo off
for /f "tokens=1" %%i in ('findstr /n %2 %1') do (
set n_lines=%%i
goto _Run_Notepad_
)
:_Run_Notepad_
set n_lines=%n_lines::=%
"C:\Program Files (x86)\Notepad++\notepad++.exe" %1 -n%n_lines%