Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Far Manager (часть 3)

Модерирует : gyra, Maz

articlebot (06-10-2016 09:08): Far Manager  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

Angel_Ka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
-- include "%FARHOME%\fmlMacros\Consts.fmi"
 
-- у меню выбора lua-макросов (= Исполнить макрос = или = Execute a macro =) GUIDmenu={00000000-0000-0000-0000-000000000000}
-- и у меню выбора ассоциации (= Выберите ассоциацию = или = Select association =) тоже
 
Macro Area="Menu"
Key="CtrlF12"
Description="Запускает определённую верхнюю позицию в меню выбора lua-макросов (= Исполнить макрос = или = Execute a macro =)"
{{
  if  (mf.substr(Object.Title,0,19)=="Критерий сортировки") or (mf.substr(Object.Title,0,7)=="Sort by") then -- объект?
      Keys("F10") mf.usermenu(3,"1 CtF 3-12 режимыСортировки()she.ini") Keys"Down Down Down Down Down Down Down Down Down Down"
  end
 
  if  (mf.substr(Object.Title,0,10)=="Меню файла") or (mf.substr(Object.Title,0,10)=="Меню папки") or (mf.substr(Object.Title,0,9)=="File Menu") or (mf.substr(Object.Title,0,11)=="Folder Menu") then
    Keys("Esc AKey")
  else
    if  (mf.substr(Object.Title,0,16)=="Исполнить макрос") or (mf.substr(Object.Title,0,15)=="Execute a macro") then
       Keys("Home")
        k=mf.akey(1)
      if (mf.substr(Menu.Value,0,k:len())==k) or (mf.substr(Menu.Value,-k:len(),k:len())==k) then -- если ТОЛЬКО тот же шорткат (k:len() - длина шортката в символах, здесь от 5 до 15)
             Keys("Enter")
      else
        Keys("AKey") -- eval(mf.key(#AKey)) -- Key(#AKey)
      end
    end
  end
}}
 
Macro Area="Menu"
---Key="Multiply Add Subtract Divide * + - //"         -- Key="* + - //"
Key="/F\d/ /F1\d/"                                             -- Key="F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12"
Key="CtrlN AltF1 AltF2 AltF5 AltF6 AltF8 AltF9 /AltF1\d/ Ctrl` RAlt" -- Key="CtrlN AltF1 AltF2 AltF5 AltF6 AltF8 AltF9 AltF10 AltF11 AltF12 Ctrl` RAlt"
-- AltF4 опущен, поскольку нативно передаёт макрос на редактирование
Key="CtrlF1 CtrlF2 CtrlF3 CtrlF4 CtrlF5 CtrlF6 CtrlF7 CtrlF8 CtrlF9 CtrlF10 CtrlF11 CtrlLeft RCtrlLeft CtrlRight RCtrlRight"
-- Key="/CtrlF\d/ /CtrlF1\d/"                 -- Key="CtrlF1 CtrlF2 CtrlF3 CtrlF4 CtrlF5 CtrlF6 CtrlF7 CtrlF8 CtrlF9 CtrlF10 CtrlF11 CtrlF12"
Key="/ShiftF\d/ /ShiftF1\d/"               -- Key="ShiftF1 ShiftF2 ShiftF3 ShiftF4 ShiftF5 ShiftF6 ShiftF7 ShiftF8 ShiftF9 ShiftF10 ShiftF11 ShiftF12"
Key="/CtrlAltF\d/ /CtrlAltF1\d/ CtrlAlt= CtrlAltR"  -- Key="CtrlAltF1 CtrlAltF2 CtrlAltF3 CtrlAltF4 CtrlAltF5 CtrlAltF6 CtrlAltF7 CtrlAltF8 CtrlAltF9 CtrlAltF10 CtrlAltF11 CtrlAltF12"
Key="/AltShiftF\d/ /AltShiftF1\d/ ScrollLock AltShiftIns"         -- Key="ScrollLock AltShiftIns AltShiftF1 AltShiftF2 AltShiftF3 AltShiftF4 AltShiftF5 AltShiftF6 AltShiftF7 AltShiftF8 AltShiftF9 AltShiftF10 AltShiftF11 AltShiftF12"
Key="/CtrlShiftF\d/ /CtrlShiftF1\d/"       -- Key="CtrlShiftF1 CtrlShiftF2 CtrlShiftF3 CtrlShiftF4 CtrlShiftF5 CtrlShiftF6 CtrlShiftF7 CtrlShiftF8 CtrlShiftF9 CtrlShiftF10 CtrlShiftF11 CtrlShiftF12"
Key="/CtrlAltShiftF\d/ /CtrlAltShiftF1\d/" -- Key="CtrlAltShiftF1 CtrlAltShiftF2 CtrlAltShiftF3 CtrlAltShiftF4 CtrlAltShiftF5 CtrlAltShiftF6 CtrlAltShiftF7 CtrlAltShiftF8 CtrlAltShiftF9 CtrlAltShiftF10 CtrlAltShiftF11 CtrlAltShiftF12"
Key="CtrlAltShiftUp CtrlAltShiftDown CtrlAltShiftHome CtrlAltShiftEnd"
Description="Запускает определённую верхнюю позицию в меню выбора lua-макросов (= Исполнить макрос = или = Execute a macro =)"
{{
  if  (mf.substr(Object.Title,0,10)=="Меню файла") or (mf.substr(Object.Title,0,10)=="Меню папки") or (mf.substr(Object.Title,0,9)=="File Menu") or (mf.substr(Object.Title,0,11)=="Folder Menu") then
    Keys("Esc AKey")
  else
    if  (mf.substr(Object.Title,0,16)=="Исполнить макрос") or (mf.substr(Object.Title,0,15)=="Execute a macro") then
       Keys("Home")
        k=mf.akey(1)
      if (mf.substr(Menu.Value,0,k:len())==k) or (mf.substr(Menu.Value,-k:len(),k:len())==k) then -- если ТОЛЬКО тот же шорткат (k:len() - длина шортката в символах, здесь от 5 до 15)
             Keys("Enter")
      else
        Keys("AKey") -- eval(mf.key(#AKey)) -- Key(#AKey)
      end
    end
  end
}}
 
 
Macro Area="Menu" Key="AltF3"
Descr="В соответствующем меню нажатие AltF3 вызывает соответствующую команду"
--Descr="В контекстном меню = File Menu = нажатие AltF3 передаёт файл на ассоциацию в ФАРе"
-- Descr="В вызываемом по AltF3 меню = Выберите ассоциацию = повторное нажатие AltF3 вызывает последний пункт меню: 'edit:< WMIInfo.cmd !\!.!'"
-- см. http://forum.farmanager.com/viewtopic.php?p=69926#p69926
{{
  -- $if (substr(Title,0,9)=="File Menu") Esc eval(Key(#AKey)) $Else eval(Key(#AKey)) $end
  if  mf.substr(Object.Title,0,10)=="Меню файла" or mf.substr(Object.Title,0,16)=="Исполнить макрос" or mf.substr(Object.Title,0,9)=="File Menu" or (mf.substr(Object.Title,0,15)=="Execute a macro") then
    Keys("Esc AltF3") -- eval(mf.key(#AKey))
  else
      if  (mf.substr(Object.Title,0,19)=="Выберите ассоциацию") or (mf.substr(Object.Title,0,18)=="Select association") then
        Keys("End")
        k=mf.akey(1,1)
        if (mf.substr(Menu.Value,0,k:len())==k) then -- если ТОЛЬКО тот же шорткат (k:len() - длина шортката в символах, здесь 5)
          Keys("Enter")
        end
      else
        Keys("Akey") -- eval(mf.key(#AKey)) -- Key(#AKey)
      end
    -- Key=("AltF3") -- eval(mf.key(#AKey))
  end
}}
 
-- НЕЛЬЗЯ СДЕЛАТЬ: Macro Area="Menu" Key="AltF4"
-- ПОСКОЛЬКУ ШОРТКАТ AltF4 В ЛЮБОМ МЕНЮ (И ВЫБОР АССОЦИАЦИИ ЭТО ТОЖЕ МЕНЮ) ПЕРЕВОДИТ ОБЪЕКТ В РЕДАКТОР...
-- ПОЭТОМУ В ДАННОМ СЛУЧАЕ ИСПОЛЬЗУЕТСЯ не Alt-F4, а Alt-4
Macro Area="Menu" Key="Alt4"
Descr="В соответствующем меню нажатие Alt4 вызывает соответствующую команду"
--Descr="В контекстном меню = File Menu = нажатие Alt4 передаёт файл на ассоциацию в ФАРе"
-- Descr="В вызываемом по AltF4 меню = Выберите ассоциацию = нажатие Alt4 вызывает последний пункт меню: 'edit:< WMIInfo.cmd !\!.!'"
-- см. http://forum.farmanager.com/viewtopic.php?p=69926#p69926
{{
  -- $if (substr(Title,0,9)=="File Menu") Esc eval(Key(#AKey)) $Else eval(Key(#AKey)) $end
  if  mf.substr(Object.Title,0,10)=="Меню файла" or mf.substr(Object.Title,0,16)=="Исполнить макрос" or mf.substr(Object.Title,0,9)=="File Menu" or (mf.substr(Object.Title,0,15)=="Execute a macro") then
    Keys("Esc AltF4") -- eval(mf.key(#AKey))
  else
      if  (mf.substr(Object.Title,0,19)=="Выберите ассоциацию") or (mf.substr(Object.Title,0,18)=="Select association") then
        Keys("End")
        k=mf.akey(1,1)
        if (mf.substr(Menu.Value,0,k:len())==k) then -- если ТОЛЬКО тот же шорткат (k:len() - длина шортката в символах, здесь 4)
          Keys("Enter")
        end
      else
        Keys("Akey") -- eval(mf.key(#AKey)) -- Key(#AKey)
      end
    -- Key=("AltF3") -- eval(mf.key(#AKey))
  end
}}
 
Macro Area="Menu" Key="AltF7"
Descr="В меню выбора макроса поиска файла повторное нажатие того же шортката вызывает соответствующую команду"
{{
  mf.mmode(3,1) if  (mf.substr(Object.Title,0,16)=="Исполнить макрос") or (mf.substr(Object.Title,0,15)=="Execute a macro") then
    Keys("Home")
      k=mf.akey(1,1)
      if (mf.substr(Menu.Value,0,k:len())==k) then -- если ТОЛЬКО тот же шорткат (k:len() - длина шортката в символах, здесь 5)
        Keys("Enter")
      end
  else
    Keys("AKey") -- eval(mf.key(#AKey)) -- Key(#AKey)
  end
}}

Всего записей: 585 | Зарегистр. 20-05-2007 | Отправлено: 15:26 08-11-2014 | Исправлено: Angel_Ka, 21:12 08-11-2014
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » Far Manager (часть 3)
articlebot (06-10-2016 09:08): Far Manager


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru