FilterLines — инкрементная фильтрация строк

Здесь можно обсудить ваш любимый плагин.
Maximus5
Posts: 3292
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 4 times
Contact:

FilterLines — инкрементная фильтрация строк

Post by Maximus5 » Thu 03 Dec, 2009 20:30

Анонс

А чего оно регистрозависимое? И флажка никакого нет.
Пока допер... думал что просто глючит

Max Rusov
Posts: 3632
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 1 time
Been thanked: 10 times

Re: FilterLines — инкрементная фильтрация строк

Post by Max Rusov » Fri 04 Dec, 2009 09:13

Если фильтровать мало-мальски большой файл, то по нажатию Esc он не восстанавливается в исходное состояние. Это как то лечится?

User avatar
John Doe
Бюрократ
Posts: 12519
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 228 times

Re: FilterLines — инкрементная фильтрация строк

Post by John Doe » Fri 04 Dec, 2009 09:39

Не хватает возможности "навигации" в фильтруемом файле.
Станет удобнее если курсорные клавиши будут приходить в редактор.
Возможно ли это?

Кстати в этом случае у плагина могло бы быть ещё одно интересное применение: поиск текста в файле.
Набираем строку, курсорными клавишами ищем нужное вхождение, нажимаем Esc - и мы в нужном месте!

Игорь Юдинцев
Posts: 725
Joined: Sun 03 Apr, 2005 22:00
Location: Казань
Been thanked: 1 time

Re: FilterLines — инкрементная фильтрация строк

Post by Игорь Юдинцев » Fri 04 Dec, 2009 10:00

Max Rusov wrote:Если фильтровать мало-мальски большой файл, то по нажатию Esc он не восстанавливается в исходное состояние. Это как то лечится?
Насколько большой?
20-мбайтный лог из 300 тыс. строк откатывается без проблем.
Не восстанавливается, скорее всего, оттого, что для очень больших файлов Far сбрасывает историю Undo (в плагине используется отмена правки).
John Doe wrote:Не хватает возможности "навигации" в фильтруемом файле.
Станет удобнее если курсорные клавиши будут приходить в редактор.
Возможно ли это?
Попробую добавить вечером.
Last edited by Игорь Юдинцев on Fri 04 Dec, 2009 10:08, edited 1 time in total.

Max Rusov
Posts: 3632
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 1 time
Been thanked: 10 times

Re: FilterLines — инкрементная фильтрация строк

Post by Max Rusov » Fri 04 Dec, 2009 10:06

Странно. У меня не откатывается даже на гораздо меньших файлах ~1M

Может это как то связано с размером Undo-буфера, который настраивается через какое-нибудь TechInfo?...

Игорь Юдинцев
Posts: 725
Joined: Sun 03 Apr, 2005 22:00
Location: Казань
Been thanked: 1 time

Re: FilterLines — инкрементная фильтрация строк

Post by Игорь Юдинцев » Mon 07 Dec, 2009 02:16

В 1.2 замечена ошибка: не сохраняется выбранная позиция курсора в тексте при выходе по Esc. Исправлю чуть позже.

User avatar
John Doe
Бюрократ
Posts: 12519
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 228 times

Re: FilterLines — инкрементная фильтрация строк

Post by John Doe » Mon 07 Dec, 2009 10:48

Замечен баг, приводящий к зависанию фара.
При наборе фильтрация начинается не с первого символа, а со второго (тоже сомнительная фича).
И если первым символом набрать отсутствующий в файле, то после нажатия Esc всё повисает.

И да, не все изменения откатываются даже на маленьких файлах, таких как changelog к фару

User avatar
John Doe
Бюрократ
Posts: 12519
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 228 times

Re: FilterLines — инкрементная фильтрация строк

Post by John Doe » Mon 07 Dec, 2009 11:04

Навигация Ctrl+Shift+... не очень удобна. Нельзя ли обойтись одним каким-то "модификатором"?
Либо альтернативная идея: что если вообще обойтись без диалога? Тогда модификаторы не понадобятся.
А фильтр отображать в статусной строке (знаю несколько плагинов которые так делают).

Игорь Юдинцев
Posts: 725
Joined: Sun 03 Apr, 2005 22:00
Location: Казань
Been thanked: 1 time

Re: FilterLines — инкрементная фильтрация строк

