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

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

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

Postby IgorZ » Fri 24 Jan, 2014 09:51

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

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

Attachments
BookmarkManager.2.4.1.7z
(18.3 KiB) Downloaded 21 times
Last edited by IgorZ on Mon 15 May, 2017 07:35, edited 30 times in total.

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

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

Postby John Doe » Thu 02 Apr, 2015 07:43

Latest post of the previous page:

BFDA wrote:Source of the post В поле Bookmark название вводится только большими буквами
Так и задумано, см. стр. 285.
Суть видимо в том, что это не столько имя, сколько последовательность нажатий.

IgorZ
Posts: 436
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 5 times
Been thanked: 8 times

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

Postby IgorZ » Fri 29 May, 2015 07:51

John Doe wrote:У меня не воспроизводится, зато нашёл другой баг: в существующей закладке нельзя отредактировать поле Bookmark.
(Вместо изменения существующей создаётся новая закладка)

Это не баг, это фича :). Так и задумано. Точнее, сознательно не удаляется старая закладка. Если действительно мешает, могу сделать старое поведение по F5, а по F4 удалять старую закладку, чтоб не плодить.

John Doe wrote:Ещё заметил что в меню закладок ширина для столбца Bookmark может отличаться (Local bookmarks одна ширина, а Global bookmarks другая).
Напрасно это.

А это бага, задумывалась одинаковая ширина. Спасибо, у себя не замечал - все имена примерно одной длины, так что не было видно.

John Doe wrote:
BFDA wrote:Source of the post В поле Bookmark название вводится только большими буквами
Так и задумано, см. стр. 285.
Суть видимо в том, что это не столько имя, сколько последовательность нажатий.

Совершенно верно. Там допустимы только те символы, которые вводятся при нажатии совместно с Ctrl.

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

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

Postby John Doe » Fri 29 May, 2015 09:02

IgorZ wrote:Source of the post Если действительно мешает
Не то чтобы мешало, но ведь факт: действие не соответствует заявленному.

IgorZ
Posts: 436
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 5 times
Been thanked: 8 times

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

Postby IgorZ » Wed 03 Jun, 2015 09:55

Версия 1.2.4 - Скрипт зачем-то вызывался из любых меню. Исправлено. В целях унификации с другими скриптами автора (и потенциально большей универсальности) изменен механизм языковой настройки. Языковой файл от предыдущих версий не подходит!!! Исправлена ошибка с разной шириной столбца закладок для локальных и глобальных закладок. Теперь в менеджере закладок по F4 закладка не копируется при её изменении. Для копирования закладки теперь надо жать F5.

skipik
Posts: 42
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 1 time
Been thanked: 1 time

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

Postby skipik » Wed 03 Jun, 2015 15:37

Имеется проблема со скриптом, в версии 1.2.4 не исправилось.
Подробнее здесь: http://bugs.farmanager.com/view.php?id=3001

skipik
Posts: 42
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 1 time
Been thanked: 1 time

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

Postby skipik » Wed 03 Jun, 2015 20:28

Исправлено в очередной ночной сборке.
Есть ещё вопрос, что такое символ А в одинарных кавычках в значении пути папки. Оно и в подсказках отображается при переходе.

IgorZ
Posts: 436
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 5 times
Been thanked: 8 times

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

Postby IgorZ » Fri 05 Jun, 2015 05:38

