AltHistory: Alternative History — Альтернативная история

Здесь можно обсудить ваш любимый плагин.
User avatar
HaRT
Moderator
Posts: 9088
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 159 times

Post by HaRT » Thu 06 Jul, 2006 13:47

Latest post of the previous page:

Nikolay wrote:
HaRT wrote:Ошибка посерьёзнее: почему-то все команды, начинающиеся на cd:_ (например, cd:_lwcp, cd:_lfm), заносятся в историю именно как cd:_.
1.71 alpha 2 build 2112 + AltHistory 1.1.0.14 - ошибки не наблюдается.
Это я просто плохо описал контекст.

0. Far b.2112
1. AltHistory 1.1.0.14
2. FarReg 2.19
3. NamedFolders 2.5.2.232
4. В нём настроены несколько псевдонимов для папок реестра. В частности
_lwcp reg:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\
_ufm reg:HKEY_CURRENT_USER\Software\Far\KeyMacros

Команда вида cd:_ufm обрабатывается, судя по всему, засылкой макроса в Фар. Так вот AltHistory не регистрирует команду, запущенную таким образом.

PS А то, что я написал про подчёркивание, это я поспешил. :oops:

Smitis
Posts: 1593
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 18 times
Been thanked: 35 times

Post by Smitis » Thu 06 Jul, 2006 13:57

Nikolay
Какая последовательность?
AltF12 Del Enter Esc
И перестают добавляться новые элементы в соответствующую историю AltHistory. Если удаляю файлы *.hst, история A.H. снова начинает работать нормально.
Не совсем понял вопрос - хранить историю не в файлах, а в реестре?
Работать с той информацией, которую хранит ФАР в реестре, типа HKCU\Software\Far\SavedFolderHistory. Как альтернативный вариант. Пусть даже записей будет меньше.
Разум когда-нибудь победит.

User avatar
HaRT
Moderator
Posts: 9088
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 159 times

Post by HaRT » Thu 06 Jul, 2006 14:38

Smitis wrote:NikolayРаботать с той информацией, которую хранит ФАР в реестре, типа HKCU\Software\Far\SavedFolderHistory. Как альтернативный вариант. Пусть даже записей будет меньше.
+1

Nikolay
Posts: 549
Joined: Sat 14 Jan, 2006 17:17
Has thanked: 1 time
Been thanked: 16 times

Post by Nikolay » Thu 06 Jul, 2006 14:59

DrKnS wrote:Например для того, чтобы писать через %FARHOME% и не зависеть от контекста.
+ Принимается.
Хм... А какие?
Ну, непостоянная эта вешь - переменные среды. Кто-нибудь удалит, изменит.... Жесткий путь - понадежнее будет.
Впрочем, убедил. Пусть пользователь сам решает.
HaRT wrote:Команда вида cd:_ufm обрабатывается, судя по всему, засылкой макроса в Фар. Так вот AltHistory не регистрирует команду, запущенную таким образом.
Не успевает реагировать. NamedFolders действительно вбивает тут reg:... в командную строку и жмет Enter. И все происходит мгновенно.
А поведение такое у AltHistory by design, специально сделано, то бишь. Но кое-что я сейчас придумал, так что поправлю эту фичу, наверное.
HaRT wrote:А то, что я написал про подчёркивание, это я поспешил.
Эт точно. Я уж поседел весь, раздумывая - как это команда могла обрезаться...
Smitis wrote:AltF12 Del Enter Esc
И перестают добавляться новые элементы в соответствующую историю AltHistory.
А если так: AltF12 Del Enter Esc, потом побегать по папкам и перезагрузить FAR?
HaRT wrote:+1
+1, чтобы работать с чисто фаровской историей? Зачем?

User avatar
HaRT
Moderator
Posts: 9088
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 159 times

Post by HaRT » Thu 06 Jul, 2006 15:09

Nikolay wrote:
HaRT wrote:+1
+1, чтобы работать с чисто фаровской историей? Зачем?
Чтобы не держать в двух разных местах одно и то же, а просто использовать более удобный интерфейс для работы с теми же данными.

User avatar
Andrey Budko
Posts: 1203
Joined: Fri 01 Apr, 2005 14:03
Contact:

Post by Andrey Budko » Thu 06 Jul, 2006 16:10

