MacroLib — Far Macro Library

Здесь можно обсудить ваш любимый плагин.
Post Reply
Max Rusov
Posts: 3600
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Been thanked: 7 times

MacroLib — Far Macro Library

Post by Max Rusov » Mon 20 Dec, 2010 12:47

Тема для обсуждения плагина MacroLib — Far Macro Library
Анонс

Описание формата макрофайла:
http://code.google.com/p/far-plugins/wiki/FML

Репозиторий FML макросов:
http://code.google.com/p/far-macro-library/




Yegor
Posts: 865
Joined: Mon 04 Apr, 2005 13:41
Location: San Ramon, CA (Kharkov, UA)
Has thanked: 3 times
Been thanked: 7 times

MacroLib — Far Macro Library

Post by Yegor » Tue 21 Dec, 2010 16:45

Macro File 0.3 — запуск макросов из файла (proof of concept)

Небольшой плагин на «попробовать». Запускает макросы, прочитанные из файла.
Ищутся файлы по маске *.macro и *.mac в подкаталоге Macro каталога плагина и его подкаталогах. В реестр ничего не пишется. Маску файлов можно менять в реестере (см. macrofile.reg).
Макро файлы загружаются только раз, если поменяли файл(ы), то AltShiftF9 -> Macro File -> Reload Macros.

Формат файла (test.mac есть в комплекте):

Code: Select all

// An example of macro
$Macro Description="The description goes here..." // Description, Name or Desc
  Area="Shell"            // Area or Areas
  Key="AltF5"             // Key, Keys, Hotkey or Hotkeys
  DisableOutput="No"      // if "1", "Yes", "True" the result is True, otherwise it is False, default is True
  NoSendKeysToPlugins="0" // or SendKeysToPlugins="1"
{{
  // this is a line comment
  CtrlO /* print("no print. it's commented out"); */
}}

$Macro Name="The description goes here..."
  Areas="Editor Viewer"
  HotKey="CtrlF"
  SendKeysToPlugins="1"
{{
  F7
}}

$Macro Name="The description goes here..."
  Area="Common"
  HotKey="CtrlAlt1"
  SendKeysToPlugins="1"
  File="C:\\content.macro"
{{
  ;; body will be ignored due to File parameter
  ;; "C:\content.macro" will be loaded each time you press the hotkey
}}

Нужен FAR Manager v2.0 (x86) build 1765 or higher
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин

User avatar
HaRT
Moderator
Posts: 8108
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 67 times
Been thanked: 103 times

Re: Macro File – запуск макросов из файла (proof of concept)

Post by HaRT » Tue 21 Dec, 2010 17:03

Yegor wrote:Ищутся файлы по маске *.macro в каталоге плагина.
Предлагаю (как и прежде) расширение FMM (от FAR Manager Macro) — и не занято, и коротко, и не слишком общо.
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
NightRoman
Posts: 5872
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 9 times
Contact:

Re: Macro File – запуск макросов из файла (proof of concept)

Post by NightRoman » Tue 21 Dec, 2010 18:11

Предлагаю оставить расширение .macro

HaRT
Чем оно занято?

User avatar
NightRoman
Posts: 5872
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 9 times
Contact:

Re: Macro File – запуск макросов из файла (proof of concept)

Post by NightRoman » Tue 21 Dec, 2010 18:30

HaRT
Из обсуждений и по фактам знаю трех, что предпочел расширение macro, а не fmm:
sonar, Kildor, Yegor

Себя отношу к воздержавшимся, но в своем плагине фактически выбрал macro, то есть я четвертый.

Ты в меньшинстве, это просто факт. Нужны хорошие аргументы за fmm или больше сторонников этого расширения.

Max Rusov
Posts: 3600
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Been thanked: 7 times

Re: Macro File – запуск макросов из файла (proof of concept)

Post by Max Rusov » Tue 21 Dec, 2010 18:38

Yegor

А как ты обрабатываешь клавиши, если не секрет?

User avatar
zg
zero-gravity
Posts: 5302
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 47 times
Contact:

Re: Macro File – запуск макросов из файла (proof of concept)

Post by zg » Tue 21 Dec, 2010 18:47

Max Rusov wrote:А как ты обрабатываешь клавиши, если не секрет?
патчит ReadConsoleInputW в таблице импорта far.exe.

User avatar
John Doe
Бюрократ
Posts: 11387
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 16 times
Been thanked: 100 times

Re: Macro File – запуск макросов из файла (proof of concept)

Post by John Doe » Tue 21 Dec, 2010 18:58

NightRoman wrote:Нужны хорошие аргументы за fmm или больше сторонников этого расширения.
Обратите внимание на предложенный формат макрофайла.
До сих пор и я тоже использовал расширение .macro, но абсолютно для других макрофайлов: с единственным макросом, который можно выполнить по Enter.
А тут мы имеем дело скорее с "библиотекой макросов с привязкой к клавишам", поэтому вполне резонно применить другое расширение.

