LuaFAR — библиотека для создания плагинов на языке Lua

Здесь обсуждается всё, что касается макросов.
User avatar
John Doe
Бюрократ
Posts: 12247
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 32 times
Been thanked: 162 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe » Wed 29 Jul, 2009 21:41

Библиотека LuaFAR делает возможным написание плагинов на языке Lua, предоставляя им адаптированную версию FAR API.

Входит в состав FAR manager (начиная с 3.0 build 2851), и доступна для использования в макросах.

Справка по функциям библиотеки — luafar_manual.chm (в дистрибутиве, папка Encyclopedia).
Мануал весьма лаконичен, предполагает что вы ориентируетесь в FAR Plugins API (FarEncyclopedia.ru.chm, в дистрибутиве)

Дополнения к мануалу:

Полезное по теме: См. также:

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

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe » Thu 15 Nov, 2018 08:54

Latest post of the previous page:

Code: Select all

colordata = editor.GetColor(EditorId, StringNumber, ColorItem)
ColorItem нумеруется с 0
Забыт при ломке апи?
Будет ли меняться теперь?

Shmuel
Posts: 5736
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 21 times
Been thanked: 204 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Shmuel » Thu 15 Nov, 2018 09:33

John Doe wrote:
Thu 15 Nov, 2018 08:54
ColorItem нумеруется с 0
Забыт при ломке апи?
Навряд ли забыт, учитывая, что в мануале явно указано, что нумерация с нуля. Однако сейчас не помню, почему так было сделано.
Поиск по скриптам и LuaFAR-плагинам у меня на диске показал, что эта функция в них не используется.
Если считаете нужным изменить эту ситуацию - на Мантис.
Last edited by Shmuel on Thu 15 Nov, 2018 09:33, edited 1 time in total.

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

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe » Thu 15 Nov, 2018 13:14

Shmuel wrote:
Thu 15 Nov, 2018 09:33
Если считаете нужным изменить эту ситуацию - на Мантис.
Я не вижу общей картины, поэтому затрудняюсь определить необходимость.
Кажется что в большинстве подобных случаев нумерация в LuaFAR изменена.
Но поскольку здесь база отсчёта документирована в описании функции, то проблемы никакой нет.

Shmuel
Posts: 5736
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 21 times
Been thanked: 204 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Shmuel » Thu 15 Nov, 2018 13:18

Проблемы нет, но и противопоказаний к изменению как бы не видно (кроме обратной совместимости).

User avatar
SUSim
Posts: 1520
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 5 times
Been thanked: 8 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by SUSim » Sat 17 Nov, 2018 07:33

а по мне 0 это как бы базовый цвет, а потом уже раскраска начинается плагинами/макросами, вроде логично.
SimSU ··· ·· -- ··· ··-

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

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe » Sat 17 Nov, 2018 09:23

Нет никакого базового цвета, вся раскраска только плагинами, и 0 - это первая раскраска.

User avatar
SUSim
Posts: 1520
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 5 times
Been thanked: 8 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by SUSim » Sun 18 Nov, 2018 08:36

Ну как хотите, если менять, то щас (чем раньше тем лучше) пока макросов определяющих цвет мало!
Last edited by SUSim on Sun 18 Nov, 2018 08:36, edited 1 time in total.
SimSU ··· ·· -- ··· ··-

IgorZ
Posts: 603
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 9 times
Been thanked: 37 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by IgorZ » Mon 14 Jan, 2019 07:27

Столкнулся с непонятным поведением обработчика событий просмотрщика Far.
  1. Event{
  2.   group="ViewerEvent";
  3.   condition=function(_,Event) return Event==F.VE_READ or Event==F.VE_CLOSE end;
  4.   action=function(Id) far.Show(viewer.GetFileName(Id)) end;
  5. }
Данный обработчик событий показывает имя файла при открытии и закрытии. Если открыть файл в просмотрщике, имя файла возвращается правильно и при открытии, и при закрытии. Если же открыть файл в быстром просмотре, при открытии имя файла возвращается правильно, а при закрытии возвращается nil. Такое различие - нормально или ошибка?
Far 3.0.5351 x86, Windows XP SP3.

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

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe » Mon 14 Jan, 2019 08:13


2useven10
Posts: 3805
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 154 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by 2useven10 » Mon 14 Jan, 2019 08:17

IgorZ wrote:
Mon 14 Jan, 2019 07:27
Такое различие - нормально или ошибка?
Не знаю правильно это или нет.
Если переключиться на окно просмотра (Tab) скорее всего имя файла будет правильным.
Похоже Viewer.FileName непустое только если текущая область просмотрщик.
В нормальном просмотре, если окно нективно (F12 ...) - Viewer.FileName тоже пустое.

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

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe » Mon 14 Jan, 2019 08:43

> Viewer.FileName

Поведение ожидаемое, но выше речь не о нём, а о плагиновом апи.

2useven10
Posts: 3805
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 154 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by 2useven10 » Mon 14 Jan, 2019 09:28

John Doe wrote:
Mon 14 Jan, 2019 08:43
Поведение ожидаемое, но выше речь не о нём, а о плагиновом апи.
Да. Просто похоже способ получения имени один и тот же.

IgorZ
Posts: 603
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 9 times
Been thanked: 37 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by IgorZ » Mon 14 Jan, 2019 09:43

2useven10 wrote:
Mon 14 Jan, 2019 08:17
Если переключиться на окно просмотра (Tab) скорее всего имя файла будет правильным.
Нет, пустое, я проверил сразу. При чтении, кстати, хоть окно и неактивное, имя файла показывается корректно.

P. S. Проверил viewer.GetInfo. Картина идентичная, так что ситуация шире, на самом деле.

P. P. S. Дописал насчёт viewer.GetInfoVCTL_GETINFO на мантиссе.
Last edited by IgorZ on Mon 14 Jan, 2019 09:44, edited 1 time in total.

Post Reply

Return to “Обсуждение макросов”