diff options
Diffstat (limited to 'editors/sail2-mode.el')
| -rw-r--r-- | editors/sail2-mode.el | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/editors/sail2-mode.el b/editors/sail2-mode.el index 8dde96df..e17b1a4f 100644 --- a/editors/sail2-mode.el +++ b/editors/sail2-mode.el @@ -4,11 +4,11 @@ (add-to-list 'auto-mode-alist '("\\.sail\\'" . sail-mode)) (defconst sail2-keywords - '("val" "function" "type" "struct" "union" "enum" "let" "if" "then" - "else" "match" "in" "return" "register" "forall" "operator" "effect" - "overload" "cast" "sizeof" "constraint" "default" "assert" + '("val" "function" "type" "struct" "union" "enum" "let" "var" "if" "then" + "else" "match" "in" "return" "register" "ref" "forall" "operator" "effect" + "overload" "cast" "sizeof" "constraint" "default" "assert" "newtype" "pure" "infixl" "infixr" "infix" "scattered" "end" "try" "catch" "and" - "throw" "clause" "as" "repeat" "until" "while" "do" "foreach")) + "throw" "clause" "as" "repeat" "until" "while" "do" "foreach" "bitfield")) (defconst sail2-kinds '("Int" "Type" "Order" "inc" "dec" @@ -31,16 +31,12 @@ (defconst sail2-mode-syntax-table (let ((st (make-syntax-table))) + (modify-syntax-entry ?> "." st) (modify-syntax-entry ?_ "w" st) (modify-syntax-entry ?' "w" st) - (modify-syntax-entry ?* ". 23" st) - (condition-case nil - (progn - (modify-syntax-entry ?\( "()1n" st) - (modify-syntax-entry ?\) ")(4n" st)) - (error ; XEmacs signals an error instead of ignoring `n'. - (modify-syntax-entry ?\( "()1" st) - (modify-syntax-entry ?\) ")(4" st))) + (modify-syntax-entry ?* ". 23" st) + (modify-syntax-entry ?/ ". 124b" st) + (modify-syntax-entry ?\n "> b" st) st) "Syntax table for Sail2 mode") |
