¿Cómo se cambia la combinación de colores en bash en Ubuntu para Windows?

Respuestas:

28

Esta también es una solución agradable y fácil, desde https://medium.com/@iraklis/fixing-dark-blue-colors-on-windows-10-ubuntu-bash-c6b009f8b97c :

Agregue esto 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

Y también encontré esto útil para la legibilidad de vim:

echo "set background=dark" >> .vimrc
Guillermo González de Garibay
fuente
44
Pero no explica cuáles son esos parámetros. Como quiero especificar diferentes colores, esto no es realmente útil para hacerlo, excepto por prueba y error.
Aaron Bramson
1
¿Cuál es la sintaxis de definición de estos colores? Por ejemplo, ¿cómo se cambia la paleta de colores para los directorios? ¿Y para otras cosas definidas aquí?
xor
14

El problema no es específico de bash en Ubuntu para Windows, ya que el terminal todavía lo proporciona conhost.exe.

Para cambiar los colores, puede ir a los valores predeterminados :

ingrese la descripción de la imagen aquí

Y luego puede hacer clic en cada color individual y cambiarlo a otro color.

ingrese la descripción de la imagen aquí

El proceso es algo confuso, porque al hacer clic en un rectángulo de color, está cambiando lo que se selecciona como Fondo de pantalla . Por lo tanto, primero debe cambiar esa selección, ajustar el color y luego volver a cambiar la selección al color de fondo deseado.

En general, es más fácil elegir un emulador de consola o terminal diferente. Yo personalmente uso ConEmu ahora, que le permite cambiar los esquemas de color mucho más fácilmente.

Der Hochstapler
fuente
1
Establecer Screen Texten negro (0,0,0) y Screen Backgrounden algún tipo de amarillo claro (255,255,150) me ha funcionado bastante bien. Ver captura de pantalla de muestra .
Yibo Yang
44
El terminal no es, y nunca lo ha sido, proporcionado por cmd.exe. La consola fue proporcionada directamente por csrss desde NT hasta XP, y luego conhost.exe desde Vista. Bash se ejecuta directamente a través de conhost y nunca toca cmd.
Bob
@YiboYang cerca de su sugerencia, hay (255, 255, 221), que es el tema "negro sobre amarillo claro" del terminal Gnome.
Yamaneko
3

No creo que la interfaz de usuario te permita cambiar todos los colores ANSI, tendrías que editarlos a través del registro.

Ya existe un tema oscuro solarizado que funciona bastante bien en https://github.com/neilpa/cmd-colors-solarized

(cerrar / abrir la ventana de la consola para activar)

laktak
fuente
3

La misma solución que las otras con más explicaciones para personas como yo ( https://medium.com/@iraklis/fixing-dark-blue-colors-on-windows-10-ubuntu-bash-c6b009f8b97c )

cd /home/<user>
ls -a

Deberías encontrar un .bashrc y hacer una BU

cp .bashrc .bashrcBU

agregar 2 líneas

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

antes de cambiar vim también fondo para ver correctamente

echo "set background=dark" >> .vimrc

salir y reiniciar

Entonces todavía tienes el camino en el nombre con este extraño color azul. Puedes modificar esto a través de PS1. Aquí la fuente ( 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\]\$

Por mí, la baliza [\ 033 [01; 34m] * [\ 033 [00m] es el color azul, así que cambio el color en rosa [\ 033 [01; 34m] * [\ 033 [00m] . Para sobrescribir PS1

@EDITAR:

Puede hacerlo de esta manera, pero no será permanente, y esta variable se eliminará al final de la sesión.

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

Para hacerlo permanente, debe escribirlo en un archivo que se cargará al comienzo de una sesión, como el 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
Dorian Grv
fuente
3

Solución 2019:

El ColorTool oficial de Microsoft se puede usar para cambiar el esquema de color general sin tener que configurar cada color usted mismo.

Simplemente descargue el archivo zip (busque Color Tool <Month> <Year>en Versiones ) y extraiga la herramienta en cualquier carpeta. Luego ejecútalo desde tu 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

Luego puede importar fácilmente otros esquemas de color en el formato iTerm, colocando un .itermcolorsarchivo en la schemescarpeta de ColorTool.

A. Frank
fuente
1

Puede usar la personalización de color de Windows cmd para personalizar boW. Simplemente haga clic en el pequeño icono de ubuntu en la esquina superior derecha y haga clic en propiedades.

Además, para personalizar la solicitud, puede usar

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

que cambiará solo el indicador a rojo y así sucesivamente.

Como tal, los colores parecen funcionar bien en boW. Los sitios anteriores no funcionarán, ya que crean archivos de configuración para emuladores de terminal específicos, pero es solo cmd aquí.

PulseJet
fuente
2
El cuadro de diálogo Propiedades me permite establecer el color de primer plano y de fondo, pero no el esquema de color. A menos que me falte algo aquí.
Der Hochstapler
2
De acuerdo, puede ajustar el esquema de colores de esa manera. Debe seleccionar un color de la paleta, ajustar el RGB, luego pasar al siguiente y finalmente seleccionar qué color de fondo desea nuevamente. Su respuesta podría haber sido un poco más clara
Der Hochstapler
0

También buscando una solución, encontré esta publicación SuperUser y luego esta publicación de MS Understanding Windows Console Host Settings

Lo que básicamente significa es que todas las configuraciones se almacenan en el archivo de acceso directo en el momento de la creación en el menú Inicio / Anclado a la barra de tareas. Que luego se puede cambiar modificando las propiedades.

Todo, incluidos los colores, se puede personalizar en la entrada del registro [HKEY_CURRENT_USER \ Console \ Git Bash] utilizando las propiedades descritas en la publicación de MS, pero para realizar el cambio bash.exe debe ejecutarse directamente ejecutando "C: \ Windows \ System32 \ bash.exe "a través de Windows + R para obligar a Windows a dejar de leer la configuración después de las entradas del registro.

Una vez que esté satisfecho con la configuración, cree nuevos enlaces de acceso directo en la barra de tareas de inicio y pin-to (si eso es lo que le gusta).

Argumento para hacerlo de esta manera, es que los cambios radicales son más fáciles de administrar (por ejemplo, ¿probar un nuevo esquema de color?) A través de un archivo .reg que a través de una tediosa realización y guardado de cambios en un archivo de acceso directo.

Bob Smith
fuente