Раскраска консоли (Под свой вкус и цвет :))

Полезные советы и программы от пользователей нашего форума.

Модератор: Модераторы разделов

Аватара пользователя
Sonic
Сообщения: 478
Контактная информация:

Раскраска консоли

Сообщение Sonic »

Я ничего сам не придумывал, а просто взял две статьи:Здесь я просто напишу, что и как сделал. Наверно можно было бы и не писать, а просто оставить ссылки, НО я думаю никто меня ругать не будет, за такую наглость.

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


Начинаем.
Скорее всего вы сидите не под root'ом, поэтому выбираем своего основного пользователя и создаём файл .bashrc в его родном каталоге.

Код: Выделить всё

$ cd ~                    # переходим в корневой каталог вашего пользователя
$ mcedit .bashrc      # создаём файл .bashrc

Появится синие окно редактирования mc, туда я ввёл путём совмещения этих статей такие строчки:

Код: Выделить всё

# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
   . /etc/bashrc
fi

PS1="\[\033[1;31;40m[\033[1;33;40m\u\033[1;31;40m@\033[1;34;40m\h:\033[1;32;40m\w\033[1;31;40m]\]\033[1;37;40m "
export PS1
  
   echo -e "\033[1;31;40m************************************* \033[1;34;40m"
   echo -e "\033[1;31;40m*     Welcome in Slackware 10.1     * \033[1;34;40m"
   echo -e "\033[1;31;40m*     You are logged as:  \033[1;33;40m$USER\033[1;31;40m     * \033[1;34;40m"
   echo -e "\033[1;31;40m************************************* \033[1;37;40m"

Затем следует сделать вот так:
Создать файл .bash_profile

Код: Выделить всё

$ mcedit .bash_profile

и вписать туда: source ~/.bashrc

За расцветку строчки отвечает команда \033[1;31;40m - где 31 цвет, а 40 - обрамление, за что отвечает 1 я не понял(может кто скажет), вот рисунок основных цветов:
Изображение

Это не все цвета, там есть ещё и мигающие. Кому особо приспичит сами просмотрят.

Путём нехитрых преобразований можно будет поиздеваться ещё. К примеру можно будет выводить общие сведения о системе, дату и т.д. Так сказать фантазии нет предела :) Что особо радует.


Немного подправил
LinuxForum.ru :: Форум пользователей ОС Linux
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Раскраска консоли

Сообщение elide »

\033[1;31;40m - где 31 цвет, а 40 - обрамление, за что отвечает 1 я не понял(может кто скажет)
а что б и не сказать (:
1 или 0 определяет будет текст жирным или нормальным.
вот на той картинке с цветами, что ты приводил, дано по два вида текста "normal" & "bold" - это вот как раз 0 и 1.
слава роботам!
Спасибо сказали:
Аватара пользователя
madskull
Сообщения: 1019
Статус: Экс-металлюга
Контактная информация:

Re: Раскраска консоли

Сообщение madskull »

Добавлю отсебятину. Обратите внимание на \] после каждого цвета в строке приглашения.
Это сделано для того, чтобу у bash'а не ехала крыша при определении длины промпта и текст командной строки не "съезжал".
ArchLinux / IceWM
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Раскраска консоли

Сообщение elide »

кстати, раз уж пошло такое дело, то почему бы и не рассказать про раскраску любимого многими миднайта. ведь расскрасив его по своему вкусу можно не только сделать работу приятнее, но и избежать неприятных ошибок (у меня, например, рутовая настройка mc раскрашена с мрачно чорный цвет, поэтому я всегда знаю - если панели чорные, то F8 надо жать лишь хорошо подумав (: )
итак, настройки mc лежат в домашнем каталоге пользователя, т.е. в ~/.mc
из всего этого каталога, нас интересует лишь файл ini. так что, смело говорим mcedit ~/.mc/ini и читаем дальше.
как и всякий порядочный ini файл, файл ini, простите за каламбур, разбит на секции. нас интересует секция [Colors]. если таковой нет, то ее можно смело создать.
собственно в этой секции и описываются цветовые настройки mc.
определения цвета имеют вид:

Код: Выделить всё

<элемент_интерфейса>=<цвет_текста>,<цвет_подложки>:<элемент_интерфейса>= ...
Пример:

Код: Выделить всё

[Colors]
base_color=menu=magenta:marked=,magenta:markselect=,red
в качестве элементов для задания цветовой палитры могут использоваться:
1) в панелях: normal, selected, marked, markselect, errors, input, reverse, gauge
2) цвета пунктов меню: menu, menusel, menuhot, menuhotsel
3) цвета в окне диалога: dnormal, dfocus, dhotnormal, dhotfocus
4) цвета в окне подсказки: helpnormal, helpitalic, helpbold, helplink, helpslink
5) в окне программы просмотра: viewunderline
6) типов файлов: executable, directory, link, device, special, core
7) в окне редактора: editnormal, editbold, editmarked

