Regular Expression Search and Replace (RESearch)

Здесь можно обсудить ваш любимый плагин.
AleXH
Posts: 1000
Joined: Sun 12 Apr, 2009 05:21
Been thanked: 1 time

Re: Regular Expression Search and Replace (RESearch)

Post by AleXH »

Latest post of the previous page:

В 8.27 нет.
User avatar
Cavaler
Posts: 1184
Joined: Mon 27 Jun, 2005 12:06
Been thanked: 10 times
Contact:

Re: Regular Expression Search and Replace (RESearch)

Post by Cavaler »

AleXH wrote:В 8.27 нет.
[x] Turn 'In selection' on automatically в настройках плагина.
User avatar
Cavaler
Posts: 1184
Joined: Mon 27 Jun, 2005 12:06
Been thanked: 10 times
Contact:

Re: Regular Expression Search and Replace (RESearch)

Post by Cavaler »

В новой версии 8.38 появилась возможность из Lua сразу задать параметры поиска и т.п. и вызвать его, примерно как вызов пресета.
Параметры, не заданные в вызове, остаются теми же, что были до вызова!
UPD: перезалил, чтоыб последнее не касалось параметров типа "Run as 'Count All'"
tsul
Posts: 37
Joined: Mon 18 Oct, 2010 21:56
Has thanked: 11 times
Been thanked: 1 time

Re: Regular Expression Search and Replace (RESearch)

Post by tsul »

Какая максимальная версия RESearch для Far 3.0 stable (b3800) ?
У меня была версия RESearch 8.30, Far 3.0 b3800.
Обновил RESearch до 8.38, не работает -- хочет Far 3.0 b3874.
Это обязательно? Не хотелось бы со stable уходить.
User avatar
John Doe
Бюрократ
Posts: 13862
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Re: Regular Expression Search and Replace (RESearch)

Post by John Doe »

Это обязательно? Не хотелось бы со stable уходить.
В данный конкретный момент "nightly" стабильнее чем "stable".
User avatar
HaRT
Moderator
Posts: 10866
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Regular Expression Search and Replace (RESearch)

Post by HaRT »

Cavaler
Давняя неинтуитивность (небольшая): выполняю в редакторе замену с подтверждением (в достаточно длинном файле), на очередном вхождении говорю Skip — диалог пропадает, выделение остаётся, ничего не происходит. Некоторое время жду появления вопроса про следующее вхождение, но вскоре понимаю, что то было последнее.
Вот чтобы факт окончания операции был более интуитивным, предлагаю перед возвратом управления снимать возвращать до-поисковое выделение — это будет хорошая визуальная индикация.
18:32
Хм, когда ищем в выделенном, так и происходит. Т.е. требуется улучшение в случае, когда ищем не только в выделенном.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
Cavaler
Posts: 1184
Joined: Mon 27 Jun, 2005 12:06
Been thanked: 10 times
Contact:

Re: Regular Expression Search and Replace (RESearch)

Post by Cavaler »

HaRT wrote:предлагаю перед возвратом управления снимать возвращать до-поисковое выделение — это будет хорошая визуальная индикация.
Блин я думал последняя сборка просто убила всем компы, неделлю никто не отзывался...
Да, можно сделать.
AleXH
Posts: 1000
Joined: Sun 12 Apr, 2009 05:21
Been thanked: 1 time

Re: Regular Expression Search and Replace (RESearch)

Post by AleXH »

Cavaler
Прошу рассмотреть возможность добавления в замену (панели, редактор) 3-state опции - [ ] неактивна, [?] добавить в начало файла, [X] добавить в конец файла. Без последней и исправления фартимом бага 2657 уход с 8.27 невозможен.
User avatar
Cavaler
Posts: 1184
Joined: Mon 27 Jun, 2005 12:06
Been thanked: 10 times
Contact:

Re: Regular Expression Search and Replace (RESearch)

Post by Cavaler »

AleXH wrote:Cavaler
Прошу рассмотреть возможность добавления в замену (панели, редактор) 3-state опции - [ ] неактивна, [?] добавить в начало файла, [X] добавить в конец файла. Без последней и исправления фартимом бага 2657 уход с 8.27 невозможен.
Нифига не понял
AleXH
Posts: 1000
Joined: Sun 12 Apr, 2009 05:21
Been thanked: 1 time

Re: Regular Expression Search and Replace (RESearch)

Post by AleXH »

