X resources (Русский)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Состояние перевода: На этой странице представлен перевод статьи X resources. Дата последней синхронизации: 5 октября 2015. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Xresources - это настраиваемый на уровне пользователя dotfile ("точкафайл", dotfiles), как правило, находящийся по пути ~/.Xresources. Он может быть использован для установки ресурсов X, параметров настроек для клиентских приложений X.

Они может сделать много операций, в том числе:

  • определить цвета терминала
  • настроить предпочтения терминала
  • задать DPI монитора, сглаживание (antialiasing), хинтование (hinting) и другие настройки шрифтов X
  • изменить тему Xcursor
  • установить тему xscreensaver
  • изменять предпочтения низкоуровневых приложений X (xclock (xorg-xclock), xpdf, rxvt-unicode, и т.д.)
Примечание: Устарело использование ~/.Xdefaults, так что эта статья будет относиться только к ресурсам, загруженных с xrdb xrdb

Начинаем

Убедитесь, что пакет xorg-xrdb установлен на вашей системе.

Разбор .Xresources

Файл ~/.Xresources не существует по умолчанию. Это обычный текстовый файл, вы можете создавать и редактировать его с помощью любого текстового редактора. После создания, он будет "разобран" на программы xrdb (базы данных ресурсов Xorg) автоматически, при условии что вы либо:

  • используете Экранный менеджер (менеджер входа) чтобы войти в X. Большинство Экранных Менеджеров будут автоматически загружать файл ~/.Xresources на входе в систему.
  • если вы используете startx, вы должны отредактировать ~/.xinitrc. Для подробностей, смотрите ниже.

Ресурсы будут сохранены в X-сервере, так что файл не должен читаться каждый раз, когда приложение запускается.

Чтобы перечитать ваш файл .Xresources, и удалить старые ресурсы:

xrdb ~/.Xresources

Чтобы перечитать ваш файл .Xresources, и сохранить старые ресурсы:

xrdb -merge ~/.Xresources
Совет: ~/.Xresources это просто условное название; xrdb может загрузить любой файл. Если вы используете вручную xrdb, вы можете поместить этот файл в любом месте, где захотите (например, ~/.config/Xresources).
Примечание: Ресурсы загруженные с xrdb также доступны в удалённых клиентах X11 (таких как перенаправление на SSH).
Важно:
  • Если вы в фоне выполняете xrdb в цепи команд ~/.xinitrc, программы запущенные в той же цепи, не могут использовать его, так что рекомендуется никогда не запускать в фоне команды xrdb в ~/.xinitrc.
  • Старый и устаревший файл ~/.Xdefaults читается каждый раз при запуске программ X11 таких как xterm, но только если xrdb "никогда" не был использован в текущем сеансе X. [1]

Добавление к xinitrc

Если вы не используете Среду рабочего стола, добавьте следующую строку в xinitrc:

[[ -f ~/.Xresources ]] && xrdb -merge -I$HOME ~/.Xresources

Настройки по умолчанию

Для просмотра настроек по умолчанию для установленных приложений X11, смотрите /usr/share/X11/app-defaults/.

Подробная информация о конкретных программных ресурсах, как правило, предоставляется на страницах руководства программ (man). Хорошим примером является руководство xterm, так как оно содержит список ресурсов Х и их значения по умолчанию.

Чтобы увидеть текущие загружены ресурсы:

xrdb -query -all

Синтаксис Xresources

Основной синтаксис

Синтаксис файла Xresources заключается в следующем:

name.Class.resource: value (имя.Класс.ресурс: значение)

а вот реальный пример:

