Пример плагина на LUA ?

Место, где разработчики плагинов могут поделиться своим опытом.
Post Reply
topmo3
Posts: 156
Joined: Mon 21 Aug, 2006 15:36
Has thanked: 37 times
Been thanked: 6 times

Пример плагина на LUA ?

Post by topmo3 »

подскажите, существует ли пример плагина, написанного на LUA?
или такое (пока?) еще невозможно?
User avatar
John Doe
Бюрократ
Posts: 13863
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Re: Пример плагина на LUA ?

Post by John Doe »

LuaMacro, в дистрибутиве :-)

А вот попроще: http://plugring.farmanager.com/plugin.php?pid=890&l=ru
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: Пример плагина на LUA ?

Post by Shmuel »

topmo3 wrote:подскажите, существует ли пример плагина, написанного на LUA?
или такое (пока?) еще невозможно?
Когда LuaFAR ещё не был в Фаре, в его дистрибутиве был плагин HelloWorld.

Другие примеры (моих) плагинов, написанных на Lua:
-- LuaFAR for Editor, LuaFAR Search, LuaFAR History, Macro2Lua converter.
Attachments
lf_helloworld.7z
(1.38 KiB) Downloaded 199 times
Denis
Posts: 1444
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 10 times
Been thanked: 5 times

Re: Пример плагина на LUA ?

Post by Denis »

LuaFAR History - он с открытыми исходниками?
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: Пример плагина на LUA ?

Post by Shmuel »

Denis wrote:LuaFAR History - он с открытыми исходниками?
Исходники LuaFAR Search, LuaFAR History и Macro2Lua converter не открыты.
User avatar
t-rex
Страшный и ужасный
Posts: 4910
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 8 times
Contact:

Re: Пример плагина на LUA ?

Post by t-rex »

но код то видно все ровно :)
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: Пример плагина на LUA ?

Post by Shmuel »

t-rex wrote:но код то видно все ровно :)
У меня не было цели затруднить reverse engineering (навряд ли кто-то этим будет заниматься).
Мог бы поместить в DLL скомпилированный код, но тогда бы плагины не работали под LuaJIT (у Lua и LuaJIT разные форматы байт-кодов).
topmo3
Posts: 156
Joined: Mon 21 Aug, 2006 15:36
Has thanked: 37 times
Been thanked: 6 times

Re: Пример плагина на LUA ?

Post by topmo3 »

большое спасибо за примеры.
оказывается, что dll всё равно надо компилить...
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: Пример плагина на LUA ?

Post by Shmuel »

topmo3 wrote:оказывается, что dll всё равно надо компилить...
DLL компилишь один раз в полгода (говорю по опыту), а плагин модифицируй на Lua хоть каждый день.
topmo3
Posts: 156
Joined: Mon 21 Aug, 2006 15:36
Has thanked: 37 times
Been thanked: 6 times

Re: Пример плагина на LUA ?

Post by topmo3 »

ясно, спасибо.
просто я думал что появился встроенный "мостик" между фаром и кодом на луа, и получается что каждый его сам делает в виде длл пока.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: Пример плагина на LUA ?

Post by Shmuel »

topmo3 wrote:просто я думал что появился встроенный "мостик" между фаром и кодом на луа, и получается что каждый его сам делает в виде длл пока.
Если компиляция вам так не по душе, возьмите из дистрибутива Фара luamacro.dll нужной вам битности, переименуйте в <ИмяВашегоПлагина>.dll, и создайте файлы <ИмяВашегоПлагина>.lua и _globalinfo.lua. В этих Lua-файлах будет ваш плагин, и ничего компилировать не надо.

Да, если вы возьмёте готовый _globalinfo.lua, внутри надо будет обязательно изменить GUID.
User avatar
zg
zero-gravity
Posts: 6037
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Re: Пример плагина на LUA ?

Post by zg »

Shmuel wrote:Если компиляция вам так не по душе, возьмите из дистрибутива Фара luamacro.dll нужной вам битности, переименуйте в <ИмяВашегоПлагина>.dll, и создайте файлы <ИмяВашегоПлагина>.lua и _globalinfo.lua. В этих Lua-файлах будет ваш плагин, и ничего компилировать не надо.
в luamacro.dll нет панельных экспортов. т.е. панельный плагин так не напишешь. всё остальное можно реализовать на макросах. зачем такой странный подход?
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: Пример плагина на LUA ?

Post by Shmuel »

zg wrote:
Shmuel wrote:Если компиляция вам так не по душе, возьмите из дистрибутива Фара luamacro.dll нужной вам битности, переименуйте в <ИмяВашегоПлагина>.dll, и создайте файлы <ИмяВашегоПлагина>.lua и _globalinfo.lua. В этих Lua-файлах будет ваш плагин, и ничего компилировать не надо.
в luamacro.dll нет панельных экспортов. т.е. панельный плагин так не напишешь. всё остальное можно реализовать на макросах. зачем такой странный подход?
Цитата из моего сообщения, поэтому, видимо, вопрос ко мне.
1. Подход отвечает запросам автора темы. Вопрос "зачем" следует адресовать ему.
2. Есть в Фаре некоторые фичи, заточенные именно под плагины.
Post Reply

Return to “Разработка плагинов”