Provided by: html-xml-utils_6.5-1_amd64 bug

NAME

       hxincl - expand included HTML or XML files

SYNOPSIS

       hxincl [ -x ] [ -f ] [ -s name=subst ] [ -s name=subst ]...  [ -b base ] [ file-or-URL ]

       hxincl -M target [ -s name=subst ] [ -s name=subst ]...  [ -b base ] [ -G ] [ file-or-URL ]

DESCRIPTION

       Without -M, the hxincl command copies an HTML or XML file to standard output, looking for comments with a
       certain structure.  Such a comment is replaced by the file whose name is given as the  attribute  of  the
       directive. For example:

           ...<!-- include "foo.html" -->...

       will be replaced by the content of the file foo.html.

       The comment is replaced by

           <!-- begin-include "foo.html" -->

       before the included text and

           <!-- end-include "foo.html" -->

       after  it.  These  comments  make  it  possible  to  run hxincl on the resulting file again to update the
       inclusions.

       Single quotes are allowed instead of double quotes. And if the file name contains no spaces,  the  quotes
       may also be omitted.

       With  -M, the hxincl command outputs a line of dependencies that is suitable for inclusion in a Makefile.
       The target is the target of the Makefile rule and hxincl will list after the ':' all the files  that  are
       included, recursively. E.g., the result of

           hxincl -M myfile.html inputfile

       might be

           myfile.html: foo.html bar.html

OPTIONS

       The following options are supported:

       -x        Use XML conventions: empty elements are written with a slash at the end: <IMG />.

       -b base   Sets  the  base  URL  for resolving relative URLs. By default the file given as argument is the
                 base URL.

       -f        Removes the comments after including the  files.  This  means  hxincl  connot  be  run  on  the
                 resulting file later to update the inclusions.  (Mnemonic: final or frozen.)

       -s name=substitution
                 Include a different file than the one mentioned in the directive. If the comment is

                     <!-- include "name" -->

                 the  file  substitution  is  included  instead.  And if the file name in the comment includes a
                 variable called name delimited by %, e.g.,

                     <!-- include "xxx-%name%" -->

                 then %name% is replaced by substitution and thus the file  xxx-substitution  is  included.  The
                 option  -s  may  occur multiple times. %-delimited variables are expanded recursively, i.e., if
                 the substitution text contains a variable, that variable is expanded, too.  E.g.,  if  the  two
                 options  -s name=%p1%.rrr and -s p1=subst are given, then the "xxx-%name%" will expand to "xxx-
                 subst.rrr".

       -M target Instead of outputing the input file with all inclusions expanded, output just the list  of  all
                 files  that  the  input  includes,  recursively,  in  the form of a rule that is suitable for a
                 Makefile. The target is printed as the target of that rule.

       -G        Suppress error messages if a file to include cannot be found. (Only with -M.)

OPERANDS

       The following operand is supported:

       file-or-URL
                 The name of an HTML or XML file or the URL of one. If absent, standard input is read instead.

EXIT STATUS

       The following exit values are returned:

       0         Successful completion.

       > 0       An error occurred in the parsing of one of the HTML or XML files.

ENVIRONMENT

       To use a proxy to retrieve remote files, set the environment variables http_proxy  or  ftp_proxy.   E.g.,
       http_proxy="http://localhost:8080/"

BUGS

       Assumes  UTF-8 as input. Doesn't expand character entities. Instead pipe the input through hxunent(1) and
       asc2xml(1) to convert it to UTF-8.

       Remote files (specified with a URL) are currently only supported for HTTP.  Password-protected  files  or
       files  that  depend  on  HTTP "cookies" are not handled. (You can use tools such as curl(1) or wget(1) to
       retrieve such files.)

SEE ALSO

       asc2xml(1), hxnormalize(1), hxnum(1), hxprune(1), hxtoc(1), hxunent(1), xml2asc(1), UTF-8 (RFC 2279)