вопрос вдогонку: как переписать макрос, чтобы при нажатии F5 внутри архива/arclite вызывалась стандартная процедура копирования?
в FAR со старым API (ver. <= 2798) такой проблемы не возникало...
macro Area="Shell Search" Description="Background copy: Copy" Key="F5"
{{
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter 1")
else
Keys("Esc")
end
if not Dlg.ItemType then
Keys("F5")
end
}}
вот подправленный "BackgroundCopy.fmlua" для MacroLib'а - у меня вроде все работает...
macro Area="Shell" Description="Background copy: Standard copy" Key="CtrlShiftF5" {{ Keys("F5") }}
macro Area="Shell" Description="Background copy: Standard move" Key="CtrlShiftF6" {{ Keys("F6") }}
macro Area="Shell" Description="Background copy: Info" Key="CtrlShiftF10"
{{
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter z")
else
Keys("Esc")
msgbox("Warning","Background copy plugin is not installed!",1)
end
}}
macro Area="Shell Search" Description="Background copy: Copy to same name" Key="ShiftF5"
{{
mf.clip(5)
Keys("CtrlShiftIns")
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter 1")
else
Keys("Esc")
end
if Dlg.ItemType == 0 then
Keys("ShiftIns")
else
Keys("ShiftF5")
end
}}
macro Area="Shell Search" Description="Background copy: Copy" Key="F5"
{{
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter 1")
else
Keys("Esc")
end
if Dlg.ItemType == 0 then
Keys("F5")
end
}}
macro Area="Dialog.'Copy' Dialog.'Копирование'" Description="Background copy: Copy (overwrite)" Key="F5"
{{
Keys("Esc")
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter 1")
else
Keys("Esc")
end
if Dlg.ItemType ~= 0 then
Keys("Down Space ShiftTab")
else
Keys("F5 Tab Tab CtrlDown Down Enter ShiftTab ShiftTab")
end
}}
macro Area="Dialog.'Move' Dialog.'Rename/Move' Dialog.'Переименование/Перенос'" Description="Background copy: Move (overwrite)" Key="F6"
{{
Keys("Esc")
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter 2")
else
Keys("Esc")
end
if Dlg.ItemType ~= 0 then
Keys("Down Space ShiftTab")
else
Keys("F6 Tab Tab CtrlDown Down Enter ShiftTab ShiftTab")
end
}}
macro Area="Shell Search" Description="Background copy: Move" Key="F6"
{{
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter 2")
else
Keys("Esc")
end
if Dlg.ItemType == 0 then
Keys("F6")
end
}}
macro Area="Shell Search" Description="Background copy: Delete" Key="Del" Condition="CmdLine:0"
{{
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter 3")
else
Keys("Esc")
end
if Dlg.ItemType == 0 then
Keys("F8")
end
}}
macro Area="Shell Search" Description="Background copy: Wipe" Key="AltDel"
{{
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter 5")
else
Keys("Esc")
end
if Dlg.ItemType == 0 then
Keys("AltDel")
end
}}
macro Area="Shell Search" Description="Background copy: Attributes" Key="CtrlShiftQ"
{{
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter 4")
else
Keys("Esc")
end
}}
macro Area="Shell Editor Viewer" Description="Background copy: Info" Key="CtrlShiftI"
{{
Keys("F11")
if Menu.Select("Background copy",3) or Menu.Select("Фоновое копирование",3) then
Keys("Enter Z")
else
Keys("Esc")
end
}}
Уважаемые, прошу подсказать, как запустить x64-версию этого плагина под far3 текущей сборки.
Без лоадера плагина нет в списке используемых плагинов, с лоадером - загружается с ошибкой.
Содержимое loader64.ini:
tstr wrote:zg: после Вашего вопроса я практически уверен что никому ничего не мешает.
я подправил чуть-чуть, чтобы на современных gcc собиралось без шаманств.
продолжаем ждать бинарники под актуальное АПИ.
тут всё сложнее. я конечно могу в лоб портировать под апи3, но мне кажется это не очень хорошим решением, так как проблемы с длинными и нестандартными именами останутся. чтобы их решить, плагин надо «немножечко» переписать. пока на это нет времени.