Mac OSX X11 по русски. Или настраиваем xterm и Midnight Commander для работы с кириллицей.
Иногда необходимо запускать программы скомпилированные для X11, например Midnight Commander или подключиться к удаленному *nix компьютеру. Я для редактирования системных файлов на сервере предпочитаю использовать Midnight Commander с его двухпанельной системой, поддержкой удаленных файловых систем, широким набором файловых операций и неплохим встроенным редактором. Удобнее набрать sudo mc и получить мощный графический шелл для работы с файлами, чем набирать кучу команд в терминале. Проблема одна - в терминале Midnight Commander не поддерживает работу мыши, а это согласитесь не очень удобно! Для полноценной работы необходимо запустить его в xterm - стандартном терминале системы X11. Но если в terminal.app - вы без проблем получаете русскую локализацию, то для отображения кириллицы в X11 - необходимо проделать некоторые манипуляции. Вот этому и просвещенна моя заметка.
Устанавливаем Midnight Commander.
Можно попробовать собрать Midnight Commander из исходников, взятых с официального сайта (к сожалению бинарников для Mac OSX там нет). Но более простой путь воспользоваться готовой сборкой. Я рекомендую сборку от LouiSe - http://louise.hu/poet/?tag=mc. Скачиваем с сайта инсталляционный пакет (package) и устанавливаем.
У меня стоит сборка: GNU Midnight Commander, версия 4.7.5 Built with GLib 2.21.6 Using the ncurses library Со встроенным редактором With subshell support as default С поддержкой фоновых операций С поддержкой мыши в xterm С поддержкой интернационализации С поддержкой многих кодировок Virtual File Systems: cpiofs, tarfs, sfs, extfs, ftpfs, fish Data types: char: 8; int: 32; long: 32; void *: 32; size_t: 32; off_t: 64;
Настраиваем X11.
Если запустить X11.app из папки Программы/Утилиты - запуститься xterminal из которого можно запустить Midnight Commander набрав mc. Правда в начале вы увидите что все будет на английском, а названия русских файлов не будет отображаться. Вот с этим и будем бороться. Настройка locale.
В домашнем каталоге /Users/some_user открываем файл ~/.profile в текстовом редакторе и добавляем в конец следующие строки
LANG="ru_RU.UTF-8"; export LANG LC_CTYPE="ru_RU.UTF-8"; export LC_CTYPE LC_COLLATE="POSIX"; export LC_COLLATE LC_ALL="ru_RU.UTF-8"; export LC_ALL
Теперь "шел" понимает русский - осталось настроить отображение.
Настройка xterm.
Редактируем в домашней директории файл ~/.Xresources Если его нет - создаём командой touch ~/.Xresources В нем содержаться настройки X11, вот мой файл, но при желании вы конечно можете его изменить.
## file ~/.Xresources или ~/.Xdefaults ## XTERM SETTINGS ## see /usr/X11R6/lib/X11/doc/html/xterm.1.html ## или man xterm ## *XTerm*deleteIsDEL: true xterm*backarrowKeyIsErase: true ## РАЗМЕР ОКНА ПРИ СТАРТЕ (в символах) xterm*vt100*geometry: 115x44 ## ## ФОНТ ## можно подставить свой шрифт, выбрав его программой xfontsel ## например : *font: -misc-fixed-*-*-*-*-18-*-100-100-*-*-*-r ## ЦВЕТ ## основной и фоновый цвета терминал ##например darkblue grey90 AntiqueWhite seashell2 ivory2 RoyalBlue black и т.п. *foreground: black *background: grey88 ## но каждой программе можно присвоить и другие цвета. для примера - xcalc xcalc*foreground: black xcalc*background: white ## ## ## КУРСОР xterm*cursorBlink: true xterm*cursorColor: black ## ## форма указателя "мыши" выбираем из - arrow,XTerm, left_ptr, bogosity, ... xterm*pointerShape: left_ptr xterm*pointerColor: navyblue xterm*pointerColorBackground: white ## ## ПОЛОСА ПРОКРУТКИ - SCROLLBAR xterm*scrollBar: true xterm*rightScrollBar: true xterm*jumpScroll: true ## буфер окна 10000 строк xterm*saveLine: 10000 ## ## ДОПОЛНИТЕЛЬНЫЕ НАСТРОЙКИ SCROLLBAR ## СМ. /usr/X11R6/include/X11/Xaw/Scrollbar.h *Scrollbar.background: gray50 *Scrollbar.foreground: gray50 *Scrollbar.borderWidth: 0 *Scrollbar.shadowWidth: 0 *Scrollbar.thickness: 14 *Scrollbar.minimumThumb: 20 *Scrollbar.backgroundPixmap: gradient:horizontal?dimension=14&start=gray80&end=white *Scrollbar.borderPixmap: gradient:horizontal?dimension=14&start=white&end=grey80 *Scrollbar.translations: #override\ <Btn2Down>: StartScroll(Forward) \n\ <Btn1Down>: StartScroll(Continuous) MoveThumb() NotifyThumb() \n\ <Btn3Down>: StartScroll(Backward) \n\ <Btn1Motion>: MoveThumb() NotifyThumb() \n\ <BtnUp>: NotifyScroll(Proportional) EndScroll() ## ВЫДЕЛЕНИЕ xterm*highlightSelection: true xterm*trimSelection: true xterm*highlightColor: RoyalBlue ## ## НАСТРОЙКИ КЛАВИАТУРЫ ## ## Настраиваем клавиатуру как в ## OSX Terminal.app - copy/paste и др. *VT100.translations: #override\ <Key>Prior: scroll-back(1,pages) \n\ <Key>Next: scroll-forw(1,pages)\n\ Meta <KeyPress> K: clear-saved-lines() \n\ Meta <KeyUp> K: send-signal(int) \n\ Meta <KeyPress> P: print() \n\ Meta <KeyPress> minus: smaller-vt-font() \n\ Meta <KeyPress> KP_Subtract: smaller-vt-font() \n\ Meta <KeyPress> plus: larger-vt-font() \n\ Meta <KeyPress> KP_Add: larger-vt-font() \n\ Meta <KeyPress> C: select-cursor-start() \ select-cursor-end(PRIMARY, CUT_BUFFER0) \n\ Meta <KeyPress> V: insert-selection(PRIMARY, CUT_BUFFER0) \n\ Meta <KeyPress> M: iconify() \n\
Всё! Теперь X11 понимает русский! Убедиться в этом просто например команда ls покажет имена русских файлов корректно, а Midnight Commander будет на русском.
Последние настройки X11 - запускаем и в меню X11-настройки расставляем галочки как на рисунках.
«Cmd c», «cmd v» работает стандартно, «cmd -» «cmd +» уменьшают/увеличивают размер шрифта, «cmd k» очищает окно, и т.п.
Только не забудьте перезапустить X11.
Скачать файлы моей конфигурации можно отсюда - http://dl.dropbox.com/u/12110781/X11files.zip
Приятной вам работы за Маком!