Возможные цвета: black, gray, red, brightred, green, brightgreen, brown, yellow, blue, brightblue, magenta, brightmagenta, cyan, brightcyan, lightgray и white.

Для прозрачного фона используются специальное ключевое слово default.
Слово default можно использовать только при задании цвета фона.
Пример:

Код: Выделить всё

[Colors]
base_color=normal=white,default:marked=magenta,default
для большей полноты приведу свои настройки mc для root:

Код: Выделить всё

[Colors]
base_color=normal=lightgray,black:
selected=black:marked=,black:
directory=white,black:executable=green,black:link=,black:device=,black:special=,black:
editnormal=,black
слава роботам!
Спасибо сказали:
Аватара пользователя
Sonic
Сообщения: 478
Контактная информация:

Re: Раскраска консоли

Сообщение Sonic »

Как я понял, mc не в состоянии свои файлы настроек править. Ну ничего есть и другие редакторы :) .
LinuxForum.ru :: Форум пользователей ОС Linux
Спасибо сказали:
Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux
Контактная информация:

Re: Раскраска консоли

Сообщение polachok »

И немедленно выпил.
Спасибо сказали:
Аватара пользователя
Bolverk
Бывший модератор
Сообщения: 1571
ОС: Cygwin
Контактная информация:

Re: Раскраска консоли

Сообщение Bolverk »

Кодовая страница: Window$ 1251

Я-то юмор оценил, а мой браузер - нет!
Да, а вот ещё:
CCZE is a robust and modular log colorizer, with plugins for apm,
exim, fetchmail, httpd, postfix, procmail, squid, syslog, ulogd,
vsftpd, xferlog and more.
Спасибо сказали:
printf
Предупреждения: 0

Re: Раскраска консоли

Сообщение printf »

А в Слаке ls раскрашен по-умолчанию.
Спасибо сказали:
Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux
Контактная информация:

Re: Раскраска консоли

Сообщение polachok »

2Bolverk: мой тоже не оченил :) но чё-то я не пойму почему cp1251?
echo $LANG ru_RU.KOI8-R Писал в vim, в консоли, как всегда... они его что, на сервере перекодируют ?!
И немедленно выпил.
Спасибо сказали:
Аватара пользователя
Bolverk
Бывший модератор
Сообщения: 1571
ОС: Cygwin
Контактная информация:

Re: Раскраска консоли

Сообщение Bolverk »

Я посмотрел, написано в koi8-r, а сервер говорит, что cp1251.
А вот что меня на самом деле интересует, так это метод как-нибудь снять скриншот с консоли в графический файл. Чтобы со всеми цветами.
(косясь на цифровой фотик) Ну можно конечно и хардварными, но хотелось бы обойтись софтварными методами.
Спасибо сказали:
Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux
Контактная информация:

Re: Раскраска консоли

Сообщение polachok »

во FreeBSD делается почти штатными средствами... но думаю это тебя не интересует?
И немедленно выпил.
Спасибо сказали:
Аватара пользователя
Bolverk
Бывший модератор
Сообщения: 1571
ОС: Cygwin
Контактная информация:

Re: Раскраска консоли

Сообщение Bolverk »

Ну поскольку я вообще не представляю, с какой стороны подступить, то интересует.
Спасибо сказали:
Аватара пользователя
TIM
Сообщения: 91
ОС: FreeBSD

Re: Раскраска консоли

Сообщение TIM »

2Bolverk:

единственный случай, когда, действительно, без фотоаппарата не обойтись - когда что-то на фон консоли выводит оверлей ... (я писал об этом тут недавно ... про проигрывание фильмов в консоли ... :))

:) в FreeBSD скриншот консоли делается так:
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус
Контактная информация:

Re: Раскраска консоли

Сообщение KiWi »

если есть FB, то fbgrab
Спасибо сказали:
Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux
Контактная информация:

Re: Раскраска консоли

Сообщение polachok »

новинка! скрипт, раскрашивающий configure. написан мной :) пускать так:
./configure | colorify.sh (при наличии ./colorify.sh в ~/bin, например)
или ./configure | <path-to-colorify.sh>
http://polachok.narod.ru/colorify.sh
И немедленно выпил.
Спасибо сказали:
Аватара пользователя
deisler
Сообщения: 250

Re: Раскраска консоли

Сообщение deisler »

