yatex

view docs/yatexe @ 271:d467c0fb6083

Preparing for 1.76 release
author HIROSE Yuuji <yuuji@gentei.org>
date Thu, 10 May 2012 11:40:02 +0900
parents 5a16b237416f
children 78d0fdc0459c
line source
1 Info file: yatexe, -*-Text-*-
2 produced by `texinfo-format-buffer'
3 from file `yatexe.tex'
4 using `texinfmt.el' version 2.38 of 3 July 1998.
10 
11 File: yatexe, Node: Top, Next: What is YaTeX?, Prev: (dir), Up: (dir)
13 * Menu:
15 * What is YaTeX?::
16 * Main features:: What YaTeX can do
17 * Installation:: Guide to install
18 * Typesetting:: Call typesetting processes
19 * %#notation:: Meta-keyword `%#'
20 * Completion:: Input LaTeX commands with completion
21 * Local dictionaries:: Directory dependent completion
22 * Commenting out:: Commenting/uncommenting text
23 * Cursor jump:: Jumping to related position
24 * Changing and Deleting:: Changing/deleting certain unit of text
25 * Filling:: Filling an item or paragraph
26 * Updation of includeonly:: Free from maintaining includeonly
27 * What column:: Check what table-column the cursor belong
28 * Intelligent newline:: Guess requisites of new line
29 * Usepackage checker:: Selecting correct \usepackage is YaTeX's job
30 * Online help:: On-line documentation of LaTeX
31 * Browsing file hierarchy:: Walking through file hierarchy
32 * Cooperation with other packages:: Work well with gmhist, min-out
33 * Customizations:: How to breed `Wild Bird'
34 * Etcetera:: YaTeX is acquisitive.
35 * Copying:: Redistribution
39 
40 File: yatexe, Node: What is YaTeX?, Next: Main features, Prev: Top, Up: Top
42 What is YaTeX?
43 **************
45 YaTeX automates typesetting and previewing of LaTeX and enables
46 completing input of LaTeX mark-up command such as `\begin{}'..`\end{}'.
48 YaTeX also supports Demacs which runs on MS-DOS(386), Mule (Multi
49 Language Enhancement to GNU Emacs), and latex on DOS.
52 
53 File: yatexe, Node: Main features, Next: Installation, Prev: What is YaTeX?, Up: Top
55 Main features
56 *************
58 * Invocation of typesetter, previewer and related programs(`C-c t')
59 * Typesetting on static region which is independent from point
60 * Semiautomatic replacing of `\includeonly'
61 * Jumping to error line(`C-c '')
62 * Completing-read of LaTeX commands such as `\begin{}', `\section' etc.
63 (`C-c b', `C-c s', `C-c l', `C-c m')
64 * Enclosing text into LaTeX environments or commands (`C-u'
65 ABOVEKEYSTROKES)
66 * Displaying the structure of text at entering sectioning commands
67 * Lump shifting of sectioning commands (*Note view-sectioning::)
68 * Learning unknown/new LaTeX commands for the next completion
69 * Argument reading with a guide for complicated LaTeX commands
70 * Generating argument-readers for new/unsupported commands(`yatexgen')
71 * Quick changing or deleting of LaTeX commands(`C-c c', `C-c k')
72 * Jumping from and to inter-file, begin<->end, ref<->label(`C-c g')
73 * Blanket commenting out or uncommenting (`C-c >', `C-c <', `C-c ,',
74 `C-c .')
75 * Easy input of accent mark, math-mode's commands and Greek letters
76 (`C-c a', `;', `:')
77 * Online help for the popular LaTeX commands (`C-c ?', `C-c /')
78 * Document files hierarchy browser (`C-c d')
79 * Adding automatically \usepackage corresponding to inputting LaTeX
80 macro with completion
81 * Allow you to forget creating \label{}s, \ref{} or \cite{} completion
82 automatically generate labels.
85 
86 File: yatexe, Node: Installation, Next: Typesetting, Prev: Main features, Up: Top
88 Installation
89 ************
91 Put next two expressions into your `~/.emacs'.
93 (setq auto-mode-alist
94 (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
95 (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
97 Next, add certain path name where you put files of YaTeX to your
98 load-path. If you want to put them in `~/src/emacs', write
100 (setq load-path
101 (cons (expand-file-name "~/src/emacs") load-path))
103 in your `~/.emacs'
105 Then, yatex-mode will be automatically loaded when you visit a file
106 which has extension `.tex'. If yatex-mode is successfully loaded, mode
107 string on mode line will be turned to "YaTeX".
111 
112 File: yatexe, Node: Typesetting, Next: %#notation, Prev: Installation, Up: Top
114 Typesetting
115 ***********
117 The prefix key stroke of yatex-mode is `C-c' (Press 'C' with Control
118 key) by default. If you don't intend to change the prefix key stroke,
119 assume all `[prefix]' as `C-c' in this document. These key strokes
120 execute typeset or preview command.
122 `[prefix] t j'
123 ... invoke latex
124 `[prefix] t r'
125 ... invoke latex on region
126 `[prefix] t e'
127 ... invoke latex on current environment or whole portion of
128 current formulas in math-mode.
129 `[prefix] t d'
130 ... invoke dvipdfmx after successful typesetting
131 `[prefix] t k'
132 ... kill current typesetting process
133 `[prefix] t b'
134 ... invoke bibtex
135 `[prefix] t i'
136 ... invoke makeindex
137 `[prefix] t d'
138 ... invoke latex && dvipdfmx
139 `[prefix] t p'
140 ... preview
141 `[prefix] t l'
142 ... lpr dvi-file
143 `[prefix] t s'
144 ... search current string on xdvi-remote
146 * Menu:
148 * Calling typesetter::
149 * Calling previewer::
150 * Printing out::
153 
154 File: yatexe, Node: Calling typesetter, Next: Calling previewer, Prev: Typesetting, Up: Typesetting
156 Calling typesetter
157 ==================
159 Typing `[prefix] t j', the current editing window will be divided
160 horizontally when you invoke latex command, and log message of LaTeX
161 typesetting will be displayed in the other window; called typesetting
162 buffer. The typesetting buffer automatically scrolls up and traces LaTeX
163 warnings and error messages. If you see latex stopping by an error, you
164 can send string to latex in the typesetting buffer.
166 If an error stops the LaTeX typesetting, this key stroke will move the
167 cursor to the line where LaTeX error is detected.
169 `[prefix] ''
170 `([prefix]+single quotation)'
172 ... jump to the previous error or warning
174 If you find a noticeable error, move to the typesetting buffer and move
175 the cursor on the line of error message and type `SPACE' key. This makes
176 the cursor move to corresponding source line.
178 YaTeX-typeset-region invoked by `[prefix] tr' call typesetter for
179 region. The region is specified by standard point and mark, or by
180 `%#BEGIN' and `%#END' marks. Selected region will be copied to the
181 temporary file `texput.tex' with the same preamble as the main file of
182 current editing sources. Be sure to put all local macro settings in
183 preamble, not after `\begin{document}'. The method of specification of
184 the region is shown in the section *Note %#notation::.
186 The documentclass for typeset-region is the same as that of editing file
187 if you edit one file, and is the same as main file's if you edit splitting
188 files.
190 The `[prefix] te' key automatically marks current inner environment or
191 inner math mode and then call typeset-region with marked region. This is
192 convenient to quick view of current tabular environment or current editing
193 formulas. Keeping previewer window for `texput.dvi' is handy for
194 debugging. Since `[prefix] te' selects the inner-most environment as
195 region, it is not suitable for partial typesetting of doubly or more
196 composed environment. If you want to do partial typesetting for a nested
197 environment, use `[prefix] tr' for static-region, which is described in
198 the section *Note %#notation::.
201 
202 File: yatexe, Node: Calling previewer, Next: Printing out, Prev: Calling typesetter, Up: Typesetting
204 Calling previewer
205 =================
207 `[prefix] t p' invokes the TeX previewer. And if you are using
208 xdvi-remote, which can be controled from other terminals, `[prefix] t s'
209 enables you to search current string at the cursor on the running xdvi
210 window.
213 
214 File: yatexe, Node: Printing out, Prev: Calling previewer, Up: Typesetting
216 Printing out
217 ============
219 When you type `[preifx] t l', YaTeX asks you the range of dvi-printing
220 by default. You can skip this by invoking it with universal-argument as
221 follows:
223 C-u [prefix] tl
226 
227 File: yatexe, Node: %#notation, Next: Completion, Prev: Typesetting, Up: Top
229 %# notation
230 ***********
232 You can control the typesetting process by describing `%#' notations in
233 the source text.
235 * Menu:
237 * Changing typesetter::
238 * Splitting input files::
239 * Static region for typesetting::
240 * Lpr format::
241 * Controlling which command to invoke::
242 * Editing %# notation::
245 
246 File: yatexe, Node: Changing typesetter, Next: Splitting input files, Prev: %#notation, Up: %#notation
248 To change the `latex' command or to split a source text.
249 ========================================================
251 To change the typesetting command, write
253 %#!latex-big
255 anywhere in the source text. This is useful for changing typesetter.
258 
259 File: yatexe, Node: Splitting input files, Next: Static region for typesetting, Prev: Changing typesetter, Up: %#notation
261 Splitting input files
262 =====================
264 And if you split the source text and edit subfile that should be
265 included from main text.
267 %#!latex main.tex
269 will be helpful to execute latex on main file from sub text buffer. Since
270 this command line after `%#!' will be sent to shell literally, next
271 description makes it convenient to use ghostview as dvi-previewer.
273 %#!latex main && dvi2ps main.dvi > main
275 Note that YaTeX assumes the component before the last period of the last
276 word in this line as base name of the main LaTeX source. The `%f'
277 notation in this line is replaced by main file name, and `%r' replaced by
278 root name of main file name. If you specify `%f' or `%r', YaTeX always
279 ask you the name of main file at the first typesetting.
281 To make best use of the feature of inter-file jumping by `[prefix] g'
282 (see *Note Cursor jump::), take described below into consideration.
284 * You can put split texts in sub directory, but not in sub directory of
285 sub directory.
286 * In the main text, specify the child file name with relative path name
287 such as \include{chap1/sub}, when you include the file in a
288 sub-directory.
289 * In a sub-text, write `%#!latex main.tex' even if `main.tex' is in the
290 parent directory(not %#!latex ../main.tex).
293 
294 File: yatexe, Node: Static region for typesetting, Next: Lpr format, Prev: Splitting input files, Up: %#notation
296 Static region
297 =============
299 Typeset-region by `[prefix] tr' passes the region between point and mark
300 to typesetting command by default. But when you want to typeset static
301 region, enclose the region by `%#BEGIN' and `%#END' as follows.
303 %#BEGIN
304 TheRegionYouWantToTypesetManyTimes
305 %#END
307 This is the rule of deciding the region.
309 1. If there exists %#BEGIN before point,
311 1. If there exists %#END after %#BEGIN,
312 * From %#BEGIN to %#END.
314 2. If %#END does not exist after %#BEGIN,
315 * From %#BEGIN to the end of buffer.
317 2. If there does not exist %#BEGIN before point,
318 * Between point and mark(standard method of Emacs).
320 It is useful to write `%#BEGIN' in the previous line of \begin and
321 `%#END' in the next line of \`end' when you try complex environment such
322 as `tabular' many times. It is also useful to put only `%#BEGIN' alone at
323 the middle of very long text. Do not forget to erase `%#BEGIN' `%#END'
324 pair.
327 
328 File: yatexe, Node: Lpr format, Next: Controlling which command to invoke, Prev: Static region for typesetting, Up: %#notation
330 Lpr format
331 ==========
333 Lpr format is specified by three Lisp variables. Here are the default
334 values of them.
336 `(1)dviprint-command-format'
337 `"dvi2ps %f %t %s | lpr"'
338 `(2)dviprint-from-format'
339 `"-f %b"'
340 `(3)dviprint-to-format'
341 `"-t %e"'
343 On YaTeX-lpr, `%s' in (1) is replaced by the file name of main text,
344 `%f' by contents of (2), %t by contents of (3). At these replacements,
345 `%b' in (2) is also replaced by the number of beginning page, `%e' in (3)
346 is replaced by the number of ending page. But `%f' and `%t' are ignored
347 when you omit the range of print-out by `C-u [prefix] tl'.
349 If you want to change this lpr format temporarily, put a command such as
350 follows somewhere in the text:
352 %#LPR dvi2ps %f %t %s | 4up -page 4 | texfix | lpr -Plp2
354 And if you want YaTeX not to ask you the range of printing out, the next
355 example may be helpful.
357 %#LPR dvi2ps %s | lpr
360 
361 File: yatexe, Node: Controlling which command to invoke, Next: Editing %# notation, Prev: Lpr format, Up: %#notation
363 Controlling which command to invoke
364 ===================================
366 These %# notation below can control which command to invoke for LaTeX
367 related process.
369 `%#BIBTEX'
371 ... Command line for makeindex ([prefix] t i)
372 `%#MAKEINDEX'
374 ... Command line for bibtex ([prefix] t b)
376 If you want to invoke "makeidx hogehoge" to update index, put the next
377 line some upper place in the source, for example.
379 %#MAKEINDEX makeidx hogehoge
383 
384 File: yatexe, Node: Editing %# notation, Prev: Controlling which command to invoke, Up: %#notation
386 Editing %# notation
387 ===================
389 To edit `%#' notation described above, type
391 `[prefix] %'
392 ... editing %# notation menu
394 and select one of the entry of the menu as follows.
396 !)Edit-%#! B)EGIN-END-region L)Edit-%#LPR
398 Type `!' to edit `%#!' entry, `b' to enclose the region with `%#BEGIN' and
399 `%#END', and `l' to edit `%#LPR' entry. When you type `b', all `%#BEGIN'
400 and `%#END' are automatically erased.
403 
404 File: yatexe, Node: Completion, Next: Local dictionaries, Prev: %#notation, Up: Top
406 Completion
407 **********
409 YaTeX makes it easy to input the LaTeX commands. There are several
410 kinds of completion type, begin-type, section-type, large-type, etc...
412 * Menu:
414 * Begin-type completion::
415 * Section-type completion::
416 * Large-type completion::
417 * Maketitle-type completion::
418 * Arbitrary completion::
419 * End completion::
420 * Accent completion::
421 * Image completion::
422 * Greek letters completion::
425 
426 File: yatexe, Node: Begin-type completion, Next: Section-type completion, Prev: Completion, Up: Completion
428 Begin-type completion
429 =====================
431 "Begin-type completion" completes commands of `\begin{env}' ...
432 `\end{env}'. All of the begin-type completions begin with this key
433 sequence.
435 `[prefix] b'
436 ... start begin-type completion
438 An additional key stroke immediately completes a frequently used LaTeX
439 `\begin{}'...`\`end'{}' environment.
441 `[prefix] b c'
442 ... `\begin{center}...\end{center}'
443 `[prefix] b d'
444 ... `\begin{document}...\end{document}'
445 `[prefix] b D'
446 ... `\begin{description}...\end{description}'
447 `[prefix] b e'
448 ... `\begin{enumerate}...\end{enumerate}'
449 `[prefix] b E'
450 ... `\begin{equation}...\end{equation}'
451 `[prefix] b i'
452 ... `\begin{itemize}...\end{itemize}'
453 `[prefix] b l'
454 ... `\begin{flushleft}...\end{flushleft}'
455 `[prefix] b m'
456 ... `\begin{minipage}...\end{minipage}'
457 `[prefix] b t'
458 ... `\begin{tabbing}...\end{tabbing}'
459 `[prefix] b T'
460 ... `\begin{tabular}...\end{tabular}'
461 `[prefix] b^T'
462 ... `\begin{table}...\end{table}'
463 `[prefix] b p'
464 ... `\begin{picture}...\end{picture}'
465 `[prefix] b q'
466 ... `\begin{quote}...\end{quote}'
467 `[prefix] b Q'
468 ... `\begin{quotation}...\end{quotation}'
469 `[prefix] b r'
470 ... `\begin{flushright}...\end{flushright}'
471 `[prefix] b v'
472 ... `\begin{verbatim}...\end{verbatim}'
473 `[prefix] b V'
474 ... `\begin{verse}...\end{verse}'
476 Any other LaTeX environments are made by completing-read of the Emacs
477 function.
479 `[prefix] b SPACE'
480 ... begin-type completion
482 The next message will show up in the minibuffer
484 Begin environment(default document):
486 by typing `[prefix] b'. Put the wishing environment with completion in
487 the minibuffer, and `\begin{env}'...\`\end{env}' will be inserted in the
488 LaTeX source text. If the environment you want to put does not exist in
489 the YaTeX completion table, it will be registered in the user completion
490 table. YaTeX automatically saves the user completion table in the user
491 dictionary file at exiting of emacs.
493 At the completion of certain environments, the expected initial entry will
494 automatically inserted such as `\item' for `itemize' environment. If you
495 don't want the entry, it can be removed by undoing.
497 If you want to enclose some paragraphs which have already been written,
498 invoke the begin-type completion with changing the case of `b' of key
499 sequence upper(or invoke it with universal argument by `C-u' prefix).
501 The following example encloses a region with `description' environment.
503 `[prefix] B D'
504 `(or ESC 1 [prefix] b D)'
505 `(or C-u [prefix] b D)'
507 ... begin-type completion for region
509 This enclosing holds good for the completing input by `[prefix] b SPC'.
510 `[prefix] B SPC' enclose a region with the environment selected by
511 completing-read.
514 
515 File: yatexe, Node: Section-type completion, Next: Large-type completion, Prev: Begin-type completion, Up: Completion
517 Section-type completion
518 =======================
520 "Section-type completion" completes section-type commands which take an
521 argument or more such as `\section{foo}'. To invoke section-type
522 completion, type
524 `[prefix] s'
525 ... section-type completion
527 then the prompt
529 (C-v for view) \???{} (default documentclass):
531 will show up in the minibuffer. Section-type LaTeX commands are completed
532 by space key, and the default value is selected when you type nothing in
533 the minibuffer.
535 Next,
537 \section{???}:
539 prompts you the argument of section-type LaTeX command. For example, the
540 following inputs
542 \???{} (default documentclass): section
543 \section{???}: Hello world.
545 will insert the string
547 \section{Hello world.}
549 in your LaTeX source. When you neglect argument such as
551 (C-v for view) \???{} (default section): vspace*
552 \vspace*{???}:
554 YaTeX puts
556 \vspace*{}
558 and move the cursor in the braces.
560 In LaTeX command, there are commands which take more than one arguments
561 such as `\addtolength{\topmargin}{8mm}'. To complete these commands,
562 invoke section-type completion with universal argument as,
564 C-u 2 [prefix] s (or ESC 2 [prefix] s)
566 and make answers in minibuffer like this.
568 (C-v for view) \???{} (default vspace*): addtolength
569 \addtolength{???}: \topmargin
570 Argument 2: 8mm
572 `\addtolength' and the first argument `\topmargin' can be typed easily by
573 completing read. Since YaTeX also learns the number of arguments of
574 section-type command and will ask that many arguments in future
575 completion, you had better tell the number of arguments to YaTeX at the
576 first completion of the new word. But you can change the number of
577 arguments by calling the completion with different universal argument
578 again.
581 Invoking section-type completion with `[Prefix] S' (Capital `S')
582 includes the region as the first argument of section-type command.
584 The section/large/maketitle type completion can work at the prompt for
585 the argument of other section-type completion. Nested LaTeX commands are
586 efficiently read with the recursive completion by typing YaTeX's
587 completion key sequence in the minibuffer.
589 * Menu:
591 * view-sectioning::
594 
595 File: yatexe, Node: view-sectioning, Prev: Section-type completion, Up: Section-type completion
597 view-sectioning
598 ---------------
600 In the minibuffer at the prompt of section-type command completion,
601 typing `C-v' shows a list of sectioning commands in source text(The line
602 with `<<--' mark is the nearest sectioning command). Then, default
603 sectioning command appears in the minibuffer. You can go up/down
604 sectioning command by typing `C-p'/`C-n', can scrolls up/down the listing
605 buffer by `C-v'/`M-v', and can hide sectioning commands under certain
606 level by 0 through 6. Type `?' in the minibuffer of sectioning prompt
607 for more information.
609 You can generate this listing buffer (`*Sectioning Lines*' buffer) by
610 typing
611 `M-x YaTeX-section-overview'
612 ... Generate *Sectioning Lines* buffer
614 from the LaTeX source buffer. In this listing buffer, typing `u' on the
615 sectioning command shifts up the corresponding sectioning command in
616 source text and `d' shifts down. After marking lines in the listing
617 buffer, typing `U' shifts up all sectioning commands in the region, and
618 `U' shifts down. Here are all the key bindings of `*Sectioning Lines*'
619 buffer.
621 `SPC'
622 ... Jump to corresponding source line
623 `.'
624 ... Display corresponding source line
625 `u'
626 ... Shift up a sectioning line
627 `d'
628 ... Shift down a sectioning line
629 `U'
630 ... Shift up sectioning lines in region
631 `D'
632 ... Shift down sectioning lines in region
633 `0...6'
634 ... Hide sectioning commands whose level is lower than n
638 
639 File: yatexe, Node: Large-type completion, Next: Maketitle-type completion, Prev: Section-type completion, Up: Completion
641 Large-type completion
642 =====================
644 "Large-type completion" inputs the font or size changing descriptions
645 such as `{\large }'. When you type
647 `[prefix] l'
648 ... large-type completion
650 the message in the minibuffer
652 {\??? } (default large):
654 prompts prompts you large-type command with completing-read. There are
655 TeX commands to change fonts or sizes, `it', `huge' and so on, in the
656 completion table.
658 Region-based completion is also invoked by changing the letter after
659 prefix key stroke as `[prefix] L'. It encloses the region by braces with
660 large-type command.
663 
664 File: yatexe, Node: Maketitle-type completion, Next: Arbitrary completion, Prev: Large-type completion, Up: Completion
666 Maketitle-type completion
667 =========================
669 We call it "maketitle-type completion" which completes commands such as
670 `\maketitle'. Take notice that maketitle-type commands take no arguments.
671 Then, typing
673 `[prefix] m'
674 ... maketitle-type completion
676 begins maketitle-completion. Above mentioned method is true for
677 maketitle-completion, and there are LaTeX commands with no arguments in
678 completion table.
681 
682 File: yatexe, Node: Arbitrary completion, Next: End completion, Prev: Maketitle-type completion, Up: Completion
684 Arbitrary completion
685 ====================
687 You can complete certain LaTeX command anywhere without typical
688 completing method as described, by typing
690 `[prefix] SPC'
691 ... arbitrary completion
693 after the initial string of LaTeX command that is preceded by `\'.
696 
697 File: yatexe, Node: End completion, Next: Accent completion, Prev: Arbitrary completion, Up: Completion
699 End completion
700 ==============
702 YaTeX automatically detects the opened environment and close it with
703 \`\end{environment}'. Though proficient YaTeX users never fail to make
704 environment with begin-type completion, some may begin an environment
705 manually. In that case, type
707 `[prefix] e'
708 ... `end' completion
710 at the end of the opened environment.
713 
714 File: yatexe, Node: Accent completion, Next: Image completion, Prev: End completion, Up: Completion
716 Accent completion
717 =================
719 When you want to write the European accent marks(like `\`{o}'),
721 `[prefix] a'
722 ... accent completion
724 shows the menu
726 1:` 2:' 3:^ 4:" 5:~ 6:= 7:. u v H t c d b
728 in the minibuffer. Chose one character or corresponding numeric, and you
729 will see
731 \`{}
733 in the editing buffer with the cursor positioned in braces. Type one more
734 character `o' for example, then
736 \`{o}
738 will be completed, and the cursor gets out from braces.
741 
742 File: yatexe, Node: Image completion, Next: Greek letters completion, Prev: Accent completion, Up: Completion
744 Image completion of mathematical sign
745 =====================================
747 Arrow marks, sigma mark and those signs mainly used in the TeX's math
748 environment are completed by key sequences which imitate the corresponding
749 symbols graphically. This completion only works in the math environment.
750 YaTeX automatically detects whether the cursor located in math environment
751 or not, and change the behavior of key strokes `;' and `:'.
753 By the way, we often express the leftarrow mark by `<-' for example.
754 Considering such image, you can write `\leftarrow' by typing `<-' after
755 `;' (semicolon) as a prefix. In the same way, `\longleftarrow' (`<--') is
756 completed by typing `;<--', infinity mark which is imitated by `oo' is
757 completed by typing `;oo'.
759 Here are the sample operations in YaTeX math-mode.
761 INPUT Completed LaTeX commands
762 ; < - `\leftarrow'
763 ; < - - `\longleftarrow'
764 ; < - - > `\longleftrightarrow'
765 ; o `\circ'
766 ; o o `\infty'
768 In any case, you can quit from image completion and can move to the next
769 editing operation if the LaTeX command you want is shown in the buffer.
771 `;' itself in math-environment is inserted by `;;'. Typing `TAB' in the
772 midst of image completion shows all of the LaTeX commands that start with
773 the same name as string you previously typed in. In this menu buffer,
774 press `RET' after moving the cursor (by `n', `p', `b', `f') to insert the
775 LaTeX command.
777 To know all of the completion table, type `TAB' just after `;'. And
778 here is the sample menu by `TAB' after `;<'.
780 KEY LaTeX sequence sign
781 < \leq <
782 ~
783 << \ll <<
784 <- \leftarrow <-
785 <= \Leftarrow <=
787 You can define your favorite key-vs-sequence completion table in the
788 Emacs-Lisp variable `YaTeX-math-sign-alist-private'. See also
789 `yatexmth.el' for the information of the structure of this variable.
792 
793 File: yatexe, Node: Greek letters completion, Prev: Image completion, Up: Completion
795 Greek letters completion
796 ========================
798 Math-mode of YaTeX provides another image completion, Greek letters
799 completion in the same method. After prefix `:', typing `a' makes
800 `\alpha', `b' makes `\beta' and `g' makes `\gamma' and so on. First, type
801 `:TAB' to know all the correspondence of alphabets vs. Greek letters.
803 If you will find `;' or `:' doesn't work in correct position of math
804 environment, it may be a bug of YaTeX. Please send me a bug report with
805 the configuration of your text, and avoid it temporarily by typing `;' or
806 `:' after universal-argument(`C-u') which forces `;' and `:' to work as
807 math-prefix.
810 
811 File: yatexe, Node: Local dictionaries, Next: Commenting out, Prev: Completion, Up: Top
813 Local dictionaries
814 ******************
816 Tables for completion consist of three dictionaries; `standard
817 dictionary' built in `yatex.el', `user dictionary' for your common private
818 commands, and `local dictionary' that is effective in a certain directory.
820 When you input the command unknown to YaTeX at a completion in the
821 minibuffer, YaTeX asks you with the following prompt;
823 `foo' is not in table. Register into: U)serDic L)ocalDic N)one D)iscard
825 In this menu, typing `u' updates your `user dictionary', `l' updates your
826 local dictionary, `n' updates only on-memory dictionary which go through
827 only current Emacs session, and `d' updates no dictionary and throws the
828 new word away.
830 If you find this switching feature meaningless and bothersome, put the
831 next expression into your `~/.emacs'
833 (setq YaTeX-nervous nil)
836 
837 File: yatexe, Node: Commenting out, Next: Cursor jump, Prev: Local dictionaries, Up: Top
839 Commenting out
840 **************
842 You may want to comment out some region.
844 `[prefix] >'
845 ... comment out region by %
846 `[prefix] <'
847 ... uncomment region
849 cause an operation to the region between point and mark.
851 `[prefix] .'
852 ... comment out current paragraph
853 `[prefix] ,'
854 ... uncomment current paragraph
856 comments or uncomments the paragraph where the cursor belongs. This
857 `paragraph' means the region marked by the function mark-paragraph, bound
858 to `ESC h' by default. It is NOT predictable what will happen when you
859 continuously comment out some paragraph many times.
861 You can also comment out an environment between `\begin' and `\end', or
862 a `\begin'-\`\end' pair themselves, by making the following key strokes on
863 the line where `\begin{}' or `\end{}' exists.
865 `[prefix] >'
866 ... comment out from \begin to \`end'
867 `[prefix] <'
868 ... uncomment from \begin to \`end'
870 comment whole the contents of environment. Moreover,
872 `[prefix] .'
873 ... comment out \begin and \`end'
874 `[prefix] ,'
875 ... uncomment \begin and \`end'
877 (un)comments out only environment declaration: `\begin{}' and `\end{}'.
878 NOTE that even if you intend to comment out some region, invoking
879 `[prefix] >' on the `\begin',`\end' line decides to work in `commenting
880 out from `\begin' to `\end'' mode.
884 
885 File: yatexe, Node: Cursor jump, Next: Changing and Deleting, Prev: Commenting out, Up: Top
887 Cursor jump
888 ***********
891 * Menu:
893 * Jump to corresponding object::
894 * Invoking image processor::
895 * Jump to main file::
896 * Jumping around the environment::
897 * Jumping to last completion position::
900 
901 File: yatexe, Node: Jump to corresponding object, Next: Invoking image processor, Prev: Cursor jump, Up: Cursor jump
903 Jump to corresponding object
904 ============================
906 Typing
908 `[prefix] g'
909 ... go to corresponding object
911 in a certain place move the cursor to the place corresponding to the LaTeX
912 command of last place. YaTeX recognize the followings as pairs that have
913 relation each other.
915 * `\begin{}' <-> `\end{}'
916 * `%#BEGIN' <-> `%#END'
917 * On the image-including line -> corresponding viewer or drawing tool
918 * `\label{}' <-> `\ref{}'
919 * `\include(\input)' -> included file
920 * `\bibitem{}' <-> `\cite{}'
922 On a `\begin',`\end' line, typing `[prefix] g' moves the cursor to the
923 corresponding `\end',`\begin' line, if its partner really exists. The
924 behavior on the line `%#BEGIN' and `%#END' are the same. Note that if the
925 correspondent of `label/ref' or `cite/bibitem' exists in another file,
926 that file have to be opened to make a round trip between references by
927 `[prefix] g'.
929 If you type `[prefix] g' on the line of `\include{chap1}', typically in
930 the main text, YaTeX switches buffer to `chap1.tex'.
932 `[prefix] 4 g'
933 ... go to corresponding object in other window
935 do the same job as `[prefix] g' except it's done in other window. Note
936 that this function doesn't work on `begin/end', `%#BEGIN/%#END' pairs
937 because it is meaningless.
940 
941 File: yatexe, Node: Invoking image processor, Next: Jump to main file, Prev: Jump to corresponding object, Up: Cursor jump
943 Invoking image processor
944 ========================
947 `image-including line' described above means such lines as
948 `\epsfile{file=foo.ps}'. If you type `[prefix] g' on that line, YaTeX
949 automatically searches source of `foo.ps' and invokes image viewer or
950 drawing tool correspoinding to it. For example; if you draw an image
951 foo.obj with Tgif and enclose its product named foo.eps by `\epsfile'
952 command. Typing `[prefix] g' on `\epsfile' line make YaTeX invoke `tgif
953 foo.obj'. How a processor is choosen is as follows.
955 1. If there is an expression matching with one of the pattern defined in
956 `YaTeX-processed-file-regexp-alist', extract file name from regexp
957 group surrounded by \\(\\). (Which group corresponds is written in
958 the cdr part of each list.) If no matches were found, do nothing.
959 2. If there is a pattern as `%PROCESSOR' which is defined in the
960 variable `YaTeX-file-processor-alist', call that processor giving the
961 file name with corresponding extension.
962 3. If not, check the existence of each file which is supplied the
963 extension in the cdr part of each list of
964 `YaTeX-file-processor-alist'. If any, call the corresponding image
965 viewer or drawing tool.
968 
969 File: yatexe, Node: Jump to main file, Next: Jumping around the environment, Prev: Invoking image processor, Up: Cursor jump
971 Jump to main file
972 =================
974 Typing
976 `[prefix] ^'
977 ... visit main file
978 `[prefix] 4^'
979 ... visit main file in other buffer
981 in a sub text switch the buffer to the main text specified by `%#!'
982 notation.
985 
986 File: yatexe, Node: Jumping around the environment, Next: Jumping to last completion position, Prev: Jump to main file, Up: Cursor jump
988 Jumping around the environment
989 ==============================
991 And these are the functions which work on the current LaTeX environment:
993 `M-C-a'
994 ... beginning of environment
995 `M-C-e'
996 ... `end' of environment
997 `M-C-@'
998 ... mark environment
1002 File: yatexe, Node: Jumping to last completion position, Prev: Jumping around the environment, Up: Cursor jump
1004 Jumping to last completion position
1005 ===================================
1007 YaTeX always memorize the position of completion into register `3'. So
1008 every time you make a trip to any other part of text other than you are
1009 writing, you can return to the editing paragraph by calling
1010 register-to-point with argument YaTeX-current-position-register, which is
1011 achieved by typing `C-x j 3'(by default).
1015 File: yatexe, Node: Changing and Deleting, Next: Filling, Prev: Cursor jump, Up: Top
1017 Changing and Deleting
1018 *********************
1020 These functions are for change or deletion of LaTeX commands already
1021 entered.
1023 `[prefix] c'
1024 ... change LaTeX command
1025 `[prefix] k'
1026 ... kill LaTeX command
1028 * Menu:
1030 * Changing LaTeX commands::
1031 * Killing LaTeX commands::
1035 File: yatexe, Node: Changing LaTeX commands, Next: Killing LaTeX commands, Prev: Changing and Deleting, Up: Changing and Deleting
1037 Changing LaTeX commands
1038 =======================
1040 `[prefix] c' can change the various (La)TeX commands. This can change the
1041 followings.
1042 * Environment names
1043 * Section-type commands
1044 * Argument of section-type commands
1045 * Optional parameters (enclosed by []) of section-type commands
1046 * Font/size designators
1047 * Math-mode's maketitle-type commands that can be inputted with image
1048 completion
1050 Typing `[prefix] c' on one of above objects you want to change brings a
1051 suitable reading function sometimes with completion. Note: If you want to
1052 change the argument of section-type command that contains other LaTeX
1053 commands, type `[prefix] c' either of surrounding braces of the argument
1054 in order to make YaTeX ignore the internal LaTeX sequences as an object of
1055 changing. Anyway, it is very difficult to know which argument position
1056 the cursor belongs because the LaTeX commands can be nested and braces can
1057 freely emerge. So keep it mind to put the cursor on a brace when you are
1058 thinking of changing a complicated argument.
1062 File: yatexe, Node: Killing LaTeX commands, Prev: Changing LaTeX commands, Up: Changing and Deleting
1064 Killing LaTeX commands
1065 ======================
1067 `[prefix] k' kills the LaTeX commands sometimes with their arguments.
1068 Following table illustrates the correspondence of the invoking position
1069 and what is killed.
1071 [Invoking position] [action]
1072 \begin, \end line kill \begin,\end pairs
1073 %#BEGIN, %#END line kill %#BEGIN,%#END pairs
1074 on a Section-type command kill section-type command
1075 on a parenthesis kill parentheses
1077 Note that when killing `\begin, \end' or `%#BEGIN, %#END' pair, the lines
1078 `\begin, \end' or `%#BEGIN, %#END' exist will be killed entirely. So take
1079 care not to create any line that contains more than one `\begin' or so.
1081 While all operations above are to kill `containers' which surround some
1082 text, universal argument (`C-u') for these commands kills not only
1083 `containers' but also `contents' of them. See below as a sample.
1085 Original text: [prefix] k C-u [prefix] k
1086 Main \footnote{note} here. Main note here. Main here.
1087 ~(cursor)
1091 File: yatexe, Node: Filling, Next: Updation of includeonly, Prev: Changing and Deleting, Up: Top
1093 Filling
1094 *******
1097 Filling an item
1098 ===============
1100 To fill a term (descriptive sentences) of `\item', type
1102 `M-q'
1103 ... fill item
1105 on that item.
1107 YaTeX uses the value of the variable `YaTeX-item-regexp' as the regular
1108 expression to search item header in itemize environment. If you make a
1109 newcommand to itemize terms(e.g. `\underlineitem'), put
1111 (setq YaTeX-item-regexp
1112 "\\(\\\\\\(sub\\)*item\\)\\|\\(\\\\underlineitem\\)")
1114 in your `~/.emacs'. If you are not familiar with regular expression for
1115 Emacs-Lisp, name a newcommand for `itemize' beginning with `\item' such as
1116 `\itembf', not `\bfitem'.
1118 This function reformats the `\item' into `hang-indented' style. For
1119 example:
1121 itemize, enumerate environment:
1123 >\item[foo] `foo' is the typical word for describing an
1124 > arbitrarily written....
1125 description environment:
1126 > \item[bar] When the word `for' is used as an arbitrarily
1127 > word, `bar' is bound to follow it.
1129 Note that the indent depth of an `\item' word and its descriptive
1130 paragraph are the same in latter case. If you want to use different
1131 depth, invoke fill-paragraph at the beginning of non-whitespace
1132 character(see below).
1135 Filling paragraph
1136 =================
1138 Fill-paragraph is little bit adapted for LaTeX sources. It retains from
1139 filling in certain environments where formatting leads to a disaster such
1140 as verbatim, tabular, or so. And it protects `\verb' expressions from
1141 being folded (The variable `YaTeX-verb-regexp' controls this). Besides,
1142 putting cursor on the first occurrence of non-whitespace character on a
1143 line changes the fill-prefix temporarily to the depth of the line.
1147 File: yatexe, Node: Updation of includeonly, Next: What column, Prev: Filling, Up: Top
1149 Updation of `\includeonly'
1150 **************************
1152 When you edit splitting source texts, the notation
1154 \includeonly{CurrentEditingFileName}
1156 in the main file reduces the time of typesetting. If you want to hack
1157 other file a little however, you have to rewrite it to
1159 \includeonly{OtherFileNameYouWantToFix}
1161 in the main file. YaTeX automatically detects that the current edited
1162 text is not in includeonly list and prompts you
1164 A)dd R)eplace %)comment?
1166 in the minibuffer. Type `a' if you want to add the current file name to
1167 `\includeonly' list, `r' to replace \`includeonly' list with the current
1168 file, and type `%' to comment out the `\includeonly' line.
1172 File: yatexe, Node: What column, Next: Intelligent newline, Prev: Updation of includeonly, Up: Top
1174 What column?
1175 ************
1177 We are often get tired of finding the corresponding column in large
1178 tabulars. For example,
1180 \begin{tabular}{|c|c|c|c|c|c|c|c|}\hline
1181 Name&Position&Post No.&Addr.&Phone No.&FAX No.&
1182 Home Addr.&Home Phone\\ \hline
1183 Thunder Bird & 6 & 223 & LA & xxx-yyy &
1184 zzz-www & Japan & 9876-54321 \\
1185 & 2 & \multicolumn{2}{c|}{Unknown}
1186 &&&(???)
1187 \\ \hline
1188 \end{tabular}
1190 Suppose you have the cursor located at `(???)' mark, can you tell which
1191 column it is belonging at once? Maybe no. In such case, type
1193 `[prefix] &'
1194 ... What column
1196 in that position. YaTeX tells you the column header of the current field.
1197 Since YaTeX assumes the first line of tabular environment as a row of
1198 column headers, you can create a row of virtual column headers by putting
1199 them in the first line and commenting that line with `%'.
1203 File: yatexe, Node: Intelligent newline, Next: Usepackage checker, Prev: What column, Up: Top
1205 Intelligent newline
1206 *******************
1208 At the end of begin-type completion of tabular[*], array, itemize,
1209 enumerate or tabbing environment, or typing
1211 `ESC RET'
1212 ... Intelligent newline
1214 in these environments inserts the contents corresponding to the current
1215 environment in the next line. (At the begin-type completion, this
1216 contents can be removed by `undo'.) In `tabular' environment, for
1217 example, `ESC RET' inserts the certain number of `&' and trailing `\\',
1218 and `\hline' if other `\hline' is found in backward. Here are the list of
1219 contents vs. environments.
1221 * `tabular', `tabular*', `array'
1223 Corresponding number of `&' and `\\'. And `\hline' if
1224 needed.
1226 * `tabbing'
1228 The same number of `\>' as `\=' in the first line.
1230 * `itemize', `enumerate', `description', `list'
1232 `\item' or `item[]'.
1234 Note that since this function works seeing the contents of the first
1235 line, please call this after the second line if possible.
1237 If you want to apply these trick to other environments, `foo'
1238 environment for example, define the function named
1239 `YaTeX-intelligent-newline-foo' to insert corresponding contents. That
1240 function will be called at the beginning of the next line after the
1241 newline is inserted to the current line. Since the function
1242 `YaTeX-indent-line' is designed to indent the current line properly,
1243 calling this function before your code to insert certain contents must be
1244 useful. See the definition of the function
1245 `YaTeX-intelligent-newline-itemize' as an example.
1249 File: yatexe, Node: Usepackage checker, Next: Online help, Prev: Intelligent newline, Up: Top
1251 Usepackage checker
1252 ******************
1254 When you input begint-type, section-type, maketitle-type macros with
1255 completion, and it requires some LaTeX2e package, YaTeX examines the
1256 existence of correct `\usepackage'. If not, YaTeX inserts the
1257 `\usepackage{}' declaration corresponding to input macro.
1259 To activate the package completion for your favarite package, set the
1260 variable `YaTeX-package-alist-private' correctly. Please refere the value
1261 of `YaTeX-package-alist-default' as an example.
1265 File: yatexe, Node: Online help, Next: Browsing file hierarchy, Prev: Usepackage checker, Up: Top
1267 Online help
1268 ***********
1270 YaTeX provides you the online help with popular LaTeX commands.
1272 Here are the key strokes for the online help.
1274 `[prefix] ?'
1275 ... Online help
1276 `[prefix] /'
1277 ... Online apropos
1280 Online help
1281 ===========
1283 `Online help' shows the documentation for the popular LaTeX
1284 commands(defaults to the commands on the cursor) in the next buffer.
1285 There are two help file, `global help' and `private help'. The former
1286 file contains the descriptions on the standard LaTeX command and is
1287 specified its name by variable `YaTeX-help-file'. Usually, the global
1288 help file should be located in public space (`$EMACSEXECPATH' by default)
1289 and should be world writable so that anyone can update it to enrich its
1290 contents. The latter file contains descriptions on non-standard or
1291 personal command definitions and is specified by
1292 `YaTeX-help-file-private'. This file should be put into private
1293 directory.
1296 Online apropos
1297 ==============
1299 `Online apropos' is an equivalent of GNU Emacs's apropos. It shows all
1300 the documentations that contains the keyword entered by the user.
1303 When no descriptions are found...
1304 =================================
1306 If there is no description on a command in help files, YaTeX requires
1307 you to write a description on that command. If you are willing to do,
1308 determine which help file to add and write the description on it referring
1309 your manual of (La)TeX. Please send me your additional descriptions if
1310 you describe the help on some standard commands. I might want to include
1311 it in the next distribution.
1315 File: yatexe, Node: Browsing file hierarchy, Next: Cooperation with other packages, Prev: Online help, Up: Top
1317 Browsing file hierarchy
1318 ***********************
1320 When you are editing multi-file source, typing
1322 `[prefix] d'
1323 ... browse file hierarchy
1325 asks you the parent-most file (which may be defaulted) and displays the
1326 documentation hierarchy in the next window. In this buffer, the following
1327 commands are available.
1329 `n'
1330 ... move to the next line and show its contents
1331 `p'
1332 ... move to the previous line and show its contents
1333 `N'
1334 ... move to the next file in the same inclusion level
1335 `P'
1336 ... move to the previous file in the same inclusion level
1337 `j'
1338 ... move to the next line
1339 `k'
1340 ... move to the previous line
1341 `u'
1342 ... move to the parent file
1343 `.'
1344 ... show the current files contents in the next window
1345 `SPC'
1346 ... scroll up the current file window
1347 `DEL, b'
1348 ... scroll down the current file window
1349 `<'
1350 ... show the beginning of the current file
1351 `>'
1352 ... show the end of the current file
1353 `>'
1354 ... return to the previous postion after `<' or `>'
1355 `RET, g'
1356 ... open the current file in the next window
1357 `mouse-2'
1358 ... same as RET(available only with window system)
1359 `o'
1360 ... other window
1361 `1'
1362 ... delete other windows
1363 `-'
1364 ... shrink hierarchy buffer window
1365 `+'
1366 ... enlarge hierarchy buffer window
1367 `?'
1368 ... describe mode
1369 `q'
1370 ... quit
1372 Note that operations on the file contents in the next window do not work
1373 correctly when you close the corresponding file.
1377 File: yatexe, Node: Cooperation with other packages, Next: Customizations, Prev: Browsing file hierarchy, Up: Top
1379 Cooperation with other packages
1380 *******************************
1382 YaTeX works better with other brilliant packages.
1385 gmhist
1386 ======
1388 When you are loading `gmhist.el' and `gmhist-mh.el', you can use
1389 independent command history list at the prompt of preview command
1390 (`[prefix] tp') and print command (`[prefix] tl'). On each prompt, you
1391 can enter the previous command line string repeatedly by typing `M-p'.
1394 min-out
1395 =======
1397 `min-out', the outline minor mode, can be used in yatex-mode buffers.
1398 If you want to use it with YaTeX, please refer the file `yatexm-o.el' as
1399 an example.
1403 File: yatexe, Node: Customizations, Next: Etcetera, Prev: Cooperation with other packages, Up: Top
1405 Customizations
1406 **************
1408 You can customize YaTeX by setting Emacs-Lisp variables and by making
1409 add-in functions.
1411 * Menu:
1413 * Lisp variables::
1414 * Add-in functions::
1415 * Add-in generator::
1419 File: yatexe, Node: Lisp variables, Next: Add-in functions, Prev: Customizations, Up: Customizations
1421 Lisp variables
1422 ==============
1424 You can change the key assignments or make completion more comfortable
1425 by setting the values of various variables which control the movement of
1426 yatex-mode.
1428 For example, if you want to change the prefix key stroke from `C-c' to
1429 any other sequence, set YaTeX-prefix to whatever you want to use. If you
1430 don't want to use the key sequence `C-c letter' which is assumed to be the
1431 user reserved sequence in Emacs world, set `YaTeX-inhibit-prefix-letter'
1432 to `t', and all of the default key bind of `C-c letter' will turn to the
1433 corresponding `C-c C-letter' (but the region based completions that is
1434 invoked with `C-c Capital-letter' remain valid, if you want to disable
1435 those bindings, set that variable to 1 instead of `t').
1437 * Menu:
1439 * All customizable variables::
1440 * Sample definitions::
1441 * Hook variables::
1442 * Hook file::
1446 File: yatexe, Node: All customizable variables, Next: Sample definitions, Prev: Lisp variables, Up: Lisp variables
1448 All customizable variables
1449 --------------------------
1451 Here are the customizable variables of yatex-mode. Each value setq-ed
1452 in `~/.emacs' is preferred and that of defined in `yatex.el' is neglected.
1453 Parenthesized contents stands for the default value. When you are to
1454 change some of these variables, see more detailed documentation of the
1455 variable by `M-x describe-variable'.
1457 -- Variable: YaTeX-japan
1458 Set this nil to produce all messages in English (`Depends on Japanese
1459 feature of Emacs')
1461 -- Variable: YaTeX-kanji-code
1462 Default buffer-file-coding-system for YaTeX modes' buffer. Set this
1463 0 to no language conversion. Nil to preserve original
1464 coding-system. 1=Shift JIS, 2=JIS, 3=EUC, 4=UTF-8 (`1 or 2')
1466 -- Variable: YaTeX-prefix
1467 Prefix key stroke (`C-c')
1469 -- Variable: YaTeX-inhibit-prefix-letter
1470 Change key stroke from `C-c letter' to `C-c C-letter' (`nil')
1472 -- Variable: YaTeX-fill-prefix
1473 Fill-prefix used in yatex-mode (`nil')
1475 -- Variable: YaTeX-user-completion-table
1476 Name of user dictionary where learned completion table will be
1477 stored. (`"~/.yatexrc"')
1479 -- Variable: tex-command
1480 LaTeX typesetter command (`"latex"')
1482 -- Variable: dvi2-command
1483 Preview command (`"xdvi -geo +0+0 -s 4"')
1485 -- Variable: dviprint-command-format
1486 Command format to print dvi file (`"dvi2ps %f %t %s | lpr"')
1488 -- Variable: dviprint-from-format
1489 Start page format of above %f. %b will turn to start page (`"-f %b"')
1491 -- Variable: dviprint-to-format
1492 End page format of above %t. %e will turn to `end' page (`"-t %e"')
1494 -- Variable: makeindex-command
1495 Default makeindex command (`"makeindex"' (`"makeind"' on MS-DOS))
1497 -- Variable: YaTeX-dvipdf-command
1498 Default command name to convert .dvi to PDF (`"dvipdfmx"')
1500 -- Variable: YaTeX-need-nonstop
1501 Put `\nonstopmode{}' or not (`nil')
1503 -- Variable: latex-warning-regexp
1504 Regular expression of warning message latex command puts out
1505 (`"line.* [0-9]*"')
1507 -- Variable: latex-error-regexp
1508 Regular expression of error message (`"l\\.[1-9][0-9]*"')
1510 -- Variable: latex-dos-emergency-message
1511 Message latex command running on DOS puts at abort (`"Emergency
1512 stop"')
1514 -- Variable: YaTeX-item-regexp
1515 Regular expression of item command (`"\\\\item"')
1517 -- Variable: YaTeX-verb-regexp
1518 Regexp of verb family. Omit \\\\. (`"verb\\*?\\|path"')
1520 -- Variable: YaTeX-nervous
1521 T for using local dictionary (`t')
1523 -- Variable: YaTeX-sectioning-regexp
1524 Regexp of LaTeX sectioning command
1525 (`"\\(part\\|chapter\\*?\\|\\(sub\\)*\\(section\\|paragraph\\)\\*?\\)\\b"')
1527 -- Variable: YaTeX-fill-inhibit-environments
1528 Inhibit fill in these environments (`'("tabular" "tabular*" "array"
1529 "picture" "eqnarray" "eqnarray*" "equation" "math" "displaymath"
1530 "verbatim" "verbatim*")')
1532 -- Variable: YaTeX-uncomment-once
1533 T for deleting all preceding `%' (`nil')
1535 -- Variable: YaTeX-close-paren-always
1536 T for always close all parenthesis automatically, `nil' for only eol
1537 (`t')
1539 -- Variable: YaTeX-auto-math-mode
1540 Switch math-mode automatically (`t')
1542 -- Variable: YaTeX-math-key-list-private
1543 User defined alist, math-mode-prefix vs completion alist used in
1544 image completion (`nil'). See `yatexmth.el' for the information
1545 about how to define a completion alist.
1547 -- Variable: YaTeX-default-pop-window-height
1548 Initial height of typesetting buffer when one-window. Number for the
1549 lines of the buffer, numerical string for the percentage of the
1550 screen-height. `nil' for half height (10)
1552 -- Variable: YaTeX-help-file
1553 Global online help file name
1554 (`$doc-directory/../../site-lisp/YATEXHLP.eng')
1556 -- Variable: YaTeX-help-file-private
1557 Private online help file name (`"~/YATEXHLP.eng"')
1559 -- Variable: YaTeX-no-begend-shortcut
1560 Disable [prefix] b ?? shortcut (`nil)'
1562 -- Variable: YaTeX-hilit-pattern-adjustment-private
1563 List of the list that contain the regular expression and the symbol
1564 of logical meaning of the string that matches the pattern. See also
1565 the value from `(assq 'yatex-mode hilit-patterns-alist)' and the
1566 value of `YaTeX-hilit-pattern-adjustment-default' (and even the
1567 document of hilit19.el).
1569 -- Variable: YaTeX-sectioning-level
1570 Alist of LaTeX's sectioning command vs its height.
1572 -- Variable: YaTeX-hierarchy-ignore-heading-regexp
1573 `YaTeX-display-hierarchy' searches for sectioning command first, and
1574 comment line secondary as a file headings. In latter case, ignore lines
1575 that match with regular expression of this variable. Default value of
1576 this variable is RCS header expressions and mode specifying line `-*- xxxx
1577 -*'.
1579 -- Variable: YaTeX-skip-default-reader
1580 Non-nil for this variable skips the default argument reader of
1581 section-type command when add-in function for it is not defined
1582 (`nil')
1584 -- Variable: YaTeX-create-file-prefix-g
1585 When typing `prefix g' on the `\include' line, open the target file
1586 even if the file doesn't exist (`nil')
1588 -- Variable: YaTeX-simple-messages
1589 Simplyfy messages of various completions (`nil')
1591 -- Variable: YaTeX-hilit-sectioning-face
1592 When hilit19 and yatex19 is active, YaTeX colors the sectioning
1593 commands. This variable specifies the foreground and background
1594 color of `\part' macro. The default value is `'(yellow/dodgerblue
1595 yellow/slateblue)'. The first element of this list is for the screen
1596 when `hilit-background-mode' is `'light', and the second element is
1597 for `'dark'. You should specify both color as `forecolor/backcolor'.
1599 -- Variable: YaTeX-hilit-sectioning-attenuation-rate
1600 When color mode, this variable specifies how much attenuate the color
1601 density of `\subparagraph' compared with that of `\chapter' (`'(15
1602 40)') See also `YaTeX-hilit-sectioning-face'.
1604 -- Variable: YaTeX-use-AMS-LaTeX
1605 If you use AMS-LaTeX, set to `t' (`nil')
1607 -- Variable: YaTeX-use-LaTeX2e
1608 If you use LaTeX2e, set to `t' (`t')
1610 -- Variable: YaTeX-template-file
1611 File name which is automatically inserted at creation
1612 (`~/work/template.tex')
1614 -- Variable: YaTeX-search-file-from-top-directory
1615 Non-nil means to search input-files from the directory where main
1616 file exists (`t')
1618 -- Variable: YaTeX-use-font-lock
1619 Use font-lock to fontify buffer or not (`(featurep 'font-lock)'
1621 -- Variable: YaTeX-use-hilit19
1622 Use hilit19 to highlight buffer or not (`(featurep 'hilit19)'
1624 -- Variable: YaTeX-use-italic-bold
1625 YaTeX tries to search italic, bold fontsets or not (`t' if Emacs-20
1626 or later). This variable is effective only when font-lock is used.
1627 (`(featurep 'hilit19)'
1629 -- Variable: YaTeX-singlecmd-suffix
1630 Suffix which is always inserted after maketitle-type macros. `"{}"'
1631 is recommended.
1633 -- Variable: YaTeX-package-alist-private
1634 Alist of LaTeX2e-package name vs. lists of macros in it. Set this
1635 alist properly and YaTeX automatically check the declaratiion of
1636 `usepackage' for corresponding macro, when you input that macro with
1637 completion. If required `usepackage' is not found, YaTeX also
1638 automatically inserts `\usepackage'. Alist is as follows;
1639 '((PackageName1 (completionType ListOfMacro) (completionType
1640 ListOfMacro)) (PackageName2 (completionType ListOfMacro)
1641 (completionType ListOfMacro...))....) completionType is one of `env,
1642 section, maketitle'. Consult the value of
1643 `YaTeX-package-alist-default' as an example.
1645 -- Variable: YaTeX-tabular-indentation
1646 At indentation by `C-i' in tabular or array environment, YaTeX put
1647 the additional spaces to the normail indentation depth. The number
1648 of additional spaces is the product of YaTeX-tabular-indentation and
1649 the number of column position in tabular.
1651 -- Variable: YaTeX-noindent-env-regexp
1652 Regexp of environment names that should begin with no indentation.
1653 All verbatime-like environment name should match with.
1655 -- Variable: YaTeX-ref-default-label-string
1656 Default \\ref time string format. This format is like strftime(3)
1657 but allowed conversion char are as follows; %y -> Last 2 digit of
1658 year, %b -> Month name, %m -> Monthe number(1-12), %d -> Day, %H ->
1659 Hour, %M -> Minute, %S -> Second, %qx -> alphabetical-decimal
1660 conversion of yymmdd. %qX -> alphabetical-decimal conversion of
1661 HHMMSS. Beware defualt label-string should be always unique. So
1662 this format string should have both time part (%H+%M+%S or %qX) and
1663 date part (%y+(%b|%m)+%d or %qx).
1665 -- Variable: YaTeX-ref-generate-label-function
1666 Function to generate default label string for unnamed \\label{}s.
1667 The function pointed to this value should take two arguments. First
1668 argument is LaTeX macro's name, second is macro's argument. Here is
1669 an example for using this value.
1670 (setq YaTeX-ref-generate-label-function 'my-yatex-generate-label)
1671 (defun my-yatex-generate-label (command value)
1672 (and (string= command "caption")
1673 (re-search-backward "\\\\begin{\\(figure\\|table\\)}" nil t)
1674 (setq command (match-string 1)))
1675 (let ((alist '(("chapter" . "chap")
1676 ("section" . "sec")
1677 ("subsection" . "subsec")
1678 ("figure" . "fig")
1679 ("table" . "tbl"))))
1680 (if (setq command (cdr (assoc command alist)))
1681 (concat command ":" value)
1682 (YaTeX::ref-generate-label nil nil))))
1687 File: yatexe, Node: Sample definitions, Next: Hook variables, Prev: All customizable variables, Up: Lisp variables
1689 Sample definitions
1690 ------------------
1692 For instance, to change the prefix key stroke to `ESC', and name of the
1693 user dictionary `~/src/emacs/yatexrc', and set `fill-prefix' to single TAB
1694 character, add the following `setq' to `~/.emacs'.
1696 (setq YaTeX-prefix "\e"
1697 YaTeX-user-completion-table "~/src/emacs/yatexrc"
1698 YaTeX-fill-prefix " ")
1702 File: yatexe, Node: Hook variables, Next: Hook file, Prev: Sample definitions, Up: Lisp variables
1704 Hook variables
1705 --------------
1707 More customizations will be done by the hook-function defined in
1708 hook-variable `yatex-mode-hook'. This is useful to define a shortcut key
1709 sequence to enter some environments other than `document' and `enumerate'
1710 etc. The following statement defines `[prefix] ba' to enter
1711 `\begin{abstract}' ... `=end{abstract}' immediately.
1713 (setq yatex-mode-hook
1714 '(lambda() (YaTeX-define-begend-key "ba" "abstract")))
1716 You should use functions `YaTeX-define-key', or
1717 `YaTeX-define-begend-key' to define all the key sequences of yatex-mode.
1721 File: yatexe, Node: Hook file, Prev: Hook variables, Up: Lisp variables
1723 Hook file
1724 ---------
1726 You can stuff all of YaTeX related expressions into a file named
1727 `yatexhks.el' if you have a lot of codes. YaTeX automatically load this
1728 file at the initialization of itself. Using `yatexhks.el' makes
1729 `yatex-mode-load-hook' unnecessary.
1733 File: yatexe, Node: Add-in functions, Next: Add-in generator, Prev: Lisp variables, Up: Customizations
1735 Add-in functions
1736 ================
1738 You can easily define a function to input detailed arguments with
1739 completion according to LaTeX environments or commands.
1742 What is add-in functions?
1743 -------------------------
1745 When you input `tabular' environment, don't you think "I want YaTeX to
1746 complete its argument toward my favorite one such as `{|c|c|c|}'..."?
1747 Yes, you can define the function to complete arguments for any environment
1748 and any LaTeX commands.
1751 Procedure
1752 ---------
1754 Here is the procedure to define add-in functions.
1755 1. Define the function
1756 2. Put the function into `yatexhks.el'
1758 * Menu:
1760 * How the add-in function works::
1761 * How the function is called::
1762 * Useful functions for creating add-in::
1763 * Contribution::
1767 File: yatexe, Node: How the add-in function works, Next: How the function is called, Prev: Add-in functions, Up: Add-in functions
1769 How the add-in function works
1770 -----------------------------
1772 There are three types of add-in.
1774 1. Option add-in
1775 2. argument add-in
1776 3. enclosing add-in
1778 "Option add-in" returns the LaTeX's optional parameters such as optional
1779 strings after `\begin{ENV}', optional strings between a section-type
1780 command and its first argument, and optional strings just after type
1781 maketitle-type command. The following illustrates the name of add-in
1782 functions, where underlined strings are generated by add-in functions.
1784 \begin{table}[ht] (Function name: YaTeX:table)
1785 ~~~~
1786 \put(100,200){} (Function name: YaTeX:put)
1787 ~~~~~~~~~
1788 \sum_{i=0}^{n} (Function name: YaTeX:sum)
1789 ~~~~~~~~~~
1791 Obviously, the function name is decided by concatenating the prefix
1792 `YaTeX:' and LaTeX command's name.
1794 Another add-in type is "argument add-in", which completes arguments for
1795 section-type commands.
1797 \newcommand{\foo}{bar} (Function name: YaTeX::newcommand)
1798 ~~~~ ~~~
1800 When the section-type command is inputted, the function named by
1801 concatenating `YaTeX::' and section-type command, is called automatically
1802 with an integer argument which indicates which argument of section-type
1803 command is being read. Thus the add-in should determine the job referring
1804 the value of its argument.
1806 "enclosing add-in" is for modifying and/or checking the region that will
1807 be enclosed by section-type commands via `[prefix] S'. An enclosing
1808 add-in function will be called with two arguments, beginning of the
1809 enclosed region and end of the region. Suppose you want to enclose the
1810 existing text `(a+b)/c' by `\frac{}'.
1812 a/c
1813 | |
1814 A B
1816 You do set-mark-command at point A and then move to point B. Typing
1817 `[prefix] S' and input `frac' enclose the region like this;
1819 \frac{a/c}
1821 Normally, the expression `a/c' is translated to `\frac{a}{c}'. An
1822 enclosing add-in is useful for modifying `/' to `}{'.
1824 * Menu:
1826 * Defining option-add-in::
1827 * Defining argument-add-in::
1828 * Defining enclosing-add-in::
1832 File: yatexe, Node: Defining option-add-in, Next: Defining argument-add-in, Prev: How the add-in function works, Up: How the add-in function works
1834 Defining `option add-in'
1835 ........................
1837 If you want `{|c|c|c|}' for all `tabular' environment,
1839 (defun YaTeX:tabular ()
1840 "{|c|c|c|}")
1842 is enough. If you want more complicated format, define as below.
1844 (defun YaTeX:tabular ()
1845 "{@{\\vrule width 1pt\\ }|||@{\\ \\vrule width 1pt}}")
1847 Note that the character `\' must be described as `\\' in Emacs-Lisp. The
1848 next example reads the tabular format from keyboard.
1849 (defun YaTeX:tabular ()
1850 (concat "{" (read-string "Rule: ") "}"))
1854 File: yatexe, Node: Defining argument-add-in, Next: Defining enclosing-add-in, Prev: Defining option-add-in, Up: How the add-in function works
1856 Defining `argument add-in'
1857 ..........................
1859 This section describes how to define the add-in function for
1860 `\newcommand'.
1862 The first argument of `\newcommand' begins always with `\'. The second
1863 argument is usually so complex that we can not edit them in the
1864 minibuffer. Here is the created function considering this.
1866 (defun YaTeX::newcommand (n) ;n is argument position
1867 (cond
1868 ((= n 1) ;1st argument is macro name
1869 (read-string "Command: " "\\")) ;initial input `\'
1870 ((= n 2) "") ;do nothing when reading arg#2
1871 (t nil)))
1873 Note that when the `argument add-in' function return `nil', normal
1874 argument reader will be called.
1878 File: yatexe, Node: Defining enclosing-add-in, Prev: Defining argument-add-in, Up: How the add-in function works
1880 Defining `enclosing add-in'
1881 ...........................
1883 This section describes how to define the add-in function for text
1884 enclosed by `\frac{}'.
1886 When enclosing the text `5/3' by `\frac{}', you might want to replace
1887 `/' with `}{'. Enclosing function `YaTeX::frac-region' is called with two
1888 arguments, beginning of enclosed text and end of enclosed text. The
1889 function is expected to replace `/' with `}{'. Here is an example
1890 expression.
1892 (defun YaTeX::frac-region (beg end)
1893 (catch 'done
1894 (while (search-forward "/" end t)
1895 (goto-char (match-beginning 0))
1896 (if (y-or-n-p "Replace this slash(/) with `}{'")
1897 (throw 'done (replace-match "}{")))
1898 (goto-char (match-end 0)))))
1902 File: yatexe, Node: How the function is called, Next: Useful functions for creating add-in, Prev: How the add-in function works, Up: Add-in functions
1904 How the function is called
1905 --------------------------
1907 YaTeX calls the add-in functions for specified begin-type, section-type,
1908 and maketitle-type command, if any. `Option add-in' functions for
1909 begin-type are called when `\begin{ENV}' has been inserted, functions for
1910 section-type are called just before input of the first argument, and
1911 functions for maketitle-type is called after maketitle-type command has
1912 been inserted. `Argument add-in' functions are called at each entry of
1913 arguments for section-type commands.
1917 File: yatexe, Node: Useful functions for creating add-in, Next: Contribution, Prev: How the function is called, Up: Add-in functions
1919 Useful functions for creating add-in
1920 ------------------------------------
1922 Many add-in functions for typical LaTeX commands are defined in
1923 `yatexadd.el'. Those are also useful as references. Here are the short
1924 descriptions on useful functions, where [F] means function, [A] means
1925 arguments, [D] means description.
1927 `[F]'
1928 YaTeX:read-position
1929 `[A]'
1930 Character list which can show up in the brackets
1931 `[D]'
1932 Return the location specifier such as `[htb]'. When nothing is
1933 entered, omit [] itself. If the possible characters are "htbp", call
1934 this function as `(YaTeX:read-position "htbp")'
1936 `[F]'
1937 YaTeX:read-coordinates
1938 `[A]'
1939 Base prompt, X-axis prompt, Y-axis prompt (each optional)
1940 `[D]'
1941 Read the coordinates with the prompt "BasePrompt X-axisPrompt:" for
1942 X-axis, "BasePrompt Y-axisPrompt:" for Y-axis, and return it in the
1943 form of "(X,Y)". The default prompts are `Dimension', `X', `Y'
1944 respectively.
1946 `[F]'
1947 YaTeX:check-completion-type
1948 `[A]'
1949 One of the symbols: 'begin, 'section, or 'maketitle
1950 `[D]'
1951 Check the current completion type is specified one and cause error
1952 if not. The variable `YaTeX-current-completion-type' holds the symbol
1953 according to the current completion type.
1957 File: yatexe, Node: Contribution, Prev: Useful functions for creating add-in, Up: Add-in functions
1959 Contribution
1960 ------------
1962 If you make your own pretty function and you let it be in public, please
1963 send me the function. I'm going to include it in the next release.
1967 File: yatexe, Node: Add-in generator, Prev: Add-in functions, Up: Customizations
1969 Add-in generator
1970 ================
1972 First, don't forget to read the section of add-in functions *Note Add-in
1973 functions::. If you easily understand how to define them, there's no need
1974 to read this section. But being not familiar with Emacs-Lisp, when you
1975 don't have clear idea what to do, this section describes how to get YaTeX
1976 make add-in function.
1978 There are two methods of generation. One is for fully interactive
1979 generator for beginners and another requires little knowledge of
1980 Emacs-Lisp.
1983 Generator for beginners
1984 -----------------------
1985 The former generator is called by
1986 `M-x YaTeX-generate'
1988 strokes. All you have to do is follow the guidances. Defying them may
1989 cases the disaster (I wonder what is it???). So when you make some
1990 mistake, it is recommendable to type `C-g' and start afresh.
1993 Simple generator
1994 ----------------
1996 The latter generator is invoked by the next sequence. `M-x
1997 YaTeX-generate-simple' This generator can make both "option add-in" and
1998 "argument add-in" (*refer the section add-in functions* *Note How the
1999 add-in function works::), whereas `YaTeX-generate' cannot make "argument
2000 addin".
2002 For example, assume you have the LaTeX command as follows.
2004 \epsinput[t](250,50){hoge.eps}{plain}{Picture of foo}
2005 (A) (B) (1) (2) (3)
2006 (A)Optional parameter to specify the position
2007 One of t(top), b(bottom), l(left), r(right)
2008 (B)Maximum size of frame
2009 (1)1st argument is filename of EPS file
2010 (2)2nd argument indicates
2011 plain do nothing
2012 frame make frame around image
2013 dframe make double-frame around image
2014 for included EPS file.
2015 (3)Caption for the picture
2017 Now get start with generation. Typing `M-x YaTeX-generate-simple'
2018 brings the prompt:
2019 (O)ption? (A)rgument?
2022 Generating "option add-in"
2023 ..........................
2025 Since (A), (B) above are optional argument, all we have to do to
2026 complete them is define the option add-in for them. Let's generate the
2027 function to complete (A).
2029 M-x YaTeX-generate-simple RET
2030 epsinput RET
2033 Typing as above leads the next prompt.
2035 Read type(1): (S)tring (C)omplete (F)ile ([)option (P)osition co(O)rd. (q)uit
2037 This asks that "Which type is the completion style of 1st argument?".
2038 Here are the possible completion style.
2040 `String'
2041 read plain string
2042 `Complete'
2043 read with completion
2044 `File'
2045 read file name
2046 `Option'
2047 read optional string (if string omitted, omit [] too)
2048 `Position'
2049 read positional option (like [htbp])
2050 `Coord.'
2051 read coordinates
2052 `Quit'
2053 quit from generating
2055 Since (A) is the optional argument to specify the location of included
2056 EPS file, the completion style is `Position', and the possible characters
2057 are t, b, l, and r. To tell these information to generator, operate as
2058 follows.
2060 Read type(1).... p
2061 Acceptable characters: tblr RET
2063 (B) is coordinate. So its completion style is coOrd. We want a prompt
2064 meaning "Maximum size" when completion.
2066 Read type(2).... o
2067 Prompt for coordinates: Max size RET
2069 That's all for optional argument. Select quit.
2071 Read type(3).... q
2073 Then the generated option add-in function for \epsinput will be shown in
2074 the next window.
2077 Generating "argument add-in"
2078 ............................
2080 Next, create the argument add-in. The arguments for \epsinput are EPS
2081 file name, framing style, and caption string in sequence.
2083 M-x YaTeX-generate-simple RET
2084 epsinput RET
2087 Above key strokes bring the prompt that asks the number of argument.
2088 Answer it with 3.
2090 How many arguments?: 3 RET
2092 Then the generator asks the completion style and prompt for completion.
2093 Answer them. `f' for FileName and prompt string.
2095 Read type(1).... f
2096 Prompt for argument#1 EPS file name RET
2098 The second argument is one of selected symbol. So the completion type
2099 is `Completion'.
2101 Read type(2).... c
2102 Prompt for argument#2 Include style RET
2104 Then all the candidates ready to be read. Type single RET after
2105 entering all.
2107 Item[1](RET to exit): plain RET
2108 Item[2](RET to exit): frame RET
2109 Item[3](RET to exit): dframe RET
2110 Item[4](RET to exit): RET
2112 The following prompt asks whether the entered string must belong to
2113 candidates or not. In this case, since the argument must be one of
2114 `plain', `frame', and `dframe', type `y'.
2116 Require match? (y or n) y
2118 The last argument is the caption string for which any completion is
2119 needed.
2121 Read type(3).... s
2122 Prompt for argument#3 Caption RET
2123 default: Figure of RET
2125 Finally we'll get the argument add-in in the next window.
2128 Contribution
2129 ------------
2131 If you get your own pretty function and you let it be in public, please
2132 steel yourself in the happy atmosphere and do not send me the function. I
2133 do know it is not fine because it is generated by yatexgen:-p.
2137 File: yatexe, Node: Etcetera, Next: Copying, Prev: Customizations, Up: Top
2139 Etcetera
2140 ********
2142 The standard completion tables provided in `yatex.el' contain a few
2143 LaTeX commands I frequently use. This is to lessen the key strokes to
2144 complete entire word, because too many candidates rarely used often cause
2145 too many hits. Therefore always try to use completion in order to enrich
2146 your dictionary, and you will also find `Wild Bird' growing suitable for
2147 your LaTeX style.
2149 The package name `Wild Bird' is the English translation of Japanese
2150 title `Yachou', which is a trick on words of Japanese.
2154 File: yatexe, Node: Copying, Prev: Etcetera, Up: Top
2156 Copying
2157 *******
2159 This program is distributed as a free software. You can
2160 use/copy/modify/redistribute this software freely but with NO warranty to
2161 anything as a result of using this software. Adopting code from this
2162 program is also free. But I would not do contract act.
2164 Any reports and suggestions are welcome as long as I feel interests in
2165 this software. My possible e-mail address is `yuuji@yatex.org'. (as of
2166 Jan.2004) And there is mailing list for YaTeX. Although the common
2167 language is Japanese, questions in English will be welcome. To join the
2168 ML, send the mail whose subject is `append' to the address
2169 `yatex@yatex.org. If you have some question, please ask to
2170 `yatex-admin@yatex.org'.
2172 The specification of this software will be surely modified (depending on
2173 my feelings) without notice :-p.
2176 HIROSE Yuuji
2178 Tag table:
2179 Node: Top149
2180 Node: What is YaTeX?1490
2181 Node: Main features1863
2182 Node: Installation3392
2183 Node: Typesetting4169
2184 Node: Calling typesetter5299
2185 Node: Calling previewer7503
2186 Node: Printing out7864
2187 Node: %#notation8156
2188 Node: Changing typesetter8574
2189 Node: Splitting input files8938
2190 Node: Static region for typesetting10363
2191 Node: Lpr format11492
2192 Node: Controlling which command to invoke12565
2193 Node: Editing %# notation13158
2194 Node: Completion13702
2195 Node: Begin-type completion14262
2196 Node: Section-type completion17305
2197 Node: view-sectioning19740
2198 Node: Large-type completion21320
2199 Node: Maketitle-type completion22051
2200 Node: Arbitrary completion22603
2201 Node: End completion22993
2202 Node: Accent completion23463
2203 Node: Image completion24080
2204 Node: Greek letters completion26337
2205 Node: Local dictionaries27064
2206 Node: Commenting out28001
2207 Node: Cursor jump29460
2208 Node: Jump to corresponding object29772
2209 Node: Invoking image processor31173
2210 Node: Jump to main file32516
2211 Node: Jumping around the environment32881
2212 Node: Jumping to last completion position33299
2213 Node: Changing and Deleting33808
2214 Node: Changing LaTeX commands34200
2215 Node: Killing LaTeX commands35377
2216 Node: Filling36562
2217 Node: Updation of includeonly38413
2218 Node: What column39210
2219 Node: Intelligent newline40295
2220 Node: Usepackage checker41949
2221 Node: Online help42540
2222 Node: Browsing file hierarchy44215
2223 Node: Cooperation with other packages45952
2224 Node: Customizations46657
2225 Node: Lisp variables46991
2226 Node: All customizable variables47995
2227 Node: Sample definitions57794
2228 Node: Hook variables58307
2229 Node: Hook file59011
2230 Node: Add-in functions59350
2231 Node: How the add-in function works60210
2232 Node: Defining option-add-in62409
2233 Node: Defining argument-add-in63131
2234 Node: Defining enclosing-add-in64013
2235 Node: How the function is called64867
2236 Node: Useful functions for creating add-in65543
2237 Node: Contribution66948
2238 Node: Add-in generator67222
2239 Node: Etcetera72594
2240 Node: Copying73199
2242 End tag table