下面两行命令使空格和制表符可见
set list
set listchars=tab:>~,space:.
set tabstop=8
- 这个命令含义是每隔8个字符设置一个制表位。假如当前光标位于第3个字符,按下tab键,会插入一个制表符,该制表符在显示上占据3-8位置的字符(实际上制表符只是一个字符) 。
- 此外有三种情况空格会转换为制表符,如果
set autoindent
,敲下回车,光标之前的空白如果包含制表位则使用相应的制表位替代
;如果set softtabstop=4
,敲下tab,光标之前的空白如果包含制表位则使用相应的制表位替代;如果set shiftwidth=4
,敲下>>
后,光标之前的空白如果包含制表位则使用相应的制表位替代。
set softtabstop=4
- 该设置的含义是每隔4个字符设置一个softtab位。假如当前光标位于第二个字符,按下tab,会使用空格填充2到4位置的字符,如果此时再按一下tab,首先用空格填充5-8位置的字符,然后3-4位置和5-8位置的空格会合并为一个制表符
set shiftwidth=4
- 该命令的含义是
>>
和<<
右移和左移的空格数。
set expandtab
- 该选项默认是关闭状态。设置该选项后,空格不会再转换为制表符,按下tab也不会产生制表符,而是使用空格填充。