deoplete-ternjs 使用教程
项目介绍
deoplete-ternjs 是一个为 Neovim 提供的 JavaScript 自动补全插件。它基于 tern_for_vim 和 deoplete-jedi,需要 Neovim 和 neovim/python-client 的支持。Tern.js 是一个用于 JavaScript 的代码分析引擎,提供智能的代码补全功能。
项目快速启动
安装
使用 NeoBundle
NeoBundle 'carlitux/deoplete-ternjs', { 'build': { 'mac': 'npm install -g tern', 'unix': 'npm install -g tern' }}
使用 Plug
Plug 'carlitux/deoplete-ternjs', { 'do': 'npm install -g tern' }
配置
在 Vim 配置文件中添加以下配置:
" Set bin if you have many installations
let g:deoplete#sources#ternjs#tern_bin = '/path/to/tern_bin'
let g:deoplete#sources#ternjs#timeout = 1
" Whether to include the types of the completions in the result data
let g:deoplete#sources#ternjs#types = 1
" Whether to include the distance (in scopes for variables in prototypes for properties) between the completions and the origin position in the result data
let g:deoplete#sources#ternjs#depths = 1
" Whether to include documentation strings (if found) in the result data
let g:deoplete#sources#ternjs#docs = 1
" When on only completions that match the current word at the cursor will be shown
let g:deoplete#sources#ternjs#guess = 0
" Add extra filetypes
let g:deoplete#sources#ternjs#filetypes = [
\ 'jsx',
\ 'javascript.jsx',
\ 'vue',
\ ]
应用案例和最佳实践
案例一:React 项目开发
在开发 React 项目时,deoplete-ternjs 可以提供强大的代码补全功能,包括组件、属性和方法的自动补全。通过配置文件类型为 jsx
和 javascript.jsx
,可以确保在 JSX 文件中也能获得良好的补全体验。
案例二:Vue 项目开发
对于 Vue 项目,deoplete-ternjs 同样适用。通过添加 vue
到文件类型列表中,可以在 Vue 单文件组件中获得 JavaScript 代码的自动补全。
典型生态项目
Neovim
deoplete-ternjs 依赖于 Neovim,Neovim 是一个高度可扩展的 Vim 版本,提供了更好的插件管理和异步执行能力。
deoplete.nvim
deoplete.nvim 是一个异步的 Neovim 自动补全框架,deoplete-ternjs 是其一个插件,提供 JavaScript 的自动补全功能。
Tern.js
Tern.js 是一个用于 JavaScript 的代码分析引擎,提供智能的代码补全功能。deoplete-ternjs 利用 Tern.js 来实现 JavaScript 的自动补全。
通过以上配置和使用方法,您可以在 Neovim 中获得高效的 JavaScript 开发体验。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考