Hosted by uCoz

Раскрашиваем консоль.

По умолчанию консоль обычно предстает перед нами в скупых черно-белых тонах. По началу это выглядит довольно стильно, но потом надоедает. Итак, если Вам наскучила ваша черно-белая консоль прошу приступить к ее окраске.

1.ls

Для начала сделаем самое простое - раскрасим вывод команды ls, что позволит легко отличать разные типы файлов. Я расскажу об утилите ls из комплекта ОС FreeBSD. В части, касающейся раскрашивания она заметно отличается от одноименной утилиты от проекта GNU, но ввиду полного отсутствия GNU-версии я о ней ничего рассказать не могу и оставлю это любопытному читателю. man ls говорит нам, что для цветного вывода требуется указать опцию -G или установить перемeнную окружения CLICOLOR. Я бы порекомендовал сделать alias "ls" "ls -FG" (синтаксис команды alias зависит от используемого shell'a), а также определить переменную CLICOLOR_FORCE. Например, указав в ~/.tcshrc setenv CLICOLOR_FORCE yes. При этом даже при перенаправлении вывода(например, команде less) цвета будут отображаться. О соответствии цветов и типов файлов можно узнать из man страницы ls. Меня вполне устраивают и умолчанные их значения, а экспериментаторам посоветую приглянуться к переменной LSCOLORS. Возможные ее значения описаны в секции ENVIRONMENT man ls. На этом повествование о боевой раскраске ls я заканчиваю и перехожу к раскраске редактора vim.

2.vim

Тут все то же очень просто - следует добавить следующий блок в свой файл ~/.vimrc if &t_Co > 2 || has("gui_running") syntax on set hlsearch endif Между прочим, VIM поддерживает цветовые схемы, доступные схемы вы можете увидетьв каталоге $PREFIX/share/vim/vim63/colors/, где $PREFIX - путь установки vim. Вы можете выбрать подходящую, используя команду :colorscheme <имя схемы>в обычном режиме, где <имя схемы> следует заменить на название файла из $PREFIX/share/vim/vim63/colors/ без суффикса vim. Например, :colorscheme evening. Выбрав понравившуюся вы можете добавить строку colorscheme <имя схемы> в файл ~/.vimrc.

3.gcc

Честно говоря именно раскраска gcc и вдохновила меня на написание этой заметки. Сразу предупреждаю - если вы догматик прошу удалиться. Потому что в этой части заметки рассказывается о действиях, противоречащих концепции файловой системы UNIX, и FreeBSD в частности. Если Вы все-таки остались расскажу подробнее, на самом деле все не так уж страшно. Вам придется разместить исполняемый файл colorgcc в каталог, расположенный в переменной $PATH ДО каталога бинарника GCC. Непонятно? Сейчас объясню. Когда Вы набираете команду в оболочке (например gcc) она(оболочка) проверяет каталоги из переменной $PATH по порядку. Вот пример моей $PATH: /sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/home/polachok/bin. Значит сначала shell ищет в каталоге /sbin, и ничего не обнаружив переходит к /bin, потом к /usr/sbin и т.д. до первого вхождения искомого слова (gcc), которое происходит по умолчанию в /usr/bin. Так вот, чтобы сделать вывод GCC разноцветным нам потребуется разместить скрипт-враппер colorgcc в одном из каталогов, стоящих до /usr/bin. Я выбрал для этой цели /bin, ибо sbin - это все же место административных утилит. После размещения скрипта требуется создать на него ссылки cc, gcc, g++ в этом же каталоге и настроить скрипт. По умолчанию он пытается запустить gcc из каталога /usr/local (где его скорей всего нет). Исправить это нам поможет файл ~/.colorgccrc (образец имеется в тарболе colorgcc),итак копируем образец в ~/.colorgccrc и в /root/.colorgccrc сделав необходимые изменения, а именно определив истинное местонахождение gcc сотоварищи. У меня вышло так: g++: /usr/bin/g++ gcc: /usr/bin/gcc c++: /usr/bin/c++ cc: /usr/bin/cc Цвета можно переопределить в том же файле. Тарболл colorgcc Вам придется найти самим.

Hosted by uCoz