Page 26 of 28

LuaFAR Search

Posted: Fri 13 Nov, 2009 07:29
by Shmuel
Здесь можно обсуждать плагин LuaFAR Search. (Анонс).

LuaFAR Search

Posted: Fri 22 Oct, 2021 16:45
by Shmuel

Latest post of the previous page:

John Doe wrote: Sat 07 Aug, 2021 09:42 Обнаружил нежелательный эффект: при поиске сбрасывается заголовок редактора.

Например, установим editor.SetTitle(nil,"123"), и следом поищем (любую) строку.
После успешного поиска в заголовке снова имя файла.
После неуспешного во время отображения сообщения - found:0, после закрытия снова имя файла.
Ещё в августе по свежим следам "починил" этот нежелательный эффект, а сегодня обнаружил, что эта починка вызывает другой, не менее нежелательный: при сохранении файла с новым именем по ShiftF2 заголовок не меняется на новое имя файла. Видимо буду починку откатывать.

LuaFAR Search

Posted: Wed 24 Nov, 2021 19:36
by skipik
Shmuel, по мотивам.



Понятное дело, что косметика, но если вдруг будете когда-либо обновлять что-то в плагине, то попрошу показывать заголовок консоли в том режиме, что на скрине. Хотя бы просто "Search results". Это editor - luafar search - find - [делаем так, чтобы что-то нашлось] + включаем [X] 4Show All.

UPD: всё понял, спасибо большое, что ответили.

LuaFAR Search

Posted: Wed 24 Nov, 2021 19:54
by Shmuel
skipik, давно знаю об этом, но это не так просто исправить, как может показаться.
Если бы это было обычное фаровское меню или диалог, всё бы решалось одним флагом, но данный диалог не содержит ничего, кроме одного элемента DI_USERCONTROL. Поэтому до сих пор решения не нашёл (ну и как бы не считаю это серьёзной проблемой).

LuaFAR Search

Posted: Fri 26 Nov, 2021 00:25
by Shmuel
skipik, и всё-таки я это сделал (плагин сам устанавливает заголовок консоли при выводе данного диалога).

LuaFAR Search

Posted: Fri 26 Nov, 2021 00:41
by DrKnS
Shmuel, можно воспользоваться тем, что Far для заголовка берет содержимое первого элемента диалога, при этом самому элементу не обязательно быть видимым (например, DI_TEXT + DIF_HIDDEN).

LuaFAR Search

Posted: Fri 26 Nov, 2021 01:03
by Shmuel
DrKnS, спасибо. Думал об этом, но уж больно не хотелось трогать этот компонент ("custommenu").

LuaFAR Search

Posted: Fri 26 Nov, 2021 11:45
by buniak_a_h
Shmuel, я так понял, что DrKnS советует в диалог перед уже имеющимися компонентами вставить невидимый DI_TEXT. И трогать компоненты не придётся

LuaFAR Search

Posted: Fri 26 Nov, 2021 11:54
by Shmuel
buniak_a_h, я попробовал, есть ограничение в том, что текст считывается при вызове DialogInit, и уже не может быть изменён в диалоговой процедуре. Для данного плагина это OK, а для LF History уже не очень - там заголовок меню меняется при наборе символов пользователем.
Пока сделал как сделал, оно работает.

Update: был неправ, заголовок может быть изменён в диалоговой процедуре, для этого нужно послать DM_SETTEXT скрытому первому элементу.

LuaFAR Search

Posted: Thu 03 Feb, 2022 18:59
by ccaid
Фичареквест: альтернативный облегченный фронтенд по образу и подобию EdtFind. не взамен, а в дополнение к штатному.

несколько лет назад, ощутив богатство и могущество lfsearch, пытался на него полностью перейти, но не смог привыкнуть. диалог очень громоздкий, и паттерн работы несколько другой.
диалог EdtFind предельно лаконичен, но содержит все, что должно быть под рукой. а остальное вынесено в меню плагина. поиск происходит от курсора, а если нужно, например, сделать замену во всем файле, нажимаем не Enter, а AltE (Entire text).

интуитивно подозреваю, что такой проект доступен не только автору, но и опытным скриптописателям. но это не мой уровень.

LuaFAR Search

