Aubit 4GL Documentation O'Gorman Computer Consultants Ltd Revision 2010-12-15

# 1 News as at 15 December 2010

We are nearing completion of the manual (both full and quick reference) for version 1.2

The manual is written using LYX (which has an ASCII format). LYX comes out of the box with SuSE and other Linux distros and can be installed in Mac OSX. You can generate the Postscript, PDF, and HTML formats by running LYX and using the File->export option. For those of you without LYX we have the other formats here (or you can view the HTML online).

## 1.1 Manual for Aubit4GL v1.2

The version 1.2 manuals have been renamed: a4glman and a4glqref (instead of aubitman and aubitqref) to avoid confusion with the original versions and to more accurately represent the purpose of the document (they are for Aubit4GL rather than for Aubit).

We have a group of volunteers standing by to translate the manual into Spanish. I'm sure they would welcome more volunteers to share the workload. Write to the Aubit4GL user group if you are able and willing to assist.

We have changed the media page size from A4 to A5 for the full manual. This allows you to create a book which will fit on a bookshelf. If you have difficulty printing on A5, Alter the LYX source (Documents -> Settings -> Page Layout). The quick reference is still typeset for A4 but printed 2-up in landscape orientation on A4 (which scales it to 50%).

Submit any suggestions, items for inclusion, corrections, etc either

Files:

You probably want the PDF and/or the Source .lyx file. But the other generated forms are here for those interested.

You can download these (by right-clicking on the URLs) but be warned that they are still in the early draft stages. If you intend using the source, you will need the screenshot files.

There is also an HTML tree generated from the LYX file. But you cannot simply use the File->Export->HTML menu option. Because we use the command: latex2html to perform the translation and because latex2html cannot handle the PDF commands we build into the LYX file nor the Greek characters to represent TEX, we have to eliminate them in a new LYX version which we then convert to latex and from there to HTML. The sequence of commands (in our Makefile) is:

sed -e '/^\\^usepackage{ifpdf}/,/^\\fi/d' \
-e '/^In Greek:/,/\\end_inset/d' \
a4glman.lyx > a4glmanhtml.lyx

lyx -e latex a4glmanhtml.lyx

latex a4glmanhtml.tex

latex2html \
-split 3 -link 4 -local_icons -show_section_numbers\
-html_version 4.0,frame \
a4glmanhtml.tex

## 1.2 Quick Reference

• You can make a booklet from the a4glqref.lyx file using the commands:
lyx -e ps a4glqref.lyx  # or export to Postscript from LYX's File menu
psbook a4glqref.ps | psnup -2up > qrbooklet.ps
lp -d yourprinter qrbooklet.ps
I had to configure my printer (HP7410) to Landscape and DuplexTumble.
• By booklet, we mean the pages are re-ordered and arrayed 2-up so that the 8 pages are ordered: 8-1,2-7,6-3,4-5 on 2 sheets of A4 paper printed both sides and tumbled end on by the printer. (If your printer cannot do duplex, you can photocopy onto the reverse sides of each sheet.
• I am experimenting with alternative ways of doing the above - so this process may be simplified in the future. I have found a booklet package in LATEX but so far I have failed to get it to work as I want. There is a PDFJam project which provides pdfnup (in the manner of psnup) but so far I cannot find a pdf equivalent of psbook.

### 1.2.1 Makefile entries for the Quick Reference

--

booklet: qrbooklet.ps

4glqref.ps: a4glqref.lyx
lyx -e ps $? qrbooklet.ps: a4glqref.ps psbook$? | psnup -2up > $@ printbooklet: a4glqrefbooklet.ps lp -d OfficeJet-7400 \ -o Duplex=DuplexTumble \ -o media=a4 \$?

The above assume that you have the prerequisite LYX and psutils packages installed.

If not, use zypper install or apt-get install (depending on your flavour of Linux) to install both of them

I particularly recommend LYX which is the best piece of software ever written. (It allows you to produce Knuth's beautiful documents without the need to learn the LATEX and TEX languages for professional quality typesetting).

# 2 Printing

I have had to do a lot of research into printing. Being a die-hard command line man, I wanted to know how to set duplex, short-side flip, landscape modes on the printer form the lp or lpr commands. man lp was totally uninformative. I found the answers in 2, for me, unexpected places: http://www.linuxprinting.org and http://localhost:631.

From the latter you can find the approprate -o options for each of your printers. Under CUPS there is a set of generic commandline options (e.g. -o landscape ) which will be translated into the appropriate command for your printer's language. Anything not recognised as a standard option by the CUPS program is passed through as is (e.g. -o Duplex=DuplexNoTumble).

To find the specific options for your printer, use the command: lpoptions printer where printer is the name of your print queue (inkjet in my case). Then you can print from the command line using the options you want:

lp -d printer -o option1 [-o option2 ...] filename.ps

For the Aubit 4GL Quick Reference booklet, the command will be something like:

lp -d inkjet -o sides=two-sided-short-edge -o media=a4 qrbooklet.ps

You may or may not need to use the option -o landscape. The psbook command puts the content into landscape so the printer may not need it. Try it and see. If it is wrong, it will cost you only 2 sheets of paper.

# 3 Aubit 4GL Quick Reference

## 3.2 latex2html problems

Ross Moore (Maths dept, McQuarrie University) had fixed the bug in latex2html which was bodging tables. Unfortunately this fix was not carried through into all Linux distros. The fix is quite simple and the patch is shown here.

The latex2html program is a perl script. The patch needed is:

-- latex2html 2006-01-13 17:48:27.000000000 +1300

+++ /usr/bin/latex2html 2005-03-23 06:49:49.000000000 +1200

@@ -5285,7 +5285,6 @@
elsif ($this_cmd) { push(@pieces,$this_cmd) }
}
push(@pieces, $after); +$within_preamble=0;
}
print  $replacements new-command replacements\n if (($VERBOSITY>1) && \$replacements);

The line prefixed with the + must be inserted into the latex2html script (without the +).

This document was generated using the LaTeX2HTML translator Version 2008 (1.71)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -no_subdir -split 0 -show_section_numbers aubithome.tex

The translation was initiated by Informix Login on 2010-12-14