QuickSearch — инкрементальный поиск в редакторе

Здесь можно обсудить ваш любимый плагин.
User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 2 times

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Centaur »

Latest post of the previous page:

Toxa wrote:1. Сразу бросилось в глаза, что если очередной символ не найден, он всё равно вставляется в строку поиска. И когда нажимаешь BS, ожидаешь, что сотрётся предыдущий найденный символ. Например, можно ввести в поиск строку «аааааааааааааааааааааа», хотя в тексте встречается, скажем, только «аа».
Было уже. Фича. Юзкейс: набираем паттерн; промахиваемся по клавише; замечаем промах, не глядя на экран; инстинктивно жмём BS, ожидаем, что сотрётся ошибочно набранный символ. Если сделать «как везде» — будет так: набираем паттерн; промахиваемся по клавише; замечаем промах, не глядя на экран; инстинктивно жмём BS, вспоминаем, что инкрементальный поиск не такой, как обычный ввод, говорим «б$я», вспоминаем, что у нас там была за последняя буква, восстанавливаем её.

See also быстрый поиск в Firefox’е.
Toxa wrote:2. Если во время работы плагина попытаться поменять направление поиска (ещё раз вызвать плагин, только вместо Search forward выбрать Search backward), плагин напишет: already active, но направление не меняет.
Плагин считает попытку повторного входа за ошибку, за отсутствием полной ясности, как следует поступать. Склоняюсь к тому, чтобы начинать новый поиск с текущей позиции.
Toxa wrote:3. Если BS удалить все введённые символы, возвращаемся не к той же позицции, с которой начинали. Если нажимаем ESC, возвращаемся куда надо.
Баг.
User avatar
Toxa
Posts: 275
Joined: Wed 27 Jul, 2005 14:35
Location: Москва
Contact:

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Toxa »

4. А чего бы F3/Shift+F3 не вынести в меню плагина? Во-первых, кому-то захочется использовать другие клавиши, а во-вторых, есть необходимость вызывать сразу поиск следующего. Да, только тогда плагин должен запоминать предыдущую строку поиска.
Может кому пригодится.
User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 2 times

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Centaur »

Toxa wrote:3. Если BS удалить все введённые символы, возвращаемся не к той же позицции, с которой начинали. Если нажимаем ESC, возвращаемся куда надо.
Хех, баг, собака, хитрый. Проявляется, если стояли за концом строки; если стояли внутри строки, всё нормально. Возвращается в начало строки, следующей за той, где стояли.
User avatar
Toxa
Posts: 275
Joined: Wed 27 Jul, 2005 14:35
Location: Москва
Contact:

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Toxa »

Centaur wrote:Проявляется, если стояли за концом строки; если стояли внутри строки, всё нормально. Возвращается в начало строки, следующей за той, где стояли.
А ещё с табулацией что-то подобное, когда вверх ищем.
Может кому пригодится.
User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 2 times

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Centaur »

Toxa wrote:4. А чего бы F3/Shift+F3 не вынести в меню плагина? Во-первых, кому-то захочется использовать другие клавиши, а во-вторых, есть необходимость вызывать сразу поиск следующего. Да, только тогда плагин должен запоминать предыдущую строку поиска.
А насчёт этого пока думаю.
User avatar
Andrey Budko
Posts: 1203
Joined: Fri 01 Apr, 2005 14:03
Contact:

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Andrey Budko »

Centaur wrote:Было уже. Фича. Юзкейс: ... не глядя на экран
собака тут порылась? телок что ли рассматриваешь в офисе во время поиска? :)
User avatar
Toxa
Posts: 275
Joined: Wed 27 Jul, 2005 14:35
Location: Москва
Contact:

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Toxa »

Centaur wrote:Склоняюсь к тому, чтобы начинать новый поиск с текущей позиции.
Ну или с той же позиции, с коротой начинали, с текущей стркой поиска.
Может кому пригодится.
User avatar
Toxa
Posts: 275
Joined: Wed 27 Jul, 2005 14:35
Location: Москва
Contact:

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Toxa »

Centaur wrote:Было уже. Фича.
Потребовалось сходить пообедать, чтобы осознать, чему так сопротивляется подсознание. Выяснилось, что в наших любимых браузерах (Firefox, Chrome, Safari, Opera) на самом деле не инкрементальный поиск, а поиск всех вхождений с отображением промежуточного результата по мере ввода строки. Строку мы вводим фактически в отдельном поле, там же и курсор моргает. А в редакторе Фара мы вводим символы под курсором, который бежит по тексту. Если мы ошибаемся, символ не появляется. BS удаляет символ перед моргающим курсором — так было всегда. А когда нажимаем BS и нечего вокруг курсора не происходит, это ломает мозг.
Может кому пригодится.
User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 2 times

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Centaur »

