aboutsummaryrefslogtreecommitdiffhomepage
path: root/coq/TODO-TMP
blob: 15fb4aa730bbcbd616e24a161470346547218e9a (plain)
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
--- multiple file hacking finish
--- X-sym wierdness: (1) (warning/warning) Must provide :input-spec
--- nick ideas from coq-ide: proof wizard
     (also their goto point is rather nicer: suspect it uses internal 
	state).

--- continue plan of adding more commands to menus, etc

--- can we fontify ----- as a rule?

--- buggy indentation:

(substring (setq a (shell-command-to-string
			    (concat
			     "coqdep *.v | grep " 
			     (file-name-nondirectory 
			      (file-name-sans-extension fname)) ".v"
			      " | awk '{print $1}' | sed 's/.vo:/.v/'")))
a  -- TAB here loops forever


=================================================================


;; coq-mmm.el	  Configure MMM mode for Coq (for LaTeX/coqdoc)
;;
;; Copyright     (C) 2004 David Aspinall
;; Authors:       David Aspinall <David.Aspinall@ed.ac.uk>
;; Licence:	 GPL
;;
;; $Id$
;; 
;; Presently, we deal with several cases of (** text *).
;; 
;; TODO:
;;  -- complete this
;;

(require 'mmm-auto)

(defconst coq-start-latex-regexp 
  (concat
   "\\(" 
   (proof-ids-to-regexp 
    ;; Perhaps section is too much?  The fontification is nice but
    ;; section headers are a bit short to use LaTeX mode in.
    (list "text" "header" ".*section"))  
   ;; Next one is nice but hammers font lock a bit too much
   ;; if there are lots of -- {* short comments *}
   ;; "\\|\-\-" ;; NB: doesn't work with \\<--\\>
   "\\)[ \t]+{\\*"))

(defconst coq-start-sml-regexp 
  (concat
   "\\(" 
   (proof-ids-to-regexp (list "ML" "ML_command" "ML_setup"
			      "typed_print_translation"))
   "\\)[ \t]+{\\*"))


(mmm-add-group
 'coq
 `((coq-latex
   :submode LaTeX-mode
   :face mmm-comment-submode-face
   :front ,coq-start-latex-regexp 
   :back  "\\*}"
   :insert ((?t coqtext nil @ "text {*" @ " " _ " " @ "*}" @))
   :save-matches 1)

  (coq-sml
   :submode sml-mode
   :face mmm-code-submode-face
   :front ,coq-start-sml-regexp
   :back  "\\*}"
   :insert ((?M coqml nil @ "ML_setup {*" @ " " _ " " @ "*}" @))
   :save-matches 1)))
   

(provide 'coq-mmm)

;;; coq-mmm.el ends here