文章转自:http://blog.csdn.net/shell_picker/article/details/6033023

摘自 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 中这样设置:

"设置tab缩进
set smarttab
set tabstop=
set shiftwidth=
set expandtab

Vim 的 tab 设置的更多相关文章

  1. 再说vim的tab设置

    首先, vim的设置允许简写 // 单击一次tab,停靠, 停止在 4个spaces距离处 set tabstop=4 , 可以简写为: set ts=4 // 允许将tab转换为空格 turn ta ...

  2. vim的Tab设置为4个空格

    vim /etc/vimrc 1    set ts=42    set expandtab3    set autoindent 按tab键时产生的是4个空格,这种方式具有最好的兼容性.

  3. vim中将tab 设置成4个空格

    在.vimrc中添加以下代码后,重启vim即可实现按TAB产生4个空格:set ts=4  (注:ts是tabstop的缩写,设TAB宽4个空格)set expandtab 对于已保存的文件,可以使用 ...

  4. vim的tab键设定

    多在windows上编程的童鞋可能习惯于感受tab键为4个空格的长度,不过在linux系统中一般默认设定tab键为8个空格长度来显示.事实上tab也确实是8个空格的长度.不过由于习惯问题,某些童鞋还是 ...

  5. Vim代码缩进设置

    前段配置VPS,无奈只能使用Vim编辑Python代码,比较头疼的没法设置自动缩进,所以搜索了相关的配置,特记录如下. 将以下的设置加入到~/etc/vim/.vimrc中: set sw=4 set ...

  6. vim 使用、设置笔记

    一.设置.vimrc( windows下通常为_vimrc) 1.设置vim中tab的缩进 set ts=4  (注:ts是tabstop的缩写,设TAB宽4个空格) set expandtab (注 ...

  7. vim vi Ubuntu 设置

    1. 在vi编辑模式下按退格键不能删除内容,按方向键不能上下左右移动?如果是则:一 在vi里非编辑模式下按冒号进入到末行命令模式,然后输入set nocompatible,回车,然后在进入vi编辑模式 ...

  8. Vim增强工具设置

    Vim增强工具设置操作准备:vim ~/.vimrc11. 缩进 & 制表符使 Vim 在创建新行的时候使用与上一行同样的缩进: set autoindent 2. 设置文件里的制表符 (TA ...

  9. vim设定Tab缩进长度

    在Linux系统中,vim是一款非常好用的文本编辑器,那么,如何在Linux下的vim编辑器设定Tab的缩进长度呢? Linux系统下,vim编辑器Tab键的默认长度为8个空格,在vim中可以通过修改 ...

随机推荐

  1. css选择器(选择<div>内所有<p>元素)

    情况1:<div><p></div> 情况2:<div><a><p></p></a></div&g ...

  2. asp.net接收ajax请求参数时为空的现象

    如题,如果使用ajax请求asp.net后台时,如果使用jquery时,默认是添加了请求头,使后台能识别,并能通过Request对象进行获取. 但是如果你使用的是window.XMLHttpReque ...

  3. Linux操作系统PS命令详细解析

    要对系统中进程进行监测控制,用 ps 命令满足你. /bin/ps ps 是显示瞬间行程的状态,并不动态连续:如果想对进程运行时间监控,应该用 top 工具. kill 用于杀死进程. ======= ...

  4. Linux下使用USB模拟ACM串口设备

    这个想法之前就在脑袋里有过,最近公司产品要用到,所以多做了些了解. 1. USB 简介 USB 是 Universal Serial Bus 的缩写,从字面上看,就是通用串行总线的意思.从物理上看,其 ...

  5. C#获取文件的Md5值

            private string GetMd5(Stream fileStream)         {             MD5CryptoServiceProvider md5P ...

  6. CSS 公共样式分享

    global.css | reset.css(格式化样式) common.css(公共组件样式) layout.css(当前页面样式) 清除全站所有页面的浏览器默认样式,保证在初始样式在所有浏览器下一 ...

  7. .bash_profile for mac‘ envionment variables

    A typical install of OS X won't create a .bash_profile for you. When you want to run functions from ...

  8. linux学习笔记-dump命令的使用

    http://blog.chinaunix.net/uid-29797586-id-4458302.html

  9. 【原】web移动端常用知识点笔记

    摘要:因为平时搞移动端的比例多一点,做个小小的总结.虽然网上很多这方面的总结,不过还是想自己也总结一下,适合自己的才是最好的.这样也方便以后自己的查阅 viewport模板——通用 <!DOCT ...

  10. pyinstaller 官方介绍

    http://www.pyinstaller.org/ pyinstaller支持多个平台,windows,linux,mac,兼容多个第三方包,包括pyqt,django,matplotlib Py ...