Page 2 of 2

Можно ли из скрипта загрузить(выгрузить) плагин

Posted: Wed 22 Oct, 2014 13:56
by Wave

Latest post of the previous page:

Plugin.Load(…) и Plugin.Unload(…), см. энциклопедию.

Можно ли из скрипта загрузить(выгрузить) плагин

Posted: Wed 22 Oct, 2014 14:10
by John Doe
Проще из меню пользователя, см. справку плагина FarCmds

Можно ли из скрипта загрузить(выгрузить) плагин

Posted: Thu 23 Oct, 2014 07:11
by KonovaPE
Спасибо. Подправил скрипт
RClick выделяет файл/ длинный RClick вызывает контекстное меню (c) IgorZ
...
local EMPath = win.GetEnv("FARHOME").."\\Plugins\\EMenu\\EMenu.dll"
...

local function OnTimer()
timer:Close() timer = nil
if Mouse.Button==2 and (MouseClickOn==APanel.Path.."\\"..APanel.Current) then
Panel.Select(0,2,1)
Plugin.Load(EMPath,0)
far.MacroPost('Plugin.Command("'..EMenu..'","rclk_txt:")')
end
MouseClickOn = ""
end

Macro{
area="Shell"; key="MsRClick"; description="EMenu: mouse activation";
condition=function() return not timer end; action=function()
Plugin.Unload(EMPath);
Keys("MSRClick")
MouseClickOn = APanel.Path.."\\"..APanel.Current
timer = far.Timer(MinDelay,OnTimer)
end;
}

Можно ли из скрипта загрузить(выгрузить) плагин

Posted: Thu 23 Oct, 2014 18:46
by SUSim
Я только не понимаю, зачем ВЫГРУЖАТЬ плагин??? (на счёт загрузки - польза есть -фар быстрее стартует, а вот выгружать... память что-ли экономить - ну так в наше время не критично...)

Можно ли из скрипта загрузить(выгрузить) плагин

Posted: Thu 23 Oct, 2014 20:39
by zg
SUSim wrote:Я только не понимаю, зачем ВЫГРУЖАТЬ плагин???
чтобы не работал. например.

Plugin.Unload

Posted: Sat 19 Dec, 2015 10:09
by cmd.exe
Shmuel wrote: UserMenu доступен из редактора, если вызывать из макроса: mf.usermenu().
Я ждал несколько более интересных предложений, например про plugin.load/unload, который неработает совсем в последних билдах.

p.s.
Какой-же я некропостер однако...

Plugin.Unload

Posted: Sat 19 Dec, 2015 10:22
by Shmuel
cmd.exe wrote:
Shmuel wrote: UserMenu доступен из редактора, если вызывать из макроса: mf.usermenu().
Я ждал несколько более интересных предложений, например про plugin.load/unload
Мой пост не был предложением чего бы то ни было. Следующий раз надо будет думать: а достаточно ли интересно то, что пишу?

Plugin.Unload

Posted: Sat 19 Dec, 2015 10:32
by cmd.exe
Shmuel wrote: Мой пост не был предложением чего бы то ни было. Следующий раз надо будет думать: а достаточно ли интересно то, что пишу?
Почему оказалось что очень интересно, трассировку сделал, получил на выходе:

Plugin.Unload

Posted: Sat 19 Dec, 2015 12:04
by zg
cmd.exe wrote:Я ждал несколько более интересных предложений, например про plugin.load/unload, который неработает совсем в последних билдах.
всё прекрасно работает:

Code: Select all

Macro
  area:"Editor"
  key:"CtrlF5"
  action:->
    handle=far.FindPlugin far.Flags.PFM_GUID,win.Uuid "9860393A-918D-450F-A3EA-84186F21B0A2"
    path=far.GetPluginInformation(handle).ModuleName
    far.UnloadPlugin handle
    far.LoadPlugin  far.Flags.PLT_PATH,path