根据本地样式指南文件设置vim缩进设置

时间:2017-10-12 22:16:58

标签: vim eslint

因此,对于我的大多数开发目的,我的vim实例默认为每个选项卡使用4个空格。但是让我说我​​进入像以下

这样的项目
.
├── .eslintrc
└── src
    ├── bar.js
    └── foo.js

并且.eslintrc文件指定缩进设置为2个空格。

/* .eslintrc */

{
    "indent": ["error", 2]
}

如何将vim配置为自动更改为本地.eslintrc文件中定义的缩进设置?

1 个答案:

答案 0 :(得分:2)

Vim不理解.eslintrc的格式。不知何故,这需要转换为相应的Vim命令(例如:set ts=... sw=...)。

独立于编辑器的设置

editorconfig.org项目旨在为编码样式建立一种通用格式,可以将其转换为各种IDE和编辑器的相应配置。

在Vim

中定义特定于目录树的配置

中央配置

如果可以集中配置特定命令/本地例外,您可以将此类autocmds放入~/.vimrc

:autocmd BufRead,BufNewFile /path/to/dir/* setlocal ts=4 sw=4

使用:setlocal代替:set,同样使用:map <buffer> ...:command! -buffer ...非常重要。

另一方面,如果您希望将特定配置与项目一起存储(并且不希望通过 modelines 将其嵌入到所有文件中),则可以使用以下两个选项:

具有内置功能的本地配置

如果你总是从项目根目录启动Vim,那就是内置的

:set exrc

允许从当前目录中读取.vimrc文件。您可以在其中放置:set ts=4 sw=4命令。

通过插件进行本地配置

否则,您需要插件的帮助; vim.org上有几个;我可以推荐localrc plugin(特别是my own enhancements),它甚至允许本地文件类型特定的配置。

请注意,从文件系统读取配置具有安全隐患;你可能想要:set secure

自动检测而不是重复配置

大多数编辑都是现有文件,在IDE或文件模板中创建。对于这些,有一些插件可以检测使用的缩进设置,并相应地调整Vim的选项。我的IndentConsistencyCop plugin做到了这一点,并抱怨不一致的缩进。 (插件页面包含指向其他插件的链接。)