Улучшение макросов из поставки фара

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

Улучшение макросов из поставки фара

Post by John Doe »

Тема служит для обсуждения штатных макросов из Addons\Macros.

Привёл макросы в соответствие с актуальными возможностями LuaMacro.
Прежде всего пообъединял где можно, пользуясь возможностью назначения макросу нескольких макрообластей и клавиш.

Конечно, многие макросы стоит вообще переработать, простор для улучшения есть, предлагайте.

Примечание: из обсуждения выделены следующие темы: Связанные темы:
Attachments
StdMacros.7z
(16.13 KiB) Downloaded 104 times
User avatar
John Doe
Бюрократ
Posts: 12872
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 293 times

Улучшение макросов из поставки фара

Post by John Doe »

Макрос ShiftF1.lua давно неактуален, рассчитан на MultiArc
Смысла View.CtrlUpDown.lua я вообще не понял.
Объясните кто знает

Edit: кусок обсуждения уплыл в отделённую тему.
Last edited by John Doe on Tue 04 Sep, 2018 11:27, edited 1 time in total.
User avatar
John Doe
Бюрократ
Posts: 12872
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 293 times

Улучшение макросов из поставки фара

Post by John Doe »

John Doe wrote:Прежде всего пообъединял где можно, пользуясь возможностью назначения макросу нескольких макрообластей и клавиш.
Больше всего изменился Edit.Notepad.lua, вместо 8 макросов 2

Code: Select all

local notepad={
  CtrlF = "F7",           --Find...
  F3    = "ShiftF7",      --Find Next
  CtrlH = "CtrlF7",       --Replace...
  CtrlG = "AltF8",        --Go To...
  CtrlN = "ShiftF4 Enter",--New File
  CtrlO = "ShiftF4",      --Open...
  CtrlS = "F2",           --Save File
}

Macro {description="Editor: like Notepad";
  area="Editor"; key="/([LR]Ctrl[FHGNOS])|F3/"; flags=""; action = function()
Keys(notepad[akey(1)])
  end;
}

Macro {description="Editor: Paste Time/Date";
  area="Editor"; key="F5"; flags=""; action = function()
mf.print(mf.date('%R %x'))
  end;
}
...
В архиве этого нет, но макросы Panel.CtrlLeft.lua и Panel.CtrlRight.lua можно объединить в Panel.CtrlLeftRight.lua

Last edited by John Doe on Wed 05 Sep, 2018 11:21, edited 1 time in total.
tstr
Posts: 535
Joined: Thu 16 Apr, 2009 16:15
Has thanked: 10 times
Been thanked: 9 times

Re: Улучшение макросов из поставки фара

Post by tstr »

Вы поаккуратнее с изменениями в поставке - такой способ (вызов ф-ции на многие клавиши) не срабатывает в автоматическом добавлении описания и шорткатов в помощь.
User avatar
John Doe
Бюрократ
Posts: 12872
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 293 times

Re: Улучшение макросов из поставки фара

Post by John Doe »

Но способ-то правильный.
Если с помощью что-то не так, то пишите на мантис.
tstr
Posts: 535
Joined: Thu 16 Apr, 2009 16:15
Has thanked: 10 times
Been thanked: 9 times

Re: Улучшение макросов из поставки фара

Post by tstr »

И как таким правильным способом в помощь попадут комментарии из функции, напр. "--Find Next"?
Shmuel
Posts: 6167
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 330 times

Re: Улучшение макросов из поставки фара

Post by Shmuel »

John Doe wrote:

Code: Select all

  local d = akey(1) == "CtrlLeft" and "Up" or "Down")
  Keys('F9 Enter Up Enter'..d..'Enter Esc')
Неплохо бы вам проверять, что получилось. Это всё-таки программирование.
User avatar
John Doe
Бюрократ
Posts: 12872
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 293 times

Улучшение макросов из поставки фара

Post by John Doe »

Code: Select all

local dir = {CtrlLeft="Up", CtrlRight="Down"}
Macro {
  description="Change current drive";
  area="Shell"; key="CtrlLeft CtrlRight"; flags="EmptyCommandLine";
  action=function()
    Keys("F9 Enter Up Enter",dir[akey(1)],"Enter Esc")
  end;
}
Update:
Тут продолжение: http://forum.farmanager.com/viewtopic.php?f=15&t=9172
Last edited by John Doe on Wed 05 Sep, 2018 11:25, edited 1 time in total.
User avatar
John Doe
Бюрократ
Posts: 12872
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 293 times

Улучшение макросов из поставки фара

Post by John Doe »

Замена для Panel.Numpad.lua

Code: Select all

local Numpad={Multiply="*", Add="+", Subtract="-", Divide="/"}
local key="Multiply Add Subtract Divide"

Macro {description="Use numpad keys in command line"; 
  area="Shell ShellAutoCompletion"; key=key; flags="NotEmptyCommandLine"; 
  action = function() Keys(Numpad[akey(1)]) end;
}
Macro {description="Use numpad keys in command line"; 
  area="Search"; key=key;
  action = function() Keys(Numpad[akey(1)]) end;
}
Или

Code: Select all

Numpad={Multiply="*", Add="+", Subtract="-", Divide="/"}
Macro {description="Use numpad keys in command line"; 
  area="Shell ShellAutoCompletion Search"; key="Multiply Add Subtract Divide"; 
  condition=function() return not CmdLine.Empty or Area.Search end; 
  action = function() Keys(Numpad[akey(1)]) end;
}
User avatar
John Doe
Бюрократ
Posts: 12872
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 293 times

Улучшение макросов из поставки фара

Post by John Doe »

Замена для Panel.JumpToSelectedFile.lua
(обсуждение тут)

Smitis
Posts: 1626
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 20 times
Been thanked: 41 times

Re: Улучшение макросов из поставки фара

Post by Smitis »

Давно хочу спросить, а чем вызвано такое странное форматирование макросов (даже не знаю, как его назвать)?
Разум когда-нибудь победит.
User avatar
John Doe
Бюрократ
Posts: 12872
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 293 times

Re: Улучшение макросов из поставки фара

Post by John Doe »

Очевидно стремлением автора избежать "лишних" отступов.
Smitis
Posts: 1626
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 20 times
Been thanked: 41 times

Re: Улучшение макросов из поставки фара

Post by Smitis »

John Doe wrote:Очевидно стремлением автора избежать "лишних" отступов.
Чем же они лишние?
Разум когда-нибудь победит.
User avatar
den po
Posts: 59
Joined: Tue 30 Aug, 2005 07:53
Location: Чувашия, г.Чебоксары
Has thanked: 2 times
Contact:

Re: Улучшение макросов из поставки фара

Post by den po »

shmuel 14.07.2013 00:25:05 +0200 - build 3518

1. Макросы: флаги "Selection" и "NoSelection" больше не применяются для областей редактора/вьювера/диалога.
Для этих областей следует использовать соответственно "EVSelection" и "NoEVSelection".
а тем временем с фаром до сих пор идут CtrlDel.lua и WindowsGUI.lua, в которых используется старый вариант flags="Selection"
JUST_DAn_PO
Shmuel
Posts: 6167
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 330 times

Re: Улучшение макросов из поставки фара

Post by Shmuel »

den po wrote:а тем временем с фаром до сих пор идут CtrlDel.lua и WindowsGUI.lua, в которых используется старый вариант flags="Selection"
Большое спасибо за репорт. Исправлено.
Post Reply

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