• Stefan Monnier's avatar
    Make syntax.c call syntax-propertize on demand · ab21f61a
    Stefan Monnier authored
    * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
    (parse-sexp-propertize-function): Use it.
    (syntax-propertize): Disable parse-sexp-propertize-function.
    
    * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
    New functions.
    (syms_of_syntax): New vars `parse-sexp-propertize-done' and
    `parse-sexp-propertize-function'.
    
    * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
    (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
    (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
    
    * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
    Don't assume `point' is set.
    ab21f61a
elisp-mode.el 66 KB