vim - 固定宽度标签

时间:2014-04-09 13:12:57

标签: vim

<Tab>
<Space><Tab>

在这种情况下,第一个标签的宽度为tabstop字符,但第二个标签的宽度为tabstop-1个字符。如何使所有标签始终为tabstop字符宽?

1 个答案:

答案 0 :(得分:2)

tabstops的定义特征是他们&#34; snap&#34;到某些位置(在Vim中,'tabstop'设置的倍数)。您想要的是不同的东西,并且使用\t = <Tab> = ASCII 0x09字符无法实现(在我知道的任何编辑器中)。

您可以做的是定义一个映射,当您按 Tab 键时插入'tabstop'个空格:

:inoremap <expr> <Tab> repeat(' ', &tabstop)

(当然,您也可以为此选择另一个密钥,或者使用<buffer>将此缓冲区设为本地。)