Lua 中的多行注释被包裹在对 ']]' 的引用中。

我正在尝试找到一种方法来对一批代码使用多行注释,但它会错误地将其中一些语法当作 ]] 并认为我想在那里结束,但我不想!

--[[
  for k,v in pairs(t) do
    local d = fullToShort[k]
    local col = xColours[v[1]] -- It stops here!
    cecho(string.format(("<%s>%s ", col, d))
  end
--]]

我记得在某个地方读到过可以使用不同的组合来避免这些错误,比如 --[=[ 或其他什么的... 有人能帮忙吗?

点赞
用户1601606
用户1601606

正如您在 Strings tutorial 中所看到的那样,方括号嵌套有特殊的 [===[ 语法。您也可以在块注释中使用它。只要注意,在打开和关闭序列中,= 符号的数量必须相同。

例如,5 个等号将起作用。

--[=====[
for k,v in pairs(t) do
   local d = fullToShort[k]
   local col = xColours[v[1]] -- It stops here!
   cecho(string.format(("<%s>%s ", col, d))
end
--]=====]
2014-03-28 20:21:19
用户5592365
用户5592365

你可以使用以下代码来创建多行注释,它必须出现在 ]] 后:

--[[
   代码
]]
2018-08-21 17:49:05