Posted: Thu 03 Feb, 2022 19:17
by Shmuel
ccaid, немного удивлён. Да, диалог громоздкий, но вот, если вы не пользуетесь нижней частью диалога ("Advanced"), то ведь можно не обращать на неё внимание, я ею тоже далеко не всегда пользуюсь.
Насчёт поиска от курсора - плагин же запоминает ваш выбор. Один раз установили галочку, и она будет всё время установлена, даже при перезапуске Фара, покуда вы сами это не измените.
Если вы однозначно и конкретно опишете желаемые изменения в "lite" версии диалога, то есть шансы, что сделаю (хотя и не обещаю).

LuaFAR Search

Posted: Fri 04 Feb, 2022 21:27
by ccaid
Shmuel, я допускаю, что это мои личные заморочки. но они не произвольны, а вызваны моим пониманием эргономики.
Shmuel wrote: Thu 03 Feb, 2022 19:17 Насчёт поиска от курсора - плагин же запоминает ваш выбор.
именно в этом проблема. кажется в интерфейсах это называется модальностью: поведение зависит от режима. а какой режим действует сейчас, надо либо все время помнить, либо тратить внимание на выяснение. а в EdtFind нет режимов, а есть две команды, которые прямо связаны с моими намерениями: поискать вниз (Enter), поискать (и, обычно, заменить) с начала (AltE). поэтому не приходится задумываться или тратить внимание.
полагаю, при острой необходимости можно было бы подобрать решение через макросы, но на тот момент (несколько лет назад) мне было проще ничего не менять и оставить EdtFind основным, а LFSearch зарезервировать для более сложных случаев.
ну, а громоздкость диалога была дополнительной гирькой на весах такого выбора.

как можно было бы изменить текущий диалог LFSearch для получения lite-варианта в стиле EdtFind.
убрать Library, Ignore spaces, Scope, Origin, Wrap around, Highlight all, Advanced, Presets, Configuration — но не отказываться от настроек, выбранных для них в штатном диалоге (кроме Origin).
добавить кнопку Entire text.
по кнопке Ok всегда искать от курсора, по кнопке Entire text всегда искать Whole scope.

LuaFAR Search

Posted: Fri 04 Feb, 2022 21:32
by ccaid
к диалогу замены это тоже относится.

LuaFAR Search

Posted: Fri 04 Feb, 2022 22:12
by Shmuel
  1. Хорошо, вы всё описали, можно будет подумать над этим.
  2. Почему вы считаете, что установка "поиск от курсора" зависит от режима? Вроде бы она абсолютно самостоятельна.
    Clipboard01.png
    Clipboard01.png (8.19 KiB) Viewed 1375 times

LuaFAR Search

Posted: Sat 05 Feb, 2022 11:11
by ccaid
Shmuel wrote: Fri 04 Feb, 2022 22:12 Почему вы считаете, что установка "поиск от курсора" зависит от режима? Вроде бы она абсолютно самостоятельна.
эта установка и создает режим. когда я нажимаю Enter, поиск может начаться от курсора, а может начаться с начала. нет однозначности, результат зависит от режима. мне надо либо помнить, какой режим я установил в прошлом поиске, либо обратить внимание на текущую установку, либо каждый раз явно переустанавливать режим, не глядя: стоит ли уже стоит нужный.
альтернативу я описал ранее: две команды — искать от курсора (по Enter), искать с начала (по AltE).

LuaFAR Search

Posted: Sat 05 Feb, 2022 11:22
by Shmuel
ccaid, пожалуйста расскажите, как воспроизвести, чтобы при установленном "From cursor" поиск начинался сначала.

LuaFAR Search

Posted: Sat 05 Feb, 2022 11:43
by buniak_a_h
Shmuel, Вы, видимо, неправильно поняли претензии. Речь не о том, что поиск неправильно учитывает (или не учитывает) флаг "From cursor". Речь о том, что его (этот флаг) надо всё время контролировать визуально (а он остаётся с прошлого поиска, что может быть давно было), что с точки зрения эргономики неудобно. Намного безопаснее и эффективнее, если для поиска от курсора и для поиска с начала файла будут две разные кнопки; это гарантирует осмысленный выбор. Я так думаю…