home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / prgramer / unix / info / texinfo.i05 < prev    next >
Encoding:
GNU Info File  |  1993-06-12  |  50.9 KB  |  1,435 lines

  1. This is Info file texinfo, produced by Makeinfo-1.47 from the input
  2. file texinfo2.tex.
  3.  
  4.    This file documents Texinfo, a documentation system that uses a
  5. single source file to produce both on-line information and a printed
  6. manual.
  7.  
  8.    Copyright (C) 1988, 1990, 1991, 1992 Free Software Foundation, Inc.
  9.  
  10.    This is the second edition of the Texinfo documentation,
  11. and is consistent with version 2 of `texinfo.tex'.
  12.  
  13.    Permission is granted to make and distribute verbatim copies of this
  14. manual provided the copyright notice and this permission notice are
  15. preserved on all copies.
  16.  
  17.    Permission is granted to copy and distribute modified versions of
  18. this manual under the conditions for verbatim copying, provided that
  19. the entire resulting derived work is distributed under the terms of a
  20. permission notice identical to this one.
  21.  
  22.    Permission is granted to copy and distribute translations of this
  23. manual into another language, under the above conditions for modified
  24. versions, except that this permission notice may be stated in a
  25. translation approved by the Foundation.
  26.  
  27. 
  28. File: texinfo,  Node: Smallcaps,  Next: Fonts,  Prev: emph & strong,  Up: Emphasis
  29.  
  30. `@sc'{TEXT}: The Small Caps Font
  31. --------------------------------
  32.  
  33.    Use the `@sc' command to set text in the printed output in a small
  34. caps font and set text in the Info file in upper case letters.
  35.  
  36.    Write the text between braces in lower case, like this:
  37.  
  38.      The @sc{acm} and @sc{ieee} are technical societies.
  39.  
  40. This produces:
  41.  
  42.      The ACM and IEEE are technical societies.
  43.  
  44.    TeX typesets the small caps font in a manner that prevents the
  45. letters from `jumping out at you on the page'.  This makes small caps
  46. text easier to read than text in all upper case.
  47.  
  48.    If the text between the braces of an `@sc' command is upper case,
  49. TeX typesets the text in full-size capitals.  Use full-size capitals
  50. sparingly.
  51.  
  52.    The Info formatting commands set all small caps text in upper case.
  53.  
  54.    You may also use the small caps font for a jargon word such as ATO
  55. (a NASA word meaning `abort to orbit').
  56.  
  57.    There are subtleties to using the small caps font with a jargon word
  58. such as CDR, a word used in Lisp programming.  In this case, you should
  59. use the small caps font when the word refers to the second and
  60. subsequent elements of a list (the CDR of the list), but you should use
  61. `@code' when the word refers to the Lisp function of the same spelling.
  62.  
  63. 
  64. File: texinfo,  Node: Fonts,  Prev: Smallcaps,  Up: Emphasis
  65.  
  66. Fonts for Printing, Not Info
  67. ----------------------------
  68.  
  69.    Texinfo provides four font commands that specify font changes in the
  70. printed manual but have no effect in the Info file.  `@i' requests
  71. italic font (in some versions of TeX, a slanted font is used), `@b'
  72. requests bold face, `@t' requests the fixed-width, typewriter-style
  73. font used by `@code', and `@r' requests a roman font, which is the
  74. usual font in which text is printed.  All four commands apply to an
  75. argument that follows, surrounded by braces.
  76.  
  77.    Only the `@r' command has much use: in example programs, you can use
  78. the `@r' command to convert code comments from the fixed-width font to
  79. a roman font.  This looks better in printed output.
  80.  
  81.    For example,
  82.  
  83.      @lisp
  84.      (+ 2 2)    ; @r{Add two plus two.}
  85.      @end lisp
  86.  
  87. produces
  88.  
  89.      (+ 2 2)    ; Add two plus two.
  90.  
  91.    If possible, you should avoid using the other three font commands. 
  92. If you need to use one, it probably indicates a gap in the Texinfo
  93. language.
  94.  
  95. 
  96. File: texinfo,  Node: Quotations and Examples,  Next: Lists and Tables,  Prev: Marking Text,  Up: Top
  97.  
  98. Quotations and Examples
  99. ***********************
  100.  
  101.    Quotations and examples are blocks of text consisting of one or more
  102. whole paragraphs that are set off from the bulk of the text and treated
  103. differently.  They are usually indented.
  104.  
  105.    In Texinfo, you always begin a quotation or example by writing an
  106. @-command at the beginning of a line by itself, and end it by writing
  107. an `@end' command that is also at the beginning of a line by itself. 
  108. For instance, you begin an example by writing `@example' by itself at
  109. the beginning of a line and end the example by writing `@end example'
  110. on a line by itself, at the beginning of that line.
  111.  
  112. * Menu:
  113.  
  114. * Block Enclosing Commands::    Use different constructs for
  115.                                   different purposes.
  116. * quotation::                   How to write a quotation.
  117. * example::                     How to write an example in a fixed-width font.
  118. * noindent::                    How to prevent paragraph indentation.
  119. * Lisp Example::                How to illustrate Lisp code.
  120. * smallexample & smalllisp::    Forms for the `@smallbook' option.
  121. * display::                     How to write an example in the current font.
  122. * format::                      How to write an example that does not narrow
  123.                                   the margins.
  124. * exdent::                      How to undo the indentation of a line.
  125. * flushleft & flushright::      How to push text flushleft or flushright.
  126. * cartouche::                   How to draw cartouches around examples.
  127.  
  128. 
  129. File: texinfo,  Node: Block Enclosing Commands,  Next: quotation,  Up: Quotations and Examples
  130.  
  131. The Block Enclosing Commands
  132. ============================
  133.  
  134.    There are a number of commands for quotations and examples:
  135.  
  136. `@quotation'
  137.      Indicate text that is quoted. The text is filled, indented, and
  138.      printed in a roman font by default.
  139.  
  140. `@example'
  141.      Illustrate code, commands, and the like. The text is printed in a
  142.      fixed-width font, and indented but not filled.
  143.  
  144. `@lisp'
  145.      Illustrate Lisp code. The text is printed in a fixed-width font,
  146.      and indented but not filled.
  147.  
  148. `@smallexample'
  149.      Illustrate code, commands, and the like.  Similar to `@example',
  150.      except that in TeX this command typesets text in a smaller font
  151.      for the smaller `@smallbook' format than for the 8.5 by 11 inch
  152.      format.
  153.  
  154. `@smalllisp'
  155.      Illustrate Lisp code.  Similar to `@lisp', except that in TeX this
  156.      command typesets text in a smaller font for the smaller
  157.      `@smallbook' format than for the 8.5 by 11 inch format.
  158.  
  159. `@display'
  160.      Display illustrative text.  The text is indented but not filled,
  161.      and no font is specified (so, by default, the font is roman).
  162.  
  163. `@format'
  164.      Print illustrative text.  The text is not indented and not filled
  165.      and no font is specified (so, by default, the font is roman).
  166.  
  167.    The `@exdent' command is used within the above constructs to undo
  168. the indentation of a line.
  169.  
  170.    The `@flushleft' and `@flushright' commands are used to line up the
  171. left or right margins of unfilled text.
  172.  
  173.    The `@noindent' command may be used after one of the above
  174. constructs to prevent the following text from being indented as a new
  175. paragraph.
  176.  
  177.    You can use the `@cartouche' command within one of the above
  178. constructs to highlight the example or quotation by drawing a box with
  179. rounded corners around it.  (The `@cartouche' command affects only the
  180. printed manual; it has no effect in the Info file; see *Note Drawing
  181. Cartouches Around Examples: cartouche.)
  182.  
  183. 
  184. File: texinfo,  Node: quotation,  Next: example,  Prev: Block Enclosing Commands,  Up: Quotations and Examples
  185.  
  186. `@quotation'
  187. ============
  188.  
  189.    The text of a quotation is processed normally except that
  190.  
  191.    * the margins are closer to the center of the page, so the whole of
  192.      the quotation is indented;
  193.  
  194.    * the first lines of paragraphs are indented no more than other
  195.      lines;
  196.  
  197.    * in the printed output, interline and interparagraph spacing is
  198.      reduced.
  199.  
  200.      This is an example of text written between an `@quotation' command
  201.      and an `@end quotation' command.  An `@quotation' command is most
  202.      often used to indicate text that is excerpted from another (real
  203.      or hypothetical) printed work.
  204.  
  205.    Write an `@quotation' command as text on a line by itself.  This
  206. line will disappear from the output.  Mark the end of the quotation
  207. with a line beginning with and containing only `@end quotation'. The
  208. `@end quotation' line will likewise disappear from the output.  Thus,
  209. the input
  210.  
  211.      @quotation
  212.      This is
  213.      a foo.
  214.      @end quotation
  215.  
  216. produces
  217.  
  218.      This is a foo.
  219.  
  220. 
  221. File: texinfo,  Node: example,  Next: noindent,  Prev: quotation,  Up: Quotations and Examples
  222.  
  223. `@example'
  224. ==========
  225.  
  226.    The `@example' command is used to indicate an example that is not
  227. part of the running text, such as computer input or output.
  228.  
  229.      This is an example of text written between an
  230.      `@example' command
  231.      and an `@end example'command.
  232.      The text is indented but not filled.
  233.      
  234.      In the printed manual, the text is typeset in a
  235.      fixed-width font, and extra spaces and blank lines are
  236.      significant.  In the Info file, an analogous result is
  237.      obtained by indenting each line with five spaces.
  238.  
  239.    Write an `@example' command at the beginning a line by itself. This
  240. line will disappear from the output. Mark the end of the example with
  241. an  `@end example' command, also written at the beginning a line by
  242. itself. The `@end example' will disappear from the output.
  243.  
  244.    For example,
  245.  
  246.      @example
  247.      mv foo bar
  248.      @end example
  249.  
  250. produces
  251.  
  252.      mv foo bar
  253.  
  254.    Since the lines containing `@example' and `@end example' will
  255. disappear, you should put a blank line before the `@example' and
  256. another blank line after the `@end example'.  (Remember that blank
  257. lines between the beginning `@example' and the ending `@end example'
  258. will appear in the output.)
  259.  
  260.      *Caution:* Do not use tabs in lines of an example (or anywhere
  261.      else in Texinfo, for that matter)!  TeX treats tabs like single
  262.      spaces, and that is not what they look like.  This is a problem
  263.      with TeX.  (If necessary, in Emacs, you can use `M-x untabify' to
  264.      convert tabs in a region to multiple spaces.)
  265.  
  266.    Examples are often, logically speaking, "in the middle" of a
  267. paragraph, and the text continues after an example should not be
  268. indented.  The `@noindent' command prevents a piece of text from being
  269. indented as if it were a new paragraph. (*Note noindent::.)
  270.  
  271.    (The `@code' command is used for examples of code that are embedded
  272. within sentences, not set off from preceding and following text.  *Note
  273. `@code': code.)
  274.  
  275. 
  276. File: texinfo,  Node: noindent,  Next: Lisp Example,  Prev: example,  Up: Quotations and Examples
  277.  
  278. `@noindent'
  279. ===========
  280.  
  281.    If you have text following an `@example' or other similar inclusion
  282. that reads as a continuation of the text before the `@example', it is
  283. good to prevent this text from being indented as a new paragraph.  To
  284. accomplish this, write `@noindent' at the beginning of a line by itself
  285. preceding the continuation text. For example:
  286.  
  287.      @example
  288.      This is an example
  289.      @end example
  290.      
  291.      @noindent
  292.      This line is not indented.  As you can see, the
  293.      beginning of the line is fully flush left with the line
  294.      that follows after it.  (This whole example is between
  295.      @code{@@display} and @code{@@end display}.)
  296.  
  297. produces
  298.  
  299.           This is an example
  300.      
  301.      
  302.      This line is not indented.  As you can see, the
  303.      beginning of the line is fully flush left with the line
  304.      that follows after it.  (This whole example is between
  305.      `@display' and `@end display'.)
  306.  
  307.    To adjust the number of blank lines properly in the Info file output,
  308. remember that the line containing `@noindent' does not generate a blank
  309. line, and neither does the `@end example' line.
  310.  
  311.    In the Texinfo source file for this manual, each line that says
  312. `produces' is preceded by a line containing `@noindent'.
  313.  
  314.    Do not put braces after an `@noindent' command; they are not
  315. necessary, since `@noindent' is a command used outside of paragraphs
  316. (*note Command Syntax::.).
  317.  
  318. 
  319. File: texinfo,  Node: Lisp Example,  Next: smallexample & smalllisp,  Prev: noindent,  Up: Quotations and Examples
  320.  
  321. `@lisp'
  322. =======
  323.  
  324.    The `@lisp' command is used for Lisp code.  It is synonymous with
  325. the `@example' command.
  326.  
  327.      This is an example of text written between an
  328.      `@lisp' command and an `@end lisp' command.
  329.  
  330.    Use `@lisp' instead of `@example' so as to preserve information
  331. regarding the nature of the example.  This is useful, for example, if
  332. you write a function that evaluates only and all the Lisp code in a
  333. Texinfo file.  Then you can use the Texinfo file as a Lisp library.(1)
  334.  
  335.    Mark the end of `@lisp' with `@end lisp' on a line by itself.
  336.  
  337.    ---------- Footnotes ----------
  338.  
  339.    (1)  It would be straightforward to extend Texinfo to work in a
  340. similar fashion for C, FORTRAN, or other languages.
  341.  
  342. 
  343. File: texinfo,  Node: smallexample & smalllisp,  Next: display,  Prev: Lisp Example,  Up: Quotations and Examples
  344.  
  345. `@smallexample' and `@smalllisp'
  346. ================================
  347.  
  348.    In addition to the regular `@example' and `@lisp' commands, Texinfo
  349. has two other "example-style" commands.  These are the `@smallexample'
  350. and `@smalllisp' commands.  Both these commands are designed for use
  351. with the `@smallbook' command that causes TeX to produce a printed
  352. manual in a 7 by 9.25 inch format rather than the regular 8.5 by 11
  353. inch format.
  354.  
  355.    In TeX, the `@smallexample' and `@smalllisp' commands typeset text
  356. in a smaller font for the smaller `@smallbook' format than for the 8.5
  357. by 11 inch format.  Consequently, many examples containing long lines
  358. fit in a narrower, `@smallbook' page without needing to be shortened. 
  359. Both commands typeset in the normal font size when you format for the
  360. 8.5 by 11 inch size; indeed, in this situation, the `@smallexample' and
  361. `@smalllisp' commands are defined to be the `@example' and `@lisp'
  362. commands.
  363.  
  364.    In Info, the `@smallexample' and `@smalllisp' commands are
  365. equivalent to the `@example' and `@lisp' commands, and work exactly the
  366. same.
  367.  
  368.    Mark the end of `@smallexample' or `@smalllisp' with `@end
  369. smallexample' or `@end smalllisp', respectively.
  370.  
  371.      This is an example of text written between `@smallexample' and
  372.      `@end smallexample'.  In Info and in an 8.5 by 11 inch manual,
  373.      this text appears in its normal size; but in a 7 by 9.25 inch manual,
  374.      this text appears in a smaller font.
  375.  
  376.    The `@smallexample' and `@smalllisp' commands make it easier to
  377. prepare smaller format manuals without forcing you to edit examples by
  378. hand to fit them onto narrower pages.
  379.  
  380.    *Note Printing "Small" Books: smallbook, for more information about
  381. the `@smallbook' command.
  382.  
  383. 
  384. File: texinfo,  Node: display,  Next: format,  Prev: smallexample & smalllisp,  Up: Quotations and Examples
  385.  
  386. `@display'
  387. ==========
  388.  
  389.    The `@display' command begins a kind of example.  It is like the
  390. `@example' command except that, in a printed manual, `@display' does
  391. not select the fixed-width font.  In fact, it does not specify the font
  392. at all, so that the text appears in the same font it would have
  393. appeared in without the `@display' command.
  394.  
  395.      This is an example of text written between an `@display' command
  396.      and an `@end display' command.  The `@display' command
  397.      indents the text, but does not fill it.
  398.  
  399. 
  400. File: texinfo,  Node: format,  Next: exdent,  Prev: display,  Up: Quotations and Examples
  401.  
  402. `@format'
  403. =========
  404.  
  405.    The `@format' command is similar to `@example' except that, in the
  406. printed manual, `@format' does not select the fixed-width font and does
  407. not narrow the margins.
  408.  
  409. This is an example of text written between an `@format' command
  410. and an `@end format' command.  As you can see
  411. from this example,
  412. the `@format' command does not fill the text.
  413.  
  414. 
  415. File: texinfo,  Node: exdent,  Next: flushleft & flushright,  Prev: format,  Up: Quotations and Examples
  416.  
  417. `@exdent': Undoing a Line's Indentation
  418. =======================================
  419.  
  420.    The `@exdent' command removes any indentation a line might have. The
  421. command is written at the beginning of a line and applies only to the
  422. text that follows the command that is on the same line.  Do not use
  423. braces around the text.  In a printed manual, the text on an `@exdent'
  424. line is printed in the roman font.
  425.  
  426.    `@exdent' is usually used within examples.  Thus,
  427.  
  428.      @example
  429.      This line follows an @@example command.
  430.      @exdent This line is exdented.
  431.      This line follows the exdented line.
  432.      The @@end example comes on the next line.
  433.      @end group
  434.  
  435. produces
  436.  
  437.      This line follows an @example command.
  438. This line is exdented.
  439.      This line follows the exdented line.
  440.      The @end example comes on the next line.
  441.  
  442.    In practice, the `@exdent' command is rarely used. Usually, you
  443. un-indent text by ending the example and returning the page to its
  444. normal width.
  445.  
  446. 
  447. File: texinfo,  Node: flushleft & flushright,  Next: cartouche,  Prev: exdent,  Up: Quotations and Examples
  448.  
  449. `@flushleft' and `@flushright'
  450. ==============================
  451.  
  452.    The `@flushleft' and `@flushright' commands line up the ends of
  453. lines on the left and right margins of a page, but do not fill the
  454. text.  The commands are written on lines of their own, without braces. 
  455. The `@flushleft' and `@flushright' commands are ended by `@end
  456. flushleft' and `@end flushright' commands on lines of their own.
  457.  
  458.    For example,
  459.  
  460.      @flushleft
  461.      This text is
  462.      written flushleft.
  463.      @end flushleft
  464.  
  465. produces
  466.  
  467.      This text is
  468.      written flushleft.
  469.  
  470. Flushright produces the type of indentation often used in the return
  471. address of letters.
  472.  
  473.  
  474. For example,
  475.  
  476.      @flushright
  477.      Here is an example of text written
  478.      flushright.  The @code{@flushright} command
  479.      right justifies every line but leaves the
  480.      left end ragged.
  481.      @end flushright
  482.  
  483. produces
  484.  
  485.                                      Here is an example of text written
  486.                                  flushright.  The `@flushright' command
  487.                               right justifies every line but leaves the
  488.                                                        left end ragged.
  489.  
  490. 
  491. File: texinfo,  Node: cartouche,  Prev: flushleft & flushright,  Up: Quotations and Examples
  492.  
  493. Drawing Cartouches Around Examples
  494. ==================================
  495.  
  496.    In a printed manual, the `@cartouche' command draws a box with
  497. rounded corners around its contents.  You can use this command to
  498. further highlight an example or quotation.  For instance, you could
  499. write a manual in which one type of example is surrounded by a cartouche
  500. for emphasis.
  501.  
  502.    The `@cartouche' command affects only the printed manual; it has no
  503. effect in the Info file.
  504.  
  505.    For example,
  506.  
  507.      @example
  508.      @cartouche
  509.      % pwd
  510.      /usr/local/lib/emacs/info
  511.      @end cartouche
  512.      @end group
  513.  
  514. surrounds the two-line example with a box with rounded corners, in the
  515. printed manual.
  516.  
  517. 
  518. File: texinfo,  Node: Lists and Tables,  Next: Indices,  Prev: Quotations and Examples,  Up: Top
  519.  
  520. Making Lists and Tables
  521. ***********************
  522.  
  523.    Texinfo has several ways of making lists and two-column tables. 
  524. Lists can be bulleted or numbered, while two-column tables can
  525. highlight the items in the first column.
  526.  
  527. * Menu:
  528.  
  529. * Introducing Lists::           Texinfo formats lists for you.
  530. * itemize::                     How to construct a simple list.
  531. * enumerate::                   How to construct a numbered list.
  532. * Two-column Tables::           How to construct a two-column table.
  533.  
  534. 
  535. File: texinfo,  Node: Introducing Lists,  Next: itemize,  Up: Lists and Tables
  536.  
  537. Introducing Lists
  538. =================
  539.  
  540.    Texinfo automatically indents the text in lists or tables, and
  541. numbers an enumerated list.  This last feature is useful if you modify
  542. the list, since you do not need to renumber it yourself.
  543.  
  544.    Numbered lists and tables begin with the appropriate @-command at the
  545. beginning of a line, and end with the corresponding `@end' command on a
  546. line by itself.  The table and itemized-list commands also require that
  547. you write formatting information on the same line as the beginning
  548. @-command.
  549.  
  550.    Begin an enumerated list, for example, with an `@enumerate' command
  551. and end the list with an `@end enumerate' command. Begin an itemized
  552. list with an `@itemize' command, followed on the same line by a
  553. formatting command such as `@bullet', and end the list with an `@end
  554. itemize' command.
  555.  
  556.    Precede each element of a list with an `@item' command.
  557.  
  558. Here is an itemized list of the different kinds of table and lists:
  559.  
  560.    * Itemized lists with and without bullets.
  561.  
  562.    * Enumerated lists, using numbers or letters.
  563.  
  564.    * Two-column tables with highlighting.
  565.  
  566. Here is an enumerated list with the same items:
  567.  
  568.   1. Itemized lists with and without bullets.
  569.  
  570.   2. Enumerated lists, using numbers or letters.
  571.  
  572.   3. Two-column tables with highlighting.
  573.  
  574. And here is a two-column table with the same items and their @-commands:
  575.  
  576. `@itemize'
  577.      Itemized lists with and without bullets.
  578.  
  579. `@enumerate'
  580.      Enumerated lists, using numbers or letters.
  581.  
  582. `@table'
  583. `@ftable'
  584. `@vtable'
  585.      Two-column tables with highlighting.
  586.  
  587. 
  588. File: texinfo,  Node: itemize,  Next: enumerate,  Prev: Introducing Lists,  Up: Lists and Tables
  589.  
  590. Making an Itemized List
  591. =======================
  592.  
  593.    The `@itemize' command is used to produce sequences of indented
  594. paragraphs, with a bullet or other mark inside the left margin at the
  595. beginning of each paragraph for which such a mark is desired.
  596.  
  597.    Begin an itemized list by writing `@itemize' at the beginning of a
  598. line.  Follow the command, on the same line, with a character or a
  599. Texinfo command that generates a mark.  Usually, you will write
  600. `@bullet' after `@itemize', but you can use `@minus', or any character
  601. or any special symbol that results in a single character in the Info
  602. file.  (When you write `@bullet' or `@minus' after an `@itemize'
  603. command, you may omit the `{}'.)
  604.  
  605.    Write the text of the indented paragraphs themselves after the
  606. `@itemize', up to another line that says `@end itemize'.
  607.  
  608.    Before each paragraph for which a mark in the margin is desired,
  609. write a line that says just `@item'.  Do not write any other text on
  610. this line.
  611.  
  612.    Usually, you should put a blank line before an `@item'.  This puts a
  613. blank line in the Info file. (TeX inserts the proper interline
  614. whitespace in either case.)  Except when the entries are very brief,
  615. these blank lines make the list look better.
  616.  
  617.    Here is an example of the use of `@itemize', followed by the output
  618. it produces.  Note that `@bullet' produces an `*' in Info and a round
  619. dot in TeX.
  620.  
  621.      @itemize @bullet
  622.      @item
  623.      Some text for foo.
  624.      
  625.      @item
  626.      Some text
  627.      for bar.
  628.      @end itemize
  629.  
  630. This produces:
  631.  
  632.         * Some text for foo.
  633.  
  634.         * Some text for bar.
  635.  
  636.    Itemized lists may be embedded within other itemized lists.  Here is
  637. a list marked with dashes embedded in a list marked with bullets:
  638.  
  639.      @itemize @bullet
  640.      @item
  641.      First item.
  642.      
  643.      @itemize @minus
  644.      @item
  645.      Inner item.
  646.      
  647.      @item
  648.      Second inner item.
  649.      @end itemize
  650.      
  651.      @item
  652.      Second outer item.
  653.      @end itemize
  654.  
  655. This produces:
  656.  
  657.         * First item.
  658.  
  659.              - Inner item.
  660.  
  661.              - Second inner item.
  662.  
  663.         * Second outer item.
  664.  
  665. 
  666. File: texinfo,  Node: enumerate,  Next: Two-column Tables,  Prev: itemize,  Up: Lists and Tables
  667.  
  668. Making a Numbered or Lettered List
  669. ==================================
  670.  
  671.    `@enumerate' is like `@itemize' except that the marks in the left
  672. margin contain successive integers or letters. (*Note `@itemize':
  673. itemize.)
  674.  
  675.    Write the `@enumerate' command at the beginning of a line. The
  676. command does not require an argument, but accepts either a number or a
  677. letter as an option. Without an argument, `@enumerate' starts the list
  678. with the number 1.  With a numeric argument, such as 3, the command
  679. starts the list with that number. With an upper or lower case letter,
  680. such as `a' or `A', the command starts the list with that letter.
  681.  
  682.    Write the text of the enumerated list in the same way you write an
  683. itemized list: put `@item' on a line of its own before the start of
  684. each paragraph that you want enumerated.  Do not write any other text on
  685. the line beginning with `@item'.
  686.  
  687.    You should put a blank line between entries in the list. This
  688. generally makes it easier to read the Info file.
  689.  
  690.    Here is an example of `@enumerate' without an argument:
  691.  
  692.      @enumerate
  693.      @item
  694.      Underlying causes.
  695.      
  696.      @item
  697.      Proximate causes.
  698.      @end enumerate
  699.  
  700. This produces:
  701.  
  702.   1. Underlying causes.
  703.  
  704.   2. Proximate causes.
  705.  
  706.    Here is an example with an argument of `3':
  707.  
  708.      @enumerate 3
  709.      @item
  710.      Predisposing causes.
  711.      
  712.      @item
  713.      Precipitating causes.
  714.      
  715.      @item
  716.      Perpetuating causes.
  717.      @end enumerate
  718.  
  719. This produces:
  720.  
  721.   3. Predisposing causes.
  722.  
  723.   4. Precipitating causes.
  724.  
  725.   5. Perpetuating causes.
  726.  
  727.    Here is a brief summary of the alternatives.  The summary is
  728. constructed using `@enumerate' with an argument of `a'.
  729.  
  730.   a. `@enumerate'
  731.  
  732.      Without an argument, produce a numbered list, starting with the
  733.      number 1.
  734.  
  735.   b. `@enumerate POSITIVE-INTEGER'
  736.  
  737.      With a (positive) numeric argument, start a numbered list with that
  738.      number.  You can use this to continue a list that you interrupted
  739.      with other text.
  740.  
  741.   c. `@enumerate UPPER-CASE-LETTER'
  742.  
  743.      With an upper case letter as argument, start a list in which each
  744.      item is marked by a letter, beginning with that upper case letter.
  745.  
  746.   d. `@enumerate LOWER-CASE-LETTER'
  747.  
  748.      With a lower case letter as argument, start a list in which each
  749.      item is marked by a letter, beginning with that lower case letter.
  750.  
  751.    You can also nest enumerated lists, as in an outline.
  752.  
  753. 
  754. File: texinfo,  Node: Two-column Tables,  Prev: enumerate,  Up: Lists and Tables
  755.  
  756. Making a Two-column Table
  757. =========================
  758.  
  759.    `@table' is similar to `@itemize', but the command allows you to
  760. specify a name or heading line for each item.  (*Note `@itemize':
  761. itemize.)  The `@table' command is used to produce two-column tables,
  762. and is especially useful for glossaries and explanatory exhibits.
  763.  
  764. * Menu:
  765.  
  766. * table::                       How to construct a two-column table.
  767. * ftable vtable::               How to construct a two-column table
  768.                                   with automatic indexing.
  769. * itemx::                       How to put more entries in the first column.
  770.  
  771. 
  772. File: texinfo,  Node: table,  Next: ftable vtable,  Up: Two-column Tables
  773.  
  774. Using the `@table' Command
  775. --------------------------
  776.  
  777.    Use the `@table' command to produce two-column tables.
  778.  
  779.    Write the `@table' command at the beginning of a line and follow it
  780. on the same line with an argument that is a Texinfo command such as
  781. `@code', `@samp', `@var', or `@kbd'. Although these commands are
  782. usually followed by arguments in braces, in this case you use the
  783. command name without an argument because `@item' will supply the
  784. argument.  This command will be applied to the text that goes into the
  785. first column of each item and determines how it will be highlighted. 
  786. For example, `@samp' will cause the text in the first column to be
  787. highlighted with an `@samp' command.
  788.  
  789.    You may also choose to use the `@asis' command as an argument to
  790. `@table'.  `@asis' is a command that does nothing; if you use this
  791. command after `@table', TeX and the Info formatting commands output the
  792. first column entries without added highlighting, (`as is').
  793.  
  794.    (The `@table' command may work with other commands besides those
  795. listed here.  However, you can only use commands that normally take
  796. arguments in braces.)
  797.  
  798.    Begin each table entry with an `@item' command at the beginning of a
  799. line.  Write the first column text on the same line as the `@item'
  800. command.  Write the second column text on the line following the
  801. `@item' line and on subsequent lines.  (You do not need to type
  802. anything for an empty second column entry.)  You may write as many
  803. lines of supporting text as you wish, even several paragraphs.  But
  804. only text on the same line as the `@item' will be placed in the first
  805. column.
  806.  
  807.    Normally, you should put a blank line before an `@item' line. This
  808. puts a blank like in the Info file.  Except when the entries are very
  809. brief, a blank line looks better.
  810.  
  811.    The following table, for example, highlights the text in the first
  812. column with an `@samp' command:
  813.  
  814.      @table @samp
  815.      @item foo
  816.      This is the text for
  817.      @samp{foo}.
  818.      
  819.      @item bar
  820.      Text for @samp{bar}.
  821.      @end table
  822.  
  823. This produces:
  824.  
  825. `foo'
  826.      This is the text for `foo'.
  827.  
  828. `bar'
  829.      Text for `bar'.
  830.  
  831.    If you want to list two or more named items with a single block of
  832. text, use the `@itemx' command.  (*Note  `@itemx': itemx.)
  833.  
  834. 
  835. File: texinfo,  Node: ftable vtable,  Next: itemx,  Prev: table,  Up: Two-column Tables
  836.  
  837. `@ftable' and `@vtable'
  838. -----------------------
  839.  
  840.    The `@ftable' and `@vtable' commands are the same as the `@table'
  841. command except that `@ftable' automatically enters each of the items in
  842. the first column of the table into the index of functions and `@vtable'
  843. automatically enters each of the items in the first column of the table
  844. into the index of variables.  This simplifies the task of creating
  845. indices.  Only the items on the same line as the `@item' commands are
  846. indexed, and they are indexed in exactly the form that they appear on
  847. that line.  *Note  Creating Indices: Indices, for more information
  848. about indices.
  849.  
  850.    Begin a two-column table using `@ftable' or `@vtable' by writing the
  851. @-command at the beginning of a line, followed on the same line by an
  852. argument that is a Texinfo command such as `@code', exactly as you
  853. would for an `@table' command; and end the table with an `@end ftable'
  854. or `@end vtable' command on a line by itself.
  855.  
  856. 
  857. File: texinfo,  Node: itemx,  Prev: ftable vtable,  Up: Two-column Tables
  858.  
  859. `@itemx'
  860. --------
  861.  
  862.    Use the `@itemx' command inside a table when you have two or more
  863. first column entries for the same item, each of which should appear on
  864. a line of its own.  Use `@itemx' for all but the first entry.  The
  865. `@itemx' command works exactly like `@item' except that it does not
  866. generate extra vertical space above the first column text.  For example,
  867.  
  868.      @table @code
  869.      @item upcase
  870.      @itemx downcase
  871.      These two functions accept a character or a string as
  872.      argument, and return the corresponding upper case (lower
  873.      case) character or string.@refill
  874.      @end table
  875.  
  876. produces
  877.  
  878. `upcase'
  879. `downcase'
  880.      These two functions accept a character or a string as argument,
  881.      and return the corresponding upper case (lower case) character or
  882.      string.
  883.  
  884. (Note also that this example illustrates multi-line supporting text in
  885. a two-column table.)
  886.  
  887. 
  888. File: texinfo,  Node: Indices,  Next: Insertions,  Prev: Lists and Tables,  Up: Top
  889.  
  890. Creating Indices
  891. ****************
  892.  
  893.    Using Texinfo, you can generate indices without having to sort and
  894. collate entries manually.  In an index, the entries are listed in
  895. alphabetical order, together with information on how to find the
  896. discussion of each entry.  In a printed manual, this information
  897. consists of page numbers.  In an Info file, this information is a menu
  898. entry leading to the first node referenced.
  899.  
  900.    Texinfo provides several predefined kinds of index: an index for
  901. functions, an index for variables, an index for concepts, and so on. 
  902. You can combine indices or use them for other than their canonical
  903. purpose.  If you wish, you can define your own indices.
  904.  
  905. * Menu:
  906.  
  907. * Index Entries::               Choose different words for index entries.
  908. * Predefined Indices::          Use different indices for different kinds
  909.                                   of entry.
  910. * Indexing Commands::           How to make an index entry.
  911. * Combining Indices::           How to combine indices.
  912. * New Indices::                 How to define your own indices.
  913.  
  914. 
  915. File: texinfo,  Node: Index Entries,  Next: Predefined Indices,  Up: Indices
  916.  
  917. Making Index Entries
  918. ====================
  919.  
  920.    When you are making index entries, it is good practice to think of
  921. the different ways people may look for something.  Different people *do
  922. not* think of the same words when they look something up.  A helpful
  923. index will have items indexed under all the different words that people
  924. may use.  For example, one reader may think it obvious that the
  925. two-letter names for indices should be listed under "Indices,
  926. two-letter names", since the word "Index" is the general concept. But
  927. another reader may remember the specific concept of two-letter names
  928. and search for the entry listed as "Two letter names for indices".  A
  929. good index will have both entries and will help both readers.
  930.  
  931.    Like typesetting, the construction of an index is a highly skilled,
  932. professional art, the subtleties of which are not appreciated until you
  933. need to do it yourself.
  934.  
  935.    *Note Printing Indices & Menus::, for information about printing an
  936. index at the end of a book or creating an index menu in an Info file.
  937.  
  938. 
  939. File: texinfo,  Node: Predefined Indices,  Next: Indexing Commands,  Prev: Index Entries,  Up: Indices
  940.  
  941. Predefined Indices
  942. ==================
  943.  
  944.    Texinfo provides six predefined indices:
  945.  
  946.    * A "concept index" listing concepts that are discussed.
  947.  
  948.    * A "function index" listing functions (such as entry points of
  949.      libraries).
  950.  
  951.    * A "variables index" listing variables (such as global variables of
  952.      libraries).
  953.  
  954.    * A "keystroke index" listing keyboard commands.
  955.  
  956.    * A "program index" listing names of programs.
  957.  
  958.    * A "data type index" listing data types (such as structures defined
  959.      in header files).
  960.  
  961. Not every manual needs all of these, and most manuals use two or three
  962. of them.  This manual has two indices: a concept index and an @-command
  963. index (that is actually the function index but is called a command
  964. index in the chapter heading).  Two or more indices can be combined
  965. into one using the `@synindex' or `@syncodeindex' commands.  *Note
  966. Combining Indices::.
  967.  
  968. 
  969. File: texinfo,  Node: Indexing Commands,  Next: Combining Indices,  Prev: Predefined Indices,  Up: Indices
  970.  
  971. Defining the Entries of an Index
  972. ================================
  973.  
  974.    The data to make an index come from many individual indexing commands
  975. scattered throughout the Texinfo source file.  Each command says to add
  976. one entry to a particular index; after formatting, the index will give
  977. the current page number or node name as the reference.
  978.  
  979.    An index entry consists of an indexing command at the beginning of a
  980. line followed, on the rest of the line, by the entry.
  981.  
  982.    For example, this section begins with the following five entries for
  983. the concept index:
  984.  
  985.      @cindex Defining indexing entries
  986.      @cindex Index entries
  987.      @cindex Entries for an index
  988.      @cindex Specifying index entries
  989.      @cindex Creating index entries
  990.  
  991.    Each predefined index has its own indexing command--`@cindex' for
  992. the concept index, `@findex' for the function index, and so on.
  993.  
  994.    The usual convention is to capitalize the first word of each index
  995. entry, unless that word is the name of a function, variable, or other
  996. such entity that should not be capitalized.  Thus, if you are
  997. documenting Emacs Lisp, you should usually capitalize entries in the
  998. concept index, but not those in the function index. However, if your
  999. concept index entries are consistently short (one or two words each) it
  1000. may look better for each regular entry to start with a lower case
  1001. letter.  Whichever convention you adapt, please be consistent!
  1002.  
  1003.    By default, entries for a concept index are printed in a small roman
  1004. font and entries for the other indices are printed in a small `@code'
  1005. font.  You may change the way part of an entry is printed with the
  1006. usual Texinfo commands, such as `@file' for file names and `@emph' for
  1007. emphasis (*note Marking Text::.).
  1008.  
  1009.    The six indexing commands for predefined indices are:
  1010.  
  1011. `@cindex CONCEPT'
  1012.      Make an entry in the concept index for CONCEPT.
  1013.  
  1014. `@findex FUNCTION'
  1015.      Make an entry in the function index for FUNCTION.
  1016.  
  1017. `@vindex VARIABLE'
  1018.      Make an entry in the variable index for VARIABLE.
  1019.  
  1020. `@kindex KEYSTROKE'
  1021.      Make an entry in the key index for KEYSTROKE.
  1022.  
  1023. `@pindex PROGRAM'
  1024.      Make an entry in the program index for PROGRAM.
  1025.  
  1026. `@tindex DATA TYPE'
  1027.      Make an entry in the data type index for DATA TYPE.
  1028.  
  1029.      *Caution:* Do not use a colon in an index entry.  In Info, a colon
  1030.      separates the menu entry name from the node name.  An extra colon
  1031.      confuses Info. *Note How to Write a Menu Entry: Writing a Menu
  1032.      Entry, for more information about the structure of a menu entry.
  1033.  
  1034.    If you write several identical index entries in different places in a
  1035. Texinfo file, the index in the printed manual will list all the pages to
  1036. which those entries refer.  However, the index in the Info file will
  1037. list *only* the node that references the *first* of those index
  1038. entries.  Therefore, it is best to write indices in which each entry
  1039. refers to only one place in the Texinfo file.  Fortunately, this
  1040. constraint is a feature rather than a loss since it means that the index
  1041. will be easy to use.  Otherwise, you could create an index that lists
  1042. several pages for one entry and your reader would not know to which page
  1043. to turn.  If you have two identical entries for one topic, change the
  1044. topics slightly, or qualify them to indicate the difference.
  1045.  
  1046.    You are not actually required to use the predefined indices for their
  1047. canonical purposes.  For example, suppose you wish to index some C
  1048. preprocessor macros.  You could put them in the function index along
  1049. with actual functions, just by writing `@findex' commands for them;
  1050. then, when you print the "Function Index" as an unnumbered chapter, you
  1051. could give it the title `Function and Macro Index' and all will be
  1052. consistent for the reader.  Or you could put the macros in with the
  1053. data types by writing `@tindex' commands for them, and give that index
  1054. a suitable title so the reader will understand. (*Note Printing Indices
  1055. & Menus::.)
  1056.  
  1057. 
  1058. File: texinfo,  Node: Combining Indices,  Next: New Indices,  Prev: Indexing Commands,  Up: Indices
  1059.  
  1060. Combining Indices
  1061. =================
  1062.  
  1063.    Sometimes you will want to combine two disparate indices such as
  1064. functions and concepts, perhaps because you have few enough of one of
  1065. them that a separate index for them would look silly.
  1066.  
  1067.    You could put functions into the concept index by writing `@cindex'
  1068. commands for them instead of `@findex' commands, and produce a
  1069. consistent manual by printing the concept index with the title
  1070. `Function and Concept Index' and not printing the `Function Index' at
  1071. all; but this is not a robust procedure.  It works only if your
  1072. document is never included as part of another document that is designed
  1073. to have a separate function index; if your document were to be included
  1074. with such a document, the functions from your document and those from
  1075. the other would not end up together. Also, to make your function names
  1076. appear in the right font in the concept index, you would need to
  1077. enclose every one of them between the braces of `@code'.
  1078.  
  1079. * Menu:
  1080.  
  1081. * syncodeindex::                How to merge two indices, using `@code'
  1082.                                   font for the merged-from index.
  1083. * synindex::                    How to merge two indices, using the
  1084.                                   default font of the merged-to index.
  1085.  
  1086. 
  1087. File: texinfo,  Node: syncodeindex,  Next: synindex,  Up: Combining Indices
  1088.  
  1089. `@syncodeindex'
  1090. ...............
  1091.  
  1092.    When you want to combine functions and concepts into one index, you
  1093. should index the functions with `@findex' and index the concepts with
  1094. `@cindex', and use the `@syncodeindex' command to redirect the function
  1095. index entries into the concept index.
  1096.  
  1097.    The `@syncodeindex' command takes two arguments; they are the name
  1098. of the index to redirect, and the name of the index to redirect it to.
  1099. The template looks like this:
  1100.  
  1101.      @syncodeindex FROM TO
  1102.  
  1103.    For this purpose, the indices are given two-letter names:
  1104.  
  1105. `cp'
  1106.      concept index
  1107.  
  1108. `fn'
  1109.      function index
  1110.  
  1111. `vr'
  1112.      variable index
  1113.  
  1114. `ky'
  1115.      key index
  1116.  
  1117. `pg'
  1118.      program index
  1119.  
  1120. `tp'
  1121.      data type index
  1122.  
  1123.    Write an `@syncodeindex' command before or shortly after the
  1124. end-of-header line at the beginning of a Texinfo file.  For example, to
  1125. merge a function index with a concept index, write the following:
  1126.  
  1127.      @syncodeindex fn cp
  1128.  
  1129. This will cause all entries designated for the function index to merge
  1130. in with the concept index instead.
  1131.  
  1132.    To merge both a variables index and a function index into a concept
  1133. index, write the following:
  1134.  
  1135.      @syncodeindex vr cp
  1136.      @syncodeindex fn cp
  1137.  
  1138.    The `@syncodeindex' command puts all the entries from the `from'
  1139. index (the redirected index) into the `@code' font, overriding whatever
  1140. default font is used by the index to which the entries are now
  1141. directed.  This way, if you direct function names from a function index
  1142. into a concept index, all the function names are printed in the `@code'
  1143. font as you would expect.
  1144.  
  1145. 
  1146. File: texinfo,  Node: synindex,  Prev: syncodeindex,  Up: Combining Indices
  1147.  
  1148. `@synindex'
  1149. ...........
  1150.  
  1151.    The `@synindex' command is nearly the same as the `@syncodeindex'
  1152. command, except that it does not put the `from' index  entries into the
  1153. `@code' font; rather it puts them in the roman font.  Thus, you use
  1154. `@synindex' when you merge a concept index into a function index.
  1155.  
  1156.    *Note Printing Indices & Menus::, for information about printing an
  1157. index at the end of a book or creating an index menu in an Info file.
  1158.  
  1159. 
  1160. File: texinfo,  Node: New Indices,  Prev: Combining Indices,  Up: Indices
  1161.  
  1162. Defining New Indices
  1163. ====================
  1164.  
  1165.    In addition to the predefined indices, you may use the `@defindex'
  1166. and `@defcodeindex' commands to define new indices.  These commands
  1167. create new indexing @-commands with which you mark index entries.  The
  1168. `@defindex 'command is used like this:
  1169.  
  1170.      @defindex NAME
  1171.  
  1172.    The name of an index should be a two letter word, such as `au'. For
  1173. example:
  1174.  
  1175.      @defindex au
  1176.  
  1177.    This defines a new index, called the `au' index.  At the same time,
  1178. it creates a new indexing command, `@auindex', that you can use to make
  1179. index entries.  Use the new indexing command just as you would use a
  1180. predefined indexing command.
  1181.  
  1182.    For example, here is a section heading followed by a concept index
  1183. entry and two `au' index entries.
  1184.  
  1185.      @section Cognitive Semantics
  1186.      @cindex kinesthetic image schemas
  1187.      @auindex Johnson, Mark
  1188.      @auindex Lakoff, George
  1189.  
  1190. (Evidently, `au' serves here as an abbreviation for "author".) Texinfo
  1191. constructs the new indexing command by concatenating the name of the
  1192. index with `index'; thus, defining an `au' index leads to the automatic
  1193. creation of an `@auindex' command.
  1194.  
  1195.    Use the `@printindex' command to print the index, as you do with the
  1196. predefined indices.  For example:
  1197.  
  1198.      @node Author Index, Subject Index, , Top
  1199.      @unnumbered Author Index
  1200.      
  1201.      @printindex au
  1202.  
  1203.    The `@defcodeindex' is like the `@defindex' command, except that, in
  1204. the printed output, it prints entries in an `@code' font instead of a
  1205. roman font.  Thus, it parallels the `@findex' command rather than the
  1206. `@cindex' command.
  1207.  
  1208.    You should define new indices within or right after the end-of-header
  1209. line of a Texinfo file, before any `@synindex' or `@syncodeindex'
  1210. commands (*note Header::.).
  1211.  
  1212. 
  1213. File: texinfo,  Node: Insertions,  Next: Glyphs,  Prev: Indices,  Up: Top
  1214.  
  1215. Special Insertions
  1216. ******************
  1217.  
  1218.    Texinfo provides several commands for formatting dimensions, for
  1219. inserting single characters that have special meaning in Texinfo, such
  1220. as braces, and for inserting special graphic symbols that do not
  1221. correspond to characters, such as dots and bullets.
  1222.  
  1223. * Menu:
  1224.  
  1225. * Braces Atsigns Periods::      How to insert braces, `@' and periods.
  1226. * dmn::                         How to format a dimension.
  1227. * Dots Bullets::                How to insert dots and bullets.
  1228. * TeX and copyright::           How to insert the TeX logo
  1229.                                   and the copyright symbol.
  1230. * minus::                       How to insert a minus sign.
  1231.  
  1232. 
  1233. File: texinfo,  Node: Braces Atsigns Periods,  Next: dmn,  Up: Insertions
  1234.  
  1235. Inserting `@', Braces, and Periods
  1236. ==================================
  1237.  
  1238.    `@' and curly braces are special characters in Texinfo.  To insert
  1239. these characters so they appear in text, you must put an `@' in front
  1240. of these characters to prevent Texinfo from misinterpreting them.
  1241.  
  1242.    Periods are also special.  Depending on whether the period is inside
  1243. or at the end of a sentence, less or more space is inserted after a
  1244. period in a typeset manual.  Since it is not always possible for
  1245. Texinfo to determine when a period ends a sentence and when it is used
  1246. in an abbreviation, special commands are needed in some circumstances.
  1247. (Usually, Texinfo can guess how to handle periods, so you do not need
  1248. to use the special commands; you just enter a period as you would if
  1249. you were using a typewriter, which means you put two spaces after the
  1250. period, question mark, or exclamation mark that ends a sentence.)
  1251.  
  1252.    Do not put braces after any of these commands; they are not
  1253. necessary.
  1254.  
  1255. * Menu:
  1256.  
  1257. * Inserting An Atsign::
  1258. * Inserting Braces::            How to insert `{' and `}'
  1259. * Controlling Spacing::         How to insert the right amount of space
  1260.                                   after punctuation within a sentence.
  1261.  
  1262. 
  1263. File: texinfo,  Node: Inserting An Atsign,  Next: Inserting Braces,  Up: Braces Atsigns Periods
  1264.  
  1265. Inserting `@' with @@
  1266. ---------------------
  1267.  
  1268.    `@@' stands for a single `@' in either printed or Info output.
  1269.  
  1270.    Do not put braces after an `@@' command.
  1271.  
  1272. 
  1273. File: texinfo,  Node: Inserting Braces,  Next: Controlling Spacing,  Prev: Inserting An Atsign,  Up: Braces Atsigns Periods
  1274.  
  1275. Inserting `{' and `}'with @{ and @}
  1276. -----------------------------------
  1277.  
  1278.    `@{' stands for a single `{' in either printed or Info output.
  1279.  
  1280.    `@}' stands for a single `}' in either printed or Info output.
  1281.  
  1282.    Do not put braces after either an `@{' or an `@}' command.
  1283.  
  1284. 
  1285. File: texinfo,  Node: Controlling Spacing,  Prev: Inserting Braces,  Up: Braces Atsigns Periods
  1286.  
  1287. Spacing After Colons and Periods
  1288. --------------------------------
  1289.  
  1290.    Use the `@:' command after a period, question mark, exclamation
  1291. mark, or colon that should not be followed by extra space. For example,
  1292. use `@:' after periods that end abbreviations which are not at the ends
  1293. of sentences.  `@:' has no effect on the Info file output.
  1294.  
  1295.    For example,
  1296.  
  1297.      The U.S.A.@: is a continental nation.
  1298.  
  1299. produces
  1300.  
  1301.      The U.S.A. is a continental nation.
  1302.  
  1303.    Use `@.' instead of a period at the end of a sentence that ends with
  1304. a single capital letter.  Otherwise, TeX will think the letter is an
  1305. abbreviation and will not insert the correct end-of-sentence spacing. 
  1306. Here is an example:
  1307.  
  1308.      Give it to X. and to Y@.  Give it to Z@.
  1309.      Give it to X. and to Y.  Give it to Z.
  1310.  
  1311. produces
  1312.  
  1313.      Give it to X. and to Y.  Give it to Z.
  1314.      Give it to X. and to Y.  Give it to Z.
  1315.  
  1316.    In the Info file output, `@.' is equivalent to a simple `.'.
  1317.  
  1318.    The meanings of `@:' and `@.' in Texinfo are designed to work well
  1319. with the Emacs sentence motion commands.  This made it necessary for
  1320. them to be incompatible with some other formatting systems that use
  1321. @-commands.
  1322.  
  1323.    Do not put braces after either an `@:' or an `@.' command.
  1324.  
  1325. 
  1326. File: texinfo,  Node: dmn,  Next: Dots Bullets,  Prev: Braces Atsigns Periods,  Up: Insertions
  1327.  
  1328. `@dmn'{DIMENSION}: Format a Dimension
  1329. =====================================
  1330.  
  1331.    At times, you may want to write `12pt' or `8.5in' with little or no
  1332. space between the number and the abbreviation for the dimension.  You
  1333. can use the `@dmn' command to do this.  On seeing the command, TeX
  1334. inserts just enough space for proper typesetting; the Info formatting
  1335. commands insert no space at all, since the Info file does not require
  1336. it.
  1337.  
  1338.    To use the `@dmn' command, write the number and then follow it
  1339. immediately, with no intervening space, by `@dmn', and then by the
  1340. dimension within braces.
  1341.  
  1342. For example,
  1343.  
  1344.      A4 paper is 8.27@dmn{in} wide.
  1345.  
  1346. produces
  1347.  
  1348.      A4 paper is 8.27in wide.
  1349.  
  1350.    Not everyone uses this style.  Instead of `8.27in', you may write
  1351. `8.27 in.' or `8.27 inches'.
  1352.  
  1353. 
  1354. File: texinfo,  Node: Dots Bullets,  Next: TeX and copyright,  Prev: dmn,  Up: Insertions
  1355.  
  1356. Inserting Ellipsis, Dots, and Bullets
  1357. =====================================
  1358.  
  1359.    An "ellipsis" (a line of dots) is not typeset as a string of
  1360. periods, so a special command is used for ellipsis in Texinfo.  The
  1361. `@bullet' command is special, too.  Each of these commands is followed
  1362. by a pair of braces, `{}', without any whitespace between the name of
  1363. the command and the braces.  (You need to use braces with these
  1364. commands because you can use them next to other text; without the
  1365. braces, the formatters would be confused.  *Note  @-Command Syntax:
  1366. Command Syntax, for further information).
  1367.  
  1368. * Menu:
  1369.  
  1370. * dots::                        How to insert dots ...
  1371. * bullet::                      How to insert a bullet.
  1372.  
  1373. 
  1374. File: texinfo,  Node: dots,  Next: bullet,  Up: Dots Bullets
  1375.  
  1376. `@dots'{}
  1377. ---------
  1378.  
  1379.    Use the `@dots{}' command to generate an ellipsis, which is three
  1380. dots in a row, appropriately spaced, like this: `...'.  Do not simply
  1381. write three periods in the input file; that would work for the Info
  1382. file output, but would produce the wrong amount of space between the
  1383. periods in the printed manual.
  1384.  
  1385. 
  1386. File: texinfo,  Node: bullet,  Prev: dots,  Up: Dots Bullets
  1387.  
  1388. `@bullet'{}
  1389. -----------
  1390.  
  1391.    Use the `@bullet{}' command to generate a large round dot, or the
  1392. closest possible thing to one.  In Info, an asterisk is used.
  1393.  
  1394.    Here is a bullet: *
  1395.  
  1396.    When you use `@bullet' in `@itemize', you do not need to type the
  1397. braces, because `@itemize' supplies them.  *Note itemize::.
  1398.  
  1399. 
  1400. File: texinfo,  Node: TeX and copyright,  Next: minus,  Prev: Dots Bullets,  Up: Insertions
  1401.  
  1402. Inserting TeX and the Copyright Symbol
  1403. ======================================
  1404.  
  1405.    The logo `TeX' is typeset in a special fashion and it needs an
  1406. @-command.  The copyright symbol, `(C)', is also special. Each of these
  1407. commands is followed by a pair of braces, `{}', without any whitespace
  1408. between the name of the command and the braces.
  1409.  
  1410. * Menu:
  1411.  
  1412. * tex::                         How to insert the TeX logo.
  1413. * copyright symbol::            How to use `@copyright'{}.
  1414.  
  1415. 
  1416. File: texinfo,  Node: tex,  Next: copyright symbol,  Up: TeX and copyright
  1417.  
  1418. `@TeX'{}
  1419. --------
  1420.  
  1421.    Use the `@TeX{}' command to generate `TeX'.  In a printed manual,
  1422. this is a special logo that is different from three ordinary letters. 
  1423. In Info, it just looks like `TeX'.  The `@TeX{}' command is unique
  1424. among Texinfo commands in that the T and the X are in upper case.
  1425.  
  1426. 
  1427. File: texinfo,  Node: copyright symbol,  Prev: tex,  Up: TeX and copyright
  1428.  
  1429. `@copyright'{}
  1430. --------------
  1431.  
  1432.    Use the `@copyright{}' command to generate `(C)'.  In a printed
  1433. manual, this is a `c' inside a circle, and in Info, this is `(C)'.
  1434.  
  1435.