如何在 vim 中插入制表符(不是空格)?

How to insert Tabs(not spaces) in vim?

我想在 vim 中使用制表符(而不是空格)来缩进和特别按下 <Tab>。我在网上查找后更改了 .vimrc,但似乎不起作用。

.vimrc

au BufNewFile,BufRead *.py,*.pyw,*.c,*.h,*.pyx match BadWhitespace /\s\+$/
    \ set tabstop=4
    \ set shiftwidth=4
    \ set softtabstop=4
    \ set textwidth=79
    \ set noexpandtab
    \ set autoindent
    \ set fileformat=unix

set encoding=utf-8

当我使用 <C-v><Tab> 时会插入制表符,否则会插入空格而不是制表符。

每个命令之间需要 <bar> (|),并且可以将 set 连接在一起:

au BufNewFile,BufRead *.py,*.pyw,*.c,*.h,*.pyx match BadWhitespace /\s\+$/ |
    \ setlocal tabstop=4 shiftwidth=4 softtabstop=4 noexpandtab autoindent
    \ textwidth=79 fileformat=unix

set encoding=utf-8

您可以使用列表字符显示尾随空格 trail:

set listchars+=trail:-