如何将VSCode LSP示例适配至Atom与Vim并部署?
LSP示例适配Atom与Vim的最小改动部署方案
适配Atom
无需修改原LSP服务端代码,仅需新增Atom扩展的对接配置:
- 在项目根目录新建Atom扩展清单
package.json,核心配置如下:{ "name": "lsp-sample-atom", "main": "./lib/main.js", "activationCommands": { "atom-workspace": "lsp-sample-atom:activate" }, "dependencies": { "atom-languageclient": "^1.19.0" } } - 新建
lib/main.js,实现Atom与LSP服务端的对接逻辑:const { AutoLanguageClient } = require('atom-languageclient'); const path = require('path'); class LSPSampleClient extends AutoLanguageClient { getGrammarScopes() { return ['source.js']; } getLanguageName() { return 'JavaScript'; } getServerName() { return 'LSP Sample Server'; } startServerProcess() { return this.spawnChildNode(path.join(__dirname, '../server/out/server.js')); } } module.exports = new LSPSampleClient(); - 安装依赖后,执行
apm link将本地扩展链接到Atom,重启Atom即可生效。
适配Vim(含Neovim)
以coc.nvim插件为例,无需修改原LSP服务端代码:
- 确保Vim已通过插件管理器(如vim-plug)安装
coc.nvim - 在Vim配置文件(
~/.vimrc或init.vim)中添加LSP服务配置:autocmd FileType javascript call coc#config('languageserver.lsp-sample', { \ 'command': 'node', \ 'args': ['/你的项目实际路径/lsp-sample/server/out/server.js'], \ 'filetypes': ['javascript'], \ 'rootPatterns': ['.git', 'package.json'] \ }) - 替换配置中的路径为你的项目实际路径,重启Vim后打开JS文件,
coc.nvim会自动启动LSP服务端。
内容的提问来源于stack exchange,提问作者V370R
相关产品推荐
相关产品推荐

