Page 24 of 31

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Tue 26 Mar, 2013 09:38
by Wave

Latest post of the previous page:

Эх, меня больше всего достаёт, что есть пункты меню -- картинка -- Их у меня три штуки и тупо по позициям запоминаю, где который.

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Tue 16 Apr, 2013 16:29
by John Doe
Актуализированная версия стандартных макросов.

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Tue 16 Apr, 2013 20:30
by John Doe
Это просто перевод штатного макроса на "новые рельсы", без каких-либо изменений.
А изменения требуются, я вижу как минимум 2.

1. Запрет вызова на плагиновых панелях
2. Команда "paste" должна выполняться не над выделенными объектами, а в текущую панель.

1 и 2 надо протестировать с Сетью и Деревом.

Кто возьмётся доделать?

P.S.
CtrlAltEnter вообще-то занимать не стоит, потому как на этой клавише сейчас важное действие.
Рекомендую CtrlShiftA

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Wed 17 Apr, 2013 10:40
by HaRT
John Doe wrote:1. Запрет вызова на плагиновых панелях
Это слишком сильное ограничение.
Надо разрешать вызов меню даже для плагиновых панелях, если они показывают реальные файлы. Да, я знаю, что плагин отказывается работать на файлах из разных директорий (или в ФАР3 это уже не так?), но это недоработка в самом плагине, т.к. Проводник отлично показывает меню для многих файлов из разных директорий в результатах поиска.

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Wed 17 Apr, 2013 11:08
by John Doe
HaRT wrote:Надо разрешать вызов меню даже для плагиновых панелях, если они показывают реальные файлы.
Разумеется.

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Fri 19 Apr, 2013 10:38
by John Doe
Сейчас все команды даются посредством меню.
Несколько вложенных меню очевидно не рассчитаны на ручной вызов.
Но ведь и для макросов уже есть намного более правильное средство - Plugin.Call

Предлагается такой формат вызова Plugin.Call:

Code: Select all

Plugin.Call(<guid>[,action[, name], [files], [options]])

 Все параметры опциональны, т.е. могут быть "" или nil

 action: "txt"|"gui"|"cmd"|"item"
 name: имя команды (verb) или пункта меню - только для action ="cmd"|"item"
 files: список файлов
 options: опции, те же что в настройках плагина (пока не привожу), плюс здесь же указывается область действия команды (панель или MyComputer)

 Лучше если options будет не набором флагов, а для каждой настройки свой параметр-строка. Порядок перечисления не важен.

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Fri 19 Apr, 2013 10:51
by Wave
У меня в пользовательском меню есть несколько пунктов: repository update, repository commit, repository log, repository browser. А в системе установлены tortoisesvn, tortoisegit, tortoisehg. Так вот, эти пункты — макросы примерно такого поведения:

находим третий пункт меню -- картинка --, жмём энтер
если в нём есть пункт Shows the log…, жмём
если нет, выходим уровнем выше, находим первый пункт меню -- картинка --, жмём энтер
если там есть пункт Shows the log…, жмём
если нет, выходим, находим второй пункт меню -- картинка --, жмём его
находим Repository status changes и жмём
если же и такого нет, то дважды жмём эскейп.

Чё-та мне кажется, что Plugin.Call эту схему не реализует. Хотя у меня конечно извращённый случай и вообще, работающий механизм никуда не делся.
Ну и в очередной раз подниму вопрос по поводу пунктов меню -- картинка --

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Fri 19 Apr, 2013 10:58
by John Doe
У многих команд есть свой verb

Code: Select all

┌ Additional information in text menu ───┐
│ ( ) None                               │
│ ( ) Show helptext                      │
│ (•) Show commands                      │
│ [ ] Hide if the same                   │
└────────────────────────────────────────┘

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Fri 19 Apr, 2013 13:08
by Wave
от картинок это не спасает.

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Wed 22 May, 2013 10:09
by John Doe
С некоторых пор в меню дисков по правому клику (или по Apps) запускается eMenu.
(В списке плагинов по F11 его при этом нет, стоит добавить)

Plugin.Menu кстати тоже срабатывает: lm:post Keys'AltF1' Plugin.Menu("742910F1-02ED-4542-851F-DEE37C2E13B2")
Так что надо будет добавить в макросы ('окольными' путями и раньше можно было).

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Wed 10 Jul, 2013 09:19
by pp
Привет!
Is it possible to use rclk_cmd for commands which are in a "submenu"?




rclk_cmd:tsvn_update works ok, but for rclk_cmd:tsvn_log I'm getting "Can't invoke menu command." :(

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Wed 10 Jul, 2013 12:02
by 2useven10
  1. Macro {
  2.  
  3.   area="Shell"; key="CtrlShiftL"; flags="NoPluginPanels"; description="svn showchanges";
  4.  
  5.   action = function()
  6.  
  7.     local emenu = '742910F1-02ED-4542-851F-DEE37C2E13B2'
  8.  
  9.     if APanel.Current == '.svn' then Keys('Home') end
  10.  
  11.     Plugin.Command(emenu,'rclk_cmd:tsvn_log')
  12.  
  13.   end;
  14.  
  15. }
works for me...

BTW: Far.DisableHistory(0) -- enables all history

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Wed 10 Jul, 2013 14:35
by pp
Unfortunately I'm getting the same error :( Your macro works fine with rclk_cmd:tsvn_update or rclk_cmd:tsvn_commit, but not with anything from the sub-menu.

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Wed 10 Jul, 2013 14:43
by Shmuel
I don't use EMenu, so can't help much.
But you can tell Tortoise SVN (via its "Settings") to place "SVN Show Log" in the top-level menu instead of a submenu.

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Wed 10 Jul, 2013 15:38
by 2useven10
Unfortunately I'm getting the same error :( Your macro works fine with rclk_cmd:tsvn_update or rclk_cmd:tsvn_commit, but not with anything from the sub-menu.
You are right. I forgot, I've moved log to the upper level menu in the tortoise menu settings...

Re: EMenu: Explorer Context Menu — Контекстное меню Проводни

Posted: Mon 15 Jul, 2013 13:05
by pp
Shmuel, 2useven10: Thanks for the hint, I was not aware about this option in tortoise menu settings.