Nikolay wrote:
Может стоит (хотя бы опциально) работать с историей ФАРа в реестре?
Не совсем понял вопрос - хранить историю не в файлах, а в реестре?
А чем файлы не устраивают?
У меня пару раз падала винда в синий экран из-за тюнеровских дров. Так вот, после таких крахов всегда оказывалось, что хистори файлы плагина испорчены и не могут быть использованы, о чем плагин весело сообщает. Фаровское хистори в таких случаях не портится. Так же фар в момент краха системы обычно около часа находится в состоянии простоя (смотрю телек, клацаю каналы, не трогая фар). То есть надо или почаще комитить изменения на диск или еще как.

Nikolay
Posts: 549
Joined: Sat 14 Jan, 2006 17:17
Has thanked: 1 time
Been thanked: 16 times

Post by Nikolay » Thu 06 Jul, 2006 17:12

HaRT wrote:
Nikolay wrote:
HaRT wrote:+1
+1, чтобы работать с чисто фаровской историей? Зачем?
Чтобы не держать в двух разных местах одно и то же, а просто использовать более удобный интерфейс для работы с теми же данными.
Не с теми же. Случается, что фаровская история самостирается (конкретно момент поймать не могу, ибо не юзаю ее), но факт остается фактом - если кольцевой буфер истории FAR рассчитан на 64 элемента (по умолчанию), а я там иногда наблюдаю лишь с десяток...
Потом, отвратительно сохраняется история при работе нескольких экземпляров FAR. Открой два экземляра, посмотри в одном один файлик, а в другом - другой. Закрой оба FARа, открой новый, и посмотри, что сохранилось в истории.

Nikolay
Posts: 549
Joined: Sat 14 Jan, 2006 17:17
Has thanked: 1 time
Been thanked: 16 times

Post by Nikolay » Thu 06 Jul, 2006 17:20

Andrey Budko wrote:У меня пару раз падала винда в синий экран из-за тюнеровских дров. Так вот, после таких крахов всегда оказывалось, что хистори файлы плагина испорчены и не могут быть использованы, о чем плагин весело сообщает.
Ну вот это очень странно...
История записывается на диск только в трех случаях:
1. FAR закрывается.
2. Запускаются другие копии FAR, работающие с той же историей.
3. При смене местоположения файлов истории.
Т.е., если ты час смотришь телевизор, то последняя операция с диском по поводу файлов истории была мимимум час назад. Должно бы уж было б всё закомититься...
Тип файловой системы какой?
В текущей версии AltHistory испорченный файл переименовывается, а не удаляется. Не мог бы ты мне в следующий раз прислать этот файл - может догадки бы какие появились...
А вообще, попробую в новой версии сбрасывать файловые буфера после записи - может, поможет.

Да, кстати, юзал одно время кривую версию DScaler'а (это программка для просмотра телевизора) - тоже зачастую выпадал в синий экран (причем однажды после Reset была какая-то проблема с винчестером, сейчас не помню точно какая - вылечилось отключением питания), но история не попортилась...

al666
Posts: 237
Joined: Mon 04 Jul, 2005 08:55

Post by al666 » Fri 07 Jul, 2006 07:21

Andrey Budko wrote:
Nikolay wrote: Не совсем понял вопрос - хранить историю не в файлах, а в реестре?
А чем файлы не устраивают?
У меня пару раз падала винда в синий экран из-за тюнеровских дров. Так вот, после таких крахов всегда оказывалось, что хистори файлы плагина испорчены и не могут быть использованы, о чем плагин весело сообщает.
Представляю себе такой анонс:

Code: Select all

Опубликована новая версия плагина AltHistory.
В этой версии улучшена совместимость с кривыми драйверами кривого тюнера неизвестной модели.
Теперь перед падением Windows в синий экран история сохраняется!
:lol:

P.S. Лучше выкинь нафиг такое железо, пока оно тебе что-нибудь серьезное не похерило.

User avatar
Andrey Budko
Posts: 1203
Joined: Fri 01 Apr, 2005 14:03
Contact:

Post by Andrey Budko » Fri 07 Jul, 2006 08:21