Может подскажете как в zsh цвета PROMPT задать?
Всех благ.
Спасибо сказали:
Аватара пользователя
valeri_ufo
Бывший модератор
Сообщения: 274
Статус: Everywhere, yet nowhere

Re: Раскраска консоли

Сообщение valeri_ufo »

Незнаю совсем ли в тему, но на днях когда хотелось спать и делать было нечего а интернета не было я написал скриптик который текст раскрашивает по вашему желанию, для ленивых, кому лень escape sequence руками вводить :) http://members.lycos.co.uk/valeriufo/colorizing.sh
PS: а, да, если у кого будут идеи или конкретные предложения по улучшению скрипта я буду рад если вы ими со мнои поделитесь :thumbsup:
PSS: да, а ещё он таблицу цветов выводит и заголовок у терминала
(типа aterm,rxvt,xterm) менять умеет :megalol:
Спасибо сказали:
Аватара пользователя
xorader
Сообщения: 1030
Статус: собирающий миры
ОС: Debian
Контактная информация:

Re: Раскраска консоли

Сообщение xorader »

Поставить
<meta http-equiv="Content-Type" content="text/html; charset=koi8-r">
религия не позвляет ? :blink:

хотя, таки да.. сервер отвечает "Content-Type: text/html; charset=windows-1251"... Попробуй скопировать в корневую папку файлик .htaccess с содержимым "AddDefaultCharset koi8-r"
Molchanov Alexander (aka Xor)
*offtopic* - ololo!
Спасибо сказали:
Аватара пользователя
Shura
Сообщения: 1537
Статус: Оказывается и без KDE есть жизнь
ОС: FreeBSD 8.0-RC2

Re: Раскраска консоли

Сообщение Shura »

Для TIM:
А как ты сделал цветной MOTD? Я пробовал вставлять в него эскейп последавательности как в промпте, но ничего не вышло, он их так символами и выводит.
Rock'n'roll мертв © БГ
Спасибо сказали:
Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux
Контактная информация:

Re: Раскраска консоли

Сообщение polachok »

Shura: надо так ^[[1;33m и тд. у меня работает в motd
И немедленно выпил.
Спасибо сказали:
Аватара пользователя
valeri_ufo
Бывший модератор
Сообщения: 274
Статус: Everywhere, yet nowhere

Re: Раскраска консоли

Сообщение valeri_ufo »

(xorader @ Понедельник, 08 Августа 2005, 9:02) писал(а):Поставить
<meta http-equiv="Content-Type" content="text/html; charset=koi8-r">
религия не позвляет ? :blink:

хотя, таки да.. сервер отвечает "Content-Type: text/html; charset=windows-1251"... Попробуй скопировать в корневую папку файлик .htaccess с содержимым "AddDefaultCharset koi8-r"


а разве на народе можно .htaccess использовать ?
Спасибо сказали:
Аватара пользователя
Sonic
Сообщения: 478
Контактная информация:

Re: Раскраска консоли

Сообщение Sonic »

Давайте про сайт в другом месте.
(xorader @ Понедельник, 08 Августа 2005, 15:02) писал(а):Поставить
QUOTE
<meta http-equiv="Content-Type" content="text/html; charset=koi8-r">
религия не позвляет ? blink.gif

хотя, таки да.. сервер отвечает "Content-Type: text/html; charset=windows-1251"... Попробуй скопировать в корневую папку файлик .htaccess с содержимым "AddDefaultCharset koi8-r"

Если я правильно понял, то какая разница, что хочет сервер? Просто настроен он по дефолту на cp1251 чтобы, если забыл прописать "Content-Type: text/html; charset=windows-1251" ничего страшного не было. Ведь на народе в большинстве своём, самые начинающие пользователи хостинга, со своими пагами.
Правильно говорят. Прописать надо просто Content-Type: text/html; charset=KOI8-R
Ведь это только для браузера.
LinuxForum.ru :: Форум пользователей ОС Linux
Спасибо сказали:
Аватара пользователя
Valerius
Бывший модератор
Сообщения: 1469
Статус: Отпетый КДЕ'шник

Re: Раскраска консоли

Сообщение Valerius »

(Sonic @ Понедельник, 08 Августа 2005, 21:03) писал(а):Если я правильно понял, то какая разница, что хочет сервер? Просто настроен он по дефолту на cp1251 чтобы, если забыл прописать "Content-Type: text/html; charset=windows-1251" ничего страшного не было. Ведь на народе в большинстве своём, самые начинающие пользователи хостинга, со своими пагами.
Правильно говорят. Прописать надо просто Content-Type: text/html; charset=KOI8-R

Если речь идёт о narod.ru, то в их хелпе написано:
В какой кодировке закачивать html файлы?
Файлы, размещаемые на Народе, должны быть в кодировке Windows-1251. Кроме того, не надо использовать meta-тег charset.
Свобода есть тонкая полоска между диктатурой и анархией.

---------------------
Mandriva Linux PowerPack 2006 (Cooker-нутая) / KDE-3.5.1
Спасибо сказали:
Аватара пользователя
Sonic
Сообщения: 478
Контактная информация:

Re: Раскраска консоли

Сообщение Sonic »

(Valerius @ Вторник, 09 Августа 2005, 2:17) писал(а):Если речь идёт о narod.ru, то в их хелпе написано:

Тогда остаётся только ковертить KOI8-R -> WINDOWS-1251
LinuxForum.ru :: Форум пользователей ОС Linux
Спасибо сказали:
Аватара пользователя
Asgard
Сообщения: 215
Статус: North Valfader
Контактная информация:

Re: Раскраска консоли

Сообщение Asgard »

долго парился с настройкой цветного приглашения в zsh'e, пока не вычитал, что вместо \033(aka ^[) zsh использует \e...
если кому интересно:
http://www.bsdforums.org/forums/archive/in...hp/t-18503.html
sator arepo tenet opera rotas ;)
------------------------------------------------------------
LJ
Спасибо сказали:
Аватара пользователя
solshark
Сообщения: 439
Статус: Монархист
ОС: Gentoo ~amd64
Контактная информация:

Re: Раскраска консоли

Сообщение solshark »

Sonic писал(а):
19.03.2005 15:35

Код: Выделить всё

   echo -e "\033[1;31;40m************************************* \033[1;34;40m"
   echo -e "\033[1;31;40m*     Welcome in Slackware 10.1     * \033[1;34;40m"
   echo -e "\033[1;31;40m*     You are logged as:  \033[1;33;40m$USER\033[1;31;40m     * \033[1;34;40m"
   echo -e "\033[1;31;40m************************************* \033[1;37;40m"


Вот эта гадина подавляет транспарентность моего терминала :) Как лечить?
Ceterum censeo Carthaginem esse delendam
Marcus Porcius Cato
Мой блог про KDE4 и рыбу в томате
Спасибо сказали:
Аватара пользователя
valeri_ufo
Бывший модератор
Сообщения: 274
Статус: Everywhere, yet nowhere

