1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
(require 'hilit19)
;; define mode for xconq 5 periods
(defun period-mode ()
"Major mode for editing xconq 5 periods"
(interactive)
(lisp-mode)
(setq major-mode 'period-mode)
(setq mode-name "xconq")
)
;; patterns for xconq 5 periods
(hilit-set-mode-patterns
'period-mode
'(
(";.*" nil comment)
("#|" "|#" comment)
("\"[^\"]*\"" nil string)
("\\[[^][]*\\]" nil type)
)
)
;; define mode for xconq 7 games
(defun gdl-mode ()
"Major mode for editing xconq 7 games"
(interactive)
(lisp-mode)
(setq major-mode 'gdl-mode)
(setq mode-name "GDL")
)
;; patterns for xconq 7 games
(hilit-set-mode-patterns
'gdl-mode
'(
(";.*" nil comment)
("#|" "|#" comment)
(hilit-string-find ?\\ string)
("\\(table\\|define\\|undefine\\|set\\|add\\|quote\\|append\\|remove\\|list\\)[ \t\n]" 1 decl)
("\\(game-module\\|base-module\\)[ \t\n]" 1 define)
("\\(include\\)[ \t\n]" 1 include)
("[^a-z]\\(true\\|false\\|cond\\|if\\|else\\|end-if\\|not\\|or\\|and\\|do\\)[ \t\n]" 1 keyword)
))
(setq auto-mode-alist (append auto-mode-alist
(list '("\\.per$" . period-mode))
(list '("\\.g$" . gdl-mode))
))
|