P.S.
Не факт что формат идеален.

User avatar
NightRoman
Posts: 5872
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 9 times
Contact:

Re: Macro File — запуск макросов из файла (proof of concept)

Post by NightRoman » Tue 21 Dec, 2010 19:04

John Doe
Да, это аргумент. Я уже тоже смотрю, что это не совсем обычный макро файл. С другой стороны, если хорошо приживется, то лучше уж подкрутить colorer нормально понимать такие файлы (сейчас не совсем, да и рано пока об этом) и все равно пользовать единое расширение.

Но fmm тогда еще более неудачное расширение, ибо это относится к плагину, а по названию как бы напрашивается в фичу Фара.

User avatar
John Doe
Бюрократ
Posts: 11387
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 16 times
Been thanked: 100 times

Re: Macro File — запуск макросов из файла (proof of concept)

Post by John Doe » Tue 21 Dec, 2010 19:11

Зачем единое расширение, если назначение разное?
Когда в файле 1 макрос, то его можно ВЫПОЛНИТЬ, например с помощью macro:post <имяфайла.
Если же в файле несколько макросов, привязанных к клавишам, то выполнить такой файл никак нельзя. Зато можно ИМПОРТИРОВАТЬ.

А расширение можно сделать производным от Far Macro Library.

User avatar
NightRoman
Posts: 5872
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 9 times
Contact:

Re: Macro File — запуск макросов из файла (proof of concept)

Post by NightRoman » Tue 21 Dec, 2010 19:19

Зачем единое расширение, если назначение разное?
Согласен, да. Тогда нужно что-то отличное от того, что вообще считается обычным макрофайлом. Согласно colorer, это

Code: Select all

    <filename>/\.macro$/i</filename>
    <filename>/\.mcr$/i</filename>
    <filename>/\.fmm$/i</filename>
    <filename>/^Sequence$/</filename>
    <filename>/^\%\%\w+$/</filename>
Но тогда colorer не будет это понимать вообще (сейчас частично) и нужна будет новая схема, а пока и так с грехом пополам colorer работает.

User avatar
John Doe
Бюрократ
Posts: 11387
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 16 times
Been thanked: 100 times

Re: Macro File — запуск макросов из файла (proof of concept)

Post by John Doe » Tue 21 Dec, 2010 19:24

В чём именно вы видите проблему?
Схема для колорера при этом может быть одна и та же.

Kildor
Posts: 1515
Joined: Wed 16 Mar, 2005 06:26
Location: Новосибирск
Contact:

Re: Macro File — запуск макросов из файла (proof of concept)

Post by Kildor » Tue 21 Dec, 2010 19:29

Вещь крайне интересная, я завтра её пощупаю и обязательно скажу своё мнение и пожелания.

Сразу, по поводу комментариев, можно их переделать в де-факто стандарт ;;? (плагин selmacro).
По поводу расширения, аргументация о том, что «.macro — один макрос в голом виде, а тут макросов несколько» — меня на первый взгляд устраивает, но нужно подумать ещё.
Ты мне не выкай!
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.

xmpp:kildor@jabber.ru

User avatar
NightRoman
Posts: 5872
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 9 times
Contact:

Re: Macro File — запуск макросов из файла (proof of concept)

Post by NightRoman » Tue 21 Dec, 2010 19:31

John Doe wrote:Схема для колорера при этом может быть одна и та же.
В чём именно вы видите проблему?
Проблема - это сильно сказано. Но:
1) скажем, предложенный FML не зарегистрирован, уже надо приседать дополнительно или вообще не будет колорера в этом файле
2) если регистрировать, то это противоречит твоему же здравому зачем объединять в одно разные вещи, если же их считать-таки не разными, а модифицированными, то и одно уже принятое расширение тогда лучше, чем новое

User avatar
John Doe
Бюрократ
Posts: 11387
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 16 times
Been thanked: 100 times

Macro File — запуск макросов из файла (proof of concept)

Post by John Doe » Tue 21 Dec, 2010 19:37

NightRoman wrote:2) если регистрировать, то это противоречит твоему же здравому зачем объединять в одно разные вещи
В колорере так очень многое объединено, по ряду причин.
В последствии разделить элементарно, но подождём вначале пока сам формат "FML" устаканится.
NightRoman wrote:1) скажем, предложенный FML не зарегистрирован, уже надо приседать дополнительно или вообще не будет колорера в этом файле
Неужто лень один раз присесть?

Max Rusov
Posts: 3600
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Been thanked: 7 times

Re: Macro File — запуск макросов из файла (proof of concept)

Post by Max Rusov » Tue 21 Dec, 2010 19:40

По моему расширение - это не принципиально. Гораздо важнее формат файла. Сейчас, очевидно, не хватает:

1. Имени/описания макросов (не комментариев, а именно имен, которые бы были частью синтаксиса)
2. Условий срабатывания, кроме макро-области.

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

Post Reply

Return to “Обсуждение плагинов”