Post by Игорь Юдинцев » Mon 07 Dec, 2009 11:17

John Doe wrote:Навигация Ctrl+Shift+... не очень удобна. Нельзя ли обойтись одним каким-то "модификатором"?
Либо альтернативная идея: что если вообще обойтись без диалога? Тогда модификаторы не понадобятся.
Up/Dn с Ctrl и Alt заняты открытием комбобокса, Home/End с Shift — выделением строки, Ctrl+End — автодополнение. Ctrl+Shift выбран просто потому, что он не пересекается с Far UI.
John Doe wrote:А фильтр отображать в статусной строке (знаю несколько плагинов которые так делают).
Была такая мысль, но у поля ввода больше плюсов — история, редактирование, copy/paste.
Кроме того, фильтр в статусной строке — это режим, а режимы — зло :D

Игорь Юдинцев
Posts: 725
Joined: Sun 03 Apr, 2005 22:00
Location: Казань
Been thanked: 1 time

Re: FilterLines — инкрементная фильтрация строк

Post by Игорь Юдинцев » Mon 07 Dec, 2009 11:38

John Doe wrote:Замечен баг, приводящий к зависанию фара.
Исправил, см. v1.3.

User avatar
John Doe
Бюрократ
Posts: 12519
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 228 times

Re: FilterLines — инкрементная фильтрация строк

Post by John Doe » Mon 07 Dec, 2009 12:28

Игорь Юдинцев wrote:Кроме того, фильтр в статусной строке — это режим, а режимы — зло :D
В фаре режимы повсюду, да разве только в фаре...
Поэтому борьба с режимами в отдельно взятом плагине смысла не имеет, тем более диалог - это тот же "режим".

Два модификатора для курсорных клавиш - вот это действительно зло, не позволяющее эффективно их использовать.

PS
Но главное зло - это то что Undo по-прежнему не до конца откатывает.

Игорь Юдинцев
Posts: 725
Joined: Sun 03 Apr, 2005 22:00
Location: Казань
Been thanked: 1 time

Re: FilterLines — инкрементная фильтрация строк

Post by Игорь Юдинцев » Mon 07 Dec, 2009 13:05

John Doe wrote:Но главное зло - это то что Undo по-прежнему не до конца откатывает.
Протестировал на 80-мбайтном файле (1,2 млн. строк) вводом/стиранием символов в произвольной позиции текстовой строки диалога; под конец XP крепко призадумалась, но все правки откатила без нареканий.

Max Rusov
Posts: 3632
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 1 time
Been thanked: 10 times

Re: FilterLines — инкрементная фильтрация строк

Post by Max Rusov » Mon 07 Dec, 2009 13:20

Так может все-таки есть ограничение на размер Undo буфера? Вот у меня, похоже, граница - 64K.
Если очистить файл большего размера, то Undo не срабатывает.

roksoft
Posts: 8
Joined: Fri 04 Dec, 2009 12:59
Been thanked: 1 time

Re: FilterLines — инкрементная фильтрация строк

Post by roksoft » Mon 07 Dec, 2009 14:43

плагин к просмотру не планируется прикрутить?
особенно интересен был бы, например, для фильтрации больших логов размером от 1 гига и более.

Игорь Юдинцев
Posts: 725
Joined: Sun 03 Apr, 2005 22:00
Location: Казань
Been thanked: 1 time

Re: FilterLines — инкрементная фильтрация строк

Post by Игорь Юдинцев » Mon 07 Dec, 2009 15:02

roksoft, пока что мне не вполне ясно, как это можно сделать за приемлемое время отклика; видимо, нужно каким-то образом индексировать файл при открытии и обновлять индекс при добавлении строчек в лог.

Shtirla
Posts: 112
Joined: Wed 04 Mar, 2009 20:09
Has thanked: 9 times
Been thanked: 2 times

Re: FilterLines — инкрементная фильтрация строк

Post by Shtirla » Sat 09 Jan, 2010 12:00

Помоему баг нашел, если строка поиска в несохранённом файле не существует, - валится вместе с фаром..

А можно предложение - сделайте возможность не полностью очишать несовпадающие строки, а как либо позиционироваться на одной из выбраных строк с результатьом, не изменяя при этом файл. Т.е. такой дикий быстрый поиск :)

Post Reply

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