.vimrc--Tabs and Spaces

V0.1vim

Zhicheng Wuspa

2016-8-10 Initial.net

   

摘要:本文解释了vim中的tab与space的转换关系和建议的.vimrc配置。 orm

   

PS: vim的配置文件有/etc/vimrc, $HOME/.vimrc。其中/etc/vimrc是全局的vim配置文件,$HOME/.vimrc是我的的配置文件。如下的设置建议写在$HOME/.vimrc中。 blog

   

日常咱们在写代码时控制缩进能够是:get

制表符 Tab键 it

空格符 space键 table

缩进符 > 键 ast

   

建议的设置: 配置

set expandtab

set tabstop=4

set shiftwidth=4

set autoindent

set softtabstop=4

   

这样的结果是文本中的空白/自动缩进都是用space来实现,可是删除space却能够像删tab同样一次删去固定个字符宽度。

   

set expandtab

expandtab用来将tab键转换为space,实际存储是space而非tab

   

set tabstop=4

tabstop定义了tab键显示的宽度,如4即4个字符宽度。注意,实际显示时与4个space没有区别,可是存储到文件时是一个tab。读档案时,档案中的一个tab(\t)会显示为4个space字符宽度。

   

set shiftwidth=4

shiftwidth定义了自动缩进时的步进长度。如4即4个字符宽度。'shiftwidth'会在使用<< or >> or [count]< or [count]>中使用。

   

set softtabstop=4

在进行编辑(BS)操做时,space也能够像tab同样删除固定的space数量。

   

set autoindent

在敲击回车开始新行的时候复制当前行的缩进到新行中。

   

:retab

retab命令能够将文件中的tab键所有替换为space,若是没有定义替换的space数量,将使用tabstop定义的来进行全文替换。

   

<< or >>

在normal模式下,使用<<或>>能够调节文本的缩进。一个<<或>>是缩前或缩进1个'shiftwidth'步长。

   

[count]< or [count]>

在visual模式下,使用[count]< 或者[count]>能够定制地进行缩进,缩进or缩前的列数是[count] * 'shiftwidth'

   

-------------------------------------

[1] http://vimcasts.org/episodes/tabs-and-spaces/

[2] VIM实用技巧, Drew Neil, 杨源 车文隆译

[3] http://blog.csdn.net/chenxiang6891/article/details/41348073

相关文章
相关标签/搜索