LINUX.ORG.RU

Цветная консоль


1

2

Хочу цветную консоль, вернее цветной вывод частоиспользуемых команд, - ls, ping и т.д.

Для этого уже существуют готовые решения типа cope-git, но оно на перле и вообще нужно ставить еще кучу пакетов. Я же в шелл-скриптинге не особо разбираюсь, но понимаю что такое возможно и пытаюсь реализовать подобное нативными средствами)..

http://ompldr.org/vYmJ5NA получается пока не очень).. собственно, какие вы могли бы предложить варианты, где это сделать проще? awk, sed? нужно просто распарсить получаемые данные построчно и иметь возможность раскрасить каждый символ/слово чтобы добавить туда цвета.

★★★★★
Ответ на: комментарий от power

LS_COLORS это исключительно раскраска файлов по их расширению, то что делает `dircolors -p /etc/dir_colors`. речь же идет о цветном выводе _любых_ команд.

Spoofing ★★★★★
() автор топика
Ответ на: комментарий от Spoofing

я извиняюсь, конечно, но блин, всех любых команд одного цвета? или каким чудом предполагается узнавать о том, какую букву в любом выводе каким цветов отображать?

billic ★★
()

Если стоит цель раскрасить всё, то тут я не помощник — слишком костыльные методы для этого нужны, оно того не стоит. Разумный минимум, который я использую? представлен в этом куске .bashrc

# enable color support of ls
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    alias dir='dir --color=auto'
    alias vdir='vdir --color=auto'

fi
# some more ls aliases
alias ll='ls -lh'
alias la='ls -lah'
alias l='ls -CF'
# moar colors
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'

[[ -f /usr/bin/grc ]] && {
 alias ping="grc --colour=auto ping"
 alias traceroute="grc --colour=auto traceroute"
 alias make="grc --colour=auto make"
 alias gcc="grc --colour=auto gcc"
 alias diff="grc --colour=auto diff"
 alias cvs="grc --colour=auto cvs"
 alias netstat="grc --colour=auto netstat"
}

aidaho ★★★★★
()
Ответ на: комментарий от aidaho

Ещё вывод less покрашен:

export LESS_TERMCAP_mb=$'\E[01;31m'
export LESS_TERMCAP_md=$'\E[01;31m'
export LESS_TERMCAP_me=$'\E[0m'
export LESS_TERMCAP_se=$'\E[0m'
export LESS_TERMCAP_so=$'\E[01;44;33m'
export LESS_TERMCAP_ue=$'\E[0m'
export LESS_TERMCAP_us=$'\E[01;32m'

aidaho ★★★★★
()
Ответ на: комментарий от aidaho

Если стоит цель раскрасить всё, то тут я не помощник — слишком костыльные методы для этого нужны, оно того не стоит.

Тем же grc и оборачиваем все команды, до которых руки дотянутся. И пилим универсальный конфиг, который подойдёт к куче программ.

geekless ★★
()
Ответ на: комментарий от geekless

О, спасибо, что-то утащу себе. Я уже когда-то брал из твоего .bashrc вывод текущей команды в заголовок эмулятора терминала и запилил туда поддержку screen, т.к. раздавать названия руками ломает :)

aidaho ★★★★★
()

используй fish там вообще радуга

zolden ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.