iyudincev / sizemanager Goto Github PK
View Code? Open in Web Editor NEWDisk usage visualization plugin for FAR Manager
License: Other
Disk usage visualization plugin for FAR Manager
License: Other
Получил на forum.ru-board.com в ПМ баг-репорт от skipik - в его сборке плагин перехватывал диалоги arclite и не выводились тулбары по F5, F6, F8 и при нажатии Enter:
Опять вернулась проблема с прогресс-баром, которая связана была со скриптом Size Manager. У меня бар не появляется ни на архивировании, на ни копировании, попробуйте исправить, а я сразу же проверю!
. Повозился, поправил:
-- Макрос назначен на LAltShiftS. Плагин вызывается в реальных файловых
-- панелях и дереве каталогов, навигация работает только в панели плагина.
--
-- (c) VictorVG @ VikSoft.Ru, 2014 - 2015 , (c) Igor Yudincev, 2015
-- История версий:
--
-- v1.0 - первая версия, только звали плагин, навигации в нём ещё не было
-- 02.08.2014, 14:11:44 +0300
-- v1.1 - добавлена навигация из Size Manager.lua by Igor Yudincev.
-- 18.04.2015, 15:00:27 +0300
-- v1.2 - рефакторинг, пытаемся устранить конфликт с ArcLite (баг-репорт skipik)
-- Wed Jun 24 04:05:28 +0300 2015
-- v1.3 - рефакторинг, пытаемся устранить конфликт с F5/F6/F8 (баг-репорт skipik)
-- Thu Jun 25 13:55:50 +0300 2015
-- v1.4 - рефакторинг
-- Thu Jun 25 23:30:20 +0300 2015
-- v1.5 - рефакторинг: вроде окончательный вид, дальше шлифовать только портить
-- Fri Jun 26 00:43:15 +0300 2015
--
local SMId="F36E3C60-C77F-43F2-83C1-8A879DDBBCD7";
local SMMId="F3D9C64A-BC7A-49A5-8FD9-38CAE5A37282";
local DlgId1="E41F6EFF-49DA-40D8-BB50-37D355D812CC";
local DlgId2="5431982E-24CA-4BAC-8831-177300C2405C";
Macro{
area="Shell Tree";
key="LAltShiftS";
flags="NoPluginPanels NoPluginPPanels NoSendKeysToPlugins";
description="Size Manager: run plugin";
action=function()
Plugin.Menu(SMId,SMMId)
end;
}
Macro {
area="Dialog";
key="Enter Home End Up Down PgUp PgDn Left Right CtrPgUp CtrPgPgDn";
flags="NoPluginPanels NoPluginPPanels NoSendKeysToPlugins";
priority=0;
description="Size Manager: panel navigation";
condition=function() return Dlg.Id==(DlgId1 or DlgId2) end;
action = function()
Keys("Esc")
Keys(akey(1))
Plugin.Call(SMId,0)
end;
}
первый макрос вызовет плагин чтобы не терять время на лазанье по меню, второй управляет навигацией и в его condition стоит проверка что он вызывается именно в диалогах плагина что исключает перехват управления в других местах. Блок if в данном случае срабатывал поздно, а потому проверка была перенесена на более раннюю стадию. Вроде по первым сообщениям проблему удалось устранить - http://forum.ru-board.com/topic.cgi?forum=5&topic=31718&start=6900#10
P.S.
Вариант записи flags="NoPluginPanels|NoPluginPPanels|NoSendKeysToPlugins" сомнителен - luamacro_manual.ru.chm :: Стационарные макросы :: 3. Flags:
"Опциональное поле flags может содержать набор флагов, разделённых пробелами."
это место я поправил чтобы не нарываться на подводные камни.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.