Xdefaults (Français)
From FrugalWiki
Dansk – Deutsch – English – Español – Français – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Polski – Português – Română – Slovenský – Suomi – Svenska – Türkçe – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어
Xresources et Xdefaults sont des fichiers de configuration, dotfiles de niveau utilisateur, situés à ~/.Xresources et ~/.Xdefaults. Ils peuvent être utilisés pour régler ou remplacer les préférences pour les applications X et X. Ils peuvent faire de nombreuses opérations, notamment:
- définir les couleurs du terminal
- configurer les préférences du terminal
- Régler le DPI, l'antialiasing, hinting and autres réglages de polices de X
- changer le thème de Xcursor
- Personnaliser xscreensaver
- Modifier les préferences de bas niveau des applications sous X (xclock, xpdf, etc.)
Lorsque ~/.Xresources est présent, il sera analysé par le programme xrdb (Xorg resource database) automatiquement quand Xorg se lance, et vous devez relancer xrdb ~/.Xresources à chaque fois que vous modifier le fichier. Si vous n'utilisez pas d'Environnements de Bureau, vous devez ajouter
xrdb -merge ~/.Xresources
à votre xinitrc. Utiliser ~/.Xresources stocke les ressources dans le serveur X, le fichier n'a pas besoin d'être relu à plusieurs reprises et il travaille pour des clients X à distance aussi. Le fichier ~/.Xdefaults est lu à chaque fois que vous lancez un programme X comme xterm — mais seulement si xrdb n'a jamais été utilisé durant la session actuelle de X. [1]
Contents
|
Mise en place
Créer .Xdefaults
Le fichier ~/.Xdefaults n'existe pas par défaut. Pour le créer, taper la commande suivante en tant qu'utilisateur:
Étant un fichier texte, ~/.Xdefaults peut être édité par l'éditeur de votre choix.
Réglages par défaut
Pour voir les réglages par défaut de vos applications X installées, regardez dans /usr/share/X11/app-defaults/.
Syntaxe Xdefaults
Syntaxe basique
La syntaxe de Xdefaults est de type:
name.Class.resource: value
Voici un exemple:
xscreensaver.Dialog.headingFont: -*-fixed-bold-r-*-*-*-100-*-*-*-*-iso8859-1
- name
- Le nom de l'application, comme xterm, xpdf, etc
- class
- La classification utilisée aux ressources regroupées. Les noms de classe sont généralement en majuscule
- resource
- Le nom de la ressource dont la valeur doit être changé. Les ressources sont généralement minuscules avec la concaténation en majuscule
- value
- La valeur actuelle de la ressource. Elle peut être de 1 à 3 sortes:
- Integer (nombre entier)
- Boolean (true/false, yes/no, on/off)
- String (une chaine de caractères) (par exemple un mot (white), une couleur (#ffffff), ou un chemin (/usr/bin/firefox))
- delimiters
- Une période (.) est utilisée pour signifier les étapes -- Dans l'exemple ci-dessus, on commence par le nom, puis la classe et enfin la ressource en elle même. Deux points (:) sert à séparer la déclaration de la ressource et sa valeur.
Jokers
L'asterisque peut être utiliser comme un joker, rendant plus aisé l'écriture d'une régle qui doit s'appliquer à plusieurs applications ou éléments.
En reprenant l'exemple précédant, si vous voulez appliquer la même police pour tous les programmes ( et pas seulement xscreensaver ) qui contiennent la class name Dialog et la resource name headingFont, vous pourriez écrire :
*Dialog.headingFont: -*-fixed-bold-r-*-*-*-100-*-*-*-*-iso8859-1
Si vous voulez appliquer cette même règle à tous les programmes qui contiennent la resource headingFont, sans mention de sa classe, vous pourriez écrire :
*headingFont: -*-fixed-bold-r-*-*-*-100-*-*-*-*-iso8859-1
Commenter
Pour ajouter un commentaire à votre fichier Xdefaults, préfixez le d'un point d'exclamation (!), par exemple:
! This is a comment placed above some Xft settings xft.dpi: 96 ! this is an inline comment
! The following rule will be ignored because it has been commented out !xft.antialias: true
Example d'utilisation
Les exemples suivants devraient fournir une bonne compréhension de la façon dont les paramètres d'application peuvent être modifiées en utilisant un fichier Xdefaults. Pour plus de détails, reportez-vous à la page de manuel de la demande en question.
Header du fichier
Si vous le souhaitez, vous pouvez ajouter en-tête de ~/.Xdefaults qui explique non seulement le contenu du fichier, mais aussi indiquer à vim la façon d'effectuer la coloration syntaxique et un autre formatage. Par exemple:
! ---------------------------------------------------------------------------- ! file: ~/.Xdefaults ! author: Thayer Williams - http://cinderwick.ca ! modified: November 2008 ! vim:enc=utf-8:nu:ai:si:et:ts=4:sw=4:ft=xdefaults: ! ----------------------------------------------------------------------------
Cela indique à vim d'utiliser UTF-8, de mettre les numéros de ligne d'affichage, l'indentation automatique, smart-tiret, les tabulations en espaces, définir des tabulations de 4 espaces, et régler l' autocommand File Type à "Xdefaults".
C'est une bonne habitude à prendre, surtout si vous souhaitez mettre votre dotfiles disponible au public.
Couleurs du terminal
La plupart des terminaux, incluant xterm and urxvt, supportent au moins 16 couleurs basiques. L'exemple suivant est un thème de 16 couleurs.
Les couleurs 0-7 sont les couleurs 'normales', alors que celles de 8-15 sont leur pendant 'vifs' (utiles pour le highlighting, etc.)
! terminal colors ------------------------------------------------------------ ! tangoesque scheme *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 ! DarkMangenta + Mangenta *color5: #ce5c00 *color13: #f57900 !DarkCyan + Cyan (both not tango) *color6: #89b6e2 *color14: #46a4ff ! LightGrey + White *color7: #cccccc *color15: #ffffff
Pour plus d'exemples de thèmes, allez à la section #Ressources en bas de cet article.
Préférences du bureau
Réglages de Xcursor
Régler le thème et la taille de votre curseur de souris:
! Xcursor -------------------------------------------------------------------- Xcursor.theme: Vanilla-DMZ-AA Xcursor.size: 22
Des thèmes sont disponibles dans /usr/share/icons et des thèmes locaux peuvent être installés dans ~/.icons.
Réglages des polices Xft
Vous pouvez définir les paramètres de police de base sans avoir besoin d'un fonts.conf ou environnement de bureau. Notez cependant, l'utilisation d'un environnement de bureau et / ou fonts.conf peut remplacer ces paramètres. Votre meilleure option est d'utiliser l'un ou l'autre, mais pas les deux.
! Xft settings --------------------------------------------------------------- Xft.dpi: 96 Xft.antialias: true Xft.rgba: rgb Xft.hinting: true Xft.hintstyle: hintslight
Préférences xterm
Cela ouvrira une fenêtre Xterm en caractères 80x25 avec un barre de défilement et faites défiler la capacité pour les 512 dernières lignes.
La police Terminus est une populaire police de terminal.
! xterm ---------------------------------------------------------------------- xterm*geometry: 80x25 xterm*faceName: terminusbold:pixelsize=14 !xterm*font: -*-dina-medium-r-*-*-16-*-*-*-*-*-*-* xterm*dynamicColors: true xterm*utf8: 2 xterm*eightBitInput: true xterm*saveLines: 512 xterm*scrollTtyKeypress: true xterm*scrollTtyOutput: false xterm*scrollBar: true xterm*rightScrollBar: true xterm*jumpScroll: true xterm*multiScroll: true xterm*toolBar: false
Préférences urxvt
Rxvt-unicode dispose d'une longue liste d'options qui peuvent être configurées via Xdefaults. Reportez-vous à la documentation d'urxvt pour plus de détails.
! rxvt-unicode --------------------------------------------------------------- ! font preference urxvt*font: -*-terminus-*-*-*-*-*-*-*-*-*-*-*-* urxvt*boldFont: -*-terminus-*-*-*-*-*-*-*-*-*-*-*-* !initial size urxvt*geometry: 120x35 !internal whitespace urxvt*internalBorder: 5 !fade text n% upon unfocus urxvt*fading: 20 !darken=(0 to 100) lighten=(-1 to -100) urxvt*shading: 30 !tint background with this color urxvt*tintColor: black !set to 32-bit for real transparency (compositing required) !urxvt*depth: 24 !save n lines of scrollback buffer urxvt*saveLines: 32767 !flash screen for attention urxvt*visualBell: true !jump to bottom (prompt) on keypress urxvt*scrollTtyKeypress: true !jump to bottom (prompt) when tty gets new lines urxvt*scrollWithBuffer: false !jump to bottom (prompt) on tty output urxvt*scrollTtyOutput: false !toggle scrollbar urxvt*scrollBar: false !scrollbar styles: rxvt, plain, next or xterm urxvt*scrollstyle: plain !scrollbar alignment urxvt*scrollBar_right: true urxvt*scrollColor: #777777 urxvt*cursorColor: #ffcc00 !enable pseudo-transparency (requires depth: 24 (see above)) urxvt*inheritPixmap: true !delimiters for double-click mouse selection urxvt*cutchars: "()*,<>[]{}|' !screen dump settings urxvt*print-pipe: cat > $(echo urxvt.dump.$(date +'%Y%M%d%H%m%S')) !secondary screen scroll (default enabled) urxvt*secondaryScroll: true !de-iconify (map) on receipt of a bell character urxvt*mapAlert: true !inhibit writing record into the system log file utmp urxvt*utmpInhibit: true !! BEGIN urlLauncher settings !! urxvt*perl-lib: /usr/lib/urxvt/perl/ urxvt*perl-ext-common: default,matcher urxvt*urlLauncher: /usr/bin/firefox urxvt*matcher.button: 1 !! END urlLauncher settings !! !transparent=0000 opaque=ffff urxvt*background: rgba:1111/1111/1111/dddd
Préférences aterm
Exemple de paramètres pour aterm (très similaire à 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
Préférences xpdf
Quelques réglages basiques pour xpdf, un visualisateur léger de Pdf:
! xpdf ----------------------------------------------------------------------- xpdf*enableFreetype: yes xpdf*antialias: yes xpdf*foreground: black xpdf*background: white xpdf*urlCommand: /usr/bin/firefox %s
Pour les paramètres autre que détaillé dans ce qui précède, vous devriez le placer dans ~/.xpdfrc. Voir la page de man de xpdf pour plus d'information. Note: viKeys is deprecated.
Horloge lal
! 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
Préférences xclock
Quelques réglages basiques pour xclock. Voir la man page de xclock pour voir toutes les ressources 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
Thèmes xscreensaver
Un exemple de thème xscreensaver. Pour plus d'information, référez vous à la man page de xscreensaver.
! xscreensaver --------------------------------------------------------------- !font settings 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-*-*-*-*-*-*-* !general dialog box (affects main hostname, username, password text) 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 input box and date text colour xscreensaver.Dialog.text.foreground: #666666 xscreensaver.Dialog.text.background: #ffffff xscreensaver.Dialog.internalBorderWidth:24 xscreensaver.Dialog.borderWidth: 20 xscreensaver.Dialog.shadowThickness: 2 !timeout bar (background is actually determined by Dialog.text.background) xscreensaver.passwd.thermometer.foreground: #ff0000 xscreensaver.passwd.thermometer.background: #000000 xscreensaver.passwd.thermometer.width: 8 !datestamp format--see the strftime(3) manual page for details xscreensaver.dateFormat: %I:%M%P %a %b %d, %Y
Préférences xcalc
Quelques réglages pour coloriser xcalc et personnaliser les boutons.
!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 !uncomment to change label on 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
Commandes pour thèmes de couleur
Commandes BASH rapides, que vous pouvez exécuter directement dans votre shell.
Énumérer les couleurs supportées par le terminal
Cela vous permettra de découvrir tous les terminaux qui supporte terminfo, et le nombre de couleurs que chacun supporte (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
Commande pour énumérer les capacités du terminal
Utile pour voir ce qui est supporté par votre terminal.
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
Commande pour montrer les 256 couleurs
Imprime toutes les 256 couleurs sur l'écran, très rapide.
(x=`tput op` y=`printf %80s`;for i in {0..256};do o=00$i;echo -e ${o:${#o}-3:3} `tput setaf $i;tput setab $i`${y// /=}$x;done)
Commande Lister les échappement tput
Remplacer 'tput op' avec ce vous voulez tracer. opest le premier plan par défaut et la couleur de fond.
( 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
Scripts de thème de couleur
N'importe lequel des scripts suivants afficher un graphique du système de votre couleur actuelle de terminal. Pratique pour les tests et autres joyeusetés.
Script #1
#!/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 forground 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
Script #2
#!/bin/bash # Original: http://frexx.de/xterm-256-notes/ # http://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 " └──────────────────────────────────────────────────────────────────────────┘"
Script #3
#!/bin/bash # Original: http://frexx.de/xterm-256-notes/ # http://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 " ----------------------------------------------------------------------------"
Script #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
Contributions de .Xdefaults
Consultez ces liens pour des exemples concrets de Xdefaults, offerts par des membres de la communauté:
- http://dotfiles.org/~buttons/.Xdefaults
- http://code.suckless.org/hg/dextra/file/513faba2591f/dolby/Xdefaults
- http://github.com/stxza/arch-linux-configs/tree/master/.Xdefaults
- http://github.com/jelly/dotfiles/tree/master/.Xdefaults
- http://bitbucket.jasonwryan.com/eeepc/src/tip/.Xdefaults
Un bon endroit pour commencer à faire vos propres couleurs par défaut :
*color0: black *color1: red3 *color2: green3 *color3: yellow3 *color4: blue2 *color5: magenta3 *color6: cyan3 *color7: gray90 *color8: gray50 *color9: red *color10: green *color11: yellow *color12: rgb:5c/5c/ff *color13: magenta *color14: cyan *color15: white
Ressources
- Terminal Color Schemes- une galerie par Griffin Aaron
- Using the Xdefaults File - Un article en profondeur sur la façon dont X interprète le Xdefaults
- Rxvt-unicode Configuration Tutorial - Beaucoup d'informations pour les utilisateurs de urxvt
- Available Colors and their names -liste des couleurs disponibles et leurs noms de couleurs pour xterm et autres X-applications.