30 个版本
0.1.161 | 2020 年 12 月 10 日 |
---|---|
0.1.160 | 2020 年 10 月 24 日 |
0.1.158 | 2020 年 7 月 5 日 |
0.1.156 | 2020 年 1 月 7 日 |
0.1.131 | 2018 年 11 月 24 日 |
#68 在 文本编辑器 中
3,470 星 & 41 关注者
400KB
10K SLoC
有关旧版 Python 实现,请参阅 master 分支.
LanguageClient-neovim
更多信息请参阅 更新、截图 & GIFs.
特性
- 非阻塞异步调用。
- 合理的补全。与 deoplete 或 ncm2 或 MUcomplete 集成良好。或者简单地使用 vim 内置的
omnifunc
。 - 实时诊断/编译器/lint 信息。
- 重命名。
- 悬停/获取标识符信息。
- 转到定义。
- 转到引用位置。
- 工作区/文档符号查询.
- 格式化.
- 代码操作/快速修复.
快速入门
使用 vim-plug
Plug 'autozimu/LanguageClient-neovim', {
\ 'branch': 'next',
\ 'do': 'bash install.sh',
\ }
" (Optional) Multi-entry selection UI.
Plug 'junegunn/fzf'
示例配置
" Required for operations modifying multiple buffers like rename.
set hidden
let g:LanguageClient_serverCommands = {
\ 'rust': ['~/.cargo/bin/rustup', 'run', 'stable', 'rls'],
\ 'javascript': ['/usr/local/bin/javascript-typescript-stdio'],
\ 'javascript.jsx': ['tcp://127.0.0.1:2089'],
\ 'python': ['/usr/local/bin/pyls'],
\ 'ruby': ['~/.rbenv/shims/solargraph', 'stdio'],
\ }
" note that if you are using Plug mapping you should not use `noremap` mappings.
nmap <F5> <Plug>(lcn-menu)
" Or map each action separately
nmap <silent>K <Plug>(lcn-hover)
nmap <silent> gd <Plug>(lcn-definition)
nmap <silent> <F2> <Plug>(lcn-rename)
在 shell 中运行命令 nvim +PlugInstall +UpdateRemotePlugins +qa
以安装此插件。安装相应的语言服务器。重启 neovim/vim,语言服务将立即可用。快乐编码!
映射
LanguageClient-neovim 定义了各种 Plug 映射,有关完整列表和示例配置,请参阅 :help LanguageClientMappings
。
安装
语言服务器
注意,您还需要语言服务器来充分利用此插件。有关语言服务器实现列表及其安装方法,请参阅 http://langserver.org 和/或 https://microsoft.github.io/language-server-protocol/implementors/servers/。
文档
依赖项
~8–19MB
~256K SLoC