通常我想nano用空格替换制表符,所以我set tabstospaces在我的.nanorc文件中使用。有时,我想对nano需要真正制表符的 makefile 进行快速编辑。
有没有办法动态切换tabstospaces?大多数其他选项都有切换它们的键,但我找不到相关的东西。我也试过使用^I(默认情况下绑定到tab函数)来插入一个选项卡,但这尊重tabstospaces设置。
我目前的解决方法是set tabstospaces取出我的.nanorc文件并添加 shell 别名:
alias nanotabs="$(which nano)"
alias nano="$(which nano) --tabstospaces"
Run Code Online (Sandbox Code Playgroud)
don*_*sti 14
切换tabstospaces的快捷方式是
Shift+ Alt+ Q(或Meta+ Q)。
您将看到提示更改为:
[ Conversion of typed tabs to spaces disabled ]
Run Code Online (Sandbox Code Playgroud)
或者
[ Conversion of typed tabs to spaces enabled ]
Run Code Online (Sandbox Code Playgroud)
分别。
另一种方式(仅适用于nano1.3.1或更新版本):
如果您输入您可以将文字标签逐字输入模式Shift+ Alt+ V(或Meta+ V)。
如果您然后键入Tab,nano将插入一个文字制表符,无论您的.nanorc设置如何。然后它将恢复到常规输入模式(因此,如果您需要键入第二个文字选项卡等,则必须再次进入逐字输入模式)。
您还可以将自己的逐字输入模式快捷方式添加到.nanorc,例如Ctrl+ T:
#Edit
bind ^T verbatim main
Run Code Online (Sandbox Code Playgroud)