2010-01-05 16 views
13

Фактически гном-терминал отображает вкладки в виде 8 пробелов, и это очень раздражает, когда вы создаете файлы кошек или просматриваете diff, есть ли способ изменить это навсегда?Как отображать вкладки в виде 4 пробелов в терминале gnome

+3

Кажется, больше вопросов для superuser.com. – glmxndr

+0

Кто-нибудь знает, в каком пакете содержится эта волшебная команда «tabs» на RHEL? –

ответ

4

Уникальное решение, которое я нашел, чтобы ввести в терминал:

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

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

PS: Это, очевидно, покрывает до 10 вкладок вкладок.

3

Вам нужно установить табуляцию на базовом tty, а не в самом гном-терминале.

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

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

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

+0

Setterm работает только в TTY, поэтому я применяю «вкладки», см. Следующий ответ. (Я не знаю этого раньше, так спасибо; D) – mkotechno

26

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

tabs -n 

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

+4

OP должен принять этот ответ. –

+0

Это не работает; он устанавливает первую остановку табуляции в точке n, а не в 1, даже если в документации указано иное. Это ошибка в 'tabs'. – ikdc

+2

Ну, это для меня. – sencer

2

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

3

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

tabs 1,+4,+4,+4,+4,... 
2

Если вы используете Баш, это то, что у меня в ~/.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 

Примечание кавычку вокруг «для ... сделанных» мелочей.

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

0

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