我对vim相当新,并且使用编辑器作为vim开始一个新的javascript项目(目前正在学习)。
我发现风格指南有一些预设,而 Airbnb , Google 和其他一些提供了linting。我还发现我可以使用syntastic vim插件来帮助我在vim中启用linting和style-check。
但是我无法弄清楚如何在vim中链接这些东西?我需要创建哪些配置文件以及如何在Syntastic vim插件中启用这些功能?另外,我想在文件保存功能上启用jscs autofix。
编辑:我也在使用与es6的反应。
任何基本或细节方向,实现相同的教程链接都会有所帮助。
由于
答案 0 :(得分:4)
在您的主目录中创建(或编辑)名为.vimrc
的文件,您可以通过将此行添加到.vimrc
let g:syntastic_javascript_checkers = ['jscs']
至于在写入时自动修复代码,请参阅此问题的答案:How can I integrate jscs autofix feature into vim?
<强>建议/更新强>
JSCS现在已与ESlint合并,因此您最终应该切换短片,您可以在.vimrc
中修改该行以使用&#39; eslint&#39;代替;您可以使用.eslintrc
文件或eslint's configuration docs中详述的其他几个选项配置eslint,以使其了解es6 / react内容,目前我已设置my .vimrc
在不同的情况下不同的短裤如下:
if has("autocmd")
" use google/jshint for js "
autocmd FileType javascript.js let g:syntastic_javascript_checkers = ['gjslint','jshint']
" use eslint for jsx "
autocmd FileType javascript.jsx let g:syntastic_javascript_checkers = ['eslint']
else
" if an older version of vim without autocmd just use google/jshint "
let g:syntastic_javascript_checkers = ['gjslint','jshint']
endif
我修改了that answer中的代码以使用eslint
function! FixJS()
"Save current cursor position"
let l:winview = winsaveview()
"run eslint fix on current buffer"
! eslint --fix %
"Restore cursor position"
call winrestview(l:winview)
endfunction
command! FixJS :call FixJS()
"Run the FixJS command just before the buffer is written for *.js files"
autocmd BufWritePre *.js FixJS
应该在写入时自动修复代码,或者在使用命令:FixJS