ls --color=auto
? Как вам цвет для директорий, нравится?На мой взгляд, тёмно-синий шрифт на чёрном фоне — это просто убийство глаз, поэтому я поставил себе за цель поменять цвет на какой-то более читабельный и удобный.
За цвета для
ls
«отвечает» утилита dircolors
. При запуске она выдаёт команды, которые нужно передать шеллу для настройки цветов. Обычно в конфигах шеллов есть отдельные строки, которые запускают dircolors
и создают алиас для ls
вида ls='ls --color=auto'
. В стандартном конфиге для bash в Debian Lenny эти строки выглядят так:if [ "$TERM" != "dumb" ]; then
eval "`dircolors -b`"
alias ls='ls -l -F --color=auto'
fi
eval `dircolors`
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
Отлично. Уже ясно, откуда берутся настройки цветов — осталось только научиться их менять. Для этого читаем ман…
…Читаем ман и узнаём, что
dircolors
'у можно передать файл, из которого будут прочитаны настройки. Для создания файла выполняем простую инструкцию:dircolors -p >~/.dir_colors
Пожалуй, стоит начать с чтения комментариев. Из них мы узнаём, что вид вывода задаётся перечислением атрибутов через точку с запятой. Доступны следующие атрибуты:
Атрибуты | |
00 | ничего |
01 | полужирный |
04 | подчёркивание |
05 | мигание |
07 | реверс |
08 | скрытие |
Цвета текста | |
30 | чёрный |
31 | красный |
32 | зелёный |
33 | жёлтый |
34 | синий |
35 | розовый |
36 | циан |
37 | белый |
Цвета фона | |
40 | чёрный |
41 | красный |
42 | зелёный |
43 | жёлтый |
44 | синий |
45 | розовый |
46 | циан |
47 | белый |
За цвет директории отвечает параметр DIR. У меня он выглядел так:
DIR 01;34 #directory
DIR 01;30;47 # directory
Осталась самая малость — научить шелл применять сделанные нами настройки. Это просто — в уже приводившихся участках конфигов
dircolors
должен быть заменён на dircolors ~/.dir_colors
. Настройки будут применены после сохранения конфига и перезагрузки шелла :)Have fun!
Копируете статью — поставьте ссылку!
8 комментариев:
Познавательно, но когда передо мной возникла такая же проблема, я её решил без использования этой утилиты (по какой-то причине не знал о ней до прочтения этой заметки). Я правил настройки терминала в ~/.Xresources (естественно для тех, которые ими управляются, например, xterm, rxvt-unicode).
Цвета директорий определяются переменной color12. Так, у меня записано для rxvt-unicode в ~/.Xresources следующее:
urxvt*color12: #8FB9DC
цвет явно помягче дефолтного, что и требовалось.
Привет!
по какой-то причине не знал о ней до прочтения этой заметкиЯ же по какой-то причине не знал о возможности поправить это через ~/.Xresources :)
В принципе, твоё решение более гибкое, т.к. позволяет задать произвольный цвет в RRGGBB. С другой стороны, ~/.Xresources играет роль только в иксах — в tty он уже побоку. Я, вобщем-то, не так уж часто бываю в tty, но всё же случается — иногда комп включается только для того, чтобы залить на флешку какой-то файлик.
В общем, спасибо за информацию! :)
тёмно-синий шрифт на чёрном фоне
Это да, страшно, наверное.
Но не вижу ничего плохого в синем полужирном на сером фоне (aka "Темная пастель" в kde)
razum2um пишет…
> тёмно-синий шрифт на чёрном фоне
Это да, страшно, наверное.
Сначала ничего, а вот к вечеру, когда глаза устанут, становится очень неприятно…
Но не вижу ничего плохого в синем полужирном на сером фоне (aka "Темная пастель" в kde)
Дело в том, что от KDE я отошёл уже достаточно давно, в качестве терминала юзаю urxvt — там никаких цветовых схем нет, просто окошко с шеллом, поэтому проблему пришлось решать именно со стороны шелла. Хотя вариант, предложенный Максимом Ивановым (первый комментарий), тоже имеет право на жизнь — может быть, даже большее, чем мой.
Добрый день. замечательная статья, спасибо огромное:-)... Интересный сайт хорошо описали
Спасибо ☺ Заходите ещё! ;)
Огромное спасибо, человек! Умаялся, настраивая цвета для urxvt-терминала. Ставлю, тестирую на ls и нулевой эффект.
Добавлю-ка я блог в букмарки. :)
~Zyamilon
Всегда пожалуйста ;) Обрати внимание, что я переехал на сторонний хостинг, так что в букмарки следует добавлять уже новый блог. Хотя в старом тоже есть что почитать, да.
Отправить комментарий
Примечание. Отправлять комментарии могут только участники этого блога.