简单地说,我知道你可以用 ctrl + v + tab 在bash语句中插入一个物理真实的制表符。但我如何为iTerm做同样的事情?
答案 0 :(得分:22)
答案是击中控制+ v,然后是标签,然后不是全部!希望这有助于某人。
答案 1 :(得分:1)
这不是iTerm,而是影响你如何插入标签的shell。
首先,确保您在BASH shell中:输入以下命令:
$ echo $RANDOM $BASH_VERSINFO
23714 3
第一个是随机数,第二个是BASH版本号。如果你得到一个空行或只是一个随机数,你就不在BASH shell中,这可能是你的问题之一。
另一件事是执行此命令:
$ set -o
allexport off
braceexpand on
emacs on
errexit off
errtrace off
[...]
privileged off
verbose off
vi off
trace off
感兴趣的两行是 emacs 和 vi 行。其中一个应该 on 。如果它们都关闭,则无法执行 Ctrl-V-Tab 来插入制表符。
当vi
模式启用时,它应该像你说的那样 Ctrl-V-Tab 。启用emacs
模式后,它可以是 Ctrl-V-tab ,也可能是 Ctrl-Q-tab 。
但是,这不是iTerm
的事情,这是你正在做的shell。
答案 2 :(得分:0)
如果通过“物理真实制表符”表示将标签hex code(0x09)发送到shell,则可以通过按Ctrl + Tab(^⇥)在iTerm中执行此操作。
这是默认设置,但您可以在iTerm>中更改它(以及添加要发送的其他十六进制代码值)。偏好>个人资料>密钥。
答案 3 :(得分:0)
我不确定为什么要将“bash声明”与iTerm进行比较。你在iTerm中编写bash脚本。这意味着,假设您在iTerm中编写脚本,那么您已经按照自己的意愿行事了。
我假设您的意思是在vi vs命令行中编写脚本。我在命令行上获取文字字符的方法是使用vi editing mode。做set -o vi
。然后你可以按照你习惯的方式使用 ctrl + v ,接着是 tab 。
IMO,使用vi编辑模式还带来了一系列其他优点,例如搜索历史记录,更快的导航等等。因此,如果您愿意,可以将其添加到.bashrc
,并始终使用它。 / p>
答案 4 :(得分:0)
还应该尝试Ctl + V Ctl +I。它在konsole中工作,而Ctl + V + Tab无效。