繁体   English   中英

在 .vimrc 中设置 expandtab 不生效

[英]set expandtab in .vimrc not taking effect

由于某种原因,我的.vimrc文件中的set expandtab命令没有任何效果。

这是我的.vimrc

" tab settings
set expandtab
set smarttab
set softtabstop=2
set tabstop=2
set shiftwidth=2
set paste

但是,当我运行vi (无文件名)时, :set命令发出:

:set
--- Options ---
  helplang=en         shiftwidth=2        ttyfast
  paste               tabstop=2           ttymouse=xterm2
  fileencodings=ucs-bom,utf-8,default,latin1

这表明未设置expandtab选项。 通过执行:set expandtab? 返回noexpandtab

我在 OSX 10.10 上, vi --help返回:

$ vi --version
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Jun 20 2016 11:11:25)
MacOS X (unix) version
Included patches: 1-1847
Compiled by Homebrew

为什么我的 .vimrc 中的一些设置得到尊重,但没有set expandtab

expandtab上的文档:

此选项是当复位paste选项设置和恢复时, paste选项被复位。

顺便说一句,您可能不希望一直设置paste 它通常用于粘贴到终端 Vim 中以避免弄乱缩进等。

为了方便地通过一个按键打开和关闭paste ,您可以添加此快捷方式(将<F2>更改为您想要的任何键):

set pastetoggle=<F2>

刚刚用 Neovim 遇到了同样的问题,无论我尝试什么,我似乎都无法解决这个问题。 结果发现在父目录中有一个带有indent_style=tab.editorconfig文件。 通过在我的目录中添加一个新的.editorconfig来修复, root = true (另一种方法是删除或编辑父.editorconfig文件)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM