我已经查看了有关 Stack Overflow 的几个问题,以了解如何将空格转换为制表符而没有找到我需要的内容。关于如何将制表符转换为空格似乎还有更多问题,但我正试图做相反的事情。
在 Vim
我尝试过 :retab
和 :retab!
没有运气,但我相信这些实际上是为了从制表符到空格。
我在命令提示符下尝试了 expand
和 unexpand
没有任何运气。
这是有问题的文件:
如何使用 Vim
或 shell 将 前导 空格转换为制表符?
原文由 cwd 发布,翻译遵循 CC BY-SA 4.0 许可协议
Using Vim to expand all leading spaces (wider than
'tabstop'
), you were right to useretab
but first ensure'expandtab'
is reset (:verbose set ts? et?
是你的朋友)。retab
需要一个 _范围_,所以我通常指定%
表示“整个文件”。在做这样的事情之前(特别是使用 Python 文件!),我通常设置
'list'
,这样我就可以 看到 空格并进行更改。为此, 我的
.vimrc
中有以下映射: