17 ;;; Code: |
17 ;;; Code: |
18 |
18 |
19 (setq dict-c5-mode-map (make-sparse-keymap)) |
19 (setq dict-c5-mode-map (make-sparse-keymap)) |
20 ;; (define-key dict-c5-mode-map (kbd "RET") 'my-xxx) |
20 ;; (define-key dict-c5-mode-map (kbd "RET") 'my-xxx) |
21 |
21 |
22 (require 'generic-x) |
22 (defvar dict-c5-font-lock-keywords |
|
23 ;; (setq dict-c5-font-lock-keywords |
|
24 '( |
|
25 ("^\\(_\\{5,\\}\\)\n\n\\(\\w[^\n]*\\)$" |
|
26 (1 font-lock-function-name-face) (2 font-lock-keyword-face)) |
|
27 ("\\[[^]]+]" . font-lock-type-face) |
|
28 )) |
23 |
29 |
24 ;;;###autoload |
30 ;;;###autoload |
25 (define-generic-mode |
31 (define-derived-mode dict-c5-mode fundamental-mode "Dict-c5" |
26 'dict-c5-mode |
32 "Derived mode for editing C5 dictd source file." |
27 nil |
33 (add-to-list 'auto-mode-alist (cons "\\.dict-c5$" 'dict-c5-mode)) |
28 nil |
34 (setq font-lock-defaults |
29 '( |
35 '(dict-c5-font-lock-keywords |
30 ("^\\(_\\{5,\\}\\)\n\n\\([^[:blank:]][^\n]*\\)$" |
36 t nil nil nil |
31 (1 font-lock-function-name-face) (2 font-lock-keyword-face)) |
37 (font-lock-multiline . t) |
32 ("\\[[^]]+]" . font-lock-type-face) |
38 )) |
33 ) |
39 (use-local-map dict-c5-mode-map) |
34 '("\\.dict-c5$") |
40 (modify-syntax-entry ?' ".") |
35 (list |
41 (modify-syntax-entry ?\" ".") |
36 (lambda nil |
|
37 (use-local-map dict-c5-mode-map) |
|
38 (modify-syntax-entry ?' ".") |
|
39 (modify-syntax-entry ?\" ".") |
|
40 (setq font-lock-multiline t) |
|
41 )) |
|
42 ) |
42 ) |
43 |
43 |
44 ;;; dict-mode.el ends here |
44 ;;; dict-mode.el ends here |