Page 7 of 14
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Tue 16 Jun, 2015 12:36
by John Doe
Luacheck это статический анализатор для
Lua.
Luacheck может обнаруживать разнообразные проблемы, такие как использование неопределённых глобальных переменных, неиспользованные переменные и значения, доступ к неинициализированным переменным, недостижимый код и
многое другое.
А для удобной работы с
luacheck в фаре предлагаю данный пакет скриптов, обеспечивающий работу
Luacheck в редакторе и в командной строке.
Кроме того, в редакторе для
Luacheck обеспечивается прозрачная "трансляция"
MoonScript, что позволяет анализировать и
*.moon-файлы.
Инструкции по установке, настройке, и работе — во встроенной справке.
Требования:
- FAR 3 не старше b5106
- luacheck не ниже v0.19
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Tue 22 May, 2018 15:18
by John Doe
Latest post of the previous page:
HaRT wrote: ↑Tue 22 May, 2018 15:05
Тогда это очень ценный побочный эффект
Посмотрел, всё-таки не побочный эффект.
В разделе @EditorMore сказано
...чтобы синхронизировать позицию редактора с текущим предупреждением можно
воспользоваться #Ctrl-Enter#...
А в коде к этому добавлены ещё и клавиши CtrlPgDn CtrlNum3 Ctrl3
HaRT wrote: ↑Tue 22 May, 2018 15:05
в плане вызова из редактора ничего не изменилось — ни из списка предупреждений, ни из окна об их отсутствии.
Ну тогда пробуйте luacheck_editor.lua
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Tue 22 May, 2018 17:14
by HaRT
John Doe wrote: ↑Tue 22 May, 2018 15:18
А в коде к этому добавлены ещё и клавиши CtrlPgDn CtrlNum3 Ctrl3
Я за то, что бы включить их и в справку. Хотя лично мне было бы удобнее, чтобы CtrlPgDn был указан непосредственно рядом с CtrlPgUp. Но вам как автору решать.
John Doe wrote: ↑Tue 22 May, 2018 15:18
Ну тогда пробуйте luacheck_editor.lua
Я только сейчас догадался поискать конфликты с другими скриптами — и вуаля: если кроме скриптов LuaCheck оставить только
BufferScroll.lua и BufferScroll.ru.hlf (0.6.1), то проблемы с открытием Справки
воспроизводятся; если BufferScroll.ru.hlf убрать, то оба случая чинятся. Очевидно, в обоих случаях происходит попытка открыть тот файл (в нём и впрямь нет секции
@Editor
).
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Wed 23 May, 2018 07:28
by John Doe
Определённо у меня оба скрипта присутствуют, без всяких проблем.
Завтра ещё раз в код гляну.
Update
Да, проблема с ошибочным выбором файла справки возможна, в случае если в одной папке с Luacheck находятся другие файлы справки (от BufferScroll, или что угодно).
Т.е. для корректной работы справки пакет необходимо разместить в отдельной папке.
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Wed 23 May, 2018 11:14
by HaRT
John Doe wrote: ↑Wed 23 May, 2018 07:28
проблема с ошибочным выбором файла справки возможна, в случае если в одной папке с Luacheck находятся другие файлы справки
На мой взгляд, это бага. Почему бы скрипту не указывать явно, какой файл справки открыть?
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Wed 23 May, 2018 11:21
by John Doe
HaRT wrote: ↑Wed 23 May, 2018 11:14
На мой взгляд, это бага.
Не бага, а фича, средство локализации.
В данном случае у нас только файл одного языка, но если добавить другой, то он подхватится автоматически, согласно текущим настройкам фара.
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Wed 23 May, 2018 11:32
by HaRT
John Doe wrote: ↑Wed 23 May, 2018 11:21
фича, средство локализации
В топку такие средства, из-за которых в распространённой ситуации не работает штатная функциональность скрипта. Вон, Calendar by dimfish формирует имя файла справки с учётом языка самостоятельно — и всё работает ожидаемо. Впрочем, не вижу смысла продолжать эту дискуссию.
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Wed 23 May, 2018 11:42
by John Doe
HaRT wrote: ↑Wed 23 May, 2018 11:32
Впрочем, не вижу смысла продолжать эту дискуссию.
Напрасно, давайте подискутируем.
HaRT wrote: ↑Wed 23 May, 2018 11:32
В топку такие средства
Это штатная возможность, предоставляемая far api.
HaRT wrote: ↑Wed 23 May, 2018 11:32
Вон, Calendar by dimfish формирует имя файла справки с учётом языка самостоятельно — и всё работает ожидаемо.
Если не "ссыпать" все скрипты в одну кучу, то всё тоже будет работать ожидаемо.
С плагинами ровно та же история, попробуйте.
Да, я мог бы формировать имя файла и сам, но ради чего?
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Wed 23 May, 2018 11:53
by HaRT
John Doe wrote: ↑Wed 23 May, 2018 11:42
штатная возможность, предоставляемая far api
Да, я уже посмотрел. Но это не означает, что в ней нет концептуальных или технических ошибок.
John Doe wrote: ↑Wed 23 May, 2018 11:42ради чего?
Чтобы не навязывать пользователям способ организации файлов на их машине.
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Wed 23 May, 2018 14:09
by HaRT
John Doe wrote: ↑Wed 23 May, 2018 11:42
давайте подискутируем
Только конструктивно.
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Thu 07 Nov, 2019 12:46
by John Doe
v1.4.2-far5498.lm712
- Улучшена справка
far_standards.lua.cfg
актуализирован
- Экспериментальная опция
allow_G
(не документирована), позволяет скрывать предупреждения о необъявленных переменных, если они уже присутствуют в текущем окружении.
Примечание: вместо этой опции рекомендуется добавлять необходимые идентификаторы в конфиг: viewtopic.php?p=146799#p146799
С этой версии использование оставленных для совместимости
_G.unicode
и
utf8.cfind
будет отображаться ошибкой.
Рекомендуется исправить скрипты.
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Thu 07 Nov, 2019 22:32
by buniak_a_h
Задал по рекомендации
Shmuel
package.nounload = true
получил репорт:
setting undefined field 'nounload.ljsqlite3' of global 'package'
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Fri 08 Nov, 2019 14:22
by citRiks
John Doe,
Запускаю из панели luacheck:name.lua и получаю ошибку:
luacheck commandline
lua interpreter not found: luajit.exe
Но готового luajit.exe не нашёл. Что посоветуете?
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Fri 08 Nov, 2019 15:35
by skipik
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Fri 08 Nov, 2019 16:35
by citRiks
skipik, Вот спасибо! А нет ли ещё и x32-разрядности?
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Fri 08 Nov, 2019 16:45
by skipik
citRiks, обновил пост выше.
Luacheck FAR scripts — статический анализатор для Lua/MoonScript
Posted: Fri 08 Nov, 2019 16:56
by HaRT
Спасибо. А какая это конкретно версия LuaJit и какой версией компилятора собрана?