Менеджер Lua-скриптов для Farа

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

Менеджер Lua-скриптов для Farа

Postby IgorZ » Thu 25 Apr, 2013 04:00

Данный скрипт содержит следующие макросы:

  1. Выводит список всех Lua-скриптов Farа и позволяет манипулировать ими.

    Клавиша вызова по умолчанию: AltShiftF11.

  2. Вставка Lua/Moon скрипта (с выбором, какого типа) в редактируемый .lua/.moon файл.
    Клавиша вызова по умолчанию: LCtrlF11.
  3. Вставка Lua/Moon Macro в редактируемый .lua/moon файл.
    Клавиша вызова по умолчанию: RCtrlF11.
  4. Вставка Lua/Moon Event в редактируемый .lua/moon файл.
    Клавиша вызова по умолчанию: RCtrlF11.
  5. Вставка Lua/Moon MenuItem в редактируемый .lua/moon файл.
    Клавиша вызова по умолчанию: RCtrlF11.
  6. Вставка Lua/Moon CommandLine в редактируемый .lua/moon файл.
    Клавиша вызова по умолчанию: RCtrlF11.
  7. Редактирование Lua/Moon скрипта из редактируемого файла.
    Клавиша вызова по умолчанию: CtrlF12.
  8. Вставка строки guid в редактируемый .lua/moon файл.
    Клавиша вызова по умолчанию: RCtrlU.
  9. Перезагрузка всех скриптов.
    Клавиша вызова по умолчанию: CtrlF9.

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

Начиная с версии 4.0, скрипт выполнен в виде модуля и набора вызывающих макросов.

Attachments
LuaManager.3.1.11.7z
Последняя версия, выполненная в виде скрипта
(50.56 KiB) Downloaded 17 times
LuaManager.4.0.0.7z
Просто последняя версия
(50.22 KiB) Downloaded 24 times
Last edited by IgorZ on Thu 18 May, 2017 06:19, edited 64 times in total.

Shmuel
Posts: 4997
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 132 times

Менеджер Lua-скриптов для Farа

Postby Shmuel » Thu 30 Mar, 2017 14:32

Latest post of the previous page:

Dennis_Moore, это что-то у вас не так. Сейчас специально установил, и оно работает (пробовал из панелей).
Правда картинка странная, с усечёнными текстами.

User avatar
Dennis_Moore
Posts: 143
Joined: Tue 03 Mar, 2015 19:54
Location: Kiev
Has thanked: 3 times
Been thanked: 5 times

Менеджер Lua-скриптов для Farа

Postby Dennis_Moore » Fri 31 Mar, 2017 01:32

Shmuel wrote:Dennis_Moore, это что-то у вас не так. Сейчас специально установил, и оно работает (пробовал из панелей).
Правда картинка странная, с усечёнными текстами.


С этого дня обещаю всегда проверять все на чистом FAR перед тем как писать. Да, на чистой работает. Ошибка появляется если в scripts лежит um_adapter.lua и мне кажется что проблема все-таки в LuaManager т.ч. не буду пока писать в тему UM Adapter.

P.S. У меня на билде 4927 тексты не усечены

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

Менеджер Lua-скриптов для Farа

Postby IgorZ » Fri 31 Mar, 2017 06:25

Dennis_Moore wrote:Похоже что скрипт не работает. При вызове получаю следующее (FAR3 b4927):


Пропущенная при тестировании граничная ошибка. Разбор описания на подстроки неправильно работал, если у префикса командной строки не указано описание. Для исправления в строку 2396 надо исправить с