Re: Раскраска консоли

Сообщение valeri_ufo »

solshark писал(а):
11.11.2005 19:40
Вот эта гадина подавляет транспарентность моего терминала :) Как лечить?

а вы в конце добавьте \033[0m , т.е.

Код: Выделить всё

 echo -e "\033[1;31;40m************************************* \033[1;37;40m\033[0m"

PS: а разве не Welcome to Slackware 10.1 ?
Спасибо сказали:
Аватара пользователя
sergius
Сообщения: 782

Re: Раскраска консоли

Сообщение sergius »

Код: Выделить всё

   echo -e "\033[1;31;40m************************************* \033[1;34;40m"
   echo -e "\033[1;31;40m*     Welcome in Slackware 10.1     * \033[1;34;40m"
   echo -e "\033[1;31;40m*     You are logged as:  \033[1;33;40m$USER\033[1;31;40m     * \033[1;34;40m"
   echo -e "\033[1;31;40m************************************* \033[1;37;40m"

А не проще это прописать в /etc/motd? Или там работать не будет?
Спасибо сказали:
Аватара пользователя
solshark
Сообщения: 439
Статус: Монархист
ОС: Gentoo ~amd64
Контактная информация:

Re: Раскраска консоли

Сообщение solshark »

sergius писал(а):
11.11.2005 23:18

Код: Выделить всё

   echo -e "\033[1;31;40m************************************* \033[1;34;40m"
   echo -e "\033[1;31;40m*     Welcome in Slackware 10.1     * \033[1;34;40m"
   echo -e "\033[1;31;40m*     You are logged as:  \033[1;33;40m$USER\033[1;31;40m     * \033[1;34;40m"
   echo -e "\033[1;31;40m************************************* \033[1;37;40m"

А не проще это прописать в /etc/motd? Или там работать не будет?


А у меня такого файла нет. Подробнее с этого места, плиз.
Ceterum censeo Carthaginem esse delendam
Marcus Porcius Cato
Мой блог про KDE4 и рыбу в томате
Спасибо сказали:
Аватара пользователя
valeri_ufo
Бывший модератор
Сообщения: 274
Статус: Everywhere, yet nowhere

Re: Раскраска консоли

Сообщение valeri_ufo »

solshark писал(а):
12.11.2005 03:20
А у меня такого файла нет. Подробнее с этого места, плиз.

man motd
Спасибо сказали:
Ответить