zg 30.09.2012 03:26:20 +0200 - build 2851
1. слияние с проектом Spring (https://github.com/shmuz/Spring).
в связи с этим вместо встроенного макроязыка используется скриптовый язык Lua 5.1 (https://www.lua.org).
после перехода на Lua: macroapi_manual.ru.chm.
(Мануал весьма лаконичен, вместо описания функции старого макроязыка приведены ссылки на устаревший раздел
спасибо. вот не догадался заключить аргументы в кавычки, хотя в хелпе все написано. А все таки к командной строке можно получить доступ из скрипта вызываемого c помощью @? или чтобы получить доступ к командной строке надо писать обработчик собственного префикса?
Last edited by gotar on Mon 06 Jan, 2025 12:37, edited 3 times in total.
Еще один вопрос. Мне нужно ввести значение переменной с клавиатуры. Можно ли это сделать простым способом не формируя сложных диалогов виде таблицы Lua, а просто вызвав функцию. Для вывода данных есть подобная функция far.Show, может быть есть подобная функция и для ввода.
gotar wrote: Thu 09 Jan, 2025 20:57
Кто нибудь может подсказать почему {("abcdef"):match("(abc)?(def)")} возвращает пустую таблицу вместо массива из двух элементов "abc" и "def"?
Lua patterns — это не регэкспы, они не поддерживают группы:
20.2 – Patterns wrote:Unlike some other systems, in Lua a modifier can only be applied to a character class; there is no way to group patterns under a modifier. For instance, there is no pattern that matches an optional word (unless the word has only one letter).
я спросил у ИИ: как переписать регулярное выражение ^([^:/]*://)?([^?#:/]*) используя lua pattern Он мне ответил:
Перевод в Lua pattern:
Lua patterns немного отличаются от PCRE (Perl Compatible Regular Expressions),
которые часто используются в других языках. Вот как мы можем переписать это
выражение в Lua:
просмотрел каждую функцию из luafar_manual.chm. ничего подходящего не увидел. их там много, мог зевнуть, но руководство смотрел. На форуме тоже пробовал искать, И даже в Far Faq заглянул.