Как вставить символ табуляции в Iterm?

Проще говоря, я знаю, что вы можете использовать ctrl+v+tab, чтобы вставить физически реальный символ табуляции в оператор bash. Но как мне сделать то же самое для iTerm?


person E.Cross    schedule 16.05.2012    source источник


Ответы (5)


Ответ заключался в том, чтобы нажать control+v, а затем вкладку, а не все вместе! Надеюсь, это поможет кому-то.

person E.Cross    schedule 18.05.2012

Не iTerm, а ваша оболочка влияет на то, как вы можете вставить вкладку.

Во-первых, убедитесь, что вы находитесь в оболочке BASH: введите следующую команду:

$ echo $RANDOM $BASH_VERSINFO
23714 3

Первое — это случайное число, а второе должно быть номером версии BASH. Если вы получаете пустую строку или просто случайное число, вы не находитесь в оболочке BASH, и это, вероятно, одна из ваших проблем.

Другое дело, выполнить эту команду:

$ set -o
allexport       off
braceexpand     on
emacs           on
errexit         off
errtrace        off
[...]
privileged      off
verbose         off
vi              off
trace           off

Интерес представляют две строки: emacs и vi. Один из них должен быть включен. Если они оба отключены, вы не сможете нажать Ctrl-V-Tab, чтобы вставить символ табуляции.

Когда режим vi включен, это должно быть Ctrl-V-Tab, как вы сказали. При включенном режиме emacs это либо Ctrl-V-tab, либо, возможно, Ctrl-Q-tab.

Однако это не iTerm, это делает ваша оболочка.

person David W.    schedule 17.05.2012

Если под «физически реальным символом табуляции» вы подразумеваете отправку табуляции шестнадцатеричный код ( 0x09) в оболочку, то сделать это можно в iTerm, нажав Ctrl+Tab (⌃ ⇥).

Это параметр по умолчанию, хотя вы можете изменить его (а также добавить другие значения шестнадцатеричного кода для отправки) в iTerm > Настройки > Профили > Ключи.

person Jamie    schedule 16.05.2012

Я не уверен, почему вы сравниваете «оператор bash» с iTerm. Вы пишете bash-скрипты в iTerm. Это означает, что если вы пишете свои сценарии в iTerm, вы уже делаете то, что хотите.

Я предполагаю, что вы имеете в виду сценарии в командной строке vi vs. Я получаю буквальные символы в командной строке с помощью vi режим редактирования. Сделайте set -o vi. Затем вы можете использовать ctrl+v, а затем tab, как вы привыкли.

ИМО, использование режима редактирования vi имеет множество других плюсов, таких как поиск по истории, более быстрая навигация и т. д. Так что вы можете просто добавить его в свой .bashrc, если хотите, и использовать его постоянно.

person Tim Pote    schedule 17.05.2012
comment
Скажем, мне нужно создать переменную, в которой есть вкладки, мне нужно будет сделать это так: var='hello[tab]Tim'. Я делаю это в командной строке, а не только в vi. - person E.Cross; 17.05.2012

Также следует попробовать Ctl + V Ctl + I. Он работает в консоли, где Ctl+V+Tab не работает.

person Atsou Jason    schedule 15.03.2020