Терминал urxvt
Rxvt-unicode, в основном известный как urxvt - эмулятор терминала VT102 для X Window System. Изначально был форком rxvt, с добавленной поддержкой Unicode. Из дополнительных возможностей стоит отметить поддержку псевдопрозрачности, расширений на Perl (в том числе табы) и возможность отображения шрифтов посредством библиотеки Xft. Ещё одной интересной (и полезной) особенностью urxvt является возможность работать демоном, что уменьшает используемую память и время запуска при использовании нескольких терминалов.
Режим демона
В режиме демона используются команды urxvtd (собственно, запуск демона) и urxvtc (создание окна терминала), также можно использовать следующий скрипт:
#!/bin/sh urxvtc "$@" if [ $? -eq 2 ]; then urxvtd -q -o -f urxvtc "$@" fi
Внимание, если Вы используете Debian GNU/Linux (или что-либо из *buntu), данный скрипт уже входит в пакет rxvt-unicode и называется urxvtcd
Настройка
Вся настройка производится через ресурсы X сервера, в файле ~/.Xresources, также можно вынести в отдельный файл, который следует включить директивой
# include .urxvtrc
! -*- mode: xrdb; -*- ! геометрия (позиция, размер) окна (в символах). Стандартный размер: 80x24, увеличено для использования табов !URxvt.geometry: 82x26 ! используемый шрифт URxvt.font: xft:Consolas-10,xft:Monospace ! иконка для иксов URxvt*iconFile: /usr/share/pixmaps/urxvt_32x32.xpm ! расстояние между строками URxvt.lineSpace: 0 ! между символами URxvt.letterSpace: -1 ! цвет фона URxvt.background: #000000 ! цвет переднего плана URxvt.foreground: #f6f3e8 ! процент "гашения" цвета текста в неактивном окне URxvt.fading: 40 ! уменьшение (-100 .. -1) или увеличение (0 .. 100) яркости прозрачного фона URxvt.shading: 100 ! Псевдопрозрачность URxvt.transparent: false ! Цвет "гашения" текста URxvt.fadeColor: #666666 ! Цвет окрашивания прозрачного фона !URxvt.tintColor: #354040 ! стиль скроллбара URxvt.scrollstyle: plain ! цвет скроллера URxvt.scrollColor: #1A1A1A ! цвет основной части скролл-бара !URxvt.troughColor: #1A1A1A ! скроллбар URxvt.scrollBar: true ! прокрутка при выводе текста URxvt*scrollTtyOutput: False ! прокрутка по нажатию клавиши URxvt*scrollTtyKeypress: True URxvt*scrollWithBuffer: True URxvt*secondaryScroll: True ! расположение скроллбара URxvt.scrollBar_right: false URxvt.scrollBar_floating: true ! Мерцание курсора URxvt.cursorBlink: false ! включить расширения на perl: основные, парсер регулярных выражений(для подсветки URL) URxvt.perl-ext-common: default,matcher URxvt.matcher.button: 1 ! регексп для ссылок: URxvt.matcher.pattern.0: (?:https?:\\/\\/|ftp:\\/\\/|news:\\/\\/%7Cmailto:%7Cfile:\\/\\/%7C\\bwww\\.)\n\ [a-zA-Z0-9\\x{0410}-\\x{044F}\\-\\@;\\/?:&=%\\$_.+!*\\x27,~#]*\n\ (\n\ \\([a-zA-Z0-9\\x{0410}-\\x{044F}\\-\\@;\\/?:&=%\\$_.+!*\\x27,~#]*\\)| # Allow a pair of matched parentheses\n\ [a-zA-Z0-9\\x{0410}-\\x{044F}\\-\\@;\\/?:&=%\\$_+*~] # exclude some trailing characters (heuristic)\n\ )+ ! подчёркивать ссылки ! URxvt.underlineURLs: true ! браузер для открытия ссылок URxvt.urlLauncher: x-www-browser ! цвета табов (настройка для прозрачных терминалов) ! URxvt.tabbar-fg: 2 ! URxvt.tabbar-bg: -1 ! URxvt.tab-fg: 7 ! URxvt.tab-bg: -1
Вкладки
Чтобы включить вкладки в urxvt можно просто добавить модуль tabbed к списку загружаемых расширений (параметр URxvt.perl-ext-common ), а можно использовать более продвинутые и универсальные screen или tmux. Если не устраивают дефолтные клавиатурные комбинации для переключения вкладок, можно заставить urxvt эмулировать их более простыми следующим образом: ! с помощью Mod4-Left эмулируем нажатие C-a C-p (пред. окно screen) URxvt.keysym.4-Left: \001\020 ! Mod4-Right = C-a C-n (след. окно) URxvt.keysym.4-Right: \001\016 ! Mod4-Down = C-a C-c (нов. окно) URxvt.keysym.4-Down: \001\003