Provided by: yodl_3.00.0-6ubuntu1_i386 bug


       yodl - main Yodl converter


       yodl [OPTION]... [FILE]...


       Yodl  is a package that implements a pre-document language and tools to
       process it.  The idea of Yodl is that you write  up  a  document  in  a
       pre-language,  then  use the tools (e.g. yodl2html(1)) to convert it to
       some final document language.  Current converters are  for  HTML,  man,
       LaTeX, text and an experimental xml converter.  Main document types are
       "article", "report", "book" "manpage" and "letter".  The Yodl  document
       language is designed to be easy to use and extensible.

       NOTE:  Starting  with Yodl version 3.00.0 Yodl’s default file inclusion
       behavior has changed. The current working directory no  longer  remains
       fixed  at  the  directory  in  which  Yodl  is called, but is volatile,
       changing to the directory in which a yodl-file is located. This has the
       advantage  that  Yodl’s file inclusion behavior now matches the way C’s
       #include directive operates; it has the disadvantage that it may  break
       some  current  documents.  Conversion,  however  is  simple  but can be
       avoided altogether if the -L (--legacy-include)  option  is  used  (see


       o      -D, --define=NAME[=VALUE]: Defines name as a symbol. This option
              is acts like DEFINESYMBOL(NAME)(). If =VALUE is added,  NAME  is
              initialized to VALUE (identically to DEFINESYMBOL(NAME)(VALUE)).

       o      -d,   --definemacro=NAME=EXPANSION:   Defines   NAME   as  macro
              expanding to EXPANSION

       o      -h, --help: usage information is written to the  standard  error
              stream, describing all of Yodl’s options.

       o      -i,  --index[=file]:  `file’  is  the name of the index file. By
              default <outputbase>.idx is used.  No  default  when  output  is
              written  to  stdout.  The  index  file  is  processed  by Yodl’s
              post-processor, yodlpost.

       o      -I,  --include=DIR:  This  defines   the   system-wide   include
              directory  where  YODL  searches  for  its  input  files. E.g. a
              statement to include a given file, like:
              will cause Yodl to search for the  file  latex  in  the  current
              directory,  and  when  that  fails,  in  the system-wide include
              directory. The system-wide include directory  is  typically  the
              place  where  the  maintainer of a system stores macro-files for
              Yodl. This searching process applies to files that are  included
              inside  a  document but also applies to filenames on the command
              line when invoking the YODL program.

              The name of the included file (latex in the  above  example)  is
              the  bare name, the YODL program will supply a default extension
              (.yo), if necessary.

              The -I option overrules Yodl’s built-in name for the system-wide
              include  directory.  The built-in name is defined when compiling
              Yodl, and is, e.g., /usr/share/yodl. Furthermore, the definition
              may  contain  $HOME,  which  will be replaced by the user’s home
              directory if  the  `home’  or  `HOME’  environment  variable  is
              defined.  It  may  also  contain  $STD_INCLUDE,  which  will  be
              replaced by the compilation defined standard include  path.  The
              standard  includepath may be overruled by either (in that order)
              the command line switch -I or the YODL_INCLUDE_PATH  environment
              variable.  By  default,  the  current  directory is added to the
              standard include path. Hewver, when -I or  YODL_INCLUDE_PATH  is
              used,  the  current directory must be mentioned explicitly.  The
              individual directories need not be terminated by a  /-character.
              In  distributed .deb archives, the standard directory is defined
              as /usr/share/yodl (prefixed by the current working directory).

       o      -k, --keep-ws: Since YODL version 2.00 blanks at the  begin  and
              end  of  lines  are ignored, even without a trailing \, when the
              `white space level’ is non-zero.  Earlier  versions  kept  these
              blanks.  The  legacy handling of white space at end of lines can
              by obtained using the -k flag. Note that white space are  always
              kept when using verbatim copying, and when the white-space level
              is zero.

       o      -l,  --live-data=HOW:  This  option  controls  the  policy   for
              executing  SYSTEM or PIPETHROUGH commands; HOW being none (0) by
              default. The HOW argument can have the following values:

       o      none or 0: (the default): No macros calling system programs  are

       o      confirm  or  1:  The macros can be executed, but only after user
              confirmation is obtained. The macros in question are shown while
              the  Yodl document is processed, and the user must either accept
              or reject the call.

       o      report or 2: The macros are executed,  but  what  is  called  is
              shown  during  the  Yodl  run  (if  the WARNING message level is

       o      ok or 3: The macros are executed, and not shown during the  run.
              Be  careful  when  using  --live-data ok. It should be used only
              when a document is clearly `unharmful’.

       o      -m, --messages=SET: Set  the  so-called  `message  level’  to  a
              combination of the SET acdeinw. The letters of this set have the
              following meanings:

       o      a: alert. When an alert-error occurs, Yodl terminates. Here Yodl
              requests  something  of  the  system (like a get_cwd()), but the
              system fails.

       o      c: critical. When a critical error occurs, Yodl terminates.  The
              message  itself can be suppressed, but exiting can’t. A critical
              condition is, e.g., the omission of an  open  parenthesis  at  a
              location where a parameter list should appear, or a non-existing
              file in an INCLUDEFILE specification (as  this  file  should  be
              parsed).    A   non-existing   file   with   a   NOEXPANDINCLUDE
              specification is a plain (non-critical) error.

       o      d: debug. Probably too much info, like getting information about
              each character that was read by Yodl.

       o      e: error. An error (like doubly defined symbols). Error messages
              will not stop the parsing of the input (up to a  maximum  number
              of errors), but no output is generated.

       o      i:  info.  Not as detailed as `debug’, but still very much info,
              like information about media switches.

       o      n:  notice.  Information  about,  e.g.,  calls  to  the  builtin
              function calls.

       o      w:  warning.  Something  you should know about, but probably not
              affecting Yodl’s  proper  functioning  Non-configurable  is  the
              handling  of  an  emergency  message.  These  messages  can’t be
              suppressed, but shouldn’t happen, as they point to some internal
              error.  It  would  be  appreciated  to receive information about
              these messages if they ever occur.

       o      -n, --max-nested-files=NR: This option causes Yodl to abort when
              the  number  of  nested  input  files exceeds NR, which is 20 by
              default.  Exceeding  this  number  usually  means   a   circular
              definition  somewhere  in the document. This is the case when, a
              file a.yo includes b.yo, while b.yo includes a.yo etc.. It  does
              not prevent recursive macro- or subst-replacements. For that the
              -r (--max-replacements) option is available.

       o      -o, --output=FILE: This option causes Yodl to write  its  output
              to  FILE.  By  default,  the  output goes to the standard output
              stream. E.g., you can use YODL to read a file input and to write
              to output with the following two commands:

                      yodl input > output
                      yodl -ooutput input

              The  difference  being  that in the latter case an index file is
              generated, but not in the former case. Notice  that  writing  an
              index file can be forced when the --index option is specified.

       o      -p,  --preload=CMD:  This  option `pre-loads’ the string cmd. It
              acts as though cmd was the first command in the first input file
              that is processed by YODL.

              More  than  one  --preload=CMD  options  may  be  present on the
              command line.  Each of the commands is then processed  in  turn,
              before reading any file.

       o      -r, --max-replacements=NR: This option causes Yodl to abort when
              the number of macro calls or  subst-replacements  exceeds  NR  *
              10,000.   By  default, NR equals 1. Setting --max-replacements=0
              implies  that  no  macro-  or   subst-replacement   checks   are

       o      -t,  --trace:  This  option enables tracing: while parsing, Yodl
              writes its output to the standard error stream. As is  the  case
              with  the  -k  option,  this  option  is  defined  for debugging
              purposes only.

       o      -V, --version. This option will show YODL’s actual version.

       o      -v, --verbose: This option increases  Yodl’s  `verbosity  level’
              and  may  occur  more  than  once.  By  default  yodl  will show
              alerting, critical, emergency and error messages. Each --verbose
              option will add a next message level. In order, warning, notice,
              info and debug messages will be added to this set.  It  is  also
              possible to suppress messages. The VERBOSITY builtin can be used
              for that.

       o      -W, --warranty. This option will show a warranty disclaimer  and
              a copyright notice.

       o      -w,  --warn:  The  presence  of  this option caused Yodl to warn
              when, e.g., symbols are redefined.


       The yodl program requires no files, but  `normal’  usage  of  the  Yodl
       package  requires macro files, by default installed in /usr/share/yodl.
       The files in this directory are included by the converters  yodl2txt(1)


       yodlstriproff(1),    yodl(1),    yodlbuiltins(7),    yodlconverters(1),
       yodlletter(7),     yodlmacros(7),     yodlmanpage(7),      yodlpost(1),




       Frank B. Brokken (,