diff options
author | Mark Murray <markm@FreeBSD.org> | 1999-01-15 05:58:28 +0000 |
---|---|---|
committer | Mark Murray <markm@FreeBSD.org> | 1999-01-15 05:58:28 +0000 |
commit | 24b95c55fe11e3bf0b59d0479b14e2470b7a27fd (patch) | |
tree | 1543b4c87142b5cc110c277ce8553e7bbdddd284 /contrib/texinfo/makeinfo | |
parent | 2a8fe203f64004effe05d5dd2ff63cebd2893d6f (diff) |
Add a file that I forgot to "cvs add", and remove a lot of stuff that is
no longer a part of texinfo-3.12.
Pointed out by: dg (partially)
Notes
Notes:
svn path=/head/; revision=42688
Diffstat (limited to 'contrib/texinfo/makeinfo')
-rw-r--r-- | contrib/texinfo/makeinfo/macro.texi | 177 | ||||
-rw-r--r-- | contrib/texinfo/makeinfo/makeinfo.texi | 303 |
2 files changed, 0 insertions, 480 deletions
diff --git a/contrib/texinfo/makeinfo/macro.texi b/contrib/texinfo/makeinfo/macro.texi deleted file mode 100644 index 8a3fe802392e..000000000000 --- a/contrib/texinfo/makeinfo/macro.texi +++ /dev/null @@ -1,177 +0,0 @@ -@c This file is included in makeinfo.texi. -@c -@ifinfo -@comment Here are some useful examples of the macro facility. - -@c Simply insert the right version of the texinfo name. -@macro texinfo{} -TeXinfo -@end macro - -@macro dfn{text} -@dfn{\text\} -@cpindex \text\ -@end macro - -@c Define a macro which expands to a pretty version of the name of the -@c Makeinfo program. -@macro makeinfo{} -@code{Makeinfo} -@end macro - -@c Define a macro which is used to define other macros. This one makes -@c a macro which creates a node and gives it a sectioning command. Note -@c that the created macro uses the original definition within the -@c expansion text. This takes advantage of the non-recursion feature of -@c macro execution. -@macro node_define{orig-name} -@macro \orig-name\{title} -@node \title\ -@\orig-name\ \title\ -@end macro -@end macro - -@c Now actually define a new set of sectioning commands. -@node_define {chapter} -@node_define {section} -@node_define {subsection} -@end ifinfo - -@chapter The Macro Facility - -This chapter describes the new macro facility. - -A @dfn{macro} is a command that you define in terms of other commands. -It doesn't exist as a @texinfo{} command until you define it as part of -the input file to @makeinfo{}. Once the command exists, it behaves much -as any other @texinfo{} command. Macros are a useful way to ease the -details and tedium of writing a `correct' info file. The following -sections explain how to write and invoke macros. - -@menu -* How to Use Macros in @texinfo{}:: - How to use the macro facility. - -* Using Macros Recursively:: - How to write a macro which does (or doesn't) recurse. - -* Using @texinfo{} Macros As Arguments:: - Passing a macro as an argument. -@end menu - -@section How to Use Macros in @texinfo{} - -Using macros in @texinfo{} is easy. First you define the macro. After -that, the macro command is available as a normal @texinfo{} command. -Here is what a definition looks like: - -@example -@@macro @var{name}@{@var{arg1}, @var{@dots{}} @var{argn}@} -@var{@texinfo{} commands@dots{}} -@@end macro -@end example - -The arguments that you specify that the macro takes are expanded with -the actual parameters used when calling the macro if they are seen -surrounded by backslashes. For example, here is a definition of -@code{@@codeitem}, a macro which can be used wherever @code{@@item} can -be used, but which surrounds its argument with @code{@@code@{@dots{}@}}. - -@example -@@macro codeitem@{item@} -@@item @@code@{\item\@} -@@end macro -@end example - -When the macro is expanded, all of the text between the @code{@@macro} -and @code{@@end macro} is inserted into the document at the expansion -point, with the actual parameters substituted for the named parameters. -So, a call to the above macro might look like: - -@example -@@codeitem@{Foo@} -@end example - -and @makeinfo{} would execute the following code: - -@example -@@item @@code@{Foo@} -@end example - -A special case is made for macros which only take a single argument, and -which are invoked without any brace characters (i.e., -@samp{@{}@dots{}@samp{@}}) surrounding an argument; the rest of the line -is supplied as is as the sole argument to the macro. This special case -allows one to redefine some standard @texinfo{} commands without -modifying the input file. Along with the non-recursive action of macro -invocation, one can easily redefine the sectioning commands to also -provide index entries: - -@example -@@macro chapter@{name@} -@@chapter \name\ -@@findex \name\ -@@end macro -@end example - -Thus, the text: - -@example -@@chapter strlen -@end example - -will expand to: - -@example -@@chapter strlen -@@findex strlen -@end example - -@section Using Macros Recursively - -Normally, while a particular macro is executing, any call to that macro -will be seen as a call to a builtin @texinfo{} command. This allows one -to redefine a builtin @texinfo{} command as a macro, and then use that -command within the definition of the macro itself. For example, one -might wish to make sure that whereever a term was defined with -@code{@@dfn@{@dots{}@}}, the location of the definition would appear -in the concept index for the manual. Here is a macro which redefines -@code{@@dfn} to do just that: - -@example -@@macro dfn@{text@} -@@dfn@{\text\@} -@@cpindex \text\ -@@end macro -@end example - -Note that we used the builtin @texinfo{} command @code{@@dfn} within our -overriding macro definition. - -This behaviour itself can be overridden for macro execution by writing a -special @dfn{macro control command} in the definition of the macro. The -command is considered special because it doesn't affect the output text -directly, rather, it affects the way in which the macro is defined. One -such special command is @code{@@allow-recursion}. - -@example -@@macro silly@{arg@} -@@allow-recursion -\arg\ -@@end macro -@end example - -Now @code{@@silly} is a macro that can be used within a call to itself: - -@example -This text @@silly@{@@silly@{some text@}@} is ``some text''. -@end example - -@section Using @texinfo{} Macros As Arguments - -@printindex cp -How to use @texinfo{} macros as arguments to other @texinfo{} macros. - -@bye - - diff --git a/contrib/texinfo/makeinfo/makeinfo.texi b/contrib/texinfo/makeinfo/makeinfo.texi deleted file mode 100644 index f379ae07f6c5..000000000000 --- a/contrib/texinfo/makeinfo/makeinfo.texi +++ /dev/null @@ -1,303 +0,0 @@ -\input texinfo @c -*-texinfo-*- -@comment %**start of header -@setfilename makeinfo.info -@set VERSION 1.61 -@paragraphindent none -@comment %**start of header -@comment $Id: makeinfo.texi,v 1.2 1996/09/28 21:49:18 karl Exp $ - -@dircategory Texinfo documentation system -@direntry -* makeinfo: (makeinfo). Convert Texinfo source to Info or plain ASCII. -@end direntry - -@ifinfo -This file is an extract from the @cite{Texinfo} manual.@* -It documents Makeinfo, a program that converts Texinfo -files into Info files. - -Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. - -Permission is granted to make and distribute verbatim copies of -this manual provided the copyright notice and this permission notice -are preserved on all copies. - -@ignore -Permission is granted to process this file through TeX and print the -results, provided the printed document carries copying permission -notice identical to this one except for the removal of this paragraph -(this paragraph not being relevant to the printed manual). - -@end ignore -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided that the entire -resulting derived work is distributed under the terms of a permission -notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions, -except that this permission notice may be stated in a translation approved -by the Free Software Foundation. -@end ifinfo - -@titlepage -@title GNU Makeinfo -@author Brian J. Fox and Robert J. Chassell - -@page -@vskip 0pt plus 1filll -Copyright @copyright{} 1992, 1993, 1994, 1995 Free Software Foundation, Inc. - -Permission is granted to make and distribute verbatim copies of -this manual provided the copyright notice and this permission notice -are preserved on all copies. - -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided that the entire -resulting derived work is distributed under the terms of a permission -notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions, -except that this permission notice may be stated in a translation approved -by the Free Software Foundation. -@end titlepage - -@node Top -@chapter What is @code{makeinfo}? - -@iftex -This file documents the use of the @code{makeinfo} program, versions -@value{VERSION} and later. It is an extract from the @cite{Texinfo} manual. -@end iftex - -@code{makeinfo} is a program for converting @dfn{Texinfo} files into @dfn{Info} -files. Texinfo is a documentation system that uses a single source file to -produce both on-line information and printed output. - -You can read the on-line information using Info; type @code{info} to -learn about Info. -@ifinfo -@xref{Top, Texinfo, Overview of Texinfo, Texinfo, Texinfo}, -@end ifinfo -@iftex -See the @cite{Texinfo} manual, -@end iftex -to learn about the Texinfo documentation system. - -@menu -* Formatting Control:: Controlling the width of lines, paragraph - indentation, and other similar formatting. - -* Options:: Command line options which control the - behaviour of Makeinfo. - -* Pointer Validation:: How Makeinfo can help you to track node - references through complex Texinfo files. - -* Index:: Index of Concepts. -@end menu - -@c Removed this for 3.8 until it's time to rewrite it. -@c * The Macro Facility:: Makeinfo allows the use of @dfn{macros}. - -@node Formatting Control -@section Controlling Paragraph Formats - -Without any special options, @code{makeinfo} @dfn{fills} the paragraphs that -it outputs to an Info file. Filling is the process of breaking and connecting -lines so that lines are the same length as or shorter than the number -specified as the fill column. Lines are broken between words. With -@code{makeinfo}, you can control: - -@itemize @bullet -@item -The width of each paragraph (the @dfn{fill-column}). -@item -The amount of indentation that the first line of -each paragraph receives (the @dfn{paragraph-indentation}). -@end itemize - -@node Options -@section Command Line Options - -The following command line options are available for @code{makeinfo}. - -@need 100 -@table @code -@item -D @var{var} -Cause @var{var} to be defined. This is equivalent to -@code{@@set @var{var}} in the Texinfo file. - -@need 150 -@item --error-limit @var{limit} -Set the maximum number of errors that @code{makeinfo} will report -before exiting (on the assumption that continuing would be useless). -The default number of errors that can be reported before -@code{makeinfo} gives up is 100.@refill - -@need 150 -@item --fill-column @var{width} -Specify the maximum number of columns in a line; this is the right-hand -edge of a line. Paragraphs that are filled will be filled to this -width. The default value for @code{fill-column} is 72. -@refill - -@item --footnote-style @var{style} -Set the footnote style to @var{style}, either @samp{end} for the end -node style or @samp{separate} for the separate node style. The value -set by this option overrides the value set in a Texinfo file by an -@code{@@footnotestyle} command. When the footnote style is -@samp{separate}, @code{makeinfo} makes a new node containing the -footnotes found in the current node. When the footnote style is -@samp{end}, @code{makeinfo} places the footnote references at the end -of the current node.@refill - -@need 150 -@item -I @var{dir} -Add @code{dir} to the directory search list for finding files that are -included using the @code{@@include} command. By default, -@code{makeinfo} searches only the current directory. - -@need 150 -@item --no-headers -Do not include menus or node lines in the output. This results in an -@sc{ascii} file that you cannot read in Info since it does not contain -the requisite nodes or menus; but you can print such a file in a -single, typewriter-like font and produce acceptable output. - -@need 150 -@item --no-split -Suppress the splitting stage of @code{makeinfo}. Normally, large -output files (where the size is greater than 70k bytes) are split into -smaller subfiles, each one approximately 50k bytes. If you specify -@samp{--no-split}, @code{makeinfo} will not split up the output -file.@refill - -@need 100 -@item --no-pointer-validate -@item --no-validate -Suppress the pointer-validation phase of @code{makeinfo}. Normally, -after a Texinfo file is processed, some consistency checks are made to -ensure that cross references can be resolved, etc. -@xref{Pointer Validation}.@refill - -@need 150 -@item --no-warn -Suppress the output of warning messages. This does @emph{not} -suppress the output of error messages, only warnings. You might -want this if the file you are creating has examples of Texinfo cross -references within it, and the nodes that are referenced do not actually -exist.@refill - -@item --no-number-footnotes -Supress automatic footnote numbering. By default, @code{makeinfo} -numbers each footnote sequentially in a single node, resetting the -current footnote number to 1 at the start of each node. - -@need 150 -@item --output @var{file} -@itemx -o @var{file} -Specify that the output should be directed to @var{file} and not to the -file name specified in the @code{@@setfilename} command found in the Texinfo -source. @var{file} can be the special token @samp{-}, which specifies -standard output. - -@need 150 -@item --paragraph-indent @var{indent} -Set the paragraph indentation style to @var{indent}. The value set by -this option overrides the value set in a Texinfo file by an -@code{@@paragraphindent} command. The value of @var{indent} is -interpreted as follows:@refill - -@itemize @bullet -@item -If the value of @var{indent} is @samp{asis}, do not change the -existing indentation at the starts of paragraphs.@refill - -@item -If the value of @var{indent} is zero, delete any existing -indentation.@refill - -@item -If the value of @var{indent} is greater than zero, indent each -paragraph by that number of spaces.@refill -@end itemize - -@need 100 -@item --reference-limit @var{limit} -Set the value of the number of references to a node that -@code{makeinfo} will make without reporting a warning. If a node has more -than this number of references in it, @code{makeinfo} will make the -references but also report a warning.@refill - -@need 150 -@item -U @var{var} -Cause @var{var} to be undefined. This is equivalent to -@code{@@clear @var{var}} in the Texinfo file. - -@need 100 -@item --verbose -Cause @code{makeinfo} to display messages saying what it is doing. -Normally, @code{makeinfo} only outputs messages if there are errors or -warnings.@refill - -@need 100 -@item --version -Report the version number of this copy of @code{makeinfo}.@refill - -@item --help -Show a summary of the commend line arguments to @code{makeinfo}. -@end table - -@node Pointer Validation -@section Pointer Validation -@cindex Pointer validation with @code{makeinfo} -@cindex Validation of pointers - -If you do not suppress pointer-validation (by using the -@samp{--no-pointer-validation} option), @code{makeinfo} -will check the validity of the final Info file. Mostly, -this means ensuring that nodes you have referenced -really exist. Here is a complete list of what is -checked:@refill - -@enumerate -@item -If a `Next', `Previous', or `Up' node reference is a reference to a -node in the current file and is not an external reference such as to -@file{(dir)}, then the referenced node must exist.@refill - -@item -In every node, if the `Previous' node is different from the `Up' node, -then the `Previous' node must also be pointed to by a `Next' node.@refill - -@item -Every node except the `Top' node must have an `Up' pointer.@refill - -@item -The node referenced by an `Up' pointer must contain a reference to the -current node in some manner other than through a `Next' reference. -This includes menu entries and cross references.@refill - -@item -If the `Next' reference of a node is not the same as the `Next' reference -of the `Up' reference, then the node referenced by the `Next' pointer -must have a `Previous' pointer that points back to the current node. -This rule allows the last node in a section to point to the first node -of the next chapter.@refill -@end enumerate - -@c We don't want to advertise redefining commands. -@c lowersections -@c include macro.texi -@c raisesections - -@lowersections -@node Index -@appendix Index -@printindex cp -@raisesections - -@contents -@bye |