如何在使用vim的expandtab设置时显示制表符?

4
在我的.gvimrc文件中,我有以下几行代码:
set listchars=tab:\.\ ,trail:-
set softtabstop=2
set shiftwidth=2
set tabstop=2
set expandtab

当我将最后一行更改为set noexpandtab时,可以看到缩进,并用.标记。
有没有办法使vim像处理普通制表符一样处理扩展制表符,以便list选项按预期工作?
4个回答

2

列表选项按预期工作。它根据 'listchars' 的制表符设置显示制表符。听起来你把“制表符”和“缩进级别”混淆了。不,'list' 并不是设计用于明确标记不同的缩进级别。


1
你看不到它们,因为制表符被转换为空格。 你可以通过输入:retab!将空格转换为制表符。

可能你想要使用 :%retab! 命令,它可以转换整个文件而不仅仅是单独的一行。 - Mu Mind
1
@MuMind 不是的。retab 命令的默认范围是整个文件。 - Tassos

1
据我所见,您想要突出缩进。可以使用匹配高亮来实现这一点。请参阅我的答案,了解有关模拟缩进指南的问题的问题

1

使用涉及这些字符的标准vim选项在设置expandtab时无法奏效。您要么不标记扩展制表符,要么使用实际制表符,或者进行一些黑客攻击!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接