Comment changez-vous le jeu de couleurs dans bash sur Ubuntu pour Windows?


Réponses:


28

C'est également une solution agréable et facile, de https://medium.com/@iraklis/fixing-dark-blue-colors-on-windows-10-ubuntu-bash-c6b009f8b97c :

Ajoutez ceci à .bashrc:

LS_COLORS='rs=0:di=1;35:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';
export LS_COLORS

PS1='\e[37;1m\u@\e[35m\W\e[0m\$ ' # this will change your prompt format

Et j'ai trouvé cela utile aussi pour la lisibilité de vim:

echo "set background=dark" >> .vimrc

4
Mais cela n'explique pas quels sont ces paramètres. Puisque je veux spécifier différentes couleurs, cela n'est pas vraiment utile pour le faire, sauf par essais et erreurs.
Aaron Bramson

1
quelle est la syntaxe de définition de ces couleurs? Par exemple, comment changez-vous la palette de couleurs pour les répertoires? Et pour d'autres choses définies ici?
XOR

14

Le problème n'est pas spécifique à bash sur Ubuntu pour Windows, car le terminal est toujours fourni par conhost.exe.

Pour changer les couleurs, vous pouvez aller dans les valeurs par défaut :

entrez la description de l'image ici

Et puis vous pouvez cliquer sur chaque couleur individuelle et la changer en une autre couleur.

entrez la description de l'image ici

Le processus est quelque peu déroutant, car en cliquant sur un rectangle de couleur, vous modifiez ce qui est sélectionné comme arrière-plan de l' écran . Vous devez donc d'abord modifier cette sélection, ajuster la couleur, puis revenir à la couleur d'arrière-plan souhaitée.

Dans l'ensemble, il est plus facile de simplement utiliser un autre émulateur de terminal ou de console. Personnellement , j'utilise ConEmu maintenant, ce qui vous permet de changer les schémas de couleurs beaucoup plus facilement.


1
Le réglage Screen Textsur noir (0,0,0) et Screen Backgroundsur une sorte de jaune clair (255,255,150) a plutôt bien fonctionné pour moi. Voir un exemple de capture d'écran .
Yibo Yang

4
Le terminal n'est pas et n'a jamais été fourni par cmd.exe. La console a été fournie directement par csrss de NT à XP, puis conhost.exe depuis Vista. Bash s'exécute directement via conhost et ne touche jamais cmd.
Bob

@YiboYang proche de votre suggestion, il y a (255, 255, 221), qui est le thème "noir sur jaune clair" du terminal Gnome.
Yamaneko

3

Je ne pense pas que l'interface utilisateur vous permet de modifier toutes les couleurs ANSI, vous devez les modifier via le registre.

Il existe déjà un thème solarisé-sombre qui fonctionne assez bien sur https://github.com/neilpa/cmd-colors-solarized

(fermez / ouvrez la fenêtre de la console pour l'activer)


3

Même solution que les autres avec quelques explications supplémentaires pour des gens comme moi ( https://medium.com/@iraklis/fixing-dark-blue-colors-on-windows-10-ubuntu-bash-c6b009f8b97c )

cd /home/<user>
ls -a

Vous devriez trouver un .bashrc et faire une BU

cp .bashrc .bashrcBU

ajouter 2 lignes

echo "LS_COLORS='rs=0:di=1;35:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';" >> .bashrc
echo "export LS_COLORS" >> .bashrc

avant de changer vim également fond pour voir correctement

echo "set background=dark" >> .vimrc

quitter et redémarrer

Vous avez alors encore le chemin du nom avec cette étrange couleur bleue. Vous pouvez le modifier via PS1. Voici la source ( https://apple.stackexchange.com/questions/219125/is-there-a-way-to-change-the-font-color-of-the-current-path-in-termial )

echo $PS1
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$

Par moi la balise [\ 033 [01; 34m] * [\ 033 [00m] est la couleur bleue donc je change la couleur en rose [\ 033 [01; 34m] * [\ 033 [00m] . Pour remplacer PS1

@MODIFIER:

Vous pouvez le faire de cette façon, mais ce ne sera pas permanent et cette variable sera supprimée à la fin de la session.

PS1='\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[00m\]\w\[\033[00m\]\$'

Pour le rendre permanent, vous devez l'écrire dans un fichier qui sera chargé au début d'une session, comme le précédent .bashrc.

echo "PS1='\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;35m\]\w\[\033[00m\]\$'" >> .bashrc

3

Solution 2019:

Le ColorTool officiel de Microsoft peut être utilisé pour modifier le schéma de couleurs global sans avoir à définir chaque couleur par vous-même.

Téléchargez simplement le fichier zip (recherchez Color Tool <Month> <Year>sous Versions ) et extrayez l'outil dans n'importe quel dossier. Exécutez-le ensuite depuis votre bash:

# run in wsl bash (or any other windows terminal)
# note that -x is required for wsl
./ColorTool.exe -x <scheme name>

# for the change to have permanent effect go to properties and click ok

Ensuite, vous pouvez facilement importer d'autres schémas de couleurs au format iTerm, en plaçant un .itermcolorsfichier dans le schemesdossier du ColorTool.


1

Vous pouvez utiliser la personnalisation des couleurs de Windows cmd pour personnaliser boW. Cliquez simplement sur la petite icône ubuntu dans le coin supérieur droit et cliquez sur Propriétés.

De plus, pour personnaliser l'invite, vous pouvez utiliser

export PS1="\e[0;31m[\u@\h \W]\$ \e[m "

ce qui changera uniquement l'invite en rouge et ainsi de suite.

En tant que telles, les couleurs semblent bien fonctionner sur boW. Les sites ci-dessus ne fonctionneront pas car ils créent des fichiers de configuration pour des émulateurs de terminaux spécifiques, mais c'est juste cmd ici.


2
La boîte de dialogue Propriétés me permet de définir la couleur de premier plan et d'arrière-plan, mais pas la palette de couleurs. Sauf si je manque quelque chose ici.
Der Hochstapler

2
D'accord, vous pouvez ajuster le schéma de couleurs de cette façon. Vous devez sélectionner une couleur dans la palette, ajuster le RVB, puis passer à la suivante et enfin sélectionner à nouveau la couleur d'arrière-plan que vous souhaitez. Votre réponse aurait pu être un peu plus claire
Der Hochstapler

0

À la recherche d'une solution, j'ai trouvé ce post SuperUser puis ce post de MS Comprendre les paramètres d'hôte de la console Windows

Cela revient à dire que tous les paramètres sont stockés dans le fichier de raccourci lui-même lors de la création dans le menu Démarrer / Épinglé à la barre des tâches. Ce qui peut ensuite être changé en modifiant les propriétés.

Tout, y compris les couleurs, peut être personnalisé dans l'entrée de registre [HKEY_CURRENT_USER \ Console \ Git Bash] en utilisant les propriétés décrites dans le message MS, mais pour réaliser le changement bash.exe doit être exécuté directement en exécutant "C: \ Windows \ System32 \ bash.exe "via Windows + R pour forcer Windows à arrêter la lecture de la configuration après les entrées de registre.

Une fois satisfait de la configuration, créez de nouveaux liens de raccourci dans la barre des tâches de démarrage et d'épinglage (si c'est votre truc).

L'argument pour le faire de cette façon est que les changements de balayage sont plus faciles à gérer (par exemple, un nouveau jeu de couleurs essaie?) Via le fichier .reg que par des tâches fastidieuses et l'enregistrement des modifications dans un fichier de raccourci.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.