(defvar tes-mode-syntax-table (copy-syntax-table (with-temp-buffer
(html-mode)
(syntax-table))))
(defun tes-mode ()
(interactive)
(fundamental-mode)
(setq major-mode 'tes-mode)
(setq mode-name "TES")
(when prefs-davins-keybindings-online-p
(local-set-key "\t" 'd-latex--tab-key)
(local-set-key [(return)] 'd-latex--tes-enter)
(local-set-key [(meta control \\)] 'd-latex--meta-control-backslash))
(set-syntax-table tes-mode-syntax-table)
(progn
(modify-syntax-entry ?< "w")
(modify-syntax-entry ?> "w"))
(d-quote
(modify-syntax-entry ?\[ "(]")
(modify-syntax-entry ?\[ ")[")
(modify-syntax-entry ?\{ "(}")
(modify-syntax-entry ?\} "){")
(modify-syntax-entry ?\ "\\")
(modify-syntax-entry ?- "w"))
(d-font-lock-add-end
`(
("\\(\\\\[a-zA-Z0-9]*\\)" 1 'bold nil)
("$[0-9]+" 0 'bold nil)
("$[0-9]+" 0 'bold nil)
("$[@*]" 0 'bold nil)
("\\<[0-9][0-9.]*" 0 d-face-cc-digits nil)
(, (concat "\\\\" "\\\\") 0 fg:lightred t)
(, (concat "\\(\\<m4" "_dnl\\>\\)\\(.*\\)$") (1 'd-face-m4-dnl nil) (2 'font-lock-comment-face nil))
("\\\\color{\\(red\\)}" 1 'fg:lightred nil)
("\\\\color{\\(green\\)}" 1 'fg:lightgreen nil)
("\\\\color{\\(blue\\)}" 1 'fg:lightblue nil)
("\\\\colorbox\\>" 0 'bold nil)
("@node \\(.*$\\)" 1 'font-lock-function-name-face nil)
("@chapter \\(.*$\\)" 1 'font-lock-function-name-face nil)
("@section \\(.*$\\)" 1 'font-lock-function-name-face nil)
("@\\*" 0 'fg:lightred nil)
(,(concat "\\(m4" "_dnl\\)\\(.*$\\)") (1 d-face-m4-dnl nil) (2 font-lock-comment-face nil))
("\\<\\(DESPAT\\)(\\([^()]*\\))"
(1 'bold nil)
(2 'fg:orange nil))
("\\<\\(BFNS.*EFNS\\)\\>" 1 'fg:lightgreen t)
))
)
(defun d-latex--tes-enter ()
(interactive)
(insert "\n"))
(provide 'tes-mode)