(define-generic-mode tmp-mode ; mode name ;; comments nil ;; keywords '("if" "then" "else") ;; other things to highlight nil ;; auto mode alist '("\\.tmp?$") ;; other function to run (list 'tmp-mode--setup-function) "A mode for tmp files") (defun tmp-mode--setup-function () (modify-syntax-entry ?_ "w" (syntax-table)) ;; // Comments (style a) (modify-syntax-entry ?\/ ". 124" (syntax-table)) (modify-syntax-entry ?\n "> " (syntax-table)) ;; /* Comments (style b) */ (modify-syntax-entry ?* ". 23b" (syntax-table)) (modify-syntax-entry ?@ "_" (syntax-table)) (set (make-local-variable 'indent-line-function) 'tmp-mode/indent-line)) (defun tmp-mode/indent-line () (message "Called indent-line!")) (provide 'tmp)