Nikolay wrote:Т.е., если ты час смотришь телевизор, то последняя операция с диском по поводу файлов истории была мимимум час назад. Должно бы уж было б всё закомититься...
Ну не знаю, рассказал как было. Раза три было.
Тип файловой системы какой?
NTFS
В текущей версии AltHistory испорченный файл переименовывается, а не удаляется. Не мог бы ты мне в следующий раз прислать этот файл - может догадки бы какие появились...
До этого у меня была версия по-моему 1.01. Вышлю если повторится, но насколько я помню оно рекриэйтит сразу же, не? Во всяком случае мне кажется, что имеено это плуг сообщает в месадже.
Да, кстати, юзал одно время кривую версию DScaler'а
Я не юзаю никаких кривых версий никаких кривых программ, тем более что сторонние проги действительно все именно такие. У меня обычное AverTV с родным софтом. Проблемы с ихними дровами общеизвестны. Падения случаются при переключении каналов. Редко. За два года раза три-пять. Не могут поделить IRQ с кем-то или что-то в этом духе. Не помню уже.

al666 wrote:
Опубликована новая версия плагина AltHistory.
В этой версии улучшена совместимость с кривыми драйверами кривого тюнера неизвестной модели.
P.S. Лучше выкинь нафиг такое железо, пока оно тебе что-нибудь серьезное не похерило.
Жене своей будешь бесплатные советы давать как заведешь. Если она тебя на**й не будет посылать , в чем сомневаюсь.

Nikolay
Posts: 549
Joined: Sat 14 Jan, 2006 17:17
Has thanked: 1 time
Been thanked: 16 times

Post by Nikolay » Fri 07 Jul, 2006 09:53

Andrey Budko wrote:До этого у меня была версия по-моему 1.01. Вышлю если повторится, но насколько я помню оно рекриэйтит сразу же, не? Во всяком случае мне кажется, что имеено это плуг сообщает в месадже.
Правильно помнишь. Обнови плагин - тогда будет переименование. Специально для подобных случаев сделал...

User avatar
Andrey Budko
Posts: 1203
Joined: Fri 01 Apr, 2005 14:03
Contact:

Post by Andrey Budko » Fri 07 Jul, 2006 10:07

Обновил несколько дней назад :)
Я его установил по чьему-то из здешних совету совсем недавно, а оказалось, что с тех пор уже море версий было или там откуда скачивал (с плагринга скорее всего) старое лежало.

User avatar
Wave
Posts: 1770
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 4 times
Been thanked: 16 times

Post by Wave » Sat 08 Jul, 2006 05:36

НИ-НИ! НИ В КОЕМ СЛУЧАЕ НЕ В РЕЕСТРЕ!
У меня установлен ShadowUser на виндовый раздел. Т.е. все изменения на этом разделе, в т.ч. операции с реестром, живут только до перезагрузки (или обруба питания).
Главное преимущество в том, что винду можно использовать годами, а мусор в ней накапливаться не будет. Шароварные проги можно использовать годами, а они будут считать, что только первый раз здесь запускаются. И так далее.
Единственное неудобство как раз в том, что сильноменяющиеся данные вроде истории в реестре держать невозможно.
Да и вообще, нездоровая штука - реестр. Особенно для программ, которые не требуют инсталяции (ну там регистрация ActiveX и прочая глубокая интеграция в систему), особенно для программ, которые можно притащить куда-то на флешке или даже дискете.

Что касается размеров. До появления чистки я себе поставил размер всех историй в 5000. И прекрасно и быстро попадал в каталоги, в которые месяцами мог не заглядывать. Ну ладно, преувеличение, неделями. Хотя использовать маски хотелось. В истории хранилось по паре тысяч элементов.
Теперь у меня история каталогов ~350 элементов и история файлов ~80. Ещё лучше и удобней стало. Но вот фаровской истории даже в таком случае явно недостаточно.

зы: насчёт команд с параметрами и без параметров. У меня многие расширения висят на ассоциациях вида 7-zip:... id3:... rclk_cmd:properties oplg:... edit:...
Засоряется история команд сильно, однако как-то их отсеивать автоматом сложновато. Выхожу из положения простой отфильтровкой и чисткой (ещё раз за неё спасибо).
Отсеивать элементы, имеющие расширения, здраво. А что насчёт "элементы, имеющие расширения, сохранять в истории команд с полным путём"? Нахожусь в C:\temp, нажал 1.doc, записать C:\temp\1.doc. У?
Пользуюсь ФАРом больше 20 лет © собирательный.