Andrey Budko wrote:
Centaur wrote:Было уже. Фича. Юзкейс: ... не глядя на экран
собака тут порылась? телок что ли рассматриваешь в офисе во время поиска? :)
Вброс не засчитан. Имеется в виду, что сигнал идёт не вот так:

Code: Select all

пальцы    клава     проц      экран     глаза     мозги
  |----тыц->|         |         |         |         |
  |         |---char->|         |         |         |
  |         |         |--write->|         |         |
  |         |         |         |-------->|         |
  |         |         |         |         |-------->|
  |<-эй ты, ты чо нажал!----------------------------|
  |(упс)    |         |         |         |         |
  |-----BS->|
а сразу вот так:

Code: Select all

пальцы    клава
  |----тыц->|
  |(упс)    |
  |-----BS->|
(простите мне мой UML).
User avatar
Toxa
Posts: 275
Joined: Wed 27 Jul, 2005 14:35
Location: Москва
Contact:

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Toxa »

Предлагаю сделать опцию.
Может кому пригодится.
User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 2 times

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Centaur »

Жду патч, оформленный git’ом.
User avatar
Toxa
Posts: 275
Joined: Wed 27 Jul, 2005 14:35
Location: Москва
Contact:

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Toxa »

Я знал, что придётся когда-нибудь садиться за изучение Си и Far API :(
А пока написал для себя пару макросов для поиска следующего/предыдущего вхождения выделенного фрагмента.

Может кому пригодится.
User avatar
Wave
Posts: 1885
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 14 times
Been thanked: 26 times

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Wave »

Centaur wrote:
Toxa wrote:1. Сразу бросилось в глаза, что если очередной символ не найден, он всё равно вставляется в строку поиска. И когда нажимаешь BS, ожидаешь, что сотрётся предыдущий найденный символ. Например, можно ввести в поиск строку «аааааааааааааааааааааа», хотя в тексте встречается, скажем, только «аа».
Было уже. Фича. Юзкейс: набираем паттерн; промахиваемся по клавише; замечаем промах, не глядя на экран; инстинктивно жмём BS, ожидаем, что сотрётся ошибочно набранный символ. Если сделать «как везде» — будет так: набираем паттерн; промахиваемся по клавише; замечаем промах, не глядя на экран; инстинктивно жмём BS, вспоминаем, что инкрементальный поиск не такой, как обычный ввод, говорим «б$я», вспоминаем, что у нас там была за последняя буква, восстанавливаем её.
Нинада всяких сомнительных интеллектуальных додумок за пользователя. Я могу смотреть на экран, но не в строку ввода фильтра в этот момент. Тут либо не вставлять следующую «а», как в quicksearch в панелях, либо удалять ровно то, что вставлено. Я за второй вариант.

В фильтре альтхистори есть такая штука, что если мы набираем «pa», а все оставшиеся после фильтрации варианты содержат «panel», то нажатие TAB дополнит фильтр до «panel». Вот подобный фичерквест предложу. Не знаю только, какую клавишу тут заюзать бы. А ещё F3 у меня занята под макросы.
Пользуюсь ФАРом больше 20 лет © собирательный.
User avatar
Toxa
Posts: 275
Joined: Wed 27 Jul, 2005 14:35
Location: Москва
Contact:

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Toxa »

Wave wrote:Тут либо не вставлять следующую «а», как в quicksearch в панелях, либо удалять ровно то, что вставлено.
Что-то никак не пойму второй вариант. Инкрементный поиск и автодополнение в одном флаконе? Я пока за первый.
Может кому пригодится.
User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 2 times

Re: QuickSearch — инкрементальный поиск в редакторе

Post by Centaur »

Wave wrote:В фильтре альтхистори есть такая штука, что если мы набираем «pa», а все оставшиеся после фильтрации варианты содержат «panel», то нажатие TAB дополнит фильтр до «panel». Вот подобный фичерквест предложу.
Мысль интересная, но есть нюансы. Вводим слово, встречающееся в файле в единственном экземпляре. Нажимаем completion. Паттерн должен втянуть в себя весь хвост файла? Или, раз уж мы не умеем искать многострочно, хвост строки? Или… в общем, где конец дополняемого?
User avatar
lordmuzer
Posts: 533
Joined: Mon 12 Nov, 2007 22:05
Location: Киев
Has thanked: 20 times
Contact:

Re: QuickSearch — инкрементальный поиск в редакторе

Post by lordmuzer »

может дополнять только до конца текущего (вводимого) слова.
то есть, начали вводить "абс" а в тексте есть только слово "абсд", нажал дополнить получил "абсд", потом ввожу дальше нужный паттерн.
Post Reply

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