EmmyLua / VSCode-EmmyLua

Lua IDE/Debugger Plugin for VSCode
632 stars 89 forks source link

xmake.lua 文件下不了断点 #134

Closed waruqi closed 1 year ago

waruqi commented 1 year ago

如果我开启了 xmake-vscode 插件 https://github.com/xmake-io/xmake-vscode ,xmake.lua 脚本里面就无法下断点(点都没法点),其他 xxx.lua 常规 lua 文件可以正常下断点

image

而如果我禁用 xmake-vscode 插件,xmake.lua 就能够正常下断点。。

image

应该是插件冲突了,但是我不确定是否哪里会干扰这个断点处理。

CppCXY commented 1 year ago

你定义了一门全新的语言叫xmake, 于是他不再是lua文件, vscode也不会认为他是lua文件,也无法被lua周边插件识别, 你可能需要取消对xmake语言的定义, vscode自身对lua文件已经有非常完善的高亮和语言定义(来自sumneko维护的lua语言定义),

CppCXY commented 1 year ago

另一种方式是 image 设置文件关联, 但是我不知道是否会影响你得xmake插件的正常运行, 设置文件关联后他的语言应该就是lua而不是xmake了

waruqi commented 1 year ago

好的,我试试

waruqi commented 1 year ago

文件关联 和 禁用语言效果一样,不过当初自定义语言,主要是为了能够自定义绑定一个 logo icon。

目前除了切回 lua ,好像也没啥更好的兼容方式

CppCXY commented 1 year ago

文件关联 和 禁用语言效果一样,不过当初自定义语言,主要是为了能够自定义绑定一个 logo icon。

目前除了切回 lua ,好像也没啥更好的兼容方式

我看过vscode-xmake.io的一些issue了

  1. 非lua语言识别导致formatter不可用(不过formatter对你的缩进是不起作用的)
  2. 没有更好的api提示(需要关联到lua然后使用sumneko lua的插件) 总体来看定义xmake.io语言并没有太大的好处.

如果你不打算取消xmake.lua的语言定义, 这边有几个改造建议:

  1. 从emmylua迁移调试器到xmake.io (复制粘贴就能用)
  2. 为xmake.io写语言服务(比较困难)或者提供代码片段(比较简单)
  3. 为xmake写专属formatter(比较困难, 可能没有必要)
waruqi commented 1 year ago

从emmylua迁移调试器到xmake.io (复制粘贴就能用)

嗯 回头看下 试试吧调试器整进来

waruqi commented 1 year ago

好像也没那么麻烦,我插件里面对 xmake 语言启用断点就可以了。。

https://github.com/xmake-io/xmake-vscode/commit/2050813d54d7dc1d9c5319f3bda7dca63ad505d7