Nikolay
Posts: 549
Joined: Sat 14 Jan, 2006 17:17
Has thanked: 1 time
Been thanked: 16 times

Post by Nikolay » Sat 08 Jul, 2006 22:19

Wave wrote:зы: насчёт команд с параметрами и без параметров. У меня многие расширения висят на ассоциациях вида 7-zip:... id3:... rclk_cmd:properties oplg:... edit:...
Засоряется история команд сильно, однако как-то их отсеивать автоматом сложновато. Выхожу из положения простой отфильтровкой и чисткой.
Можно автомат придумать. Сказав "А" (существующая возможность фильтрации команд без параметров и готовящаяся возможность фильтрации транзитных папок), можно сказать и "Б" (фильтрация историй по неким маскам). Подумаю.
А что насчёт "элементы, имеющие расширения, сохранять в истории команд с полным путём"? Нахожусь в C:\temp, нажал 1.doc, записать C:\temp\1.doc. У?
Не. Я уже думал над этим, но хотел сделать по-другому - вместе с командой сохранять текущую папку. И при повторении команды из истории реализовать опциональный переход в эту папку. Такая фишка записана у меня в todo, но пока я не готов её реализовывать, т.к. для этого придется переписать практически весь плагин, кроме некоторого количества интерфейсных деталей. Буду переписывать - размер dll плагина вырастет в несколько раз - не всем такое понравится.
Да и вопросов такой режим рождает много, например, ненужное дублирование одинаковых команд, для которых текущая папка реально не важна.

dandr
Posts: 104
Joined: Tue 18 Oct, 2005 20:52
Contact:

Post by dandr » Sun 09 Jul, 2006 17:09

Nikolay
сложно ли реализовать в фильтрах подсветку набранных символов? zg
обещался в хорошие руки своими наработками поделиться

User avatar
HaRT
Moderator
Posts: 9088
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 159 times

Post by HaRT » Tue 11 Jul, 2006 15:56

Ещё несколько идей по развитию интерфейса плагина:

1. Добавить возможность вставить значение фильтра из Буфера обмена.
Например, по ShiftIns (CtrlV не предлагаю умышленно).
Кстати, очень жаль, что из-за кнопкосочетания CtrlC буквы C и С не подсвечиваются...

2. Добавить возможность скопировать значение фильтра в Буфер обмена.
Например, по CtrlAltIns.

3. Добавить возможность сменить историю, сохранив фильтр.
(Не знаю, у кого как, а у меня частенько выясняется, что я попал не в ту историю, когда фильтр уже введён, т.ч. приходится отменять, вызывать ту и вводить заново.)
Можно повесить это на AltF8, AltF11 и AltF12 в списках историй.

Какие будут мнения?

Nikolay
Posts: 549
Joined: Sat 14 Jan, 2006 17:17
Has thanked: 1 time
Been thanked: 16 times

Post by Nikolay » Wed 12 Jul, 2006 21:15

dandr wrote:обещался в хорошие руки своими наработками поделиться
Проблема в том, что у меня плохие руки. :oops:
Кстати, очень жаль, что из-за кнопкосочетания CtrlC буквы C и С не подсвечиваются...
Мне тоже жаль. Я при написании плагина преследовал одной из целей быть максимально похожим на историю FAR для более лёгкого перехода пользователей со стандартной истории на AltHistory. А в стандартной истории используется CtrlC, потому и я сделал то же самое. Так-то вернуть букву мне несложно - две строчки в исходниках надо поправить, да файл помощи чутка.
Давайте тут пообсуждаем - что лучше: дополнительная буковка или "совместимость" в данном пункте с FAR.
1. Добавить возможность вставить значение фильтра из Буфера обмена.
2. Добавить возможность скопировать значение фильтра в Буфер обмена.
Вполне логичные вещи. Записал в todo.
3. Добавить возможность сменить историю, сохранив фильтр.
Ну, а если я реализую 1 и 2, то 3 нельзя будет сделать с помощью макросов?
Навешивать на плагин сомнительнонужный функционал тоже не хочется, хотя это и несложно.

Post Reply

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