ES6与vim - 奇怪的缩进与()=> ()

时间:2018-03-12 06:37:56

标签: vim ecmascript-6

ES6隐式返回对于保持函数定义不必要的混乱有用,并有助于强制执行纯组件的编写。在React。

然而,缩进与Vim没有很好的协作,当我为返回块定义带有括号的函数并按下回车时,我结束了这个状态

const Component = () => (

        )

当我点击进入时,Vim通过两个整个标签长度(在这种情况下为8个空格)缩进结束按钮。

但是,当我做一个正常的'功能大括号我想要的状态

const Component = () => {

}

什么给了!?我启用了以下三个vim缩进设置:

set autoindent
set copyindent
set preserveindent

知道可能出现什么问题或者我可以考虑修复哪些设置?

1 个答案:

答案 0 :(得分:2)

某些文件类型(包括.c,.js和其他文件)在Vim的自动加载目录中定义了自动完成命令(执行:e $VIM/vimxx/autoload/以获取这些文件的列表,替换{{1}你的Vim版本)。其他自动完成命令通过插件定义。

对于您的情况,我建议定义一个自动命令:

xx

autocmd! InsertEnter *.js imap (<cr> (<cr><cr>)<up> 替换为您正在使用的文件类型。