BFDA wrote::(

Нажимаю Ctrl-/


Far Manager, version 3.0 (build 4328) x64

Глянул ещё раз. Попробуйте в функции edit_bm строку local key = obj:OpenSubkey(0,KeysPart) заменить на local key = obj:CreateSubkey(0,KeysPart). Для версии 1.2.4 это строка 273. Если поможет, внесу соответствующее исправление в следующую версию.

IgorZ
Posts: 436
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 5 times
Been thanked: 8 times

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

Postby IgorZ » Wed 09 Dec, 2015 06:48

Версия 2.0.0 - Помимо закладок поддерживаются переменные окружения (только переход на папки). Если закладка или переменная набрана частично, выводится список всех, содержащих набранный фрагмент. Мелкие правки.

User avatar
Mauro72
Posts: 206
Joined: Wed 11 Aug, 2010 00:23
Location: Rosario, Argentina
Been thanked: 6 times

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

Postby Mauro72 » Thu 10 Dec, 2015 23:00

Any help with this:

C:\Far Manager32\Plugins\LuaMacro\LuaMacro.dll:
C:\Far Manager32\Profile\Macros\scripts\BookmarkManager.lua:262: bad argument #1 to 'Get' (number expected, got nil)
stack traceback:
[C]: in function 'Get'
C:\Far Manager32\Profile\Macros\scripts\BookmarkManager.lua:262: in function 'prep_menu'
C:\Far Manager32\Profile\Macros\scripts\BookmarkManager.lua:352: in function 'BMMenu'
C:\Far Manager32\Profile\Macros\scripts\BookmarkManager.lua:465: in function 'action'
C:\Far Manager32\Plugins\LuaMacro\LuaMacro.lua:408: in function <C:\Far Manager32\Plugins\LuaMacro\LuaMacro.lua:364>

Thanks!

IgorZ
Posts: 436
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 5 times
Been thanked: 8 times

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

Postby IgorZ » Fri 11 Dec, 2015 06:33

Mauro72 wrote:Any help with this:


Thanks!

Try to replace string 262 from

Code: Select all

    local folder = v.Value or obj:Get(key,v.Name,F.FST_STRING) -- папка очередной закладки
to

Code: Select all

    local folder = not lg and v.Value or obj:Get(key,v.Name,F.FST_STRING) -- папка очередной закладки
and report about result.

User avatar
Mauro72
Posts: 206
Joined: Wed 11 Aug, 2010 00:23
Location: Rosario, Argentina
Been thanked: 6 times

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

Postby Mauro72 » Fri 11 Dec, 2015 17:11

Same errors IgorZ

IgorZ
Posts: 436
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 5 times
Been thanked: 8 times

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

Postby IgorZ » Mon 14 Dec, 2015 08:22

Mauro72 wrote:Same errors IgorZ
Try to replace string 228 from

Code: Select all

  l = obj:Enum(key)
to

Code: Select all

  if key then l = obj:Enum(key) end -- если есть - прочитаем содержимое

User avatar
Mauro72
Posts: 206
Joined: Wed 11 Aug, 2010 00:23
Location: Rosario, Argentina
Been thanked: 6 times

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

Postby Mauro72 » Tue 15 Dec, 2015 03:50

Excellent IgorZ!
No more errors. Thanks men!

IgorZ
Posts: 436
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 5 times
Been thanked: 8 times

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

Postby IgorZ » Tue 15 Dec, 2015 06:35

Версия 2.0.1 - Исправление обнаруженных ошибок, чуть оптимизации

IgorZ
Posts: 436
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 5 times
Been thanked: 8 times

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

Postby IgorZ » Mon 25 Jan, 2016 06:15

Версия 2.1.0 - Добавлена работа из командной строки через префиксы. Можно переходить по закладкам и переменным окружения, добавлять/редактировать в диалоге/удалять закладки. Рефакторинг. Исправление кучи внезапно обнаруженных ошибок.
Пара замечаний.
1. Поскольку изначальный способ работы со скриптом - нажатие Ctrl-комбинаций, то все вводимые имена закладок преобразуются в допустимые символы. К примеру, Игры->BUHS (то есть, команда bm:Игры полностью аналогична по эффекту команде bm:BUHS.
2. Также при переделке были обнаружены несколько потенциальных ошибок, как мелких, так и довольно неприятных. Самое загадочное - как на них до сих пор никто не напоролся? Видимо, народ не пользуется возможностью задавать небуквенные закладки. На всякий случай: в диалоге редактирования или вставки новой закладки в поле имени можно проверить, какие символы доступны для имён закладок. Заодно, может, ещё какие-нибудь интересные не отловленные ошибки вылезут.

GAAlex
Posts: 10
Joined: Sun 16 Aug, 2015 05:48
Been thanked: 2 times

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

Postby GAAlex » Mon 25 Jan, 2016 08:26

Вопрос: а возможно реализовать вложенность меню? было бы очень удобно

User avatar
sToLp
Posts: 691
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 31 times
Been thanked: 5 times

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

Postby sToLp » Mon 25 Jan, 2016 09:32

Поскольку изначальный способ работы со скриптом - нажатие Ctrl-комбинаций, то все вводимые имена закладок преобразуются в допустимые символы. К примеру, Игры->BUHS (то есть, команда bm:Игры полностью аналогична по эффекту команде bm:BUHS
Это весьма полезное свойство, т.к. оно удобно для тех, кому приходится часто работать в русской раскладке тоже.
И поэтому указание на это свойство макроса, имхо, хорошо бы поместить в шапку и справку.

И нельзя ли ещё для удобства добавить также возможность вызова макроса по префиксу :?
То есть чтобы, к примеру, закладку "Игры" можно было вызывать командой ::Игры (или ::Buhs), а меню макроса просто командой ::
(Если я не ошибаюсь, ныне префикс : плагинами не занят, а раньше, в Фар1, он применялся в плагине Alias)


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

Who is online

Users browsing this forum: No registered users and 1 guest