Home

понедельник, 9 ноября 2009 г.

Отбивные из терминала

Вы не любите терминал? Да вы его просто готовить не умеете.

Мне несколько раз попадались на глаза просьбы подсказать нормальный терминал для леопарда, в котором все работает.
Из чего пришлось сделать вывод: никто не берет на себя труд его настроить. В этом посте даю свой рецепт приготовления отбивных из терминала. Остальные опции каждый добавит по своему вкусу.

Запускаем терминал и вызываем окно настроек. Сразу переходим на закладку кодировок и отмечаем все необходимые для нас варианты кириллицы (UTF-8, Windows, KOI8-R, DOS и прочие)

term_encoding.png

Переходим на закладку Settings, выбираем в списке понравившуюся цветовую гамму, и жмем на Default чтобы сделать ее схемой по-умолчанию.

tm-charset.jpg.png

Тут же можно подправить настройки шрифта, цветов, курсора.

Переходим на закладку Startup и выбираем нашу цветовую схему как применяемую для всех новых окон терминала

term_startup.png

Возвращаемся в Settings на вкладку Advanced, убеждаемся что эмуляция типа терминала установлена в xterm-color, снята опция Escape non-ASCII symbols, кодировка по-умолчанию - UTF-8, и переменные окружения LANG устанавливаются согласно кодировке.

tm-charset.jpg.png

Осталось уговорить клавиатуру использовать клавиши Home, End, PgUp, PgDn как надо. Переходим на вкладыш Keyboard

Находим в списке непослушную клавишу и редактируем ее действие. Вместо прокрутки буфера туда-сюда заставляем посылать строку и заполняем нужным значением.

tm-keyboard.jpg.png

Откуда берутся такие дикие значения? Вспоминаем, что наш терминал эмулирует xterm-color, т.е. цветной терминал xterm. Идем на родину, на страницу xfree86org, где подробно расписаны коды управления терминалом xterm. Там находим, что

— Home равносильно \033OH
— End равносильно \033OF
— PgUp означает \033[5~
— PgDn - это \033[6~

Получается вот такой результат:

term_final.png

Ой.

1 коммент.:

Snupt комментирует...

Тоже пишу статью про терминал. Прямо сейчас. Вырежу то, о чем успел рассказать ты и дополню несколькими финтами. Или вообще разделю на части. Ты прям вовремя :)

Отправить комментарий