Estoy usando emacs dentro de un terminal mintty (configurado para decir que es xterm-256color) en cygwin. list-colors-display
funciona bien. y los colores se muestran en listas directas, etc. Ahora configuro el color para git branch
la rama actual yellow reverse
. Sin embargo, ni las ventanas shell ni eshell muestran el color correcto; en cambio, la rama actual se muestra en color predeterminado. En una ansi-term
ventana, o Fuera de emacs, dentro del mismo terminal, se muestra como debería.
Tengo esto en mi .emacs
:
(add-hook 'eshell-preoutput-filter-functions 'ansi-color-apply)
¿Alguna forma de hacer que estos colores se muestren dentro de las ventanas de shell o eshell?
git config --global color.ui always
ejecucióngit diff
. ¿Podría proporcionar pasos más detallados?Respuestas:
Eshell y
shell-mode
ambos usanansi-color.el
para convertir los códigos de colores ansi en caras.ansi-color.el
soporta las siguientes caras:La "imagen negativa" es "inversa" y se asigna a la
error
cara. Cuando configuro mi repositorio como ...... y corro
git branch
veo mis ramas locales, y la rama actual se muestra en negrita amarilla. Cuando pongo el punto en el texto amarillo y corrodescribe-face
, veo que de hecho se representa con laerror
cara.Puede personalizar
ansi-color-faces-vector
para asignar una cara diferente que no seaerror
"imagen negativa" / "reversa".No es necesario
(add-hook 'eshell-preoutput-filter-functions 'ansi-color-apply)
usar colores ansi en eshell.fuente