Код отслеживания Google Analytics.

Oct 15, 2007

Cygwin Terminals

Стандартный Сygwin-ский терминал не единственный из возможных. Подобно большинству программ, он не лишен недостатков - нет привычных операций выделения, при которых текст сразу попадает в clipboard, и вставки, довольно ограниченный набор шрифтов - но в целом он удовлетворит большинство Ваших запросов. Однако если Вам захочется разнообразия, то нет нужды себя ограничивать :)



Во всех, рассмотренных ниже терминалах, есть одна общая полезная функциональность - для выделения просто проведите мышкой с нажатой левой кнопкой. То, что Вы выделили, уже легло в буфер обмена и вам не нужно нажимать какие-либо клавиши. А для вставки Вам достаточно нажать колесико мыши.
RXVT.
Это настоящий "linux" терминал. Он есть в репозитории пакетов для Сygwin. Огромное кол-во настроек делает его весьма гибким инструментом в умелых руках. Один из путей использования - запустить как отдельную команду (сделать "иконку" сместо cygwin-новской по умолчанию):
C:\cygwin\bin\rxvt.exe -sr -sl 10000 -fg black -bg white -geometry 150x50 -e /bin/bash --login -i

где

C:\cygwin\bin\rxvt.exe - полный путь
sr - скроллинг справа
sl 10000 - размер "хистори"
fg black - цвет шрифта
bg white - цвет фона
geometry 150x50 - размер
e /bin/bash --login -i - команда, которую нужно выполнить.

Того же результата можно добиться добавив в файл ~/.Xresources следующее:
rxvt.geometry:        150x50
rxvt.scrollBar:       True
rxvt.visualBell:      True
rxvt.loginShell:      True
rxvt.background:      White
rxvt.foreground:      Black
rxvt.saveLines:       10000
rxvt.scrollBar_right: True

Тогда команду запуска можно сократить до
C:\cygwin\bin\rxvt.exe -e /bin/bash --login -i

Этот терминал может работать и под XServer и как обычное Windows-приложение. Параметр определяющий для него шрифт можно определить в ~/.Xresources.
rxvt.font:              -*-fixed-*-*-*-*-13-*-*-*-*-*-koi8-*

Правда тут есть одна тонкость - этот шрифт будет работать нормально под X-ами (предварительно необходимо подгрузить файл ресурсов - см. ниже пример этого для xterm). А вот в windows это будет выглядеть странно - слишком разрежённые буквы. Поэтому я запускаю rxvt в windows с принудительным переопределением шрифта -
C:\cygwin\bin\rxvt.exe -fn "Lucida Console-14" -e /bin/bash --login -i

а под XServer-ом использую ~/.Xresources с rxvt.font определённым выше.

xterm.
Это портированный под Сygwin один из старейших терминалов. Он функционирует исключительно как XClient и потому для его работы требуется XServer (о том кто такие XClient и XServer я расскажу позже). Как и rxvt Вы можете запускать его из командной строки, передав ему все необходимые параметры, а можно настроить параметры по дефолту положив их в ~/.Xresources. Я использую следующий набор параметров:
XTerm.color0: #000000
XTerm.color1: #b21818
XTerm.color2: #18b218
XTerm.color3: #BE5F00
XTerm.color4: #6D85BA
XTerm.color5: #b218b2
XTerm.color6: #18b2b2
XTerm.color7: #b2b2b2
XTerm.color8: #686868
XTerm.color9: #FF5454
XTerm.color10: #54FF54
XTerm.color11: #FFFF54
XTerm.color12: #73A5FF
XTerm.color13: #FF54FF
XTerm.color14: #54FFFF
XTerm.color15: #FFFFFF
XTerm.background:#FFFFFF
XTerm.foreground:#000000

*.VT100*scrollBar:        true
*.VT100*loginShell:       true
*.VT100*font:             -*-fixed-*-*-*-*-12-*-*-*-*-*-koi8-*

*.VT100*visualBell:       true
*.VT100*saveLines:        10000
*.VT100*rightScrollBar:   true
*.VT100*geometry:         130x40


Так как запуск XServer-а может быть произведен массой различных способов, то убедитесь, что в Вашем случае файл с ресурсами для xterm был подгружен к общей базе данный XClient-ов. Это можно сделать и руками с помощью следующей команды:
xrdb -merge ~/.Xresources

Так же стоит убедиться, что Ваша локаль правильно настроена. Это особенно важно для Сygwin, у которого с этим понятием полная путаница. Убедитесь что в окружении XServer-а переменная LANG определена и имеет значение ru_RU.KOI8-R, а не просто ru. Это позволит Вам видеть и использовать русский под xterm в Сygwin-е.

Terminator.
Это несколько медленный при загрузке, написанный на java и определяющий массу нестандартных подходов терминал. Однако в нем есть одна особенность, которая делает этот продукт очень привлекательным - в нем есть табы. Когда Вы работаете с большим кол-вом терминалов, то табы просто необходимы. Стандартный инструмент Linux под названием screen под Cygwin, к сожалению, не портирован. Так что стоит присмотреться к данной поделке повнимательней.

No comments: