gpt4 book ai didi

linux - 如何在 Vim 或 Linux 中将空格转换为制表符?

转载 作者:IT老高 更新时间:2023-10-28 12:21:16 35 4
gpt4 key购买 nike

我查看了 Stack Overflow 上的几个问题,了解如何将空格转换为制表符而不找到我需要的内容。似乎有更多关于如何将制表符转换为空格的问题,但我正在尝试做相反的事情。

Vim 我试过 :retab:retab! 没有运气,但我相信这些实际上是从标签到无论如何都是空格。

我在命令提示符下尝试了 expandunexpand 都没有成功。

这是有问题的文件:

http://gdata-python-client.googlecode.com/hg-history/a9ed9edefd61a0ba0e18c43e448472051821003a/samples/docs/docs_v3_example.py

如何使用 Vim 或 shell 将 前导 空格转换为制表符?

最佳答案

使用 Vim 扩展所有 前导 空格(比 'tabstop' 更宽),使用 retab 是正确的但首先确保 'expandtab'被重置(:verbose set ts?et? 是你的 friend )。 retab 需要一个 range,所以我通常指定 %表示“整个文件”。

: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>

关于linux - 如何在 Vim 或 Linux 中将空格转换为制表符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9104706/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com