2011-03-08 9 views
7

Tengo GNU Emacs 23 (paquete emacs23) instalado en una máquina de escritorio Ubuntu 10.04 y el paquete emacs23-nox instalado en un servidor sin cabeza Ubuntu 10.04 (no X instalado). Ambas instalaciones tienen el mismo archivo ~/.emacs. Ejecuto Emacs con -nw en ambas computadoras. No tengo python-mode instalado en cualquiera de las máquinas ya que mi opinión es que esto está incluido en Emacs 23.Emacs Python-modo sintaxis resaltando

En el equipo de escritorio, los comentarios en Python (empezando por #) se destacan en rojo. En el servidor, los comentarios aparecen en texto blanco como todos los demás textos no resaltados. ¿Alguna sugerencia de por qué los comentarios no se destacan correctamente en la instalación del servidor (nox)?

Actualización: Esto parece ser un problema relacionado con la terminal. I ssh en la máquina servidor desde terminator a través del reemplazo de pantalla byobu. Si ejecuto emacs en el servidor con TERM="xterm-256color" emacs, los comentarios se resaltan, pero todos los demás colores se ven muy extraños.

Actualización: Añadiendo `export TERM =" xterm-256color "" resuelto "esto. Sin embargo, el resaltado de sintaxis tiene ahora colores muy extraños: lilas moradas y marrones claras. Mi barra de resaltado de línea verde actual ahora es de color amarillo claro/verde pálido. Los comentarios están resaltados en rojo aunque :)

Actualización: Resuelto. La configuración TERM="xterm-color" produce colores "adecuados", incluido el resaltado de los comentarios. El servidor estaba por defecto a un valor de "screen-bce" para TERM que no resaltaba los comentarios.

Actualización: sin resolver.byobu proporciona combinaciones de teclas para varias teclas de función para crear fácilmente nuevas sesiones de pantalla y cambiar entre ellas. Cuando TERM se establece en xterm-color, estas teclas de función ya no funcionan. Así que supongo que tendré que estar contento con los comentarios no destacados en el código de Python en Emacs.

+0

@Michael: Gracias (no sabía de eso). Pero lo he "resuelto" después de nuevas pruebas, por lo que alguien todavía tendrá una respuesta. – SabreWolfy

+2

Generalmente, si estoy editando archivos en un sistema remoto, uso el modo emacs TRAMP. De esa manera tengo todas mis configuraciones de edición locales en uso. ¿Esa sería una opción para ti? –

+0

@Jeff: normalmente 'ssh' en el servidor para trabajar en otras tareas, así como para editar archivos, por lo que editar archivos del "cliente" para usar la configuración del cliente no es realmente lo que estoy buscando. Gracias por la sugerencia; es algo que analizaré más a fondo. – SabreWolfy

Respuesta

2

Para mí correr emacs -nw desde el interior byobu con TERM=xterm producen los colores correctos para el resaltado de sintaxis (los comentarios en Python y Bash son todos de color rojo no sólo el #) y las teclas de función de trabajo. Nota puse TERM como parte de un alias para el funcionamiento de emacs en lugar de establecer por lo general en .bashrc:

alias emacs='TERM=xterm; emacs -nw'

Véase también este post: Terminal emacs colors only work with TERM=xterm-256color

+0

Gracias, acabo de comprobar nuevamente y puedo confirmar esto: el resaltado de sintaxis de Python para colores está apareciendo correctamente en bybu (TERM = xterm). Las teclas de función en byobu también funcionan bien. – SabreWolfy

2

no tengo los programas que esté utilizando instalado para probar esto, pero me di cuenta de algunas diferencias en la forma en que las teclas de función se definen entre la pantalla y el bce-xterm-color. Puede intentar usar los siguientes pasos para copiar la configuración de screen-bce a xterm-color.

Utilizando el programa infocmp, puede ver las diferencias entre los valores de terminfo para dos ajustes PLAZO:

infocmp -d screen-bce xterm-color 

Usted puede utilizar infocmp descompilar el archivo terminfo a su fuente y realizar cambios en él para tratar de imitar el comportamiento de la otra terminal. Comience decodificando el archivo xterm-color terminfo.

infocmp xterm-color > xterm-color.src 

Editar xterm-color.src y modificar las definiciones de la KF1 a través de campos KF19 para que coincida con los valores de pantalla-bce. Use infocmp para ver las definiciones de screen-bce.

infocmp screen-bce 

Finalmente compilar utilizando el programa tic.

tic xterm-color.src 

Si lo ejecuta como usuario no root, se pondrá el compilado terminfo presentar en $ HOME/.terminfo.En mi sistema, parece que Ubuntu toma esto automáticamente. También puede instalarlo en el estándar/usr/share/terminfo cuando esté satisfecho. Ejecutar tic como root debería hacer esto por usted.

¡Buena suerte!

1

Acabo de añadir

(set-face-foreground 'font-lock-comment-face "red") 

a mi .emacs

Cuestiones relacionadas