Latest post of the previous page:
zg, кросава!!!!!deleted: А где лежит имя-файла запускаемого макро? (вопрос отпал)
Я же писал: троеточие должно быть ВНЕ функции. Потому что внутри - это относится к аргументам вызова именно этой функции.
Code: Select all
local Cmd = {}
local Idx = 1
for line in Conf:lines() do
if regex.match(line,'^(F|C)') then
for w1,w2,w3 in regex.gmatch(line, '^(F|C)\\s*,\\s*"\\s*([^"]+?)\\s*"\\s*,\\s*"\\s*([^"]+?)\\s*"\\s*$') do
Cmd[Idx] = {w1,w2,w3}
end
Idx = Idx + 1
end
end
Не не не ... То, что я смогу написать на Perl 5 за 5 мин, на Lua я потрачу день. Я уже был столкнулся с работой с регэкспами на Lua. По сравнению с Перловкой - это просто кровище из глаз!buniak_a_h wrote: ↑Sat 11 Apr, 2020 08:03a) Для "обработчиков текста" - может, вообще имело бы смысл написать его на макро? Чтоб не париться с временным файлом?
Пока нужен просто запуск без открытия консольного окна и чтение STDOUT запускаемого процесса. Я об этом чуть выше написал. Может быть потом парсинг STDOUT прикручу - но пока нужно просто добить макро "в базовой комплектации" ))buniak_a_h wrote: ↑Sat 11 Apr, 2020 08:03б) Для компилятора: есть у меня скрипт, запускающий компилятор с языка Харбор (наследник Clipper-а). Скрипт при наличии ошибок открывает новый редактор внизу экрана и вешает наEnter
переход в основной редактор на соответствующую ошибке строку. На самом деле скриптом пользовался довольно интенсивно года три (это я к тому, что тяжёлых ошибок там уже нет, и он удобен). Видимо, для адаптации к Вашим условиям надо будет подправить пути к компилятору, команды вызова (у меня их две - для компиляции с отладкой и без) и шаблон парсинга строки с описанием ошибки. Если Ваш компилятор возвращает ErrorLevel, то это будет просто замечательно.Надо?(для примера
Существуют интересные проекты по переводу с других языков в Луа,
Может, Вы не заметили… В LuaFAR-е две библиотеки работы с регэкспами: в стиле lua (escape-символ - "%") и в стале Perl (escape-символ - "\"). Перловский доступен из библиотеки regex.
Сенкс, все работает норм, за исключением перехвата STDERR. Хотя изначально я про это и забыл.
Нет, это я в самом начале своего скрипта уже начал пользовать - regex. Просто самое использование регэкспов в Перле и Lua - две громаднейшие разницы.buniak_a_h wrote: ↑Sat 18 Apr, 2020 16:24 Может, Вы не заметили… В LuaFAR-е две библиотеки работы с регэкспами: в стиле lua (escape-символ - "%") и в стале Perl (escape-символ - "\"). Перловский доступен из библиотеки regex.
Code: Select all
File:write(string.char(239,187,191))