Синхронизация редактора с результатами поиска (Show All)

Здесь обсуждается всё, что касается макросов.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Синхронизация редактора с результатами поиска (Show All)

Post by buniak_a_h »

У плагина LuaFAR Search имеется удобная фишка, почему-то не реализованная в стандартном поиске: при показе ВСЕХ найденных строк при переходе по найденным строкам редактор позиционируется на соответствующей строке. Сделал я небольшой макрос, делающий аналогичную вещь.
Макрос состоит из четырёх обработчиков событий (два для стандартного диалога поиска и два для поиска по плагину RESearch). Первый Event читает параметры поиска, второй поддерживает переход по найденным строкам. Общая функция преобразовывает строку в координаты и реализует позиционирование и раскраску найденного.




В скрипте используется мой модуль "Расширение GetMsg" Уже не используется.
EditorFindAllList.lua.1_4_1.7z
(3.86 KiB) Downloaded 69 times
Версия 1.5.1 - обещанная фильтрация по вхождению в блок (CtrlH)
EditorFindAllList.lua.1_5_1.7z
С фильтрацией. Увы, в списке айденного пропадает раскраска .
(4.39 KiB) Downloaded 73 times
Last edited by buniak_a_h on Tue 31 Dec, 2019 06:25, edited 4 times in total.
User avatar
HaRT
Moderator
Posts: 10822
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Синхронизация редактора с результатами поиска (Show All)

Post by HaRT »

Latest post of the previous page:

buniak_a_h wrote: Tue 31 Dec, 2019 15:51 указатель мышки оказывается над списком. Оба!!! Указатель в списке смещается так, чтобы соответствовать указателю мышки. Или это настраивается?
Насколько я понимаю, «в вакууме» ничто никуда не смещается, но в реальных условиях достаточно небольшого дрожания стола, чтобы породить событие движения мыши и привести к выбору другого элемента. Меня это не только в Фаре раздражает и огорчает, но переходить на трэкбол или тачпад я пока не готов. :)
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Синхронизация редактора с результатами поиска (Show All)

Post by Xerox »

HaRT,
тут по-моему речь не про движение мыши, а наоборот что если диалог движется,
его место под мышью меняется, и тогда выбирается другой элемент.
в менюхах по моему выбранный элемент всегда следует за мышью,
если же мышь стоит а диалог сдвинулся под нее - то же самое получается
если неправильно понял - поправьте/игнорьте
Last edited by Xerox on Tue 31 Dec, 2019 16:05, edited 1 time in total.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Синхронизация редактора с результатами поиска (Show All)

Post by DrKnS »

HaRT wrote: Tue 31 Dec, 2019 16:01 достаточно небольшого дрожания стола
Приходящие от ОС события о перемещении мыши игнорируются, пока курсор остается на том же знакоместе (т.е., в общем случае, тряхнуть должно хорошо).
User avatar
HaRT
Moderator
Posts: 10822
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Синхронизация редактора с результатами поиска (Show All)

Post by HaRT »

Xerox wrote: Tue 31 Dec, 2019 16:03 если диалог движется, его место под мышью меняется, и тогда выбирается другой элемент
Без перемещения мыши в другое знакоместо не выбирается.
Xerox wrote: Tue 31 Dec, 2019 16:03 если же мышь стоит а диалог сдвинулся под нее - то же самое получается
Нет, см. выше.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Синхронизация редактора с результатами поиска (Show All)

Post by citRiks »

HaRT wrote: Tue 31 Dec, 2019 15:40 мне довольно и своих (простеньких), которые прижимают диалог влево/ вверх/ вправо/ вниз или центруют — в зависимости от нажатого кнопкосочетания
А нам их не покажете?
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Синхронизация редактора с результатами поиска (Show All)

Post by buniak_a_h »

