Estoy buscando una manera simple de hacer que emacs recuerde la variable declarada en una sola función en C / C ++. Por "simple", quiero decir sin ningún paquete externo, solo con algunas líneas elisp en los archivos de configuración.
Mi configuración predeterminada de Emacs colorea los nombres de las variables en amarillo en la declaración, pero los dejo en blanco al usarlos.
char toto; // 'char' is green, 'toto' is yellow
toto = 42; // 'toto' is white
Me gustaría hacer que cada "toto" de la misma función / alcance sea también de color amarillo.
Ya he examinado esta pregunta, pero me gustaría algo más simple. También intenté hacer algo con el modo de bloqueo de fuente , pero no logré hacer algo adaptable a los nombres de las variables.
Ya tengo una idea para los nombres de miembros de la clase C ++ (usando un patrón de nombre), así que solo quiero una coincidencia de variable local aquí.
color-identifiers-mode
paquete . (Publicando esto como un comentario porque dijiste que no querías considerar paquetes externos).Respuestas:
Se podría reunir una expresión regular para su esquema de variables, algo que los partidos (código de seudo expresión regular)
[char|other|types] [a-z];
y[a-z] =*;
y añadirlo a la lista de palabras clave font-lock para su modo; Del manual en la página Customizing-Keywords :fuente