Je viens de croiser une capture d'écran du terminal de quelqu'un:
Existe-t-il une liste de tous les personnages qui peuvent être utilisés dans une invite Bash, ou quelqu'un peut-il me donner le personnage pour l'étoile et la flèche droite?
Vous pouvez utiliser n'importe quel caractère imprimable, cela ne dérange pas bash. Vous voudrez probablement configurer votre terminal pour prendre en charge nicode (sous la forme TF-8 ).
Il y a beaucoup de caractères dans Unicode, alors voici quelques conseils pour vous aider à parcourir les graphiques Unicode:
Ǫ
et ı
sont des lettres latines avec des modificateurs; ∉
est un symbole mathématique, etc.P.S. Sur Shapecatcher, j'ai eu + 2234 DONC pour ∴
, + 2192 FLÈCHE VERS LA DROITE pour →
, + 263F MERCURE pour ☿
et + 2605 BLACK STAR pour ★
.
Dans un script bash, jusqu'à bash 4.1, vous pouvez écrire un octet par son point de code, mais pas un caractère. Si vous souhaitez éviter les caractères non ASCII pour rendre votre .bashrc
résilient aux modifications d'encodage de fichier, vous devrez entrer les octets correspondant à ces caractères dans l'encodage UTF-8. Vous pouvez voir les valeurs hexidécimales en exécutant echo ∴ → ☿ ★ | hexdump -C
dans un terminal UTF-8, par exemple ∴
est codé par \xe2\x88\xb4
en UTF-8.
if [[ $LC_CTYPE =~ '\.[Uu][Tt][Ff]-?8' ]]; then
PS1=$'\\[\e[31m\\]\xe2\x88\xb4\\[\e[0m\\]\n\xe2\x86\x92 \xe2\x98\xbf \\~ \\[\e[31m\\]\xe2\x98\x85 $? \\[\e[0m\\]'
fi
Depuis bash 4.2, vous pouvez utiliser \u
suivi de 4 chiffres hexadécimaux dans un $'…'
chaîne.
PS1=$'\\[\e[31m\\]\u2234\\[\e[0m\\]\n\u2192 \u263f \\~ \\[\e[31m\\]\u2605 $? \\[\e[0m\\]'
Vous pouvez trouver les symboles Unicode sur de nombreux sites, comme celui-ci: http://panmental.de/symbols/info.htm
Vous devez juste vous assurer que votre terme prend en charge UTF-8 .
j'aime utiliser ces outils - ils ont une expérience agréable, et il est facile de rechercher à travers: