Менеджер закладок для папок

Здесь выкладываются готовые к использованию макросы и скрипты.
Post Reply
IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Менеджер закладок для папок

Post by IgorZ »

Данный скрипт позволяет назначать на папки и файлы закладки (закладка может содержать ссылки как на одну, так и на несколько целей, для разных панелей; подробнее во встроенной справке скрипта) и переходить по ним (или запускать их средствами ОС), а также по переменным окружения, содержащим пути. Идея взята у Shell Bookmark (с) Max Rusov, текст написан с нуля.
Скрипт содержит три макроса.
  • Сохранение текущей папки в новой закладке.
    Клавиша вызова: RCtrl+Shift/RAlt+последовательность клавиш.
  • Переход по закладке.
    Клавиша вызова: RCtrl+последовательность клавиш.
  • Меню закладок и настроек.
    Клавиша вызова: RCtrl+/.

Требуемая версия Far 3.0.4324+.

Attachments
BookmarkManager.3.0.9.7z
(25.26 KiB) Downloaded 142 times
Last edited by IgorZ on Fri 17 Feb, 2023 07:41, edited 24 times in total.
Arama
Posts: 121
Joined: Mon 01 Jun, 2015 12:14
Has thanked: 8 times
Been thanked: 4 times

Менеджер закладок для папок

Post by Arama »

Latest post of the previous page:

Отличный макрос!
Но нельзя ли как-нибудь отключить RCtrl+последовательность клавиш и оставить только RCtrl+/.
У меня после установки перестали работать хоткеи RCtrl+L, RCtrl+O к которым я очень привык.
Сам я не силен в написании макросов.
Хотелось бы иметь версию lite, где можно было бы только вызывать по RCtrl+/ и стрелочками выбирать куда переходить.
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Менеджер закладок для папок

Post by cmd.exe »

Arama wrote:У меня после установки перестали работать хоткеи RCtrl+L, RCtrl+O к которым я очень привык.
Происходит захват нажатий при нажатии RCtrl. По пойму это фитча данного модуля.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
Arama
Posts: 121
Joined: Mon 01 Jun, 2015 12:14
Has thanked: 8 times
Been thanked: 4 times

Менеджер закладок для папок

Post by Arama »

cmd.exe wrote: Происходит захват нажатий при нажатии RCtrl. По пойму это фитча данного модуля.
немножко не так, пока я букмарки не заполнил, все вызывалось, а теперь идет обработка RCtrl+последовательность клавиш и макрос находит O и L и поднимаем список, а мне бы хотелось, чтобы список букмарков поднимался только по RCtrl+/, а последовательность клавиш не обрабатывалась. Конечно это снизит функциональность, но для меня она избыточна.
IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Менеджер закладок для папок

Post by IgorZ »

Arama wrote:Отличный макрос!
Но нельзя ли как-нибудь отключить RCtrl+последовательность клавиш и оставить только RCtrl+/.
У меня после установки перестали работать хоткеи RCtrl+L, RCtrl+O к которым я очень привык.
Сам я не силен в написании макросов.
Хотелось бы иметь версию lite, где можно было бы только вызывать по RCtrl+/ и стрелочками выбирать куда переходить.
Поскольку Вы предлагаете выкинуть основную функциональность, то в скрипте для всех я этого делать не буду. Персонально для Вас могу предложить несколько способов решения проблемы.
  1. Использовать комбинации с левым Ctrl - его скрипт не затрагивает.
  2. Для CtrlO использовать стандартный макрос, назначающий это действие на Esc. Кстати, очень удобно, на мой взгляд.
  3. Поместить в папку scripts нижеследующий файл:
    1. Macro {
    2.  
    3.   area="Shell Info QView Tree"; key="CtrlO"; description="Toggle panels on/off"; priority=60; action = function() Keys('CtrlO') end;
    4.  
    5. }
    6.  
    7. Macro {
    8.  
    9.   area="Shell Info QView Tree"; key="CtrlL"; description="Toggle info on/off"; priority=60; action = function() Keys('CtrlL') end;
    10.  
    11. }
    Он будут перехватывать CtrlO и CtrlL, выполняя их сам.

    Странно. Попробовал скачать для проверки, вместо .lua файлу по умолчанию подставилось расширение .htm. Так что советую быть внимательным и в таком случае вручную переименовать файл.
  4. Радикальный вариант. В конце BookmarkManager.lua удалить следующий фрагмент:

    Code: Select all

    Macro{
      area="Shell"; key="/RCtrl[^\\/]/"; description=L.GoToDesc; uid=Guids.GoToMacro;
      condition = function() LoadSettings() return not InProcess and (UseLocal or UseGlobal or UseEnv) and 55 end; action=BMGoToFolder;
    }
    
    Это полностью исключит возможность перехода на закладки с помощью RCtrlЗакладка.
Arama
Posts: 121
Joined: Mon 01 Jun, 2015 12:14
Has thanked: 8 times
Been thanked: 4 times

Менеджер закладок для папок

Post by Arama »

IgorZ wrote: Поскольку Вы предлагаете выкинуть основную функциональность, то в скрипте для всех я этого делать не буду.
я предлагал сделать lite версию макроса :)
IgorZ wrote: Радикальный вариант. В конце BookmarkManager.lua удалить следующий фрагмент
Вот это помогло! Спасибо огромное за помощь!!!
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

