Цвета в терминале

Как работу в терминале сделать удобнее? Нужно добавить в неё краски! В этой статье я покажу как сделать цветное двухстрочное bash приглашение (PS1), как добавить подсветку синтаксиса в редактор nano и как добавить цвета для обычных Linux команд.
Цветное приглашение (PS1)🔗︎

Как показала практика, использование двухстрочного варианта приглашения bash является наиболее удобным решением. Появляется целая строка, в которую можно поместить любую необходимую вам информацию, да и любая вложенность текущей директории не будет причинять неудобств в работе.
Мой код формирования PS1 (файл ~/.bashrc):
INPUT_COLOR="\[\033[0m\]"
DIR_COLOR="\[\033[0;33m\]"
DIR="\w"
LINE_VERTICAL="\342\224\200"
LINE_CORNER_1="\342\224\214"
LINE_CORNER_2="\342\224\224"
LINE_COLOR="\[\033[0;37m\]"
USER_NAME="\[\033[0;32m\]\u"
SYMBOL="\[\033[0;32m\]$"
if [[ ${EUID} == 0 ]]; then
USER_NAME="\[\033[0;31m\]\u"
SYMBOL="\[\033[0;31m\]#"
fi
PS1="$LINE_COLOR$LINE_CORNER_1$LINE_VERTICAL $USER_NAME $DIR_COLOR$DIR \n$LINE_COLOR$LINE_CORNER_2$LINE_VERTICAL $SYMBOL $INPUT_COLOR"
Для более простой модификации в будущем, я решил формировать свой PS1 таким образом, с разделением на разные участки.
Цветной nano🔗︎

Для быстрого редактирования конфигурационных файлов многие (и я в том числе) используют редактор nano. По умолчанию в нём нет никакой подсветки синтаксиса, что, иногда, делает процесс чтения затруднительным. К счастью, подсветку синтаксиса можно легко добавить (команды предназначены для Arch Linux).
Установите пакет nano-syntax-highlighting-git из AUR.
$ yaourt -S nano-syntax-highlighting-git
Не забудьте скопировать пример конфигурационного файла в ~/.nanorc.
$ cat /usr/share/nano-syntax-highlighting/nanorc.sample | xargs -0 echo >> ~/.nanorc
Цветные команды🔗︎

Во первых, если вы используете sudo, вашему .bashrc обязательно понадобится это:
alias sudo='sudo '
Эта команда даёт bash понять, что после sudo есть слово, которое тоже следует проверить.
Затем идут стандартные alias команды для используемых программ:
alias ls='ls --color=always'
alias dmesg='dmesg --color=always'
alias grep='grep --color=always'
alias gcc='gcc -fdiagnostics-color=always'
alias pacman='pacman --color=always'
alias dir='dir --color=always'
alias diff='diff --color=always'
Подсветка для root пользователя🔗︎
Также следует добавить символическую ссылку на ваш .bashrc для root пользователя (username замените на имя своего пользователя):
# ln -s /home/username/.bashrc /root/.bashrc
Аналогично для .nanorc:
# ln -s /home/username/.nanorc /root/.nanorc