home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 4 / FreshFish_May-June1994.bin / bbs / gnu / texinfo-3.1-bin.lha / info / texi.info-2 < prev    next >
Encoding:
GNU Info File  |  1994-02-24  |  49.7 KB  |  1,290 lines

  1. This is Info file texi.info, produced by Makeinfo-1.55 from the input
  2. file texi.texi.
  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, 1993 Free Software Foundation,
  9. Inc.
  10.  
  11.    This is the second edition of the Texinfo documentation,
  12. and is consistent with version 2 of `texinfo.tex'.
  13.  
  14.    Permission is granted to make and distribute verbatim copies of this
  15. manual provided the copyright notice and this permission notice are
  16. preserved on all copies.
  17.  
  18.    Permission is granted to copy and distribute modified versions of
  19. this manual under the conditions for verbatim copying, provided that
  20. the entire resulting derived work is distributed under the terms of a
  21. permission notice identical to this one.
  22.  
  23.    Permission is granted to copy and distribute translations of this
  24. manual into another language, under the above conditions for modified
  25. versions, except that this permission notice may be stated in a
  26. translation approved by the Free Software Foundation.
  27.  
  28. 
  29. File: texi.info,  Node: Texinfo Mode,  Next: Beginning a File,  Prev: Overview,  Up: Top
  30.  
  31. Using Texinfo Mode
  32. ******************
  33.  
  34.    You may edit a Texinfo file with any text editor you choose.  A
  35. Texinfo file is no different from any other ASCII file.  However, GNU
  36. Emacs comes with a special mode, called Texinfo mode, that provides
  37. Emacs commands and tools to help ease your work.
  38.  
  39.    This chapter describes features of GNU Emacs' Texinfo mode but not
  40. any features of the Texinfo formatting language.  If you are reading
  41. this manual straight through from the beginning, you may want to skim
  42. through this chapter briefly and come back to it after reading
  43. succeeding chapters which describe the Texinfo formatting language in
  44. detail.
  45.  
  46. * Menu:
  47.  
  48. * Texinfo Mode Overview::       How Texinfo mode can help you.
  49. * Emacs Editing::               Texinfo mode adds to GNU Emacs' general
  50.                                   purpose editing features.
  51. * Inserting::                   How to insert frequently used @-commands.
  52. * Showing the Structure::       How to show the structure of a file.
  53. * Updating Nodes and Menus::    How to update or create new nodes and menus.
  54. * Info Formatting::             How to format for Info.
  55. * Printing::                    How to format and print part or all of a file.
  56. * Texinfo Mode Summary::        Summary of all the Texinfo mode commands.
  57.  
  58. 
  59. File: texi.info,  Node: Texinfo Mode Overview,  Next: Emacs Editing,  Up: Texinfo Mode
  60.  
  61. Texinfo Mode Overview
  62. =====================
  63.  
  64.    Texinfo mode provides special features for working with Texinfo
  65. files:
  66.  
  67.    * Insert frequently used @commands.
  68.  
  69.    * Automatically create `@node' lines.
  70.  
  71.    * Show the structure of a Texinfo source file.
  72.  
  73.    * Automatically create or update the `Next',
  74.      `Previous', and `Up' pointers of a node.
  75.  
  76.    * Automatically create or update menus.
  77.  
  78.    * Automatically create a master menu.
  79.  
  80.    * Format a part or all of a file for Info.
  81.  
  82.    * Typeset and print part or all of a file.
  83.  
  84.    Perhaps the two most helpful features are those for inserting
  85. frequently used @-commands and for creating node pointers and menus.
  86.  
  87. 
  88. File: texi.info,  Node: Emacs Editing,  Next: Inserting,  Prev: Texinfo Mode Overview,  Up: Texinfo Mode
  89.  
  90. The Usual GNU Emacs Editing Commands
  91. ====================================
  92.  
  93.    In most cases, the usual Text mode commands work the same in Texinfo
  94. mode as they do in Text mode.  Texinfo mode adds new editing commands
  95. and tools to GNU Emacs' general purpose editing features.  The major
  96. difference concerns filling.  In Texinfo mode, the paragraph separation
  97. variable and syntax table are redefined so that Texinfo commands that
  98. should be on lines of their own are not inadvertently included in
  99. paragraphs.  Thus, the `M-q' (`fill-paragraph') command will refill a
  100. paragraph but not mix an indexing command on a line adjacent to it into
  101. the paragraph.
  102.  
  103.    In addition, Texinfo mode sets the `page-delimiter' variable to the
  104. value of `texinfo-chapter-level-regexp'; by default, this is a regular
  105. expression matching the commands for chapters and their equivalents,
  106. such as appendices.  With this value for the page delimiter, you can
  107. jump from chapter title to chapter title with the `C-x ]'
  108. (`forward-page') and `C-x [' (`backward-page') commands and narrow to a
  109. chapter with the `C-x p' (`narrow-to-page') command.  (*Note Pages:
  110. (emacs)Pages, for details about the page commands.)
  111.  
  112.    You may name a Texinfo file however you wish, but the convention is
  113. to end a Texinfo file name with one of the three extensions `.texinfo',
  114. `.texi', or `.tex'.  A longer extension is preferred, since it is
  115. explicit, but a shorter extension may be necessary for operating
  116. systems that limit the length of file names.  GNU Emacs automatically
  117. enters Texinfo mode when you visit a file with a `.texinfo' or  `.texi'
  118. extension.  Also, Emacs switches to Texinfo mode when you visit a file
  119. that has `-*-texinfo-*-' in its first line.  If ever you are in another
  120. mode and wish to switch to Texinfo mode, type `M-x texinfo-mode'.
  121.  
  122.    Like all other Emacs features, you can customize or enhance Texinfo
  123. mode as you wish.  In particular, the keybindings are very easy to
  124. change.  The keybindings described here are the default or standard
  125. ones.
  126.  
  127. 
  128. File: texi.info,  Node: Inserting,  Next: Showing the Structure,  Prev: Emacs Editing,  Up: Texinfo Mode
  129.  
  130. Inserting Frequently Used Commands
  131. ==================================
  132.  
  133.    Texinfo mode provides commands to insert various frequently used
  134. @-commands into the buffer.  You can use these commands to save
  135. keystrokes.
  136.  
  137.    The insert commands are invoked by typing `C-c' twice and then the
  138. first letter of the @-command:
  139.  
  140. `C-c C-c c'
  141. `M-x texinfo-insert-@code'
  142.      Insert `@code{}' and put the cursor between the braces.
  143.  
  144. `C-c C-c d'
  145. `M-x texinfo-insert-@dfn'
  146.      Insert `@dfn{}' and put the cursor between the braces.
  147.  
  148. `C-c C-c e'
  149. `M-x texinfo-insert-@end'
  150.      Insert `@end' and attempt to insert the correct following word,
  151.      such as `example' or `table'.  (This command does not handle
  152.      nested lists correctly, but inserts the word appropriate to the
  153.      immediately preceding list.)
  154.  
  155. `C-c C-c i'
  156. `M-x texinfo-insert-@item'
  157.      Insert `@item' and put the cursor at the beginning of the next
  158.      line.
  159.  
  160. `C-c C-c k'
  161. `M-x texinfo-insert-@kbd'
  162.      Insert `@kbd{}' and put the cursor between the braces.
  163.  
  164. `C-c C-c n'
  165. `M-x texinfo-insert-@node'
  166.      Insert `@node' and a comment line listing the sequence for the
  167.      `Next', `Previous', and `Up' nodes.  Leave point after the `@node'.
  168.  
  169. `C-c C-c o'
  170. `M-x texinfo-insert-@noindent'
  171.      Insert `@noindent' and put the cursor at the beginning of the next
  172.      line.
  173.  
  174. `C-c C-c s'
  175. `M-x texinfo-insert-@samp'
  176.      Insert `@samp{}' and put the cursor between the braces.
  177.  
  178. `C-c C-c t'
  179. `M-x texinfo-insert-@table'
  180.      Insert `@table' followed by a SPC and leave the cursor after the
  181.      SPC.
  182.  
  183. `C-c C-c v'
  184. `M-x texinfo-insert-@var'
  185.      Insert `@var{}' and put the cursor between the braces.
  186.  
  187. `C-c C-c x'
  188. `M-x texinfo-insert-@example'
  189.      Insert `@example' and put the cursor at the beginning of the next
  190.      line.
  191.  
  192. `C-c C-c {'
  193. `M-x texinfo-insert-braces'
  194.      Insert `{}' and put the cursor between the braces.
  195.  
  196. `C-c C-c }'
  197. `C-c C-c ]'
  198. `M-x up-list'
  199.      Move from between a pair of braces forward past the closing brace.
  200.      Typing `C-c C-c ]' is easier than typing `C-c C-c }', which is,
  201.      however, more mnemonic; hence the two keybindings.  (Also, you can
  202.      move out from between braces by typing `C-f'.)
  203.  
  204.    To put a command such as `@code{...}' around an *existing* word,
  205. position the cursor in front of the word and type `C-u 1 C-c C-c c'.
  206. This makes it easy to edit existing plain text.  The value of the
  207. prefix argument tells Emacs how many words following point to include
  208. between braces--1 for one word, 2 for two words, and so on.  Use a
  209. negative argument to enclose the previous word or words.  If you do not
  210. specify a prefix argument, Emacs inserts the @-command string and
  211. positions the cursor between the braces.  This feature works only for
  212. those @-commands that operate on a word or words within one line, such
  213. as `@kbd' and `@var'.
  214.  
  215.    This set of insert commands was created after analyzing the frequency
  216. with which different @-commands are used in the `GNU Emacs Manual' and
  217. the `GDB Manual'.  If you wish to add your own insert commands, you can
  218. bind a keyboard macro to a key, use abbreviations, or extend the code
  219. in `texinfo.el'.
  220.  
  221.    `C-c C-c C-d' (`texinfo-start-menu-description') is an insert
  222. command that works differently from the other insert commands.  It
  223. inserts a node's section or chapter title in the space for the
  224. description in a menu entry line.  (A menu entry has three parts, the
  225. entry name, the node name, and the description.  Only the node name is
  226. required, but a description helps explain what the node is about.
  227. *Note The Parts of a Menu: Menu Parts.)
  228.  
  229.    To use `texinfo-start-menu-description', position point in a menu
  230. entry line and type `C-c C-c C-d'.  The command looks for and copies
  231. the title that goes with the node name, and inserts the title as a
  232. description; it positions point at beginning of the inserted text so you
  233. can edit it.  The function does not insert the title if the menu entry
  234. line already contains a description.
  235.  
  236.    This command is only an aid to writing descriptions; it does not do
  237. the whole job.  You must edit the inserted text since a title tends to
  238. use the same words as a node name but a useful description uses
  239. different words.
  240.  
  241. 
  242. File: texi.info,  Node: Showing the Structure,  Next: Updating Nodes and Menus,  Prev: Inserting,  Up: Texinfo Mode
  243.  
  244. Showing the Section Structure of a File
  245. =======================================
  246.  
  247.    You can show the section structure of a Texinfo file by using the
  248. `C-c C-s' command (`texinfo-show-structure').  This command shows the
  249. section structure of a Texinfo file by listing the lines that begin
  250. with the @-commands for `@chapter', `@section', and the like.  It
  251. constructs what amounts to a table of contents.  These lines are
  252. displayed in another buffer called the `*Occur*' buffer.  In that
  253. buffer, you can position the cursor over one of the lines and use the
  254. `C-c C-c' command (`occur-mode-goto-occurrence'), to jump to the
  255. corresponding spot in the Texinfo file.
  256.  
  257. `C-c C-s'
  258. `M-x texinfo-show-structure'
  259.      Show the `@chapter', `@section', and such lines of a Texinfo file.
  260.  
  261. `C-c C-c'
  262. `M-x occur-mode-goto-occurrence'
  263.      Go to the line in the Texinfo file corresponding to the line under
  264.      the cursor in the `*Occur*' buffer.
  265.  
  266.    If you call `texinfo-show-structure' with a prefix argument by
  267. typing `C-u C-c C-s', it will list not only those lines with the
  268. @-commands for `@chapter', `@section', and the like, but also the
  269. `@node' lines.  (This is how the `texinfo-show-structure' command
  270. worked without an argument in the first version of Texinfo.  It was
  271. changed because `@node' lines clutter up the `*Occur*' buffer and are
  272. usually not needed.)  You can use `texinfo-show-structure' with a prefix
  273. argument to check whether the `Next', `Previous', and `Up' pointers of
  274. an `@node' line are correct.
  275.  
  276.    Often, when you are working on a manual, you will be interested only
  277. in the structure of the current chapter.  In this case, you can mark
  278. off the region of the buffer that you are interested in with the `C-x
  279. n' (`narrow-to-region') command and `texinfo-show-structure' will work
  280. on only that region.  To see the whole buffer again, use `C-x w'
  281. (`widen').  (*Note Narrowing: (emacs)Narrowing, for more information
  282. about the narrowing commands.)
  283.  
  284.    In addition to providing the `texinfo-show-structure' command,
  285. Texinfo mode sets the value of the page delimiter variable to match the
  286. chapter-level @-commands.  This enables you to use the `C-x ]'
  287. (`forward-page') and `C-x [' (`backward-page') commands to move forward
  288. and backward by chapter, and to use the `C-x p' (`narrow-to-page')
  289. command to narrow to a chapter.  *Note Pages: (emacs)Pages, for more
  290. information about the page commands.
  291.  
  292. 
  293. File: texi.info,  Node: Updating Nodes and Menus,  Next: Info Formatting,  Prev: Showing the Structure,  Up: Texinfo Mode
  294.  
  295. Updating Nodes and Menus
  296. ========================
  297.  
  298.    Texinfo mode provides commands for automatically creating or updating
  299. menus and node pointers.  The commands are called "update" commands
  300. because their most frequent use is for updating a Texinfo file after
  301. you have worked on it; but you can use them to insert the `Next',
  302. `Previous', and `Up' pointers into an `@node' line that has none and to
  303. create menus in a file that has none.
  304.  
  305.    If you do not use the updating commands, you need to write menus and
  306. node pointers by hand, which is a tedious task.
  307.  
  308. * Menu:
  309.  
  310. * Updating Commands::           Five major updating commands.
  311. * Updating Requirements::       How to structure a Texinfo file for
  312.                                   using the updating command.
  313. * Other Updating Commands::     How to indent descriptions, insert
  314.                                   missing nodes lines, and update
  315.                                   nodes in sequence.
  316.  
  317. 
  318. File: texi.info,  Node: Updating Commands,  Next: Updating Requirements,  Up: Updating Nodes and Menus
  319.  
  320. The Updating Commands
  321. ---------------------
  322.  
  323.    You can use the updating commands
  324.  
  325.    * to insert or update the `Next', `Previous', and `Up' pointers of a
  326.      node,
  327.  
  328.    * to insert or update the menu for a section, and
  329.  
  330.    * to create a master menu for a Texinfo source file.
  331.  
  332.    You can also use the commands to update all the nodes and menus in a
  333. region or in a whole Texinfo file.
  334.  
  335.    The updating commands work only with conventional Texinfo files,
  336. which are structured hierarchically like books.  In such files, a
  337. structuring command line must follow closely after each `@node' line,
  338. except for the `Top' `@node' line.  (A "structuring command line" is a
  339. line beginning with `@chapter', `@section', or other similar command.)
  340.  
  341.    You can write the structuring command line on the line that follows
  342. immediately after an `@node' line or else on the line that follows
  343. after a single `@comment' line or a single `@ifinfo' line.  You cannot
  344. interpose more than one line between the `@node' line and the
  345. structuring command line; and you may interpose only an `@comment' line
  346. or an `@ifinfo' line.
  347.  
  348.    Commands which work on a whole buffer require that the `Top' node be
  349. followed by a node with an `@chapter' or equivalent-level command.
  350. Note that the menu updating commands will not create a main or master
  351. menu for a Texinfo file that has only `@chapter'-level nodes!  The menu
  352. updating commands only create menus *within* nodes for lower level
  353. nodes.  To create a menu of chapters, you must provide a `Top' node.
  354.  
  355.    The menu updating commands remove menu entries that refer to other
  356. Info files since they do not refer to nodes within the current buffer.
  357. This is a deficiency.  Rather than use menu entries, you can use cross
  358. references to refer to other Info files.  None of the updating commands
  359. affect cross references.
  360.  
  361.    Texinfo mode has five updating commands that are used most often: two
  362. are for updating the node pointers or menu of a single node (or a
  363. region); two are for updating every node pointer and menu in a file;
  364. and one, the `texinfo-master-menu' command, is for creating a master
  365. menu for a complete file, and optionally, for updating every node and
  366. menu in the whole Texinfo file.
  367.  
  368.    The `texinfo-master-menu' command is the primary command:
  369.  
  370. `C-c C-u m'
  371. `M-x texinfo-master-menu'
  372.      Create or update a master menu that includes all the other menus
  373.      (incorporating the descriptions from pre-existing menus, if any).
  374.  
  375.      With an argument (prefix argument, `C-u,' if interactive), first
  376.      create or update all the nodes and all the regular menus in the
  377.      buffer before constructing the master menu.  (*Note The Top Node
  378.      and Master Menu: The Top Node, for more about a master menu.)
  379.  
  380.      For `texinfo-master-menu' to work, the Texinfo file must have a
  381.      `Top' node and at least one subsequent node.
  382.  
  383.      After extensively editing a Texinfo file, you can type the
  384.      following:
  385.  
  386.           C-u M-x texinfo-master-menu
  387.      or
  388.           C-u C-c C-u m
  389.  
  390.      This updates all the nodes and menus completely and all at once.
  391.  
  392.    The other major updating commands do smaller jobs and are designed
  393. for the person  who updates nodes and menus as he or she writes a
  394. Texinfo file.
  395.  
  396.    The commands are:
  397.  
  398. `C-c C-u C-n'
  399. `M-x texinfo-update-node'
  400.      Insert the `Next', `Previous', and `Up' pointers for the node that
  401.      point is within (i.e., for the `@node' line preceding point).  If
  402.      the `@node' line has pre-existing `Next', `Previous', or `Up'
  403.      pointers in it, the old pointers are removed and new ones inserted.
  404.      With an argument (prefix argument, `C-u', if interactive), this
  405.      command updates all `@node' lines in the region (which is the text
  406.      between point and mark).
  407.  
  408. `C-c C-u C-m'
  409. `M-x texinfo-make-menu'
  410.      Create or update the menu in the node that point is within.  With
  411.      an argument (`C-u' as prefix argument, if interactive), the
  412.      command makes or updates menus for the nodes which are either
  413.      within or a part of the region.
  414.  
  415.      Whenever `texinfo-make-menu' updates an existing menu, the
  416.      descriptions from that menu are incorporated into the new menu.
  417.      This is done by copying descriptions from the existing menu to the
  418.      entries in the new menu that have the same node names.  If the
  419.      node names are different, the descriptions are not copied to the
  420.      new menu.
  421.  
  422. `C-c C-u C-e'
  423. `M-x texinfo-every-node-update'
  424.      Insert or update the `Next', `Previous', and `Up' pointers for
  425.      every node in the buffer.
  426.  
  427. `C-c C-u C-a'
  428. `M-x texinfo-all-menus-update'
  429.      Create or update all the menus in the buffer.  With an argument
  430.      (`C-u' as prefix argument, if interactive), first insert or update
  431.      all the node pointers before working on the menus.
  432.  
  433.      If a master menu exists, the `texinfo-all-menus-update' command
  434.      updates it; but the command does not create a new master menu if
  435.      none already exists.  (Use the `texinfo-master-menu' command for
  436.      that.)
  437.  
  438.      When working on a document that does not merit a master menu, you
  439.      can type the following:
  440.  
  441.           C-u C-c C-u C-a
  442.      or
  443.           C-u M-x texinfo-all-menus-update
  444.  
  445.      This updates all the nodes and menus.
  446.  
  447.    The `texinfo-column-for-description' variable specifies the column
  448. to which menu descriptions are indented.  By default, the value is 32
  449. although it is often useful to reduce it to as low as 24.  You can set
  450. the variable with the `M-x edit-options' command (*note Editing
  451. Variable Values: (emacs)Edit Options.) or with the `M-x set-variable'
  452. command (*note Examining and Setting Variables: (emacs)Examining.).
  453.  
  454.    Also, the `texinfo-indent-menu-description' command may be used to
  455. indent existing menu descriptions to a specified column.  Finally, if
  456. you wish, you can use the `texinfo-insert-node-lines' command to insert
  457. missing `@node' lines into a file.  (*Note Other Updating Commands::,
  458. for more information.)
  459.  
  460. 
  461. File: texi.info,  Node: Updating Requirements,  Next: Other Updating Commands,  Prev: Updating Commands,  Up: Updating Nodes and Menus
  462.  
  463. Updating Requirements
  464. ---------------------
  465.  
  466.    To use the updating commands, you must organize the Texinfo file
  467. hierarchically with chapters, sections, subsections, and the like.
  468. When you construct the hierarchy of the manual, do not `jump down' more
  469. than one level at a time: you can follow the `Top' node with a chapter,
  470. but not with a section; you can follow a chapter with a section, but
  471. not with a subsection.  However, you may `jump up' any number of levels
  472. at one time--for example, from a subsection to a chapter.
  473.  
  474.    Each `@node' line, with the exception of the line for the `Top'
  475. node, must be followed by a line with a structuring command such as
  476. `@chapter', `@section', or `@unnumberedsubsec'.
  477.  
  478.    Each `@node' line/structuring-command line combination must look
  479. either like this:
  480.  
  481.      @node     Comments,  Minimum, Conventions, Overview
  482.      @comment  node-name, next,    previous,    up
  483.      @section Comments
  484.  
  485.    or like this (without the `@comment' line):
  486.  
  487.      @node Comments, Minimum, Conventions, Overview
  488.      @section Comments
  489.  
  490. In this example, `Comments' is the name of both the node and the
  491. section.  The next node is called `Minimum' and the previous node is
  492. called `Conventions'.  The `Comments' section is within the `Overview'
  493. node, which is specified by the `Up' pointer.  (Instead of an
  494. `@comment' line, you can write an `@ifinfo' line.)
  495.  
  496.    If a file has a `Top' node, it must be called `top' or `Top' and be
  497. the first node in the file.
  498.  
  499.    The menu updating commands create a menu of sections within a
  500. chapter, a menu of subsections within a section, and so on.  This means
  501. that you must have a `Top' node if you want a menu of chapters.
  502.  
  503.    Incidentally, the `makeinfo' command will create an Info file for a
  504. hierarchically organized Texinfo file that lacks `Next', `Previous' and
  505. `Up' pointers.  Thus, if you can be sure that your Texinfo file will be
  506. formatted with `makeinfo', you have no need for the `update node'
  507. commands.  (*Note Creating an Info File: Create an Info File, for more
  508. information about `makeinfo'.)  However, both `makeinfo' and the
  509. `texinfo-format-...' commands require that you insert menus in the file.
  510.  
  511. 
  512. File: texi.info,  Node: Other Updating Commands,  Prev: Updating Requirements,  Up: Updating Nodes and Menus
  513.  
  514. Other Updating Commands
  515. -----------------------
  516.  
  517.    In addition to the five major updating commands, Texinfo mode
  518. possesses several less frequently used updating commands:
  519.  
  520. `M-x texinfo-insert-node-lines'
  521.      Insert `@node' lines before the `@chapter', `@section', and other
  522.      sectioning commands wherever they are missing throughout a region
  523.      in a Texinfo file.
  524.  
  525.      With an argument (`C-u' as prefix argument, if interactive), the
  526.      `texinfo-insert-node-lines' command not only inserts `@node' lines
  527.      but also inserts the chapter or section titles as the names of the
  528.      corresponding nodes.  In addition, it inserts the titles as node
  529.      names in pre-existing `@node' lines that lack names.  Since node
  530.      names should be more concise than section or chapter titles, you
  531.      must manually edit node names so inserted.
  532.  
  533.      For example, the following marks a whole buffer as a region and
  534.      inserts `@node' lines and titles throughout:
  535.  
  536.           C-x h C-u M-x texinfo-insert-node-lines
  537.  
  538.      (Note that this command inserts titles as node names in `@node'
  539.      lines; the `texinfo-start-menu-description' command (*note
  540.      Inserting Frequently Used Commands: Inserting.) inserts titles as
  541.      descriptions in menu entries, a different action.  However, in both
  542.      cases, you need to edit the inserted text.)
  543.  
  544. `M-x texinfo-multiple-files-update'
  545.      Update nodes and menus in a document built from several separate
  546.      files.  With `C-u' as a prefix argument, create and insert a
  547.      master menu in the outer file.  With a numeric prefix argument,
  548.      such as `C-u 2', first update all the menus and all the `Next',
  549.      `Previous', and `Up' pointers of all the included files before
  550.      creating and inserting a master menu in the outer file.  The
  551.      `texinfo-multiple-files-update' command is described in the
  552.      appendix on `@include' files.  *Note
  553.      texinfo-multiple-files-update::.
  554.  
  555. `M-x texinfo-indent-menu-description'
  556.      Indent every description in the menu following point to the
  557.      specified column.  You can use this command to give yourself more
  558.      space for descriptions.  With an argument (`C-u' as prefix
  559.      argument, if interactive), the `texinfo-indent-menu-description'
  560.      command indents every description in every menu in the region.
  561.      However, this command does not indent the second and subsequent
  562.      lines of a multi-line description.
  563.  
  564. `M-x texinfo-sequential-node-update'
  565.      Insert the names of the nodes immediately following and preceding
  566.      the current node as the `Next' or `Previous' pointers regardless
  567.      of those nodes' hierarchical level.  This means that the `Next'
  568.      node of a subsection may well be the next chapter.  Sequentially
  569.      ordered nodes are useful for novels and other documents that you
  570.      read through sequentially.  (However, in Info, the `g* RET'
  571.      command lets you look through the file sequentially, so
  572.      sequentially ordered nodes are not strictly necessary.)  With an
  573.      argument (prefix argument, if interactive), the
  574.      `texinfo-sequential-node-update' command sequentially updates all
  575.      the nodes in the region.
  576.  
  577. 
  578. File: texi.info,  Node: Info Formatting,  Next: Printing,  Prev: Updating Nodes and Menus,  Up: Texinfo Mode
  579.  
  580. Formatting for Info
  581. ===================
  582.  
  583.    Texinfo mode provides several commands for formatting part or all of
  584. a Texinfo file for Info.  Often, when you are writing a document, you
  585. want to format only part of a file--that is, a region.
  586.  
  587.    You can use either the `texinfo-format-region' or the
  588. `makeinfo-region' command to format a region:
  589.  
  590. `C-c C-e C-r'
  591. `M-x texinfo-format-region'
  592. `C-c C-m C-r'
  593. `M-x makeinfo-region'
  594.      Format the current region for Info.
  595.  
  596.    You can use either the `texinfo-format-buffer' or the
  597. `makeinfo-buffer' command to format a whole buffer:
  598.  
  599. `C-c C-e C-b'
  600. `M-x texinfo-format-buffer'
  601. `C-c C-m C-b'
  602. `M-x makeinfo-buffer'
  603.      Format the current buffer for Info.
  604.  
  605.    For example, after writing a Texinfo file, you can type the
  606. following:
  607.  
  608.      C-u C-c C-u m
  609. or
  610.      C-u M-x texinfo-master-menu
  611.  
  612. This updates all the nodes and menus.  Then type the following to create
  613. an Info file:
  614.  
  615.      C-c C-m C-b
  616. or
  617.      M-x makeinfo-buffer
  618.  
  619.    For the Info formatting commands to work, the file *must* include a
  620. line that has `@setfilename' in its header.
  621.  
  622.    Not all systems support the `makeinfo'-based formatting commands.
  623.  
  624.    *Note Create an Info File::, for details about Info formatting.
  625.  
  626. 
  627. File: texi.info,  Node: Printing,  Next: Texinfo Mode Summary,  Prev: Info Formatting,  Up: Texinfo Mode
  628.  
  629. Formatting and Printing
  630. =======================
  631.  
  632.    Typesetting and printing a Texinfo file is a multi-step process in
  633. which you first create a file for printing (called a DVI file), and then
  634. print the file.  Optionally, you may also create indices.  To do this,
  635. you must run the `texindex' command after first running the `tex'
  636. typesetting command; and then you must run the `tex' command again.
  637.  
  638.    Often, when you are writing a document, you want to typeset and print
  639. only part of a file to see what it will look like.  You can use the
  640. `texinfo-tex-region' and related commands for this purpose.  Use the
  641. `texinfo-tex-buffer' command to format all of a buffer.
  642.  
  643. `C-c C-t C-r'
  644. `M-x texinfo-tex-region'
  645.      Run TeX on the region.
  646.  
  647. `C-c C-t C-b'
  648. `M-x texinfo-tex-buffer'
  649.      Run TeX on the buffer.
  650.  
  651. `C-c C-t C-i'
  652. `M-x texinfo-texindex'
  653.      Run `texindex' to sort the indices of a Texinfo file formatted with
  654.      `texinfo-tex-region' or `texinfo-tex-buffer'.  You must run the
  655.      `tex' command a second time after sorting the raw index files.
  656.  
  657. `C-c C-t C-p'
  658. `M-x texinfo-tex-print'
  659.      Print the file (or the part of the file) previously formatted with
  660.      `texinfo-tex-buffer' or `texinfo-tex-region'.
  661.  
  662.    For `texinfo-tex-region' or `texinfo-tex-buffer' to work, the file
  663. *must* start with a `\input texinfo' line and must include an
  664. `@settitle' line.  The file must end with `@bye' on a line by itself.
  665. (When you use `texinfo-tex-region', you must surround the `@settitle'
  666. line with start-of-header and end-of-header lines.)
  667.  
  668.    *Note Format/Print Hardcopy::, for a description of the other TeX
  669. related commands, such as `tex-show-print-queue'.
  670.  
  671. 
  672. File: texi.info,  Node: Texinfo Mode Summary,  Prev: Printing,  Up: Texinfo Mode
  673.  
  674. Texinfo Mode Summary
  675. ====================
  676.  
  677.    In Texinfo mode, each set of commands has default keybindings that
  678. begin with the same keys.  All the commands that are custom-created for
  679. Texinfo mode begin with `C-c'.  The keys are somewhat mnemonic.
  680.  
  681. Insert Commands
  682. ---------------
  683.  
  684.    The insert commands are invoked by typing `C-c' twice and then the
  685. first letter of the @-command to be inserted.  (It might make more
  686. sense mnemonically to use `C-c C-i', for `custom insert', but `C-c C-c'
  687. is quick to type.)
  688.  
  689.      C-c C-c c       Insert `@code'.
  690.      C-c C-c d       Insert `@dfn'.
  691.      C-c C-c e       Insert `@end'.
  692.      C-c C-c i       Insert `@item'.
  693.      C-c C-c n       Insert `@node'.
  694.      C-c C-c s       Insert `@samp'.
  695.      C-c C-c v       Insert `@var'.
  696.      C-c C-c {       Insert braces.
  697.      C-c C-c ]
  698.      C-c C-c }       Move out of enclosing braces.
  699.      
  700.      C-c C-c C-d     Insert a node's section title
  701.                      in the space for the description
  702.                      in a menu entry line.
  703.  
  704. Show Structure
  705. --------------
  706.  
  707.    The `texinfo-show-structure' command is often used within a narrowed
  708. region.
  709.  
  710.      C-c C-s         List all the headings.
  711.  
  712. The Master Update Command
  713. -------------------------
  714.  
  715.    The `texinfo-master-menu' command creates a master menu; and can be
  716. used to update every node and menu in a file as well.
  717.  
  718.      C-c C-u m
  719.      M-x texinfo-master-menu
  720.                      Create or update a master menu.
  721.      
  722.      C-u C-c C-u m   With `C-u' as a prefix argument, first
  723.                      create or update all nodes and regular
  724.                      menus, and then create a master menu.
  725.  
  726. Update Pointers
  727. ---------------
  728.  
  729.    The update pointer commands are invoked by typing `C-c C-u' and then
  730. either typing `C-n' for `texinfo-update-node' or typing `C-e' for
  731. `texinfo-every-node-update'.
  732.  
  733.      C-c C-u C-n     Update a node.
  734.      C-c C-u C-e     Update every node in the buffer.
  735.  
  736. Update Menus
  737. ------------
  738.  
  739.    Invoke the  update menu commands by typing `C-c C-u' and then either
  740. `C-m' for `texinfo-make-menu' or `C-a' for `texinfo-all-menus-update'.
  741. To update both nodes and menus at the same time, precede `C-c C-u C-a'
  742. with `C-u'.
  743.  
  744.      C-c C-u C-m     Make or update a menu.
  745.      
  746.      C-c C-u C-a     Make or update all
  747.                      menus in a buffer.
  748.      
  749.      C-u C-c C-u C-a With `C-u' as a prefix argument,
  750.                      first create or update all nodes and
  751.                      then create or update all menus.
  752.  
  753. Format for Info
  754. ---------------
  755.  
  756.    The Info formatting commands that are written in Emacs Lisp are
  757. invoked by typing `C-c C-e' and then either `C-r' for a region or `C-b'
  758. for the whole buffer.
  759.  
  760.    The Info formatting commands that are written in C and based on the
  761. `makeinfo' program are invoked by typing `C-c C-m' and then either
  762. `C-r' for a region or `C-b' for the whole buffer.
  763.  
  764. Use the `texinfo-format...' commands:
  765.  
  766.      C-c C-e C-r     Format the region.
  767.      C-c C-e C-b     Format the buffer.
  768.  
  769. Use `makeinfo':
  770.  
  771.      C-c C-m C-r     Format the region.
  772.      C-c C-m C-b     Format the buffer.
  773.      C-c C-m C-l     Recenter the `makeinfo' output buffer.
  774.      C-c C-m C-k     Kill the `makeinfo' formatting job.
  775.  
  776. Typeset and Print
  777. -----------------
  778.  
  779.    The TeX typesetting and printing commands are invoked by typing `C-c
  780. C-t' and then another control command: `C-r' for `texinfo-tex-region',
  781. `C-b' for `texinfo-tex-buffer', and so on.
  782.  
  783.      C-c C-t C-r     Run TeX on the region.
  784.      C-c C-t C-b     Run TeX on the buffer.
  785.      C-c C-t C-i     Run `texindex'.
  786.      C-c C-t C-p     Print the DVI file.
  787.      C-c C-t C-q     Show the print queue.
  788.      C-c C-t C-d     Delete a job from the print queue.
  789.      C-c C-t C-k     Kill the current TeX formatting job.
  790.      C-c C-t C-x     Quit a currently stopped TeX formatting job.
  791.      C-c C-t C-l     Recenter the output buffer.
  792.  
  793. Other Updating Commands
  794. -----------------------
  795.  
  796.    The `other updating commands' do not have standard keybindings
  797. because they are rarely used.
  798.  
  799.      M-x texinfo-insert-node-lines
  800.                      Insert missing `@node' lines in region.
  801.                      With `C-u' as a prefix argument,
  802.                      use section titles as node names.
  803.      
  804.      M-x texinfo-multiple-files-update
  805.                      Update a multi-file document.
  806.                      With `C-u 2' as a prefix argument,
  807.                      create or update all nodes and menus
  808.                      in all included files first.
  809.      
  810.      M-x texinfo-indent-menu-description
  811.                      Indent descriptions.
  812.      
  813.      M-x texinfo-sequential-node-update
  814.                      Insert node pointers in strict sequence.
  815.  
  816. 
  817. File: texi.info,  Node: Beginning a File,  Next: Ending a File,  Prev: Texinfo Mode,  Up: Top
  818.  
  819. Beginning a Texinfo File
  820. ************************
  821.  
  822.    Certain pieces of information must be provided at the beginning of a
  823. Texinfo file, such as the name of the file and the title of the
  824. document.
  825.  
  826. * Menu:
  827.  
  828. * Four Parts::                  Four parts begin a Texinfo file.
  829. * Sample Beginning::            Here is a sample beginning for a Texinfo file.
  830. * Header::                      The very beginning of a Texinfo file.
  831. * Info Summary and Permissions::  Summary and copying permissions for Info.
  832. * Titlepage & Copyright Page::  Creating the title and copyright pages.
  833. * The Top Node::                Creating the `Top' node and master menu.
  834. * Software Copying Permissions::  Ensure that you and others continue to
  835.                                   have the right to use and share software.
  836.  
  837. 
  838. File: texi.info,  Node: Four Parts,  Next: Sample Beginning,  Up: Beginning a File
  839.  
  840. Four Parts Begin a File
  841. =======================
  842.  
  843.    Generally, the beginning of a Texinfo file has four parts:
  844.  
  845.   1. The header, delimited by special comment lines, that includes the
  846.      commands for naming the Texinfo file and telling TeX what
  847.      definitions' file to use when processing the Texinfo file.
  848.  
  849.   2. A short statement of what the file is about, with a copyright
  850.      notice and copying permissions.  This is enclosed in `@ifinfo' and
  851.      `@end ifinfo' commands so that the formatters place it only in the
  852.      Info file.
  853.  
  854.   3. A title page and copyright page, with a copyright notice and
  855.      copying permissions.  This is enclosed between `@titlepage' and
  856.      `@end titlepage' commands.  The title and copyright page appear
  857.      only in the printed manual.
  858.  
  859.   4. The `Top' node that contains a menu for the whole Info file.  The
  860.      contents of this node appear only in the Info file.
  861.  
  862.    Also, optionally, you may include the copying conditions for a
  863. program and a warranty disclaimer.  The copying section will be
  864. followed by an introduction or else by the first chapter of the manual.
  865.  
  866.    Since the copyright notice and copying permissions for the Texinfo
  867. document (in contrast to the copying permissions for a program) are in
  868. parts that appear only in the Info file or only in the printed manual,
  869. this information must be given twice.
  870.  
  871. 
  872. File: texi.info,  Node: Sample Beginning,  Next: Header,  Prev: Four Parts,  Up: Beginning a File
  873.  
  874. Sample Texinfo File Beginning
  875. =============================
  876.  
  877.    The following sample shows what is needed.
  878.  
  879.      \input texinfo   @c -*-texinfo-*-
  880.      @c %**start of header
  881.      @setfilename NAME-OF-INFO-FILE
  882.      @settitle NAME-OF-MANUAL
  883.      @setchapternewpage odd
  884.      @c %**end of header
  885.      
  886.      @ifinfo
  887.      This file documents ...
  888.      
  889.      Copyright YEAR COPYRIGHT-OWNER
  890.      
  891.      Permission is granted to ...
  892.      @end ifinfo
  893.      
  894.      @c  This title page illustrates only one of the
  895.      @c  two methods of forming a title page.
  896.      
  897.      @titlepage
  898.      @title NAME-OF-MANUAL-WHEN-PRINTED
  899.      @subtitle SUBTITLE-IF-ANY
  900.      @subtitle SECOND-SUBTITLE
  901.      @author AUTHOR
  902.      
  903.      @c  The following two commands
  904.      @c  start the copyright page.
  905.      @page
  906.      @vskip 0pt plus 1filll
  907.      Copyright @copyright{} YEAR COPYRIGHT-OWNER
  908.      
  909.      Published by ...
  910.      
  911.      Permission is granted to ...
  912.      @end titlepage
  913.      
  914.      @node Top, Overview, (dir), (dir)
  915.      
  916.      @ifinfo
  917.      This document describes ...
  918.      
  919.      This document applies to version ...
  920.      of the program named ...
  921.      @end ifinfo
  922.      
  923.      @menu
  924.      * Copying::          Your rights and freedoms.
  925.      * First Chapter::    Getting started ...
  926.      * Second Chapter::              ...
  927.        ...
  928.        ...
  929.      @end menu
  930.      
  931.      @node    First Chapter, Second Chapter, top,      top
  932.      @comment node-name,     next,           previous, up
  933.      @chapter First Chapter
  934.      @cindex Index entry for First Chapter
  935.  
  936. 
  937. File: texi.info,  Node: Header,  Next: Info Summary and Permissions,  Prev: Sample Beginning,  Up: Beginning a File
  938.  
  939. The Texinfo File Header
  940. =======================
  941.  
  942.    Texinfo files start with at least three lines that provide Info and
  943. TeX with necessary information.  These are the `\input texinfo' line,
  944. the `@settitle' line, and the `@setfilename' line.  If you want to run
  945. TeX on just a part of the Texinfo File, you must write the `@settitle'
  946. and `@setfilename' lines between start-of-header and end-of-header
  947. lines.
  948.  
  949.    Thus, the beginning of a Texinfo file looks like this:
  950.  
  951.      \input texinfo   @c -*-texinfo-*-
  952.      @setfilename sample.info
  953.      @settitle Sample Document
  954.  
  955. or else like this:
  956.  
  957.      \input texinfo   @c -*-texinfo-*-
  958.      @c %**start of header
  959.      @setfilename sample.info
  960.      @settitle Sample Document
  961.      @c %**end of header
  962.  
  963. * Menu:
  964.  
  965. * First Line::                  The first line of a Texinfo file.
  966. * Start of Header::             Formatting a region requires this.
  967. * setfilename::                 Tell Info the name of the Info file.
  968. * settitle::                    Create a title for the printed work.
  969. * setchapternewpage::           Start chapters on right-hand pages.
  970. * paragraphindent::             An option to specify paragraph indentation.
  971. * End of Header::               Formatting a region requires this.
  972.  
  973. 
  974. File: texi.info,  Node: First Line,  Next: Start of Header,  Up: Header
  975.  
  976. The First Line of a Texinfo File
  977. --------------------------------
  978.  
  979.    Every Texinfo file that is to be the top-level input to TeX must
  980. begin with a line that looks like this:
  981.  
  982.      \input texinfo   @c -*-texinfo-*-
  983.  
  984. This line serves two functions:
  985.  
  986.   1. When the file is processed by TeX, the `\input texinfo' command
  987.      tells TeX to load the macros needed for processing a Texinfo file.
  988.      These are in a file called `texinfo.tex', which is usually located
  989.      in the `/usr/lib/tex/macros' directory.  TeX uses the backslash,
  990.      `\', to mark the beginning of a command, just as Texinfo uses `@'.
  991.      The `texinfo.tex' file causes the switch from `\' to `@'; before
  992.      the switch occurs, TeX requires `\', which is why it appears at
  993.      the beginning of the file.
  994.  
  995.   2. When the file is edited in GNU Emacs, the `-*-texinfo-*-' mode
  996.      specification tells Emacs to use Texinfo mode.
  997.  
  998. 
  999. File: texi.info,  Node: Start of Header,  Next: setfilename,  Prev: First Line,  Up: Header
  1000.  
  1001. Start of Header
  1002. ---------------
  1003.  
  1004.    Write a start-of-header line on the second line of a Texinfo file.
  1005. Follow the start-of-header line with `@setfilename' and `@settitle'
  1006. lines and, optionally, with other command lines, such as `@smallbook'
  1007. or `@footnotestyle'; and then by an end-of-header line (*note End of
  1008. Header::.).
  1009.  
  1010.    With these lines, you can format part of a Texinfo file for Info or
  1011. typeset part for printing.
  1012.  
  1013.    A start-of-header line looks like this:
  1014.  
  1015.      @c %**start of header
  1016.  
  1017.    The odd string of characters, `%**', is to ensure that no other
  1018. comment is accidentally taken for a start-of-header line.
  1019.  
  1020. 
  1021. File: texi.info,  Node: setfilename,  Next: settitle,  Prev: Start of Header,  Up: Header
  1022.  
  1023. `@setfilename'
  1024. --------------
  1025.  
  1026.    In order to be made into an Info file, a Texinfo file must contain a
  1027. line that looks like this:
  1028.  
  1029.      @setfilename INFO-FILE-NAME
  1030.  
  1031.    Write the `@setfilename' command at the beginning of a line and
  1032. follow it on the same line by the Info file name.  Do not write
  1033. anything else on the line; anything on the line after the command is
  1034. considered part of the file name, including a comment.
  1035.  
  1036.    The `@setfilename' line specifies the name of the Info file to be
  1037. generated.  This name should be different from the name of the Texinfo
  1038. file.  The convention is to write a name with a `.info' extension, to
  1039. produce an Info file name such as `texinfo.info'.
  1040.  
  1041.    Some operating systems cannot handle long file names.  You can run
  1042. into a problem even when the file name you specify is itself short
  1043. enough.  This occurs because the Info formatters split a long Info file
  1044. into short indirect subfiles, and name them by appending `-1', `-2',
  1045. ..., `-10', `-11', and so on, to the original file name.  (*Note Tag
  1046. Files and Split Files: Tag and Split Files.)  The subfile name
  1047. `texinfo.info-10', for example, is too long for some systems; so the
  1048. Info file name for this document is actually `texinfo' rather than
  1049. `texinfo.info'.
  1050.  
  1051.    The Info formatting commands ignore everything written before the
  1052. `@setfilename' line, which is why the very first line of the file (the
  1053. `\input' line) does not need to be commented out.  The `@setfilename'
  1054. line is ignored when you typeset a printed manual.
  1055.  
  1056. 
  1057. File: texi.info,  Node: settitle,  Next: setchapternewpage,  Prev: setfilename,  Up: Header
  1058.  
  1059. `@settitle'
  1060. -----------
  1061.  
  1062.    In order to be made into a printed manual, a Texinfo file must
  1063. contain a line that looks like this:
  1064.  
  1065.      @settitle TITLE
  1066.  
  1067.    Write the `@settitle' command at the beginning of a line and follow
  1068. it on the same line by the title.  This tells TeX the title to use in a
  1069. header or footer.  Do not write anything else on the line; anything on
  1070. the line after the command is considered part of the title, including a
  1071. comment.
  1072.  
  1073.    Conventionally, TeX formats a Texinfo file for double-sided output
  1074. so as to print the title in the left-hand (even-numbered) page headings
  1075. and the current chapter titles in the right-hand (odd-numbered) page
  1076. headings.  (TeX learns the title of each chapter from each `@chapter'
  1077. command.)  Page footers are not printed.
  1078.  
  1079.    Even if you are printing in a single-sided style, TeX looks for an
  1080. `@settitle' command line, in case you include the manual title in the
  1081. heading.
  1082.  
  1083.    The `@settitle' command should precede everything that generates
  1084. actual output in TeX.
  1085.  
  1086.    Although the title in the `@settitle' command is usually the same as
  1087. the title on the title page, it does not affect the title as it appears
  1088. on the title page.  Thus, the two do not need not match exactly;  and
  1089. the title in the `@settitle' command can be a shortened or expanded
  1090. version of the title as it appears on the title page. (*Note
  1091. `@titlepage': titlepage.)
  1092.  
  1093.    TeX prints page headings only for that text that comes after the
  1094. `@end titlepage' command in the Texinfo file, or that comes after an
  1095. `@headings' command that turns on headings.  (*Note The `@headings'
  1096. Command: headings on off, for more information.)
  1097.  
  1098.    You may, if you wish, create your own, customized headings and
  1099. footings.  *Note Page Headings: Headings, for a detailed discussion of
  1100. this process.
  1101.  
  1102. 
  1103. File: texi.info,  Node: setchapternewpage,  Next: paragraphindent,  Prev: settitle,  Up: Header
  1104.  
  1105. `@setchapternewpage'
  1106. --------------------
  1107.  
  1108.    In a book or a manual, text is usually printed on both sides of the
  1109. paper, chapters start on right-hand pages, and right-hand pages have
  1110. odd numbers.  But in short reports, text often is printed only on one
  1111. side of the paper.  Also in short reports, chapters sometimes do not
  1112. start on new pages, but are printed on the same page as the end of the
  1113. preceding chapter, after a small amount of vertical whitespace.
  1114.  
  1115.    You can use the `@setchapternewpage' command with various arguments
  1116. to specify how TeX should start chapters and whether it should typeset
  1117. pages for printing on one or both sides of the paper (single-sided or
  1118. double-sided printing).
  1119.  
  1120.    Write the `@setchapternewpage' command at the beginning of a line
  1121. followed by its argument.
  1122.  
  1123.    For example, you would write the following to cause each chapter to
  1124. start on a fresh odd-numbered page:
  1125.  
  1126.      @setchapternewpage odd
  1127.  
  1128.    You can specify one of three alternatives with the
  1129. `@setchapternewpage' command:
  1130.  
  1131. `@setchapternewpage off'
  1132.      Cause TeX to typeset a new chapter on the same page as the last
  1133.      chapter, after skipping some vertical whitespace.  Also, cause TeX
  1134.      to format page headers for single-sided printing. (You can
  1135.      override the headers format with the `@headings double' command;
  1136.      see *Note The `@headings' Command: headings on off.)
  1137.  
  1138. `@setchapternewpage on'
  1139.      Cause TeX to start new chapters on new pages and to typeset page
  1140.      headers for single-sided printing.  This is the form most often
  1141.      used for short reports.
  1142.  
  1143.      This alternative is the default.
  1144.  
  1145. `@setchapternewpage odd'
  1146.      Cause TeX to start new chapters on new, odd-numbered pages
  1147.      (right-handed pages) and to typeset for double-sided printing.
  1148.      This is the form most often used for books and manuals.
  1149.  
  1150. Texinfo does not have an `@setchapternewpage even' command.
  1151.  
  1152. (You can countermand or modify an `@setchapternewpage' command with an
  1153. `@headings' command.  *Note The `@headings' Command: headings on off.)
  1154.  
  1155.    At the beginning of a manual or book, pages are not numbered--for
  1156. example, the title and copyright pages of a book are not numbered.  By
  1157. convention, table of contents pages are numbered with roman numerals
  1158. and not in sequence with the rest of the document.
  1159.  
  1160.    Since an Info file does not have pages, the `@setchapternewpage'
  1161. command has no effect on it.
  1162.  
  1163.    Usually, you do not write an `@setchapternewpage' command for
  1164. single-sided printing, but accept the default which is to typeset for
  1165. single-sided printing and to start new chapters on new pages.  Usually,
  1166. you write an `@setchapternewpage odd' command for double-sided printing.
  1167.  
  1168. 
  1169. File: texi.info,  Node: paragraphindent,  Next: End of Header,  Prev: setchapternewpage,  Up: Header
  1170.  
  1171. Paragraph Indenting
  1172. -------------------
  1173.  
  1174.    The Info formatting commands may insert spaces at the beginning of
  1175. the first line of each paragraph, thereby indenting that paragraph.  You
  1176. can use the `@paragraphindent' command to specify the indentation.
  1177. Write an `@paragraphindent' command at the beginning of a line followed
  1178. by either `asis' or a number.  The template is:
  1179.  
  1180.      @paragraphindent INDENT
  1181.  
  1182.    The Info formatting commands indent according to the value of INDENT:
  1183.  
  1184.    * If the value of INDENT is `asis', the Info formatting commands do
  1185.      not change the existing indentation.
  1186.  
  1187.    * If the value of INDENT is 0, the Info formatting commands delete
  1188.      existing indentation.
  1189.  
  1190.    * If the value of INDENT is greater than 0, the Info formatting
  1191.      commands indent the paragraph by that number of spaces.
  1192.  
  1193.    The default value of INDENT is `asis'.
  1194.  
  1195.    Write the `@paragraphindent' command before or shortly after the
  1196. end-of-header line at the beginning of a Texinfo file.  (If you write
  1197. the command between the start-of-header and end-of-header lines, the
  1198. region formatting commands indent paragraphs as specified.)
  1199.  
  1200.    A peculiarity of `texinfo-format-buffer' and `texinfo-format-region'
  1201. is that they do not indent (nor fill) paragraphs that contain `@w' or
  1202. `@*' commands.  *Note Refilling Paragraphs::, for a detailed
  1203. description of what goes on.
  1204.  
  1205. 
  1206. File: texi.info,  Node: End of Header,  Prev: paragraphindent,  Up: Header
  1207.  
  1208. End of Header
  1209. -------------
  1210.  
  1211.    Follow the header lines with an end-of-header line.  An
  1212. end-of-header line looks like this:
  1213.  
  1214.      @c %**end of header
  1215.  
  1216.    If you include the `@setchapternewpage' command between the
  1217. start-of-header and end-of-header lines, TeX will typeset a region as
  1218. that command specifies.  Similarly, if you include an `@smallbook'
  1219. command between the start-of-header and end-of-header lines, TeX will
  1220. typeset a region in the "small" book format.
  1221.  
  1222.    The reason for the odd string of characters (`%**') is so that the
  1223. `texinfo-tex-region' command does not accidentally find something that
  1224. it should not when it is looking for the header.
  1225.  
  1226.    The start-of-header line and the end-of-header line are Texinfo mode
  1227. variables that you can change.
  1228.  
  1229. 
  1230. File: texi.info,  Node: Info Summary and Permissions,  Next: Titlepage & Copyright Page,  Prev: Header,  Up: Beginning a File
  1231.  
  1232. Summary and Copying Permissions for Info
  1233. ========================================
  1234.  
  1235.    The title page and the copyright page appear only in the printed
  1236. copy of the manual; therefore, the same information must be inserted in
  1237. a section that appears only in the Info file.  This section usually
  1238. contains a brief description of the contents of the Info file, a
  1239. copyright notice, and copying permissions.
  1240.  
  1241.    The copyright notice should read:
  1242.  
  1243.      Copyright YEAR COPYRIGHT-OWNER
  1244.  
  1245. and be put on a line by itself.
  1246.  
  1247.    Standard text for the copyright permissions is contained in an
  1248. appendix to this manual; see *Note `ifinfo' Copying Permissions: ifinfo
  1249. Permissions, for the complete text.
  1250.  
  1251.    The permissions text appears in an Info file *before* the first
  1252. node.  This mean that a reader does *not* see this text when reading
  1253. the file using Info, except when using the advanced Info command `g *'.
  1254.  
  1255. 
  1256. File: texi.info,  Node: Titlepage & Copyright Page,  Next: The Top Node,  Prev: Info Summary and Permissions,  Up: Beginning a File
  1257.  
  1258. The Title and Copyright Pages
  1259. =============================
  1260.  
  1261.    A manual's name and author are usually printed on a title page.
  1262. Sometimes copyright information is printed on the title page as well;
  1263. more often, copyright information is printed on the back of the title
  1264. page.
  1265.  
  1266.    The title and copyright pages appear in the printed manual, but not
  1267. in the Info file.  Because of this, it is possible to use several
  1268. slightly obscure TeX typesetting commands that cannot be used in an
  1269. Info file.  In addition, this part of the beginning of a Texinfo file
  1270. contains the text of the copying permissions that will appear in the
  1271. printed manual.
  1272.  
  1273.    *Note Titlepage Copying Permissions: Titlepage Permissions, for the
  1274. standard text for the copyright permissions.
  1275.  
  1276. * Menu:
  1277.  
  1278. * titlepage::                   Create a title for the printed document.
  1279. * titlefont center sp::         The `@titlefont', `@center',
  1280.                                   and `@sp' commands.
  1281. * title subtitle author::       The `@title', `@subtitle',
  1282.                                   and `@author' commands.
  1283. * Copyright & Permissions::     How to write the copyright notice and
  1284.                                   include copying permissions.
  1285. * end titlepage::               Turn on page headings after the title and
  1286.                                   copyright pages.
  1287. * headings on off::             An option for turning headings on and off
  1288.                                   and double or single sided printing.
  1289.  
  1290.