yatex

view docs/yatexe.tex @ 46:cd1b63102eed

Support Mule2
author yuuji
date Mon, 19 Sep 1994 16:54:19 +0000
parents 56f7676ed8ca
children a0640ff3f72f
line source
1 \def\lang{jp} % -*- texinfo -*-
2 \input texinfo.tex
3 @setfilename yatexe
4 @settitle Yet Another tex-mode for Emacs
6 @iftex
7 @c @syncodeindex fn cp
8 @syncodeindex vr cp
9 @end iftex
11 @titlepage
12 @sp 10
13 @center
14 @subtitle Yet Another tex-mode for emacs
15 @title Wild Bird
16 @subtitle // YaTeX //
17 @author @copyright{} 1991-1994 by HIROSE, Yuuji [yuuji@@ae.keio.ac.jp]
18 @end titlepage
20 @node Top, What is YaTeX?, (dir), (dir)
21 @comment node-name, next, previous, up
22 @cindex Demacs
23 @cindex Mule
24 @cindex LaTeX
25 @cindex YaTeX
27 @menu
28 * What is YaTeX?::
29 * Main features::
30 * Installation::
31 * Typesetting::
32 * %# notation::
33 * Completion::
34 * Commenting out::
35 * Cursor jump::
36 * Changing and Deleting::
37 * Filling an item::
38 * Local dictionaries::
39 * Updation of @code{\includeonly}::
40 * What column?::
41 * Intelligent newline::
42 * Online help::
43 * Cooperation with other packages::
44 * Customizations::
45 * Etcetera::
46 * Copying::
48 --- The Detailed Node Listing ---
50 %# notation
52 * Changing typesetter::
53 * Static region for typesetting::
54 * Lpr format::
55 * Editing %# notation::
57 Completion
59 * Begin-type completion::
60 * Section-type completion::
61 * Large-type completion::
62 * Maketitle-type completion::
63 * Arbitrary completion::
64 * End completion::
65 * Accent completion::
66 * Image completion::
67 * Greek letters completion::
69 Section-type completion
71 * view-sectioning::
73 Customizations
75 * Lisp variables::
76 * Add-in functions::
78 Lisp variables
80 * All customizable variables::
81 * Sample definitions::
82 * Hook variables::
83 * Hook file::
84 @end menu
86 @node What is YaTeX?, Main features, Top, Top
87 @comment node-name, next, previous, up
88 @chapter What is YaTeX?
90 YaTeX automates typesetting and previewing of LaTeX and enables
91 completing input of LaTeX mark-up command such as
92 @code{\begin@{@}}..@code{\end@{@}}.
94 YaTeX also supports Demacs which runs on MS-DOS(386), Mule (Multi
95 Language Enhancement to GNU Emacs), and latex on DOS.
97 @node Main features, Installation, What is YaTeX?, Top
98 @comment node-name, next, previous, up
99 @chapter Main features
101 @itemize
102 @item Invocation of typesetter, previewer and related programs(@kbd{C-c t})
103 @item Typesetting on static region which is independent from point
104 @item Semiautomatic replacing of @code{\include only}
105 @item Jumping to error line(@kbd{C-c '})
106 @item Completing-read of La@TeX{} commands such as @code{\begin@{@}},
107 @code{\section} etc.
108 (@kbd{C-c b}, @kbd{C-c s}, @kbd{C-c l}, @kbd{C-c m})
109 @item Enclosing text into La@TeX{} environments or commands
110 (@kbd{C-u} @var{AboveKeyStrokes})
111 @item Learning unknown/new La@TeX{} commands for the next completion
112 @item Argument reading with a guide for complicated La@TeX{} commands
113 @item Generating argument-readers for new/unsupported commands(@file{yatexgen})
114 @item Quick changing or deleting of La@TeX{} commands(@kbd{C-c c}, @kbd{C-c k})
115 @item Jumping from and to inter-file, begin<->end, ref<->label(@kbd{C-c g})
116 @item Blanket commenting out or uncommenting
117 (@kbd{C-c >}, @kbd{C-c <}, @kbd{C-c ,}, @kbd{C-c .})
118 @item Easy input of accent mark, math-mode's commands and Greek letters
119 (@kbd{C-c a}, @kbd{;}, @kbd{/})
120 @item Online help for the popular La@TeX{} commands
121 (@kbd{C-c ?}, @kbd{C-c /})(English help is not yet supported)
122 @end itemize
124 @node Installation, Typesetting, Main features, Top
125 @comment node-name, next, previous, up
126 @chapter Installation
127 @cindex installation
128 @cindex .emacs
129 @cindex auto-mode-alist
130 @cindex autoload
132 Put next two expressions into your @file{~/.emacs}.
134 @lisp
135 (setq auto-mode-alist
136 (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
137 (autoload 'yatex-mode "yatex" "Yet Another La@TeX{} mode" t)
138 @end lisp
140 Next, add certain path name where you put files of YaTeX to your
141 load-path. If you want to put them in @file{~/src/emacs}, write
143 @lisp
144 (setq load-path
145 (cons (expand-file-name "~/src/emacs") load-path))
146 @end lisp
148 @noindent
149 in your @file{~/.emacs}
151 Then, yatex-mode will be automatically loaded when you visit a
152 file which has extension @file{.tex}. If yatex-mode is successfully
153 loaded, mode string on mode line will be turned to "YaTeX".
156 @node Typesetting, %# notation, Installation, Top
157 @comment node-name, next, previous, up
158 @chapter Typesetting
159 @cindex typesetting
160 @cindex previewer
161 @cindex typesetter
162 @cindex latex
163 @cindex printing out
165 The prefix key stroke of yatex-mode is @kbd{C-c} (Press 'C' with Control
166 key) by default. If you don't intend to change the prefix key stroke,
167 assume all @kbd{[prefix]} as @kbd{C-c} in this document. These key
168 strokes execute typeset or preview command.
170 @table @kbd
171 @item [prefix] tj
172 @dots{} invoke latex
173 @item [prefix] tr
174 @dots{} invoke latex on region
175 @item [prefix] tk
176 @dots{} kill current typesetting process
177 @item [prefix] tb
178 @dots{} invoke bibtex
179 @item [prefix] tp
180 @dots{} preview
181 @item [prefix] tl
182 @dots{} lpr dvi-file
183 @end table
185 The current editing window will be divided horizontally when you
186 invoke latex command, and log message of La@TeX{} typesetting will be
187 displayed in the other window; called typesetting buffer. The
188 typesetting buffer automatically scrolls up and traces La@TeX{}
189 warnings and error messages. If you see latex stopping by an
190 error, you can send string to latex in the typesetting buffer.
192 If an error stops the La@TeX{} typesetting, this key stroke will
193 move the cursor to the line where La@TeX{} error is detected.
195 @table @kbd
196 @item [prefix] '
197 @itemx ([prefix]+single quotation)
199 @dots{} jump to the previous error or warning
200 @end table
202 If you find a noticeable error, move to the typesetting buffer and move
203 the cursor on the line of error message and type @kbd{SPACE} key. This
204 makes the cursor move to corresponding source line.
206 Since @kbd{[prefix] tr} pastes the region into the file
207 @file{texput.tex} in the current directory, you should be careful of
208 overwriting. The method of specification of the region is shown in the
209 section @xref{%#NOTATION}.
211 The documentstyle for typeset-region is the same as that of editing
212 file if you edit one file, and is the same as main file's if you
213 edit splitting files.
215 YaTeX asks you the range of dvi-printing by default. You can
216 skip this by invoking it with universal-argument as follows:
218 @example
219 C-u [prefix] tl
220 @end example
222 @node %# notation, Completion, Typesetting, Top
223 @comment node-name, next, previous, up
224 @chapter %# notation
225 @cindex %# notation
227 You can control the typesetting process by describing @code{%#}
228 notations in the source text.
230 @menu
231 * Changing typesetter::
232 * Static region for typesetting::
233 * Lpr format::
234 * Editing %# notation::
235 @end menu
237 @node Changing typesetter, Static region for typesetting, %# notation, %# notation
238 @comment node-name, next, previous, up
239 @section To change the `latex' command or to split a source text.
240 @cindex typesetter
242 To change the typesetting command, write
244 @example
245 %#!latex-big
246 @end example
248 @noindent
249 anywhere in the source text. And if you split the source text and
250 edit subfile that should be included from main text.
252 @example
253 %#!latex main.tex
254 @end example
256 @noindent
257 will be helpful to execute latex on main file from sub text buffer. Since
258 this command line after @kbd{%#!} will be sent to shell literally, next
259 description makes it convenient to use ghostview as dvi-previewer.
261 @example
262 %#!latex main ; dvi2ps main.dvi > main
263 @end example
265 @noindent
266 Note that YaTeX assumes the component before the last period of
267 the last word in this line as base name of the main La@TeX{} source.
269 Here are the restrictions on splitting sources.
271 @itemize
272 @item All the file name should be different.
273 @item You can put split texts in sub directory, but not in
274 sub directory of sub directory.
275 @item In the main text,specify the file with relative path name
276 such as \include{chap1/sub}, when you include the file in
277 a sub-directory.
278 @item In a sub-text, write @code{%#!latex main.tex} even if @file{main.tex}
279 is in the parent directory(not %#!latex ../main.tex).
280 @end itemize
282 @node Static region for typesetting, Lpr format, Changing typesetter, %# notation
283 @comment node-name, next, previous, up
284 @section Static region
285 @cindex static region
286 @cindex Fixed region
288 Typeset-region by @kbd{[prefix] tr} passes the region between point and
289 mark to typesetting command by default. But when you want to typeset
290 static region, enclose the region by @code{%#BEGIN} and @code{%#END} as
291 follows.
293 @example
294 %#BEGIN
295 TheRegionYouWantToTypesetManyTimes
296 %#END
297 @end example
299 This is the rule of deciding the region.
301 @enumerate
302 @item
303 If there exists %#BEGIN before point,
305 @enumerate
306 @item
307 If there exists %#END after %#BEGIN,
308 @itemize
309 @item From %#BEGIN to %#END.
310 @end itemize
312 @item
313 If %#END does not exist after %#BEGIN,
314 @itemize
315 @item From %#BEGIN to the end of buffer.
316 @end itemize
317 @end enumerate
319 @item
320 If there does not exist %#BEGIN before point,
321 @itemize
322 @item Between point and mark(standard method of Emacs).
323 @end itemize
324 @end enumerate
326 It is useful to write @code{%#BEGIN} in the previous line of \begin and
327 @code{%#END} in the next line of \@code{end} when you try complex
328 environment such as `tabular' many times. It is also useful to put only
329 @code{%#BEGIN} alone at the middle of very long text. Do not forget to
330 erase @code{%#BEGIN} @code{%#END} pair.
332 @node Lpr format, Editing %# notation, Static region for typesetting, %# notation
333 @comment node-name, next, previous, up
334 @section Lpr format
335 @cindex lpr format
337 Lpr format is specified by three Lisp variables. Here are the
338 default values of them.
340 @table @code
341 @item (1)dviprint-command-format
342 @code{"dvi2ps %f %t %s | lpr"}
343 @item (2)dviprint-from-format
344 @code{"-f %b"}
345 @item (3)dviprint-to-format
346 @code{"-t %e"}
347 @end table
349 On YaTeX-lpr, @code{%s} in (1) is replaced by the file name of main
350 text, @code{%f} by contents of (2), %t by contents of (3). At these
351 replacements, @code{%b} in (2) is also replaced by the number of beginning
352 page, @code{%e} in (3) is replaced by the number of ending page. But
353 @code{%f} and @code{%t} are ignored when you omit the range of print-out
354 by @kbd{C-u [prefix] tl}.
356 If you want to change this lpr format temporarily, put a command
357 such as follows somewhere in the text:
359 @example
360 %#LPR dvi2ps %f %t %s | 4up -page 4 | texfix | lpr -Plp2
361 @end example
363 And if you want YaTeX not to ask you the range of printing
364 out, the next example may be helpful.
366 @example
367 %#LPR dvi2ps %s | lpr
368 @end example
370 @node Editing %# notation, , Lpr format, %# notation
371 @comment node-name, next, previous, up
372 @section Editing %# notation
374 To edit @code{%#} notation described above, type
376 @table @kbd
377 @item [prefix] %
378 @dots{} editing %# notation menu
379 @end table
381 @noindent
382 and select one of the entry of the menu as follows.
384 @example
385 !)Edit-%#! B)EGIN-END-region L)Edit-%#LPR
386 @end example
388 @noindent
389 Type @kbd{!} to edit @code{%#!} entry, @code{b} to enclose the region with
390 @code{%#BEGIN} and @code{%#END}, and @code{l} to edit @code{%#LPR} entry.
391 When you type @kbd{b}, all @code{%#BEGIN} and @code{%#END} are
392 automatically erased.
394 @node Completion, Commenting out, %# notation, Top
395 @comment node-name, next, previous, up
396 @chapter Completion
397 @cindex completion
399 YaTeX makes it easy to input the La@TeX{} commands. There are several
400 kinds of completion type, begin-type, section-type, large-type, etc...
402 @menu
403 * Begin-type completion::
404 * Section-type completion::
405 * Large-type completion::
406 * Maketitle-type completion::
407 * Arbitrary completion::
408 * End completion::
409 * Accent completion::
410 * Image completion::
411 * Greek letters completion::
412 @end menu
414 @node Begin-type completion, Section-type completion, Completion, Completion
415 @comment node-name, next, previous, up
416 @section Begin-type completion
417 @cindex begin-type completion
418 @cindex environment
419 @cindex prefix b
421 "Begin-type completion" completes commands of @code{\begin@{env@}} ...
422 @code{\end@{env@}}. All of the begin-type completions begin with this key
423 sequence.
425 @table @kbd
426 @item [prefix] b
427 @dots{} start begin-type completion
428 @end table
430 @noindent
431 An additional key stroke immediately completes a frequently used
432 La@TeX{} @code{\begin@{@}}...@code{\@code{end}@{@}} environment.
434 @table @kbd
435 @item [prefix] b c
436 @dots{} @code{\begin@{center@}...\end@{center@}}
437 @item [prefix] b d
438 @dots{} @code{\begin@{document@}...\end@{document@}}
439 @item [prefix] b D
440 @dots{} @code{\begin@{description@}...\end@{description@}}
441 @item [prefix] b e
442 @dots{} @code{\begin@{enumerate@}...\end@{enumerate@}}
443 @item [prefix] b E
444 @dots{} @code{\begin@{equation@}...\end@{equation@}}
445 @item [prefix] b i
446 @dots{} @code{\begin@{itemize@}...\end@{itemize@}}
447 @item [prefix] b l
448 @dots{} @code{\begin@{flushleft@}...\end@{flushleft@}}
449 @item [prefix] b m
450 @dots{} @code{\begin@{minipage@}...\end@{minipage@}}
451 @item [prefix] b t
452 @dots{} @code{\begin@{tabbing@}...\end@{tabbing@}}
453 @item [prefix] b T
454 @dots{} @code{\begin@{tabular@}...\end@{tabular@}}
455 @item [prefix] b^T
456 @dots{} @code{\begin@{table@}...\end@{table@}}
457 @item [prefix] b p
458 @dots{} @code{\begin@{picture@}...\end@{picture@}}
459 @item [prefix] b q
460 @dots{} @code{\begin@{quote@}...\end@{quote@}}
461 @item [prefix] b Q
462 @dots{} @code{\begin@{quotation@}...\end@{quotation@}}
463 @item [prefix] b r
464 @dots{} @code{\begin@{flushright@}...\end@{flushright@}}
465 @item [prefix] b v
466 @dots{} @code{\begin@{verbatim@}...\end@{verbatim@}}
467 @item [prefix] b V
468 @dots{} @code{\begin@{verse@}...\end@{verse@}}
469 @end table
471 Any other La@TeX{} environments are made by completing-read of the
472 Emacs function.
474 @table @kbd
475 @item [prefix] b SPACE
476 @dots{} begin-type completion
477 @end table
479 @noindent
480 The next message will show up in the minibuffer
482 @example
483 Begin environment(default document):
484 @end example
486 @noindent
487 by typing @kbd{[prefix] b}. Put the wishing environment with completion
488 in the minibuffer, and @code{\begin@{env@}}...\@code{\end@{env@}} will be
489 inserted in the La@TeX{} source text. If the environment you want to put
490 does not exist in the YaTeX completion table, it will be registered in the
491 user completion table. YaTeX automatically saves the user completion
492 table in the user dictionary file at exiting of emacs.
494 If you want to enclose some paragraphs which have already been
495 written, invoke the begin-type completion with changing the case
496 of @kbd{b} of key sequence upper(or invoke it with universal argument
497 by @kbd{C-u} prefix).
498 @cindex enclose region into environment
500 The following example encloses a region with `description'
501 environment.
503 @table @kbd
504 @item [prefix] B D
505 @itemx (or ESC 1 [prefix] b D)
506 @itemx (or C-u [prefix] b D)
508 @dots{} begin-type completion for region
509 @end table
511 This enclosing holds good for the completing input by @kbd{[prefix] b
512 SPC}. @kbd{[prefix] B SPC} enclose a region with the environment selected
513 by completing-read.
515 @node Section-type completion, Large-type completion, Begin-type completion, Completion
516 @comment node-name, next, previous, up
517 @section Section-type completion
518 @cindex section-type completion
519 @cindex prefix s
521 "Section-type completion" completes section-type commands which take an
522 argument or more such as @code{\section@{foo@}}. To invoke section-type
523 completion, type
525 @table @kbd
526 @item [prefix] s
527 @dots{} section-type completion
528 @end table
530 @noindent
531 then the prompt
533 @example
534 (C-v for view) \???@{@} (default documentstyle):
535 @end example
537 @noindent
538 will show up in the minibuffer. Section-type La@TeX{} commands are
539 completed by space key, and the default value is selected when you
540 type nothing in the minibuffer.
542 Next,
544 @example
545 \section@{???@}:
546 @end example
548 @noindent
549 prompts you the argument of section-type La@TeX{} command. For
550 example, the following inputs
552 @example
553 \???@{@} (default documentstyle): section
554 \section{???}: Hello world.
555 @end example
557 @noindent
558 will insert the string
560 @example
561 \section@{Hello world.@}
562 @end example
564 in your La@TeX{} source. When you neglect argument such as
566 @example
567 (C-v for view) \???@{@} (default section): vspace*
568 \vspace*@{???@}:
569 @end example
571 YaTeX puts
573 @example
574 \vspace*@{@}
575 @end example
577 @noindent
578 and move the cursor in the braces.
580 In La@TeX{} command, there are commands which take more than one
581 arguments such as @code{\addtolength{\topmargin}{8mm}}. To complete these
582 commands, invoke section-type completion with universal argument as,
583 @cindex number of argument
585 @example
586 C-u 2 [prefix] s (or ESC 2 [prefix] s)
587 @end example
589 @noindent
590 and make answers in minibuffer like this.
592 @example
593 (C-v for view) \???@{@} (default vspace*): addtolength
594 \addtolength@{???@}: \topmargin
595 Argument 2: 8mm
596 @end example
598 @code{\addtolength} and the first argument @code{\topmargin} can be typed
599 easily by completing read. Since YaTeX also learns the number of
600 arguments of section-type command and will ask that many arguments in
601 future completion, you had better tell the number of arguments to YaTeX at
602 the first completion of the new word. But you can change the number of
603 arguments by calling the completion with different universal argument
604 again.
606 The special number of argument 0 makes YaTeX use read-string to
607 read the first argument instead of completing-read. It is more
608 comfortable to enter first argument without completion when you
609 put section title which contains space character. Normally, such
610 sectioning commands as chapter, section, paragraph..., have
611 argument 0 in the completion table.
613 Invoking section-type completion with @code{[Prefix] S} (Capital `S')
614 includes the region as the first argument of section-type command.
616 The section/large/maketitle type completion can work at the
617 prompt for the argument of other section-type completion.
618 Nested La@TeX{} commands are efficiently read with the recursive
619 completion by typing YaTeX's completion key sequence in the
620 minibuffer.
622 @menu
623 * view-sectioning::
624 @end menu
626 @node view-sectioning, , Section-type completion, Section-type completion
627 @comment node-name, next, previous, up
628 @subsection view-sectioning
629 @cindex view sectioning
630 @cindex outline
632 In the minibuffer at the prompt of section-type command completion,
633 typing @kbd{C-v} shows a list of sectioning commands in source text(The
634 line with @code{<<--} mark is the nearest sectioning command). Then,
635 default sectioning command appears in the minibuffer. You can go up/down
636 sectioning command by typing @kbd{C-p}/@kbd{C-n}, can scrolls up/down the
637 listing buffer by @kbd{C-v}/@kbd{M-v}, and can hide sectioning commands
638 under certain level by 0 through 6. Type @kbd{?} in the minibuffer of
639 sectioning prompt for more information.
641 @node Large-type completion, Maketitle-type completion, Section-type completion, Completion
642 @comment node-name, next, previous, up
643 @section Large-type completion
645 "Large-type completion" inputs the font or size changing
646 descriptions such as @code{@{\large @}}. When you type
648 @table @kbd
649 @item [prefix] l
650 @dots{} large-type completion
651 @end table
653 @noindent
654 the message in the minibuffer
656 @example
657 @{\??? @} (default large):
658 @end example
660 prompts prompts you large-type command with completing-read. There are
661 TeX commands to change fonts or sizes, @code{it}, @code{huge} and so on,
662 in the completion table.
664 Region-based completion is also invoked by changing the letter after
665 prefix key stroke as @kbd{[prefix] L}. It encloses the region by braces
666 with large-type command.
668 @node Maketitle-type completion, Arbitrary completion, Large-type completion, Completion
669 @comment node-name, next, previous, up
670 @section Maketitle-type completion
671 @cindex maketitle-type completion
673 We call it "maketitle-type completion" which completes commands such as
674 @code{\maketitle}. Take notice that maketitle-type commands take no
675 arguments. Then, typing
677 @table @kbd
678 @item [prefix] m
679 @dots{} maketitle-type completion
680 @end table
682 @noindent
683 begins maketitle-completion. Above mentioned method is true for
684 maketitle-completion, and there are La@TeX{} commands with no
685 arguments in completion table.
687 @node Arbitrary completion, End completion, Maketitle-type completion, Completion
688 @comment node-name, next, previous, up
689 @section Arbitrary completion
690 @cindex arbitrary completion
692 @noindent
693 You can complete certain La@TeX{} command anywhere without typical
694 completing method as described, by typing
696 @table @kbd
697 @item [prefix] SPC
698 @dots{} arbitrary completion
699 @end table
701 @noindent
702 after the initial string of La@TeX{} command that is preceded by @code{\}.
704 @node End completion, Accent completion, Arbitrary completion, Completion
705 @comment node-name, next, previous, up
706 @section End completion
707 @cindex end completion
709 @noindent
710 YaTeX automatically detects the opened environment and close it with
711 \@code{\end@{environment@}}. Though proficient YaTeX users never fail to
712 make environment with begin-type completion, some may begin an environment
713 manually. In that case, type
715 @table @kbd
716 @item [prefix] e
717 @dots{} @code{end} completion
718 @end table
720 @noindent
721 at the end of the opened environment.
723 @node Accent completion, Image completion, End completion, Completion
724 @comment node-name, next, previous, up
725 @section Accent completion
726 @cindex accent completion
728 When you want to write the European accent marks(like @code{\`@{o@}}),
730 @table @kbd
731 @item [prefix] a
732 @dots{} accent completion
733 @end table
735 @noindent
736 shows the menu
738 @example
739 1:` 2:' 3:^ 4:" 5:~ 6:= 7:. u v H t c d b
740 @end example
742 @noindent
743 in the minibuffer. Chose one character or corresponding numeric,
744 and you will see
746 @example
747 \`{}
748 @end example
750 @noindent
751 in the editing buffer with the cursor positioned in braces. Type
752 one more character `o' for example, then
754 @example
755 \`{o}
756 @end example
758 @noindent
759 will be completed, and the cursor gets out from braces.
761 @node Image completion, Greek letters completion, Accent completion, Completion
762 @comment node-name, next, previous, up
763 @section Image completion of mathematical sign
764 @cindex image completion
765 @cindex math-mode
766 @cindex sigma
767 @cindex leftarrow
768 @cindex ;
770 Arrow marks, sigma mark and those signs mainly used in the
771 TeX's math environment are completed by key sequences which
772 imitate the corresponding symbols graphically. This completion
773 only works in the math environment. YaTeX automatically detects
774 whether the cursor located in math environment or not, and
775 change the behavior of key strokes @kbd{;} and @kbd{/}.
777 By the way, we often express the leftarrow mark by `<-' for example.
778 Considering such image, you can write @code{\leftarrow} by typing @kbd{<-}
779 after @kbd{;} (semicolon) as a prefix. In the same way,
780 @code{\longleftarrow} (@code{<--}) is completed by typing @kbd{;<--},
781 infinity mark which is imitated by @code{oo} is completed by typing
782 @kbd{;oo}.
784 Here are the sample operations in YaTeX math-mode.
786 @example
787 INPUT Completed La@TeX{} commands
788 ; < - @code{\leftarrow}
789 ; < - - @code{\longleftarrow}
790 ; < - - > @code{\longleftrightarrow}
791 ; o @code{\circ}
792 ; o o @code{\infty}
793 @end example
795 In any case, you can quit from image completion and can move
796 to the next editing operation if the La@TeX{} command you want is
797 shown in the buffer.
799 @code{;} itself in math-environment is inserted by @kbd{;;}. Typing
800 @kbd{TAB} in the midst of image completion shows all of the La@TeX{}
801 commands that start with the same name as string you previously typed in.
802 In this menu buffer, press @kbd{RET} after moving the cursor (by @kbd{n},
803 @kbd{p}, @kbd{b}, @kbd{f}) to insert the La@TeX{} command.
805 To know all of the completion table, type @kbd{TAB} just after @kbd{;}.
806 And here is the sample menu by @kbd{TAB} after @kbd{;<}.
808 @example
809 KEY LaTeX sequence sign
810 < \leq <
811 ~
812 << \ll <<
813 <- \leftarrow <-
814 <= \Leftarrow <=
815 @end example
817 You can define your favorite key-vs-sequence completion table in the
818 Emacs-Lisp variable @code{YaTeX-math-sign-alist-private}. See also
819 @file{yatexmth.el} for the information of the structure of this variable.
821 @node Greek letters completion, , Image completion, Completion
822 @comment node-name, next, previous, up
823 @section Greek letters completion
824 @cindex Greek letters completion
825 @cindex /
827 Math-mode of YaTeX provides another image completion, Greek letters
828 completion in the same method. After prefix @kbd{/}, typing @kbd{a} makes
829 @code{\alpha}, @kbd{b} makes @code{\beta} and @kbd{g} makes @code{\gamma}
830 and so on. First, type @kbd{/TAB} to know all the correspondence of
831 alphabets v.s. Greek letters.
833 If you will find @kbd{;} or @kbd{/} doesn't work in correct position of
834 math environment, it may be a bug of YaTeX. Please send me a bug report
835 with the configuration of your text, and avoid it temporarily by typing
836 @kbd{;} or @kbd{/} after universal-argument(@kbd{C-u}) which forces
837 @kbd{;} and @kbd{/} to work as math-prefix.
839 @node Commenting out, Cursor jump, Completion, Top
840 @comment node-name, next, previous, up
841 @chapter Commenting out
842 @cindex commenting out
843 @cindex prefix >
844 @cindex prefix <
845 @cindex prefix ,
846 @cindex prefix .
848 You may want to comment out some region.
850 @table @kbd
851 @item [prefix] >
852 @dots{} comment out region by %
853 @item [prefix] <
854 @dots{} uncomment region
855 @end table
857 @noindent
858 cause an operation to the region between point and mark.
860 @table @kbd
861 @item [prefix] .
862 @dots{} comment out current paragraph
863 @item [prefix] ,
864 @dots{} uncomment current paragraph
865 @end table
867 @noindent
868 comments or uncomments the paragraph where the cursor belongs.
869 This `paragraph' means the region marked by the function
870 mark-paragraph, bound to @kbd{ESC h} by default. It is NOT
871 predictable what will happen when you continuously comment out
872 some paragraph many times.
874 You can also comment out an environment between @code{\begin} and
875 @code{\end}, or a @code{\begin}-\@code{\end} pair themselves, by making the
876 following key strokes on the line where @code{\begin@{@}} or
877 @code{\end@{@}} exists.
879 @table @kbd
880 @item [prefix] >
881 @dots{} comment out from \begin to \@code{end}
882 @item [prefix] <
883 @dots{} uncomment from \begin to \@code{end}
884 @end table
886 @noindent
887 comment whole the contents of environment. Moreover,
889 @table @kbd
890 @item [prefix] .
891 @dots{} comment out \begin and \@code{end}
892 @item [prefix] ,
893 @dots{} uncomment \begin and \@code{end}
894 @end table
896 @noindent
897 (un)comments out only environment declaration: @code{\begin@{@}} and
898 @code{\end@{@}}. NOTE that even if you intend to comment out some region,
899 invoking @kbd{[prefix] >} on the @code{\begin},@code{\end} line decides to
900 work in `commenting out from @code{\begin} to @code{\end}' mode.
903 @node Cursor jump, Changing and Deleting, Commenting out, Top
904 @comment node-name, next, previous, up
905 @chapter Cursor jump
906 @cindex cursor jump
907 @cindex prefix g
909 On a @code{\begin},@code{\end} line, the key stroke
911 @table @kbd
912 @item [prefix] g
913 @dots{} go to corresponding object
914 @end table
916 @noindent
917 moves the cursor to the corresponding @code{\end},@code{\begin} line, if
918 its partner really exists. It is also applicable to A @code{%#BEGIN} and
919 @code{%#END} pair.
921 If you type @code{[prefix] g} on the line of @code{\include@{chap1@}},
922 maybe in main text, YaTeX switches buffer to @file{chap1.tex}. On the
923 contrary, the key strokes
925 @table @kbd
926 @item [prefix] ^
927 @dots{} visit main file
928 @item [prefix] 4^
929 @dots{} visit main file in other buffer
930 @end table
931 @cindex prefix ^
932 @cindex prefix 4 ^
934 in a sub text switch the buffer to the main text specified by
935 @code{%#!} notation.
937 And these are the functions which work on the current La@TeX{}
938 environment:
940 @table @kbd
941 @item M-C-a
942 @dots{} beginning of environment
943 @item M-C-e
944 @dots{} @code{end} of environment
945 @item M-C-@@
946 @dots{} mark environment
947 @end table
948 @cindex M-C-a
949 @cindex M-C-e
950 @cindex M-C-@@
952 @node Changing and Deleting, Filling an item, Cursor jump, Top
953 @comment node-name, next, previous, up
954 @chapter Changing and Deleting
956 These functions are for change or deletion of La@TeX{} commands
957 already entered.
959 @table @kbd
960 @item [prefix] c
961 @dots{} change La@TeX{} command
962 @item [prefix] k
963 @dots{} kill La@TeX{} command
964 @end table
965 @cindex prefix c
966 @cindex prefix k
968 @kbd{[prefix] c} can change the name of the corresponding environment
969 declaration. @kbd{[prefix] k} works as follows:
971 @example
972 [Invoking position] [action]
973 \begin,\end line kill \begin,\end pairs
974 %BEGIN, %END line kill %BEGIN,%END pairs
975 on a Section-type command kill section-type command
976 on a parenthesis kill parentheses
977 @end example
979 While all operations above are to kill `containers' which surround some
980 text, universal argument (@kbd{C-u}) for these commands kills not only
981 `containers' but also `contents' of them. See below as a sample.
983 @example
984 Original text: [prefix] k C-u [prefix] k
985 Main \footnote@{note@} here. Main note here. Main here.
986 ~(cursor)
987 @end example
989 @node Filling an item, Local dictionaries, Changing and Deleting, Top
990 @comment node-name, next, previous, up
991 @chapter Filling an item
992 @cindex filling an item
993 @cindex prefix i
995 To fill a term (sentence) of @code{\item}, type
997 @table @kbd
998 @item [prefix] i
999 @dots{} fill item
1000 @end table
1002 @noindent
1003 on that item.
1005 YaTeX uses the value of the variable @code{YaTeX-item-regexp} as the
1006 regular expression to search item header in itemize environment.
1007 If you make a newcommand to itemize terms(eg. @code{\underlineitem}), put
1009 @lisp
1010 (setq YaTeX-item-regexp
1011 "\\(\\\\item\\)\\|\\(\\\\underlineitem\\)")
1012 @end lisp
1013 @cindex YaTeX-item-regexp
1015 in your @file{~/.emacs}. If you are not familiar with regular expression
1016 for Emacs-Lisp, name a newcommand for `itemize' beginning with
1017 @code{\item} such as @code{\itembf}, not @code{\bfitem}.
1019 @node Local dictionaries, Updation of @code{\includeonly}, Filling an item, Top
1020 @comment node-name, next, previous, up
1021 @chapter Local dictionaries
1022 @cindex local dictionaries
1023 @cindex nervous users
1025 Tables for completion consist of three dictionaries; `standard
1026 dictionary' built in @file{yatex.el}, `user dictionary' for your common
1027 private commands, and `local dictionary' that is effective in a certain
1028 directory.
1030 When you input the command unknown to YaTeX at a completion in the
1031 minibuffer, YaTeX asks you with the following prompt;
1033 @example
1034 `foo' is not in table. Register into: U)serTable L)ocal N)one
1035 @end example
1037 @noindent
1038 In this menu, typing `u' updates your `user dictionary', `l' updates your
1039 local dictionary, and `n' updates no dictionary and throws the word away.
1041 If you find this switching feature meaningless and bothersome, put the
1042 next expression into your @file{~/.emacs}
1044 @lisp
1045 (setq YaTeX-nervous nil)
1046 @end lisp
1048 @node Updation of @code{\includeonly}, What column?, Local dictionaries, Top
1049 @comment node-name, next, previous, up
1050 @chapter Updation of @code{\includeonly}
1051 @cindex includeonly
1053 When you edit splitting source texts, the notation
1055 @example
1056 \includeonly@{CurrentEditingFileName@}
1057 @end example
1059 @noindent
1060 in the main file reduces the time of typesetting. If you want
1061 to hack other file a little however, you have to rewrite it to
1063 @example
1064 \includeonly@{OtherFileNameYouWantToFix@}
1065 @end example
1067 @noindent
1068 in the main file. YaTeX automatically detects that the current
1069 edited text is not in includeonly list and prompts you
1071 @example
1072 A)dd R)eplace %)comment?
1073 @end example
1075 in the minibuffer. Type @kbd{a} if you want to add the current file name
1076 to @code{\includeonly} list, @kbd{r} to replace \@code{includeonly} list
1077 by the current file, and type @kbd{%} to comment out the
1078 @code{\includeonly} line.
1080 @node What column?, Intelligent newline, Updation of @code{\includeonly}, Top
1081 @comment node-name, next, previous, up
1082 @chapter What column?
1083 @cindex what column
1084 @cindex complex tabular
1085 @cindex prefix &
1087 We are often get tired of finding the corresponding column in
1088 large tabulars. For example,
1090 @example
1091 \begin@{tabular@}@{|c|c|c|c|c|c|c|c|@}\hline
1092 Name&Position&Post No.&Addr.&Phone No.&FAX No.&
1093 Home Addr.&Home Phone\\ \hline
1094 Thunder Bird & 6 & 223 & LA & xxx-yyy &
1095 zzz-www & Japan & 9876-54321 \\
1096 & 2 & \multicolumn@{2@}@{c|@}@{Unknown@}
1097 &&&(???)
1098 \\ \hline
1099 \end@{tabular@}
1100 @end example
1102 Suppose you have the cursor located at @code{(???)} mark, can you tell
1103 which column it is belonging at once? Maybe no. In such case,
1104 type
1106 @table @kbd
1107 @item [prefix] &
1108 @dots{} What column
1109 @end table
1111 @noindent
1112 in that position. YaTeX tells you the column header of the
1113 current field. Since YaTeX assumes the first line of tabular
1114 environment as a row of column headers, you can create a row of
1115 virtual column headers by putting them in the first line and
1116 commenting that line with @code{%}.
1118 @node Intelligent newline, Online help, What column?, Top
1119 @comment node-name, next, previous, up
1120 @chapter Intelligent newline
1121 @cindex Intelligent newline
1122 @cindex ESC RET
1123 @cindex M-C-m
1125 In tabular[*], array, itemize, enumerate or tabbing environment,
1127 @table @kbd
1128 @item ESC RET
1129 @dots{} Intelligent newline
1130 @end table
1132 @noindent
1133 inserts the contents corresponding to the current environment in the next
1134 line. In @code{tabular} environment, for example, @kbd{ESC RET} inserts
1135 the certain number of @code{&} and trailing @code{\\}, and @code{\hline}
1136 if other @code{\hline} is found in backward. Here are the list of
1137 contents v.s. environments.
1139 @itemize
1140 @item @code{tabular}, @code{tabular*}, @code{array}
1142 Corresponding number of @code{&} and @code{\\}.
1143 And @code{\hline} if needed.
1145 @item @code{tabbing}
1147 The same number of @code{\>} as @code{\=} in the first line.
1149 @item @code{itemize}, @code{enumerate}, @code{description}, @code{list}
1151 @code{\item} or @code{item[]}.
1152 @end itemize
1154 Note that since this function works seeing the contents of the first
1155 line, please call this after the second line if possible.
1157 If you want to apply these trick to other environments, @code{foo}
1158 environment for example, define the function named
1159 @code{YaTeX-intelligent-newline-foo} to insert corresponding contents.
1160 That function will be called at the beginning of the next line after the
1161 newline is inserted to the current line. Since the function
1162 @code{YaTeX-indent-line} is designed to indent the current line properly,
1163 calling this function before your code to insert certain contents must be
1164 useful. See the definition of the function
1165 @code{YaTeX-intelligent-newline-itemize} as an example.
1167 @node Online help, Cooperation with other packages, Intelligent newline, Top
1168 @comment node-name, next, previous, up
1169 @chapter Online help
1170 @cindex online help
1171 @cindex prefix ?
1172 @cindex prefix /
1173 @cindex apropos
1174 @cindex keyword search
1176 YaTeX provides you the online help with popular La@TeX{} commands.
1178 Here are the key strokes for the online help.
1180 @table @kbd
1181 @item [prefix] ?
1182 @dots{} Online help
1183 @item [prefix] /
1184 @dots{} Online apropos
1185 @end table
1187 @section Online help
1189 `Online help' shows the documentation for the popular La@TeX{}
1190 commands(defaults to the commands on the cursor) in the next buffer.
1191 There are two help file, `global help' and `private help'. The former
1192 file contains the descriptions on the standard La@TeX{} command and is
1193 specified its name by variable @code{YaTeX-help-file}. Usually, the
1194 global help file should be located in public space (@code{$EMACSEXECPATH}
1195 by default) and should be world writable so that anyone can update it to
1196 enrich its contents. The latter file contains descriptions on
1197 non-standard or personal command definitions and is specified by
1198 @code{YaTeX-help-file-private}. This file should be put into private
1199 directory.
1201 @section Online apropos
1203 `Online apropos' is an equivalent of GNU Emacs's apropos. It
1204 shows all the documentations that contains the keyword entered by
1205 the user.
1207 @section When no descriptions are found...
1209 If there is no description on a command in help files, YaTeX
1210 requires you to write a description on that command. If you are
1211 willing to do, determine which help file to add and write the
1212 description on it referring your manual of (La)TeX. Please send
1213 me your additional descriptions if you describe the help on some
1214 standard commands. I might want to include it in the next
1215 distribution.
1217 @node Cooperation with other packages, Customizations, Online help, Top
1218 @comment node-name, next, previous, up
1219 @chapter Cooperation with other packages
1221 YaTeX works better with other brilliant packages.
1223 @section gmhist
1224 @cindex gmhist
1225 @cindex command history
1226 @cindex minibuffer history
1228 When you are loading @file{gmhist.el} and @file{gmhist-mh.el}, you can
1229 use independent command history list at the prompt of preview command
1230 (@kbd{[prefix] tp}) and print command (@kbd{[prefix] tl}). On each
1231 prompt, you can enter the previous command line string repeatedly by
1232 typing @kbd{M-p}.
1234 @section min-out
1235 @cindex min-out
1237 @file{min-out}, the outline minor mode, can be used in yatex-mode
1238 buffers. If you want to use it with YaTeX, please refer the
1239 file @file{yatexm-o.el} as an example.
1241 @node Customizations, Etcetera, Cooperation with other packages, Top
1242 @comment node-name, next, previous, up
1243 @chapter Customizations
1244 @cindex customizations
1246 You can customize YaTeX by setting Emacs-Lisp variables and by making
1247 add-in functions.
1249 @menu
1250 * Lisp variables::
1251 * Add-in functions::
1252 @end menu
1254 @node Lisp variables, Add-in functions, Customizations, Customizations
1255 @comment node-name, next, previous, up
1256 @section Lisp variables
1257 @cindex customizable variables
1259 You can change the key assignments or make completion more
1260 comfortable by setting the values of various variables which
1261 control the movement of yatex-mode.
1263 For example, if you want to change the prefix key stroke from @kbd{C-c}
1264 to any other sequence, set YaTeX-prefix to whatever you want to use. If
1265 you don't want to use the key sequence @kbd{C-c letter} which is assumed
1266 to be the user reserved sequence in Emacs world, set
1267 @code{YaTeX-inhibit-prefix-letter} to @code{t}, and all of the default key
1268 bind of @kbd{C-c letter} will turn to the corresponding @kbd{C-c C-letter}
1269 (but the region based completions that is invoked with @kbd{C-c
1270 Capital-letter} remain valid, if you want to disable those bindings, set
1271 that variable to 1 instead of @code{t}).
1273 @menu
1274 * All customizable variables::
1275 * Sample definitions::
1276 * Hook variables::
1277 * Hook file::
1278 @end menu
1280 @node All customizable variables, Sample definitions, Lisp variables, Lisp variables
1281 @comment node-name, next, previous, up
1282 @subsection All customizable variables
1283 @cindex all customizable variables
1285 Here are the customizable variables of yatex-mode. Each value setq-ed
1286 in @file{~/.emacs} is preferred and that of defined in @file{yatex.el} is
1287 neglected. Parenthesized contents stands for the default value.
1289 @defvar YaTeX-prefix
1290 Prefix key stroke (@kbd{C-c})
1291 @end defvar
1293 @defvar YaTeX-inhibit-prefix-letter
1294 Change key stroke from @kbd{C-c letter} to @kbd{C-c C-letter}
1295 (@code{nil})
1296 @end defvar
1298 @defvar YaTeX-fill-prefix
1299 Fill-prefix used in yatex-mode (@code{nil})
1300 @end defvar
1302 @defvar YaTeX-open-lines
1303 Number of blank lines between cursor and @code{\begin@{@}},
1304 @code{\@code{end}@{@}} (0)
1305 @end defvar
1307 @defvar YaTeX-user-completion-table
1308 Name of user dictionary where learned completion table will be stored.
1309 (@code{"~/.yatexrc"})
1310 @end defvar
1312 @defvar YaTeX-item-regexp
1313 Regular expression of item command(@code{"\\\\item"})
1314 @end defvar
1316 @defvar tex-command
1317 La@TeX{} typesetter command (@code{"latex"})
1318 @end defvar
1320 @defvar dvi2-command
1321 Preview command
1322 (@code{"xdvi -geo +0+0 -s 4 -display (getenv"DISPLAY")"})
1323 @end defvar
1325 @defvar dviprint-command-format
1326 Command format to print dvi file (@code{"dvi2ps %f %t %s | lpr"})
1327 @end defvar
1329 @defvar dviprint-from-format
1330 Start page format of above %f. %b will turn to start page
1331 (@code{"-f %b"})
1332 @end defvar
1334 @defvar dviprint-to-format
1335 End page format of above %t. %e will turn to @code{end} page
1336 (@code{"-t %e"})
1337 @end defvar
1339 @defvar section-name
1340 Initial default value at the first section-type completion
1341 (@code{"documentstyle"})
1342 @end defvar
1344 @defvar env-name
1345 Initial default value at the first begin-type completion
1346 (@code{"document"})
1347 @end defvar
1349 @defvar fontsize-name
1350 Ditto of large-type (@code{"large"})
1351 @end defvar
1353 @defvar single-command
1354 Ditto of maketitle-type (@code{"maketitle"})
1355 @end defvar
1357 @defvar YaTeX-need-nonstop
1358 Put @code{\nonstopmode@{@}} or not (@code{nil})
1359 @end defvar
1361 @defvar latex-warning-regexp
1362 Regular expression of warning message latex command puts out
1363 (@code{"line.* [0-9]*"})
1364 @end defvar
1366 @defvar latex-error-regexp
1367 Regular expression of error message (@code{"l\\.[1-9][0-9]*"})
1368 @end defvar
1370 @defvar latex-dos-emergency-message
1371 Message latex command running on DOS puts at abort
1372 (@code{"Emergency stop"})
1373 @end defvar
1375 @defvar YaTeX-item-regexp
1376 Regexp of La@TeX{} itemization command (@code{"\\\\(sub\\)*item"})
1377 @end defvar
1379 @defvar YaTeX-nervous
1380 T for using local dictionary (@code{t})
1381 @end defvar
1383 @defvar YaTeX-sectioning-regexp
1384 Regexp of La@TeX{} sectioning command
1386 (@code{"part\\|chapter\\|\\(sub\\)*\\(section\\|paragraph\\)"})
1387 @end defvar
1389 @defvar YaTeX-fill-inhibit-environments
1390 Inhibit fill in these environments (@code{'("verbatim" "tabular")})
1391 @end defvar
1393 @defvar YaTeX-uncomment-once
1394 @code{T} for deleting all preceding @code{%} (@code{nil})
1395 @end defvar
1397 @defvar YaTeX-close-paren-always
1398 @code{T} for always close all parenthesis automatically,
1399 @code{nil} for only eol(@code{t})
1400 @end defvar
1402 @defvar YaTeX-auto-math-mode
1403 Switch math-mode automatically(@code{t})
1404 @end defvar
1406 @defvar YaTeX-default-pop-window-height
1407 Initial height of typesetting buffer when one-window.
1408 Number for the lines of the buffer, numerical string for
1409 the percentage of the screen-height.
1410 @code{nil} for half height(10)
1411 @end defvar
1413 @defvar YaTeX-help-file
1414 Global online help file name (@file{$EMACS/etc/YATEXHLP.jp})
1415 @end defvar
1417 @defvar YaTeX-help-file-private
1418 Private online help file name (@file{"~/YATEXHLP.jp"})
1419 @end defvar
1421 @defvar YaTeX-no-begend-shortcut
1422 Disable [prefix] b ?? shortcut (@code{nil)}
1423 @end defvar
1425 @node Sample definitions, Hook variables, All customizable variables, Lisp variables
1426 @comment node-name, next, previous, up
1427 @subsection Sample definitions
1428 @cindex prefix key stroke
1429 @cindex fill-prefix
1431 For instance, to change the prefix key stroke to @kbd{ESC}, and name of
1432 the user dictionary @file{~/src/emacs/yatexrc}, and set @code{fill-prefix}
1433 to single TAB character, add the following @code{setq} to @file{~/.emacs}.
1435 @lisp
1436 (setq YaTeX-prefix "\e"
1437 YaTeX-user-completion-table "~/src/emacs/yatexrc"
1438 YaTeX-fill-prefix " ")
1439 @end lisp
1441 @node Hook variables, Hook file, Sample definitions, Lisp variables
1442 @comment node-name, next, previous, up
1443 @subsection Hook variables
1444 @cindex hook variables
1446 More customizations will be done by the hook-function defined in
1447 hook-variable @code{yatex-mode-hook}. This is useful to define a shortcut
1448 key sequence to enter some environments other than @code{document} and
1449 @code{enumerate} etc. The following statement defines @code{[prefix] ba}
1450 to enter @code{\begin@{abstract@}} ... @code{=end@{abstract@}}
1451 immediately.
1453 @lisp
1454 (setq yatex-mode-hook
1455 '(lambda() (YaTeX-define-begend-key "ba" "abstract")))
1456 @end lisp
1458 You should use functions @code{YaTeX-define-key}, or
1459 @code{YaTeX-define-begend-key} to define all the key sequences of
1460 yatex-mode.
1462 @node Hook file, , Hook variables, Lisp variables
1463 @comment node-name, next, previous, up
1464 @subsection Hook file
1465 @cindex hook file
1467 You can stuff all of YaTeX relating expressions into a file named
1468 @file{yatexhks.el} if you have a lot of codes. YaTeX automatically load
1469 this file at the initialization of itself. Using @file{yatexhks.el}
1470 makes @code{yatex-mode-load-hook} unnecessary.
1472 @node Add-in functions, , Lisp variables, Customizations
1473 @comment node-name, next, previous, up
1474 @section Add-in functions
1475 @cindex add-in functions
1477 You can easily define a function to input detailed arguments
1478 with completion according to La@TeX{} environments or commands. To
1479 know the way to define these functions, see also @file{yatexadd.doc} in
1480 this package please.
1483 @node Etcetera, Copying, Customizations, Top
1484 @comment node-name, next, previous, up
1485 @chapter Etcetera
1487 The standard completion tables provided in @file{yatex.el} contain a
1488 few La@TeX{} commands I frequently use. This is to lessen the key
1489 strokes to complete entire word, because too many candidates
1490 rarely used often cause too many hits. Therefore always try to
1491 use completion in order to enrich your dictionary, and you will
1492 also find `Wild Bird' growing suitable for your La@TeX{} style.
1495 @node Copying, , Etcetera, Top
1496 @comment node-name, next, previous, up
1497 @chapter Copying
1499 This program is distributed as a free software. You can
1500 redistribute this software freely but with NO warranty to anything
1501 as a result of using this software. However, any reports and
1502 suggestions are welcome as long as I feel interests in this
1503 software. My possible e-mail address is `yuuji@@ae.keio.ac.jp'.
1504 (up to Mar.1993 at least)
1506 The specification of this software will be surely modified
1507 (depending on my feelings) without notice :-p.
1510 @flushright
1511 HIROSE Yuuji
1512 @end flushright
1513 @bye
1515 Local variables:
1516 mode: texinfo
1517 fill-prefix: nil
1518 fill-column: 74
1519 End: