Сделать Macro глобальной функцией

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

Re: Сделать Macro глобальной функцией

Post by John Doe »

Latest post of the previous page:

Был не прав, всё работает.
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

Re: Сделать Macro глобальной функцией

Post by John Doe »

А вот и не всё так просто...
Теперь на другой машине пытаюсь настроить.

Проверяю так.
  1. Запускаю lm:post Macro()
    Получаю ошибку
  2. Добавляю глобальные функции в utils.lua, перегружаю фар, и запускаю снова
    Ошибок не выдаёт, макрос добавляется.
  3. В папке scripts cоздаю g.lua, куда копирую из utils.lua те самые 4 строки, перегружаю фар, снова запускаю тест
    Снова получаю ошибку.
    При этом не важно содержатся ли эти строки в utils.lua, или нет, всё равно ошибка
Shmuel
Posts: 6819
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

Re: Сделать Macro глобальной функцией

Post by Shmuel »

Сделайте, пожалуйста, чистый эксперимент.
1. Перестаньте играться с utils.lua, поставьте оригинальную версию из дистрибутива.
2. В папку scripts положите файл с расширением .lua, с единственной строчкой: _G.Macro=Macro
3. Перезагрузите Фар
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

Re: Сделать Macro глобальной функцией

Post by John Doe »

Это помогло, спасибо
В первом сообщении темы какая-то ошибка, если копирую 4 строки оттуда - не работает.
Shmuel
Posts: 6819
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

Re: Сделать Macro глобальной функцией

Post by Shmuel »

В первом сообщении сказано, куда надо копировать эти строчки. :)
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

Re: Сделать Macro глобальной функцией

Post by John Doe »

:facepalm:
gotar
Posts: 412
Joined: Sun 06 Sep, 2009 12:34
Has thanked: 17 times
Been thanked: 3 times

Re: Сделать Macro глобальной функцией

Post by gotar »

Я тут обнаружил что реализация NoMacro через DummyFunc макросы не удаляет -:). Как написать DelМacro, чтобы оно удаляло одно макро и не удаляло другие, ну из за одно можно ли сделать так чтобы AddMacro возвращало индекс/ссылку в таблице макросов (чтобы знать что у потом удалять)?
Last edited by gotar on Thu 21 Feb, 2013 11:04, edited 1 time in total.
Shmuel
Posts: 6819
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

Re: Сделать Macro глобальной функцией

Post by Shmuel »

gotar wrote:Я тут обнаружил что реализация NoMacro через DummyFunc макросы не удаляет
NoMacro удаляет макрос, если выполнить lm:load или аналогичное действие.
Прочая функциональность, о которой вы упоминаете, есть в планах.
gotar
Posts: 412
Joined: Sun 06 Sep, 2009 12:34
Has thanked: 17 times
Been thanked: 3 times

Re: Сделать Macro глобальной функцией

Post by gotar »

lm:load удалит макросы, загруженные не из Macro/scripts
gotar
Posts: 412
Joined: Sun 06 Sep, 2009 12:34
Has thanked: 17 times
Been thanked: 3 times

Re: Сделать Macro глобальной функцией

Post by gotar »

Простейшая реализация могла бы заключаться в замене значение поля action на функцию, сообщающую фару, что нужно стандартно обработать клавишу.( или вызвать другие макросы, связанные с этой клавишей).
Shmuel
Posts: 6819
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

Re: Сделать Macro глобальной функцией

Post by Shmuel »

Функциональность, которая не заявлена, не поддерживается. За советы, как что реализовать - спасибо, но с этим проблем вроде нет.
Post Reply

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