commit c96779fc0165cb0ec26a65ef2321ae7babcfd4ca from: Omar Polo date: Thu Aug 05 15:33:31 2021 UTC improve font-lock management; fontify functions calls/declarations commit - 7add5f7b6155430160560420bd8e1c27a0d92939 commit + c96779fc0165cb0ec26a65ef2321ae7babcfd4ca blob - d3fa5affadd561e8fad6e1eae008c2ad00558b05 blob + 357a7653fb0dd8b5471135cd31105a63ca3fec87 --- contrib/9ps-mode.el +++ contrib/9ps-mode.el @@ -29,11 +29,9 @@ '("assert" "const" "dir" "include" "proc" "str" "testing" "u8" "u16" "u32")) -(defconst 9ps--font-lock-keywords - (list - (rx-to-string - `(: (or ,@9ps-keywords)))) - "`9ps-mode' constant keywords.") +(defconst 9ps--font-lock-defaults + `(((,(rx-to-string `(: (or ,@9ps-keywords))) 0 font-lock-keyword-face) + ("\\([[:word:]]+\\)\s*(" 1 font-lock-function-name-face)))) (defvar 9ps-mode-syntax-table (let ((st (make-syntax-table))) @@ -102,7 +100,7 @@ (define-derived-mode 9ps-mode prog-mode "9ps" "Major mode for ninepscript files." :abbrev-table 9ps-mode-abbrev-table - (setq font-lock-defaults '((9ps--font-lock-keywords))) + (setq font-lock-defaults 9ps--font-lock-defaults) (setq-local comment-start "#") (setq-local comment-start-skip "#+[\t ]*") (setq-local indent-line-function #'9ps-indent-line))