HaRT wrote: Tue 31 Dec, 2019 16:38
Xerox wrote: Tue 31 Dec, 2019 16:03 если диалог движется, его место под мышью меняется, и тогда выбирается другой элемент
Без перемещения мыши в другое знакоместо не выбирается.
Да-да, именно это я и имел в виду. Ну да, сразу перемещаться по списку не начнет. Но представьте - окно сместилось так, что указатель мыши закрыл часть текста первой позиции списка. Юзер захочет просто сдвинуть - первый станет активным, редактор "прыгнет" на другое место, которое - вдруг - окажется опять под диалогом, диалог прыгнет, а юзер ещё двигает мыша, куда попадает - фих знает … Короче, сценарий стихийного бедствия на одном мониторе.
User avatar
HaRT
Moderator
Posts: 10822
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Синхронизация редактора с результатами поиска (Show All)

Post by HaRT »

citRiks wrote: Tue 31 Dec, 2019 17:01 А нам их не покажете?
Покажу, но не в этом году и не в этой теме.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Синхронизация редактора с результатами поиска (Show All)

Post by Xerox »

В принципе ХаРТ и ДрКнс были правы что мышь на самодвигающиеся под ей менюхи не так уж легко влияет, надо ее реально сдвинуть, но это все же возможно случайно как-то итп, как Буняк говорил.
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Синхронизация редактора с результатами поиска (Show All)

Post by Xerox »

Моя идея/предложение для дальнейшего развития
Может быть сделать фильтрацию редактора по найденому, как например в FilterLines (lua-script)?
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Синхронизация редактора с результатами поиска (Show All)

Post by Xerox »

buniak_a_h wrote: Tue 31 Dec, 2019 06:27 Версия 1.5.1 - сделана фильтрация по вхождению в блок. Увы, после обновления списка теряется раскраска найденных образцов в списке найденных. Ели кто знает, как с этим бороться - поможите кто чем может! Нашёл, но уже не сегодня…
Удалось в конечно итоге?
В версии 1.5.1 там я не до конца понял фильтрацию, и чего это должна быть фильтрация
КтрлХ - упомянут, нa кажется что ничего не делает
С другой стороны, через Альт+Буква, да, произойдет фильтрация диалога(меню) ПО ОДНОЙ ЭТОЙ БУКВЕ ) (?)
С третьей стороны, штатный КтрлАльтФ тоже прекрасно фильтрует результаты
(или это не штатный, а какой-то другой скрипт который у меня есть,
но все Ок в общем с филтрацией результов поиска дв диалоге по КтрлАльтФ)

Ну в обще, что бы реально буыло бы полезно, это отфилтровать сам редактор по найденному, желательно еслиможно сохраняя 1/2/3 линии сверху и снизу от найденного
Кстати, ваш FindAndGo который подобно тоже ищет (grep-alike) звучит многообещающе, спасибо, к сожалению руки не дошли протестрировать в полной мере
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Синхронизация редактора с результатами поиска (Show All)

Post by buniak_a_h »

Xerox wrote: Fri 03 Jan, 2020 09:28 Моя идея/предложение для дальнейшего развития
Может быть сделать фильтрацию редактора по найденому, как например в FilterLines (lua-script)?
Я попробовал упомянутый скрипт. Написал в его тему замечание, делающее использование невозможным. Не нашёл я отмены фильтрации, я по UnDo непонятно, сколько раз (нету блока begin-end).
Xerox wrote: Fri 03 Jan, 2020 09:49
buniak_a_h wrote: Tue 31 Dec, 2019 06:27 Версия 1.5.1 - сделана фильтрация по вхождению в блок. Увы, после обновления списка теряется раскраска найденных образцов в списке найденных. Ели кто знает, как с этим бороться - поможите кто чем может! Нашёл, но уже не сегодня…
Удалось в конечно итоге?
Удалось при включении фильтра. При выключении раскраска пропадает.
buniak_a_h wrote: Tue 31 Dec, 2019 06:27 В версии 1.5.1 там я не до конца понял фильтрацию, и чего это должна быть фильтрация
КтрлХ - упомянут, нa кажется что ничего не делает
Мысль была при наличии отмеченного блока оставлять только те строки, которые входят в блок. Типа "искать в отпеченном". У меня работает.
Post Reply

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