Краткое предисловие
В мире *nix (в первую очередь я говорю о Linux) существует огромное множество эмуляторов терминала. Эмулятор терминала — это такая программа, которая позволяет работать с консолью в графическом режиме (из запущенного графического сервера, обычно это Xorg). Тем, кому начало этой статьи кажется непонятным дальше можно не читать. Остальные могут найти в ней что-нибудь интересное для себя.
Среди множества эмуляторов терминала XTerm занимает особое место, так как он является стандартным терминалом Xorg, находится в практически любом дистрибутиве и не зависит от Qt или GTK. Почему то среди многих людей укоренилось мнение, что XTerm не удобен, не настраивается и страшно выглядит. В этом топике я хочу развеять этот миф.
Предполётная подготовка
Итак, на вашем компьютере стоит какой-нибудь Linux дистрибутив (для BSD тоже должно подойти), настроен видеодрайвер и запущен Xorg. Xterm уже установлен и выглядит как-то так (все картинки кликабельны), тест стандартных цветов терминала показывает следующую цветовую гамму, или ещё хуже, когда буковки чёрные на белом фоне или белые на чёрном.
Крайне неприятное зрелище, правда? Лично у меня от такого терминала глаза начинают краснеть и слезиться, особенно, если учесть, что так он выглядит на 24 дюймовом FullHD мониторе. Шрифт настолько мелкий, что читать его делается очень тяжело. Мы хотим увеличить его размер, для этого кликаем в окне XTerm левой кнопкой мыши и… ничего не происходит. Для открытия простого диалога изменения настроек XTerm необходимо кликнуть в нём левой кнопкой мыши, удерживая клавишу Ctrl и не отпуская яё выбрать какие-либо пункты. Но такая настройка практически не даёт изменить внешний вид XTerm и не сохраняется после закрытия терминала.
Настраиваем сам Xterm
После настройки XTerm будет выглядеть так:
Для этого нам надо отредактировать файл .Xresources, лежащий в домашнем каталоге того пользователя, от имени которого вы запускаете эмулятор терминала (в 99% случаев это ваш домашний каталог).
Откройте его вашим любимым текстовым редактором. Если файл отсутствует, то его надо создать. Внимание, в этом файле могут быть настройки и других программ, их менять не надо, если это не старые настройки XTerm. Так же скопируйте содержимое файла .Xdefaults, если он существует и в нём есть какой-либо текст, так как после завершения настройки файл .Xdefaults использоваться не будет.
Теперь рассмотрим содержимое файла .Xresources, необходимое для правильного отображения Xterm. Внимание, вам потребуется также бесплатный шрифт Droid Sans Mono.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
!============================================================================== ! XTerm !============================================================================== !Кириллица XTerm*utf8Title: true XTerm*faceName: Droid Sans Mono XTerm*faceSize: 13 xterm*bolfFont: xterm*scrollBar: false xterm*geometry: 80x50 xterm*eightBitInput: false xterm*metaSendsEscape: true xterm*colorBDMode: true xterm*boldMode: on xterm*alwaysBoldMode: false xterm*dynamicColors: on xterm*colorMode: on xterm*saveLines: 10000 xterm*visualBell: false !============================================================================== ! Цвета !============================================================================== xterm*colorBD: #e6d51d xterm*background: #111111 xterm*foreground: #b4b4b4 ! Чёрный xterm*color0: #000000 xterm*color8: #555753 ! Красный xterm*color1: #b6212d xterm*color9: #ff6565 ! Зелёный xterm*color2: #4c8d00 xterm*color10: #6bbe1a ! Жёлтый xterm*color3: #ff8040 xterm*color11: #e6d51d ! Синий xterm*color4: #0086d2 xterm*color12: #00d2ff ! Маджента xterm*color5: #963c59 xterm*color13: #d3649f ! Циановый xterm*color6: #105952 xterm*color14: #177f75 ! Белый xterm*color7: #cdcaa9 xterm*color15: #ffffff |
Цвета задаются в шестнадцатеричном коде, так же как и в HTML. Все параметры понятны из названий, например, xterm*geometry: 80×50 означает, что размер окна XTerm будет 50 символов (строк) в высоту и 80 символов (столбцов) в ширину.
Бонус: выпадающий XTerm Yeahconsole
Мне понравилась такая расцветка, но я очень давно полюбил выпадающие терминалы, вроде Guake или Tilda. Настроить их в стиле XTerm, так, чтоб они выглядели точно так же не получилось, потому было принято решение сделать выпадающим терминалом XTerm. Поискав немного в интернете я нашёл готовое решение — Yeahconsole.
Yeahconsole может использовать в качестве терминала и другие эмуляторы, такие, как uxrvt, но о них в следующий раз. Настроим Yeаhconsole в том же самом стиле, для этого допишем в файл .Xresources следующий текст:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
!============================================================================== !Yeahconsole !============================================================================== yeahconsole*term:xterm yeahconsole*consoleHeight:25 yeahconsole*toggleKey:None+F12 yeahconsole*restart:1 yeahconsole*keyFull:None+F11 yeahconsole*saveLines:500 yeahconsole*keySmaller:Control+m yeahconsole*keyBigger:Control+n yeahconsole*aniDelay: 30 yeahconsole*metaSendsEscape: true !============================================================================== ! Цвета !============================================================================== yeahconsole*colorBD: #e6d51d yeahconsole*background: #111111 yeahconsole*foreground: #b4b4b4 ! Чёрный yeahconsole*color0: #000000 yeahconsole*color8: #555753 ! Красный yeahconsole*color1: #b6212d yeahconsole*color9: #ff6565 ! Зелёный yeahconsole*color2: #4c8d00 yeahconsole*color10: #6bbe1a ! Жёлтый yeahconsole*color3: #ff8040 yeahconsole*color11: #e6d51d ! Синий yeahconsole*color4: #0086d2 yeahconsole*color12: #00d2ff ! Маджента yeahconsole*color5: #963c59 yeahconsole*color13: #d3649f ! Циановый yeahconsole*color6: #105952 yeahconsole*color14: #177f75 ! Белый yeahconsole*color7: #cdcaa9 yeahconsole*color15: #ffffff |
Как вы могли догадаться, разница в настройке цветов лишь в том, что вместо xterm* надо писать yeahconsole*
Теперь вот что получилось:
Вы можете изменить цвета, шрифты и стили согласно вашим предпочтениям. Надеюсь всё было достаточно просто и понятно. Жду ваших комментариев и вопросов по настройке XTerm и Yeahconsole.