annotate yatex19.el @ 80:9b4354af748c

Too many changes from 1.72. See yatex.new. (Japanese)
author yuuji
date Sun, 24 Dec 2006 06:16:52 +0000
parents 0734be649cb8
children f14ec50103d0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
1 ;;; -*- Emacs-Lisp -*-
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
2 ;;; YaTeX facilities for Emacs 19
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
3 ;;; (c)1994-2006 by HIROSE Yuuji.[yuuji@yatex.org]
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
4 ;;; Last modified Mon Jun 26 11:31:34 2006 on firestorm
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
5 ;;; $Id$
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
6
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
7 ;(require 'yatex)
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
8
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
9 (and (boundp 'YaTeX-use-hilit19)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
10 YaTeX-use-hilit19
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
11 (require 'hilit19))
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
12
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
13 (defvar YaTeX-use-highlighting (or YaTeX-use-font-lock YaTeX-use-hilit19)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
14 "*Use highlighting buffer or not.")
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
15 (defvar YaTeX-background-mode
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
16 (or (if (fboundp 'get-frame-background-mode)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
17 (get-frame-background-mode (selected-frame)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
18 (if (fboundp 'frame-parameters)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
19 (cdr (assq 'background-mode (frame-parameters))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
20 (if (boundp 'frame-background-mode)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
21 frame-background-mode)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
22 (if (boundp 'hilit-background-mode)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
23 hilit-background-mode)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
24 (if (face-background 'default)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
25 (if (> (+ 32768 32768 32768)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
26 (apply '+
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
27 (funcall (if (fboundp 'color-rgb-components)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
28 'color-rgb-components
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
29 'x-color-values)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
30 (face-background 'default))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
31 'dark
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
32 'light))))
70
44e3a5e1e883 Fix makefile for Windows
yuuji
parents: 69
diff changeset
33
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
34 (defvar YaTeX-mode-menu-map (make-sparse-keymap "YaTeX"))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
35 (defvar YaTeX-mode-menu-map-process (make-sparse-keymap "Process"))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
36 (define-key YaTeX-mode-map [menu-bar yatex]
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
37 (cons "YaTeX" YaTeX-mode-menu-map))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
38 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
39 'YaTeX-mode-menu-map-process
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
40 (nreverse
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
41 '((buffer "LaTeX" . (lambda () (interactive) (YaTeX-typeset-menu nil ?j)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
42 (kill "Kill LaTeX" . (lambda () (interactive) (YaTeX-typeset-menu nil ?k)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
43 (bibtex "BibTeX" . (lambda () (interactive) (YaTeX-typeset-menu nil ?b)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
44 (mindex "makeindex" . (lambda () (interactive) (YaTeX-typeset-menu nil ?i)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
45 (preview "Preview" . (lambda () (interactive) (YaTeX-typeset-menu nil ?p)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
46 (lpr "lpr" . (lambda () (interactive) (YaTeX-typeset-menu nil ?l)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
47 (lpq "lpq" . (lambda () (interactive) (YaTeX-typeset-menu nil ?q))))))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
48 (defvar YaTeX-mode-menu-map-modes (make-sparse-keymap "Modes"))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
49 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
50 'YaTeX-mode-menu-map-modes
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
51 (delq nil
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
52 (nreverse
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
53 (list
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
54 (if YaTeX-auto-math-mode nil
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
55 (cons 'math (cons "Toggle math-mode"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
56 '(lambda () (interactive)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
57 (YaTeX-switch-mode-menu nil ?t)))))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
58 (cons 'mod (cons "Toggle Modify Mode"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
59 '(lambda () (interactive)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
60 (YaTeX-switch-mode-menu nil ?m))))))))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
61 (defvar YaTeX-mode-menu-map-percent (make-sparse-keymap "percent"))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
62 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
63 'YaTeX-mode-menu-map-percent
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
64 (nreverse
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
65 '((! "Change LaTeX typesetter(%#!)"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
66 . (lambda () (interactive) (YaTeX-%-menu nil nil ?!)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
67 (begend "Set %#BEGIN-%#END on region"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
68 . (lambda () (interactive) (YaTeX-%-menu nil nil ?b)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
69 (lpr "Change LPR format"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
70 . (lambda () (interactive) (YaTeX-%-menu nil nil ?l))))))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
71
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
72 (defvar YaTeX-mode-menu-map-jump (make-sparse-keymap "jump"))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
73 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
74 'YaTeX-mode-menu-map-jump
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
75 (nreverse
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
76 '((corres "Goto corersponding position" . YaTeX-goto-corresponding-*)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
77 (main "Visit main source"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
78 . (lambda () (interactive) (YaTeX-visit-main)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
79 (main-other "Visit main source other window"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
80 . YaTeX-visit-main-other-window))))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
81
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
82 (defvar YaTeX-mode-menu-map-comment (make-sparse-keymap "comment"))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
83 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
84 'YaTeX-mode-menu-map-comment
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
85 (nreverse
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
86 '((comment "Comment region or environment" . YaTeX-comment-region)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
87 (uncomment "Unomment region or environment" . YaTeX-uncomment-region)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
88 (commentp "Comment paragraph" . YaTeX-comment-paragraph)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
89 (uncommentp "Uncomment paragraph" . YaTeX-uncomment-paragraph))))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
90
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
91 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
92 'YaTeX-mode-menu-map
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
93 (nreverse
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
94 (list
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
95 ;; Change/Kill/Fill -------------------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
96 (cons (list 'chg "Change") (cons "Change macros" 'YaTeX-change-*))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
97 (cons (list 'kill "Kill") (cons "Kill macros" 'YaTeX-kill-*))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
98 (cons (list 'fill "Fill") (cons "Fill \\item" 'YaTeX-fill-item))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
99 (cons (list 'nl "Newline") (cons "Newline" 'YaTeX-intelligent-newline))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
100 ;; ========================================================================
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
101 (cons (list 'sep1 "---") (cons "---" nil))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
102 ;; Comment/Uncomment ------------------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
103 (cons (list 'comment "comment") (cons "Comment region or environment"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
104 'YaTeX-comment-region))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
105 (cons (list 'uncomment "uncomment") (cons "Uncomment region or environment"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
106 'YaTeX-uncomment-region))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
107 (cons (list 'commentp "commentp") (cons "Comment paragraph"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
108 'YaTeX-comment-paragraph))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
109 (cons (list 'uncommentp "uncommentp") (cons "Uncomment paragraph"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
110 'YaTeX-uncomment-paragraph))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
111 ;; ========================================================================
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
112 (cons (list 'sep2 "---") (cons "---" nil))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
113 ;; Jump cursor ------------------------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
114 (cons (list 'jump "jump") (cons "Jump Cursor" YaTeX-mode-menu-map-jump))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
115 ;; Document hierarchy ---------------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
116 (cons (list 'hier "hier") (cons "Display Document hierarchy"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
117 'YaTeX-display-hierarchy))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
118 ;; What position ----------------------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
119 (cons (list 'col "column") (cons "What column in tabular"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
120 'YaTeX-what-column))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
121 ;; % menu -----------------------------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
122 (cons (list 'percent "percent") (cons "Edit %# notation"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
123 YaTeX-mode-menu-map-percent))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
124 ;; Switch modes -----------------------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
125 (cons (list 'mode "mode") (cons "Switching YaTeX's modes"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
126 YaTeX-mode-menu-map-modes))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
127 ;; ========================================================================
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
128 (cons (list 'sep "---") (cons "---" nil))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
129 ;; Help for LaTeX ---------------------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
130 (cons (list 'ap "apr") (cons "Apropos on LaTeX commands" 'YaTeX-apropos))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
131 (cons (list 'help "help") (cons "Help on LaTeX commands" 'YaTeX-help))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
132 ;; Menu for Typeset relating processes ------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
133 (cons (list 'process "Process menu")
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
134 (cons "Process" YaTeX-mode-menu-map-process)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
135 ))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
136
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
137 ;; Make section-type commands menu -------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
138 (defvar YaTeX-mode-menu-map-sectionr
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
139 (make-sparse-keymap "Enclose region with section-type macro"))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
140 (defvar YaTeX-mode-menu-map-section (make-sparse-keymap "Section-type macro"))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
141 (let ((sorted-section
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
142 (sort
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
143 (delq nil
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
144 (mapcar (function (lambda (s)
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
145 (if (> (length (car s)) 5)
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
146 (car s))))
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
147 (append section-table user-section-table)))
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
148 'string<)))
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
149 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
150 'YaTeX-mode-menu-map-section
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
151 (mapcar
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
152 (function (lambda (secname)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
153 (cons (intern secname)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
154 (cons secname
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
155 (list 'lambda ()
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
156 (list 'interactive)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
157 (list 'YaTeX-make-section
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
158 nil nil nil
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
159 secname))))))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
160 sorted-section))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
161 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
162 'YaTeX-mode-menu-map-sectionr
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
163 (mapcar
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
164 (function (lambda (secname)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
165 (cons (intern secname)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
166 (cons secname
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
167 (list 'lambda ()
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
168 (list 'interactive)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
169 (list 'YaTeX-make-section
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
170 nil
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
171 (list 'region-beginning)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
172 (list 'region-end)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
173 secname))))))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
174 sorted-section)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
175
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
176 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
177 'YaTeX-mode-menu-map
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
178 (nreverse
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
179 (list
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
180 (cons '(sectionr "Section-type (long name)")
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
181 (cons "Section type" YaTeX-mode-menu-map-section))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
182 (cons '(section "Section-type region (long name)")
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
183 (cons "Section type region (long name)"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
184 YaTeX-mode-menu-map-sectionr)))))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
185
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
186 ;; Make large-type commands menu ---------------------------------------------
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
187 (defvar YaTeX-mode-menu-map-envr (make-sparse-keymap "Environment region"))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
188 (defvar YaTeX-mode-menu-map-env (make-sparse-keymap "Environment"))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
189
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
190 (let ((sorted-env
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
191 (sort
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
192 (mapcar (function (lambda (s) (car s)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
193 (append env-table user-env-table))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
194 'string<)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
195 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
196 'YaTeX-mode-menu-map-env
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
197 (mapcar
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
198 (function (lambda (envname)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
199 (cons (intern envname)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
200 (cons envname
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
201 (list 'lambda ()
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
202 (list 'interactive)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
203 (list 'YaTeX-insert-begin-end
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
204 envname nil))))))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
205 sorted-env))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
206 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
207 'YaTeX-mode-menu-map-envr
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
208 (mapcar
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
209 (function (lambda (envname)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
210 (cons (intern envname)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
211 (cons envname
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
212 (list 'lambda ()
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
213 (list 'interactive)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
214 (list 'YaTeX-insert-begin-end
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
215 envname t))))))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
216 sorted-env)))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
217 (YaTeX-define-menu
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
218 'YaTeX-mode-menu-map
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
219 (nreverse
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
220 (list
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
221 (cons '(envr "Environment")
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
222 (cons "Environment" YaTeX-mode-menu-map-env))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
223 (cons '(env "Environment region")
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
224 (cons "Environment region"
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
225 YaTeX-mode-menu-map-envr)))))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
226
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
227 (and (featurep 'xemacs)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
228 (add-hook 'yatex-mode-hook
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
229 '(lambda ()
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
230 (or (assoc "YaTeX" current-menubar)
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
231 (progn
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
232 (set-buffer-menubar (copy-sequence current-menubar))
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
233 (add-submenu nil YaTeX-mode-menu-map))))))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
234
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
235 ;; Other key bindings for window-system
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
236 ;(YaTeX-define-key [?\C- ] 'YaTeX-do-completion)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
237 (define-key YaTeX-mode-map [?\M-\C- ] 'YaTeX-mark-environment)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
238
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
239 ;; Highlightening
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
240 ;; メニューに比べてこっちは結構本気でやってます。
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
241 ;; だって文書構造がとっても分かり易いんだもん。
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
242 ;; みんなも hilit19.el を使おう!
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
243 ;; とかいってるうちに hilit19 って obsolete になってしまった…
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
244 ;; …ということで、hilit19 用のパターンを font-lock に変換する関数を
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
245 ;; 作成してなんとか font-lock にも対応(2000年12月)。
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
246 ;; しかし、font-lock は仕様が変わりやすい雰囲気でずっと動き続けるか
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
247 ;; どうかは不明。むしろ進化の止まったhilit19を使い続ける方が安心と
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
248 ;; 言えないこともないが世の流れは読めず……。
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
249 ;;
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
250 ;; さて、まずは対応する {} をピカピカ範囲とするような関数を作る。
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
251 ;; これは hilit-LaTeX.el を参考にした。でも、ちゃんと section 型コマンドの
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
252 ;; 引数を数えて正しい位置までピカピカさせるよ〜ん!
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
253
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
254 (defun YaTeX-19-region-section-type (pattern)
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
255 "Return cons of starting and end point of section-type commands of PATTERN."
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
256 (if (re-search-forward pattern nil t)
69
807c1e7e68b7 yahtml-escape-chars-region
yuuji
parents: 68
diff changeset
257 (let ((m0 (match-beginning 0)) (e0 (match-end 0)) cmd (argc 1))
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
258 (setq cmd (substring (YaTeX-match-string 0) 1)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
259 argc (or (car (cdr (YaTeX-lookup-table cmd 'section))) argc))
69
807c1e7e68b7 yahtml-escape-chars-region
yuuji
parents: 68
diff changeset
260 (if (= argc 0) (cons m0 (point)) ;引数個数0ならマッチした領域
807c1e7e68b7 yahtml-escape-chars-region
yuuji
parents: 68
diff changeset
261 (skip-chars-forward " \n\t*")
807c1e7e68b7 yahtml-escape-chars-region
yuuji
parents: 68
diff changeset
262 (while (looking-at "\\[") (forward-list 1)) ;optionならスキップ
807c1e7e68b7 yahtml-escape-chars-region
yuuji
parents: 68
diff changeset
263 (skip-chars-forward " \n\t")
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
264 (prog1
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
265 (if (looking-at "{") ;{}が始まるならちゃんとしたsection型
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
266 (cons m0
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
267 (condition-case err
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
268 (progn
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
269 ;;(skip-chars-backward "^{") (forward-char -2)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
270 (while (> argc 0)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
271 (skip-chars-forward "^{")
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
272 (forward-list 1)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
273 (setq argc (1- argc)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
274 (point))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
275 (error m0)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
276 ;{}でないならたぶん \verb 環境などにあるダミー
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
277 (cons m0 e0))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
278 ;;move to re-search end not to make font-lock confused
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
279 (goto-char e0))))))
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
280
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
281 (defun YaTeX-19-region-large-type (pattern)
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
282 "Return cons of large-type contents.
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
283 Assumes PATTERN begins with `{'."
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
284 (if (re-search-forward pattern nil t)
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
285 (let ((m0 (match-beginning 0)) (e0 (match-end 0))p)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
286 (goto-char m0)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
287 (skip-chars-forward "^ \t\n")
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
288 (skip-chars-forward " \t\n")
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
289 (prog1
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
290 (cons (setq p (point))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
291 (condition-case err
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
292 (progn (goto-char m0) (forward-list 1) (1- (point)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
293 (error (1+ p))))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
294 ;;move to re-search end not to make font-lock confused
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
295 (goto-char e0)))))
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
296
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
297 (defun YaTeX-19-region-env-type (envptn)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
298 "Return cons of environment contents specified by ENVPTN as regexp."
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
299 (if (and (looking-at envptn) ;;re-search-forward envptn nil t)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
300 (save-excursion
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
301 (not(search-backward YaTeX-comment-prefix
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
302 (point-beginning-of-line) t))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
303 (let ((m0 (match-beginning 0)) (e0 (match-end 0))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
304 (env (YaTeX-match-string 1))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
305 (nextline (progn (forward-line 1) (point))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
306 (goto-char m0)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
307 ;(message "max=%d" (point-max))(sit-for 2)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
308 (condition-case err
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
309 (if (YaTeX-goto-corresponding-environment)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
310 (prog1
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
311 (cons nextline (match-beginning 0))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
312 (goto-char e0)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
313 (error nil)))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
314
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
315 (defun YaTeX-19-region-paren-math (ptn)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
316 "Return cons of \(...\) or \[...\] type math environment."
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
317 (if (looking-at "\\\\\\([\[(]\\)")
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
318 (let*((ptype (cdr (assoc (YaTeX-match-string 1)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
319 '(("(" . ")") ("[" "]")))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
320 (b (match-beginning 0))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
321 (e (match-end 0)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
322 (condition-case err
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
323 (if (re-search-forward
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
324 (concat "[^\\]\\\\" (regexp-quote ptype))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
325 nil t)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
326 (prog1 (cons b (match-beginning 0))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
327 (goto-char e)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
328 (error nil)))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
329
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
330 (defun YaTeX-19-region-math-sub (ptn)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
331 "Return cons of _{...}"
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
332 (if (and (looking-at ptn)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
333 (eq YaTeX-font-lock-formula-face
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
334 (get-text-property (point) 'face)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
335 (let ((e (match-end 0)) (p (point)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
336 (goto-char e)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
337 (prog1
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
338 (condition-case ()
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
339 (if (looking-at "{")
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
340 (cons (1+ (point))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
341 (progn (forward-list 1) (1- (point))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
342 (cons e
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
343 (cond
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
344 ((looking-at (concat YaTeX-ec-regexp
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
345 YaTeX-TeX-token-regexp))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
346 (match-end 0))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
347 ;; other case??
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
348 (t (1+ (point)))))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
349 (goto-char e)))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
350
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
351 ;; 些細なことだが % の前の文字もピカリとさせてしまうようで… >hilit19
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
352 ;; ↓この関数は下の hilit-set-mode-patterns の "[^\\]\\(%\\).*$" に
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
353 ;; 依存している
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
354 (defun YaTeX-19-region-comment (pattern)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
355 "Return list of comment start and end point."
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
356 (if (re-search-forward pattern nil t)
56
a9653fbd1c1c Bug fix version
yuuji
parents: 53
diff changeset
357 (cons (match-beginning 2) (match-end 0))))
a9653fbd1c1c Bug fix version
yuuji
parents: 53
diff changeset
358
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
359 ;; 2006/6/23 match only if it's in specified envrironment.
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
360 (defun YaTeX-19-re-search-in-env (ptn_env)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
361 (catch 'done
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
362 ;; For font-lock, this function should find it.
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
363 (let (md r)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
364 (while (YaTeX-re-search-active-forward
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
365 (car ptn_env) YaTeX-comment-prefix nil t)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
366 (setq md (match-data)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
367 r (string-match (cdr ptn_env)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
368 (or (YaTeX-inner-environment 'quick) "")))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
369 (store-match-data md)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
370 (if r (setq r (cons (match-beginning 0) (match-end 0))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
371 (if (or YaTeX-use-hilit19 r) (throw 'done r))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
372 (goto-char (match-end 0)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
373 (throw 'done r))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
374
56
a9653fbd1c1c Bug fix version
yuuji
parents: 53
diff changeset
375 ;;(make-face 'tt)
a9653fbd1c1c Bug fix version
yuuji
parents: 53
diff changeset
376 ;;(set-face-font 'tt "-schumacher-clean-medium-r-normal--*-*-*-*-*-*-*-*")
a9653fbd1c1c Bug fix version
yuuji
parents: 53
diff changeset
377 ;;(hilit-translate 'tt "white")
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
378
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
379 ;; font-lockの関数呼びパターンの場合は正規表現が行末までマッチすると
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
380 ;; hilit候補対象外にされてしまうので1字手前で正規表現を止める
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
381 (defvar YaTeX-hilit-patterns-alist
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
382 '(
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
383 ;; formulas
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
384 (YaTeX-19-region-math-sub "[^\\]^" YaTeX-font-lock-math-sup-face overwrite)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
385 (YaTeX-19-region-math-sub "[^\\]_" YaTeX-font-lock-math-sub-face overwrite)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
386 (YaTeX-19-region-env-type
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
387 "\\\\begin{\\(equation\\|eqnarray\\|displaymath\\|\\(x?x?\\|fl\\)align\\|multline\\|gather\\)" formula)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
388 ;(YaTeX-19-region-paren-math "\\\\" formula)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
389 ;;("[^\\]\\\\(" "\\\\)" formula) ; \( \)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
390 ;;("[^\\]\\\\\\[" "\\\\\\]" formula) ; \[ \]
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
391 ;; comments
56
a9653fbd1c1c Bug fix version
yuuji
parents: 53
diff changeset
392 (YaTeX-19-region-comment "\\([^\\]\\|^\\)\\(%\\).*$" comment)
58
3a7c0c2bf16d Official support for AMS-LaTeX, HTML, xdvi -remote, Netscape
yuuji
parents: 57
diff changeset
393
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
394 (YaTeX-19-region-section-type "\\\\footnote\\(mark\\|text\\)?\\>" keyword)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
395 ("\\\\[a-z]+box" 0 keyword)
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
396 (YaTeX-19-region-section-type "\\\\\\(v\\|h\\)space\\>" keyword)
58
3a7c0c2bf16d Official support for AMS-LaTeX, HTML, xdvi -remote, Netscape
yuuji
parents: 57
diff changeset
397
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
398 ;; (re-)define new commands/environments/counters
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
399 (YaTeX-19-region-section-type
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
400 "\\\\\\(re\\)?new\\(environment\\|command\\|theorem\\|length\\|counter\\)\\>"
60
9e08ed569d80 yahtml: change keystroke of calling browser to [prefix] t p
yuuji
parents: 59
diff changeset
401 defun)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
402 (YaTeX-19-region-section-type
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
403 "\\\\textbf\\>" bold)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
404
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
405 ;; various declarations/definitions
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
406 (YaTeX-19-region-section-type
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
407 "\\\\\\(set\\|setto\\|addto\\)\\(length\\|width\\|counter\\)\\>"
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
408 define)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
409 (YaTeX-19-region-section-type
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
410 "\\\\\\(title\\|author\\|date\\|thanks\\)\\>" define)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
411
59
48ac97a6b6ce Call drawing tools
yuuji
parents: 58
diff changeset
412 ("\\\\document\\(style\\|class\\)\\(\\[.*\\]\\)?{" "}" decl)
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
413
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
414 ("\\\\\\(begin\\|end\\|nofiles\\|includeonly\\|usepackage\\(\\[.*\\]\\)?\\){" "}" decl)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
415 ("\\\\\\(raggedright\\|makeindex\\|makeglossary\\|maketitle\\)\\b" 0 decl)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
416 ("\\\\\\(pagestyle\\|thispagestyle\\|pagenumbering\\){" "}" decl)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
417 ("\\\\\\(normalsize\\|small\\|footnotesize\\|scriptsize\\|tiny\\|large\\|Large\\|LARGE\\|huge\\|Huge\\)\\b" 0 decl)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
418 ("\\\\\\(appendix\\|tableofcontents\\|listoffigures\\|listoftables\\)\\b"
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
419 0 decl)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
420 ("\\\\\\(bf\\|em\\|it\\|rm\\|sf\\|sl\\|ss\\|tt\\)\\b" 0 decl)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
421
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
422 ;; label-like things
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
423 ;;this should be customized by YaTeX-item-regexp
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
424 ("\\\\\\(sub\\)*item\\b\\(\\[[^]]*\\]\\)?" 0 label)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
425 (YaTeX-19-region-section-type
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
426 "\\\\\\(caption\\|bibitem\\)\\(\\[[^]]*\\]\\)?\\>" label)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
427
61
b9f753846b6b Bug fix release
yuuji
parents: 60
diff changeset
428 ;; things that do some sort of cross-reference
b9f753846b6b Bug fix release
yuuji
parents: 60
diff changeset
429 (YaTeX-19-region-section-type
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
430 "\\\\\\(\\(no\\|possessive\\)?cite[a-z]*\\|[a-z]*ref\\|label\\|index\\|glossary\\)\\>"
61
b9f753846b6b Bug fix release
yuuji
parents: 60
diff changeset
431 crossref)
b9f753846b6b Bug fix release
yuuji
parents: 60
diff changeset
432
b9f753846b6b Bug fix release
yuuji
parents: 60
diff changeset
433 ;; things that bring in external files
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
434 ("\\\\\\(include\\|input\\|bibliography\\(style\\)?\\){" "}" include)
61
b9f753846b6b Bug fix release
yuuji
parents: 60
diff changeset
435
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
436 ;; ("\\\\begin{\\(eqn\\|equation\\|x?x?align\\|split\\|multline\\|gather\\)"
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
437 ;; "\\\\end{\\(eqn\\|equation\\|x?x?align\\|split\\|multline\\|gather\\).*}"
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
438 ;; formula)
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
439 ("\\([^\\$]\\|^\\)\\($\\($[^$]*\\$\\|[^$]*\\)\\$\\)" 2 formula); '$...$' or '$$...$$'
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
440
61
b9f753846b6b Bug fix release
yuuji
parents: 60
diff changeset
441 ;; "wysiwyg" emphasis -- these don't work on nested expressions
56
a9653fbd1c1c Bug fix version
yuuji
parents: 53
diff changeset
442 (YaTeX-19-region-large-type "{\\\\\\(em\\|it\\|sl\\)" italic)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
443 (YaTeX-19-region-large-type "{\\\\bf" bold)
56
a9653fbd1c1c Bug fix version
yuuji
parents: 53
diff changeset
444 ;;;(YaTeX-19-region-large-type "{\\\\tt" tt)
a9653fbd1c1c Bug fix version
yuuji
parents: 53
diff changeset
445 ;;;("\\\\begin{verbatim" "\\\\end{verbatim" tt)
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
446
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
447 ("``" "''" string)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
448 ("\\\\\\(new\\|clear\\(double\\)?\\)page\\>\\|\\\\\\(\\\\\\|cr\\)\\>"
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
449 0 delimiter)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
450 (YaTeX-19-re-search-in-env
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
451 ("&\\|\\\\hline" . "tabular\\|equation\\|eqn\\|array\\|align") delimiter)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
452 (YaTeX-19-re-search-in-env ("\\\\[+-=><'`]" . "tabbing") delimiter)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
453 )
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
454 "*Hiliting pattern alist for LaTeX text.")
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
455
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
456 ;;(defvar YaTeX-hilit-pattern-adjustment-default nil)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
457 ;; ↑いらなくなった。
51
b0371b6ed799 Created `ChangeLog'.
yuuji
parents: 49
diff changeset
458 (defvar YaTeX-hilit-pattern-adjustment-private nil
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
459 "*Adjustment hilit-pattern-alist for default yatex-mode's pattern.")
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
460 (defvar YaTeX-hilit-sectioning-face
57
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
461 '(yellow/dodgerblue yellow/slateblue)
51
b0371b6ed799 Created `ChangeLog'.
yuuji
parents: 49
diff changeset
462 "*Hilightening face for sectioning unit. '(FaceForLight FaceForDark)")
57
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
463 (defvar YaTeX-hilit-sectioning-attenuation-rate
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
464 '(15 40)
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
465 "*Maximum attenuation rate of sectioning face. '(ForeRate BackRate)
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
466 Each rate specifies how much portion of RGB value should be attenuated
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
467 towards to lowest sectioning unit. Numbers should be written in percentage.")
52
5d94deabb9f9 Set YaTeX-indent-line to 'indent-line-function.
yuuji
parents: 51
diff changeset
468 (defvar YaTeX-sectioning-patterns-alist nil
5d94deabb9f9 Set YaTeX-indent-line to 'indent-line-function.
yuuji
parents: 51
diff changeset
469 "Hilightening patterns for sectioning units.")
47
d7e7b4654058 Support special popup frame.
yuuji
parents: 46
diff changeset
470 (defvar YaTeX-hilit-singlecmd-face
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
471 '("slateblue2" . "aquamarine")
51
b0371b6ed799 Created `ChangeLog'.
yuuji
parents: 49
diff changeset
472 "*Hilightening face for maketitle type. '(FaceForLight FaceForDark)")
52
5d94deabb9f9 Set YaTeX-indent-line to 'indent-line-function.
yuuji
parents: 51
diff changeset
473
5d94deabb9f9 Set YaTeX-indent-line to 'indent-line-function.
yuuji
parents: 51
diff changeset
474 ;;; セクションコマンドを、構造レベルの高さに応じて色の濃度を変える
5d94deabb9f9 Set YaTeX-indent-line to 'indent-line-function.
yuuji
parents: 51
diff changeset
475 ;;; 背景が黒でないと何が嬉しいのか分からないに違いない.
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
476 ;;; もしかして白地の時は構造レベルに応じて色を明るくしたほうが良いのか?
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
477 ;;; ...どうやらそうでもないらしい。これでいいみたい(2000/12)。
60
9e08ed569d80 yahtml: change keystroke of calling browser to [prefix] t p
yuuji
parents: 59
diff changeset
478 ;(if (fboundp 'win32-color-values)
9e08ed569d80 yahtml: change keystroke of calling browser to [prefix] t p
yuuji
parents: 59
diff changeset
479 ; (fset 'x-color-values 'win32-color-values))
9e08ed569d80 yahtml: change keystroke of calling browser to [prefix] t p
yuuji
parents: 59
diff changeset
480
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
481 (defun YaTeX-19-create-face (sym fgcolor &optional bgcolor)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
482 "Create face named SYM with face of FGCOLOR/BGCOLOR."
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
483 (cond
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
484 ((and YaTeX-use-font-lock (fboundp 'defface))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
485 (custom-declare-face
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
486 sym
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
487 (list
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
488 (list (list
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
489 '(class color)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
490 ;(list 'background YaTeX-background-mode)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
491 )
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
492 (delq nil
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
493 (append
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
494 (list ':foreground fgcolor)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
495 (if bgcolor
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
496 (list ':background bgcolor))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
497 ))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
498 )
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
499 (list t (list ':bold t ':underline t))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
500 )
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
501 (format "Font lock face for %s" sym)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
502 ':group 'font-lock-faces)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
503 (set sym sym)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
504 sym)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
505 ((and YaTeX-use-hilit19 (and (fboundp 'hilit-translate)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
506 (let ((face (intern (concat fgcolor "/" bgcolor))))
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
507 (if (facep sym)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
508 (hilit-translate sym face)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
509 (make-face sym)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
510 (or (memq sym hilit-predefined-face-list)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
511 (progn
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
512 (set-face-foreground sym fgcolor)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
513 (set-face-background sym bgcolor)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
514 (setq hilit-predefined-face-list
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
515 (cons sym hilit-predefined-face-list)))))
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
516 face))))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
517
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
518 (cond
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
519 (YaTeX-use-highlighting
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
520 (cond
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
521 (window-system
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
522 (let*((sectface
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
523 (car (if (eq YaTeX-background-mode 'dark)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
524 (cdr YaTeX-hilit-sectioning-face)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
525 YaTeX-hilit-sectioning-face)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
526 (sectcol (symbol-name sectface))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
527 (fl YaTeX-use-font-lock)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
528 (form (if fl "#%02x%02x%02x" "hex-%02x%02x%02x"))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
529 sect-pat-alist)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
530 (if (string-match "/" sectcol)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
531 (let ((fmin (nth 0 YaTeX-hilit-sectioning-attenuation-rate))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
532 (bmin (nth 1 YaTeX-hilit-sectioning-attenuation-rate))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
533 colorvalue fR fG fB bR bG bB pat fg bg level from face list lm)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
534 (require 'yatexsec)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
535 (setq fg (substring sectcol 0 (string-match "/" sectcol))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
536 bg (substring sectcol (1+ (string-match "/" sectcol)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
537 colorvalue (x-color-values fg)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
538 fR (/ (nth 0 colorvalue) 256)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
539 fG (/ (nth 1 colorvalue) 256)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
540 fB (/ (nth 2 colorvalue) 256)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
541 colorvalue (x-color-values bg)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
542 bR (/ (nth 0 colorvalue) 256)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
543 bG (/ (nth 1 colorvalue) 256)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
544 bB (/ (nth 2 colorvalue) 256)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
545 lm YaTeX-sectioning-max-level
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
546 list YaTeX-sectioning-level)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
547 (while list
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
548 (setq pat (concat YaTeX-ec-regexp (car (car list))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
549 ;;"\\*?\\(\\[[^]]*\\]\\)?\\>" ;改行はさむと駄目
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
550 "\\>"
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
551 )
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
552 level (cdr (car list))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
553 fg (format form
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
554 (- fR (/ (* level fR fmin) lm 100))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
555 (- fG (/ (* level fG fmin) lm 100))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
556 (- fB (/ (* level fB fmin) lm 100)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
557 bg (format form
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
558 (- bR (/ (* level bR bmin) lm 100))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
559 (- bG (/ (* level bG bmin) lm 100))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
560 (- bB (/ (* level bB bmin) lm 100)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
561 from (intern (format "YaTeX-sectioning-%d" level))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
562 ;;face (intern (concat fg "/" bg))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
563 )
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
564 (setq face (YaTeX-19-create-face from fg bg))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
565 (setq sect-pat-alist
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
566 (cons;;(list pat "}" face)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
567 (list 'YaTeX-19-region-section-type pat face)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
568 sect-pat-alist))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
569 (setq list (cdr list)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
570 (setq YaTeX-sectioning-patterns-alist sect-pat-alist)))))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
571 (t ;not window-system
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
572 (setq YaTeX-sectioning-patterns-alist
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
573 (list
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
574 (list
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
575 (concat YaTeX-ec-regexp
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
576 "\\(\\(sub\\)*\\(section\\|paragraph\\)\\|chapter"
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
577 "\\|part\\){[^}]*}")
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
578 0
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
579 'define)))))))
52
5d94deabb9f9 Set YaTeX-indent-line to 'indent-line-function.
yuuji
parents: 51
diff changeset
580
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
581 ;; ローカルなマクロを読み込んだ後 redraw すると
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
582 ;; ローカルマクロを keyword として光らせる(keywordじゃまずいかな…)。
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
583 (defvar hilit-patterns-alist nil) ;for absence of hilit19
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
584
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
585 (defun YaTeX-19-collect-macros ()
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
586 (cond
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
587 (YaTeX-use-highlighting
47
d7e7b4654058 Support special popup frame.
yuuji
parents: 46
diff changeset
588 (let ((get-face
d7e7b4654058 Support special popup frame.
yuuji
parents: 46
diff changeset
589 (function
d7e7b4654058 Support special popup frame.
yuuji
parents: 46
diff changeset
590 (lambda (table)
d7e7b4654058 Support special popup frame.
yuuji
parents: 46
diff changeset
591 (cond
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
592 ((eq YaTeX-background-mode 'light) (car table))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
593 ((eq YaTeX-background-mode 'dark) (cdr table))
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
594 ;; Default case equals to 'light mode...is it OK?
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
595 (t (car table))))))
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
596 sect single pattern-alist)
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
597 (YaTeX-19-create-face ;;hilit-translate
52
5d94deabb9f9 Set YaTeX-indent-line to 'indent-line-function.
yuuji
parents: 51
diff changeset
598 ;;sectioning (funcall get-face YaTeX-hilit-sectioning-face)
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
599 'macro (funcall get-face YaTeX-hilit-singlecmd-face))
57
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
600 (if (setq sect (append user-section-table tmp-section-table))
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
601 (setq sect (concat "\\\\\\("
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
602 (mapconcat
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
603 (function
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
604 (lambda (s) (regexp-quote (car s))))
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
605 sect
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
606 "\\|")
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
607 "\\)\\>")))
57
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
608 (if (setq single (append user-singlecmd-table tmp-singlecmd-table))
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
609 (setq single (concat "\\\\\\("
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
610 (mapconcat
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
611 (function (lambda (s) (regexp-quote (car s))))
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
612 single
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
613 "\\|")
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
614 "\\)\\b")))
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
615 (cons 'yatex-mode
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
616 (append
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
617 (list nil)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
618 YaTeX-sectioning-patterns-alist
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
619 YaTeX-hilit-pattern-adjustment-private
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
620 ;;YaTeX-hilit-pattern-adjustment-default
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
621 YaTeX-hilit-patterns-alist
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
622 (delq nil
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
623 (list
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
624 (if sect (list
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
625 'YaTeX-19-region-section-type
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
626 sect
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
627 'keyword))
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
628 (if single (list single 0 'macro))))))))))
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
629
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
630 ;;2006/6/23 new face, `delimiter' introduced
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
631 (YaTeX-19-create-face 'delimiter "saddlebrown" "ivory")
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
632
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
633 ;;(YaTeX-19-collect-macros) ;causes an error
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
634 (defun YaTeX-hilit-setup-alist ()
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
635 (cond
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
636 ((boundp 'hilit-patterns-alist)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
637 (setq hilit-patterns-alist
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
638 (delq (assq 'yatex-mode hilit-patterns-alist) hilit-patterns-alist))
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
639 (if YaTeX-use-hilit19
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
640 (setq hilit-patterns-alist
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
641 (cons (YaTeX-19-collect-macros) hilit-patterns-alist))))))
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
642
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
643 (defun YaTeX-hilit-recenter (arg)
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
644 "Collect current local macro and hilit-recenter."
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
645 (interactive "P")
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
646 (YaTeX-hilit-setup-alist)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
647 (if (fboundp 'font-lock-mode) (font-lock-mode -1))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
648 (hilit-recenter arg))
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
649
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
650 (let ((k (append (where-is-internal 'hilit-recenter)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
651 (where-is-internal 'recenter))))
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
652 (while k
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
653 (define-key YaTeX-mode-map (car k) 'YaTeX-19-recenter)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
654 (setq k (cdr k))))
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
655
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
656 (defun YaTeX-19-recenter (&optional arg)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
657 (interactive "P")
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
658 (if YaTeX-use-hilit19
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
659 (YaTeX-hilit-recenter arg)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
660 (YaTeX-font-lock-recenter arg)))
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
661
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
662 (defun YaTeX-font-lock-recenter (&optional arg)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
663 (interactive "P")
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
664 (cond
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
665 ((and (boundp 'hilit-patterns-alist)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
666 (assq 'yatex-mode hilit-patterns-alist))
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
667 (if (fboundp 'hilit-unhighlight-region)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
668 (hilit-unhighlight-region (point-min) (point-max)))
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
669 (setq hilit-patterns-alist ;ensure to remove
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
670 (delq (assq 'yatex-mode hilit-patterns-alist)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
671 hilit-patterns-alist))))
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
672 (setq YaTeX-font-lock-keywords
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
673 (YaTeX-convert-pattern-hilit2fontlock
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
674 (cdr (YaTeX-19-collect-macros)))
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
675 ;;; Keep this section for debugging.
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
676 ;; YaTeX-font-lock-keywords
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
677 ;; (append (YaTeX-convert-pattern-hilit2fontlock
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
678 ;; (cdr (YaTeX-19-collect-macros)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
679 ;; '(((lambda (lim)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
680 ;; (YaTeX-19-re-search-in-env '("foo" . "tabular"))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
681 ;; ;(search-forward "foo" nil t)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
682 ;; )
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
683 ;; (0 YaTeX-font-lock-delimiter-face))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
684 ;;font-lock-keywords nil
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
685 font-lock-set-defaults nil)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
686 ;;(save-excursion
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
687 ;; (font-lock-fontify-region (window-start) (window-end))
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
688 (font-lock-mode -1) ;is stupid, but sure.
73
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
689 (font-lock-mode 1)
f41b01fef5d6 Stable version(hope to be)
yuuji
parents: 72
diff changeset
690 (recenter arg))
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
691
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
692 (defun YaTeX-font-lock-fontify-region (beg end)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
693 (interactive "r")
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
694 (save-excursion (font-lock-fontify-region beg end)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
695
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
696 (defun YaTeX-font-lock-fontify-environment ()
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
697 (interactive)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
698 (save-excursion
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
699 (save-match-data ;is safe after emacs-19
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
700 (YaTeX-mark-environment)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
701 (message "")
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
702 (YaTeX-font-lock-fontify-region (region-beginning) (region-end)))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
703
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
704 (defun YaTeX-font-lock-highlight-menu ()
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
705 (interactive)
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
706 (message "Force Highlight: R)egion E)nvironment")
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
707 (let ((c (read-char)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
708 (cond
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
709 ((memq c '(?R ?r))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
710 (YaTeX-font-lock-fontify-region (region-beginning) (region-end)))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
711 ((memq c '(?e ?e))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
712 (YaTeX-font-lock-fontify-environment)))))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
713
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
714 (if YaTeX-use-font-lock
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
715 (YaTeX-define-key "u" 'YaTeX-font-lock-highlight-menu))
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
716
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
717 (defvar YaTeX-font-lock-keywords nil
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
718 "Pattern-face alist of yahtml-mode for font-lock")
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
719
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
720 (defun YaTeX-font-lock-set-default-keywords ()
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
721 (put 'yatex-mode 'font-lock-defaults
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
722 (list 'YaTeX-font-lock-keywords nil nil))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
723 (setq YaTeX-font-lock-keywords
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
724 (YaTeX-convert-pattern-hilit2fontlock
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
725 (cons nil
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
726 (append YaTeX-sectioning-patterns-alist
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
727 YaTeX-hilit-pattern-adjustment-private
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
728 YaTeX-hilit-patterns-alist)))))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
729
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
730 (if YaTeX-use-font-lock
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
731 (progn
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
732 (if (and (boundp 'hilit-mode-enable-list) hilit-mode-enable-list)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
733 ;;for those who use both hilit19 and font-lock
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
734 (if (eq (car hilit-mode-enable-list) 'not)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
735 (or (member 'yatex-mode hilit-mode-enable-list)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
736 (nconc hilit-mode-enable-list (list 'yatex-mode)))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
737 (setq hilit-mode-enable-list
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
738 (delq 'yatex-mode hilit-mode-enable-list))))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
739 (YaTeX-font-lock-set-default-keywords)))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
740
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
741 (defun YaTeX-switch-to-new-window ()
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
742 (let ((c 0) (i 1) (free (make-string win:max-configs ? )))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
743 (while (< i win:max-configs)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
744 (or (aref win:configs i) (aset free i (+ i win:base-key)))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
745 (setq i (1+ i)))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
746 (while (not (string-match (char-to-string c) free))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
747 (message "Which window to create? [%s]: " free)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
748 (setq c (read-char)))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
749 (message "Creating window [%c]" c)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
750 (set-buffer (get-buffer-create "*scratch*"))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
751 (win:switch-window (- c win:base-key))))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
752
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
753 (defun YaTeX-visit-main-other-frame ()
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
754 "Visit main file in other frame.
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
755 WARNING, This code is not perfect."
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
756 (interactive)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
757 (if (YaTeX-main-file-p) (message "I think this is main LaTeX source.")
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
758 (let (parent)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
759 (save-excursion (YaTeX-visit-main t) (setq parent (current-buffer)))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
760 (cond
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
761 ((get-buffer-window parent t)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
762 (goto-buffer-window parent))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
763 ((and (featurep 'windows) win:use-frame)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
764 (YaTeX-switch-to-new-window)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
765 (switch-to-buffer parent))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
766 (t (switch-to-buffer-other-frame (buffer-name parent)))))))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
767
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
768 (defun YaTeX-goto-corresponding-*-other-frame (arg)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
769 "Go to corresponding object in other frame."
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
770 (interactive "P")
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
771 (let (b p)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
772 (save-window-excursion
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
773 (save-excursion
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
774 (YaTeX-goto-corresponding-* arg)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
775 (setq b (current-buffer) p (point))))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
776 (cond
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
777 ((get-buffer-window b t)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
778 (goto-buffer-window b)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
779 (goto-char p))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
780 ((and (featurep 'windows) win:use-frame)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
781 (YaTeX-switch-to-new-window)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
782 (switch-to-buffer b)
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
783 (goto-char p))
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
784 (t (switch-to-buffer-other-frame (buffer-name b))
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
785 (goto-char p)))))
53
5f4b18da14b3 Fix functions relating YaTeX-beginning-of-environment or
yuuji
parents: 52
diff changeset
786
49
eb0512bfcb7f Abolish user-article table.
yuuji
parents: 47
diff changeset
787 ;;; reverseVideo にして hilit-background-mode を 'dark
eb0512bfcb7f Abolish user-article table.
yuuji
parents: 47
diff changeset
788 ;;; にしている人は数式などが暗くなりすぎて見づらいかもしれない。
eb0512bfcb7f Abolish user-article table.
yuuji
parents: 47
diff changeset
789 ;;; 次のコードを hilit19 をロードしている場所の直後に置くとちょっ
eb0512bfcb7f Abolish user-article table.
yuuji
parents: 47
diff changeset
790 ;;; とはまし。
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
791 ;;; (if (eq hilit-background-mode 'dark)
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
792 ;;; (hilit-translate
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
793 ;;; string 'mediumspringgreen
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
794 ;;; formula 'khaki
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
795 ;;; label 'yellow-underlined))
57
18f4939986e6 (j)LaTeX2e supported
yuuji
parents: 56
diff changeset
796 (and YaTeX-emacs-19
64
36a48185b95a Changes are listed in yatex.new.
yuuji
parents: 61
diff changeset
797 (not (featurep 'xemacs))
58
3a7c0c2bf16d Official support for AMS-LaTeX, HTML, xdvi -remote, Netscape
yuuji
parents: 57
diff changeset
798 (boundp 'byte-compile-current-file)
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
799 byte-compile-current-file
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
800 (progn
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
801 (if YaTeX-emacs-20 (require 'font-lock))
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
802 (if (and (boundp 'window-system) window-system)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
803 (require 'hilit19)
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
804 (error "Byte compile this file on window system! Not `-nw'!"))))
46
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
805
cd1b63102eed Support Mule2
yuuji
parents:
diff changeset
806 (provide 'yatex19)
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
807
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
808
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
809 ; Local variables:
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
810 ; fill-prefix: ";;; "
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
811 ; paragraph-start: "^$\\| \\|;;;$"
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
812 ; paragraph-separate: "^$\\| \\|;;;$"
80
9b4354af748c Too many changes from 1.72.
yuuji
parents: 79
diff changeset
813 ; coding: sjis
72
0aaebd07dad0 Support font-lock on XEmacs-21, Emacs-20, Emacs-21.
yuuji
parents: 70
diff changeset
814 ; End:

yatex.org