yatex

view docs/yatexe @ 419:510106cf15fb

Info reformatted
author HIROSE Yuuji <yuuji@gentei.org>
date Sun, 12 Jul 2015 10:06:47 +0900
parents 781604df4cbd
children d63ba3e187ca
line source
1 Info file: yatexe, -*-Text-*-
2 produced by `texinfo-format-buffer'
3 from file `yatexe.tex'
4 using `texinfmt.el' version 2.42 of 7 Jul 2006.
6 START-INFO-DIR-ENTRY
7 * YaTeX-e: (yatexe). Yet Another tex-mode for Emacs (English).
8 END-INFO-DIR-ENTRY
14 
15 File: yatexe, Node: Top, Next: What is YaTeX?, Prev: (dir), Up: (dir)
17 * Menu:
19 * What is YaTeX?::
20 * Main features:: What YaTeX can do
21 * Installation:: Guide to install
22 * Typesetting:: Call typesetting processes
23 * %#notation:: Meta-keyword `%#'
24 * Completion:: Input LaTeX commands with completion
25 * Local dictionaries:: Directory dependent completion
26 * Commenting out:: Commenting/uncommenting text
27 * Cursor jump:: Jumping to related position
28 * Changing and Deleting:: Changing/deleting certain unit of text
29 * Filling:: Filling an item or paragraph
30 * Updation of includeonly:: Free from maintaining includeonly
31 * What column:: Check what table-column the cursor belong
32 * Intelligent newline:: Guess requisites of new line
33 * Usepackage checker:: Selecting correct \usepackage is YaTeX's job
34 * Online help:: On-line documentation of LaTeX
35 * Browsing file hierarchy:: Walking through file hierarchy
36 * Cooperation with other packages:: Work well with gmhist, min-out
37 * Customizations:: How to breed `Wild Bird'
38 * Etcetera:: YaTeX is acquisitive.
39 * Copying:: Redistribution
43 
44 File: yatexe, Node: What is YaTeX?, Next: Main features, Prev: Top, Up: Top
46 What is YaTeX?
47 **************
49 YaTeX automates typesetting and previewing of LaTeX and enables
50 completing input of LaTeX mark-up command such as
51 `\begin{}'..`\end{}'.
53 YaTeX also supports Demacs which runs on MS-DOS(386), Mule (Multi
54 Language Enhancement to GNU Emacs), and latex on DOS.
57 
58 File: yatexe, Node: Main features, Next: Installation, Prev: What is YaTeX?, Up: Top
60 Main features
61 *************
63 * Invocation of typesetter, previewer and related programs(`C-c t')
64 * Typesetting on static region which is independent from point
65 * Semiautomatic replacing of `\includeonly'
66 * Jumping to error line(`C-c '')
67 * Completing-read of LaTeX commands such as `\begin{}', `\section' etc.
68 (`C-c b', `C-c s', `C-c l', `C-c m')
69 * Enclosing text into LaTeX environments or commands (ABOVEKEYSTROKES
70 after region setting)
71 * Displaying the structure of text at entering sectioning commands
72 * Lump shifting of sectioning commands (*Note view-sectioning::)
73 * Learning unknown/new LaTeX commands for the next completion
74 * Argument reading with a guide for complicated LaTeX commands
75 * Generating argument-readers for new/unsupported commands(`yatexgen')
76 * Quick changing or deleting of LaTeX commands(`C-c c', `C-c k')
77 * Jumping from and to inter-file, begin<->end, ref<->label(`C-c g')
78 * Blanket commenting out or uncommenting (`C-c >', `C-c <', `C-c ,',
79 `C-c .')
80 * Easy input of accent mark, math-mode's commands and Greek letters
81 (`C-c a', `;', `:')
82 * Online help for the popular LaTeX commands (`C-c ?', `C-c /')
83 * Document files hierarchy browser (`C-c d')
84 * Adding automatically \usepackage corresponding to inputting LaTeX
85 macro with completion
86 * Allow you to forget creating \label{}s, \ref{} or \cite{} completion
87 automatically generate labels.
90 
91 File: yatexe, Node: Installation, Next: Typesetting, Prev: Main features, Up: Top
93 Installation
94 ************
96 Put next two expressions into your `~/.emacs'.
98 (setq auto-mode-alist
99 (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
100 (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
102 Next, add certain path name where you put files of YaTeX to your
103 load-path. If you want to put them in `~/src/emacs', write
105 (setq load-path
106 (cons (expand-file-name "~/src/emacs") load-path))
108 in your `~/.emacs'
110 Then, yatex-mode will be automatically loaded when you visit a file
111 which has extension `.tex'. If yatex-mode is successfully loaded, mode
112 string on mode line will be turned to "YaTeX".
116 
117 File: yatexe, Node: Typesetting, Next: %#notation, Prev: Installation, Up: Top
119 Typesetting
120 ***********
122 The prefix key stroke of yatex-mode is `C-c' (Press 'C' with Control
123 key) by default. If you don't intend to change the prefix key stroke,
124 assume all `[prefix]' as `C-c' in this document. These key strokes
125 execute typeset or preview command.
127 `[prefix] t j'
128 ... invoke typesetter
129 `[prefix] t r'
130 ... invoke typesetter on region
131 `[prefix] t e'
132 ... `on-the-fly preview' on current environment or whole
133 portion of current formulas in math-mode
134 `[prefix] t d'
135 ... invoke dvipdfmx after successful typesetting
136 `[prefix] t k'
137 ... kill current typesetting process
138 `[prefix] t b'
139 ... invoke bibtex
140 `[prefix] t i'
141 ... invoke makeindex
142 `[prefix] t d'
143 ... invoke latex && dvipdfmx
144 `[prefix] t p'
145 ... preview
146 `[prefix] t l'
147 ... lpr dvi-file
148 `[prefix] t s'
149 ... search current string on xdvi-remote
151 * Menu:
153 * Calling typesetter::
154 * Calling previewer::
155 * Printing out::
158 
159 File: yatexe, Node: Calling typesetter, Next: Calling previewer, Prev: Typesetting, Up: Typesetting
161 Calling typesetter
162 ==================
164 Typing `[prefix] t j', the current editing window will be divided
165 horizontally when you invoke latex command, and log message of LaTeX
166 typesetting will be displayed in the other window; called typesetting
167 buffer. The typesetting buffer automatically scrolls up and traces LaTeX
168 warnings and error messages. If you see latex stopping by an error, you
169 can send string to latex in the typesetting buffer.
171 If an error stops the LaTeX typesetting, this key stroke will move the
172 cursor to the line where LaTeX error is detected.
174 `[prefix] ''
175 `([prefix]+single quotation)'
177 ... jump to the previous error or warning
179 If you find a noticeable error, move to the typesetting buffer and move
180 the cursor on the line of error message and type `SPACE' key. This makes
181 the cursor move to corresponding source line.
183 YaTeX-typeset-region invoked by `[prefix] tr' call typesetter for
184 region. The region is specified by standard point and mark, or by
185 `%#BEGIN' and `%#END' marks. Selected region will be copied to the
186 temporary file `texput.tex' with the same preamble as the main file of
187 current editing sources. Be sure to put all local macro settings in
188 preamble, not after `\begin{document}'. The method of specification of
189 the region is shown in the section *Note %#notation::.
191 The documentclass for typeset-region is the same as that of editing file
192 if you edit one file, and is the same as main file's if you edit splitting
193 files.
195 The `[prefix] te' key automatically marks current inner environment or
196 inner math mode or paragraph, and then call typeset-region with marked
197 region. This is convenient to quick view of current tabular environment
198 or current editing formulas. If running Emacs has the ability of
199 displaying images, typeset image will be shown in the next window.
200 Further more, if you modify the content within that environment, YaTeX
201 performs `on-the-fly' preview that automatically update preview image as
202 you typed.
204 If your Emacs does not supply on-the-fly preview, keeping previewer window
205 for `texput.dvi' is handy for debugging. Since `[prefix] te' selects the
206 inner-most environment as region, it is not suitable for partial
207 typesetting of doubly or more composed environment. If you want to do
208 partial typesetting for a nested environment, use `[prefix] tr' for
209 static-region, which is described in the section *Note %#notation::.
212 
213 File: yatexe, Node: Calling previewer, Next: Printing out, Prev: Calling typesetter, Up: Typesetting
215 Calling previewer
216 =================
218 `[prefix] t p' invokes the TeX previewer. And if you are using
219 xdvi-remote, which can be controled from other terminals, `[prefix] t s'
220 enables you to search current string at the cursor on the running xdvi
221 window.
224 
225 File: yatexe, Node: Printing out, Prev: Calling previewer, Up: Typesetting
227 Printing out
228 ============
230 When you type `[preifx] t l', YaTeX asks you the range of dvi-printing
231 by default. You can skip this by invoking it with universal-argument as
232 follows:
234 C-u [prefix] tl
237 
238 File: yatexe, Node: %#notation, Next: Completion, Prev: Typesetting, Up: Top
240 %# notation
241 ***********
243 You can control the typesetting process by describing `%#' notations in
244 the source text.
246 * Menu:
248 * Changing typesetter::
249 * Splitting input files::
250 * Static region for typesetting::
251 * Lpr format::
252 * Controlling which command to invoke::
253 * Editing %# notation::
256 
257 File: yatexe, Node: Changing typesetter, Next: Splitting input files, Prev: %#notation, Up: %#notation
259 To change the `latex' command or to split a source text.
260 ========================================================
262 To change the typesetting command, write
264 %#!latex-big
266 anywhere in the source text. This is useful for changing typesetter.
269 
270 File: yatexe, Node: Splitting input files, Next: Static region for typesetting, Prev: Changing typesetter, Up: %#notation
272 Splitting input files
273 =====================
275 And if you split the source text and edit subfile that should be
276 included from main text.
278 %#!latex main.tex
280 will be helpful to execute latex on main file from sub text buffer. Since
281 this command line after `%#!' will be sent to shell literally, next
282 description makes it convenient to use ghostview as dvi-previewer.
284 %#!latex main && dvi2ps main.dvi > main
286 Note that YaTeX assumes the component before the last period of the last
287 word in this line as base name of the main LaTeX source. The `%f'
288 notation in this line is replaced by main file name, and `%r' replaced by
289 root name of main file name. If you specify `%f' or `%r', YaTeX always
290 ask you the name of main file at the first typesetting.
292 To make best use of the feature of inter-file jumping by `[prefix] g'
293 (see *Note Cursor jump::), take described below into consideration.
295 * You can put split texts in sub directory, but not in sub directory of
296 sub directory.
297 * In the main text, specify the child file name with relative path name
298 such as \include{chap1/sub}, when you include the file in a
299 sub-directory.
300 * In a sub-text, write `%#!latex main.tex' even if `main.tex' is in the
301 parent directory(not %#!latex ../main.tex).
304 
305 File: yatexe, Node: Static region for typesetting, Next: Lpr format, Prev: Splitting input files, Up: %#notation
307 Static region
308 =============
310 Typeset-region by `[prefix] tr' passes the region between point and mark
311 to typesetting command by default. But when you want to typeset static
312 region, enclose the region by `%#BEGIN' and `%#END' as follows.
314 %#BEGIN
315 TheRegionYouWantToTypesetManyTimes
316 %#END
318 This is the rule of deciding the region.
320 1. If there exists %#BEGIN before point,
322 1. If there exists %#END after %#BEGIN,
323 * From %#BEGIN to %#END.
325 2. If %#END does not exist after %#BEGIN,
326 * From %#BEGIN to the end of buffer.
328 2. If there does not exist %#BEGIN before point,
329 * Between point and mark(standard method of Emacs).
331 It is useful to write `%#BEGIN' in the previous line of \begin and
332 `%#END' in the next line of \`end' when you try complex environment such
333 as `tabular' many times. It is also useful to put only `%#BEGIN' alone at
334 the middle of very long text. Do not forget to erase `%#BEGIN' `%#END'
335 pair.
338 
339 File: yatexe, Node: Lpr format, Prev: Static region for typesetting, Up: %#notation
341 Lpr format
342 ==========
344 Lpr format is specified by three Lisp variables. Here are the default
345 values of them.
347 `(1)dviprint-command-format'
348 `"dvi2ps %f %t %s | lpr"'
349 `(2)dviprint-from-format'
350 `"-f %b"'
351 `(3)dviprint-to-format'
352 `"-t %e"'
354 On YaTeX-lpr, `%s' in (1) is replaced by the file name of main text,
355 `%f' by contents of (2), %t by contents of (3). At these replacements,
356 `%b' in (2) is also replaced by the number of beginning page, `%e' in (3)
357 is replaced by the number of ending page. But `%f' and `%t' are ignored
358 when you omit the range of print-out by `C-u [prefix] tl'.
360 If you want to change this lpr format temporarily, put a command such as
361 follows somewhere in the text:
363 %#LPR dvi2ps %f %t %s | 4up -page 4 | texfix | lpr -Plp2
365 And if you want YaTeX not to ask you the range of printing out, the next
366 example may be helpful.
368 %#LPR dvi2ps %s | lpr
371 
372 File: yatexe, Node: Controlling which command to invoke, Next: Editing %# notation, Prev: Lpr format, Up: %#notation
374 Controlling which command to invoke
375 ===================================
377 These %# notation below can control which command to invoke for LaTeX
378 related process.
380 `%#PREVIEW'
382 ... Command line for DVI viewing ([prefix] t p)
383 `%#MAKEINDEX'
385 ... Command line for makeindex ([prefix] t i)
386 `%#BIBTEX'
388 ... Command line for bibtex ([prefix] t b)
389 `%#DVIPDF'
391 ... Command line for dvipdf(mx) ([prefix] t b)
392 `%#LPR'
394 ... Command line for printing out([prefix] t l)
395 `%#PDFVIEW'
397 ... Command line for PDF viewing
398 `%#IMAGEDPI'
400 ... DPI value for converting to on-the-fly prewview image
402 If you want to invoke "makeidx hogehoge" to update index, put the next
403 line some upper place in the source, for example.
405 %#MAKEINDEX makeidx hogehoge
409 
410 File: yatexe, Node: Editing %# notation, Prev: Controlling which command to invoke, Up: %#notation
412 Editing %# notation
413 ===================
415 To edit `%#' notation described above, type
417 `[prefix] %'
418 ... editing %# notation menu
420 and select one of the entry of the menu as follows.
422 !)Edit-%#! B)EGIN-END-region L)Edit-%#LPR
424 Type `!' to edit `%#!' entry, `b' to enclose the region with `%#BEGIN' and
425 `%#END', and `l' to edit `%#LPR' entry. When you type `b', all `%#BEGIN'
426 and `%#END' are automatically erased.
429 
430 File: yatexe, Node: Completion, Next: Local dictionaries, Prev: %#notation, Up: Top
432 Completion
433 **********
435 YaTeX makes it easy to input the LaTeX commands. There are several
436 kinds of completion type, begin-type, section-type, large-type, etc...
438 * Menu:
440 * Begin-type completion::
441 * Section-type completion::
442 * Large-type completion::
443 * Maketitle-type completion::
444 * Arbitrary completion::
445 * End completion::
446 * Accent completion::
447 * Image completion::
448 * Greek letters completion::
449 * Inserting parentheses::
452 
453 File: yatexe, Node: Begin-type completion, Next: Section-type completion, Prev: Completion, Up: Completion
455 Begin-type completion
456 =====================
458 "Begin-type completion" completes commands of `\begin{env}' ...
459 `\end{env}'. All of the begin-type completions begin with this key
460 sequence.
462 `[prefix] b'
463 ... start begin-type completion
465 An additional key stroke immediately completes a frequently used LaTeX
466 `\begin{}'...`\`end'{}' environment.
468 `[prefix] b c'
469 ... `\begin{center}...\end{center}'
470 `[prefix] b d'
471 ... `\begin{document}...\end{document}'
472 `[prefix] b D'
473 ... `\begin{description}...\end{description}'
474 `[prefix] b e'
475 ... `\begin{enumerate}...\end{enumerate}'
476 `[prefix] b E'
477 ... `\begin{equation}...\end{equation}'
478 `[prefix] b i'
479 ... `\begin{itemize}...\end{itemize}'
480 `[prefix] b l'
481 ... `\begin{flushleft}...\end{flushleft}'
482 `[prefix] b m'
483 ... `\begin{minipage}...\end{minipage}'
484 `[prefix] b t'
485 ... `\begin{tabbing}...\end{tabbing}'
486 `[prefix] b T'
487 ... `\begin{tabular}...\end{tabular}'
488 `[prefix] b^T'
489 ... `\begin{table}...\end{table}'
490 `[prefix] b p'
491 ... `\begin{picture}...\end{picture}'
492 `[prefix] b q'
493 ... `\begin{quote}...\end{quote}'
494 `[prefix] b Q'
495 ... `\begin{quotation}...\end{quotation}'
496 `[prefix] b r'
497 ... `\begin{flushright}...\end{flushright}'
498 `[prefix] b v'
499 ... `\begin{verbatim}...\end{verbatim}'
500 `[prefix] b V'
501 ... `\begin{verse}...\end{verse}'
503 Any other LaTeX environments are made by completing-read of the Emacs
504 function.
506 `[prefix] b SPACE'
507 ... begin-type completion
509 The next message will show up in the minibuffer
511 Begin environment(default document):
513 by typing `[prefix] b'. Put the wishing environment with completion in
514 the minibuffer, and `\begin{env}'...\`\end{env}' will be inserted in the
515 LaTeX source text. If the environment you want to put does not exist in
516 the YaTeX completion table, it will be registered in the user completion
517 table. YaTeX automatically saves the user completion table in the user
518 dictionary file at exiting of emacs.
520 At the completion of certain environments, the expected initial entry will
521 automatically inserted such as `\item' for `itemize' environment. If you
522 don't want the entry, it can be removed by undoing.
524 If you want to enclose some paragraphs which have already been written
525 into environment, invoke the begin-type completion right after region
526 marking.
528 If you set `transient-mark-mode' to `nil' in your `~/.emacs', typing
529 `C-space' (`set-mark-command') twice turns `transient-mark-mode' on
530 temporarily. Then, type call begin-type completion to enclose text into a
531 environment.
535 
536 File: yatexe, Node: Section-type completion, Next: Large-type completion, Prev: Begin-type completion, Up: Completion
538 Section-type completion
539 =======================
541 "Section-type completion" completes section-type commands which take an
542 argument or more such as `\section{foo}'. To invoke section-type
543 completion, type
545 `[prefix] s'
546 ... section-type completion
548 then the prompt
550 (C-v for view) \???{} (default documentclass):
552 will show up in the minibuffer. Section-type LaTeX commands are completed
553 by space key, and the default value is selected when you type nothing in
554 the minibuffer.
556 Next,
558 \section{???}:
560 prompts you the argument of section-type LaTeX command. For example, the
561 following inputs
563 \???{} (default documentclass): section
564 \section{???}: Hello world.
566 will insert the string
568 \section{Hello world.}
570 in your LaTeX source. When you neglect argument such as
572 (C-v for view) \???{} (default section): vspace*
573 \vspace*{???}:
575 YaTeX puts
577 \vspace*{}
579 and move the cursor in the braces.
581 In LaTeX command, there are commands which take more than one arguments
582 such as `\addtolength{\topmargin}{8mm}'. To complete these commands,
583 invoke section-type completion with universal argument as,
585 C-u 2 [prefix] s (or ESC 2 [prefix] s)
587 and make answers in minibuffer like this.
589 (C-v for view) \???{} (default vspace*): addtolength
590 \addtolength{???}: \topmargin
591 Argument 2: 8mm
593 `\addtolength' and the first argument `\topmargin' can be typed easily by
594 completing read. Since YaTeX also learns the number of arguments of
595 section-type command and will ask that many arguments in future
596 completion, you had better tell the number of arguments to YaTeX at the
597 first completion of the new word. But you can change the number of
598 arguments by calling the completion with different universal argument
599 again.
602 Invoking section-type completion with `[Prefix] S' (Capital `S')
603 includes the region as the first argument of section-type command.
605 The section/large/maketitle type completion can work at the prompt for
606 the argument of other section-type completion. Nested LaTeX commands are
607 efficiently read with the recursive completion by typing YaTeX's
608 completion key sequence in the minibuffer.
610 * Menu:
612 * view-sectioning::
615 
616 File: yatexe, Node: view-sectioning, Prev: Section-type completion, Up: Section-type completion
618 view-sectioning
619 ---------------
621 In the minibuffer at the prompt of section-type command completion,
622 typing `C-v' shows a list of sectioning commands in source text(The line
623 with `<<--' mark is the nearest sectioning command). Then, default
624 sectioning command appears in the minibuffer. You can go up/down
625 sectioning command by typing `C-p'/`C-n', can scrolls up/down the listing
626 buffer by `C-v'/`M-v', and can hide sectioning commands under certain
627 level by 0 through 6. Type `?' in the minibuffer of sectioning prompt
628 for more information.
630 You can generate this listing buffer (`*Sectioning Lines*' buffer) by
631 typing
632 `M-x YaTeX-section-overview'
633 ... Generate *Sectioning Lines* buffer
635 from the LaTeX source buffer. In this listing buffer, typing `u' on
636 the sectioning command shifts up the corresponding sectioning command in
637 source text and `d' shifts down. After marking lines in the listing
638 buffer, typing `U' shifts up all sectioning commands in the region,
639 and `U' shifts down. Here are all the key bindings of
640 `*Sectioning Lines*' buffer.
642 `SPC'
643 ... Jump to corresponding source line
644 `.'
645 ... Display corresponding source line
646 `u'
647 ... Shift up a sectioning line
648 `d'
649 ... Shift down a sectioning line
650 `U'
651 ... Shift up sectioning lines in region
652 `D'
653 ... Shift down sectioning lines in region
654 `0...6'
655 ... Hide sectioning commands whose level is lower than n
659 
660 File: yatexe, Node: Large-type completion, Next: Maketitle-type completion, Prev: Section-type completion, Up: Completion
662 Large-type completion
663 =====================
665 "Large-type completion" inputs the font or size changing descriptions
666 such as `{\large }'. When you type
668 `[prefix] l'
669 ... large-type completion
671 the message in the minibuffer
673 {\??? } (default large):
675 prompts prompts you large-type command with completing-read. There are
676 TeX commands to change fonts or sizes, `it', `huge' and so on, in the
677 completion table.
679 Region-based completion is also invoked by calling completion after
680 region activated.
683 
684 File: yatexe, Node: Maketitle-type completion, Next: Arbitrary completion, Prev: Large-type completion, Up: Completion
686 Maketitle-type completion
687 =========================
689 We call it "maketitle-type completion" which completes commands such as
690 `\maketitle'. Take notice that maketitle-type commands take no arguments.
691 Then, typing
693 `[prefix] m'
694 ... maketitle-type completion
696 begins maketitle-completion. Above mentioned method is true for
697 maketitle-completion, and there are LaTeX commands with no arguments in
698 completion table.
701 
702 File: yatexe, Node: Arbitrary completion, Next: End completion, Prev: Maketitle-type completion, Up: Completion
704 Arbitrary completion
705 ====================
707 You can complete certain LaTeX command anywhere without typical
708 completing method as described, by typing
710 `[prefix] SPC'
711 ... arbitrary completion
713 after the initial string of LaTeX command that is preceded by `\'.
716 
717 File: yatexe, Node: End completion, Next: Accent completion, Prev: Arbitrary completion, Up: Completion
719 End completion
720 ==============
722 YaTeX automatically detects the opened environment and close it with
723 `\end{environment}'. Though proficient YaTeX users never fail to make
724 environment with begin-type completion, some may begin an environment
725 manually. In that case, type
727 `[prefix] e'
728 ... `end' completion
730 at the end of the opened environment.
733 
734 File: yatexe, Node: Accent completion, Next: Image completion, Prev: End completion, Up: Completion
736 Accent completion
737 =================
739 When you want to write the European accent marks(like `\`{o}'),
741 `[prefix] a'
742 ... accent completion
744 shows the menu
746 1:` 2:' 3:^ 4:" 5:~ 6:= 7:. u v H t c d b
748 in the minibuffer. Chose one character or corresponding numeric, and you
749 will see
751 \`{}
753 in the editing buffer with the cursor positioned in braces. Type one more
754 character `o' for example, then
756 \`{o}
758 will be completed, and the cursor gets out from braces.
761 
762 File: yatexe, Node: Image completion, Next: Greek letters completion, Prev: Accent completion, Up: Completion
764 Image completion of mathematical sign
765 =====================================
767 Arrow marks, sigma mark and those signs mainly used in the TeX's math
768 environment are completed by key sequences which imitate the corresponding
769 symbols graphically. This completion only works in the math environment.
770 YaTeX automatically detects whether the cursor located in math environment
771 or not, and change the behavior of key strokes `;' and `:'.
773 By the way, we often express the leftarrow mark by `<-' for example.
774 Considering such image, you can write `\leftarrow' by typing `<-'
775 after `;' (semicolon) as a prefix. In the same way,
776 `\longleftarrow' (`<--') is completed by typing `;<--',
777 infinity mark which is imitated by `oo' is completed by typing
778 `;oo'.
780 Here are the sample operations in YaTeX math-mode.
782 INPUT Completed LaTeX commands
783 ; < - `\leftarrow'
784 ; < - - `\longleftarrow'
785 ; < - - > `\longleftrightarrow'
786 ; o `\circ'
787 ; o o `\infty'
789 In any case, you can quit from image completion and can move to the next
790 editing operation if the LaTeX command you want is shown in the buffer.
792 `;' itself in math-environment is inserted by `;;'. Typing
793 `TAB' in the midst of image completion shows all of the LaTeX
794 commands that start with the same name as string you previously typed in.
795 In this menu buffer, press `RET' after moving the cursor (by `n',
796 `p', `b', `f') to insert the LaTeX command.
798 To know all of the completion table, type `TAB' just after `;'. And
799 here is the sample menu by `TAB' after `;<'.
801 KEY LaTeX sequence sign
802 < \leq <
803 ~
804 << \ll <<
805 <- \leftarrow <-
806 <= \Leftarrow <=
808 You can define your favorite key-vs-sequence completion table in the
809 Emacs-Lisp variable `YaTeX-math-sign-alist-private'. See also
810 `yatexmth.el' for the information of the structure of this variable.
813 
814 File: yatexe, Node: Greek letters completion, Next: Inserting parentheses, Prev: Image completion, Up: Completion
816 Greek letters completion
817 ========================
819 Math-mode of YaTeX provides another image completion, Greek letters
820 completion in the same method. After prefix `:', typing `a' makes
821 `\alpha', `b' makes `\beta' and `g' makes `\gamma' and so on. First, type
822 `:TAB' to know all the correspondence of alphabets vs. Greek letters.
824 If you will find `;' or `:' doesn't work in correct position of
825 math environment, it may be a bug of YaTeX. Please send me a bug report
826 with the configuration of your text, and avoid it temporarily by typing
827 `;' or `:' after universal-argument(`C-u') which forces
828 `;' and `:' to work as math-prefix.
831 
832 File: yatexe, Node: Inserting parentheses, Prev: Greek letters completion, Up: Completion
834 Inserting parentheses
835 =====================
837 Typing opening parenthesis, one of `(', `{ and `['', automatically
838 inserts the closing one. If a opening bracket is typed after `\', `\]' is
839 automatically inserted with computed indentation. If you stop automatic
840 insertion, type `C-q' before opening parenthesis.
843 
844 File: yatexe, Node: Local dictionaries, Next: Commenting out, Prev: Completion, Up: Top
846 Local dictionaries
847 ******************
849 Tables for completion consist of three dictionaries; `standard
850 dictionary' built in `yatex.el', `user dictionary' for your common private
851 commands, and `local dictionary' that is effective in a certain directory.
853 When you input the command unknown to YaTeX at a completion in the
854 minibuffer, YaTeX asks you with the following prompt;
856 `foo' is not in table. Register into: U)serDic L)ocalDic N)one D)iscard
858 In this menu, typing `u' updates your `user dictionary', `l' updates your
859 local dictionary, `n' updates only on-memory dictionary which go through
860 only current Emacs session, and `d' updates no dictionary and throws the
861 new word away.
863 If you find this switching feature meaningless and bothersome, put the
864 next expression into your `~/.emacs'
866 (setq YaTeX-nervous nil)
869 
870 File: yatexe, Node: Commenting out, Next: Cursor jump, Prev: Local dictionaries, Up: Top
872 Commenting out
873 **************
875 You may want to comment out some region.
877 `[prefix] >'
878 ... comment out region by %
879 `[prefix] <'
880 ... uncomment region
882 cause an operation to the region between point and mark.
884 `[prefix] .'
885 ... comment out current paragraph
886 `[prefix] ,'
887 ... uncomment current paragraph
889 comments or uncomments the paragraph where the cursor belongs. This
890 `paragraph' means the region marked by the function mark-paragraph, bound
891 to `ESC h' by default. It is NOT predictable what will happen when you
892 continuously comment out some paragraph many times.
894 You can also comment out an environment between `\begin' and
895 `\end', or a `\begin'-\`\end' pair themselves, by making the
896 following key strokes on the line where `\begin{}' or
897 `\end{}' exists.
899 `[prefix] >'
900 ... comment out from \begin to \`end'
901 `[prefix] <'
902 ... uncomment from \begin to \`end'
904 comment whole the contents of environment. Moreover,
906 `[prefix] .'
907 ... comment out \begin and \`end'
908 `[prefix] ,'
909 ... uncomment \begin and \`end'
911 (un)comments out only environment declaration: `\begin{}' and `\end{}'.
912 NOTE that even if you intend to comment out some region, invoking
913 `[prefix] >' on the `\begin',`\end' line decides to work in `commenting
914 out from `\begin' to `\end'' mode.
918 
919 File: yatexe, Node: Cursor jump, Next: Changing and Deleting, Prev: Commenting out, Up: Top
921 Cursor jump
922 ***********
925 * Menu:
927 * Jump to corresponding object::
928 * Invoking image processor::
929 * Jump to main file::
930 * Jumping around the environment::
931 * Jumping to last completion position::
934 
935 File: yatexe, Node: Jump to corresponding object, Next: Invoking image processor, Prev: Cursor jump, Up: Cursor jump
937 Jump to corresponding object
938 ============================
940 Typing
942 `[prefix] g'
943 ... go to corresponding object
945 in a certain place move the cursor to the place corresponding to the LaTeX
946 command of last place. YaTeX recognize the followings as pairs that have
947 relation each other.
949 * `\begin{}' <-> `\end{}'
950 * `%#BEGIN' <-> `%#END'
951 * On the image-including line -> corresponding viewer or drawing tool
952 * `\label{}' <-> `\ref{}'
953 * `\include(\input)' -> included file
954 * `\bibitem{}' <-> `\cite{}'
956 On a `\begin',`\end' line, typing `[prefix] g' moves the cursor to the
957 corresponding `\end',`\begin' line, if its partner really exists. The
958 behavior on the line `%#BEGIN' and `%#END' are the same. Note that if the
959 correspondent of `label/ref' or `cite/bibitem' exists in another file,
960 that file have to be opened to make a round trip between references by
961 `[prefix] g'.
963 If you type `[prefix] g' on the line of `\include{chap1}', typically in
964 the main text, YaTeX switches buffer to `chap1.tex'.
966 `[prefix] 4 g'
967 ... go to corresponding object in other window
969 do the same job as `[prefix] g' except it's done in other window.
970 Note that this function doesn't work on `begin/end',
971 `%#BEGIN/%#END' pairs because it is meaningless.
974 
975 File: yatexe, Node: Invoking image processor, Next: Jump to main file, Prev: Jump to corresponding object, Up: Cursor jump
977 Invoking image processor
978 ========================
981 `image-including line' described above means such lines as
982 `\epsfile{file=foo.ps}'. If you type `[prefix] g' on that line, YaTeX
983 automatically searches source of `foo.ps' and invokes image viewer or
984 drawing tool correspoinding to it. For example; if you draw an image
985 foo.obj with Tgif and enclose its product named foo.eps by `\epsfile'
986 command. Typing `[prefix] g' on `\epsfile' line make YaTeX invoke `tgif
987 foo.obj'. How a processor is choosen is as follows.
989 1. If there is an expression matching with one of the pattern defined in
990 `YaTeX-processed-file-regexp-alist', extract file name from regexp
991 group surrounded by \\(\\). (Which group corresponds is written in
992 the cdr part of each list.) If no matches were found, do nothing.
993 2. If there is a pattern as `%PROCESSOR' which is defined in the
994 variable `YaTeX-file-processor-alist', call that processor giving the
995 file name with corresponding extension.
996 3. If not, check the existence of each file which is supplied the
997 extension in the cdr part of each list of
998 `YaTeX-file-processor-alist'. If any, call the corresponding image
999 viewer or drawing tool.
1003 File: yatexe, Node: Jump to main file, Next: Jumping around the environment, Prev: Invoking image processor, Up: Cursor jump
1005 Jump to main file
1006 =================
1008 Typing
1010 `[prefix] ^'
1011 ... visit main file
1012 `[prefix] 4^'
1013 ... visit main file in other buffer
1015 in a sub text switch the buffer to the main text specified by
1016 `%#!' notation.
1020 File: yatexe, Node: Jumping around the environment, Next: Jumping to last completion position, Prev: Jump to main file, Up: Cursor jump
1022 Jumping around the environment
1023 ==============================
1025 And these are the functions which work on the current LaTeX environment:
1027 `M-C-a'
1028 ... beginning of environment
1029 `M-C-e'
1030 ... `end' of environment
1031 `M-C-@'
1032 ... mark environment
1036 File: yatexe, Node: Jumping to last completion position, Prev: Jumping around the environment, Up: Cursor jump
1038 Jumping to last completion position
1039 ===================================
1041 YaTeX always memorize the position of completion into register `3'. So
1042 every time you make a trip to any other part of text other than you are
1043 writing, you can return to the editing paragraph by calling
1044 register-to-point with argument YaTeX-current-position-register, which is
1045 achieved by typing `C-x j 3'(by default).
1049 File: yatexe, Node: Changing and Deleting, Next: Filling, Prev: Cursor jump, Up: Top
1051 Changing and Deleting
1052 *********************
1054 These functions are for change or deletion of LaTeX commands already
1055 entered.
1057 `[prefix] c'
1058 ... change LaTeX command
1059 `[prefix] k'
1060 ... kill LaTeX command
1062 * Menu:
1064 * Changing LaTeX commands::
1065 * Killing LaTeX commands::
1069 File: yatexe, Node: Changing LaTeX commands, Next: Killing LaTeX commands, Prev: Changing and Deleting, Up: Changing and Deleting
1071 Changing LaTeX commands
1072 =======================
1074 `[prefix] c' can change the various (La)TeX commands. This can change the
1075 followings.
1076 * Environment names
1077 * Section-type commands
1078 * Argument of section-type commands
1079 * Optional parameters (enclosed by []) of section-type commands
1080 * Font/size designators
1081 * Math-mode's maketitle-type commands that can be inputted with image
1082 completion
1084 Typing `[prefix] c' on one of above objects you want to change brings a
1085 suitable reading function sometimes with completion. Note: If you want to
1086 change the argument of section-type command that contains other LaTeX
1087 commands, type `[prefix] c' either of surrounding braces of the argument
1088 in order to make YaTeX ignore the internal LaTeX sequences as an object of
1089 changing. Anyway, it is very difficult to know which argument position
1090 the cursor belongs because the LaTeX commands can be nested and braces can
1091 freely emerge. So keep it mind to put the cursor on a brace when you are
1092 thinking of changing a complicated argument.
1096 File: yatexe, Node: Killing LaTeX commands, Prev: Changing LaTeX commands, Up: Changing and Deleting
1098 Killing LaTeX commands
1099 ======================
1101 `[prefix] k' kills the LaTeX commands sometimes with their arguments.
1102 Following table illustrates the correspondence of the invoking position
1103 and what is killed.
1105 [Invoking position] [action]
1106 \begin, \end line kill \begin,\end pairs
1107 %#BEGIN, %#END line kill %#BEGIN,%#END pairs
1108 on a Section-type command kill section-type command
1109 on a parenthesis kill parentheses
1111 Note that when killing `\begin, \end' or `%#BEGIN, %#END' pair, the lines
1112 `\begin, \end' or `%#BEGIN, %#END' exist will be killed entirely. So take
1113 care not to create any line that contains more than one `\begin' or so.
1115 While all operations above are to kill `containers' which surround some
1116 text, universal argument (`C-u') for these commands kills not only
1117 `containers' but also `contents' of them. See below as a sample.
1119 Original text: [prefix] k C-u [prefix] k
1120 Main \footnote{note} here. Main note here. Main here.
1121 ~(cursor)
1125 File: yatexe, Node: Filling, Next: Updation of includeonly, Prev: Changing and Deleting, Up: Top
1127 Filling
1128 *******
1131 Filling an item
1132 ===============
1134 To fill a term (descriptive sentences) of `\item', type
1136 `M-q'
1137 ... fill item
1139 on that item.
1141 YaTeX uses the value of the variable `YaTeX-item-regexp' as the regular
1142 expression to search item header in itemize environment. If you make a
1143 newcommand to itemize terms(e.g. `\underlineitem'), put
1145 (setq YaTeX-item-regexp
1146 "\\(\\\\\\(sub\\)*item\\)\\|\\(\\\\underlineitem\\)")
1148 in your `~/.emacs'. If you are not familiar with regular expression
1149 for Emacs-Lisp, name a newcommand for `itemize' beginning with
1150 `\item' such as `\itembf', not `\bfitem'.
1152 This function reformats the `\item' into `hang-indented' style. For
1153 example:
1155 itemize, enumerate environment:
1157 >\item[foo] `foo' is the typical word for describing an
1158 > arbitrarily written....
1159 description environment:
1160 > \item[bar] When the word `for' is used as an arbitrarily
1161 > word, `bar' is bound to follow it.
1163 Note that the indent depth of an `\item' word and its descriptive
1164 paragraph are the same in latter case. If you want to use different
1165 depth, invoke fill-paragraph at the beginning of non-whitespace
1166 character(see below).
1169 Filling paragraph
1170 =================
1172 Fill-paragraph is little bit adapted for LaTeX sources. It retains from
1173 filling in certain environments where formatting leads to a disaster such
1174 as verbatim, tabular, or so. And it protects `\verb' expressions from
1175 being folded (The variable `YaTeX-verb-regexp' controls this). Besides,
1176 putting cursor on the first occurrence of non-whitespace character on a
1177 line changes the fill-prefix temporarily to the depth of the line.
1181 File: yatexe, Node: Updation of includeonly, Next: What column, Prev: Filling, Up: Top
1183 Updation of `\includeonly'
1184 **************************
1186 When you edit splitting source texts, the notation
1188 \includeonly{CurrentEditingFileName}
1190 in the main file reduces the time of typesetting. If you want to hack
1191 other file a little however, you have to rewrite it to
1193 \includeonly{OtherFileNameYouWantToFix}
1195 in the main file. YaTeX automatically detects that the current edited
1196 text is not in includeonly list and prompts you
1198 A)dd R)eplace %)comment?
1200 in the minibuffer. Type `a' if you want to add the current file name
1201 to `\includeonly' list, `r' to replace \`includeonly' list
1202 with the current file, and type `%' to comment out the
1203 `\includeonly' line.
1207 File: yatexe, Node: What column, Next: Intelligent newline, Prev: Updation of includeonly, Up: Top
1209 What column?
1210 ************
1212 We are often get tired of finding the corresponding column in large
1213 tabulars. For example,
1215 \begin{tabular}{|c|c|c|c|c|c|c|c|}\hline
1216 Name&Position&Post No.&Addr.&Phone No.&FAX No.&
1217 Home Addr.&Home Phone\\ \hline
1218 Thunder Bird & 6 & 223 & LA & xxx-yyy &
1219 zzz-www & Japan & 9876-54321 \\
1220 & 2 & \multicolumn{2}{c|}{Unknown}
1221 &&&(???)
1222 \\ \hline
1223 \end{tabular}
1225 Suppose you have the cursor located at `(???)' mark, can you tell which
1226 column it is belonging at once? Maybe no. In such case, type
1228 `[prefix] &'
1229 ... What column
1231 in that position. YaTeX tells you the column header of the current field.
1232 Since YaTeX assumes the first line of tabular environment as a row of
1233 column headers, you can create a row of virtual column headers by putting
1234 them in the first line and commenting that line with `%'.
1238 File: yatexe, Node: Intelligent newline, Next: Usepackage checker, Prev: What column, Up: Top
1240 Intelligent newline
1241 *******************
1243 At the end of begin-type completion of tabular[*], array, itemize,
1244 enumerate or tabbing environment, or typing
1246 `ESC RET'
1247 ... Intelligent newline
1249 in these environments inserts the contents corresponding to the current
1250 environment in the next line. (At the begin-type completion, this
1251 contents can be removed by `undo'.) In `tabular' environment, for
1252 example, `ESC RET' inserts the certain number of `&' and trailing `\\',
1253 and `\hline' if other `\hline' is found in backward. Here are the list of
1254 contents vs. environments.
1256 * `tabular', `tabular*', `array'
1258 Corresponding number of `&' and `\\'. And `\hline' if
1259 needed.
1261 * `tabbing'
1263 The same number of `\>' as `\=' in the first line.
1265 * `itemize', `enumerate', `description', `list'
1267 `\item' or `item[]'.
1269 Note that since this function works seeing the contents of the first
1270 line, please call this after the second line if possible.
1272 If you want to apply these trick to other environments, `foo'
1273 environment for example, define the function named
1274 `YaTeX-intelligent-newline-foo' to insert corresponding contents.
1275 That function will be called at the beginning of the next line after the
1276 newline is inserted to the current line. Since the function
1277 `YaTeX-indent-line' is designed to indent the current line properly,
1278 calling this function before your code to insert certain contents must be
1279 useful. See the definition of the function
1280 `YaTeX-intelligent-newline-itemize' as an example.
1284 File: yatexe, Node: Usepackage checker, Next: Online help, Prev: Intelligent newline, Up: Top
1286 Usepackage checker
1287 ******************
1289 When you input begint-type, section-type, maketitle-type macros with
1290 completion, and it requires some LaTeX2e package, YaTeX examines the
1291 existence of correct `\usepackage'. If not, YaTeX inserts the
1292 `\usepackage{}' declaration corresponding to input macro.
1294 To activate the package completion for your favarite package, set the
1295 variable `YaTeX-package-alist-private' correctly. Please refere the value
1296 of `YaTeX-package-alist-default' as an example.
1300 File: yatexe, Node: Online help, Next: Browsing file hierarchy, Prev: Usepackage checker, Up: Top
1302 Online help
1303 ***********
1305 YaTeX provides you the online help with popular LaTeX commands.
1307 Here are the key strokes for the online help.
1309 `[prefix] ?'
1310 ... Online help
1311 `[prefix] /'
1312 ... Online apropos
1315 Online help
1316 ===========
1318 `Online help' shows the documentation for the popular LaTeX
1319 commands(defaults to the commands on the cursor) in the next buffer.
1320 There are two help file, `global help' and `private help'. The former
1321 file contains the descriptions on the standard LaTeX command and is
1322 specified its name by variable `YaTeX-help-file'. Usually, the global
1323 help file should be located in public space (`$EMACSEXECPATH' by default)
1324 and should be world writable so that anyone can update it to enrich its
1325 contents. The latter file contains descriptions on non-standard or
1326 personal command definitions and is specified by
1327 `YaTeX-help-file-private'. This file should be put into private
1328 directory.
1331 Online apropos
1332 ==============
1334 `Online apropos' is an equivalent of GNU Emacs's apropos. It shows all
1335 the documentations that contains the keyword entered by the user.
1338 When no descriptions are found...
1339 =================================
1341 If there is no description on a command in help files, YaTeX requires
1342 you to write a description on that command. If you are willing to do,
1343 determine which help file to add and write the description on it referring
1344 your manual of (La)TeX. Please send me your additional descriptions if
1345 you describe the help on some standard commands. I might want to include
1346 it in the next distribution.
1350 File: yatexe, Node: Browsing file hierarchy, Next: Cooperation with other packages, Prev: Online help, Up: Top
1352 Browsing file hierarchy
1353 ***********************
1355 When you are editing multi-file source, typing
1357 `[prefix] d'
1358 ... browse file hierarchy
1360 asks you the parent-most file (which may be defaulted) and displays the
1361 documentation hierarchy in the next window. In this buffer, the following
1362 commands are available.
1364 `n'
1365 ... move to the next line and show its contents
1366 `p'
1367 ... move to the previous line and show its contents
1368 `N'
1369 ... move to the next file in the same inclusion level
1370 `P'
1371 ... move to the previous file in the same inclusion level
1372 `j'
1373 ... move to the next line
1374 `k'
1375 ... move to the previous line
1376 `u'
1377 ... move to the parent file
1378 `.'
1379 ... show the current files contents in the next window
1380 `SPC'
1381 ... scroll up the current file window
1382 `DEL, b'
1383 ... scroll down the current file window
1384 `<'
1385 ... show the beginning of the current file
1386 `>'
1387 ... show the end of the current file
1388 `>'
1389 ... return to the previous postion after `<' or `>'
1390 `RET, g'
1391 ... open the current file in the next window
1392 `mouse-2'
1393 ... same as RET(available only with window system)
1394 `o'
1395 ... other window
1396 `1'
1397 ... delete other windows
1398 `-'
1399 ... shrink hierarchy buffer window
1400 `+'
1401 ... enlarge hierarchy buffer window
1402 `?'
1403 ... describe mode
1404 `q'
1405 ... quit
1407 Note that operations on the file contents in the next window do not work
1408 correctly when you close the corresponding file.
1412 File: yatexe, Node: Cooperation with other packages, Next: Customizations, Prev: Browsing file hierarchy, Up: Top
1414 Cooperation with other packages
1415 *******************************
1417 YaTeX works better with other brilliant packages.
1420 gmhist
1421 ======
1423 When you are loading `gmhist.el' and `gmhist-mh.el', you can use
1424 independent command history list at the prompt of preview command
1425 (`[prefix] tp') and print command (`[prefix] tl'). On each prompt, you
1426 can enter the previous command line string repeatedly by typing `M-p'.
1429 min-out
1430 =======
1432 `min-out', the outline minor mode, can be used in yatex-mode buffers.
1433 If you want to use it with YaTeX, please refer the file `yatexm-o.el' as
1434 an example.
1438 File: yatexe, Node: Customizations, Next: Etcetera, Prev: Cooperation with other packages, Up: Top
1440 Customizations
1441 **************
1443 You can customize YaTeX by setting Emacs-Lisp variables and by making
1444 add-in functions.
1446 * Menu:
1448 * Lisp variables::
1449 * Add-in functions::
1450 * Add-in generator::
1454 File: yatexe, Node: Lisp variables, Next: Add-in functions, Prev: Customizations, Up: Customizations
1456 Lisp variables
1457 ==============
1459 You can change the key assignments or make completion more comfortable
1460 by setting the values of various variables which control the movement of
1461 yatex-mode.
1463 For example, if you want to change the prefix key stroke from `C-c' to
1464 any other sequence, set YaTeX-prefix to whatever you want to use. If you
1465 don't want to use the key sequence `C-c letter' which is assumed to be the
1466 user reserved sequence in Emacs world, set `YaTeX-inhibit-prefix-letter'
1467 to `t', and all of the default key bind of `C-c letter' will turn to the
1468 corresponding `C-c C-letter' (but the region based completions that is
1469 invoked with `C-c Capital-letter' remain valid, if you want to disable
1470 those bindings, set that variable to 1 instead of `t').
1472 * Menu:
1474 * All customizable variables::
1475 * Sample definitions::
1476 * Hook variables::
1477 * Hook file::
1481 File: yatexe, Node: All customizable variables, Next: Sample definitions, Prev: Lisp variables, Up: Lisp variables
1483 All customizable variables
1484 --------------------------
1486 Here are the customizable variables of yatex-mode. Each value setq-ed
1487 in `~/.emacs' is preferred and that of defined in `yatex.el' is neglected.
1488 Parenthesized contents stands for the default value. When you are to
1489 change some of these variables, see more detailed documentation of the
1490 variable by `M-x describe-variable'.
1492 -- Variable: YaTeX-japan
1493 Set this nil to produce all messages in English (`Depends on Japanese
1494 feature of Emacs')
1496 -- Variable: YaTeX-kanji-code
1497 Default buffer-file-coding-system for YaTeX modes' buffer. Set this
1498 0 to no language conversion. Nil to preserve original
1499 coding-system. 1=Shift JIS, 2=JIS, 3=EUC, 4=UTF-8 (`1 or 2')
1501 -- Variable: YaTeX-prefix
1502 Prefix key stroke (`C-c')
1504 -- Variable: YaTeX-inhibit-prefix-letter
1505 Change key stroke from `C-c letter' to `C-c C-letter' (`nil')
1507 -- Variable: YaTeX-fill-prefix
1508 Fill-prefix used in yatex-mode (`nil')
1510 -- Variable: YaTeX-user-completion-table
1511 Name of user dictionary where learned completion table will be
1512 stored. (`"~/.yatexrc"')
1514 -- Variable: tex-command
1515 LaTeX typesetter command (`"latex"')
1517 -- Variable: dvi2-command
1518 Preview command (`"xdvi -geo +0+0 -s 4"')
1520 -- Variable: dviprint-command-format
1521 Command format to print dvi file (`"dvi2ps %f %t %s | lpr"')
1523 -- Variable: dviprint-from-format
1524 Start page format of above %f. %b will turn to start page (`"-f %b"')
1526 -- Variable: dviprint-to-format
1527 End page format of above %t. %e will turn to `end' page (`"-t %e"')
1529 -- Variable: makeindex-command
1530 Default makeindex command (`"makeindex"' (`"makeind"' on MS-DOS))
1532 -- Variable: YaTeX-dvipdf-command
1533 Default command name to convert .dvi to PDF (`"dvipdfmx"')
1535 -- Variable: YaTeX-on-the-fly-preview-interval
1536 Interval time in seconds of idle to trigger on-the-fly preview of
1537 environment by `[prefix] t e'(0.9).
1538 `Nil' disables on-the-fly preview.
1540 -- Variable: YaTeX-on-the-fly-math-preview-engine
1541 Function symbol to use on-the-fly preview of MATH environment started
1542 by `[prefix] t e' (`'YaTeX-typeset-environment-by-lmp' which calls
1543 latex-math-preview-expression function if latex-math-preview is
1544 available, otherwise `'YaTeX-typeset-environment-by-builtin' which
1545 alls built-in function).
1547 `Nil' disables on-the-fly preview.
1549 -- Variable: YaTeX-cmd-gimp
1550 Command name of GIMP (code{"gimp"})
1551 -- Variable: YaTeX-cmd-tgif
1552 Command name of tgif (code{"tgif"})
1553 -- Variable: YaTeX-cmd-inkscape
1554 Command name of Inkscape (code{"inkscape"})
1555 -- Variable: YaTeX-cmd-dia
1556 Command name of Dia (code{"dia"})
1557 -- Variable: YaTeX-cmd-ooo
1558 Command name of OpenOffice.org/LibreOffice (code{"soffice"})
1559 -- Variable: YaTeX-cmd-gs
1560 Command name of Ghostscript (code{"gs"})
1561 -- Variable: YaTeX-cmd-dvips
1562 Command name of dvips (code{"dvips"})
1563 -- Variable: YaTeX-cmd-displayline
1564 Command name of displayline
1565 (code{"/Applications/Skim.app/Contents/SharedSupport/displayline"})
1566 -- Variable: YaTeX-cmd-edit-ps
1567 Command name for editing PostScript files(Value of
1568 code{"YaTeX-cmd-gimp"})
1569 -- Variable: YaTeX-cmd-edit-pdf
1570 Command name for editing PDF files(Value of code{"YaTeX-cmd-ooo"})
1571 -- Variable: YaTeX-cmd-edit-ai
1572 Command name for editing `.ai' files(Value of
1573 code{"YaTeX-cmd-inkscape"})
1574 -- Variable: YaTeX-cmd-edit-svg
1575 Command name for editing SVG files(Value of
1576 code{"YaTeX-cmd-inkscape"})
1577 -- Variable: YaTeX-cmd-edit-images
1578 Command name for editing image files(Value of code{"YaTeX-cmd-gimp"})
1580 -- Variable: YaTeX-need-nonstop
1581 Put `\nonstopmode{}' or not (`nil')
1583 -- Variable: latex-warning-regexp
1584 Regular expression of warning message latex command puts out
1585 (`"line.* [0-9]*"')
1587 -- Variable: latex-error-regexp
1588 Regular expression of error message (`"l\\.[1-9][0-9]*"')
1590 -- Variable: latex-dos-emergency-message
1591 Message latex command running on DOS puts at abort (`"Emergency
1592 stop"')
1594 -- Variable: YaTeX-item-regexp
1595 Regular expression of item command (`"\\\\item"')
1597 -- Variable: YaTeX-verb-regexp
1598 Regexp of verb family. Omit \\\\. (`"verb\\*?\\|path"')
1600 -- Variable: YaTeX-nervous
1601 T for using local dictionary (`t')
1603 -- Variable: YaTeX-sectioning-regexp
1604 Regexp of LaTeX sectioning command
1605 (`"\\(part\\|chapter\\*?\\|\\(sub\\)*\\(section\\|paragraph\\)\\*?\\)\\b"')
1607 -- Variable: YaTeX-fill-inhibit-environments
1608 Inhibit fill in these environments (`'("tabular" "tabular*" "array"
1609 picture" "eqnarray" "eqnarray*" "equation" "math" "displaymath"
1610 verbatim" "verbatim*")')
1612 -- Variable: YaTeX-uncomment-once
1613 T for deleting all preceding `%' (`nil')
1615 -- Variable: YaTeX-close-paren-always
1616 T for always close all parenthesis automatically, `nil' for only eol
1617 (`t')
1619 -- Variable: YaTeX-auto-math-mode
1620 Switch math-mode automatically (`t')
1622 -- Variable: YaTeX-math-key-list-private
1623 User defined alist, math-mode-prefix vs completion alist used in
1624 image completion (`nil'). See `yatexmth.el' for the information
1625 about how to define a completion alist.
1627 -- Variable: YaTeX-default-pop-window-height
1628 Initial height of typesetting buffer when one-window. Number for the
1629 lines of the buffer, numerical string for the percentage of the
1630 screen-height. `nil' for half height (10)
1632 -- Variable: YaTeX-help-file
1633 Global online help file name
1634 (`$doc-directory/../../site-lisp/YATEXHLP.eng')
1636 -- Variable: YaTeX-help-file-private
1637 Private online help file name (`"~/YATEXHLP.eng"')
1639 -- Variable: YaTeX-no-begend-shortcut
1640 Disable [prefix] b ?? shortcut (`nil)'
1642 -- Variable: YaTeX-hilit-pattern-adjustment-private
1643 List of the list that contain the regular expression and the symbol
1644 of logical meaning of the string that matches the pattern. See also
1645 the value from `(assq 'yatex-mode hilit-patterns-alist)' and the
1646 value of `YaTeX-hilit-pattern-adjustment-default' (and even the
1647 document of hilit19.el).
1649 -- Variable: YaTeX-sectioning-level
1650 Alist of LaTeX's sectioning command vs its height.
1652 -- Variable: YaTeX-hierarchy-ignore-heading-regexp
1653 `YaTeX-display-hierarchy' searches for sectioning command first, and
1654 comment line secondary as a file headings. In latter case, ignore lines
1655 that match with regular expression of this variable. Default value of
1656 this variable is RCS header expressions and mode specifying line `-*- xxxx
1657 -*'.
1659 -- Variable: YaTeX-skip-default-reader
1660 Non-nil for this variable skips the default argument reader of
1661 section-type command when add-in function for it is not defined
1662 (`nil')
1664 -- Variable: YaTeX-create-file-prefix-g
1665 When typing `prefix g' on the `\include' line, open the target file
1666 even if the file doesn't exist (`nil')
1668 -- Variable: YaTeX-simple-messages
1669 Simplyfy messages of various completions (`nil')
1671 -- Variable: YaTeX-hilit-sectioning-face
1672 When hilit19 and yatex19 is active, YaTeX colors the sectioning
1673 commands. This variable specifies the foreground and background
1674 color of `\part' macro. The default value is `'(yellow/dodgerblue
1675 yellow/slateblue)'. The first element of this list is for the screen
1676 when `hilit-background-mode' is `'light', and the second element is
1677 for `'dark'. You should specify both color as `forecolor/backcolor'.
1679 -- Variable: YaTeX-hilit-sectioning-attenuation-rate
1680 When color mode, this variable specifies how much attenuate the color
1681 density of `\subparagraph' compared with that of `\chapter' (`'(15
1682 40)') See also `YaTeX-hilit-sectioning-face'.
1684 -- Variable: YaTeX-use-AMS-LaTeX
1685 If you use AMS-LaTeX, set to `t' (`nil')
1687 -- Variable: YaTeX-use-LaTeX2e
1688 If you use LaTeX2e, set to `t' (`t')
1690 -- Variable: YaTeX-template-file
1691 File name which is automatically inserted at creation
1692 (`~/work/template.tex')
1694 -- Variable: YaTeX-search-file-from-top-directory
1695 Non-nil means to search input-files from the directory where main
1696 file exists (`t')
1698 -- Variable: YaTeX-use-font-lock
1699 Use font-lock to fontify buffer or not (`(featurep 'font-lock)'
1701 -- Variable: YaTeX-use-hilit19
1702 Use hilit19 to highlight buffer or not (`(featurep 'hilit19)'
1704 -- Variable: YaTeX-use-italic-bold
1705 YaTeX tries to search italic, bold fontsets or not (`t' if Emacs-20
1706 or later). This variable is effective only when font-lock is used.
1707 (`(featurep 'hilit19)'
1709 -- Variable: YaTeX-singlecmd-suffix
1710 Suffix which is always inserted after maketitle-type macros.
1711 `"{}"' is recommended.
1713 -- Variable: YaTeX-package-alist-private
1714 Alist of LaTeX2e-package name vs. lists of macros in it. Set this
1715 alist properly and YaTeX automatically check the declaratiion of
1716 `usepackage' for corresponding macro, when you input that macro with
1717 completion. If required `usepackage' is not found, YaTeX also
1718 automatically inserts `\usepackage'. Alist is as follows;
1719 '((PackageName1 (completionType ListOfMacro) (completionType
1720 ListOfMacro)) (PackageName2 (completionType ListOfMacro)
1721 (completionType ListOfMacro...))....) completionType is one of `env,
1722 section, maketitle'. Consult the value of
1723 `YaTeX-package-alist-default' as an example.
1725 -- Variable: YaTeX-tabular-indentation
1726 At indentation by `C-i' in tabular or array environment, YaTeX put
1727 the additional spaces to the normail indentation depth. The number
1728 of additional spaces is the product of YaTeX-tabular-indentation and
1729 the number of column position in tabular.
1731 -- Variable: YaTeX-noindent-env-regexp
1732 Regexp of environment names that should begin with no indentation.
1733 All verbatime-like environment name should match with.
1735 -- Variable: YaTeX-electric-indent-mode
1736 Emacs 24.4 introduces automatic indentation of current and new lines.
1737 This might be annoying for some people. Pass this value to the
1738 function 'electric-indent-local-mode. If you prefer to stop
1739 electric-indent-mode in yatex-mode, set `-1' to this variable.
1741 -- Variable: YaTeX-ref-default-label-string
1742 Default \\ref time string format. This format is like strftime(3)
1743 but allowed conversion char are as follows; %y -> Last 2 digit of
1744 year, %b -> Month name, %m -> Monthe number(1-12), %d -> Day, %H ->
1745 Hour, %M -> Minute, %S -> Second, %qx -> alphabetical-decimal
1746 conversion of yymmdd. %qX -> alphabetical-decimal conversion of
1747 HHMMSS. Beware defualt label-string should be always unique. So
1748 this format string should have both time part (%H+%M+%S or %qX) and
1749 date part (%y+(%b|%m)+%d or %qx).
1751 -- Variable: YaTeX-ref-generate-label-function
1752 Function to generate default label string for unnamed \\label{}s.
1753 The function pointed to this value should take two arguments. First
1754 argument is LaTeX macro's name, second is macro's argument. Here is
1755 an example for using this value.
1756 (setq YaTeX-ref-generate-label-function 'my-yatex-generate-label)
1757 (defun my-yatex-generate-label (command value)
1758 (and (string= command "caption")
1759 (re-search-backward "\\\\begin{\\(figure\\|table\\)}" nil t)
1760 (setq command (match-string 1)))
1761 (let ((alist '(("chapter" . "chap")
1762 ("section" . "sec")
1763 ("subsection" . "subsec")
1764 ("figure" . "fig")
1765 ("table" . "tbl"))))
1766 (if (setq command (cdr (assoc command alist)))
1767 (concat command ":" value)
1768 (YaTeX::ref-generate-label nil nil))))
1773 File: yatexe, Node: Sample definitions, Next: Hook variables, Prev: All customizable variables, Up: Lisp variables
1775 Sample definitions
1776 ------------------
1778 For instance, to change the prefix key stroke to `ESC', and name of the
1779 user dictionary `~/src/emacs/yatexrc', and set `fill-prefix' to single TAB
1780 character, add the following `setq' to `~/.emacs'.
1782 (setq YaTeX-prefix "\e"
1783 YaTeX-user-completion-table "~/src/emacs/yatexrc"
1784 YaTeX-fill-prefix " ")
1788 File: yatexe, Node: Hook variables, Next: Hook file, Prev: Sample definitions, Up: Lisp variables
1790 Hook variables
1791 --------------
1793 More customizations will be done by the hook-function defined in
1794 hook-variable `yatex-mode-hook'. This is useful to define a shortcut key
1795 sequence to enter some environments other than `document' and `enumerate'
1796 etc. The following statement defines `[prefix] ba' to enter
1797 `\begin{abstract}' ... `=end{abstract}' immediately.
1799 (setq yatex-mode-hook
1800 '(lambda() (YaTeX-define-begend-key "ba" "abstract")))
1802 You should use functions `YaTeX-define-key', or
1803 `YaTeX-define-begend-key' to define all the key sequences of yatex-mode.
1807 File: yatexe, Node: Hook file, Prev: Hook variables, Up: Lisp variables
1809 Hook file
1810 ---------
1812 You can stuff all of YaTeX related expressions into a file named
1813 `yatexhks.el' if you have a lot of codes. YaTeX automatically load this
1814 file at the initialization of itself. Using `yatexhks.el' makes
1815 `yatex-mode-load-hook' unnecessary.
1819 File: yatexe, Node: Add-in functions, Next: Add-in generator, Prev: Lisp variables, Up: Customizations
1821 Add-in functions
1822 ================
1824 You can easily define a function to input detailed arguments with
1825 completion according to LaTeX environments or commands.
1828 What is add-in functions?
1829 -------------------------
1831 When you input `tabular' environment, don't you think "I want YaTeX to
1832 complete its argument toward my favorite one such as `{|c|c|c|}'..."?
1833 Yes, you can define the function to complete arguments for any environment
1834 and any LaTeX commands.
1837 Procedure
1838 ---------
1840 Here is the procedure to define add-in functions.
1841 1. Define the function
1842 2. Put the function into `yatexhks.el'
1844 * Menu:
1846 * How the add-in function works::
1847 * How the function is called::
1848 * Useful functions for creating add-in::
1849 * Contribution::
1853 File: yatexe, Node: How the add-in function works, Next: How the function is called, Prev: Add-in functions, Up: Add-in functions
1855 How the add-in function works
1856 -----------------------------
1858 There are three types of add-in.
1860 1. Option add-in
1861 2. argument add-in
1862 3. enclosing add-in
1864 "Option add-in" returns the LaTeX's optional parameters such as optional
1865 strings after `\begin{ENV}', optional strings between a section-type
1866 command and its first argument, and optional strings just after type
1867 maketitle-type command. The following illustrates the name of add-in
1868 functions, where underlined strings are generated by add-in functions.
1870 \begin{table}[ht] (Function name: YaTeX:table)
1871 ~~~~
1872 \put(100,200){} (Function name: YaTeX:put)
1873 ~~~~~~~~~
1874 \sum_{i=0}^{n} (Function name: YaTeX:sum)
1875 ~~~~~~~~~~
1877 Obviously, the function name is decided by concatenating the prefix
1878 `YaTeX:' and LaTeX command's name.
1880 Another add-in type is "argument add-in", which completes arguments for
1881 section-type commands.
1883 \newcommand{\foo}{bar} (Function name: YaTeX::newcommand)
1884 ~~~~ ~~~
1886 When the section-type command is inputted, the function named by
1887 concatenating `YaTeX::' and section-type command, is called automatically
1888 with an integer argument which indicates which argument of section-type
1889 command is being read. Thus the add-in should determine the job referring
1890 the value of its argument.
1892 "enclosing add-in" is for modifying and/or checking the region that will
1893 be enclosed by section-type commands via `[prefix] S'. An enclosing
1894 add-in function will be called with two arguments, beginning of the
1895 enclosed region and end of the region. Suppose you want to enclose the
1896 existing text `(a+b)/c' by `\frac{}'.
1898 a/c
1899 | |
1900 A B
1902 You do set-mark-command at point A and then move to point B. Typing
1903 `[prefix] S' and input `frac' enclose the region like this;
1905 \frac{a/c}
1907 Normally, the expression `a/c' is translated to
1908 `\frac{a}{c}'. An enclosing add-in is useful for modifying
1909 `/' to `}{'.
1911 * Menu:
1913 * Defining option-add-in::
1914 * Defining argument-add-in::
1915 * Defining enclosing-add-in::
1919 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
1921 Defining `option add-in'
1922 ........................
1924 If you want `{|c|c|c|}' for all `tabular' environment,
1926 (defun YaTeX:tabular ()
1927 "{|c|c|c|}")
1929 is enough. If you want more complicated format, define as below.
1931 (defun YaTeX:tabular ()
1932 "{@{\\vrule width 1pt\\ }|||@{\\ \\vrule width 1pt}}")
1934 Note that the character `\' must be described as `\\' in Emacs-Lisp. The
1935 next example reads the tabular format from keyboard.
1936 (defun YaTeX:tabular ()
1937 (concat "{" (read-string "Rule: ") "}"))
1941 File: yatexe, Node: Defining argument-add-in, Next: Defining enclosing-add-in, Prev: Defining option-add-in, Up: How the add-in function works
1943 Defining `argument add-in'
1944 ..........................
1946 This section describes how to define the add-in function for
1947 `\newcommand'.
1949 The first argument of `\newcommand' begins always with `\'. The second
1950 argument is usually so complex that we can not edit them in the
1951 minibuffer. Here is the created function considering this.
1953 (defun YaTeX::newcommand (n) ;n is argument position
1954 (cond
1955 ((= n 1) ;1st argument is macro name
1956 (read-string "Command: " "\\")) ;initial input `\'
1957 ((= n 2) "") ;do nothing when reading arg#2
1958 (t nil)))
1960 Note that when the `argument add-in' function return `nil', normal
1961 argument reader will be called.
1965 File: yatexe, Node: Defining enclosing-add-in, Prev: Defining argument-add-in, Up: How the add-in function works
1967 Defining `enclosing add-in'
1968 ...........................
1970 This section describes how to define the add-in function for text
1971 enclosed by `\frac{}'.
1973 When enclosing the text `5/3' by `\frac{}', you might want to replace
1974 `/' with `}{'. Enclosing function `YaTeX::frac-region' is called with two
1975 arguments, beginning of enclosed text and end of enclosed text. The
1976 function is expected to replace `/' with `}{'. Here is an example
1977 expression.
1979 (defun YaTeX::frac-region (beg end)
1980 (catch 'done
1981 (while (search-forward "/" end t)
1982 (goto-char (match-beginning 0))
1983 (if (y-or-n-p "Replace this slash(/) with `}{'")
1984 (throw 'done (replace-match "}{")))
1985 (goto-char (match-end 0)))))
1989 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
1991 How the function is called
1992 --------------------------
1994 YaTeX calls the add-in functions for specified begin-type, section-type,
1995 and maketitle-type command, if any. `Option add-in' functions for
1996 begin-type are called when `\begin{ENV}' has been inserted, functions for
1997 section-type are called just before input of the first argument, and
1998 functions for maketitle-type is called after maketitle-type command has
1999 been inserted. `Argument add-in' functions are called at each entry of
2000 arguments for section-type commands.
2004 File: yatexe, Node: Useful functions for creating add-in, Next: Contribution, Prev: How the function is called, Up: Add-in functions
2006 Useful functions for creating add-in
2007 ------------------------------------
2009 Many add-in functions for typical LaTeX commands are defined in
2010 `yatexadd.el'. Those are also useful as references. Here are the short
2011 descriptions on useful functions, where [F] means function, [A] means
2012 arguments, [D] means description.
2014 `[F]'
2015 YaTeX:read-position
2016 `[A]'
2017 Character list which can show up in the brackets
2018 `[D]'
2019 Return the location specifier such as `[htb]'. When
2020 nothing is entered, omit [] itself. If the possible characters
2021 are "htbp", call this function as
2022 `(YaTeX:read-position "htbp")'
2024 `[F]'
2025 YaTeX:read-coordinates
2026 `[A]'
2027 Base prompt, X-axis prompt, Y-axis prompt (each optional)
2028 `[D]'
2029 Read the coordinates with the prompt "BasePrompt X-axisPrompt:" for
2030 X-axis, "BasePrompt Y-axisPrompt:" for Y-axis, and return it in the form
2031 of "(X,Y)". The default prompts are `Dimension', `X',
2032 `Y' respectively.
2034 `[F]'
2035 YaTeX:check-completion-type
2036 `[A]'
2037 One of the symbols: 'begin, 'section, or 'maketitle
2038 `[D]'
2039 Check the current completion type is specified one and cause error
2040 if not. The variable `YaTeX-current-completion-type' holds the symbol
2041 according to the current completion type.
2045 File: yatexe, Node: Contribution, Prev: Useful functions for creating add-in, Up: Add-in functions
2047 Contribution
2048 ------------
2050 If you make your own pretty function and you let it be in public, please
2051 send me the function. I'm going to include it in the next release.
2055 File: yatexe, Node: Add-in generator, Prev: Add-in functions, Up: Customizations
2057 Add-in generator
2058 ================
2060 First, don't forget to read the section of add-in functions *Note Add-in
2061 functions::. If you easily understand how to define them, there's no need
2062 to read this section. But being not familiar with Emacs-Lisp, when you
2063 don't have clear idea what to do, this section describes how to get YaTeX
2064 make add-in function.
2066 There are two methods of generation. One is for fully interactive
2067 generator for beginners and another requires little knowledge of
2068 Emacs-Lisp.
2071 Generator for beginners
2072 -----------------------
2073 The former generator is called by
2074 `M-x YaTeX-generate'
2076 strokes. All you have to do is follow the guidances. Defying them may
2077 cases the disaster (I wonder what is it???). So when you make some
2078 mistake, it is recommendable to type `C-g' and start afresh.
2081 Simple generator
2082 ----------------
2084 The latter generator is invoked by the next sequence. `M-x
2085 YaTeX-generate-simple' This generator can make both "option add-in" and
2086 argument add-in" (*refer the section add-in functions* *Note How the
2087 add-in function works::), whereas `YaTeX-generate' cannot make "argument
2088 addin".
2090 For example, assume you have the LaTeX command as follows.
2092 \epsinput[t](250,50){hoge.eps}{plain}{Picture of foo}
2093 (A) (B) (1) (2) (3)
2094 (A)Optional parameter to specify the position
2095 One of t(top), b(bottom), l(left), r(right)
2096 (B)Maximum size of frame
2097 (1)1st argument is filename of EPS file
2098 (2)2nd argument indicates
2099 plain do nothing
2100 frame make frame around image
2101 dframe make double-frame around image
2102 for included EPS file.
2103 (3)Caption for the picture
2105 Now get start with generation. Typing `M-x YaTeX-generate-simple'
2106 brings the prompt:
2107 (O)ption? (A)rgument?
2110 Generating "option add-in"
2111 ..........................
2113 Since (A), (B) above are optional argument, all we have to do to
2114 complete them is define the option add-in for them. Let's generate the
2115 function to complete (A).
2117 M-x YaTeX-generate-simple RET
2118 epsinput RET
2121 Typing as above leads the next prompt.
2123 Read type(1): (S)tring (C)omplete (F)ile ([)option (P)osition co(O)rd. (q)uit
2125 This asks that "Which type is the completion style of 1st argument?".
2126 Here are the possible completion style.
2128 `String'
2129 read plain string
2130 `Complete'
2131 read with completion
2132 `File'
2133 read file name
2134 `Option'
2135 read optional string (if string omitted, omit [] too)
2136 `Position'
2137 read positional option (like [htbp])
2138 `Coord.'
2139 read coordinates
2140 `Quit'
2141 quit from generating
2143 Since (A) is the optional argument to specify the location of included
2144 EPS file, the completion style is `Position', and the possible characters
2145 are t, b, l, and r. To tell these information to generator, operate as
2146 follows.
2148 Read type(1).... p
2149 Acceptable characters: tblr RET
2151 (B) is coordinate. So its completion style is coOrd. We want a prompt
2152 meaning "Maximum size" when completion.
2154 Read type(2).... o
2155 Prompt for coordinates: Max size RET
2157 That's all for optional argument. Select quit.
2159 Read type(3).... q
2161 Then the generated option add-in function for \epsinput will be shown in
2162 the next window.
2165 Generating "argument add-in"
2166 ............................
2168 Next, create the argument add-in. The arguments for \epsinput are EPS
2169 file name, framing style, and caption string in sequence.
2171 M-x YaTeX-generate-simple RET
2172 epsinput RET
2175 Above key strokes bring the prompt that asks the number of argument.
2176 Answer it with 3.
2178 How many arguments?: 3 RET
2180 Then the generator asks the completion style and prompt for completion.
2181 Answer them. `f' for FileName and prompt string.
2183 Read type(1).... f
2184 Prompt for argument#1 EPS file name RET
2186 The second argument is one of selected symbol. So the completion type
2187 is `Completion'.
2189 Read type(2).... c
2190 Prompt for argument#2 Include style RET
2192 Then all the candidates ready to be read. Type single RET after
2193 entering all.
2195 Item[1](RET to exit): plain RET
2196 Item[2](RET to exit): frame RET
2197 Item[3](RET to exit): dframe RET
2198 Item[4](RET to exit): RET
2200 The following prompt asks whether the entered string must belong to
2201 candidates or not. In this case, since the argument must be one of
2202 `plain', `frame', and `dframe', type `y'.
2204 Require match? (y or n) y
2206 The last argument is the caption string for which any completion is
2207 needed.
2209 Read type(3).... s
2210 Prompt for argument#3 Caption RET
2211 default: Figure of RET
2213 Finally we'll get the argument add-in in the next window.
2216 Contribution
2217 ------------
2219 If you get your own pretty function and you let it be in public, please
2220 steel yourself in the happy atmosphere and do not send me the function. I
2221 do know it is not fine because it is generated by yatexgen:-p.
2225 File: yatexe, Node: Etcetera, Next: Copying, Prev: Customizations, Up: Top
2227 Etcetera
2228 ********
2230 The standard completion tables provided in `yatex.el' contain a few
2231 LaTeX commands I frequently use. This is to lessen the key strokes to
2232 complete entire word, because too many candidates rarely used often cause
2233 too many hits. Therefore always try to use completion in order to enrich
2234 your dictionary, and you will also find `Wild Bird' growing suitable for
2235 your LaTeX style.
2237 The package name `Wild Bird' is the English translation of Japanese
2238 title `Yachou', which is a trick on words of Japanese.
2242 File: yatexe, Node: Copying, Prev: Etcetera, Up: Top
2244 Copying
2245 *******
2247 This program is distributed as a free software. You can
2248 use/copy/modify/redistribute this software freely but with NO warranty to
2249 anything as a result of using this software. Adopting code from this
2250 program is also free. But I would not do contract act.
2252 Any reports and suggestions are welcome as long as I feel interests in
2253 this software. My possible e-mail address is `yuuji@yatex.org'. (as of
2254 Jan.2004) And there is mailing list for YaTeX. Although the common
2255 language is Japanese, questions in English will be welcome. To join the
2256 ML, send the mail whose subject is `append' to the address
2257 `yatex@yatex.org. If you have some question, please ask to
2258 `yatex-admin@yatex.org'.
2260 The specification of this software will be surely modified (depending on
2261 my feelings) without notice :-p.
2264 HIROSE Yuuji
2266 Tag table:
2267 Node: Top256
2268 Node: What is YaTeX?1583
2269 Node: Main features1956
2270 Node: Installation3500
2271 Node: Typesetting4277
2272 Node: Calling typesetter5389
2273 Node: Calling previewer7916
2274 Node: Printing out8277
2275 Node: %#notation8569
2276 Node: Changing typesetter8940
2277 Node: Splitting input files9304
2278 Node: Static region for typesetting10729
2279 Node: Lpr format11858
2280 Node: Controlling which command to invoke12888
2281 Node: Editing %# notation13845
2282 Node: Completion14389
2283 Node: Begin-type completion14904
2284 Node: Section-type completion17758
2285 Node: view-sectioning20179
2286 Node: Large-type completion21759
2287 Node: Maketitle-type completion22412
2288 Node: Arbitrary completion22964
2289 Node: End completion23354
2290 Node: Accent completion23823
2291 Node: Image completion24440
2292 Node: Greek letters completion26695
2293 Node: Inserting parentheses27451
2294 Node: Local dictionaries27858
2295 Node: Commenting out28795
2296 Node: Cursor jump30254
2297 Node: Jump to corresponding object30545
2298 Node: Invoking image processor31945
2299 Node: Jump to main file33288
2300 Node: Jumping around the environment33654
2301 Node: Jumping to last completion position34072
2302 Node: Changing and Deleting34581
2303 Node: Changing LaTeX commands34962
2304 Node: Killing LaTeX commands36139
2305 Node: Filling37324
2306 Node: Updation of includeonly39179
2307 Node: What column39976
2308 Node: Intelligent newline41061
2309 Node: Usepackage checker42714
2310 Node: Online help43305
2311 Node: Browsing file hierarchy44980
2312 Node: Cooperation with other packages46717
2313 Node: Customizations47422
2314 Node: Lisp variables47718
2315 Node: All customizable variables48677
2316 Node: Sample definitions60640
2317 Node: Hook variables61153
2318 Node: Hook file61857
2319 Node: Add-in functions62196
2320 Node: How the add-in function works63034
2321 Node: Defining option-add-in65220
2322 Node: Defining argument-add-in65942
2323 Node: Defining enclosing-add-in66823
2324 Node: How the function is called67679
2325 Node: Useful functions for creating add-in68355
2326 Node: Contribution69765
2327 Node: Add-in generator70039
2328 Node: Etcetera75499
2329 Node: Copying76104
2331 End tag table