ccaid wrote:Centaur wrote:Или ещё вот так. Отдаём первую клавишу после запуска плагина необработанной:
не понял юзкейс
Данный макрос позволяет обойти проблему наличия макроса на ShiftIns, при условии, что ShiftIns — первая клавиша, нажимаемая после запуска поиска.
DeeZ wrote:все что нужно, как я вижу это:
1. подхватить и вставить патерном выделеный текст.
2. вынести поиск вперед назад в отдельный пункт плагина.
Это решит сразу несколько проблем.
отработав плагин оставит выделение. если мы хотим продолжить - выбираем "найти дальше" (п.2). плагин это выделение подхватит (п.1) и продолжит поиск.
Если при запуске плагина сразу подставлять в паттерн текущее выделение (я правильно понял п. 1?), то дальнейший набираемый текст будет добавляться к нему. Что приведёт к тому, что будет невозможно искать новый паттерн при выделенном блоке (или придётся добавлять клавишу «очистить паттерн», что мне уже тоже будет неудобно, я хочу, чтобы новый паттерн можно было вводить сразу после запуска плагина независимо от состояния выделения). Или придётся добавить состояние, как unchanged у строк ввода в диалогах, когда вроде бы текст в ней есть, но новый вводимый текст его заменяет.
DeeZ wrote:в COPYING ищем 13/ (именно слеш). Не находим, но при каждом следующем введенном символе экран дергается, видимо пытаясь продолжить поиск дальше. Может имеем смысл менять позицию в редакторе только если найдено что-то, а не при каждом нажатии (обновлении патерна)?
А как мы узнаем, что что-то найдено или не найдено, если не попытаемся найти? А чтобы попытаться найти, надо менять позицию редактора, потому что
иначе будет тормозить выборка строки.
Другое дело, что вот тут где-то баг. Ввводим 13 — находим, курсор на последней строке окна. Вводим ещё / — не находим, но окно прокручивается так, что курсор теперь в первой строке окна. И заметно, что при нерезультативном поиске сначала восстанавливается начальная позиция окна, потом новая (с курсором вверху). Вот это надо поправить сначала.
DeeZ wrote:про то что если поиск начинать с Tab и уже есть выделение - то найденное добавляется к выделению - я подумал это фича. если выделения нет - то блок начинается там где стоял курсор..
А как вообще планировалось это должно работать, если начинать поиск с Tab?
Именно так и планировалось. Найти паттерн и передвинуть курсор в конец найденного
как будто нажатием Shift+стрелок.