我的Vue用的是 web-mode
,我的lsp
配置是
(use-package lsp-mode
:hook
((c++-mode python-mode clojure-mode typescript-mode web-mode julia-mode) . lsp)
:config
(setq lsp-enable-snippet nil
lsp-eslint-enable nil
lsp-idle-delay 0.500
;; STUB add some config, risky
lsp-log-io nil
lsp-enable-symbol-highlighting t
lsp-restart 'auto-restart
lsp-file-watch-threshold 1000
)
(add-to-list 'lsp-file-watch-ignored-directories "node_modules/")
:commands lsp)
另外我发现编辑 typescript
文件和 vue
文件时启用的 language-server
不是同一个, typescript
用的是 ts-ls
vue
用的是 vls
有没有方法让他们都用 vls
??
不知道各位都是怎么配置 vue
和 typescript
的,因为他们用的 language-server
不一样,我这里遇到了这个问题
@volar/server 已经改名成 @volar/vue-language-server
1 个赞
如果是最新的lsp-mode 重启一下项目应该就可以了
你的lspmode是最新版本的吗 执行 lsp-install-server 看看有volar-api吗
我用的是doom-emacs 它是用的straight 所以可以使用github上的最新版
那你去看看 lsp-volar 吧 不过我没上melpa啥的,所以需要本地安装之类的。。
另外问下,为什么这种情况下emacs这边的lsp跟vscode的不一样
如果你是写 vue2 + composition-api 或者 vue3 的话,现在都推荐使用 volar了,vscode中也需要安装 volar,而不是用以前的 vetur ,如果是旧的vue2项目,那需要还是用 vls 。
两边其实是一样的,只是 vscode 是一整个插件,而emacs这边用只是它插件的服务,前端用的是 lsp-mode.
又出问题了,新建了一个项目,但是 volar-api 装载不上去
原来这个插件是你做的,大佬你好
这只是你重新安装了,你不需要每次都重新安装,看你的code action 都显示了,已经能正常工作了吧