aboutsummaryrefslogtreecommitdiffstats
path: root/info/gpp.texinfo
diff options
context:
space:
mode:
Diffstat (limited to 'info/gpp.texinfo')
-rw-r--r--info/gpp.texinfo254
1 files changed, 0 insertions, 254 deletions
diff --git a/info/gpp.texinfo b/info/gpp.texinfo
deleted file mode 100644
index fcc566a..0000000
--- a/info/gpp.texinfo
+++ /dev/null
@@ -1,254 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-
-@c %**start of header
-@setfilename gpp.info
-@settitle ?{GPP}
-@afourpaper
-@documentencoding UTF-8
-@documentlanguage en
-@finalout
-@c %**end of header
-
-
-@dircategory Development
-@direntry
-* ?{GPP}: (?{GPP}). Bash-based preprocessor for anything
-@end direntry
-
-
-@copying
-Copyright @copyright{} 2013, 2015 Mattias Andrée
-
-@quotation
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.3 or
-any later version published by the Free Software Foundation; with no
-Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
-Texts. A copy of the license is included in the section entitled
-``GNU Free Documentation License''.
-@end quotation
-@end copying
-
-@ifnottex
-@node Top
-@top gpp -- Bash-based preprocessor for anything
-@insertcopying
-@end ifnottex
-
-@titlepage
-@title gpp
-@subtitle Bash-based preprocessor for anything
-@author by Mattias Andrée (maandree)
-
-@page
-@vskip 0pt plus 1filll
-@insertcopying
-@end titlepage
-
-@contents
-
-
-
-@menu
-* Overview:: Brief overview of @command{?{GPP}}.
-* Invoking:: Invoking @command{?{GPP}}.
-* Syntax:: Syntax of @command{?{GPP}}.
-* GNU Free Documentation License:: Copying and sharing this manual.
-@end menu
-
-
-
-@node Overview
-@chapter Overview
-
-General Preprocessor (gpp) is a preprocessor
-based on GNU Bash that can be used for anything.
-
-By default an at-sign (@@) is used as prefix
-for preprocessor directives, but any single
-single character can be used. If the prefix
-symbol is directly followed by itself it results
-to the symbol itself rather than a preprocessor
-directive.
-
-A file written with gpp contains, text that
-can be in any format, gpp does not care how
-it is formatted, and lines written in GNU Bash
-that are executed and termine which part of
-the text should be keept and how it should
-be repeated. A line can also be partially
-written in GNU Bash to modify it. Each line
-that is not in GNU Bash as actually treated
-as a echo instruction.
-
-The preprocessor will try to keep the lines in
-the output files in the same position as in
-the source files. This will however stop to
-work if the processor directives includes
-loops or instructions that returns multiple
-lines.
-
-
-
-@node Invoking
-@chapter Invoking
-
-Syntax for invoking @command{?{GPP}}:
-@command{?{GPP} [options...]}
-
-Short options must not be joined and
-the value for a flag must be in a
-separate argument from the flag itself.
-
-For example, @option{--symbol=X} is not allowed,
-but @option{--symbol X} is.
-
-@table @option
-@item -s
-@itemx --symbol
-Set the prefix symbol for preprocessor directives. (Default: @@)
-
-@item -e
-@itemx --encoding
-Set the encoding of file.
-
-@item -n
-@itemx --iterations
-Number of iterations to run the preprocessing in. (Default: 1)
-
-@item -u
-@itemx --unshebang
-Blank out the shebang line. Notice that the line is not removed,
-it is just cleared. You can use a shebang line make to gpp
-preprocess the file when executed.
-
-If @option{--unshebang} is used twice, the second line in the
-file will be moved up to the top of the file and the initial
-shebang line will be removed. A blank line will be inserted
-after the new top line will be added to keep the line numbers
-in the output file as near as possible to the line numbers
-in the input file. The intension of this option is that you
-can have two shebang lines, one on the first line for preprocessing
-when the file is executed, and one shebang line on the second
-line for output file.
-
-@item -i
-@itemx --input
-Set the input file. (Default: /dev/stdin)
-
-@item -o
-@itemx --output
-Set the output file. (Default: /dev/stdout)
-
-@item -f
-@itemx --file
-Set both input file and output file.
-
-@item -D
-@itemx --export
-Declare a environment variable. The syntax
-@code{NAME=VALUE} is used for the argument,
-but if the argument does not include an
-equals sign the value 1 will be used.
-
-@item -v
-@itemx --version
-Print program name and version and exit.
-
-@item -c
-@itemx --copying
-Print copyright notice and exit.
-
-@end table
-
-
-
-@node Syntax
-@chapter Syntax
-
-To create a preprocess directive, begin the
-line with @code{@@>}. For example, the follow
-code will only keep the `Hello world' line
-if the environment variable @var{HELLO} is
-defined and is not empty.
-
-@example
-@@>[ -z "$HELLO" ] &&
-Hello world
-@end example
-
-If you want to write a mutliline preprocessor
-directive you can begin the first line with
-@code{@@<} and begin the last line with
-@code{@@>}, instead of having each line start
-with @code{@@>}. For example, if you want
-to create a preprocess function to make a
-ASCII text uppercase you can write:
-
-@example
-@@<uppercase () @{
- lower=qwertyuiopasdfghjklzxcvbnm
- upper=QWERTYUIOPASDFGHJKLZXCVBNM
- sed y/$lower/$upper/ <<<"$*"
-@@>@}
-@end example
-
-Now assume that you have this @command{uppercase}
-preprocessor function defined on the top of a
-document. Also assume that you are logged in
-as the user `twilight' and therefor have the
-environment variable @var{USER} set to `twilight'.
-
-If you in the document, below the definition
-of @command{uppercase}, insert the line
-
-@example
-Your are logged in as @@(uppercase $USER).
-@end example
-
-After preprocessing it will say
-
-@example
-Your are logged in as TWILIGHT.
-@end example
-
-@@(...) can be used inline. It executes a
-command that can either be defined as a
-preprocessor function or be an external program.
-Preprocossor directives cannot be used inside
-it, everything in it is in GNU Bash.
-
-@@@{...@} is another inline preprocessor directive,
-you can put the name of a preprocessor variable
-or environment variable inside it to get the
-variable's value. For example, if you are
-logged in as `twilight'
-
-@example
-Your are logged in as @@@{USER@}.
-@end example
-
-@noindent
-will after preprocessing say
-
-@example
-Your are logged in as twilight.
-@end example
-
-@noindent
-@command{gpp} supports all modifications to the
-result that Bash does. For example, if you want
-the value to be uppercased you can write
-
-@example
-Your are logged in as @@@{USER^^@}.
-@end example
-
-
-
-@node GNU Free Documentation License
-@appendix GNU Free Documentation License
-@include fdl.texinfo
-
-@bye
-