Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Здесь выкладываются готовые к использованию макросы и скрипты.
User avatar
John Doe
Бюрократ
Posts: 13801
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 72 times
Been thanked: 425 times
Contact:

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by John Doe »

Luacheck это статический анализатор для Lua.
Luacheck может обнаруживать разнообразные проблемы, такие как использование неопределённых глобальных переменных, неиспользованные переменные и значения, доступ к неинициализированным переменным, недостижимый код и многое другое.

А для удобной работы с luacheck в фаре предлагаю данный пакет скриптов, обеспечивающий работу Luacheck в редакторе и в командной строке.
Кроме того, в редакторе для Luacheck обеспечивается прозрачная "трансляция" MoonScript, что позволяет анализировать и *.moon-файлы.

Инструкции по установке, настройке, и работе — во встроенной справке.

Требования:
  • FAR 3 не старше b5106
  • luacheck не ниже v0.19
Attachments
far_standards.lua.cfg_v1.5.7z
Обновлённые определения (far 6114 / lm 772)
(8.5 KiB) Downloaded 87 times
luaсheck_far_v1.4.3.7z
far5505.lm712
(23.38 KiB) Downloaded 335 times
Last edited by John Doe on Sat 09 Nov, 2019 16:08, edited 3 times in total.
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by buniak_a_h »

Latest post of the previous page:

В файле far_standards.lua.cfg не перечислены far.Host . Надо самим обновлять, или Вы пополните? Или есть какой-то другой способ сделать так, чтоб скрипт не ругалcя на far.Host (а также на _G.utf8)?
Last edited by buniak_a_h on Sat 14 Nov, 2020 11:50, edited 1 time in total.
User avatar
John Doe
Бюрократ
Posts: 13801
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 72 times
Been thanked: 425 times
Contact:

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by John Doe »

Обновил, вложение в шапке.
buniak_a_h wrote: Sat 14 Nov, 2020 11:47 Или есть какой-то другой способ сделать так, чтоб скрипт не ругалcя на far.Host
Разумеется есть, можно через свой .luacheckrc (см. документацию).
buniak_a_h wrote: Sat 14 Nov, 2020 11:47 (а также на _G.utf8)?
А на это и не должно было ругаться, если у вас конечно не совсем древняя версия скрипта.
https://t.me/FarManager — Telegram чат
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by buniak_a_h »

John Doe wrote: Sat 14 Nov, 2020 13:11 А на это и не должно было ругаться, если у вас конечно не совсем древняя версия скрипта.
Скачал снова всё, что в шапке, перепроверил. На utf8 не ругается. Зато ругается на unicode и на все поля таблицы utf8 (например, utf8.char). Пока решилось заменой в far_standards.lua.cfg строки 66

Code: Select all

include "utf8" (utf8_str),
на тупую

Code: Select all

include "utf8"{
  "byte","cfind","char","dump","find","format","gfind","gmatch","gsub","len",
  "lower","match","rep","reverse","sub","upper","utf8valid",
},
. Я уверен, что это неправильно, но найти концов не могу.
Last edited by buniak_a_h on Sat 23 Jan, 2021 16:35, edited 2 times in total.
User avatar
John Doe
Бюрократ
Posts: 13801
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 72 times
Been thanked: 425 times
Contact:

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by John Doe »

Спасибо за репорт, перевыложил исправленный конфиг.
buniak_a_h wrote: Sat 23 Jan, 2021 13:03 Зато ругается на unicode
Намеренно.
Эта табличка оставлена для совместимости, использовать её сейчас смысла нет.
https://t.me/FarManager — Telegram чат
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by citRiks »

Last edited by citRiks on Sat 23 Jan, 2021 17:39, edited 1 time in total.
User avatar
HaRT
Moderator
Posts: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 times

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by HaRT »

Почему-то на недавно добавленный UUID. Как исправить локально, я за 5 минут не нашёл.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by buniak_a_h »

HaRT, я, вроде, добавлял в far_standards.lua.cfg. Там поискать GUIDS и добавить строчку "EditMaskGroupId"
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by citRiks »

я что-то не могу понять/найти как отменить проверку на определенные правила
например я не хочу проверять на "trailing spaces" (пробелы в конце строки)
не смог понять из справки luacheck_far.ru.hlf
не смог понять из справки https://luacheck.readthedocs.io/en/stable/config.html
не смог понять рассматривая .luacheckrc
если у кого есть идеи, то подскажите .. ?
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by Shmuel »

citRiks wrote: Mon 17 Oct, 2022 19:14 например я не хочу проверять на "trailing spaces"
Поставьте в .luacheckrc следующее:

Code: Select all

ignore = {
  "611", -- A line consists of nothing but whitespace.
  "612", -- A line contains trailing whitespace.
  "613", -- Trailing whitespace in a string.
  "614", -- Trailing whitespace in a comment.
}
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by buniak_a_h »

По-моему, ещё недоделка вылезла: luacheck ругается на win.GetSystemTime (нет такого ?)
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by Shmuel »

В файле far_standards.lua.cfg найдите include "win" и добавьте эту функцию.
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by buniak_a_h »

Shmuel, да я-то знаю. Но было бы кузяво подкорректировать тот, что в первом сообщении темы (типо для всех)
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by Shmuel »

Ну обратитесь к кому надо. Я-то вообще своей утилитой пользуюсь, а не этой.
User avatar
HaRT
Moderator
Posts: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 times

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by HaRT »

Shmuel wrote: Tue 07 Feb, 2023 18:38 Я-то вообще своей утилитой пользуюсь, а не этой.
Очень интересно! А чем она хороша? Вдруг и нам понравилась бы?
Фар есть инструмент, а не нянька. © 2009 DrKnS
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by Shmuel »

HaRT, она ничем не лучше (а может быть и хуже) утилиты от John Doe.
В её основании также лежит замечательный LuaCheck от Петра Мельниченко.
Когда я впервые начал пробовать утилиту от John Doe, то понял, что потребуетися пара часов, чтобы хорошо разобраться с его решениями.
В то же время, я оценил, что написать собственный вариант это тоже считанные часы, но поддержка и модификация своего кода для меня проще, чем чужого.
Для широкого круга пользователей утилита от John Doe лучше, чем моя, ибо моя без документации.
User avatar
John Doe
Бюрократ
Posts: 13801
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 72 times
Been thanked: 425 times
Contact:

Luacheck FAR scripts — статический анализатор для Lua/MoonScript

Post by John Doe »

Обновление файла far_standards.lua.cfg для far 6114 / lm 772.
В шапке.
https://t.me/FarManager — Telegram чат
Post Reply

Return to “Полезные макросы и скрипты”