当前位置: 首页 > 后端技术 > Node.js

TheCompleteGuidetoGettingStartedwithCoc.nvim

时间:2023-04-03 20:22:50 Node.js

TheCompleteGuidetoGettingStartedwithCoc.nvim简介Coc.nvim是一个基于NodeJS的Vim智能补全插件,适用于Vim8和Neovim。具有完整的LSP支持。配置、使用和插件系统的整体风格与VSCode类似。对我来说,选择它的原因是它易于安装且功能强大。与YouCompleteMe相比,安装过程简直太舒服了。更多信息,请参考维基百科。另:因为Coc本身只是Vim的一个插件,但是它有自己的插件系统,所以我将Coc插件称为子插件来区分。安装前提因为coc.nvim是基于NodeJS的,所以如果机器上没有NodeJS,需要安装NodeJS.Vundle,在.vimrc中添加如下内容:Plugin'neoclide/coc.nvim'运行如下命令在Vim中::source%:如果PluginInstallVundle版本低于0.10.2,请将Plugin替换为Bundle.NeoBundle并在.vimrc:NeoBundle'neoclide/coc.nvim'中添加以下内容在Vim中运行以下命令::source%:NeoBundleInstallVimPlug在.vimrc中添加如下内容:Plug'neoclide/coc.nvim'在Vim中运行如下命令::source%:PlugInstallPathogen切换到Pathogen目录,拉取对应的仓库:cd~/.vim/bundlegitclonehttps://github.com/neoclide/coc.nvim添加插件由于coc本身不提供特定语言的补全功能,只是提供补全功能的平台,所以安装完成后,我们需要安装特定语言的补全功能服务支持相应的补充FullFunction。打开Vim并使用以下命令自动安装子插件和相关依赖项。:cocInstallcoc-jsoncoc-tsserver其中,coc-jsoncoc-tsserver这些是对应的支持JSON和Typescript的子插件。获取哪些子插件可用,可以直接在Npm上搜索coc.nvim,或者直接在Vim中使用coc-marketplace进行管理。安装命令如下::CocInstallcoc-marketplace安装完成后,使用如下命令打开面板,Tab高亮显示的子插件可以安装和卸载。#打开面板:CocListmarketplace#搜索python相关子插件:CocListmarketplacepython可以上下选择,按Tab键进行相应操作。这里还有一个相对完整的支持子插件列表,但不确定是否全面。修改配置在Vim中,您可以配置各种内置函数或额外的子插件。就像Vscode的配置系统一样。具体可以设置的内容,请参考仓库的wiki。我自己用得不多。我只添加了几个相关的coc-prettier:{"prettier.singleQuote":true,"prettier.trailingComma":"all","prettier.bracketSpacing":false}在~/.vimrc中添加如下内容,即可使用Tab和Shift+Tab用于选择完成。"使用导航完成listinoremappumvisible()?"\":"\"inoremappumvisible()?"\":"\"添加常用快捷键添加一些常用功能的快捷键,可以在~/.vimrc中这样写:"Usetoformatdocumentswith更漂亮的命令!-nargs=0Prettier:CocCommandprettier.formatFilenoremap:Prettier上面的配置添加了一个Prettier快捷命令:Prettier,并添加了快捷键Ctrl+F。