VSCode version of EmmyLua
QQ交流群:29850775
(最新版本以及部分视频演示在群文件中下载)
FAQ:
Q: vscode-emmylua全家桶还有哪些?
A: EmmyLuaCodeStyle, EmmyLuaUnity
Q: 为什么附加调试没有作用?
A: 附加调试会试图获取进程内的lua符号,判断当前的lua版本,用于调试计算等。所以要求进程本身导出lua符号
Q: Emmy New Debug为什么连不上目标
A: 通常是由于插入代码require执行失败,或者require("emmy_core")
返回true,这表明可执行文件没有导出lua符号
Q: 为什么打开项目后大量爆红
A: 这就是惊喜! 大部分爆红是因为emmylua检查到项目中有未定义的全局变量, 而大部分人没有给自己项目写annotation所以就会爆红了, 如果想快速修复它, 需要在你打开的首个vscode工作区的顶层目录(不是在.vscode中)中创建.emmyrc.json之后填入
{
"diagnostics": {
"disable": [
"undefined-global"
]
}
}
Q: 我能否在其他平台上用到vscode-emmylua的代码分析功能?
A: 可以, vscode-emmylua的代码分析功能来自EmmyLuaAnalyzer, 它是标准的语言服务器, 可以被任何实现了LSP的客户端使用. 比如在Intellij平台你可以通过安装LSP4IJ然后通过简单的配置开启EmmyLuaAnalyzer的代码分析功能.
Q: 为什么不用Vscode配置而是用.emmyrc.json?
A: 为了方便在其他平台上使用EmmyLuaAnalyzer, 并且使用任何IDE也不用重新配置
Q: 为什么选择使用dotnet重写emmylua语言服务器?
A: 原本的基于java的语言服务内存占用比较大, 另外存在各种无法解决的递归崩溃, 而如今的dotnet性能被微软优化的非常高, 内存占用也比较低, 各方面工具链比较完整. 所以我选择了dotnet
Q: 为什么没有文档?
A: 配置文件的文档见 https://github.com/CppCXY/EmmyLuaAnalyzer/blob/master/docs/.emmyrc.json_CN.md