FUEL: corrected highlighting of QUALIFIED-WITH:

db4
Björn Lindqvist 2015-08-05 13:57:53 +02:00 committed by John Benediktsson
parent 74e8b881db
commit ddea03b336
1 changed files with 19 additions and 13 deletions

View File

@ -198,7 +198,7 @@ these lines in your .emacs:
(concat (syntax-begin prefixes) ws+ symbol)) (concat (syntax-begin prefixes) ws+ symbol))
(defun syntax-and-2-symbols (prefixes) (defun syntax-and-2-symbols (prefixes)
(concat (syntax-begin prefixes) ws+ symbol ws+ symbol)) (concat (syntax-and-1-symbol prefixes) ws+ symbol))
;; Used to font-lock stack effect declarations with may be nested. ;; Used to font-lock stack effect declarations with may be nested.
(defun factor-match-brackets (limit) (defun factor-match-brackets (limit)
@ -220,17 +220,16 @@ these lines in your .emacs:
"B" "BEFORE:" "B" "BEFORE:"
"C-GLOBAL:" "C-TYPE:" "CHAR:" "COLOR:" "COM-INTERFACE:" "C-GLOBAL:" "C-TYPE:" "CHAR:" "COLOR:" "COM-INTERFACE:"
"CONSULT:" "call-next-method" "CONSULT:" "call-next-method"
"DEFER:"
"EBNF:" ";EBNF" "ENUM:" "ERROR:" "EBNF:" ";EBNF" "ENUM:" "ERROR:"
"FOREIGN-ATOMIC-TYPE:" "FOREIGN-ENUM-TYPE:" "FOREIGN-RECORD-TYPE:" "FUNCTION-ALIAS:" "FOREIGN-ATOMIC-TYPE:" "FOREIGN-ENUM-TYPE:" "FOREIGN-RECORD-TYPE:" "FUNCTION-ALIAS:"
"GAME:" "GENERIC#" "GENERIC:" "GIR:" "GAME:" "GIR:"
"GLSL-SHADER:" "GLSL-PROGRAM:" "GLSL-SHADER:" "GLSL-PROGRAM:"
"HINTS:" "HOOK:" "HINTS:"
"initial:" "INTERSECTION:" "IMPLEMENT-STRUCTS:" "initial:" "INTERSECTION:" "IMPLEMENT-STRUCTS:"
"M:" "M::" "MACRO:" "MACRO::" "MATH:" "M:" "M::" "MACRO:" "MACRO::" "MATH:"
"MEMO:" "MEMO:" "METHOD:" "MIXIN:" "MEMO:" "MEMO:" "METHOD:" "MIXIN:"
"NAN:" "NAN:"
"POSTPONE:" "PRIMITIVE:" "PRIVATE>" "PROTOCOL:" "PROVIDE:" "PRIVATE>" "PROTOCOL:" "PROVIDE:"
"read-only" "REQUIRE:" "REQUIRES:" "read-only" "REQUIRE:" "REQUIRES:"
"SINGLETON:" "SINGLETONS:" "SLOT:" "SPECIALIZED-ARRAY:" "SINGLETON:" "SINGLETONS:" "SLOT:" "SPECIALIZED-ARRAY:"
"SPECIALIZED-ARRAYS:" "STRING:" "SYNTAX:" "SPECIALIZED-ARRAYS:" "STRING:" "SYNTAX:"
@ -293,16 +292,16 @@ these lines in your .emacs:
"\\_<\"[^>]\\([^\"\n]\\|\\\\\"\\)*\n") "\\_<\"[^>]\\([^\"\n]\\|\\\\\"\\)*\n")
(defconst factor-word-definition-regex (defconst factor-word-definition-regex
(format "\\_<\\(%s\\)?[:#] +\\(%s\\)" (concat
(format "\\_<\\(\\(?:%s\\)?[:#]\\)"
(regexp-opt (regexp-opt
'(":" "GENERIC" "DEFER" "HOOK" "MACRO" "MATH" "POSTPONE" '(":" "GENERIC" "DEFER" "HOOK" "MACRO" "MATH" "POSTPONE"
"PRIMITIVE" "SYNTAX" "TYPED" "TYPED:")) "PRIMITIVE" "SYNTAX" "TYPED" "TYPED:")))
"\\(\\sw\\|\\s_\\|\\s(\\|\\s)\\)+")) ws+ symbol))
;; [parsing-word] [vocab-word] ;; [parsing-word] [vocab-word]
(defconst factor-vocab-ref-regex (defconst factor-vocab-ref-regex
(syntax-and-1-symbol (syntax-and-1-symbol '("IN" "USE" "QUALIFIED")))
'("IN" "USE" "EXCLUDE" "QUALIFIED" "QUALIFIED-WITH")))
(defconst factor-using-lines-regex (defconst factor-using-lines-regex
(concat (syntax-begin '("USING")) ws+ symbols-to-semicolon)) (concat (syntax-begin '("USING")) ws+ symbols-to-semicolon))
@ -424,6 +423,9 @@ these lines in your .emacs:
(defconst factor-alias-regex (defconst factor-alias-regex
(syntax-and-2-symbols '("ALIAS"))) (syntax-and-2-symbols '("ALIAS")))
(defconst factor-qualified-with-regex
(syntax-and-2-symbols '("QUALIFIED-WITH")))
(defconst factor-c-global-regex (defconst factor-c-global-regex
(format "\\_<C-GLOBAL: +%s +%s\\( .*\\)?$" symbol symbol)) (format "\\_<C-GLOBAL: +%s +%s\\( .*\\)?$" symbol symbol))
@ -480,10 +482,14 @@ these lines in your .emacs:
(3 'factor-font-lock-word) (3 'factor-font-lock-word)
(4 'factor-font-lock-invalid-syntax nil t)) (4 'factor-font-lock-invalid-syntax nil t))
(,factor-declaration-words-regex . 'factor-font-lock-comment) (,factor-declaration-words-regex . 'factor-font-lock-comment)
(,factor-word-definition-regex 2 'factor-font-lock-word) (,factor-word-definition-regex (1 'factor-font-lock-parsing-word)
(2 'factor-font-lock-word))
(,factor-alias-regex (1 'factor-font-lock-parsing-word) (,factor-alias-regex (1 'factor-font-lock-parsing-word)
(2 'factor-font-lock-word) (2 'factor-font-lock-word)
(3 'factor-font-lock-word)) (3 'factor-font-lock-word))
(,factor-qualified-with-regex (1 'factor-font-lock-parsing-word)
(2 'factor-font-lock-vocabulary-name)
(3 'factor-font-lock-word))
(,factor-int-constant-def-regex 2 'factor-font-lock-constant) (,factor-int-constant-def-regex 2 'factor-font-lock-constant)
(,factor-integer-regex . 'factor-font-lock-number) (,factor-integer-regex . 'factor-font-lock-number)
(,factor-float-regex . 'factor-font-lock-number) (,factor-float-regex . 'factor-font-lock-number)