% normality.tex % % This is a LameTeX document. You may use the LameTeX text formatter % to do fancy graphic formatting from this file into PostScript. % % Alternatively, this file may be formatted with normal LaTeX. % % This document describes the LameTeX text formatter, version 1.0. % % Copyright 1992 Jonathan Monsarrat. Permission given to freely distribute, % edit and use as long as this copyright statement remains intact. % % \begin{stealth} % \setlength{\textwidth}{8.1 in} % \setlength{\oddsidemargin}{-.8 in} % \pspage{page_demon.ps} % % \end{stealth} \chapter{How to Get Normal LaTeX Stuff} \section{A Note to TeX Professionals} % \STEALTH \includeps{demon.ps} I love LaTeX. It's great. I just learned it as I was writing LameTeX. I'm sure TeX is cool too, although I have not gotten around to learning it yet. I was a Scribe Math hacker and have done lots of letterpress printing. TeX has a bad reputation though. I thought that learning it would be so hard that I might as well write my own formatter! Others think that TeX kind of straight-jackets you into professional documents. Normally that's great. My Mom isn't around any more to clean my room and tell me how to write professionally. And a letterpress doesn't care if you place your letters upside down. But occasionally (or {\em often} if you're strange like me) I get the urge to splash 100 point type or stick random bugs all over the page. Once to advertise an event I hung up a huge 18 foot poster taped together out of PostScript pages. You ever get that urge? Anyway, LameTeX is a fun toy. Just don't take it too seriously. {\em And no, it's not written in TeX macros!} \section{The LaTeX Length Parameters} If LaTeX is royalty, then LameTeX is a prostitute. If you want to change the margins {\em in the middle of the page} using $\backslash$textwidth, LaTeX kind of sticks its nose up at you and says to go implement your own margin library font program hierarchy system out of TeX macros. LameTeX just says ``OKAY!'' and hops in the sack with you. No questions. So feel free to change a lot of stuff. LameTeX won't care. I really urge you to put random stuff inside of a stealth environment, however, so that normal LaTeX won't balk at it and refuse to serve you. It's like playing an adventure game. If you die, who cares, it's just a program. But if you don't try various things, you won't have any fun. There is no ``textwidth'' in LameTeX. When you set textwidth it just sets the right margin to 8.5 inches minus the textwidth given minus the left margin. Similarly there is no ``textheight''. When you set textheight it just sets the bottom margin to 11 inches minus the textheight given minus the top margin. Please note that just like LaTeX, LameTeX defaults to ridiculous margins. There's a good chance that if your margins are large at all, that the text may not fit inside the page description path! This is especially true of the {\tt page\_check.ps} page description, which breaks the page into boxes that are only and inch wide or so. \section{Tiny Differences from LaTeX} You can't use fine-tune spacing commands. You won't get a table of contents anywhere, and you can't do table and figures. $\backslash$vspace is meant to give the absolute vertical distance between the current line and the last line (or top of page). If you use two of them in a sequence, you're likely to have the larger one apply only, not both together. There is no concept of ``glue'' in LameTeX. I bent over backwards trying to make it possible to put a backslash next to a command when I want to type something like $\backslash$myfancycommand. Unfortunately, LameTeX views these as two tokens from which the space in-between has been ``deleted''. It's happy to break a line in the middle. You'll probably see that scattered throughout this document. It only happens when you print the special characters $\backslash$\% , $\backslash$\_ , and the like. This ``ungluing'' will also occur if you change fonts or change environments in any way in the middle of a word. So if my sentence is in italic but the period at the end of the sentence is in roman type, the period might be placed on a newline by itself! % \STEALTH \includeps{demon.ps} In general, LameTeX will occasionally screw up the spacing. Oops. No, it doesn't do kerning! Geez\ldots To avoid this it's best to include sentence punctuation in whatever environment happens to precede it. For example, use ``Pay me in \{ $\backslash$em cash. \}'' instead of ``Pay me in \{ $\backslash$em cash \}.'' You can't make small caps, typewriter, or sans serif font into italic or bold face. I didn't know it was possible until recently so I didn't put it into the program. LameTeX is quite happy to give you widows and orphans. If this sort of thing keeps you awake at night, you are taking LameTeX too seriously and should go play Tetris until you go insane (this doesn't take long). If you don't know what widows and orphans are, good. I won't tell you. \section{PostScript is a Great Language, Too Bad it Sux} I love PostScript. LameTeX makes extensive use of the PostScript programming language. I think PostScript is great. However, when a PostScript program breaks, your printer is more likely to say ``ARGH'' or silently start whining rather than to print out some message like ``I say, old man. You've got a spot of trouble on line 36 you see. It seems (if I may venture to take a liberty) that you made a misspelling error in the word 'sux'.'' If it's a LameTeX bug then get in touch with me and I'll try to fix it. But if you're hacking PostScript through LameTeX it's very easy to screw things up. The solution is not to get scared and stop playing with it. Send me some mail and we'll work it out together. Chances are I forget to document some assumption I'm making somewhere about how to use the cool PostScript routines. Once I tell you about it things will be fine. \section{LameTeX Fonts} To get different fonts in LameTeX, you can just use the normal LaTeX font-changing operators. It is not possible right now to get normal PostScript fonts using a LameTeX operator. However there is a cool workaround if you want to try it out. The program originally worked that way on PostScript fonts but then I figured that people would {\it really really} want the normal LaTeX fonts, so I put those in, instead. For sure the next version of LameTeX will allow the user to choose ``normal'' scaleable PostScript fonts instead of the somewhat tedious LaTeX bitmaps. Documents which used only the scaleable fonts would be much smaller and compile faster. It is possible for you to make your own PostScript hack to change the appearance of a word, and this can certainly include using a scaleable font if you wish. This is described in the hacks chapter with the command $\backslash$pscmd. % \STEALTH \includeps{demon.ps} LameTeX is very versatile about changing margins in mid-document and stuff like that. \section{Getting References} LameTeX allows you to use the LaTeX commands $\backslash$ref and $\backslash$label, but not $\backslash$pageref. If you have forward references, you do {\em not} need to run LameTeX twice. LameTeX is smart enough to do its own recovery if you have forward references. Pretty neat, huh? % Replace the current small margins with the wider margins. % \begin{stealth} % \setlength{\textwidth}{6 in} % \setlength{\oddsidemargin}{0.25 in} % \pspage{page_demon.ps} % \end{stealth}