3 * Description: Emacs LISP.
6 state elisp extends HighlightEntry
16 /* String constants. */
25 /(\([ \t]*)(defun)([ \t]+\(?)([!\$%&\*\/:<=>\?~_^a-zA-Z][!\$%&\*\/:<=>\?~_^a-zA-Z0-9.+\-]*)/ {
26 /* Starting garbage. */
29 /* Keyword `defun'. */
38 function_name_face (true);
40 function_name_face (false);
43 /* ':'-names, Emacs highlights these, so do we. */
44 /([ \t])(:[!\$%&\*\/:<=>\?~_^a-zA-Z0-9.+\-]*)/ {
46 reference_face (true);
48 reference_face (false);
51 /* Keywords taken out of fond-lock.el. Added: and, or, lambda.
52 (build-re '(and or lambda cond if while let let* prog progn
53 progv prog1 prog2 prog* inline catch throw save-restriction
54 save-excursion save-window-excursion save-selected-window
55 save-match-data unwind-protect condition-case track-mouse
56 eval-after-load eval-and-compile eval-when-compile when
57 unless do flet labels return return-from with-output-to-temp-buffer
60 /\b(and|c(atch|ond(|ition-case))|do\
61 |eval-(a(fter-load|nd-compile)|when-compile)|flet|i(f|nline)\
62 |l(a(bels|mbda)|et(|*))|or|prog(|*|1|2|n|v)|return(|-from)\
63 |save-(excursion|match-data|restriction|selected-window|window-excursion)\
64 |t(hrow|rack-mouse)|un(less|wind-protect)\
65 |w(h(en|ile)|ith-(output-to-temp-buffer|timeout)))\b/ {