<HTML ><HEAD ><TITLE >How to generate something worth printing.</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.49"><LINK REL="HOME" TITLE="The Printing HOWTO" HREF="index.html"><LINK REL="PREVIOUS" TITLE="How to print to a fax machine." HREF="faxing.html"><LINK REL="NEXT" TITLE="Printing Photographs" HREF="photos.html"></HEAD ><BODY CLASS="SECT1" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >The Printing HOWTO</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="faxing.html" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="photos.html" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="SECT1" ><H1 CLASS="SECT1" ><A NAME="AUTHORING" >14. How to generate something worth printing.</A ></H1 ><P > Here we get into a real rat's-nest of software. Basically, Linux can run many types of binaries with varying degrees of success: Linux/x86, Linux/Alpha, Linux/Sparc, Linux/foo, iBCS, Win16/Win32s (with dosemu and, someday, with Wine), Mac/68k (with Executor), and Java. I'll just discuss native GNU/Linux and common Un*x software. </P ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="MARKUP-LANGUAGES" >14.1. Markup languages</A ></H2 ><P > Most markup languages are more suitable for large or repetitive projects, where you want the computer to control the layout of the text to make things uniform. <P ></P ><DL ><DT ><B CLASS="COMMAND" >nroff</B ></DT ><DD ><P >This was one of the first markup languages on the original version of Unix. Man pages are the most common examples of things formatted in *roff macros; many people swear by them, but nroff has, to me at least, a more arcane syntax than needed (see <A HREF="authoring.html#ROFF-EXAMPLE" >Figure 11</A >), and probably makes a poor choice for new works. It is worth knowing, though, that you can typeset a man page directly into postscript with groff. Most man commands will do this for you with <B CLASS="COMMAND" >man -t foo | lpr</B >. </P ><DIV CLASS="FIGURE" ><A NAME="ROFF-EXAMPLE" ></A ><P ><B >Figure 11. Example of <B CLASS="COMMAND" >roff</B > Input</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="90%" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" >.B man is the system's manual pager. Each .I page argument given to .B man is normally the name of a program, utility or function. The .I manual page associated with each of these arguments is then found and displayed. A .IR section , if provided, will direct .B man to look only in that .I section of the manual.</PRE ></TD ></TR ></TABLE ></DIV ></DD ><DT >TeX</DT ><DD ><P >TeX, and the macro package LaTeX, are one of the most widely used markup languages on Un*x systems, although TeX did not originate on Unix and is available to run on a wide variety of systems. Technical works are frequently written in LaTeX because it greatly simplifies the layout issues and is <I CLASS="EMPHASIS" >still</I > one of the few text processing systems to support mathematics both completely and well. TeX's output format is <TT CLASS="FILENAME" >dvi</TT >, and is converted to PostScript or Hewlett Packard's PCL with <B CLASS="COMMAND" >dvips</B > or <B CLASS="COMMAND" >dvilj</B >. If you wish to install TeX or LaTeX, install the whole teTeX group of packages; it contains everything. Recent TeX installations include pdfTeX and pdfLaTeX, which produce Adobe PDF files directly. Commands are available do create hyperlinks and navigation features in the PDF file. </P ><DIV CLASS="FIGURE" ><A NAME="LATEX-EXAMPLE" ></A ><P ><B >Figure 12. Example of LaTeX Input</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="90%" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" >\subsubsection{NAT} Each real server is assigned a different IP address, and the NA implements address translation for all inbound and outbound packets. \begin{description} \item[Advantage] Implementation simplicity, especially if we already implement other NAT capabilities. \item[Disadvantage] Return traffic from the server goes through address translation, which may incur a speed penalty. This probably isn't too bad if we design for it from the beginning. \item[Disadvantage] NAT breaks the end-to-end semantics of normal internet traffic. Protocols like ftp, H.323, etc would require special support involving snooping and in-stream rewriting, or complete protocol proxying; neither is likely to be practical. \end{description}</PRE ></TD ></TR ></TABLE ></DIV ></DD ><DT >SGML</DT ><DD ><P >There is at least one free SGML parser available for Un*x systems; it forms the basis of Linuxdoc-SGML's homegrown document system. It can support other DTD's, as well, most notably DocBook. This document is written in DocBook-DTD SGML; see <A HREF="authoring.html#SGML-EXAMPLE" >Figure 13</A > for an example. </P ><DIV CLASS="FIGURE" ><A NAME="SGML-EXAMPLE" ></A ><P ><B >Figure 13. Example of DocBook SGML</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="90%" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" ><VarListEntry> <Term>SGML</Term> <ListItem> <Para> There is at least one free SGML parser available for Un*x systems; it forms the basis of Linuxdoc-SGML's homegrown document system. It can support other DTD's, as well, most notably DocBook. This document is written in DocBook-DTD SGML. </Para> </ListItem> </VarListEntry></PRE ></TD ></TR ></TABLE ></DIV ></DD ></DL > </P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="WYSIWYG-PROCESSORS" >14.2. WYSIWYG Word Processors</A ></H2 ><P > There is no shortage of WYSIWYG word processing software. Several complete office suites are available, including one that's free for personal use (StarOffice). <P ></P ><DL ><DT >StarOffice</DT ><DD ><P >Sun Microsystems is distributing StarOffice on the net free for GNU/Linux. This full-blown office suite has all the features you'd expect, including both import and export of Microsoft Office file formats (including Word documents). There's a mini-HOWTO out there which describes how to obtain and install it. It generates PostScript, so should work with most any printer that works otherwise on GNU/Linux. </P ></DD ><DT >WordPerfect</DT ><DD ><P >Corel distributes a basic version of WordPerfect 8 free for GNU/Linux, and sells various packages of Word Perfect Office 2000 (which includes WordPerfect, Corel Draw and Quattro Pro Versions 9). The <A HREF="http://www.rodsbooks.com/wpfonts/" TARGET="_top" > Linux WordPerfect Fonts and Printers</A > page has information about configuring WordPerfect for use with either Ghostscript or its built-in printer drivers (which are apparently identical the DOS WordPerfect drivers, if your printer's driver isn't included in the distribution). </P ></DD ><DT >Applix</DT ><DD ><P >Applix is a cross-platform (ie, various Unices, Windows, and others) office suite sold by the Applix company. Red Hat and SuSE sold it themselves when it was the only game in town; now sales have reverted to Applix. This is the only native Unix-style application suite; it probably fits in better with the Unix way of doign things. </P ></DD ><DT >AbiWord</DT ><DD ><P ><A HREF="http://www.abisource.com/" TARGET="_top" >AbiWord</A > is one of several GPL WYSIWYG word processor projects; this one has produced a very nice word processor based on an XML format. It is capable of Word file import. AbiWord is still a work in progress, although it is useful for small things now. </P ><DIV CLASS="FIGURE" ><P ><B >Figure 14. AbiWord</B ></P ><P ><IMG SRC="snapshot-abiword.gif"></P ></DIV ></DD ><DT >LyX</DT ><DD ><P >LyX is a front-end to LaTeX which looks very promising. See the <A HREF="http://www.lyx.org/" TARGET="_top" >LyX Homepage</A > for more information. There is a KDE-styled version of LyX, called Klyx; the author of LyX and the instigator of KDE are the same person. </P ><DIV CLASS="FIGURE" ><P ><B >Figure 15. LyX</B ></P ><P ><IMG SRC="snapshot-lyx.gif"></P ></DIV ></DD ><DT >Maxwell</DT ><DD ><P >Maxwell is a simple MS RTF-format based word processor which started as a commercial product but is now distributed under the GPL. </P ></DD ></DL > </P ><P > Other vendors should feel free to drop me a line with your offerings. </P ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="faxing.html" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="photos.html" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >How to print to a fax machine.</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" > </TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Printing Photographs</TD ></TR ></TABLE ></DIV ></BODY ></HTML >