Find & Go - Поиск с предпросмотром и переходом

Здесь обсуждается всё, что касается макросов.
buniak_a_h
Posts: 2318
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 139 times
Been thanked: 248 times
Contact:

Find & Go - Поиск с предпросмотром и переходом

Post by buniak_a_h »

Мне надоело после окончания поиска файлов, содержащих строки, открывать найденные файлы и повторять поиск (особенно, если поиск в файлах по регэкспу с помощь. плагинов, а поиск в файле настроен не через эти плагины. А также если имеется несколько строк, удовлетворяющих критерию поиска, и надо перейти на конкретную). В результате родился предлагаемый к обсуждению макрос.
Его отличия от поиска по CtrlF7:
  1. Образец может быть регэкспом в формате LUA или Perl
  2. В результатах показывается найденная строка (как GREP), а также 3 строки выше и ниже найденной
  3. При переходе на выбранную строку редактор сразу позиционируется на неё.
  4. Можно отметить несколько найденных строк (по одной в каждом файле), и тогда в редакторе будут открыты все отмеченные файлы (также с позиционированием на отмеченных строках)
  5. Из результатов поиска можно удалять "мешающие" строки
  6. Можно сворачивать - разворачивать строки, принадлежащие одному файлу
Окно поиска:
Image
Процесс поиска:
Image
Результат:
Image
Обратите внимание: в результате строки файлов BaseLoad.pas b CHECK2TU.PAS "схлопнуты" (Condensed); несколько строк помечены. Внизу окна выведены 7 строк возле текущей (3 выше и 3 ниже)



Find_n_Go.1_1_3.7z
(27.82 KiB) Downloaded 26 times
Last edited by buniak_a_h on Mon 12 Oct, 2020 22:46, edited 27 times in total.
buniak_a_h
Posts: 2318
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 139 times
Been thanked: 248 times
Contact:

Find & Go - Поиск с предпросмотром и переходом

Post by buniak_a_h »

Latest post of the previous page:

LAT wrote: Sat 09 Jan, 2021 01:01 Вы опять спросили
Я??? Вроде, не спрашивал…
citRiks
Posts: 1105
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 345 times
Been thanked: 57 times

Find & Go - Поиск с предпросмотром и переходом

Post by citRiks »

Last edited by HaRT on Sat 09 Jan, 2021 20:52, edited 1 time in total.
Reason: Спрятан офтопик
А кто не поверит в наше миролюбие, / Тот кровью умоется. / И будет такая борьба за мир, / Что камня на камне не останется.
buniak_a_h
Posts: 2318
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 139 times
Been thanked: 248 times
Contact:

Find & Go - Поиск с предпросмотром и переходом

Post by buniak_a_h »

citRiks wrote: Sat 09 Jan, 2021 17:45 Наверное оптимально заменять DLL на другую (прежнюю)
Увы! Там были ещё худшие ошибки! Например:
lua:=('abc'):match('.*()$'),('абв'):match('.*()$')
По идее, это должно быть тоже самое, что
lua:=('abc'):len()+1,('абв'):len()+1
Сейчас это - так. На старой библиотеке - нет!!! Причём, я бы понял, если бы выражение над 'абв' отличалось от него же над 'abc', но совпадало с len()+1 (типа одинаковая интерпретация терминов "позиция" и "длина"). Но len() выдавало "правильное" (на мой взгляд) значение, а match - совсем туфту. Так что и не вернуться.
Post Reply

Return to “Обсуждение макросов”