我已经查看了几个关于Stack Overflow的问题,如何将空格转换为标签,但没有找到我需要的。似乎有更多的问题,如何将标签转换为空格,但我试图做相反的。
在Vim我试过:retab和:retab!没有运气,但我相信这些实际上是从标签到空间反正。
我尝试在命令提示符下展开和展开,没有任何运气。
这里是有问题的文件:
如何使用Vim或shell将前导空格转换为制表符?
使用Vim扩展所有领先的空间(大于
'tabstop'
),你是正确的使用
retab
,但首先确保
'expandtab'
重置(:verbose set ts?et?是你的朋友)。 retab需要一个范围,所以我通常指定
%
表示“整个文件”。
:set tabstop=2 " To match the sample file :set noexpandtab " Use tabs,not spaces :%retab! " Retabulate the whole file
在做这样的事情之前(特别是使用Python文件!),我通常设置'list'
,以便我可以看到空格和更改。
我在my .vimrc
有这样的映射:
nnoremap <F2> :<C-U>setlocal lcs=tab:>-,trail:-,eol:$ list! list? <CR>