`

VIM中空格和TAB的替换

阅读更多

VIM中空格和TAB的替换

我的vim设置:


set smarttab 
set tabstop=4 
set shiftwidth=4 
set expandtab

"继承前一行的缩进方式,特别适用于多行注释
set autoindent
"
"为C程序提供自动缩进
set smartindent

"使用C样式的缩进
set cindent

 

" 在状态行上显示光标所在位置的行号和列号
set ruler
set rulerformat=%20(%2*%<%f%=\ %m%r\ %3l\ %c\ %p%%%)

 

摘自 Vim 手册:

选项
1. tabstop:表示一个 tab 显示出来是多少个空格,默认 8
2. softtabstop:在编辑的时候(比如按退格或 tab 键)一个 tab 是多少个空格(有点不好理解。。。我也没完全弄明白)
3. expandtab/noexpandtab:将 tab 扩展/不扩展成空格
4. shiftwidth:每一级缩进是多少个空格
5. smarttab:根据文件中其他地方的缩进空格个数来确定一个 tab 是多少个空格

命令
:[range]retab [new_tabstop]:应用新的 tabstop 值,替换所有的 tab,如果设置了expandtab,还会把文件中 tab 都替换成空格。

几种常见用法

1. 保留 tab。让 tabstop 保持默认,将 softtabstop 和 shiftwidth 设为 4,并设置 noexpandtab。这样文件中本来有 tab 的话会保留,新增的缩进处也会使用 tab。

2. 全部用空格。将 tabstop 和 shiftwidth 设置成相同的值,如 4,并设置 expandtab。这样新增的缩进会用空格,你按下 tab 键,出来的也全是空格。如果文件里本来就有 tab 的话,可以再用一次 :retab 命令,将所有 tab 扩展成空格,这样就完美了。

我一般在 .vimrc 中这样设置:

  1. set smarttab  
  2. set tabstop=4  
  3. set shiftwidth=4  
  4. set expandtab  

分享到:
评论

相关推荐

    Atom-atom-vim-like-tab,在atom中添加类似vim的tab特性。对Kesin11/原子的贡献.zip

    Atom-atom-vim-like-tab.zip,在atom中添加类似vim的tab特性类似atom vim的tab包,atom是一个用web技术构建的开源文本编辑器。

    vim 全文字符串替换

    vim全文字符串替换,vim使用方法,说明

    tabline.vim, 在终端Vim中配置标签.zip

    tabline.vim, 在终端Vim中配置标签 tabline.vim在终端Vim中配置标签标签,输出非常简洁。 制表符文件名( 仅 basename )如果当前缓冲区已经修改,则为 [ ]在这种情况下,请参考Vim选项卡,而不是 Terminal.app 选项卡...

    Linux系统中vim设置tab键的宽度

    Linux系统中vim设置tab键的 宽度

    vim替换文件

    安装vim后,替换已经存在的_vimrc文件,这个替换文件已经配置好,下载直接使用。

    Vim的提示 - 新标签替换「Vim Tips - New Tab Replacement」-crx插件

    实用的Vim提示显示在您的新标签页上。 每次打开新选项卡时,都会学习新的vim命令。 支持语言:English

    Linux下设置Vim编辑器里Tab的长度行号

    使用Vim编辑器写脚本时,经常会遇到多重循环语句,习惯上会用tab键来补齐。这时设置tab键占用的长度,可以调节界面的松紧度,使其达到令人满意的效果。 在针对个别用户和所有用户来设置时,与编辑SSH相应的配置文件...

    vim的c.vim和cpp.vim文件

    vim的c.vim和cpp.vim文件,替换之后可以高亮显示函数名称,包括STL里的类型名和函数名

    Python-为vim配置python自动补全和tab缩进自动转换为空格等功能

    为vim配置python自动补全和tab缩进自动转换为空格等功能

    浅谈Vim中的Tab与空格缩进

    下面小编就为大家带来一篇浅谈Vim中的Tab与空格缩进。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    VIM正则表达式查找替换[PDF电子教程]

    VIM,很好很强大;正则表达式亦是如此。将两者有机结合起来,使工作效率更高。本教程面向正则表达式爱好者或有一定基础的VIM用户。非常之详细。

    vi与vim如何修改tab为4个空格方法示例

    本文主要给大家介绍了关于vi与vim修改tab为4个空格的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 方法如下: 配置文件位置:/etc/virc 和 /etc/vimrc 配置文件中如果要添加注释,不...

    vim 技巧和插件

    每个录制文件包含了time_*和vim_*两个文件,其中time文件记录时间,vim命令记录的是命令,它们内容是script工具生成的。 查看演示方法,如查看第二个(time和vim两个文件中去有2的文件): scriptreplay time_...

    vim常用快捷键和配置设置

    vim常用快捷键和插件设置 包括vim中tab操作 vim中使用cscope nerdtree等。 其中一些好用但不常用的快捷键可以明显提高工作效率

    vim-easygrep, 在多个文件中快速轻松地查找和替换.zip

    vim-easygrep, 在多个文件中快速轻松地查找和替换 easygrep在多个文件中快速轻松地查找和替换EasyGrep是通过多个文件执行搜索和替换操作的插件。 Vim已经经有内置的支持,可以以使用它的'vimgrep'和'grep'命令搜索...

    vim配置C/C++开发环境.zip

    vim配置C/C++开发环境,包括函数补全小括号补全等等,基本跟ide差不多,内附步骤。 注:vim中需要使用tab键来调出下拉框

    vim jeffy插件和配置

    Jeffy插件和配置文件(.vim):代码高亮 自动提示等。 vim版本必须大于7.1。 1,备份下vim配置文件(可选) 2,解压jeffy-vim.zip 和里面的jeffy-vim-read.tar.gz 3,进入目录jeffy-vim-read运行安装脚本:#./install....

    tabby:正确使用Vim标签

    虎斑猫正确地跳动小费如果您喜欢Tabby并且想分享W00t !,我将感谢您提供的或。 修复了gt vs gT的非正交行为。 gt现在向前移动[count]个标签[count] (默认为1)(因此3gt向前移动3个标签页) gT保留其向后移动[count...

Global site tag (gtag.js) - Google Analytics