LuaFAR Search

Здесь можно обсудить ваш любимый плагин.
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

LuaFAR Search

Post by Shmuel »

Здесь можно обсуждать плагин LuaFAR Search. (Анонс).
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

LuaFAR Search

Post by Shmuel »

Latest post of the previous page:

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

Например, установим editor.SetTitle(nil,"123"), и следом поищем (любую) строку.
После успешного поиска в заголовке снова имя файла.
После неуспешного во время отображения сообщения - found:0, после закрытия снова имя файла.
Ещё в августе по свежим следам "починил" этот нежелательный эффект, а сегодня обнаружил, что эта починка вызывает другой, не менее нежелательный: при сохранении файла с новым именем по ShiftF2 заголовок не меняется на новое имя файла. Видимо буду починку откатывать.
skipik
Posts: 318
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 67 times
Been thanked: 29 times

LuaFAR Search

Post by skipik »

Shmuel, по мотивам.



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

UPD: всё понял, спасибо большое, что ответили.
Last edited by skipik on Wed 24 Nov, 2021 20:02, edited 3 times in total.
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

LuaFAR Search

Post by Shmuel »

skipik, давно знаю об этом, но это не так просто исправить, как может показаться.
Если бы это было обычное фаровское меню или диалог, всё бы решалось одним флагом, но данный диалог не содержит ничего, кроме одного элемента DI_USERCONTROL. Поэтому до сих пор решения не нашёл (ну и как бы не считаю это серьёзной проблемой).
Last edited by Shmuel on Wed 24 Nov, 2021 19:57, edited 1 time in total.
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

LuaFAR Search

Post by Shmuel »

skipik, и всё-таки я это сделал (плагин сам устанавливает заголовок консоли при выводе данного диалога).
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

LuaFAR Search

Post by DrKnS »

Shmuel, можно воспользоваться тем, что Far для заголовка берет содержимое первого элемента диалога, при этом самому элементу не обязательно быть видимым (например, DI_TEXT + DIF_HIDDEN).
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

LuaFAR Search

Post by Shmuel »

DrKnS, спасибо. Думал об этом, но уж больно не хотелось трогать этот компонент ("custommenu").
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

LuaFAR Search

Post by buniak_a_h »

Shmuel, я так понял, что DrKnS советует в диалог перед уже имеющимися компонентами вставить невидимый DI_TEXT. И трогать компоненты не придётся
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

LuaFAR Search

Post by Shmuel »

buniak_a_h, я попробовал, есть ограничение в том, что текст считывается при вызове DialogInit, и уже не может быть изменён в диалоговой процедуре. Для данного плагина это OK, а для LF History уже не очень - там заголовок меню меняется при наборе символов пользователем.
Пока сделал как сделал, оно работает.

Update: был неправ, заголовок может быть изменён в диалоговой процедуре, для этого нужно послать DM_SETTEXT скрытому первому элементу.
Last edited by Shmuel on Sat 27 Nov, 2021 10:31, edited 1 time in total.
ccaid
Posts: 908
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 24 times
Been thanked: 6 times

LuaFAR Search

Post by ccaid »

Фичареквест: альтернативный облегченный фронтенд по образу и подобию EdtFind. не взамен, а в дополнение к штатному.

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

интуитивно подозреваю, что такой проект доступен не только автору, но и опытным скриптописателям. но это не мой уровень.
Фар делают добрые люди
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

LuaFAR Search

Post by Shmuel »

ccaid, немного удивлён. Да, диалог громоздкий, но вот, если вы не пользуетесь нижней частью диалога ("Advanced"), то ведь можно не обращать на неё внимание, я ею тоже далеко не всегда пользуюсь.
Насчёт поиска от курсора - плагин же запоминает ваш выбор. Один раз установили галочку, и она будет всё время установлена, даже при перезапуске Фара, покуда вы сами это не измените.
Если вы однозначно и конкретно опишете желаемые изменения в "lite" версии диалога, то есть шансы, что сделаю (хотя и не обещаю).
ccaid
Posts: 908
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 24 times
Been thanked: 6 times

LuaFAR Search

Post 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.
Фар делают добрые люди
ccaid
Posts: 908
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 24 times
Been thanked: 6 times

LuaFAR Search

Post by ccaid »

к диалогу замены это тоже относится.
Фар делают добрые люди
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

LuaFAR Search

Post by Shmuel »

  1. Хорошо, вы всё описали, можно будет подумать над этим.
  2. Почему вы считаете, что установка "поиск от курсора" зависит от режима? Вроде бы она абсолютно самостоятельна.
    Clipboard01.png
    Clipboard01.png (8.19 KiB) Viewed 1358 times
ccaid
Posts: 908
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 24 times
Been thanked: 6 times

LuaFAR Search

Post by ccaid »

Shmuel wrote: Fri 04 Feb, 2022 22:12 Почему вы считаете, что установка "поиск от курсора" зависит от режима? Вроде бы она абсолютно самостоятельна.
эта установка и создает режим. когда я нажимаю Enter, поиск может начаться от курсора, а может начаться с начала. нет однозначности, результат зависит от режима. мне надо либо помнить, какой режим я установил в прошлом поиске, либо обратить внимание на текущую установку, либо каждый раз явно переустанавливать режим, не глядя: стоит ли уже стоит нужный.
альтернативу я описал ранее: две команды — искать от курсора (по Enter), искать с начала (по AltE).
Фар делают добрые люди
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

LuaFAR Search

Post by Shmuel »

ccaid, пожалуйста расскажите, как воспроизвести, чтобы при установленном "From cursor" поиск начинался сначала.
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

LuaFAR Search

Post by buniak_a_h »

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

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