Как отображать вкладки как 4 пробела в gnome-терминале

На самом деле вкладки gnome-терминала отображаются как 8 пробелов, и это очень раздражает, когда вы запускаете файлы cat или просматриваете различия, есть ли способ изменить это навсегда?


person Htechno    schedule 05.01.2010    source источник
comment
Кажется, это больше вопрос для superuser.com.   -  person glmxndr    schedule 05.01.2010
comment
Кто-нибудь знает, какой пакет содержит эту команду волшебных вкладок на RHEL?   -  person Dan Pritts    schedule 02.08.2013


Ответы (7)


Вместо того, чтобы выписывать явный список позиций табуляции, вы также можете использовать неявные интервалы:

tabs -n

Это установит позиции табуляции каждые n столбца. Для получения дополнительной информации ознакомьтесь с справочной страницей для вкладок по адресу http://manpages.ubuntu.com/manpages/maverick/en/man1/tabs.1.html.

person Stephan Klein    schedule 26.04.2011
comment
Это не работает; он устанавливает первую позицию табуляции на n, а не на 1, хотя в документации указано иное. Это ошибка в tabs. - person Lily Chung; 29.03.2014
comment
Ну, это делает для меня. - person sencer; 28.04.2014

Уникальное решение, которое я нашел, - это ввести терминал:

tabs 5,9,13,17,21,25,29,33,37,41

и добавьте его в ~/.bashrc, если вам нужны постоянные изменения.

PS: это, очевидно, покрывает до 10 отступов табуляции.

person Htechno    schedule 05.01.2010

Вам нужно установить ширину вкладки на базовом tty, а не в самом терминале gnome.

Теоретически вы должны иметь возможность использовать «setterm -regtabs 4», чтобы установить ширину табуляции на 4 в вашем .bashrc.

Кажется, это не работает в моем дистрибутиве Linux, но работает, когда я использую ssh из удаленной системы.

Самый простой способ сбросить ширину табуляции до 8 — использовать «табуляции -8» (табы -d8, чтобы увидеть изменение).

person Petesh    schedule 05.01.2010
comment
Setterm работает только в TTY, поэтому я применяю «вкладки», см. следующий ответ. (Я не знал этого раньше, так что спасибо ;D) - person Htechno; 05.01.2010

Проблема с использованием «вкладки -4» заключается в том, что первая позиция табуляции отключена на единицу (по крайней мере, в моей системе). Например, если я наберу «вкладки -4», первая позиция табуляции будет начинаться в 4-м столбце с 3 пробелами перед ней вместо 4. Последующие позиции табуляции будут правильно разделены 4 пробелами. Обходной путь — указать позиции табуляции следующим образом:

tabs 1,+4,+4,+4,+4,...
person Chad Cloman    schedule 10.03.2013

Вы также можете сделать табуляцию -4, и она будет устанавливать табуляцию в каждом 4-м столбце.

person seonghuhn    schedule 02.01.2012

Если вы используете bash, вот что у меня есть в ~/.bashrc:

# set tabs to width TABWIDTH
TABWIDTH=4
# for less(1) the option -x4 was added (see above);
# other programs may need their own flags
setterm -regtabs ${TABWIDTH} </dev/tty
tabs -0 </dev/tty
# this erroneously imho sets the first tab at offset 3, not offset 4:
#tabs 1,+${TABWIDTH} </dev/tty
# this works:
tabs 1`for i in {0..40}; do echo -n ",+${TABWIDTH}"; done`
unset TABWIDTH

Обратите внимание на обратные кавычки вокруг фразы «для... сделано».

edit: последний «+4» перед оператором «done», конечно же, должен был быть +${TABWIDTH}.

person Roadowl    schedule 08.12.2013

вкладки 1,5,9,13,17,21,25 и т. д. работают не совсем корректно. При вводе, при возврате на вкладку, gnome-terminal возвращается на 8 пробелов, а не на четыре. Похоже, здесь есть ошибка gnome-терминала. (Примечание: вы не увидите этого при вводе в оболочке, потому что она узурпирует вкладки для завершения файла. Сначала вам нужно запустить cat или dc или какую-либо другую команду, которая не использует символы табуляции для своих целей.)

person Tom Duff    schedule 10.08.2016