Come si cambia la combinazione di colori in bash su Ubuntu per Windows?


Risposte:


28

Questa è anche una soluzione semplice e piacevole, da https://medium.com/@iraklis/fixing-dark-blue-colors-on-windows-10-ubuntu-bash-c6b009f8b97c :

Aggiungi questo a .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

E l'ho trovato utile anche per la leggibilità di Vim:

echo "set background=dark" >> .vimrc

4
Ma non spiega quali siano questi parametri. Dal momento che voglio specificare colori diversi, questo non è davvero utile per farlo tranne che per tentativi ed errori.
Aaron Bramson,

1
qual è la sintassi di definizione di questi colori? Ad esempio, come si modifica la tavolozza dei colori per le directory? E per altre cose definite qui?
xor

14

Il problema non è specifico per bash su Ubuntu per Windows, poiché il terminale è ancora fornito da conhost.exe.

Per cambiare i colori, puoi andare nei Default :

inserisci qui la descrizione dell'immagine

Quindi puoi fare clic su ogni singolo colore e cambiarlo in un altro colore.

inserisci qui la descrizione dell'immagine

Il processo è alquanto confuso, perché facendo clic su un rettangolo di colore, stai cambiando ciò che è selezionato come Sfondo dello schermo . Quindi devi prima cambiare quella selezione, regolare il colore e poi cambiare la selezione sul colore di sfondo desiderato.

Nel complesso, è più semplice utilizzare un emulatore di terminale o console diverso. Personalmente uso ConEmu ora, che consente di modificare le combinazioni di colori molto più facilmente.


1
L'impostazione Screen Textsul nero (0,0,0) e Screen Backgroundsu una sorta di giallo chiaro (255.255.150) ha funzionato abbastanza bene per me. Vedi screenshot di esempio .
Yibo Yang,

4
Il terminale non è e non è mai stato fornito da cmd.exe. La console è stata fornita direttamente da CSRSS da NT a XP e quindi conhost.exe da Vista. Bash funziona direttamente tramite conhost e non tocca mai cmd.
Bob,

@YiboYang vicino al tuo suggerimento, c'è (255, 255, 221), che è il tema "nero su giallo chiaro" dal terminale Gnome.
Yamaneko,

3

Non penso che l'interfaccia utente ti permetta di cambiare tutti i colori ANSI, dovresti modificarli tramite il registro.

Esiste già un tema darkized-dark che funziona abbastanza bene su https://github.com/neilpa/cmd-colors-solarized

(chiudi / apri la finestra della console per attivare)


3

Stessa soluzione delle altre con qualche spiegazione in più per persone come me ( https://medium.com/@iraklis/fixing-dark-blue-colors-on-windows-10-ubuntu-bash-c6b009f8b97c )

cd /home/<user>
ls -a

Dovresti trovare un .bashrc e creare una BU

cp .bashrc .bashrcBU

aggiungi 2 righe

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

prima di cambiare vim anche lo sfondo per vedere correttamente

echo "set background=dark" >> .vimrc

esci e riavvia

Quindi hai ancora il percorso nel nome con questo strano colore blu. Puoi modificarlo tramite PS1. Qui la fonte ( 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\]\$

Per me la balise [\ 033 [01; 34m] * [\ 033 [00m] è il colore blu, quindi cambio il colore in rosa [\ 033 [01; 34m] * [\ 033 [00m] . Per sovrascrivere PS1

@MODIFICARE:

Potresti farlo in questo modo, ma non sarà permanente e questa variabile verrà eliminata alla fine della sessione.

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

Per renderlo permanente devi scriverlo in un file che verrà caricato all'inizio di una sessione, come il precedente .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

Soluzione 2019:

ColorTool ufficiale di Microsoft può essere utilizzato per modificare la combinazione di colori complessiva senza dover impostare ogni colore da solo.

Basta scaricare il file zip (cercare Color Tool <Month> <Year>in Rilasci ) ed estrarre lo strumento in qualsiasi cartella. Quindi eseguilo dal tuo 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

Quindi puoi facilmente importare altre combinazioni di colori nel formato iTerm, inserendo un .itermcolorsfile nella schemescartella di ColorTool.


1

È possibile utilizzare la personalizzazione del colore di Windows cmd per personalizzare boW. Basta fare clic sulla piccola icona di Ubuntu nell'angolo in alto a destra e fare clic su Proprietà.

Inoltre, per personalizzare il prompt, è possibile utilizzare

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

che cambierà solo il prompt in rosso e così via.

Pertanto, i colori sembrano funzionare bene su boW. I siti di cui sopra non funzioneranno poiché creano file di configurazione per emulatori di terminali specifici, ma qui sono solo cmd.


2
La finestra di dialogo Proprietà mi consente di impostare il colore di primo piano e di sfondo, ma non la combinazione di colori. A meno che non mi manchi qualcosa qui.
Der Hochstapler,

2
Va bene, puoi regolare la combinazione di colori in quel modo. Devi selezionare un colore dalla tavolozza, regolare RGB, quindi passare a quello successivo e infine selezionare di nuovo il colore di sfondo desiderato. La tua risposta avrebbe potuto essere un po 'più chiara
Der Hochstapler,

0

Anche alla ricerca di una soluzione, ho trovato questo post di SuperUser e quindi questo post da MS Informazioni sulle impostazioni dell'host della console di Windows

Ciò che sostanzialmente equivale a tutte le impostazioni sono archiviate nel file di collegamento stesso al momento della creazione nel menu Start / Appuntato alla barra delle applicazioni. Che può quindi essere modificato modificando le proprietà.

Tutto, compresi i colori, possono essere personalizzati nella voce di registro [HKEY_CURRENT_USER \ Console \ Git Bash] utilizzando le proprietà descritte nella posta MS, ma per realizzare la modifica bash.exe deve essere eseguito direttamente eseguendo "C: \ Windows \ System32 \ bash.exe "tramite Windows + R per forzare Windows a interrompere la lettura della configurazione dopo le voci di registro.

Una volta soddisfatto con la configurazione, crea nuovi collegamenti di scelta rapida nella barra delle applicazioni iniziale e pin-to (se è il tuo caso).

Argomento per farlo in questo modo, è che le modifiche radicali sono più facili da gestire (diciamo una nuova combinazione di colori provare?) Attraverso il file .reg che attraverso la noiosa realizzazione e il salvataggio delle modifiche in un file di collegamento.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.