8.27. Редактор, замена, батч с кучей пресетов. Нужно добавить текст в:
1. начало файла:
Искать: ^.+$
Заменить на (JS): var s='';if(named('L')==0){s='текст'+match(0)}else{s=match(0)};result(s);
2. конец файла:
Искать: ^$
Заменить на: текст\r\n

Вставка может производиться несколько раз подряд разными пресетами.

В предыдущем посте предложил рассмотреть возможность обхода движка поиска, непосредственно указывая позицию - начало файла или конец файла, деактивированная опция соответствует поиску по всему тексту (текущая реализация). Возможно, что обозначение начала [ ], конца [X] и по всему тексту [?] будет и более интуитивно.

Или существует другая возможность нахождения начала и конца текста, решающая поставленную задачу в рамках пресета? Каков максимальный размер текста для замены?
User avatar
Cavaler
Posts: 1184
Joined: Mon 27 Jun, 2005 12:06
Been thanked: 10 times
Contact:

Re: Regular Expression Search and Replace (RESearch)

Post by Cavaler »

AleXH wrote:Cavaler
Прошу рассмотреть возможность добавления в замену (панели, редактор) 3-state опции - [ ] неактивна, [?] добавить в начало файла, [X] добавить в конец файла. Без последней и исправления фартимом бага 2657 уход с 8.27 невозможен.
Делать специальную такую опцию я не буду. Зато вроде сообразил после отдыха, как же аккуратно обойти такое поведение Фара, ждите новую сборку.
AleXH
Posts: 1000
Joined: Sun 12 Apr, 2009 05:21
Been thanked: 1 time

Re: Regular Expression Search and Replace (RESearch)

Post by AleXH »

3.0.3876, 8.39 - в редакторе работает, в том числе и повторная замена не закрывая редактор. Правда редактор фара имеет проблемы с откатом по CtrlZ - упорно не хочет удалять последнее \r\n на экране.

Но в панелях: Файл 0 байт. Искать ^$, заменить на \n\r\n - результат 0a 00 0d 00 0a 00 - к каждому байту дописан нулевой.
User avatar
Cavaler
Posts: 1184
Joined: Mon 27 Jun, 2005 12:06
Been thanked: 10 times
Contact:

Re: Regular Expression Search and Replace (RESearch)

Post by Cavaler »

AleXH wrote:3.0.3876, 8.39 - в редакторе работает, в том числе и повторная замена не закрывая редактор. Правда редактор фара имеет проблемы с откатом по CtrlZ - упорно не хочет удалять последнее \r\n на экране.

Но в панелях: Файл 0 байт. Искать ^$, заменить на \n\r\n - результат 0a 00 0d 00 0a 00 - к каждому байту дописан нулевой.
А с какими точно условиями поиска? Я тут вижу баги, вообще не дающие работать с файлами нулевой длины.
А после их исправления - все OK.
AleXH
Posts: 1000
Joined: Sun 12 Apr, 2009 05:21
Been thanked: 1 time

Re: Regular Expression Search and Replace (RESearch)

Post by AleXH »

Это было с Search: In selected и юзать все символьные таблицы, без таблиц вообще не находит этого файла.
User avatar
John Doe
Бюрократ
Posts: 13862
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Re: Regular Expression Search and Replace (RESearch)

Post by John Doe »

И снова об использовании в макросах через Plugin.Call

(1)
При указании неверных параметров в большинстве случаев плагин ведёт себя весьма корректно, и просто возвращает false.
Однако вызов Plugin.Call("F250C12A-78E2-4ABC-A784-3FDD3156E415") роняет фар.

(2)
Plugin.Call("F250C12A-78E2-4ABC-A784-3FDD3156E415", "Preset","PresetName")
В поиске/замене возможно наличие одноимённых пресетов, и соответственно при использовании этой команды может произойти совсем не то, что задумано.
Это можно было бы решить, заменив команду Preset параметром.
Plugin.Call("F250C12A-78E2-4ABC-A784-3FDD3156E415", "Replace", "Preset","PresetName".

P.S.
Имхо вся эта система пресетов/батчей сильно несовершенна, например создав пресет для поиска во вьювере - невозможно его использовать в редакторе.
User avatar
John Doe
Бюрократ
Posts: 13862
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Re: Regular Expression Search and Replace (RESearch)

Post by John Doe »

Команд довольно много, соответственно файл с макросами стал громоздким и не очень наглядным.
Предлагаю сделать так:
Attachments
RESearch.lua.7z
(749 Bytes) Downloaded 73 times
Post Reply

Return to “Обсуждение плагинов”