Los colores son diferentes cuando se conecta SSH a una máquina Linux desde iTerm2. ¿Cómo puedo estandarizarlos?

Actualmente, cuando hago SSH en una máquina Linux, los lscolores de salida y los colores de sintaxis en VIM son diferentes de los colores en mi máquina local. Los colores que se muestran no están definidos en my Profile...Colors...ANSI Colors, e incluyen un feo color marrón oscuro para "amarillo".

¿Cómo puedo forzar el texto de una sesión remota para que coincida con mis colores ANSI, para que el color sea siempre consistente?

Aquí hay un ejemplo de lo que estoy hablando: a la izquierda está la sesión VIM en mi computadora local, a la derecha está la sesión VIM dentro de una sesión SSH. Fíjate en el espantoso marrón.

Y aquí hay un ejemplo del lsproblema: los colores son diferentes.

ingrese la descripción de la imagen aquí

Respuestas (2)

Encontré la respuesta al problema "ls colors are different". Solo necesita asegurarse de que lsla coloración esté habilitada en ambas máquinas, luego use esta página para hacer que los colores codificados en la LSCOLORSvariable local (Mac) sean idénticos a los colores codificados en la LS_COLORSvariable remota (Linux).

lsPara colorear Linux que coincida con los valores predeterminados de macOS: pon esto en .bashrctu Mac:

alias ls="ls -G"
export LSCOLORS="exfxcxdxbxegedabagacad"

Y pon esto en tu .bashrcmáquina Linux:

alias ls="ls --color=always"
export LS_COLORS="di=34:ln=35:so=32:pi=33:ex=31:bd=34;46:cd=34;43:su=30;41:sg=30;46:tw=30;42:ow=30;43"

Editar: Alternativamente (esto es lo que hago ahora), puede simplemente descargar "coreutils" con homebrew a través de brew install coreutils, luego colocarlo alias ls=glsen su archivo .bashrc. glses la versión GNU. Ahora, puede controlar lslos colores con LS_COLORS, como en Linux.

Además, si desea ser aún más elegante: dado que ahora está utilizando GNU ls, puede controlar los colores de varias extensiones de archivo/tipos/niveles de permiso creando un ~/.dircolors.ansiarchivo y ejecutando gdircolors ~/.dircolors.ansi. Este repositorio tiene algunas plantillas de dircolors para que pueda comenzar.

La parte VIM de esta pregunta fue respondida aquí .

Resulta que mi sesión local se había backgroundconfigurado darken VIM y mi sesión remota se había backgroundconfigurado en light. Acabo de agregar la línea set background=darken my .vimrcy los colores ahora se ven idénticos.

Lo tengo set background=darken .vimrc, pero antes colorscheme, ahora cambiar el orden solucionó este problema.