unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Robert J. Chassell" <bob@rattlesnake.com>
Subject: Re: ifinfo vs ifnottex
Date: Fri, 19 May 2006 07:39:18 -0400 (EDT)	[thread overview]
Message-ID: <m1Fh3KA-0004EnC@rattlesnake.com> (raw)

Luc Teirlinck <teirllm@dms.auburn.edu> is right and I am glad of his
offer.  With more output formats, seven direct, last I counted, the
Texinfo source files must change.

Texinfo source files should use `@ifxml ... @end ifxml' for conversion
to XML with a Texinfo DTD and `@ifdocbook ... @end ifdocbook' for
conversion to DocBook.

The two are different since XML with a Texinfo DTD can be converted to
either an on-line viewing format, Info or an off-line viewing format
such as DVI.  The XML with a Texinfo DTD output should enjoy `maximum'
information.  (It is really better to conceive of the XML formats as
being an `intermediate' rather than a `final output' format.)

As far as I know, you can only view DocBook pages on-line; it is not
as if they are designed for on-line viewing.

As it happens, both those output formats, XML with a Texinfo DTD and
DocBook, have the same file extension although they are different
internally.


In more detail:

Luc has offered to insert four more `@if...' commands into the deep
representations, the Texinfo source files.  At the moment, the
documentation is broken.  It includes only `@ifinfo...' and 
`@iftex...'.

`@ifinfo' handles both Info and Plain Text.  In addition there is an
`@ifplaintext' command.  There is no `@ifpdf' command.  (This lack is
explained in  (texinfo)PDF Output .  Also, there are corresponding
`@ifnot...' commands.)

    `@ifinfo ... @end ifinfo'
         Text to appear only in the Info and Plain Text output.

    `@ifplaintext ... @end ifplaintext'
         Text to appear only in the plain text output.

    `@ifhtml ... @end ifhtml'
         Text to appear only in the HTML output.

    `@iftex ... @end iftex'
         Text to appear only in the printed manual.

    `@ifdocbook ... @end ifdocbook'
         Text to appear only in the Docbook output.

    `@ifxml ... @end ifxml'
         Text to appear only in the XML output.

The output formats for both DocBook and XML with a Texinfo DTD have
the same extension: .xml   `makeinfo' chooses which to output
depending on its flag:

    makeinfo --docbook ...
    makeinfo --xml     ...



Incidently, the seven direct output formats for a single Texinfo
source file are:  Info, HTML, plain text, DVI, PDF, DocBook, and
Texinfo XML.  For example:

    ## Info
    makeinfo --no-split --fill-column=70 --paragraph-indent=0 --verbose \
    foo.texi

    ## Plain text
    makeinfo --no-split --fill-column=70 --paragraph-indent=0 --verbose \
    --no-headers --output=foo.txt foo.texi

    ## HTML
    makeinfo --no-split --html foo.texi

    ## DVI
    texi2dvi foo.texi

    ## PDF
    texi2dvi --pdf foo.texi

    ## DocBook
    makeinfo --docbook --no-split --paragraph-indent=0 --verbose foo.texi

    ## XML
    makeinfo --xml --no-split --paragraph-indent=0 --verbose foo.texi

Also, you can create PostScript and RTF in two steps and LaTeX in
three steps:

    ## PostScript (needs DVI)
    dvi2ps foo.dvi > foo.ps

    ## RTF (needs HTML)
    /usr/local/src/html2rtf.pl foo.html

    ## LaTex (needs RTF)
    /usr/bin/rtf2latex foo.rtf


Even though the files extensions are similar, the headers for DocBook
and XML with a Texinfo DTD are different:

    DocBook

        <?xml version="1.0"?>
        <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
          <!ENTITY tex "TeX">
          <!ENTITY latex "LaTeX">
        ]>
        <book lang="en">


    XML with a Texinfo DTD

        <?xml version="1.0"?>
        <!DOCTYPE texinfo PUBLIC "-//GNU//DTD TexinfoML V4.8//EN" "http://www.gnu.org/software/texinfo/dtd/4.8/texinfo.dtd">
        <texinfo xml:lang="en">

--
    Robert J. Chassell
    bob@rattlesnake.com                         GnuPG Key ID: 004B4AC8
    http://www.rattlesnake.com                  http://www.teak.cc

             reply	other threads:[~2006-05-19 11:39 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-05-19 11:39 Robert J. Chassell [this message]
  -- strict thread matches above, loose matches on Subject: below --
2006-05-18  2:53 ifinfo vs ifnottex Luc Teirlinck
2006-05-18  3:39 ` Eli Zaretskii
2006-05-18  4:15   ` Luc Teirlinck
2006-05-18 18:56     ` Eli Zaretskii
2006-05-18 20:29       ` Karl Berry
2006-05-19  3:32         ` Luc Teirlinck
2006-05-19 11:04           ` Eli Zaretskii
2006-05-20  1:46             ` Luc Teirlinck
2006-05-20  2:40             ` Luc Teirlinck
2006-05-20  8:46               ` Eli Zaretskii
2006-05-20 17:55                 ` Karl Berry
2006-05-20 18:44                   ` Eli Zaretskii
2006-05-21 17:08                     ` Richard Stallman
2006-05-21 18:44                       ` Eli Zaretskii
2006-05-21 21:07                         ` Karl Berry
2006-05-22  3:21                           ` Eli Zaretskii
2006-05-22 22:10                             ` Karl Berry
2006-05-19 18:05           ` Karl Berry
2006-05-19  9:40         ` Eli Zaretskii
2006-05-19 17:43           ` Karl Berry
2006-05-19 18:10             ` Eli Zaretskii
2006-05-20  5:04           ` Richard Stallman
2006-05-21  0:32             ` Luc Teirlinck
2006-05-18  4:47   ` Luc Teirlinck
2006-05-18  4:51   ` Luc Teirlinck
2006-05-19  2:04 ` Richard Stallman
2006-05-19  2:38   ` Luc Teirlinck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m1Fh3KA-0004EnC@rattlesnake.com \
    --to=bob@rattlesnake.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).