Менеджер закладок для папок

Post by sToLp »

IgorZ wrote: Сокращённые меню присутствуют с версии 2.0, в истории версий упомянуты.
И в самом макросе, и в постах по нему Вы очень лаконично формулируете справочные сведения (что само по себе, по-моему, весьма правильно), но я не сразу в них врубаюсь, а только после пояснений и дополнительной практики.
Поупражнявшись же с макросом основательнее, утвердился для себя в следующих его наиболее полезных в моей практике возможностях:
— переход по закладкам префиксами комстроки;
— применение в качестве закладок переменных среды тоже;
— вызов меню макроса префиксами комстроки, в т.ч. при неполном вводе имени закладки вывод сокращённого меню;
— вызов меню макроса через меню плагинов (т.е., соответственно, — и по гуидам), и, таким образом, возможность эмуляции алиасами практически любых префиксов.
И поэтому теперь могу более осознанно ответить на Ваш вопрос:
добавлять/редактировать/удалять закладки охота только из полного меню, или из сокращённого тоже?
Да. Иметь возможность вызывать эти команды из сокращённого меню желательно бы тоже.
IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Менеджер закладок для папок

Post by IgorZ »

Версия 2.1.1 - Добавлено: Сокращённые меню позволяют все те же действия, что и полное. Исправлено: Комбинации RCtrlЦифра передаются Far-у, если такой закладки или переменной нет. Не совпадающие даже частично ни с одной закладкой или переменной окружения, содержащей путь, тоже. (то и другое поломалось в связи с добавлением меню при неполном наборе закладки)
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

Менеджер закладок для папок

Post by sToLp »

Шикарно: как раз то, что хотелось. Большое спасибо!

IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Менеджер закладок для папок

Post by IgorZ »

Версия 2.1.2 - Исправлена ошибка логики работы: при вызове через префикс несуществующая комбинация возвращалась в виде нажатий клавиатуры. При этом ещё и вызов Keys влёк за собой сообщение об ошибке.
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

Менеджер закладок для папок

Post by sToLp »

Поупражнялся с макросом разными способами в Win7x32ru и в Win10x64ru — без каких либо нареканий.
То есть сейчас макрос кажется практически идеальным. Премного Вам благодарен!
IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Менеджер закладок для папок

Post by IgorZ »

Версия 2.2.0 - Настройка вынесена в отдельный диалог. Улучшены диалоги для совпадающих локального и глобального профилей. Переработана справка. Добавлен префикс для вызова справки. Мелкие правки.

Изменения, в основном, визуальные. Настройки наконец-то выкинуты из главного меню. Справка теперь использует стандартный механизм Far-а. Заодно она стала более подробной. Как побочный эффект, возможны грамматические ошибки, особенно в английской версии. По префиксу bmhelp: можно вызвать справку из командной строки.
skipik
Posts: 318
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 67 times
Been thanked: 29 times

Менеджер закладок для папок

Post by skipik »

Поступил один баг-репорт, попросили запостить тут: http://forum.ru-board.com/topic.cgi?for ... art=720#19
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

Менеджер закладок для папок

Post by sToLp »

Чтобы попробовать обновление воспользовался BookmarkManager.2.2.0_BugFix.7z из руборда. В этом варианте макрос вроде бы работает также хорошо, как и в предыдущей (2.1.2) версии.

Столкнулся с задачей переброски настроек макроса с одного портабельного Фара в другой. Плагином SQLiteDB убедился в том, что они в базе данных плагина LuaMacro: %FarHome%\Profile\PluginsData\4EBBEFC8-2084-4B7F-94C0-692CE136894D.db. А там ведь много ещё чего другого. И в файле, создаваемом командой %farhome%\far.exe /export "%farhome%\out.farconfig" их тоже найти можно. Но я как-то не уверен, что мне удастся их корректно оттуда вычленить. Нельзя ли сделать некую опцию для экспорта/импорта настроек макроса?

дополнение:
А теперь использовал инструкцию VictorVG2 с того же руборда "О переносе настроек BookMark Manger" вручную, и получилось.
Но это всё же не отменяет просьбы сделать опцию в макросе, если это возможно. Понадёжнее всё таки будет.
IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Менеджер закладок для папок

Post by IgorZ »

Версия 2.2.1 - Исправлена ошибка, из-за которой не показывалась справка.

Виноват, запарился и забыл сделать финальную замену. Добрался до инета, исправляюсь.
IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Менеджер закладок для папок

Post by IgorZ »

sToLp wrote:Нельзя ли сделать некую опцию для экспорта/импорта настроек макроса?
В общем, вот.
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

Менеджер закладок для папок

Post by sToLp »

IgorZ wrote:
sToLp wrote:Нельзя ли сделать некую опцию для экспорта/импорта настроек макроса?
В общем, вот.
Круто! И эффектно! И эффективно! Порадовали! Спасибо! :Yahoo!:

Скачав и установив, тут же перенёс настройки на трёх переносных дисках на одной машине, и на двух стационарных дисках на двух других машинах. Везде Win10x64. Завтра посмотрю на Win10x32, Win7x64 и Win7x32. И, предчувствую, что результат будет неизменно превосходным.
Post Reply

Return to “Полезные макросы и скрипты”