xscreensaver.Dialog.headingFont: -*-fixed-bold-r-*-*-*-100-*-*-*-*-iso8859-1
name (имя)
Название приложения, такое как Xterm, Xpdf и т.д.
class (класс)
Классификация используется для объединения ресурсов вместе. Имена классов, как правило, в верхнем регистре.
resource (ресурс)
Название ресурса, значение которого должно быть изменено. Ресурсы как правило в нижнем регистре, а для объединения в верхнем.
value (значение)
Фактическое значение ресурса. Это может быть 1 из 3-х типов:
  • Integer (целые числа)
  • Boolean (true/false, yes/no, on/off (т.е. верно/неверно, да/нет, вкл/выкл)
  • String (строка символов) (например слово (white), цвет (#ffffff), или путь (/usr/bin/firefox))
delimiters (разделители)
Точка (.) используется для обозначения каждого шага вниз по иерархии  —  в приведенном выше примере мы начали с name, затем спустились до Class, и наконец до самого resource. Двоеточие (:) используется, чтобы отделить описание ресурса от фактического значения.

Джокер соответствия (Wildcard matching)

Звездочка (*) может использоваться в качестве шаблона, что облегчает использование одного правила , которое может быть применено ко многим различным приложениям или элементам.

Воспользуемся предыдущим примером, если вы хотите применить тот же шрифт для всех программ (не только для XScreenSaver) которые содержат имя класса Dialog, и которое содержит имя ресурса headingFont, можно записать так:

*Dialog.headingFont:     -*-fixed-bold-r-*-*-*-100-*-*-*-*-iso8859-1

Если вы хотите применить это правило для всех программ, которые содержат ресурс headingFont, независимо от его класса, вы должны написать:

*headingFont:    -*-fixed-bold-r-*-*-*-100-*-*-*-*-iso8859-1

Комментарии

Чтобы добавить комментарий в файле Xresources, просто воспользуйтесь префиксом с воскрицательным знаком (!), например:

! Следующее правило будет игнорироваться, поскольку оно было закомментировано
!Xft.antialias:        true

Включение файлов

Чтобы использовать различные файлы для каждого приложения, используйте #include в главном файле. Например:

~/.Xresources
#include ".Xresources.d/xterm"
#include ".Xresources.d/rxvt-unicode"
#include ".Xresources.d/fonts"
#include ".Xresources.d/xscreensaver"

Если файлы не удалось загрузить, укажите каталог для xrdb с параметром -I. Например:

~/.xinitrc
xrdb -I$HOME ~/.Xresources

Примеры использования

Следующие образцы должны помочь понять какие настройки приложения могут быть изменены с помощью файла Xresources. Для получения подробной информации, обратитесь к справочной странице (man) приложения.

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

Большинство терминалов, в том числе xterm и urxvt, поддерживают по крайней мере 16 базовых цветов. Ниже приведён пример 16-цветовой гаммы. Цвета 0-7 представляют собой 'нормальные' цвета, а цвета 8-15 их 'яркие' дубликаты, используемые, например, для выделения. Хорошим началом для создания вашего Xresources, будет установка цветов терминала по умолчанию:

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

! Схема tangoesque 
*background: #111111
*foreground: #babdb6
! Black (not tango) + DarkGrey (Чёрный (не танго)+ТёмноСерый)
*color0:  #000000
*color8:  #555753
! DarkRed + Red (ТёмноКрасный+Красный)
*color1:  #ff6565
*color9:  #ff8d8d
! DarkGreen + Green (ТёмноЗелёный+Зелёный)
*color2:  #93d44f
*color10: #c8e7a8
! DarkYellow + Yellow (ТёмноЖёлтый+Жёлтый)
*color3:  #eab93d
*color11: #ffc123
! DarkBlue + Blue (ТёмноСиний+Синий)
*color4:  #204a87
*color12: #3465a4
! DarkMagenta + Magenta (ТёмноПурпурный+Пурпурный)
*color5:  #ce5c00
*color13: #f57900
!DarkCyan + Cyan (both not tango) (ТёмноГолубой+Голубой (оба не танго))
*color6:  #89b6e2
*color14: #46a4ff
! LightGrey + White (СветлоСерый+Белый)
*color7:  #cccccc
*color15: #ffffff

Смотрите man page (Русский)#Цветные страницы в xterm или rxvt-unicode[ссылка недействительна: раздел не найден] о том как xterm и rxvt автоматически "раскрашивает" полужирный и подчеркнутый текст.

Дополнительные примеры цветовых схем, смотрите в разделе #Представленные примеры (нижней части этой статьи).

Ресурсы Xcursor

Установите тему и размер вашего курсора мыши:

! Xcursor --------------------------------------------------------------------

Xcursor.theme: Vanilla-DMZ-AA
Xcursor.size:  22

Доступные темы хранятся в /usr/share/icons и местные (только для конкретного пользователя) темы могут быть установлены из ~/.icons.

Ресурсы Xft

Вы можете определить основные ресурсы шрифта без файла fonts.conf или среды рабочего стола.

Примечание: Тем не менее, использование среды рабочего стола и/или fonts.conf может изменить эти настройки.

Вашим лучшим выбором будет использование одного из них, но не обеих сразу.

! Xft settings ---------------------------------------------------------------

Xft.dpi:        96
Xft.antialias:  true
Xft.rgba:       rgb
Xft.hinting:    true
Xft.hintstyle:  hintslight

Ресурсы Xterm

Следующие ресурсы откроют xterm с размером окна 80x25 символов, полосой прокрутки и возможностью прокрутки последних 512 линий. Указанное семейство шрифтов по имени Terminus является популярным и "чистым" шрифтом для терминала.

! xterm ----------------------------------------------------------------------

xterm*VT100.geometry:     80x25
xterm*faceName:           Terminus:style=Regular:size=10
!xterm*font:              -*-dina-medium-r-*-*-16-*-*-*-*-*-*-*
xterm*dynamicColors:      true
xterm*utf8:               2
xterm*eightBitInput:      true
xterm*saveLines:          512
xterm*scrollKey:          true
xterm*scrollTtyOutput:    false
xterm*scrollBar:          true
xterm*rightScrollBar:     true
xterm*jumpScroll:         true
xterm*multiScroll:        true
xterm*toolBar:            false

Ресурсы rxvt-unicode (urxvt)

rxvt-unicode предоставляет большой список доступных опций, которые можно настраивать при помощи файла ~/.Xresources. Для получения дополнительной информации обратитесь к странице справочного руководства (man) urxvt или разделу rxvt-unicode (Русский)#Создание ~/.Xresources.

Предпочтения Aterm

Примеры настройки для Aterm (очень похожие на urxvt):

!aterm settings-------------------------------------------------------------     

aterm*background:               black
aterm*foreground:               white
aterm*transparent:              true
aterm*shading:                  30
aterm*cursorColor:              gray
aterm*saveLines:                2000
!aterm*tinting:                 gray
aterm*scrollBar:                false
!aterm*scrollBar_right:          true
aterm*transpscrollbar:          true
aterm*borderwidth:              0
aterm*font:                     -*-terminus-*-*-*-*-*-*-*-*-*-*-*-*
aterm*geometry:                 80x25
!aterm*fading:                  70

Ресурсы Xpdf

Ниже приведены некоторые основные ресурсы для xpdf, легковесного приложения для просмотра PDF:

! xpdf -----------------------------------------------------------------------

xpdf*enableFreetype:    yes
xpdf*antialias:         yes
xpdf*foreground:        black
xpdf*background:        white
xpdf*urlCommand:        /usr/bin/firefox %s

Больше информации чем указано выше, лежит в ~/.xpdfrc. Для подробной информации смотрите страницу man xpdf. Обратите внимание, что viKeys устарела.

Ресурсы Lal clock

! lal clock ------------------------------------------------------------------

lal*font:       Arial
lal*fontsize:   12
lal*bold:       true
lal*color:      #ffffff
lal*width:      150
lal*format:     %a %b %d %l:%M%P

Предпочтения Xclock

Некоторые основные настройки Xclock. Смотрите справочную страницу Xclock для всех ресурсов X.

! xclock ---------------------------------------------------------------------

xclock*update:            1
xclock*analog:            false
xclock*Foreground:        white
xclock*background:        black

Ресурсы X11-ssh-askpass

! x11-ssh-askpass ------------------------------------------------------------

x11-ssh-askpass*font:                   -*-dina-medium-r-*-*-12-*-*-*-*-*-*-*
x11-ssh-askpass*background:             #000000
x11-ssh-askpass*foreground:             #ffffff
x11-ssh-askpass.Button*background:      #000000
x11-ssh-askpass.Indicator*foreground:   #ff9900
x11-ssh-askpass.Indicator*background:   #090909
x11-ssh-askpass*topShadowColor:         #000000
x11-ssh-askpass*bottomShadowColor:      #000000
x11-ssh-askpass.*borderWidth:           1

Ресурсы XScreenSaver

Ниже приведен пример темы XScreenSaver. Для большей информации, посетите страницу man XScreenSaver.

Примечание: В старых версиях XScreenSaver, если файл ~/.xscreensaver существует, то он переопределяет любые настройки в базе данных X ресурсов. Тем не менее, в последних версиях вы можете использовать оба одновременно.
! xscreensaver ---------------------------------------------------------------

!Настройки шрифта
xscreensaver.Dialog.headingFont:        -*-dina-bold-r-*-*-12-*-*-*-*-*-*-*
xscreensaver.Dialog.bodyFont:           -*-dina-medium-r-*-*-12-*-*-*-*-*-*-*
xscreensaver.Dialog.labelFont:          -*-dina-medium-r-*-*-12-*-*-*-*-*-*-*
xscreensaver.Dialog.unameFont:          -*-dina-medium-r-*-*-12-*-*-*-*-*-*-*
xscreensaver.Dialog.buttonFont:         -*-dina-bold-r-*-*-12-*-*-*-*-*-*-*
xscreensaver.Dialog.dateFont:           -*-dina-medium-r-*-*-12-*-*-*-*-*-*-*
xscreensaver.passwd.passwdFont:         -*-dina-bold-r-*-*-12-*-*-*-*-*-*-*
!Общее диалоговое окно (влияет на текст: hostname, username, и password )
xscreensaver.Dialog.foreground:         #ffffff
xscreensaver.Dialog.background:         #111111
xscreensaver.Dialog.topShadowColor:     #111111
xscreensaver.Dialog.bottomShadowColor:  #111111
xscreensaver.Dialog.Button.foreground:  #666666
xscreensaver.Dialog.Button.background:  #ffffff
!username/password окно ввода и цвет текста date
xscreensaver.Dialog.text.foreground:    #666666
xscreensaver.Dialog.text.background:    #ffffff
xscreensaver.Dialog.internalBorderWidth:24
xscreensaver.Dialog.borderWidth:        20
xscreensaver.Dialog.shadowThickness:    2
!Бар таймаута (background фактически определяется Dialog.text.background)
xscreensaver.passwd.thermometer.foreground:  #ff0000
xscreensaver.passwd.thermometer.background:  #000000
xscreensaver.passwd.thermometer.width:       8
!Формат штампа даты -- смотрите руководство для уточнения деталей strftime(3)
xscreensaver.dateFormat:    %I:%M%P %a %b %d, %Y

Ресурсы Xcalc

Ниже приведены некоторые ресурсы Xcalc, раскрашивающие и настраивающие кнопки.

!xcalc-----------------------------------------------------------------------

xcalc*geometry:                        200x275
xcalc.ti.bevel.background:             #111111
xcalc.ti.bevel.screen.background:      #000000
xcalc.ti.bevel.screen.DEG.background:  #000000
xcalc.ti.bevel.screen.DEG.foreground:  LightSeaGreen
xcalc.ti.bevel.screen.GRAD.background: #000000
xcalc.ti.bevel.screen.GRAD.foreground: LightSeaGreen
xcalc.ti.bevel.screen.RAD.background:  #000000
xcalc.ti.bevel.screen.RAD.foreground:  LightSeaGreen
xcalc.ti.bevel.screen.INV.background:  #000000
xcalc.ti.bevel.screen.INV.foreground:  Red
xcalc.ti.bevel.screen.LCD.background:  #000000
xcalc.ti.bevel.screen.LCD.foreground:  LightSeaGreen
xcalc.ti.bevel.screen.LCD.shadowWidth: 0
xcalc.ti.bevel.screen.M.background:    #000000
xcalc.ti.bevel.screen.M.foreground:    LightSeaGreen
xcalc.ti.bevel.screen.P.background:    #000000
xcalc.ti.bevel.screen.P.foreground:    Yellow
xcalc.ti.Command.foreground:  White
xcalc.ti.Command.background:  #777777
xcalc.ti.button5.background:  Orange3
xcalc.ti.button19.background: #611161
xcalc.ti.button18.background: #611161
xcalc.ti.button20.background: #611111
!Расскомментируйте для изменения метки division button
!xcalc.ti.button20.label:      /
xcalc.ti.button25.background: #722222
xcalc.ti.button30.background: #833333
xcalc.ti.button35.background: #944444
xcalc.ti.button40.background: #a55555
xcalc.ti.button22.background: #222262
xcalc.ti.button23.background: #222262
xcalc.ti.button24.background: #222272
xcalc.ti.button27.background: #333373
xcalc.ti.button28.background: #333373
xcalc.ti.button29.background: #333373
xcalc.ti.button32.background: #444484
xcalc.ti.button33.background: #444484
xcalc.ti.button34.background: #444484
xcalc.ti.button37.background: #555595
xcalc.ti.button38.background: #555595
xcalc.ti.button39.background: #555595
XCalc*Cursor:                 hand2
XCalc*ShapeStyle:             rectangle

Команды цветовой схемы

Вот некоторые команды Баш, которые вы можете быстро выполнить прямо в оболочке.

Показать все 256 цветов

Очень быстро вывести все 256 цветов на экран.

(x=`tput op` y=`printf %76s`;for i in {0..256};do o=00$i;echo -e ${o:${#o}-3:3} `tput setaf $i;tput setab $i`${y// /=}$x;done)

Показать выход кодов tput

Замените tput op на тот tput который вы хотите проследить. По умолчанию op это цвет переднего плана (например текста) и заднего плана (фон).

$ ( strace -s5000 -e write tput op 2>&2 2>&1 ) | tee -a /dev/stderr | grep -o '"[^"]*"'
033[\033[1;34m"\33[39;49m"\033[00m

Перечисление цветов, поддерживаемые терминалами

Следующая команда позволит вам узнать все ваши терминалы с поддержкой terminfo, и число цветов поддерживаемых каждым терминалом. Возможные значения: 8, 15, 16, 52, 64, 88 и 256.

$ for T in `find /usr/share/terminfo -type f -printf '%f '`;do echo "$T `tput -T $T colors`";done|sort -nk2
Eterm-88color 88
rxvt-88color 88
xterm+88color 88
xterm-88color 88
Eterm-256color 256
gnome-256color 256
konsole-256color 256
putty-256color 256
rxvt-256color 256
screen-256color 256
screen-256color-bce 256
screen-256color-bce-s 256
screen-256color-s 256
xterm+256color 256
xterm-256color 256

Перечислить возможности терминала

Эта команда полезна, чтобы увидеть функции, которые поддерживаются вашим терминалом.

$ infocmp -1 | sed -nu 's/^[ \000\t]*//;s/[ \000\t]*$//;/[^ \t\000]\{1,\}/!d;/acsc/d;s/=.*,//p'|column -c80
bel	cuu	ich	kb2	kf15	kf3	kf44	kf59	mc0	rmso	smul
blink	cuu1	il	kbs	kf16	kf30	kf45	kf6	mc4	rmul	tbc
bold	cvvis	il1	kcbt	kf17	kf31	kf46	kf60	mc5	rs1	u6
cbt	dch	ind	kcub1	kf18	kf32	kf47	kf61	meml	rs2	u7
civis	dch1	indn	kcud1	kf19	kf33	kf48	kf62	memu	sc	u8
clear	dl	initc	kcuf1	kf2	kf34	kf49	kf63	op	setab	u9
cnorm	dl1	invis	kcuu1	kf20	kf35	kf5	kf7	rc	setaf	vpa

Цветные схемы скриптов

Любой из следующих скриптов будет отображать график вашей текущей цветовой гаммы терминала. Это удобно для тестирования и еще много чего.

Скрипт #1

#!/usr/bin/bash
#
#   This file echoes a bunch of color codes to the 
#   terminal to demonstrate what's available.  Each 
#   line is the color code of one foreground color,
#   out of 17 (default + 16 escapes), followed by a 
#   test use of that color on all nine background 
#   colors (default + 8 escapes).
#

T='gYw'   # The test text

echo -e "\n                 40m     41m     42m     43m\
     44m     45m     46m     47m";

for FGs in '    m' '   1m' '  30m' '1;30m' '  31m' '1;31m' '  32m' \
           '1;32m' '  33m' '1;33m' '  34m' '1;34m' '  35m' '1;35m' \
           '  36m' '1;36m' '  37m' '1;37m';
  do FG=${FGs// /}
  echo -en " $FGs \033[$FG  $T  "
  for BG in 40m 41m 42m 43m 44m 45m 46m 47m;
    do echo -en "$EINS \033[$FG\033[$BG  $T  \033[0m";
  done
  echo;
done
echo

Скрипт #2

#!/usr/bin/bash
# Original: https://web.archive.org/web/20130313011037/http://frexx.de/xterm-256-notes/
#           https://web.archive.org/web/20100507100922/http://www.frexx.de/xterm-256-notes/data/colortable16.sh
# Modified by Aaron Griffin
# and further by Kazuo Teramoto
FGNAMES=(' black ' '  red  ' ' green ' ' yellow' '  blue ' 'magenta' '  cyan ' ' white ')
BGNAMES=('DFT' 'BLK' 'RED' 'GRN' 'YEL' 'BLU' 'MAG' 'CYN' 'WHT')

echo "     ┌──────────────────────────────────────────────────────────────────────────┐"
for b in {0..8}; do
  ((b>0)) && bg=$((b+39))

  echo -en "\033[0m ${BGNAMES[b]} │ "
  
  for f in {0..7}; do
    echo -en "\033[${bg}m\033[$((f+30))m ${FGNAMES[f]} "
  done
  
  echo -en "\033[0m │"
  echo -en "\033[0m\n\033[0m     │ "
  
  for f in {0..7}; do
    echo -en "\033[${bg}m\033[1;$((f+30))m ${FGNAMES[f]} "
  done

  echo -en "\033[0m │"
  echo -e "\033[0m"

  ((b<8)) &&
  echo "     ├──────────────────────────────────────────────────────────────────────────┤"
done
echo "     └──────────────────────────────────────────────────────────────────────────┘"

Скрипт #3

#!/usr/bin/bash
# Original: https://web.archive.org/web/20130313011037/http://frexx.de/xterm-256-notes/
#           https://web.archive.org/web/20100507100922/http://www.frexx.de/xterm-256-notes/data/colortable16.sh
# Modified by Aaron Griffin
# and further by Kazuo Teramoto

FGNAMES=(' black ' '  red  ' ' green ' ' yellow' '  blue ' 'magenta' '  cyan ' ' white ')
BGNAMES=('DFT' 'BLK' 'RED' 'GRN' 'YEL' 'BLU' 'MAG' 'CYN' 'WHT')
echo "     ----------------------------------------------------------------------------"
for b in $(seq 0 8); do
    if [ "$b" -gt 0 ]; then
      bg=$(($b+39))
    fi

    echo -en "\033[0m ${BGNAMES[$b]} : "
    for f in $(seq 0 7); do
      echo -en "\033[${bg}m\033[$(($f+30))m ${FGNAMES[$f]} "
    done
    echo -en "\033[0m :"

    echo -en "\033[0m\n\033[0m     : "
    for f in $(seq 0 7); do
      echo -en "\033[${bg}m\033[1;$(($f+30))m ${FGNAMES[$f]} "
    done
    echo -en "\033[0m :"
        echo -e "\033[0m"
        
  if [ "$b" -lt 8 ]; then
    echo "     ----------------------------------------------------------------------------"
  fi
done
echo "     ----------------------------------------------------------------------------"

Скрипт #4

#!/usr/bin/env lua

function cl(e)
	return string.format('\27[%sm', e)
end

function print_fg(bg, pre)
	for fg = 30,37 do
		fg = pre..fg
		io.write(cl(bg), cl(fg), string.format(' %6s ', fg), cl(0))
	end
end

for bg = 40,47 do
	io.write(cl(0), ' ', bg, ' ')
	print_fg(bg, ' ')
	io.write('\n    ')
	print_fg(bg, '1;')
	io.write('\n\n')
end

-- Andres P

Скрипт #5

#!/usr/bin/bash
#
# ANSI color scheme script featuring Space Invaders
#
# Original: https://crunchbang.org/forums/viewtopic.php?pid=126921%23p126921#p126921
# Modified by lolilolicon
#

f=3 b=4
for j in f b; do
  for i in {0..7}; do
    printf -v $j$i %b "\e[${!j}${i}m"
  done
done
bld=$'\e[1m'
rst=$'\e[0m'

cat << EOF

 $f1  ▀▄   ▄▀     $f2 ▄▄▄████▄▄▄    $f3  ▄██▄     $f4  ▀▄   ▄▀     $f5 ▄▄▄████▄▄▄    $f6  ▄██▄  $rst
 $f1 ▄█▀███▀█▄    $f2███▀▀██▀▀███   $f3▄█▀██▀█▄   $f4 ▄█▀███▀█▄    $f5███▀▀██▀▀███   $f6▄█▀██▀█▄$rst
 $f1█▀███████▀█   $f2▀▀███▀▀███▀▀   $f3▀█▀██▀█▀   $f4█▀███████▀█   $f5▀▀███▀▀███▀▀   $f6▀█▀██▀█▀$rst
 $f1▀ ▀▄▄ ▄▄▀ ▀   $f2 ▀█▄ ▀▀ ▄█▀    $f3▀▄    ▄▀   $f4▀ ▀▄▄ ▄▄▀ ▀   $f5 ▀█▄ ▀▀ ▄█▀    $f6▀▄    ▄▀$rst

 $bld$f1▄ ▀▄   ▄▀ ▄   $f2 ▄▄▄████▄▄▄    $f3  ▄██▄     $f4▄ ▀▄   ▄▀ ▄   $f5 ▄▄▄████▄▄▄    $f6  ▄██▄  $rst
 $bld$f1█▄█▀███▀█▄█   $f2███▀▀██▀▀███   $f3▄█▀██▀█▄   $f4█▄█▀███▀█▄█   $f5███▀▀██▀▀███   $f6▄█▀██▀█▄$rst
 $bld$f1▀█████████▀   $f2▀▀▀██▀▀██▀▀▀   $f3▀▀█▀▀█▀▀   $f4▀█████████▀   $f5▀▀▀██▀▀██▀▀▀   $f6▀▀█▀▀█▀▀$rst
 $bld$f1 ▄▀     ▀▄    $f2▄▄▀▀ ▀▀ ▀▀▄▄   $f3▄▀▄▀▀▄▀▄   $f4 ▄▀     ▀▄    $f5▄▄▀▀ ▀▀ ▀▀▄▄   $f6▄▀▄▀▀▄▀▄$rst

                                     $f7▌$rst

                                   $f7▌$rst

                              $f7    ▄█▄    $rst
                              $f7▄█████████▄$rst
                              $f7▀▀▀▀▀▀▀▀▀▀▀$rst

EOF

Скрипт #6

#!/usr/bin/env ruby
# coding: utf-8
 
# ANSI color scheme script 
# Author: Ivaylo Kuzev < Ivo >
# Original: https://crunchbang.org/forums/viewtopic.php?pid=134749%23p134749#p134749
# Modified using Ruby.
 
CL = "\e[0m"
BO = "\e[1m"

R = "\e[31m" 
G = "\e[32m"
Y = "\e[33m"
B = "\e[34m"
P = "\e[35m"
C = "\e[36m"
  
print <<EOF 
 
#{BO}#{R}  ██████  #{CL} #{BO}#{G}██████  #{CL}#{BO}#{Y}   ██████#{CL} #{BO}#{B}██████ #{CL}  #{BO}#{P}  ██████#{CL} #{BO}#{C}  ███████#{CL}
#{BO}#{R}  ████████#{CL} #{BO}#{G}██    ██ #{CL}#{BO}#{Y}██ #{CL}      #{BO}#{B}██    ██#{CL} #{BO}#{P}██████ #{CL} #{BO}#{C} █████████#{CL}
#{R}  ██  ████#{CL} #{G}██  ████#{CL}#{Y} ████    #{CL} #{B}████  ██#{CL} #{P}████ #{CL}    #{C}█████ #{CL}
#{R}  ██    ██#{CL} #{G}██████ #{CL}#{Y}  ████████#{CL} #{B}██████ #{CL}  #{P}████████#{CL} #{C}██ #{CL}
 
EOF

Скрипт #7

#!/bin/sh
# Original Posted at https://crunchbang.org/forums/viewtopic.php?pid=126921%23p126921#p126921
# [ESC] character in original post removed here.

# ANSI Color -- use these variables to easily have different color
#    and format output. Make sure to output the reset sequence after
#    colors (f = foreground, b = background), and use the 'off'
#    feature for anything you turn on.

initializeANSI()
{
 esc="$(echo -en '\e')"

  blackf="${esc}[30m";   redf="${esc}[31m";    greenf="${esc}[32m"
  yellowf="${esc}[33m"   bluef="${esc}[34m";   purplef="${esc}[35m"
  cyanf="${esc}[36m";    whitef="${esc}[37m"

  blackb="${esc}[40m";   redb="${esc}[41m";    greenb="${esc}[42m"
  yellowb="${esc}[43m"   blueb="${esc}[44m";   purpleb="${esc}[45m"
  cyanb="${esc}[46m";    whiteb="${esc}[47m"

  boldon="${esc}[1m";    boldoff="${esc}[22m"
  italicson="${esc}[3m"; italicsoff="${esc}[23m"
  ulon="${esc}[4m";      uloff="${esc}[24m"
  invon="${esc}[7m";     invoff="${esc}[27m"

  reset="${esc}[0m"
}

# note in this first use that switching colors doesn't require a reset
# first - the new color overrides the old one.

#clear

initializeANSI

cat << EOF

 ${yellowf}  ▄███████▄${reset}   ${redf}  ▄██████▄${reset}    ${greenf}  ▄██████▄${reset}    ${bluef}  ▄██████▄${reset}    ${purplef}  ▄██████▄${reset}    ${cyanf}  ▄██████▄${reset}
 ${yellowf}▄█████████▀▀${reset}  ${redf}▄${whitef}█▀█${redf}██${whitef}█▀█${redf}██▄${reset}  ${greenf}▄${whitef}█▀█${greenf}██${whitef}█▀█${greenf}██▄${reset}  ${bluef}▄${whitef}█▀█${bluef}██${whitef}█▀█${bluef}██▄${reset}  ${purplef}▄${whitef}█▀█${purplef}██${whitef}█▀█${purplef}██▄${reset}  ${cyanf}▄${whitef}█▀█${cyanf}██${whitef}█▀█${cyanf}██▄${reset}
 ${yellowf}███████▀${reset}      ${redf}█${whitef}▄▄█${redf}██${whitef}▄▄█${redf}███${reset}  ${greenf}█${whitef}▄▄█${greenf}██${whitef}▄▄█${greenf}███${reset}  ${bluef}█${whitef}▄▄█${bluef}██${whitef}▄▄█${bluef}███${reset}  ${purplef}█${whitef}▄▄█${purplef}██${whitef}▄▄█${purplef}███${reset}  ${cyanf}█${whitef}▄▄█${cyanf}██${whitef}▄▄█${cyanf}███${reset}
 ${yellowf}███████▄${reset}      ${redf}████████████${reset}  ${greenf}████████████${reset}  ${bluef}████████████${reset}  ${purplef}████████████${reset}  ${cyanf}████████████${reset}
 ${yellowf}▀█████████▄▄${reset}  ${redf}██▀██▀▀██▀██${reset}  ${greenf}██▀██▀▀██▀██${reset}  ${bluef}██▀██▀▀██▀██${reset}  ${purplef}██▀██▀▀██▀██${reset}  ${cyanf}██▀██▀▀██▀██${reset}
 ${yellowf}  ▀███████▀${reset}   ${redf}▀   ▀  ▀   ▀${reset}  ${greenf}▀   ▀  ▀   ▀${reset}  ${bluef}▀   ▀  ▀   ▀${reset}  ${purplef}▀   ▀  ▀   ▀${reset}  ${cyanf}▀   ▀  ▀   ▀${reset}

 ${boldon}${yellowf}  ▄███████▄   ${redf}  ▄██████▄    ${greenf}  ▄██████▄    ${bluef}  ▄██████▄    ${purplef}  ▄██████▄    ${cyanf}  ▄██████▄${reset}
 ${boldon}${yellowf}▄█████████▀▀  ${redf}▄${whitef}█▀█${redf}██${whitef}█▀█${redf}██▄  ${greenf}▄${whitef}█▀█${greenf}██${whitef}█▀█${greenf}██▄  ${bluef}▄${whitef}█▀█${bluef}██${whitef}█▀█${bluef}██▄  ${purplef}▄${whitef}█▀█${purplef}██${whitef}█▀█${purplef}██▄  ${cyanf}▄${whitef}█▀█${cyanf}██${whitef}█▀█${cyanf}██▄${reset}
 ${boldon}${yellowf}███████▀      ${redf}█${whitef}▄▄█${redf}██${whitef}▄▄█${redf}███  ${greenf}█${whitef}▄▄█${greenf}██${whitef}▄▄█${greenf}███  ${bluef}█${whitef}▄▄█${bluef}██${whitef}▄▄█${bluef}███  ${purplef}█${whitef}▄▄█${purplef}██${whitef}▄▄█${purplef}███  ${cyanf}█${whitef}▄▄█${cyanf}██${whitef}▄▄█${cyanf}███${reset}
 ${boldon}${yellowf}███████▄      ${redf}████████████  ${greenf}████████████  ${bluef}████████████  ${purplef}████████████  ${cyanf}████████████${reset}
 ${boldon}${yellowf}▀█████████▄▄  ${redf}██▀██▀▀██▀██  ${greenf}██▀██▀▀██▀██  ${bluef}██▀██▀▀██▀██  ${purplef}██▀██▀▀██▀██  ${cyanf}██▀██▀▀██▀██${reset}
 ${boldon}${yellowf}  ▀███████▀   ${redf}▀   ▀  ▀   ▀  ${greenf}▀   ▀  ▀   ▀  ${bluef}▀   ▀  ▀   ▀  ${purplef}▀   ▀  ▀   ▀  ${cyanf}▀   ▀  ▀   ▀${reset}

EOF

Представленные примеры

Проверьте эти ссылки на реальном примере файлов ресурсов X, внесенных членами сообщества.

Примечание: ~/.Xdefaults имеет такой же синтаксис как в ~/.Xresources, и вам рекомендуется использовать ~/.Xresources потому что ~/.Xdefaults устарел в апстриме.

Решение проблем

Ошибки чтения (парсинга) файла ~/.Xresources

Экранные менеджеры, такие как GDM, могут запускать xrdb с опцией --nocpp.

Смотрите также