Estoy tratando de entender cómo funcionan las tablas de sintaxis, pero mi modo mayor mínimo no resalta nada.
He escrito el siguiente elisp, que se supone que resalta los comentarios:
(defconst my-yaml-mode-syntax-table
(let ((table (make-syntax-table)))
(modify-syntax-entry ?# "<" table)
(modify-syntax-entry ?\n ">" table)
table)
"Syntax table for `my-yaml-mode'.")
(define-derived-mode my-yaml-mode fundamental-mode "My YAML"
"testing"
:syntax-table my-yaml-mode-syntax-table)
Sin embargo, dado un archivo:
# foo
# bar
baz
Si activo mi modo mayor con M-x my-yaml-mode, no obtengo ningún resaltado. C-u C-x =muestra que no se han aplicado caras.
M-;está vinculado a comment-dwimnewcomment.el, que utiliza en comment-startlugar de la tabla de sintaxis. AIUI
Hm, de verdad, lo siento. En su lugar, puede colocar el punto en ay
—
T. Verron
#presionar C-u C-x =, la salida debe contener la línea syntax: < which means: comment.
De hecho lo hace! Entonces, si mi tabla de sintaxis es correcta y se está aplicando, ¿por qué no hay ningún resaltado?
—
Wilfred Hughes
Después de probar con su código, es simplemente una cuestión de encender
—
T. Verron
font-lock-modesu my-yaml-modebúfer. :)
M-;Inserta correctamente un#? En caso afirmativo, se aplica la tabla de sintaxis. Debe buscar en las especificaciones de bloqueo de fuente para obtener resaltado de sintaxis.