Code: Select all

      items[#items+1] = {from=p,grayed=not Area.Shell,text=("%-"..PrPrefW.."s │ %s"):format(p.prefix,D[1])}
на

Code: Select all

      items[#items+1] = {from=p,grayed=not Area.Shell,text=("%-"..PrPrefW.."s │ %s"):format(p.prefix,D[1] or "")}

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

Менеджер Lua-скриптов для Farа

Postby IgorZ » Fri 31 Mar, 2017 07:26

Shmuel wrote:Dennis_Moore, это что-то у вас не так. Сейчас специально установил, и оно работает (пробовал из панелей).
Правда картинка странная, с усечёнными текстами.

В своё время я поменял интерпретацию настроек длины описаний и клавиш. А значения по умолчанию, как оказалось, забыл. Конечно, есть и вариант, что в БД остались старые значения, если Вы когда-то уже использовали LuaManager, но лечение в обоих случаях одинаковое. F9 в окне скрипта, и поменять два -1 на два 0 для лечения. А мне и это поправить в следующей версии.

User avatar
Dennis_Moore
Posts: 143
Joined: Tue 03 Mar, 2015 19:54
Location: Kiev
Has thanked: 3 times
Been thanked: 5 times

Менеджер Lua-скриптов для Farа

Postby Dennis_Moore » Fri 31 Mar, 2017 13:01

IgorZ wrote:Пропущенная при тестировании граничная ошибка. Разбор описания на подстроки неправильно работал, если у префикса командной строки не указано описание. Для исправления в строку 2396 надо исправить с ... на ....


Спасибо! Теперь работает.
Last edited by Dennis_Moore on Fri 31 Mar, 2017 13:02, edited 1 time in total.

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

Менеджер Lua-скриптов для Farа

Postby IgorZ » Fri 07 Apr, 2017 06:30

Накопилось много исправлений, так что выкладываю очередную версию под девизом "работа над ошибками (старые убираем, новые создаём)".
Версия 3.1.9 - Немного изменён способ регистрации модуля. Рефакторинг. Разбор описания на подстроки неправильно работал, если у префикса командной строки не указано описание. Исправлена ошибка с фильтром модулей по умолчанию, появившаяся в 3.1.7. (не пойму, зачем я в той версии решил уже имеющийся совершенно корректный фильтр по умолчанию перезаписывать на все абсолютно пути поиска модулей; я вообще не помню, как это делал :? ). Мелкие правки.
Last edited by IgorZ on Mon 10 Apr, 2017 05:40, edited 1 time in total.

gotar
Posts: 293
Joined: Sun 06 Sep, 2009 12:34
Has thanked: 8 times

Менеджер Lua-скриптов для Farа

Postby gotar » Sun 09 Apr, 2017 17:12

То что у меня список макросов выглядит так

Code: Select all

l                                                                          g
   ╔═══════ Macros. Events *. Modules. MenuItems. CommandLines.  ═══════╗
   ╟────────────────────────────── Macros ──────────────────────────────▲
   ║  ·················C │ A»│ Con»                                     ▓
   ║  ·················C │ A»│ Cal»                                     ▓
   ║  ·················C │ a»│ &Se»                                     ▓
   ║  ·················C │ a»│ Pr&»                                     ▓
   ║  ·················C │ A»│ Man»                                     ▓
   ║  ·················C │ A»│ Imp»                                     ▓
   ║  ·················C │ A»│ Imp»                                     ▓
   ║  ·················C │ A»│ Con»                                     ▓
   ║  ·················C │ C»│ Get»                                     ▓
   ║  ·················C │ C»│ Win»                                     ▓
   ║  ·················C │ C»│ Win»                                     ▓
   ║  ·················C │ C»│ Win»                                     ▓
   ║  ·················C │ C»│ Con»                                     ▓
   ║  ·················C │ C»│ Lua»                                     ▓
   ║  ·················C │ C»│ Lua»                                     ▓
   ║  ·················C │ C»│ Con»                                     ▓
   ║  ·················C │ C»│ Cli»                                     ▓
   ║  ·················C │ C»│ Cal»                                     ░
   ║  ·················C │ C»│ Cal»                                     ░
Это так и задумано?
Может надо что-то здесь поправить

Code: Select all

                  │      │        │     ║║

    ╔═══════════════════════════════ Config ═══════════════════════════════╗
    ║ Max field width:            key - -1       , description - -1        ║
    ╟──────────────────────────────── Show ────────────────────────────────╢
    ║ Macros:  [x] Regular,      [x] Keyboard,     [x] For all areas       ║
    ║ [x] Events      [x] Modules    [x] MenuItems     [x] CommandLines    ║
    ╟─────────────────────────── Sorting order ────────────────────────────╢
    ║ [ Macros ]  [ Events ]  [ Modules ][ MenuItems ]  [ CommandLines ]   ║
    ╟─────────────────────────────── Filter ───────────────────────────────╢
    ║ Filter for keys:                                        [ Change ]   ║
    ║ [ Filter for areas ]    [ Filter for groups ][ Filter for paths ]    ║
    ╟─────────────────────────  Macros start keys ─────────────────────────╢
    ║ 1.'Lua manager'           AltShiftF11                   [ Change ]   ║
    ║ 2.'Insert script'         LCtrlF11                      [ Change ]   ║
    ║ 3.'Insert Macro'          RCtrlF11                      [ Change ]   ║
─   ║ 4.'Insert Event'          RCtrlF11                      [ Change ]   ║
    ║ 5.'Insert MenuItem'       RCtrlF11                      [ Change ]   ║
f   ║ 6.'Insert CommandLine'    RCtrlF11                      [ Change ]   ║
a   ║ 7.'Edit script'           CtrlF12                       [ Change ]   ║
    ║ 8.'Insert guid'           RCtrlU                        [ Change ]   ║
    ║ 9.'Reload scripts'        CtrlF9                        [ Change ]   ║
    ╟──────────────────────────────────────────────────────────────────────╢
a   ║               { Save } [ Apply until exit ] [ Cancel ]               ║
    ╚══════════════════════════════════════════════════════════════════════╝
?
Last edited by gotar on Sun 09 Apr, 2017 17:33, edited 1 time in total.

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

Менеджер Lua-скриптов для Farа

Postby IgorZ » Mon 10 Apr, 2017 05:39

gotar wrote:То что у меня список макросов выглядит так Это так и задумано?

Это поправлено в последней версии. Но если Вы уже запускали предыдущую и сохраняли настройки, то надо изменять в настройках.
gotar wrote:Может надо что-то здесь поправить ?

Да, поменяйте обе -1 на 0.

gotar
Posts: 293
Joined: Sun 06 Sep, 2009 12:34
Has thanked: 8 times

Менеджер Lua-скриптов для Farа

Postby gotar » Mon 10 Apr, 2017 06:18

Может подскажите в чем здесь проблема

Code: Select all

   ╔═════════════════════════════════════════════════════════════ Error ═════════════════════════════════════════════════════════════╗
   ║ E:\Dropbox\FarSpring\Plugins\LuaMacro\LuaMacro.dll:                                                                             ║
   ║ ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:450: attempt to perform arithmetic on field 'sstarty' (a nil value) ║
   ║ stack traceback:                                                                                                                ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:450: in function 'PrepareFiles'                                  ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:686: in function 'fun'                                           ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:552: in function 'DoIt'                                          ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:2429: in function 'ManageMacrosEvents'                           ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:2600: in function 'action'                                       ║
   ║    E:\Dropbox\FarSpring\Plugins\LuaMacro\LuaMacro.lua:415: in function <E:\Dropbox\FarSpring\Plugins\LuaMacro\LuaMacro.lua:369> ║
   ╟─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╢
   ║                                                             { OK }                                                              ║
   ╚═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝
Нажимал F3 втором событии из списка
Last edited by gotar on Mon 10 Apr, 2017 06:35, edited 2 times in total.

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

Менеджер Lua-скриптов для Farа

Postby IgorZ » Tue 11 Apr, 2017 11:54

gotar wrote:Может подскажите в чем здесь проблема

Code: Select all

   ╔═════════════════════════════════════════════════════════════ Error ═════════════════════════════════════════════════════════════╗
   ║ E:\Dropbox\FarSpring\Plugins\LuaMacro\LuaMacro.dll:                                                                             ║
   ║ ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:450: attempt to perform arithmetic on field 'sstarty' (a nil value) ║
   ║ stack traceback:                                                                                                                ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:450: in function 'PrepareFiles'                                  ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:686: in function 'fun'                                           ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:552: in function 'DoIt'                                          ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:2429: in function 'ManageMacrosEvents'                           ║
   ║    ...rSpring\Profile\Macros\scripts\LuaManager\LuaManager.lua:2600: in function 'action'                                       ║
   ║    E:\Dropbox\FarSpring\Plugins\LuaMacro\LuaMacro.lua:415: in function <E:\Dropbox\FarSpring\Plugins\LuaMacro\LuaMacro.lua:369> ║
   ╟─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╢
   ║                                                             { OK }                                                              ║
   ╚═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝
Нажимал F3 втором событии из списка

Скрипт не смог найти тело события в файле, хотя оно там должно быть. Причину без самого файла сказать не могу. Вроде бы, все подобные ситуации, которые сумел отыскать, поборол раньше. Оказывается, нет. Тут, скорее всего, событие определено как-то слишком хитро. Надо смотреть текст.

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

Менеджер Lua-скриптов для Farа

Postby John Doe » Wed 12 Apr, 2017 07:32

Падать всё равно ведь не стоит

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

Менеджер Lua-скриптов для Farа

Postby IgorZ » Wed 12 Apr, 2017 10:16

John Doe wrote:Падать всё равно ведь не стоит

Не стоит. Но был уверен, что полностью исключил возможность этой ошибки. Хотелось бы знать, какой вариант я не предусмотрел.

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

Менеджер Lua-скриптов для Farа

Postby IgorZ » Thu 04 May, 2017 06:59

Выловил немного свободного времени, так что
Версия 3.1.10 - Мелкие правки, в основном предотвращение ошибок, которых, по идее, не могло случиться, но они есть.

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

Менеджер Lua-скриптов для Farа

Postby IgorZ » Thu 18 May, 2017 06:40

Сразу две версии.
Версия 3.1.11 - Рефакторинг. Мелкие правки.
Версия 4.0.0 - Основная логика скрипта вынесена в отдельный модуль. Макрос стал просто обвязкой к нему. (решил сделать приятное John Doe :) ).
Функционально обе версии идентичны.


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

Who is online

Users browsing this forum: No registered users and 3 guests