luacheck 忽略下划线开头的未使用变量

(金庆的专栏 2017.8)

首先建议总是用 --codes 参数来查看错误码,这样输出的信息是这样的:

D:\Jinqing\Git\plane\room.lua(76):9: (W213) unused loop variable 'k'

W213就是错误码,可以在 ignore中使用。

例如:

for k, player in pairs(self.players) do

可以这样:

for k, player in pairs(self.players) do  -- luacheck: ignore k

for k, player in pairs(self.players) do  -- luacheck: ignore 213

for k, player in pairs(self.players) do  -- luacheck: ignore 213/k

如果像Erlang那样总是忽略下划线开头的变量,可以这样:

for _key, player in pairs(self.players) do  -- luacheck: ignore 213/_.*

for _key, player in pairs(self.players) do  -- luacheck: ignore 21/_.*

最好是写在 .luacheckrc 配置文件中:

ignore = {
        "21/_.*"  -- (W212)unused argument '_arg'
    }

参考:https://github.com/mpeterv/luacheck/issues/40