summaryrefslogtreecommitdiff
path: root/obsolete/help
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-28 03:00:42 +0000
committerNorbert Preining <norbert@preining.info>2019-09-28 03:00:42 +0000
commitf41a5d46017f730e9586332f28744912872326f5 (patch)
tree0e7ebb355adbdb56ac9d1e236dd5cde0b71e1520 /obsolete/help
parent5827a950592f8a91468bcd0b5963d1df8d3518d8 (diff)
CTAN sync 201909280300
Diffstat (limited to 'obsolete/help')
-rw-r--r--obsolete/help/texfaq/CHANGES-3.16b55
-rw-r--r--obsolete/help/texfaq/CHANGES-3.16c52
-rw-r--r--obsolete/help/texfaq/CHANGES-3.1758
-rw-r--r--obsolete/help/texfaq/CHANGES-3.1846
-rw-r--r--obsolete/help/texfaq/CHANGES-3.1967
-rw-r--r--obsolete/help/texfaq/CHANGES-3.19a44
-rw-r--r--obsolete/help/texfaq/CHANGES-3.19c44
-rw-r--r--obsolete/help/texfaq/CHANGES-3.19d34
-rw-r--r--obsolete/help/texfaq/CHANGES-3.2040
-rw-r--r--obsolete/help/texfaq/CHANGES-3.2147
-rw-r--r--obsolete/help/texfaq/CHANGES-3.2245
-rw-r--r--obsolete/help/texfaq/CHANGES-3.2350
-rw-r--r--obsolete/help/texfaq/CHANGES-3.2441
-rw-r--r--obsolete/help/texfaq/CHANGES-3.2547
-rw-r--r--obsolete/help/texfaq/CHANGES-3.2659
-rw-r--r--obsolete/help/texfaq/CHANGES-3.2743
-rw-r--r--obsolete/help/texfaq/CHANGES-3.2866
-rw-r--r--obsolete/help/texfaq/ChangeLog17802
-rw-r--r--obsolete/help/texfaq/Makefile226
-rw-r--r--obsolete/help/texfaq/Makefile-CTAN103
-rw-r--r--obsolete/help/texfaq/README34
-rw-r--r--obsolete/help/texfaq/archive.cfg13
-rw-r--r--obsolete/help/texfaq/dirctan.tex990
-rw-r--r--obsolete/help/texfaq/faq-adj-types.tex3671
-rw-r--r--obsolete/help/texfaq/faq-backgrnd.tex1220
-rw-r--r--obsolete/help/texfaq/faq-biblio.tex1468
-rw-r--r--obsolete/help/texfaq/faq-bits+pieces.tex1174
-rw-r--r--obsolete/help/texfaq/faq-docs.tex1305
-rw-r--r--obsolete/help/texfaq/faq-dvi.tex148
-rw-r--r--obsolete/help/texfaq/faq-fmt-conv.tex465
-rw-r--r--obsolete/help/texfaq/faq-fonts.tex1316
-rw-r--r--obsolete/help/texfaq/faq-getit.tex361
-rw-r--r--obsolete/help/texfaq/faq-graphics.tex1035
-rw-r--r--obsolete/help/texfaq/faq-how-do-i.tex4134
-rw-r--r--obsolete/help/texfaq/faq-hyp+pdf.tex636
-rw-r--r--obsolete/help/texfaq/faq-images.tex25
-rw-r--r--obsolete/help/texfaq/faq-install.tex1021
-rw-r--r--obsolete/help/texfaq/faq-intro.tex203
-rw-r--r--obsolete/help/texfaq/faq-jot-err.tex2467
-rw-r--r--obsolete/help/texfaq/faq-lab-ref.tex182
-rw-r--r--obsolete/help/texfaq/faq-litprog.tex81
-rw-r--r--obsolete/help/texfaq/faq-mac-prog.tex3724
-rw-r--r--obsolete/help/texfaq/faq-projects.tex644
-rw-r--r--obsolete/help/texfaq/faq-support.tex188
-rw-r--r--obsolete/help/texfaq/faq-symbols.tex613
-rw-r--r--obsolete/help/texfaq/faq-t-g-wr.tex467
-rw-r--r--obsolete/help/texfaq/faq-texsys.tex488
-rw-r--r--obsolete/help/texfaq/faq-the-end.tex167
-rw-r--r--obsolete/help/texfaq/faq-wdidt.tex2142
-rw-r--r--obsolete/help/texfaq/faq.cls93
-rw-r--r--obsolete/help/texfaq/faq.sty1281
-rw-r--r--obsolete/help/texfaq/faqfont.cfg4
-rw-r--r--obsolete/help/texfaq/faqfont.cfg.cmfonts6
-rw-r--r--obsolete/help/texfaq/faqfont.cfg.lmfonts19
-rw-r--r--obsolete/help/texfaq/faqfont.cfg.mbvj11
-rw-r--r--obsolete/help/texfaq/faqfont.cfg.ugm12
-rw-r--r--obsolete/help/texfaq/filectan.tex107
-rw-r--r--obsolete/help/texfaq/gather-faqbody.tex57
-rw-r--r--obsolete/help/texfaq/install-CTAN48
-rw-r--r--obsolete/help/texfaq/letterfaq.pdfbin0 -> 2933477 bytes
-rw-r--r--obsolete/help/texfaq/letterfaq.tex64
-rw-r--r--obsolete/help/texfaq/locations.mk17
-rw-r--r--obsolete/help/texfaq/markup-syntax237
-rw-r--r--obsolete/help/texfaq/newfaq.pdfbin0 -> 3094571 bytes
-rw-r--r--obsolete/help/texfaq/newfaq.tex67
65 files changed, 51374 insertions, 0 deletions
diff --git a/obsolete/help/texfaq/CHANGES-3.16b b/obsolete/help/texfaq/CHANGES-3.16b
new file mode 100644
index 0000000000..1a9ab7d229
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.16b
@@ -0,0 +1,55 @@
+Changes in version 3.16c
+
+This file incorporates the changes from version 3.16 that previously
+appeared in file CHANGES-3.16a and -3.16b; new changes for this
+release (3.16c) are marked with a plus ("+") sign.
+
+
+New answer:
+ +Label isdef: "is this command defined?" tests
+ Label optionclash: clashing package options error in LaTeX
+
+Revised answers:
+ +Label bibprefixsort: two new examples
+ +Label citeURL: provide a list (rather than a bunch) of alternative
+ styles, mention babelbib
+ Label ECfonts: reword discussion of mathematics and EC fonts (i.e.,
+ emphasise that there's no direct relation)
+ Label filename: extend macro definitions, hopefully expanding the
+ usefulness and usability of the answer
+ Label hyperdupdest: other sources of the error than repeated pages
+ Label minitoc: corrected error in q-minitoc code, tidy comments
+ Label minxampl: include the word "minimal", since it's a common search term
+ +Label multirow: mention the case of multicolumn-multirow
+ Label music: mention Lilypond as a source of TeX-compatible music
+ +Label music: correct Web output of package list at end of answer
+ +Label oarglikesect: mention kernel command \@dblarg
+ Label poster: mention Nicola Talbot's experimental flowfram layout package
+ +Label secthead: rewritten accounts of sectsty & titlesec
+ Label texinfo: rewritten in parts, following a reader comment
+ Label texsystems: miktex installation has changed with v2.5
+ Label tutbitslatex: added pointers to TUG-maintained material on fonts
+ +Label tutbitslatex: added pointer to Fauske's page on PGF/TikZ
+ Label virtualfonts: re-thought through
+ +Label watermark: noted that package draftcopy doesn't work with pdflatex,
+ +Label watermark: mention draftwatermark
+ +Label whatbst: correct reed.edu link
+
+Bugfixes:
+ Label cmdstar: part of the example code was just wrong
+ Label enumerate: unclarity in text caused by a typo
+ Bug in "introduction=yes" HTML code corrected
+ Label atsigns: mark-up error caused curious HTML output (editorial
+ improvement too)
+ +Release dates are now represented in ISO format (yyyy-mm-dd) --
+ previously we used the LaTeX format, using solidus instead of hyphen
+
+Future releases:
+ Despite missing the nominal "end August 2006" delivery (through an
+ unfortunate combination of events), I'm aiming to maintain the
+ stream of (approximately) monthly "bugfix" releases. There are no
+ current plans for a major release, though work on the new web-based
+ version continues.
+
+Robin Fairbairns
+2006-10-02
diff --git a/obsolete/help/texfaq/CHANGES-3.16c b/obsolete/help/texfaq/CHANGES-3.16c
new file mode 100644
index 0000000000..8a651ecab8
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.16c
@@ -0,0 +1,52 @@
+Changes in version 3.16c
+
+This file incorporates the changes from version 3.16 that previously
+appeared in file CHANGES-3.16a and -3.16b; new changes for this
+release (3.16c) are marked with a plus ("+") sign.
+
+
+New answer:
+ +Label isdef: "is this command defined?" tests
+ Label optionclash: clashing package options error in LaTeX
+
+Revised answers:
+ +Label bibprefixsort: two new examples
+ +Label citeURL: provide a list (rather than a bunch) of alternative
+ styles, mention babelbib
+ Label ECfonts: reword discussion of mathematics and EC fonts (i.e.,
+ emphasise that there's no direct relation)
+ Label filename: extend macro definitions, hopefully expanding the
+ usefulness and usability of the answer
+ Label hyperdupdest: other sources of the error than repeated pages
+ Label minitoc: corrected error in q-minitoc code, tidy comments
+ Label minxampl: include the word "minimal", since it's a common search term
+ +Label multirow: mention the case of multicolumn-multirow
+ Label music: mention Lilypond as a source of TeX-compatible music
+ +Label music: correct Web output of package list at end of answer
+ +Label oarglikesect: mention kernel command \@dblarg
+ Label poster: mention Nicola Talbot's experimental flowfram layout package
+ +Label secthead: rewritten accounts of sectsty & titlesec
+ Label texinfo: rewritten in parts, following a reader comment
+ Label texsystems: miktex installation has changed with v2.5
+ Label tutbitslatex: added pointers to TUG-maintained material on fonts
+ +Label tutbitslatex: added pointer to Fauske's page on PGF/TikZ
+ Label virtualfonts: re-thought through
+ +Label watermark: noted that package draftcopy doesn't work with pdflatex,
+ +Label watermark: mention draftwatermark
+ +Label whatbst: correct reed.edu link
+
+Bugfixes:
+ Label cmdstar: part of the example code was just wrong
+ Label enumerate: unclarity in text caused by a typo
+ Bug in "introduction=yes" HTML code corrected
+ Label atsigns: mark-up error caused curious HTML output (editorial
+ improvement too)
+ +Release dates are now represented in ISO format (yyyy-mm-dd) --
+ previously we used the LaTeX format, using solidus instead of hyphen
+
+Future releases:
+ There are no current plans for a major release, though work on the
+ new web-based version continues.
+
+Robin Fairbairns
+2006-12-18
diff --git a/obsolete/help/texfaq/CHANGES-3.17 b/obsolete/help/texfaq/CHANGES-3.17
new file mode 100644
index 0000000000..c5c26c2c45
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.17
@@ -0,0 +1,58 @@
+Changes in version 3.16d
+
+This file incorporates the changes from version 3.16 that previously
+appeared in file CHANGES-3.16a, -3.16b and -3.16c; new changes for
+this release (3.16d) are marked with a plus ("+") sign.
+
+
+New answers:
+ +Label biblatex: discusses BibTeX replacements (amsrefs, biblatex)
+ +Label checksum: "checksum error in font" message
+ +Label figurehere: how to avoid floating figures/tables altogether
+ +Label entercompmode: "entering compatibility mode" message
+ +Label fontsize: how to program arbitrary font sizes in LaTeX
+ +Label latexqual: assessing the quality of your LaTeX
+ +Label mathonlyref: only referenced equations are numbered
+ +Label run-fn-nos: running footnote numbers when class numbers per chapter
+
+Revised answers:
+ +Label altabcr: extended examples and tidied a bit
+ +Label BibTeXing: add reference to Shell & Hoadley's btxFAQ
+ +Label books mention LaTeX Graphics Companion 2nd edition; use ISBN-13
+ +Label CD: now couched in terms of the TeX collection
+ +Label changebar: mention changes.sty
+ +Label commercial:update details of Textures
+ +Label dec_comma: mention numprint as possible way to get things right
+ +Label docpictex: mention PiCTeX summary now on CTAN
+ +Label fonts-pln: mention pdcmac bundle
+ +Label ftnsect: rewrite to make recommendations clearer
+ +Label getbitmap: reworded to suggest that bitmaps aren't standard any more
+ +Label LaTeXtoPlain: suggest ways forward for aspiring translators
+ +Label make: mention autolatex
+ +Label man-latex: mention Grätzer's "short course"
+ +Label minxampl: editorial work, including (perhaps) clarifying web version
+ +Label newfont*: was newfont; content rearranged between this, plninltx* and
+ the new label fontsize
+ +Label newfunction: expand description
+ +Label ol-books: TeX by Topic now available from CTAN
+ +Label papersize: mention Acrobat Reader's default scaling
+ +Label plninltx*: was plninltx; content rearranged between this, newfont* and
+ the new fontsize
+ +Label protect: clarify lists of commands known to be fragile, etc
+ +Label psfchoice: add links to papers about maths fonts in tex; add fouriernc,
+ mathdesign/FS Garamond, kpfonts, minionpro and mnsymbol
+ +Label running-nos: rearrange to emphasise package chngctr
+ +Label tabcellalign: rationalised, reduced range of recommendations
+ +Label tocbibind: mention \phantomsection for when doing the job "by hand"
+ +Label twooptarg: mention the xargs package
+ +Label unkgrfextn: mention grffile package
+ +Label wdnohyph: mention \uchyph (not that it's much use)
+
+Bugfixes:
+
+Future releases:
+ There are no current plans for a major release, though work on the
+ new web-based version continues.
+
+Robin Fairbairns
+2007-10-??
diff --git a/obsolete/help/texfaq/CHANGES-3.18 b/obsolete/help/texfaq/CHANGES-3.18
new file mode 100644
index 0000000000..75f90d12bc
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.18
@@ -0,0 +1,46 @@
+Changes in version 3.18
+
+This file lists changes since its most recent release (with version 3.17
+of the FAQ).
+
+New answers:
+ +Label acroantics:getting Adobe Reader to produce the right size output
+ +Label inst-scut: introduction to the old inst-miktex and to inst-tds-zip
+ +Label inst-tds-zip: installing a package using .tds.zip files
+ +Label onna-stick:making MikTeX run from a memory key
+ +Label papergeom: how to select the correct paper geometry
+ +Label prept1font:the generating metrics part of old instt1font
+ +Label tds-zip: brief outline of TDS ZIP files
+
+Revised answers:
+ +Label biblatex: now discusses crossTeX too
+ +Label bibtranscinit: discuss truly excessive sets of initials
+ +Label chngmargonfly: mention new changepage package
+ +Label findfiles: correct one of the search address links
+ +Label fmtconv: add tex4ht as a route to word format, tidy up
+ +Label footintab: I _think_ the answer now says what I meant it to say!
+ +Label labelfig: mention (auto-)pst-pdf
+ +Label letterspace: microtype now covers the functionality of old letterspace
+ +Label luatex: detail some recent developments
+ +Label oddpage: mention new changepage package
+ +Label papersize: rewritten as intro to new acroantics and papergeom
+ +Label parallel: mention the pdfcolparallel package
+ +Label patch: rewrite to downplay patch, add mention of ted and etoolbox
+ +Label pkfix: mention pkfix-helper
+ +Label poster: updated with further informative links, etc.
+ +Label protect: rewritten (again)
+ +Label psfchoice: add kpfonts, link to the font catalogue at various points
+ mention font catalogue (as a whole) and maths font survey
+Web interface:
+ A mechanism is now in place, whereby old question labels may be used to get
+ to the nearest current equivalent of the question. It does not cover *all*
+ old questions: please mail faq-devel@tex.ac.uk if you have a problem with an
+ old question label that you have stored.
+
+Bugfixes:
+ Bits of silliness in the web interface continue to surface. They get mended
+ as soon as I work out how; the most recent was a tendency not to translate
+ \textbackslash -- I know how to correct it, but not why it happened...
+
+Robin Fairbairns
+2008-06-20
diff --git a/obsolete/help/texfaq/CHANGES-3.19 b/obsolete/help/texfaq/CHANGES-3.19
new file mode 100644
index 0000000000..1e429919a2
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.19
@@ -0,0 +1,67 @@
+Changes in version 3.19
+
+This file lists changes since its most recent release (with version 3.18
+of the FAQ).
+
+New answers:
+ +Label grffilenames: "modern" file names in graphics
+ +Label keyval: using key-value input in macros and package
+ +Label linmacnames: why non-letters in macro names are a bad idea
+ +Label osf: using fonts with "old-style" numbers
+ +Label pdf-fig-chars: disappearing glyphs in pdfTeX figures (from Thanh)
+ +Label texorpdf: error "not allowed in PDFDocEncoded string"
+ +Label texthings: what all these <thing>TeX names are
+ +Label usesymb: using symbols
+ +Label whatmacros:brief outline of macros for "bits and pieces" section
+ +Label wideflt: centre a float wider than text area
+
+Relabelled answers:
+ +Label xfigetc: discusses xfig and asymptote (so far) (was label xfig)
+
+Revised answers:
+ +Label askquestion: what to do if your minimal example needs a figure
+ +Label acroantics:content of old label outszwrng merged in
+ +Label biblatex: updated, now also mentions biber
+ +Label books: mention Lulu version of TeX by Topic
+ +Label chngmargonfly: mention addlines package
+ +Label compactbib:mention the compactbib package (surprise!)
+ +Label drawing: describe pictex, epic and eepic (all previously skated over)
+ +Label editors: mention texworks
+ +Label figurehere:mention \MakeSorted from perpage package
+ +Label fonts-pln: mention varisize
+ +Label footnpp: mention zref package perpage module
+ +Label ftncapt: clarification (I hope)
+ +Label latex2html:mention plastex
+ +Label latexe: reworked for clarity
+ +Label latexpronounce: following on from latexe
+ +Label linenos: numline package now obsolete
+ +Label luatex: tidied up, now I'm clearer about LuaTeX, myself
+ +Label logos: clarified, in light of changes to printing layout we now use
+ +Label man-latex: added pointer to first-latex-doc
+ +Label marginpkgs:changepage package supplants chngpage
+ +Label mcite: mention mciteplus and collref packages
+ +Label nonfree: explain what went wrong and what is happening
+ +Label ifpdf: mention ifxetex and ifluatex
+ +Label noroom: tidied up e-TeX related part of answer
+ +Label ref-doc: mention latexcheat
+ +Label setURL: mention spaces and hyphens options of url.sty
+ +Label texsystems:mention MikTeX-for-Linux
+ +Label wordcount: mention TeXcount
+ +Label writecls: mention Oberdiek's splendid source2e pdf file
+ +Label wygexpts: preview-latex now part of auctex
+
+Deleted answers:
+ +Label outszwrng
+(remember, as of the previous release, links to "old" labels remain
+valid, pointing to an answer that is as near relevant as possible)
+
+Web interface:
+ The initial list of questions no longer gives a URL containing all
+ the answers -- Google was returning that for every match, which
+ didn't help!
+ All links to CTAN files, directory .zips and directories for
+ browsing are now http, and there's no longer any mention of .tar.gz
+ archives of CTAN directories (since they're no longer available)
+
+Robin Fairbairns
+2009-06-10
diff --git a/obsolete/help/texfaq/CHANGES-3.19a b/obsolete/help/texfaq/CHANGES-3.19a
new file mode 100644
index 0000000000..a9d2e1b0a4
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.19a
@@ -0,0 +1,44 @@
+Changes in version 3.19
+
+This file lists changes since its most recent release (with version 3.18
+of the FAQ).
+
+New answers:
+[none yet]
+ +Label grffilenames: "modern" file names in graphics
+ +Label keyval: using key-value input in macros and package
+ +Label linmacnames: why non-letters in macro names are a bad idea
+ +Label osf: using fonts with "old-style" numbers
+ +Label pdf-fig-chars: disappearing glyphs in pdfTeX figures (from Thanh)
+ +Label texorpdf: error "not allowed in PDFDocEncoded string"
+ +Label texthings: what all these <thing>TeX names are
+ +Label usesymb: using symbols
+ +Label whatmacros:brief outline of macros for "bits and pieces" section
+ +Label wideflt: centre a float wider than text area
+
+Relabelled answers:
+[none yet]
+ +Label xfigetc: discusses xfig and asymptote (so far) (was label xfig)
+
+Revised answers:
+ +Label impgraph: changed the question title
+ +Label man-latex: mention Philip Hirschhorn's "getting up and running..."
+ +Label mathstext: correct discussion of \textrm in maths
+
+Deleted answers:
+[none yet]
+ +Label outszwrng
+(remember, as of the previous release, links to "old" labels remain
+valid, pointing to an answer that is as near relevant as possible)
+
+Web interface:
+[no changes yet]
+ The initial list of questions no longer gives a URL containing all
+ the answers -- Google was returning that for every match, which
+ didn't help!
+ All links to CTAN files, directory .zips and directories for
+ browsing are now http, and there's no longer any mention of .tar.gz
+ archives of CTAN directories (since they're no longer available)
+
+Robin Fairbairns
+2009-06-16
diff --git a/obsolete/help/texfaq/CHANGES-3.19c b/obsolete/help/texfaq/CHANGES-3.19c
new file mode 100644
index 0000000000..dacd59d989
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.19c
@@ -0,0 +1,44 @@
+Changes in version 3.19c
+
+This file lists changes since its most recent release (with version 3.19a
+of the FAQ -- version 3.19b was a bug-fix patch).
+
+New answers:
+ <none>
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label adobetypen: mention xetex and luatex where previously said OTF unusable
+ +Label amfonts: mention DVI dis-/re-assembly to get rid of am fonts refs
+ +Label buildbib: mention Google Scholar's bibtex output
+ +Label cd: update details of the TeX collection
+ +Label context: attempt closer tally with reality (further input welcome!)
+ +Label doc-dirs: Herbert Voss's "tips and tricks" has gone
+ +Label errmissitem: remove spurious command in example code
+ +Label findfiles: update address given for dante search page
+ +Label figurehere: mention the re-implemented here package
+ +Label footintab: mention threeparttablex package
+ +Label keyval: replace keys3 mention with l3keys[2e]
+ +Label latex3: tidy, update broken references
+ +Label luatex: better English(!), mention release of 0.50.0
+ +Label mathml: correct link to mathtex
+ +Label nonfree: the non-free tree has disappeared...
+ +Label patch: sort out examples
+ +Label privinst: change recommended use of kpsewhich
+ default home texmf is different for MacTeX
+ +Label psfchoice: mention txfontsb
+ +Label what-tds: change recommended use of kpsewhich (as privinst)
+
+ (throughout): use mirrors.ctan.org rather than www.tex.ac.uk
+ where appropriate
+
+Deleted answers:
+ <none>
+
+Web interface:
+ One bug fix (code examples containing \let tended to be lost)
+
+Robin Fairbairns
+2010-01-19
diff --git a/obsolete/help/texfaq/CHANGES-3.19d b/obsolete/help/texfaq/CHANGES-3.19d
new file mode 100644
index 0000000000..f447a03924
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.19d
@@ -0,0 +1,34 @@
+Changes in version 3.19d
+
+This file lists changes since its most recent release (with version 3.19c
+of the FAQ).
+
+New answers:
+ +Label plaintex: explains "writing in tex", was part of Label whattex
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label codelist: mention the minted package
+ +Label docs: single reference to epslatex (via catalogue)
+ +Label etex: add ctan link
+ +Label filesused: rewrite to clarify the issue with \input
+ +Label luatex: now version 0.60.0
+ +Label fonts-pln: replace some complete gibberish (undoing mis-edits, I guess)
+ +Label parallel: mention the pdfcolparcolumns package
+ +Label seccntfmt: remove superfluous \expandafter in programming, tidy text
+ +Label tabcellalign: editorial on \PBS macro discussion
+ +Label texfuture: rehashed, in light of today's situation
+ +Label whattex: simplified by removal of material for Label plaintex
+
+Deleted answers:
+ <none>
+
+Web interface:
+ Extension of links to catalogue, to packages "distributed as part of..."
+ Abbreviate header text (omitting long list of "helpers" -- which will
+ ultimately be available in a separate file online)
+ Convert all alphabetic SGML entities to use numeric equivalents
+
+Robin Fairbairns
diff --git a/obsolete/help/texfaq/CHANGES-3.20 b/obsolete/help/texfaq/CHANGES-3.20
new file mode 100644
index 0000000000..346afcbdb1
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.20
@@ -0,0 +1,40 @@
+Changes since version 3.19d
+
+New answers:
+ +Label initex: why is there no initex?
+ +Label sysunix: TeX for Unix and GNU/Linux systems, revised from TeXsystems
+ added the tex-gpc distribution
+ +Label syswin: TeX for Windows 32, etc., systems, revised from TeXsystems
+ +Label sysmac: TeX for Macintosh systems, revised from TeXsystems
+ +Label sysother: TeX for other systems, revised from TeXsystems
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label baselinepar: rewritten, taking info account a recent issue from ctt
+ +Label biblatex: can now give a CTAN link for Biber
+ +Label cd: reworded to reflect current realities
+ +label extsizes: mention some classes that have non-standard font sizes
+ +label filename: bugfix for (simple) macros saving "current file name"
+ +Label letterclass: mention knuth's letter stuff and isodoc class
+ +Label manymathalph:correction to us of controls on alphabets in bm
+ +Label mathml: recognise STIX fonts as potential contribution
+ +Label mcite: revtex 4.1 has its own mechanism
+ +Label metrics: rewrite text about LY1 encoding
+ +Label multidoc: mention docmute, standalone and subdocs
+ +Label nopagebrk: correct assertion about lists vs. samepage environment
+ +Label poster: mention beamerposter
+ +Label psfchoice: add URW Classico to the list
+ +Label reallyblank: mention emptypage package
+ +Label slidecls: mention lecturer and present packages (neither is a class)
+ +Label TeXsystems: now a list of links to the new sys* labels
+ +Label widows: rewritten with clarification from Peter Moulder
+
+Deleted answers:
+ <none>
+
+Web interface:
+ Links to packages, etc., now use http://mirror.ctan.org
+
+Robin Fairbairns
diff --git a/obsolete/help/texfaq/CHANGES-3.21 b/obsolete/help/texfaq/CHANGES-3.21
new file mode 100644
index 0000000000..1d7abd0014
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.21
@@ -0,0 +1,47 @@
+Changes since version 3.20
+
+New answers:
+ +Label spawnprog: the \write18 mechanism for spawning programs
+ +Label whatengine: am I running pdfTeX, XeTeX or luaTeX?
+ +Label write: the \write primitive for writing text files
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label biblatex: mention bibtex8, even though biblatex+biber are winning
+ +Label codelist: extend coverage of minted package (and Pygments)
+ +Label commercial: remove Y&Y (not commercial any longer)
+ +Label dpfloat: mention floatpage package
+ +Label drawing: mention "embedded source" packages for asy, gplot, mp
+ +Label editors: rationalise, removing "wildcard"
+ +Label filename: add currfile, remove "DIY" code (which never worked right)
+ +Label floats: update discussion of morefloats package, mention etex.sty
+ +Label fmtconv: mention openoffice route for MS-word
+ +Label gethelp: link "latex community" and "latex stack exchange"
+ +Label graphicspath: rephrase discussion of \graphicspath
+ +Label instt1font: attempt to clarify updmap vs. updmap-sys
+ +Label labelfig: mention (new) lpic package
+ +Label latex2html: link to info on tug.org (note tex4ht now sourced there)
+ +Label mathml: link to info on tug.org
+ +Label music: rewritten following rearrangements on ctan
+ +Label nopagebrk: discuss \pagebreak, \nopagebreak (!)
+ +Label papergeom: discuss dvipdfm and its extensions
+ +Label psfchoice: report one (at least) known problem with [pt]xfonts
+ +Label pspreview: simplify, given that it's far less of a problem now
+ +Label ref-doc remove link to NASA latex ref, add link to gna.org one
+ +Label textflow: mention cutwin package
+ +Label tmupfl: mention morefloats package, with caveats
+ +Label verbwithin: mention cprotect package
+ +Label WYGexpts: drop "activetex" -- seems no longer available
+ +Label zerochap: rewrite for clarification
+
+Deleted answers:
+ +Label ifpdf: subsumed in new "whatengine" answer (link rerouted there)
+ +Label lollipop: no longer relevant (a pity)
+
+Web interface, etc.:
+ Some LaTeX command translations were broken, and have been mended
+ Work has started on a major reorganisation of the "fonts" section
+
+Robin Fairbairns
diff --git a/obsolete/help/texfaq/CHANGES-3.22 b/obsolete/help/texfaq/CHANGES-3.22
new file mode 100644
index 0000000000..b874fc0814
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.22
@@ -0,0 +1,45 @@
+Changes since version 3.21
+
+New answers:
+ +Label inlgrphapp: inline code to standalone graphics (new: gmp, mpgraphics)
+ +Label inst-texlive: install a package from TeX live
+ +Label startup: getting started with (La)TeX
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label archives: redo and update for 2 CTAN archives, cover mirror.ctan.org
+ +Label codelist: updated and reformatted
+ +Label drawing: removed inline code stuff to +inlgrphapp
+ mention XeTeX driver for pstricks
+ +Label dtx: mention sty2dtx
+ +Label findfiles: a more uniform description of what happens
+ +Label fontsize: deal with omissions from fix-cm
+ +Label hash: describe command-defs-within-commands in LaTeX syntax, too
+ +Label logos: mention hologos, metalogo
+ +Label ltxcmds: show use of (la)texdef package
+ +Label luatex: correct pdfTeX version number, add links to distributions
+ +Label man-latex: add CTAN reference for "Getting something out of LaTeX"
+ +Label mathml: expand font details to all known current free maths fonts
+ +Label mpprologues: mpsproof.tex has now moved on the archive
+ +Label oddpage: clarify use of \ifoddpage for LaTeX users
+ +Label pdftexgraphics: describe use of auto-pst-pdf
+ +Label psfchoice: discuss MathTime Pro 2 Lite fonts
+ +Label scriptfonts: mention rsfso, mnsymbol, mathabx and urwchancal
+ +Label struttab: describe use of makecell
+ +Label textrace: offer mf2pt1 (about time, too!)
+ +Label uploads: general update, including mirroring technologies
+ +Label xetex: add link to documentation
+ +Label xfigetc: replace link for jfig
+
+Deleted answers:
+ <none>
+
+Web interface, etc.:
+ Work on a slightly more sane layout is under way, but not yet in a
+ shape to be released
+ Since the start of March 2011, "last edited" tags have been added to/updated
+ in answers that have changed
+
+Robin Fairbairns
diff --git a/obsolete/help/texfaq/CHANGES-3.23 b/obsolete/help/texfaq/CHANGES-3.23
new file mode 100644
index 0000000000..47449bc125
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.23
@@ -0,0 +1,50 @@
+Changes since version 3.22
+
+New answers:
+ +Label book-lists: redirector to the dismembered parts of old "label books"
+ +Label ctan: summary of the salient points of the archives
+ +Label catalogue: outline of the CTAN catalogue
+ +Label latex-books: the LaTeX part of old "label books"
+ +Label other-books: the miscellanea from old "label books"
+ +Label subdepth: getting even subscripts in your maths
+ +Label tex-books: TeX and Plain TeX part of old "label books"
+ +Label type-books: typesetting part of old "label books"
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label altabcr: error can be caused by insufficient columns in a matrix
+ +Label clsvpkg: rewritten with a LaTeX 2e perspective (rather than 2.09)
+ +Label context: add detail following Hans Hagen's outline in Tugboat 100
+ +Label destable: more details of caption above table
+ +Label doc-dirs: correct link to TUG India tutorials page
+ +Label drawing: link to intro doc on pgf/TikZ, and sparse docs of DraTeX
+ +Label gethelp: rewritten for (slightly) improved clarity
+ +Label hyphen: LuaTeX's hyphenation pattern loading is different
+ +Label keyval: references to expl3, xpackages replaced with l3* versions
+ keyval: mention getoptk
+ +Label labelfig: mention pst-layout; mention that pgf/TikZ is also capable
+ +Label latex2e: mention "frozen" state
+ +Label latex3: references to expl3, xpackages replaced with l3* versions
+ +Label latexqual: mention lacheck
+ +Label luatex: "clarify" statement about future changes to PDFTeX
+ luatex: updated versions mentioned; MikTeX now offers LuaTeX
+ +Label MF: mention sidelining of Metafont in the modern world
+ +Label patch: use letltxmacro where necessary
+ +Label RCS: mention gitinfo
+ +Label texthings: clarify description of luatex
+ +Label tfm: XeTeX and LuaTeX don't need TFM files
+ +Label underscore: \_ in OT1 encoding is bad news
+ +Label useMF: a step in removing archaic baggage from this answer
+
+Deleted answers:
+ +Label books: dismembered to produce the new *-books above (the
+ label is now redirected to book-lists)
+
+Web interface, etc.:
+ A small change to the HTML generation has (to the author's eye)
+ improved the appearance of pages on the web. There remain problems
+ in this area, despite the improvement.
+
+Robin Fairbairns
diff --git a/obsolete/help/texfaq/CHANGES-3.24 b/obsolete/help/texfaq/CHANGES-3.24
new file mode 100644
index 0000000000..9217a662a4
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.24
@@ -0,0 +1,41 @@
+Changes since version 3.23
+
+New answers:
+ +Label labelcount: use the "value" of a label in counter operations
+ +Label optclash: LaTeX package options clash
+ +Label printvar: print the contents of a "variable"
+ +Label unicode: "Unicode for TeX users"
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label bug: reworded in the light of more on-line help available
+ +Label dvi: tidied, mention of XeTeX and its XDV format
+ +Label ECfonts: brought up to date (a bit: more remains to be done)
+ +Label editors: updated comments about TeXworks
+ +Label include: clarification of page number constraint
+ +Label LaTeX3: add git repository link, mention state of formats
+ +Label latex-books: add "LaTeX Beginner's Guide" and Herbert Voss's UIT books
+ +Label mathml: outline the use of MathJax
+ +Label missbegdoc: rewritten to take account of the BOM issue
+ +Label multind: add amsmind and imakeidx packages
+ +Label music: reflect restructuring of fonts
+ +Label sysmac: mention root privilege requirement for MacTeX
+ +Label sysother: discourage any hope of a current VMS version
+ +Label tds: toned-down and untangled the text, a bit
+ +Label texthings: mention ProTeXt among distributions
+ +Label TUG* corrected contact details
+ +Label tutbitslatex: revise statement about Herbert Voss's mathmode book
+ incorporate para about TUG India tutorials from doc-dirs
+ +Label underline: remove obsolete statement about ulem docs
+ +Label virtualfonts: rewrite, improving clarity (I hope...)
+ +Label wordcount: add health warnings for detex-like counts
+
+Deleted answers:
+ +Label doc-dirs: subsumed in label tutbitslatex
+
+Web interface, etc.:
+ <no changes>
+
+Robin Fairbairns
diff --git a/obsolete/help/texfaq/CHANGES-3.25 b/obsolete/help/texfaq/CHANGES-3.25
new file mode 100644
index 0000000000..766f3062f3
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.25
@@ -0,0 +1,47 @@
+Changes since version 3.24
+
+New answers:
+ +Label includeother:LaTeX refuses to \include from (some) other directories
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label acrobat: Rearranged and extended somewhat (dropped V-TeX details)
+ +Label bibinline: Outline use of the new usebib package
+ +Label citesort: Show how to do the job with biblatex
+ +Label cmdstar: Suggest use of xparse for *-commands
+ +Label crossref: Clarified wording, and removed incorrect "effect" of error
+ +Label eqnarray: Added link to Stefan Kottwitz blog entry on the problem
+ +Label euro: Updated note about using marvosym font
+ +Label extrabrace: Some clarification (and a new solution)
+ +Label filesused: Discuss mkjobtexmf
+ +Label findfont: Rewritten, downplaying Metafont and covering TTF and OTF
+ +Label footintab: Discuss tablefootnote package
+ +Label i18nbib: BibLaTeX is another candidate
+ +Label inlgrphapp: Add picture environment to list, mention picture package
+ +Label isitanum: Improve \testnum definition
+ +Label labelfig: Describe pinlabel package
+ +Label man-latex: Correct link to Chris Harrison's (now) tutorial;
+ Mention van Dongen's, Wilkins' and Buxbaum's offerings
+ +Label marginpkgs: Discuss zwpagelayout
+ +Label mfptutorials:Restore (lost) link to MetaFun manual
+ +Label noroom: Mention morewrites for lots of (pretend) output streams
+ +Label papergeom: Outline use of zwpagelayout package
+ +Label ref-doc: Added reference to macros2e document
+ +Label slashbox: Recommend diagbox package in preference to slashbox
+ +Label syswin32: Miktex 2.9 no longer beta ... so catch up!
+ +Label tutbitslatex:Rearrange stuff on pgf/tikz, after new management of site
+ +Label tutorials*: Changed question title to "... TeX-based systems"
+ +Label usesymb: Add fdsymbol, mdsymbol
+ +Label verbwithin: Suggest "v" argument type of xparse
+ +Label watermark: Discuss xwatermark and use of pdftk
+ +Label whatengine: Sort out erroneous wording, correct HTML of example code
+
+Deleted answers:
+ <none removed>
+
+Web interface, etc.:
+ <no changes>
+
+Robin Fairbairns
diff --git a/obsolete/help/texfaq/CHANGES-3.26 b/obsolete/help/texfaq/CHANGES-3.26
new file mode 100644
index 0000000000..ed71bfd11e
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.26
@@ -0,0 +1,59 @@
+Changes since version 3.25
+
+New answers:
+ +Label expl3-old: package needs a newer LaTeX 3 harness
+ +Label latex3-prog: learning LaTeX 3 programming
+ +Label repeat-num: repeat an operation a given number of times
+ +Label repeat-set: repeat an operation for each element of a set
+ +Label whatenv: brief outline of what environments are
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label acrobat: [tidying layout]
+ +Label archives: largely rewritten for "new" archive arrangements
+ +Label chapbib: show biblatex-based approach
+ +Label codelist: more on use of minted package
+ +Label complist: clarified description of "what's going on"
+ +Label cmdstar: clarified use of LaTeX 3, here
+ +Label conditional: suggest stampinclude for rapid (partial) compilation
+ +Label ctan: revised following recent changes to archive access
+ +Label dolldoll: elaborated "reasons" from a tex.stackexchange answer
+ +Label dpfloat: describe use of caption package for the job
+ +Label drawing: reword text about PGF/TikZ
+ +Label extsizes: describe use of scrextend package for document font sizes
+ +Label ftncapt: clarify example
+ +Label hyphenaccents: the "future" (unicode hyphenation tables) is here!
+ +Label ltxcmds: more detail of the latexdef application
+ +Label latexqual: add a proviso about l2tabu/nag
+ +Label make: add recommendation for arara
+ +Label man-latex: Nicola Talbot's stuff has moved to a new web site
+ +Label minxampl: discuss support packages
+ +Label nofm: suggest zref-lastpage
+ +Label oddpage: suggest the ifoddpage package
+ +Label patch: describe the regexpatch package
+ +Label pkgdoc: mention the site texdoc.net, miktex mthelp
+ +Label pdftexgraphics: mention pdftricks2
+ +Label psfchoice: update mathdesign outline, add newtx and garamondx
+ +Label readML: Context can do the job (rather well, one understands ;-)
+ +Label readtex: suggest asking for a PDF instead ;-)
+ +Label spell: update, add recommendation for (exptl) spelling package
+ +Label struttab: removed internal macros in example of cellspace
+ +Label symbols: rearrange, and mention unicode maths symbol table
+ +Label tocloft: mention new (straightforward) etoc package
+ +Label uploads: rewritten for the (new) archive arrangements
+ +Label vertspacefloat: moved to a new location in question list
+ +Label virtualfonts: change question "title" to be a question
+ +Label xetex: change question "title" to match other projects' titles,
+ redo answer, based on a tex/sx post
+
+Deleted answers:
+ <none removed>
+
+Web interface, etc.:
+ The "default archive" (used in links from answers) is now mirror.ctan.org
+ (i.e., it's not an archive, but a selector of a mirror of the archive)
+
+Robin Fairbairns
+Hapless FAQer of Cambridge
diff --git a/obsolete/help/texfaq/CHANGES-3.27 b/obsolete/help/texfaq/CHANGES-3.27
new file mode 100644
index 0000000000..f41f88cfa0
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.27
@@ -0,0 +1,43 @@
+Changes since version 3.26
+
+New answers:
+ <none yet>
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label buffovl: link to ghostscript and gsview homes, not CTAN
+ +Label catalogue: editorial clarification
+ +Label cmdstar: [tidying layout]
+ +Label commercial: remove mention of the (defunct) Textures distribution :-(
+ +Label dolldoll: editorial tidy (un-knotting tortuous text)
+ +Label dtx: suggest dtxgen
+ +Label dvipdfmgraphics: link to ghostscript home, not CTAN
+ +Label editors: add texstudio (to texworks) in list
+ +Label fontsize: recommend anyfontsize package, too
+ +Label footintab: clarify "table in minipage" (should have been "tabular")
+ +Label latexbug: removed "upload latex bug by email" (no longer available)
+ +Label luatex: revised for updates from the project, and clarified
+ +Label make: add arara and try; add vpp to ctan links list
+ +Label man-latex: two more links to "Dickimaw" books
+ +Label notWYSIWYG: rewritten after a bit of historical research
+ +Label osf: \oldstylenums does use bold face to match surrounding text
+ +Label otherprinters: link ghostscript home, not CTAN
+ +Label previewers: link ghostscript home, not CTAN
+ +Label psfchoice: mention newpx, give CTAN links for URW fonts in newpx,newtx
+ +Label pspreview: link ghostscript, gsview home, not CTAN
+ +Label recovertex: link ghostscript home, not CTAN
+ +Label repeatgrf: link ghostscript home, not CTAN
+ +Label scriptfonts: removed mention of ghostscript, add tg-chorus
+
+Deleted answers:
+ -Label y2k: removed as no longer relevant
+
+Web interface, etc.:
+ A statement of the FAQ's (PD) licence is shown in the introduction.
+ Now use standard glyph for arrows, rather than "hyphen-greater"
+ Translate \beta and \pi to greek letters rather than the letters' "names"
+
+Robin Fairbairns
+Hapless FAQer of Cambridge
diff --git a/obsolete/help/texfaq/CHANGES-3.28 b/obsolete/help/texfaq/CHANGES-3.28
new file mode 100644
index 0000000000..29409bb0a0
--- /dev/null
+++ b/obsolete/help/texfaq/CHANGES-3.28
@@ -0,0 +1,66 @@
+Changes since version 3.27
+
+New answers:
+ +Label centre-flt: deals with center environment around a float
+ +Label cpy-srchpdf: replaces label srchpdf, and covers copying text, too
+ +Label getnff: support for fonts "not allowed" in distributions
+ +Label lollipop: restored entry, given new maintainer
+ +Label ltx-csv: how to deal with CSV files in LaTeX
+ +Label otf-maths: typeset maths using OpenType fonts
+ +Label parmoderr: about the error "not in outer par mode"
+
+Relabelled answers:
+ <none>
+
+Revised answers:
+ +Label bibtexing: link to www.bibtex.org
+ +Label boldgreek: clarify some really old text
+ +Label catalogue: update in light of new www.ctan.org
+ +Label clsvpkg: clarify some distinctions
+ +Label cmdstar: \makeatletter was incorrectly placed in example
+ +Label commercial: remove entry for Micropress, Inc (once vTeX suppliers)
+ +Label conditional: discuss use of the tagging package
+ +Label context: editorial (for better relation to reality, one hopes ;-)
+ +Label custbib: discourage "beginners" from attempting biblatex styles
+ +Label dtx: add discussion of generating output from the files
+ +Label filesused: change reference from teTeX to TeX-live(!)
+ +Label findfont: tidy, add more reference details
+ +Label gethelp: add reference to TeX/StackExchange "starter" summary
+ +Label hyphexcept: deal, perfunctorily, with Unicode hyphenation
+ +Label hyphoff: editorial change only
+ +Label nohyph: {ditto}
+ +Label labelfig: discuss pdfrack
+ +Label latexandplain: re-write -- previous version seemed not to help, much
+ +Label latextoplain: re-dump my mental image of what goes on ... looks better
+ +Label ltxcmds: clarification (editorial changes only)
+ +Label makeindex: further work on xindy description
+ +Label mfptutorials: remove one dead link, refer to Voipio's TUGboat papers
+ +Label mp: MetaPost can also create SVG output
+ +Label music: update discussion of lilypond, and mention lilyglyphs pkg
+ +Label normalszmiss: rewritten (a simple answer is difficult to write "well"!)
+ +Label numbersets: add boondox, newpx and newtx fonts as a potential source
+ +Label oldfontnames: tidied up
+ +Label papergeom: remove special case for vTeX
+ +Label plninltx*: clarification (editorial changes only)
+ +Label psfchoice: provide link to +otf-maths
+ +Label readtex: add a bit about using on-line LaTeX servers
+ +Label slidecls: mention a beamer gallery linked from post in TeX/sx
+ +Label spell: suggest hunspell (which is even part of recent MacOS X)
+ +Label sysother: remove references to vTeX
+ +Label sysunix: remove mention of MikTeX/Unix, and references to vTeX
+ +Label tocloftwrong: add actual answer (as well as reference to answer...)
+ +Label usepictex: remove reference to vTeX
+ +Label verbwithin: suggest newverbs, verbatim box-writing (tcolorbox,verbatim)
+ +Label whereFAQ: remove link to texnik.de
+ +Label xspace: clarify, play down the value of the command
+
+Deleted answers:
+ +Label srchpdf: replaced by answer labelled cpy-srchpdf
+
+Web interface, etc.:
+ Links in the section at the end of each answer now go via the mirror
+ selector mirror.ctan.org (previously all links went via the Cambridge
+ CTAN node).
+
+Robin Fairbairns
+Hapless FAQer of Cambridge
diff --git a/obsolete/help/texfaq/ChangeLog b/obsolete/help/texfaq/ChangeLog
new file mode 100644
index 0000000000..7eca576bcd
--- /dev/null
+++ b/obsolete/help/texfaq/ChangeLog
@@ -0,0 +1,17802 @@
+2014-06-10 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * texfaq2html: tidy blank lines
+
+ * sanitize.pl: a few changes from -beta
+
+ * gather-faqbody.tex: new version
+
+ * faq-intro.tex:
+ * faq-mac-prog.tex
+ * faq-wdidt.tex:
+ * add-general.tex: \nothtml{\noindent}!!!
+
+2014-06-09 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-conditional): mention the tagging package
+
+2014-06-03 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-dtx): first stab at description of "using" a
+ .dtx/.ins combination to produce packages and docs
+
+2014-05-30 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-fmt-conv.tex (q-latextoplain): clarification (i hope!)
+
+ * faq-backgrnd.tex (q-context): attempting a better path for beginners
+
+2014-05-21 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-readtex): dash off ref to online compilers
+
+2014-05-18 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-t-g-wr.tex (q-oldfontnames): historic stuff cleared away,
+ slight rewording
+
+2014-05-07 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-makeindex): work on description of using xindy
+
+ * sanitize-beta.pl (sanitize_line): add \luatex and \lualatex
+
+ * faq.sty: add \luatex and \lualatex
+
+2014-05-02 Robin Fairbairns <rf10@cl.cam.ac.uk> ron.cummins@gmail.com
+
+ * faq-biblio.tex (q-custbib): discourage beginners from attempting
+ their own biblatex style; editorial
+
+2014-04-25 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: restore lollipop (w/cat link)
+
+ * faq-backgrnd.tex (q-lollipop): renew, from add-general
+
+2014-04-23 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: drop fonts/armenian (fonts now part of armtex)
+
+ * add-general.tex (q-lollipop): recreated entry for lollipop
+
+2014-04-04 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-cmdstar): bug fix from javier mora
+
+2014-03-19 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-getit.tex (q-findfiles): editorial
+
+2014-03-18 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-catalogue): yet another iteration
+ (q-context): typos
+ (q-latexandplain): rewrite. who knows if it's worth it...
+
+2014-03-17 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-catalogue): 2 iterations towards
+ comprehensibility
+
+2014-03-14 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-latex-books): sort out html of more math into latex
+ (still not terribly good, but no more actual latex...)
+
+2014-03-05 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-getnff,q-otf-maths): removed as already in main
+ (q-outer-err): removed, similarly
+
+2014-03-04 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex: missing close brace
+
+2014-02-18 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-mfptutorials): add links to the voipio papers,
+ and remove the (dead) one to Heck's
+
+2014-02-16 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-hyp+pdf.tex (q-pdfpagelabels): add {} to a \dots call
+ (q-cpy-srchpdf): deal with broken parens
+
+2014-02-10 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex: remove q-ltx-csv (now in faq-mac-prog)
+
+2014-01-31 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-biblio.tex (q-custbib): typo
+
+2014-01-29 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): remove {} from pattern \\The{}\{\} ?
+
+2014-01-28 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-gethelp): warning of abrasiveness on tex/sx
+
+2014-01-26 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (Q-filesused): convert tetex ref to texlive-unix(!)
+
+2014-01-22 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-dropping): remove ref to vtex
+
+ * faq-graphics.tex (q-labelfig): remove refs to vtex
+
+ * faq-hyp+pdf.tex (q-acrobat): remove ref to vtex
+
+ * faq-t-g-wr.tex (q-usepictex): root out reference to vtex
+
+ * faq-fonts.tex (q-otf-maths): new, from add-general
+ (q-psfchoice): editorial, incl reference to q-otf-maths
+
+2014-01-21 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-getit.tex (q-findfont): tidy, and fill in missing holes
+
+2013-12-10 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-mp): mp output may be svg, too
+
+2013-12-04 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-symbols.tex (q-numbersets): add boondox as a source, mention
+ newpx, newtx as preferable to pxfonts/txfonts
+
+2013-11-28 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-cap-out-flt): new error answer
+
+2013-11-27 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-whattex): reworded for clarity
+
+2013-11-26 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-xspace): play the command down (after reading a post
+ on tex/sx by david carlisle, tidy the whole question.
+
+2013-11-20 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-normalszmiss): rewritten. not easy to do, without
+ sounding patronising
+
+2013-11-19 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-install.tex,faq-biblio.tex: editorial (% signs)
+
+ * faq-wdidt.tex (q-center-flt): new, from add-general
+
+ * sanitize-beta.pl (sanitize_line): move \textpercent{} to immediately
+ below "dump comments" code
+
+ * faq-adj-types.tex (a-outszwrng): braces after \textpercent
+
+2013-11-05 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-inputenc): show structure of multiple-encoding docs
+
+2013-10-28 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-linespace): editorial
+
+2013-10-22 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-fonts.tex (q-getnff): new, from add-general
+
+ * add-general.tex (q-getnff): mention distinction between -sys and
+ user versions of the script
+
+2013-10-21 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-verbwithin): mention verbatim writing using
+ tcolorbox and moreverb (and mention the comments in the doc of
+ verbatim, for diy enthusiasts).
+
+ * faq-intro.tex: add martin garrod to the list, mark drucbert deceased
+
+ * faq-bits+pieces.tex (q-clsvpkg): remove duplicate "report" (!)
+
+2013-10-18 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-catcodes): doodling with better explanation
+ (not got very far)
+
+ * faq-docs.tex (q-latex-books): reference digital version of tlc2
+
+ * FAQ-wdidt.tex (q-verbwithin): typo (extra closing paren)
+
+2013-10-15 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-bibtexing): mention www.bibtex.org
+
+2013-10-10 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-context): provide link to minimals (even though
+ it's not the neatest of web sites...)
+
+2013-10-09 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add context-contrib
+
+ * faq-backgrnd.tex (q-context): edited for more realism re. ctan
+
+ * faq-getit.tex (q-findfiles): rsync is the only mirroring protocol
+
+2013-10-02 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-support.tex (q-spell): weave in hunspell (not on ctan...)
+
+2013-09-27 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-plninltx*): editorial (hoping for clarification)
+ (q-ltxcmds): editorial (again aiming for clarification)
+
+ * faq-adj-types.tex (q-music): typo for \progname
+
+2013-09-25 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-gethelp): change junk edit date to today
+
+2013-09-23 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: makeinfo's moved
+
+ * faq-adj-types.tex (q-music): use of lilyglyphs as option
+
+2013-09-20 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-nohyph): minor editorial
+ (q-hyphoff): ditto
+ (q-hyphexcept): editorial, add a bit of text discussing unicode
+ hyphenation
+
+2013-09-13 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * gather-faqbody.tex: comment out debugging stuff
+
+ * faq-docs.tex (q-gethelp): mention tex/sx "getting started" page
+
+2013-09-11 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: pgf dir is actually the base above graphics/pgf
+ add cat link for picinpar
+ * faq-mac-prog.tex (q-ltx-csv): new, from add-general
+
+2013-09-09 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-parmoderr): new, from add-general
+
+ * add-general.tex (q-parmoderr): tweaks for clarification
+
+2013-08-29 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-overstrike): suggest pdfcomment
+
+ * dirctan.tex: add pdfcomment
+
+2013-08-21 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-mathlips): sort out refs to yhmath (now in just
+ the one place on ctan
+
+ * dirctan.tex: add belleek (from broken filectan entry)
+
+ * faq-hyp+pdf.tex (q-cpy-srchpdf): extended replacement for q-srchpdf
+
+ * dirctan.tex: add mmap, belleek; remove one of the verbdef entries
+
+2013-08-20 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-intro.tex: editorial
+
+ * faq-wdidt.tex (q-tocloftwrong): missing brace
+
+2013-08-19 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: remove duplicate of verbdef
+
+2013-07-18 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: tidy up copies
+
+ * faq-texsys.tex (throughout): remove vtex
+ (q-sysunix): purge mention of unix miktex
+ dirctan.tex: remove biolinum
+
+2013-07-17 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-slidecls): link to beamer theme gallery
+
+2013-07-15 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-papergeom): no more vtex
+
+ * faq-texsys.tex (q-sysother): expunge reference to vtex
+
+2013-07-14 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-tocloftwrong): give answers as well as reference!
+ (needs some reference to koma-script)
+
+2013-07-12 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-labelfig): add text discussing pdfrack
+
+ * dirctan.tex: add pdfrack
+
+2013-07-09 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-clsvpkg): editorial
+
+2013-07-02 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-whereFAQ): remove voss's texnik.de (no longer there)
+
+2013-06-25 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-eplain): editorial
+ (q-whyfree): editorial on licence issues
+ (q-tug*): tidy conditional sections
+
+2013-06-20 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add verbatimbox
+
+ * faq-wdidt.tex (q-verbwithin): add bullet item about verbatimbox
+
+2013-06-17 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-context): flagged potential need for context
+ minimals; this file is wildly different to its supposed rcs copy...
+ needs review when i've learnt more about minimals
+
+2013-06-12 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faqbody.tex: version 3.28, today
+
+ * faq-symbols.tex (q-boldgreek): largely rewritten, with more detail
+ about the reasons for the acrobatics needed (also remove incorrect
+ assertion about amsmath and \mathbf)
+
+2013-06-10 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-verbwithin): newverbs helps -- like verbdef, etc
+
+ * dirctan.tex: add newverbs
+
+2013-06-07 *** Release 3.27 ***
+
+2013-06-06 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-otf-maths): minor tweak
+
+ * faq-install.tex (q-what-TDS): editorial
+
+2013-06-05 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-symbols.tex (q-scriptfonts): mention tgchorus
+
+ * faq-wdidt.tex (q-dolldoll): editorial clarification (hopefully...)
+
+2013-06-04 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add anyfontsize, remove ghostscript, gsview,
+ correct polyglossia
+
+ * faq-mac-prog.tex (q-fontsize): editorial, incorporate
+ anyfontsize package
+
+2013-06-03 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-notWYSIWYG): flesh out, note demise of textures,
+ editorial
+
+ * texfaq2html-beta: ignore intro by scanning file for \end{introduction}
+
+ * faq-jot-err.tex (q-buffovl): editorial
+
+ * faq-graphics.tex (q-labelfig,q-repeatgrf,q-dvipdfmgraphics): gs
+ from web
+
+2013-05-31 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-hyp+pdf.tex (q-hyper, q-acrobat): tidies, gs from web
+
+2013-05-29 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-fonts.tex (q-psfchoice): add URW base35 in their own right
+ to discussion of txfonts
+
+ * faq-graphics.tex (q-mpprologues): href for ghostscript
+ (q-labelfig): href for gsview
+
+ * faq-fonts.tex (q-psfchoice): href for ghostscript
+
+ * faq-dvi.tex (q-otherprinters): href for ghostscript
+
+2013-05-24 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * texfaq2html: minuscule changes from -beta
+
+ * sanitize.pl (sanitize_line): minuscule changes from -beta
+
+2013-05-21 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-texfuture): end date for luatex 2014 (i think)
+
+ * sanitize-beta.pl (sanitize_line): add entity xlations for \beta, \pi
+
+ * faq-projects.tex (q-luatex): update somewhat
+
+ * faq-backgrnd.tex (q-ctan): editorial
+ (q-catalogue): editorial
+ (q-y2k): commented out (no longer relevant)
+
+2013-05-20 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-texsys.tex (q-editors): reword mention of texworks, add texstudio
+
+2013-05-14 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-symbols.tex (q-osf): \oldstylenums _does_ use bold style
+
+2013-05-13 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add try
+
+ * faq-how-do-i.tex (q-make): add try
+
+ * faq-backgrnd.tex (q-catalogue): editorial
+
+2013-04-29 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-intro.tex: added subsection about licence
+
+2013-04-23 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-mpprologues): untangle some prose. slightly.
+
+2013-04-22 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-fonts.tex (q-pspreview): ghostscript, gsview from web
+ (q-psfchoice): remove ghostscript mention in discussing urw fonts;
+ reference newpx from pxfonts, and newtx from txfonts, add urw-base35
+ to ctanrefs as locations of palladio and NimbusRomanNo9
+
+2013-04-19 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-dvi.tex (q-dvi-bmp): typo
+
+2013-04-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-buffovl): ghostscript and gsview from the net
+
+2013-04-17 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add dtxgen
+
+ * faq-bits+pieces.tex (q-dtx): mention dtxgen
+
+ * faq-projects.tex (q-luatex): revise version statement, editorial
+
+2013-04-16 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-texsys.tex (q-commercial): remove bluesky :-(
+
+2013-04-16 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-fmt-conv.tex (q-recovertex): munge ghostscript refs, remove it
+ from ctanrefs
+
+ * faq-dvi.tex (q-dvi-bmp): editorial
+
+ * add-general.tex (q-tangle-weave): editorial, link to doc of web2c on
+ tug site
+
+2013-04-12 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-fmt-conv.tex (q-fmtconv): tidy, re-organise
+
+2013-04-11 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-fmt-conv.tex (q-readML): correct a \Qref call
+
+ * faq-fonts.tex (q-psfchoice): add newpx to the list
+
+ * faq-texsys.tex (q-syswin32): miktex 2.9 (in ctanrefs)
+
+ * faq-dvi.tex (q-otherprinters): reword because gs no longer on ctan
+ (q-previewers): ditto
+
+2013-04-09 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-symbols.tex (q-scriptfonts): elide mention of ghostscript,
+ since (a) it doesn't add anything, and (b) it's no longer
+ available on ctan
+
+ * dirctan.tex: add newpx
+
+2013-03-28 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * filectan.tex: remove <ispell>
+
+ * dirctan.tex: add <showexpl>, <ispell>; correct <spelling>; remove
+ <makeinfo>, ghostscript-[gpl|ghostgum]
+
+ * faq-adj-types.tex (q-codelist): add showexpl
+
+2013-03-26 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-man-latex): add link to nicola's phd and admin books
+
+2013-03-22 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-tangle-weave): new: the basics of web
+
+2013-03-21 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-make): add ctan link for vpp
+
+2013-03-15 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-dvi): editorial, hoping to clarify
+
+2013-03-11 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-footintab): don't suggest putting a "table" in
+ minipage ... good sense from ulrike fischer
+
+2013-03-08 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): \arrowhyph translate to &#8594;
+
+2013-03-07 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * gather-faqbody.tex: v3.26b, today
+
+ * faq-the-end.tex (q-latexbug): removed "upload bug by email"; editorial
+
+2013-03-05 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-varitoc): start of an answer starting from the
+ ideas of the tableof package
+
+ * faq-adj-types.tex (q-minitoc): editorial
+
+2013-03-04 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * texfaq2html, texfaq2html-beta, sanitize.pl, sanitize-beta.pl:
+ correct \ctanhref coding (never-used flexibility in early coding
+ had confused me summat rotten)
+
+2013-03-01 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-intro: remove a spurious "<p/>" (huh?)
+
+ * faq-jot-err.tex (q-manymathalph): point out that the problem can also
+ be avoided by using xetex/luatex
+
+ * gather-faqbody.tex: version 3.26a, today (released as beta)
+
+ * faq-mac-prog.tex (q-repeat-num): tone down "tex.ne.prog language"
+ (q-repeat-set): consequential changes to match -repeat-num
+
+2013-02-28 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-cmdstar): this was buggy; corrected
+
+2013-02-26 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faqbody.tex: update \faqfiledate
+
+ *** released 3.26 ***
+
+2013-02-21 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-support.tex (q-spell): editorial
+
+ * faq-fmt-conv.tex (q-readml): question links for context, luatex
+
+2013-02-20 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-pdftexgraphics): \lastedit
+
+ * faq-adj-types.tex (q-nofm): \lastedit
+
+ * faq-mac-prog.tex (q-latexqual): \lastedit
+
+ * faq-how-do-i.tex (q-dpfloat, q-ftncapt): \lastedit
+
+ * faq-wdidt.tex (q-dolldoll): editorial
+
+ * faq-backgrnd.tex (q-ctan): editorial
+
+ * faq-adj-types.tex (q-codelist): editorial
+
+ * faq-bits+pieces.tex (q-whatenv): editorial
+
+ * faq-jot-err.tex (q-expl3-old): editorial
+
+ * faq-mac-prog.tex (q-repeat-num): editorial
+
+2013-02-19 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * sanitize.pl (sanitize_line): updates from -beta (not many)
+
+2013-02-15 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-verbwithin): \lastedit outside ctanrefs(!)
+ (q-noline): question title in quotes
+
+2013-02-08 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add arara
+
+ * faq-how-do-i.tex (q-make): add arara
+
+2013-02-07 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * texfaq2html-beta: align with texfaq2html (regular)
+
+2013-02-01 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-projects.tex (q-omegaleph): editorial
+
+ * faq-jot-err.tex (q-expl3-old): editorial (too many parens)
+
+ * faq-how-do-i.tex (q-dpfloat): describe \ContinuedFloat
+
+ * faq-projects.tex (q-xetex): change question title to match others in
+ the section
+
+2013-01-31 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-getit.tex (q-uploads): reflect changed situation
+
+ * faq-backgrnd.tex (q-ctan): reflect changed situation
+
+2013-01-30 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add ucharclasses, xecjk
+
+ * add-general.tex (q-xetex*): new, from an answer in stackexchange
+
+2013-01-28 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq.sty: add \ctan for all those \acro calls
+
+ * gather-faqbody.tex: file date today. may be near, now...
+
+2013-01-10 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-pkgdoc): mthelp on miktex rather than texdoc
+
+2013-01-09 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add mwe, blindtext and lipsum
+
+ * faq-docs.tex (q-minxampl): more detail about support packages, etc;
+ editorial
+
+2013-01-04 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-biblio.tex (q-chapbib): show biblatex-based approach
+
+2012-12-21 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: remove biolinum-type1 (never actually used in a
+ published version...)
+
+ * faq-mac-prog.tex (q-patch): mention regexpatch
+
+ * dirctan.tex: add regexpatch
+
+2012-12-14 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-getit.tex (q-archives): first stab at "new world"
+ (q-uploads): only one upload method, nowadays
+
+2012-12-07 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add spelling
+
+ * faq-support.tex (q-spell): update text, and add spelling package
+
+ * sanitize-beta.pl (sanitize_line): add \^o
+
+2012-12-03 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-spawnprog): editorial
+ (q-hyphen): editorial, ref q-hyphenaccents
+
+2012-11-29 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-man-latex): omit frivolous comment about uea users
+ being taught by nicola
+ (q-latex3-prog): moved here from faq-mac-prog
+
+2012-11-28 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-conditional): suggest stampinclude
+
+ * dirctan.tex: add commado
+
+ * faq-mac-prog.tex (q-repeat-set): add commado and filesdo
+
+ * filectan.tex: add interface3-doc, expl3-doc
+
+ * faq-mac-prog.tex (q-latex3-prog): new, from stack exchange
+
+2012-11-26 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-codelist): elaborate on use of minted
+
+ * faq-fmt-conv.tex (q-readml): give context mkiv pride of place
+ (coming from nowhere in the previous release ;-)
+
+2012-11-21 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-center-flt): typo
+
+2012-11-20 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-pdftexgraphics): add pdftricks2
+
+ * faq-adj-types.tex (q-tocloft): mention etoc
+
+ * faq-fonts.tex (q-psfchoice): add garamondx extn to newtx
+
+ * dirctan.tex: add garamondx, pdftricks2; correct pdftricks; remove all
+ "libertine*" except libertine itself; add cat link for newtx
+
+2012-11-19 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-samepage): editorial twiddle
+
+ * faq-adj-types.tex (q-extsizes): caveat text for scrextend, about
+ design (perhaps restructure so as to have just one caveat for both
+ packages)
+
+2012-11-16 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-litprog.tex (q-lit): sort empty link target
+
+ * faq-support.tex (q-texcad): sort empty link target
+
+ * faq-how-do-i.tex (q-vertspacefloat): removed
+
+ * faq-wdidt.tex (q-vertspacefloat): come from faq-how-do-i
+
+ * faq-bits+pieces.tex (q-whatenv): point out args don't propagate to
+ end env code
+
+ * add-general.tex (q-center-flt): new, following q on c.t.t (or summat)
+
+2012-11-15 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * dirctan.tex: add shorttoc
+
+ * add-general.tex (q-shorttoc): new answer (copied from tex/sx)
+
+ * gather-faqbody.tex: v3.26, today (premature...)
+
+2012-11-09 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-expl3-old): new, from add-general
+
+ * faq-docs.tex (q-pkgdoc): mention texdoc.net
+
+2012-11-01 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-extsizes): show use of scrextend for random sizes
+
+2012-10-31 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-verbwithin): editorial don't refer to expl3 directly
+
+ * add-general.tex (q-expl3-old): new, about the common error message
+
+2012-10-30 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * filectan.tex: add memoir-man
+
+ * faq-how-do-i.tex (q-complist): editorial, for clarification, incl
+ pointer to memoir manual section
+
+2012-10-29 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-biblio.tex (q-usebibtex): editorial (testing macros)
+
+2012-10-26 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * archive.cfg: use mirror.ctan.org for arch ptrs
+
+ * add-general.tex (q-otf-maths): editorial
+
+2012-10-25 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-otf-maths): started yesterday -- what it says
+
+2012-10-24 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-fonts.tex (q-psfchoice): change question answered, update listed
+ coverage of mathdesign
+ (q-pspreview): editorial
+ (q-charshift): note now vanishingly unlikely
+
+2012-10-22 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-bib-trblshoot): new answer, from sx/63852
+
+ * faq-wdidt.tex (q-dolldoll): tidy, on the basis of sx/503
+
+2012-10-19 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-texsys.tex (q-texsystems): no empty arg to \qref
+
+ * faq-graphics.tex (q-drawing): clarify statements about pgf
+
+ * sanitize.pl (sanitize_line): pick up changes in -beta
+
+ * sanitize-beta.pl (sanitize_line): only one \pictex, with "i" flag
+
+ * faq-bits+pieces.tex (q-virtualfonts): correct href to knuth on vfs
+
+ * texfaq2html-gamma: use label-to-file.pl
+
+ * faq-bits+pieces.tex (q-dvi,q-pk,q-tfm,q-virtualfonts): editorial
+
+2012-10-17 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-simple-maths): remove refs to libgreek, libertine,
+ biolinum (since libgreek is based on libertine-legacy)
+
+ * faq-fonts.tex (q-psfchoice): libertine-legacy->libertine-type1
+
+ * dirctan.tex: add libertine, libertine-t1, biolinum-t1, remove
+ libertine-legacy
+
+2012-10-17 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: remove libertine-legacy, add libertine, {}-type1,
+ biolinum-type1
+
+2012-10-16 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-nofm): zref-lastpage does a LastPage label, too
+
+2012-10-15 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-gensym): opening out old proto-answer
+
+2012-10-10 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * patchdates.tex: is this really necessary
+
+ * add-general.tex (q-detknize): probably dead -- mark as such
+
+ * faq-bits+pieces.tex (q-whatenv): new, from add-general
+
+ * faq-backgrnd.tex (q-ctan): tweak description of mirror.ctan
+ (q-whyfree): add closing paren in first sentence!
+ (q-readtex): add a let-out clause at the end ;-)
+
+2012-10-09 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-ltxcmds): diddle with margins for narrowversion
+
+ * add-general.tex (q-whatenv): basic body of answer complete
+
+ * faq-t-g-wr.tex,faq-docs.tex,faq-graphics.texfaq-how-do-i.tex
+ (throughout): use \pictex{}
+
+ * faq.sty: \pictex so as to avoid typos ;-)
+
+ * filectan.tex: remove l2tabuen, l2tabuen.src
+
+ * faq-docs.tex (q-man-latex): unify reference to l2tabu
+
+ * faq-mac-prog.tex (q-ltxcmds): more examples of the performance of
+ latexdef, for environments
+ (q-latexqual): tone down the dogmatism about l2tabu/nag
+
+2012-10-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-prog-tex): a start on this, too
+ (q-prog-tex): another paragraph
+
+2012-10-05 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-whatenv): a start...
+
+2012-10-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-poster): update nlct link, add comments giving
+ status of links [CHANGES]
+
+2012-09-18 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): remove \quotify again (problems
+ with nested quotes)
+
+ * faq-jot-err.tex (q-badhyph): write out effect of \quotify; editorial
+
+ * faq.sty: remove \quotify again (see sanitize reversion)
+
+2012-09-17 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): process \quotify
+
+ * texfaq2html-beta: open $archive_list from $home (why did it work?)
+
+ * faq.sty: define \quotify (according to hyperversion)
+
+ * faq-jot-err.tex (q-badhyph): modernise markup with \cmdinvoke,
+ \quotify, etc
+
+ * faq-how-do-i.tex (q-hyphenaccents): the future (unicode
+ hyphenation) is here, so cover it (however briefly)
+
+ * faq.sty: suppress font list from pdftex (per heiko's tip on texhax)
+
+ * faq-jot-err.tex (q-optionclash): correct quote env matching
+
+2012-09-16 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-optclash): clarification, in light of several
+ tex/sx comments on a question there [needs checking!]
+
+2012-09-12 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * texfaq2html-beta: default_archive now mirror.ctan
+
+ * archive.list: add mirror.ctan.org, remove tug
+
+2012-09-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-multind): editorial
+
+2012-09-03 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-symbols): reorganise, add unimath-symbols
+
+ * add-general.tex (q-nolnerr): new, "no line to end"
+
+2012-09-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-newlineargs): editorial
+
+2012-08-29 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-view-rot): outline for new answer
+
+2012-08-23 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-fonts.tex: correct doc link for txfontsb
+
+2012-08-16 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add newtx, references to libertine support, etc.
+
+ * faq-fonts.tex (q-psfchoice): editorial, add text about newtx
+
+2012-07-26 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-struttab): don't do \cmdinvoke in verbatim!
+
+2012-07-25 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-man-latex): uprate the wiki latex book
+
+2012-07-09 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-repeat-set): correct typo
+
+2012-07-06 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-repeat-num): comment-out repeat package (oops!)
+
+2012-07-04 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-repeat-num): restore para left behind in
+ q-repeat-set when the two were split
+
+ * add-general.tex (q-multiling): lots of editorial, trying not to
+ change sense, except my confusion in thinking polyglossia works with
+ luatex
+
+2012-07-03 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-patch): typo
+
+2012-06-26 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add dowith
+
+ * faq-mac-prog.tex (q-repetition): add dowith package (probably more i
+ need to write about, but this will do for the time being)
+
+2012-06-22 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-repetition): new, from add-general
+
+2012-06-20 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-repetition): big thrash toward a releasable thing
+
+ * dirctan.tex: add etextools, etoolbox, datatool, forarray
+
+ * filectan.tex: add repeat
+
+2012-06-15 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: standardise on libertineOTF as directory name
+
+ * add-general.tex: yet more diddling of list of repeater packages
+
+2012-04-27 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add ifoddpage
+
+ * faq-mac-prog.tex (q-oddpage): add ifoddpage
+
+2012-04-20 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-unicode): unicode bundle now ucs; reword text
+ around utf8 inputenc option selection
+
+ * dirctan.tex: libertine now *-legacy and *otf
+
+ * add-general.tex (q-simple-maths): split libertine links to otf, legacy
+
+ * faq-adj-types.tex (q-music): m-tx in ctanrefs
+
+ * dirctan.tex: rename unicode entry->ucs, mtx->m-tx
+
+2012-04-12 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-ftncapt): clarify example, per note from david c
+
+ * faq-bits+pieces.tex (q-virtualfonts): change title to question
+
+2012-03-29 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * gather-faqbody.tex: v 3.25, today
+
+ * faq-wdidt.tex (q-eqnarray): link to kottwitz's tex blog entry
+
+2012-03-28 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-hyp+pdf.tex (q-acrobat): tidying, dragging into 21st century...
+
+ * faq-texsys.tex (q-syswin32): miktex 2.9 no longer beta, and so luatex
+ available on miktex too
+
+2012-03-27 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): accept \mf, \mp as well as uc vrsn
+
+ * faq.sty: new \mf, \mp, existing uc vrsn each only use initial capital
+
+ * faq-getit.tex (q-findfont): rewritten in rather different style,
+ noting the decline of mf and the appearance of alternate engines
+
+2012-03-26 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-texsys.tex (q-sysunix): editorial -- clarify that tlmgr works
+ however you install tl
+
+2012-03-23 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add usebib
+
+ * faq-biblio.tex (q-i18nbib): biblatex does this too
+ (q-bibinline): suggest usebib
+
+2012-03-16 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-inlgrphapp): add picture environment to list, and
+ mention picture package with it
+
+ * faq-mac-prog.tex (q-printvar): \verb in verbatim sections is silly,
+ and in typeset sections doesn't get translated by process.pl ...
+
+2012-03-14 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-parmoderr): not in outer par mode
+
+2012-03-09 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-t-g-wr.tex (q-msxy): mention berthold horn's partial msym
+
+2012-03-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-inputenc,q-fontenc): proof-reading corrections
+ (probably meaning that other questions aren't any longer useful; these
+ questions marked...)
+
+2012-03-07 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-ltx-csv): \LastEdit tag
+ (q-archives-rev): editorial
+
+ * faq-bits+pieces.tex (q-unicode): editorial clarification
+
+2012-02-20 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add datatool
+
+ * add-general.tex (q-ltx-csv): new answer on csv lists
+
+2012-02-17 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-labelfig): editorial work
+
+2012-02-16 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add macros2e
+
+ * faq-docs.tex (q-ref-doc): add macros2e
+
+2012-02-14 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add mdframed
+ remove metafont(actually mac-),mctex,mewltx
+
+ * faq-adj-types.tex (q-subsubsub): editorial
+ (q-breakbox): add mdframed as another solution
+
+2012-02-13 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-verbwithin): xparse arguments for verbatim use
+
+ * sanitize-beta.pl (sanitize_line): get \{, \}, and \[oc]bracesymbol
+ working with numeric entities
+
+ * faq-jot-err.tex (q-includeother): it's \File not \FileName!!!
+
+ * faq-mac-prog.tex (q-whatengine): correct wording, and coding of
+ \ifthenelse example to make it do correct html
+
+2012-02-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-verbwithin): verbatim arg in \NewDocumentCommand etc
+
+2012-02-10 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-includeother): more editorial expansion
+
+ * faq-biblio.tex (q-citesort): mention biblatex number-comp style
+
+2012-02-09 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-extrabrace): more rationalisation
+
+2012-02-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-extrabrace): slip in a \Qref
+
+2012-02-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-install.tex (q-inst-tds-zip): in "that are that's" remove "that's"
+
+2012-02-07 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-includeother): came from add-general
+
+ * CHANGES-3.25: tags for cmdstar and crossref
+
+ * faq-projects.tex (q-latex3): explain the concept of "harness", tidy
+
+ * faq-mac-prog.tex (q-cmdstar): outline use of xparse to define *-macros
+
+ * faq-wdidt.tex (q-crossref): dang! -- it could never have had a
+ "previous figure number" + other editing
+
+ * faq-how-do-i.tex (q-footintab): move tablefootnotes "further up"
+
+2012-02-06 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-install.tex (q-install-find): tidying and clarification
+ (q-instmffont): more clarification
+
+2012-02-01 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq.sty, sanitize-beta.pl: add \LeadFrom
+
+ * faq-adj-types.tex (q-runheadtoobig): include an actual example of
+ using titlesec pkg
+
+2012-01-27 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add morewrites
+
+ * faq-jot-err.tex: move q-optionclash and q-optclash together, for
+ easier editing
+ (q-noroom): tidies, mention morewrites package
+
+2012-01-19 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-tutbitslatex): stefan kottwitz runs texample.net,
+ editorial
+
+ * faq-wdidt.tex: odd bits of editorial
+
+2012-01-16 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-bibtexing): correct parentheses
+
+ * dirctan.tex: add fdsymbol, mdsymbol
+
+ * faq-symbols.tex (q-usesymb): add fdsymbol and mdsymbol with mnsymbol
+
+2012-01-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-intro.tex: comment on matthias' latest contribution
+
+ * faq-mac-prog.tex (q-isitanum): correct def of \testnum, per matthias
+
+2012-01-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-noroom): circumspection around the numbers of
+ floats that may be reserved
+
+2012-01-04 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-poster): correct (old) typo
+
+2012-01-03 Robin Fairbairns
+
+ * faq-docs.tex (q-man-latex): add van dongen's, wilkins' and buxbaum's
+ oeuvres
+
+ * dirctan.tex: add latex-course
+
+2011-12-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-pkgdoc): editorial (awful english)
+
+2011-12-21 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-fontenc): editorial
+
+2011-12-19 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-symbols.tex (q-numbersets): editorial reducing verbosity
+
+2011-12-15 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-intro.tex: credit william adams
+
+ * faq-docs.tex (q-man-latex): new link for chris harrison's tutorial
+
+2011-12-12 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add pinlabel
+
+ * faq-graphics.tex (q-labelfig): mention pinlabel
+
+ * dirctan.tex: add zwpagelayout
+
+ * faq-adj-types.tex (q-papergeom): zwpagelayout usage outline
+ (q-marginpkgs): mention that zwpagelayout is also available
+
+2011-12-01 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-hyp+pdf.tex (q-acrobat): trying to drag into c.21
+
+ * add-general.tex (q-pdf-encr): re-arrange to make clear that pdftk is
+ worth considering
+
+2011-11-30 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add xwatermark
+
+ * faq-adj-types.tex (q-watermark): add xwatermark, discuss pdftk
+
+2011-11-29 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add mkjobtexmf
+
+ * faq-how-do-i.tex (q-filesused): discuss mkjobtexmf
+
+2011-11-28 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add tablefootnote
+
+ * faq-how-do-i.tex (q-footintab): mention tablefootnote
+
+2011-11-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-position): editorial stuff (seems ok, so far)
+
+2011-11-22 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add diagbox
+
+ * faq-how-do-i.tex (q-slashbox): convert to use diagbox, with slashbox
+ as an also-ran
+
+2011-11-21 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-position): first more or less complete version
+
+ * faq-docs.tex (q-mfptutorials): restore link to metafun manual
+
+ * faq-symbols.tex (q-euro): update (incl. usage of marvosym)
+
+2011-11-16 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-repetition): memo about csv commands
+
+2011-11-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-tutorials*): change question title to avoid clash
+ with q-tutbitslatex
+ (q-tutbitslatex): remove pTeX tutorial link (seems to have gone)
+
+ * faq-adj-types.tex (q-slidecls): add ctanref for pdfscreen
+
+ * dirctan.tex: add pdfscreen
+
+2011-11-07 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-detknize): correct link for q-filename
+
+2011-11-04 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-t1enc): tidy-up: \'e
+ (throughout): remove | except in a \verb command in verbatim env
+
+2011-11-02 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-context): add link to context standalone site
+
+ * faq-projects.tex (q-luatex): diddle with version numbers, add web doc
+ link
+
+ *** release 3.24 ***
+
+2011-11-01 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * sanitize.pl (sanitize_line): add \FontFormat (from -beta)
+
+ * gather-faqbody.tex: today (had hoped to release yesterday)
+
+ * faq-adj-types.tex (q-music): more tweaking
+
+2011-10-31 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-music): changes for musixtex-fonts, lots of
+ tweaking following advice from bob tennent
+
+ * gather-faqbody.tex: v3.24, today
+
+2011-10-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-support.tex (q-wordcount): add provisos about detex-like routes
+
+ * faq-jot-err.tex (q-missbegdoc): restore a bit that got dropped
+
+2011-10-28 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-the-end.tex (q-bug): reword advice on on-line help
+ (q-latexbug): moved _after_ q-bug
+
+2011-10-27 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-missbegdoc): rewritten to include the bom issue
+ (taking the text of q-missing-begin)
+
+2011-10-26 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * add-general.tex (q-missing-begin): new answer
+
+2011-10-25 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-unicode): new, from add-general (slight edits)
+
+2011-10-25 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-tds): tone down some of the wilder claims
+
+ * faq.sty: add \FontFormat
+
+ * sanitize-beta.pl: add \FontFormat
+
+ * dirctan.tex: add cm-unicode
+
+ * faq-bits+pieces.tex (q-ecfonts): lots of edits (from work in kent)
+
+2011-10-20 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-tex-books): clarifying edit ... of a comment ;-)
+
+2011-10-17 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-mathml): mathtex rather than mimetex in sample!
+
+2011-10-17 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-mathml): add stuff about MathJax
+
+2011-10-16 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: correct dvistd, marvosym-fonts
+
+ * filectan.tex: remove varwidth, version
+
+ * dirctan.tex: add varwidth, version
+
+2011-10-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-specials,q-write): minor editorial
+
+2011-10-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-t-g-wr.tex (q-underline): remove statement about ulem docs
+ (saying there's no "real" docs, now false)
+
+2011-10-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-whatmacros): another challenging bit of
+ clarification (hem hem)
+
+2011-10-12 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-virtualfonts): rearrange and clarify
+
+ * faq-intro.tex: added david epstein to the grand list
+
+ * faq-adj-types.tex (q-algorithms): minor tidy, add comment about
+ algorithmicx (as requested by David Epstein)
+
+2011-10-10 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-driver,q-pk): tidied
+ (q-tfm): minor editorial
+
+ * dirctan.tex: add dvistd
+
+ * faq-bits+pieces.tex (q-dvi): tidy, mention xetex, ref dvistd
+
+2011-10-06 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-intro.tex: editorial
+
+2011-10-06 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-optclash): new, from add-general
+
+ * add-general.tex (q-inputenc): further iterations towards an answer
+
+2011-10-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-texsys.tex (q-sysmac): mention root requirement for installing
+ mactex
+ (q-sysother): hedge statements about vms tex
+
+2011-10-05 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add enctex
+
+ * faq-intro.tex: talk about the way the set of answers changes
+
+ * faq-wdidt.tex (q-include): clarify page number constraints
+
+2011-10-04 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-latex3): rehash stuff about acquiring the
+ sources, add comments about using l3 as a format
+
+2011-09-30 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-fontfmt): typo
+
+2011-09-29 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-fontfmt): draft replacement for q-adobetypen
+
+2011-09-26 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-tutorials*): remove link to q-docdirs
+
+ * faq-backgrnd.tex (q-texthings): remove link to q-docdirs
+
+2011-09-22 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add tex-overview, remove texline, unstar mimetex
+
+ * faq-backgrnd.tex (q-texthings): add protext to discussion of distrs,
+ link to ctan copy of tex-overview
+
+2011-09-21 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-texsys.tex (q-editors): revise text on texworks
+
+2011-09-19 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-tug*): contact via web, only; all back tugboat
+
+2011-09-12 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-tutbitslatex): removed "specialised" from title, add
+ old q-doc-dirs on tug india stuff, adjust statement about voss'
+ mathmode document book form
+ (q-doc-dirs): gone
+
+2011-09-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-multind): describe amsmidx, imakeidx
+
+ * dirctan.tex: add amscls, imakeidx; correct texmacs
+
+2011-09-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-latex-books): add herbert voss's books under latex
+
+2011-09-09 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-printvar, q-labelcount): add \LastEdit* (oops)
+
+ * faq-docs.tex (q-latex-books): add latex beginner's guide
+
+2011-09-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-ref-doc): patch minor translation effect (\<eol>)
+ (q-doc-wiki): editorial, mostly
+ (q-doc-dirs): a lot more than two in tug india's thing, now
+
+2011-09-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-intro.tex: list Gernot Hassenpflug
+
+ * faq-mac-prog.tex: add q-printvar and q-labelcount from add-general
+
+ * patchdates.tex: updated. this is silly.
+
+2011-09-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-intro.tex (list of helpers): cite another thing from dan l
+
+ * faq-backgrnd.tex (q-texthings): correct \input texinfo (!)
+
+2011-09-06 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-keyval): tweak words about getoptk
+ (too late for release...)
+
+ *** Release 3.23 ***
+
+ * texfaq2html, texfaq2html-beta: change "last modified" to "released"
+ in question footers
+
+ * gather-faqbody.tex: change version, date
+
+ * texfaq2html: minor change from -beta
+
+2011-09-04 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-fonts.tex (q-usemf): further attempts to drag it into c.21
+ (q-keepfonts): modernise and tidy to today's standards
+ (q-getbitmap): modernisation, again
+
+2011-09-01 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-mp): reword the initial discussion (which had
+ multiple concepts in the same clause, at one point)
+
+2011-08-30 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-latex3): add l3experimental
+
+ * dirctan.tex: add gitinfo, l3experimental
+
+ * faq-how-do-i.tex (q-rcs): mention gitinfo
+
+2011-08-19 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-font-fmts): to replace q-adobetypen -- starts
+ with its content (ha ha)
+
+ * faq-bits+pieces.tex (q-adobetypen): editorial
+
+ * faq-how-do-i.tex (q-destable): editorial
+
+ * faq-backgrnd.tex (q-latex2e): describe frozen state; editorial stuff
+
+2011-08-17 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-symbols.tex (q-scriptfonts): correct typo
+
+ * faq.sty: add \latexo (all lc)
+
+ * faq-symbols.tex (q-underscore): editorial+ref q-activechars
+
+2011-08-16 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-symbols.tex (q-underscore): drop stuff about \us, add spiel about
+ using T1 and \textunderscore
+ (q-atsign): @ was a special character rather than command
+
+2011-07-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * filectan.tex: remove screensty, add cat link for vf-howto
+
+ * faq-fmt-conv.tex (q-toascii): editorial on catdvi, remove screen.sty
+
+2011-07-19 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-pkgdoc): memoir doc not typo tutorial any more,
+ mention pgf as an example of separately-written stuff
+ (q-writecls): bit of editorial
+
+2011-07-14 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-optclash): new answer about package options
+
+2011-07-13 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-etex): correct ref to luatex in disc of context
+ (q-eplain): minute editorial
+
+2011-07-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-clsvpkg): rewrite
+
+2011-07-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-whatmacros): minor editorial
+
+ * faq-projects.tex (q-luatex): update versions, miktex now has luatex
+
+ * faq-bits+pieces.tex (q-tfm): mention xetex and luatex don't need 'em
+
+2011-07-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-keyval): add getoptk
+
+2011-07-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-destable): clarify caption package details for
+ captions above tables
+
+2011-07-06 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-altabcr): mention limit to sizes of matrices
+
+2011-07-06 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-whyfree): twiddle discussion of gpl
+ (q-texfuture): reword statement of luatex's release goal
+
+ * faq-docs.tex (q-latex-books): math into latex -> more <ditto>
+
+2011-07-05 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-write): editorial
+ (q-spawnprog): correct typo (epstopf), add cat link for epstopdf at end
+
+ * filectan.tex: add cat link to vf-howto
+
+2011-07-03 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-mf): caveat about the "modern" sidelining of mf
+
+2011-07-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-ctan): minor editorial
+ (q-dvi): tidy contorted xref
+ (q-ok): preparatory work (may not come to anything)
+
+ * faq-docs.tex (q-symbols): only pdf of symbol list, now
+
+ * filectan.tex: add cat link for metafp
+
+2011-06-29 Robin Fairbairns <rf10@cl.cam.ac.uk>
+
+ * faq-docs.tex (q-doc-dirs): correct tug india link
+
+2011-06-29 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-patch): recommend letltxcmd for macros with
+ opt arguments
+
+2011-06-21 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-long-outer): mention getting round \outer w/csname
+ (q-outer-err): new answer pointing to q-long-outer
+
+2011-06-16 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-includeother): new jot-err answer
+
+2011-06-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-context): explain difference between mkii and
+ mkiv (from hans' article in tb100)
+
+2011-06-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-latex3): replace expl3, xpackages with l3kernel,
+ l3packages
+
+ * faq-mac-prog.tex (q-keyval): replace expl3, xpackages with l3kernel,
+ l3packages
+
+ * dirctan.tex: remove expl3, xpackages; add l3kernel, l3packages
+
+2011-06-06 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-hyphen): mention luatex's more relaxed table
+ loading
+
+2011-06-03 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-drawing): typos, plus hack on text about dratex
+
+2011-06-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-fontsize): mention cmdunh, cmfib missing from
+ fix-cm
+
+2011-06-02 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add pst-layout
+
+ * faq-graphics.tex (q-drawing): link to cremeronline intro tutorial
+ (q-labelfig): mention pst-layout, and make reference to similar
+ power of pgf, capable of anything pstricks can do for this problem
+
+ * dirctan.tex: add multido (again...note, different machine)
+
+2011-06-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-repetition): add multido
+
+ * dirctan.tex: add multido
+
+2011-06-01 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex,faq-fonts.tex.tex,faq-graphics.tex,faq-jot-err.tex,
+ faq-jot-err.tex,faq-wdidt.tex,faq-backgrnd.tex,faq-adj-types.tex,
+ faq-bits+pieces.tex,faq-docs (throughout): replace q-books refs as
+ appropriate
+
+ * faq-docs.tex (q-book-lists,q-tex-books,q-latex-books,q-other-books):
+ formed by dismembering the old q-books
+
+2011-05-31 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-subdepth): new, slightly edited from add-general
+
+ * faq-images.tex: new, for snippets to be served as images
+
+ * sanitize-beta.pl (sanitize_line): add exptl \includegraphics
+
+2011-05-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-luatex): minor editorial to match q-texthings
+
+ * faq-backgrnd.tex (q-texthings): tidy and tweak xetex, rewrite luatex
+ a bit
+
+2011-05-27 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-gethelp): identify stack exchange before referring to
+ it; don't link to latex project team when saying that the user
+ shouldn't contact them
+
+2011-05-24 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add unicode
+
+ * add-general.tex (q-inputenc,q-fontenc): new, from q-whatenc
+ (q-unicode) skeleton only, so far
+
+ * faq-bits+pieces.tex (q-hyphen): editorial
+ (q-whatenc): minor editorial, preparing for split
+
+ * dirctan.tex: add cat link for lacheck
+
+ * faq-mac-prog.tex (q-latexqual): mention lacheck
+
+2011-05-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-sansmath): add hfbright to list of things
+
+ * dirctan.tex: add cmbright
+
+2011-05-20 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-sansmath): currently just a placeholder
+
+2011-05-19 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-subheight): typo
+
+ * faq-bits+pieces.tex (q-ctan,q-catalogue): new, from add-general
+
+ * faq-docs.tex (q-gethelp): complete replacement from add-general
+ q-gethelp*
+
+2011-05-10 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-luatex): clarification on "no changes to pdftex"
+ statement
+
+2011-05-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-gethelp*): (new) rewriting q-gethelp for the "new
+ philosophy"
+ (q-catalogue): further knocking into shape
+
+2011-05-06 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * sanitize-beta.pl: html list-alike environments issue <p/> their end,
+ to cause paragraph style to be invoked
+
+ * faq.sty: require pdf14.sty since thumbpdf has problems otherwise
+
+2011-05-04 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-fmt-conv.tex (q-latextoplain): undo mess in ctanrefs on web
+
+ *** Release 3.22 ***
+
+ * faq-support.tex (q-xfigetc): add \LastEdit
+
+ * faq-how-do-i.tex (q-struttab): add \LastEdit
+
+ * faq-getit.tex (q-archives): add \LastEdit
+
+2011-05-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-support.tex (q-xfigetc): new link for jfig
+
+ * faq-how-do-i.tex (q-struttab): describe use of makecell package
+
+2011-04-30 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-repetition): minor editorial
+ (q-labelcount): title "counter values" rather than "counters"
+
+2011-04-27 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * gather-faqbody.tex: v3.22, today
+
+ * texfaq2html (throughout): tidy p tags
+
+ * sanitize.pl (sanitize_line): line up one comment with -beta
+
+ * dirctan.tex: cat links for ofs, pdcmac
+ remove pfm2afm, penelope, pbm2tex, pbmtopk
+
+2011-04-26 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-getnff): typo
+
+ * faq-getit.tex (q-archives): correct addresses(!)
+
+ * add-general.tex (q-repetition): modest tidies, detail of \multiput in
+ real text (works!)
+
+ * dirctan.tex: add cat links to a few euro* entries (not euro-fonts...)
+ remove lollipop
+
+2011-04-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-archives-rev): redo in context of q-ctan
+
+2011-04-23 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: cat link for nonumonpart, remove nrc (not used)
+
+2011-04-20 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-repetition): lots of tinkering
+
+ * dirctan.tex: add forloop
+
+2011-04-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-repetition): new, commands for repeating things
+ (only a skeleton, so far)
+
+2011-04-19 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-ctan): ref. twg on archives
+ (q-archives-rev): interim version of q-archives to go with q-ctan
+
+2011-04-14 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-printvar): examples of \printlength
+
+2011-04-13 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-eplain): qualify statement about "docs online"
+
+ * faq-install.tex (q-privinst): deconfuse emacs source colouring in one
+ or two places
+
+ * faq-backgrnd.tex (q-etex): stop suggesting that etex is context's
+ prime target
+
+2011-04-12 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-textrace): mention mf2pt1 (about time too)
+
+2011-04-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-context): tidy-up
+
+2011-04-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-drawing): mention pstricks xetex driver
+
+2011-04-07 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-xml2tex,q-subheight,q-multiling): editorial
+
+2011-04-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-parskip): mention that (some?) koma-script
+ classes have the facility (in spades, by the look of it)
+
+2011-03-30 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add metalogo
+
+2011-03-30 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-symbols.tex (q-scriptfonts): editorial
+
+ * add-general.tex (q-outputrtn, q-whatfloats): editorial
+
+2011-03-27 Robin Fairbairns <rf10@battam>
+
+ * add-general.tex (q-simple-maths): add libgreek to ctanrefs, plus a
+ bit of editorial
+
+ * faq-install.tex: editorial
+
+2011-03-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-logos): add text for hologo and metalogo
+
+2011-03-24 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: correct alphabetical order in one place
+
+ * faq-graphics.tex (q-pdftexgraphics): add auto-pst-pdf
+
+ * sanitize.pl, sanitize-beta.pl: alter pattern for |...| to "=" delims
+
+2011-03-23 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex: add q-simple-maths
+
+ * dirctan.tex: add mtp2lite, mathastext, cat link for mtx, and
+ libertine, libgreek
+
+ * faq-fonts.tex (q-psfchoice): mention mathtime pro 2 lite
+
+2011-03-18 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-referencl): new, about referring to enclosing thing
+
+2011-03-17 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * sanitize.pl, sanitize-beta.pl (sanitize_line): align use of + as subs
+ delimiter between the two files
+
+ * dirctan.tex: add texdef
+
+ * faq-mac-prog.tex (q-ltxcmds): mention texdef (neat!)
+
+2011-03-16 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * filectan.tex: remove mpsproof
+
+ * faq-graphics.tex (q-inlgrphapp): new, from add-general
+ (q-mpprologues): mpsproof now part of \mp{} itself
+
+2011-03-14 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-drawing): remove egplot from link list
+
+ * dirctan.tex: add cat link to gmp
+
+ * add-general.tex (q-inlgrphapp): slight tidy, add egplot to link list
+
+2011-03-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add gmp
+
+ * faq-graphics.tex (q-drawing): remove inline graphics app stuff to new
+ answer q-inlgrphapp
+
+ * add-general.tex: new q-inlgrphapp
+
+2011-03-11 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-attach): new answer, from stackexchange
+
+ * dirctan.tex: add attachfile, navigator
+
+ * faq.sty: add \xelatex
+
+ * sanitize-beta.pl (sanitize_line): add \xelatex
+
+2011-03-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-drawing): editorial
+
+2011-03-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-texthings): grinding on through (summary remains)
+
+2011-03-10 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-texthings): grinding through the lists
+
+ * texfaq2html-beta: initialise $item_extra
+
+ * sanitize-beta.pl (sanitize_line): experimental $item_extra for style
+
+ * texfaq2html-beta: add descr style to inline css
+
+ * sanitize-beta.pl (sanitize_line): a whiff of '"'-sanitisation
+
+ * faq-backgrnd.tex (q-mf): editorial, modernisation
+
+2011-03-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-mp): tidying, tweaking, etc.
+ (q-texthings): regularise various things
+
+2011-03-09 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-crossref): rewrite and lay out less tortuously
+ (throughout) tidy quote envs
+
+ * faq-t-g-wr.tex (throughout): tidied quote (in one instance only!)
+
+ * faq-projects.tex (q-latex3): sort out unterminated sentence after
+ alert from bruno le floch
+
+ * faq-mac-prog.tex: (throughout): tidied quotes, eliminated short verbs
+
+ * faq-symbols.tex (throughout): tidied quotes
+
+ * faq-how-do-i.tex (q-proof): add QED
+ (throughout): verbatim<->quotes checks
+
+ * faq-lab-ref.tex: verbatim<->quotes, again
+
+ * faq-adj-types.tex (throughout): verbatim/quote check
+
+ * texfaq2html-beta: tweak margins of <ul> (== itemize lists)
+
+ * faq-adj-types.tex (q-codelist): check, update, reformat
+
+2011-03-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-hyp+pdf.tex, faq-fonts.tex, faq-install.tex: juggling with
+ verbatim and quotes
+
+ * faq-support.tex: change one verbatim to quoted
+
+ * faq-symbols.tex (q-scriptfonts): add mathabx and urwchancal
+
+ * dirctan.tex: add mpgraphics, mathabx[-type1], urwchancal
+
+ * faq-graphics.tex (q-drawing): mention mpgraphics for inline
+
+2011-03-07 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-papergeom): slight tidying
+
+ * texfaq2html-beta: add trivial para-margin css
+
+2011-03-04 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * texfaq2html-beta (throughout): fiddling with html structure
+
+ * faq-backgrnd.tex (q-startup): new, from add-general
+
+ * faq-intro.tex: minor tweaks
+
+2011-03-03 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add asana-math, stix, unicode-math and xits
+
+ * faq-projects.tex (q-mathml): redo unicode maths fonts bit
+
+2011-03-02 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (q-context): editorial
+ (q-texthings): correct one of 2 texi2pdf, to texi2dvi
+
+ * add-general.tex (q-startup): new answer
+
+2011-02-28 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-hash): rewrite for both latex and plain forms
+
+ * faq-docs.tex (q-man-latex): add ctanref for "getting something..."(!)
+
+2011-02-25 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add polyglossia
+
+ * add-general.tex (q-multiling): new, on multilingual work, then&now
+
+ * faq-projects.tex (q-luatex): minor updates, add ctan link, correct
+ version no of current pdftex
+
+ * dirctan.tex: add xetexref, luatex
+
+ * faq-projects.tex (q-xetex): add ctan link to will r's doc
+
+2011-02-23 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-fontsize): mention fix-cm's omissions (and
+ suggest replacements)
+
+2011-02-22 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add sty2dtx
+
+ * faq-bits+pieces.tex (q-dtx): mention sty2dtx, tidy
+
+ * faq-getit.tex (q-archives): reverse http and ftp "recommendations",
+ remove last trace of reference to usa site
+
+ * faq-bits+pieces.tex (q-fontname): minor editorial
+
+ * faq-install.tex (q-inst-texlive): simple command line instructions,
+ only, for now
+ (q-inst-scut): promote tex live to same level as miktex here
+
+2011-02-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-install.tex (q-inst-texlive): stub for filling in...
+
+ * faq-getit.tex (q-archives): remove refs to tug.ctan.org as a ctan
+ site, update remarks about mirror.ctan.org, etc.
+ (q-uploads): update list of requirements for upload, mention rsync
+ protocol, update suggestions for mirroring
+ (q-findfiles): going over and rationalisation
+
+2011-02-21 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-labelcount): new, use of refcount package
+
+ * faq-mac-prog.tex (q-oddpage): detail use of changepage, incl use of
+ ifthen pkg for those who don't understand \if<xxx>
+
+2011-02-18 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add rsfso
+
+ * faq-symbols.tex (q-scriptfonts): mention rsfso
+
+ * sanitize.pl (sanitize_line): updated from -beta
+
+ *** Release 3.21 ***
+
+ * gather-faqbody.tex: today's date (must stop dithering)
+
+2011-02-17 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-ctan): proposed new answer to replace existing
+ q-archives, or to provide background for a revision of that
+
+2011-02-15 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-install.tex (q-instt1font): clarify updmap situation (perhaps)
+ (q-inst1cm): minor editorial
+
+ * faq-fonts.tex (q-pspreview): simplify, given that most browsers can
+ do the job on their own, nowadays
+
+2011-02-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-fonts.tex (q-psfchoice): preliminary adjustments
+
+ * sanitize-beta.pl (sanitize_line): add \ttype and \otype
+
+ * faq.sty: add \ttype and \otype, add a few comments
+
+ * faq-fonts.tex (q-usepsfont): a spot more tweaking
+ (subsection{mf fonts}): moved to end of section (was first subsect)
+
+2011-02-14 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex: remove q-lollipop
+
+ * faq-fonts.tex (q-usepsfont): remove reference to lollipop, tidy
+
+ * dirctan.tex: add lpic
+
+ * faq-graphics.tex (q-labelfig): mention lpic
+
+ * add-general.tex (q-whatfloats): editorial
+ (q-outputrtn): more editorial
+
+2011-02-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-spawnprog): minor editorial
+
+2011-02-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-write,q-spawnprog): new, from add-general
+
+ * faq-mac-prog.tex (q-whatengine): new, from add-general, replaces
+ q-ifpdf
+
+ * dirctan.tex: remove acorn, epson
+
+ * filectan.tex: remove miktex-usb
+
+ * faq-biblio.tex (q-custbib): mention biblatex as an alternative route
+
+2011-02-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-litprog.tex (section{Literate programming}):
+
+ * dirctan.tex: add catalogue ref for ps2pk,ghostscript,gsftopk,fweb and
+ noweb
+ remove all entries for derivatives of noweb (leaving noweb itself...)
+
+ * faq-backgrnd.tex (q-whatpdftex): use \The {} in thanh's name
+
+ * faq-wdidt.tex (q-why-inp-font): \ss -> \ss {}
+
+ * faq-docs.tex,faq-graphics.tex (various): vo\ss -> vo\ss {}
+
+ * faq-how-do-i.tex (q-wholerow): space after \textasciicircum (euch)
+
+ * sanitize-beta.pl (sanitize_line): correct delimiter in pattern that
+ (seems to match) any letter-command name with empty arg [why is that
+ there in the first place?]; also correct \textasciicircum and \ss
+ patterns to require a space at the end (pro tem, at least); add \The
+
+2011-02-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-whatfloats): editorial tidies prior to moving
+ to main body
+ (q-write and q-write18): editorial, mostly
+
+ * faq-t-g-wr.tex (q-floats): editorial stuff
+
+2011-02-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add etex-pkg
+
+ * faq-t-g-wr.tex (q-floats): note interaction between morefloats and
+ etex packages
+
+ * faq-projects.tex (q-mathml): lowercase tex4ht in ctanrefs (for
+ consistency with other instances)
+ (q-wygexpts): remove ref to activetex, seems to have disappeared in its
+ original form
+
+ * faq-fmt-conv.tex (q-fmtconv): add web ref to tex4ht dev stuff in
+ ctanrefs for question
+
+2011-01-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-filename): remove the broken code and simply
+ report that "it's not easy" ;-)
+
+2011-01-13 Robin Fairbairns <rf10@battam>
+
+ * add-general.tex (q-write18): new proposed question
+ (q-write): on reflection, we need this preface to q-write18
+
+ * sanitize-beta.pl (sanitize_line): catch up with changes to faq.sty
+
+ * faq.sty: lc versions of \progname, \package and \class
+
+2011-01-12 Robin Fairbairns <rf10@battam>
+
+ * dirctan.tex: add cprotect; remote convert, cortex-email.dir, conrado
+
+ * faq-wdidt.tex (q-verbwithin): mention cprotect
+
+2010-12-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-codelist): extend words about minted/Pygments
+
+2010-12-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-whatfloats): more fiddling
+
+2010-12-26 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex: re-do tidies re. bibtex setup
+
+2010-12-23 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex (q-bibtexing): rewrite to deal with bibtex setup
+
+ * faq-biblio.tex (q-custbib): replace bibtex-doc link with just bibtex
+
+ * dirctan.tex: correct cat link for filehook, add bibtex
+
+ * filectan.tex: correct xampl-bib
+
+2010-12-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-whatengine): new answer to replace q-ifpdf
+
+2010-12-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-papergeom): update for the various extensions of
+ dvipdfm and rewrite descriptions
+
+2010-12-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-texsys.tex (q-editors): re-ordered, rationalised a bit, removed
+ "wildcard" bullet
+ (q-commercial): clear up debris after removing y&y
+
+2010-12-09 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-filename): add currfile, mention fink gives way
+
+ * faq-backgrnd.tex (q-texthings): correct typo from yesterday
+
+ * dirctan.tex: add currfile, filehook, restore latex4jed (hah!)
+
+2010-12-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: removed latex4jed, larch, laserjet, since they irritated
+ me and won't ever be used
+
+ * faq-backgrnd.tex (q-texthings}: link to tug.org/levels.html, context
+ executable now texmfstart, i'm told
+
+ * faq-docs.tex (q-ref-doc): the nasa latex thing is no more; remove it
+ and add a ref to karl's thing at gna.org (and on ctan)
+
+2010-12-06 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-fonts.tex (q-psfchoice): remove text about docs for [pt]xfonts
+ (now available via catalogue), mention bad spacing
+
+2010-12-02 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-whatfloats): add sketch of mechanism
+
+2010-11-30 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-drawing): mention asymptote, egplot and emp as
+ inline graphics mechanisms
+
+ * faq-adj-types.tex (q-music): correct "current" musixtex link
+
+ * gather-faqbody.tex: v3.21, today (probably shan't release until after
+ christmas, but...)
+
+ * filectan.tex: remove vertbars (now own dir); simpl-latex now pdf
+
+ * dirctan.tex: add cutwin, vertbars, egplot; biblatex[-contrib] now on
+ m/l/c
+
+ * faq-how-do-i.tex (q-textflow): mention cutwin
+
+2010-11-23 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-xml2tex): more work on peter f's input
+
+2010-11-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add cat link for html2latex
+
+2010-11-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Format conversions}): new q-xml2tex
+
+2010-11-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-fmt-conv.tex (q-readml): minor editorial
+
+2010-10-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add cat link to catdvi (ho ho)
+
+2010-10-28 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-mathml): point to tug page in ctanrefs
+
+ * faq-fmt-conv.tex (q-latex2html): add pointer to real tug.org page
+ on tex4ht (hence real location), in ctanrefs
+
+ * filectan.tex: tex4ht now on obsolete
+
+ * dirctan.tex: add memdesign
+
+ * faq-docs.tex (q-typo-style): memdesign rather than memman
+
+2010-10-22 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-nopagebrk): discuss \pagebreak, \nopagebreak
+
+2010-10-07 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-whatfloats): a start of a first stab
+
+ * faq-adj-types.tex (q-music): large rehash around musixtex and opustex
+
+2010-10-06 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-jot-err.tex (q-tmupfl,q-atvert): tidies, incl indent'n of quotes
+
+2010-10-04 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * filectan.tex: remove morefloats, parskip, path, printlen
+
+ * dirctan.tex: add morefloats, parskip, path, printlen; new location
+ for musixtex-egler
+
+ * faq-jot-err.tex (q-tmupfl): mention morefloats, with caveats
+
+2010-10-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-t-g-wr.tex (q-floats): updated morefloat, mention etex
+ restrictions-regardless-of-number-of-registers
+
+2010-09-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-onna-stick): comment-out the entire question --
+ moot now (i think, but am not _certain_)
+
+ * faq-graphics.tex (q-graphicspath): rephrase discussion of
+ \graphicspath's (potential) problems
+
+2010-09-28 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-outputrtn): new potential answer
+
+2010-09-27 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-graphics.tex (q-drawing): mention asyfig, too
+
+ * dirctan.tex: add asyfig and emp
+
+ * faq-graphics.tex (q-drawing): mention emp
+
+2010-09-24 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: transmute latex-help-texinfo to latex2e-...
+
+ * add-general.tex (q-getnff): new answer for the font installation mess
+
+ * faq-wdidt.tex (q-zerochap): reword for better comprehensibility
+
+2010-09-21 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-fmt-conv.tex (q-fmtconv): add openoffice route for ms-word
+
+2010-09-14 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-filename): editorial, incl. emphasise latex form
+ of \input, only
+
+2010-09-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+ * filectan.tex: remove cat link from miktex-setup (confusion); remove
+ miktex-usb (no longer needed)
+
+2010-09-09 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-biblatex): mention bibtex8, refine biblatex/biber
+
+ * dirctan.tex: add bibtex8
+
+2010-09-07 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add translation for \bibtex
+
+ * faq.sty: add \bibtex
+
+ * faq-projects.tex (q-biblatex): rehash to reflect current realities
+ (biblatex+biber take over the world)
+
+2010-09-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (q-detknize): yet more diddling
+
+2010-08-31 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-intro.tex: add gregor zattler, anonymise "not covered" comment
+
+ * faq-bits+pieces.tex (q-adobetypen): typo
+
+2010-08-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add fltpage
+
+ * faq-how-do-i.tex (q-dpfloat): mention fltpage
+
+2010-08-27 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-detknize): printing the contents of a macro
+
+ * faq-docs.tex (q-gethelp): add latex community and stack exchange to
+ the list of places to ask
+
+2010-08-19 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-wdidt.tex (q-baselinepar): editorial work ("an quote environ...")
+
+2010-08-18 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * add-general.tex (q-detknize): rewrite last sentence
+
+ * faq.sty: use tmp/comment.cut instead of comment.sty's default; this
+ is a big win when reading files over nfs, if tmp -> /tmp
+
+2010-08-17 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * texfaq2html: bring up-to-date from -beta
+
+ * sanitize.pl: bring up-to-date from -beta
+
+ * gather-faqbody.tex: v3.20 (let's live dangerously!), today
+
+ * mk-makefile: add -t option
+
+ [RELEASE 3.20]
+
+2010-08-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-intro.tex (section improvement; general typos): add siart for
+ correction of q-manymathalph
+
+ * faq-jot-err.tex (q-manymathalph): correct usage of bm
+
+2010-08-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-t-g-wr.tex (subsection{Things "gone away"}): new q-initex from
+ add-general
+
+ * faq-texsys.tex (q-syswin32): comments about miktex 2.9 (beta)
+
+ * add-general.tex (q-initex): further diddling on miktex statement (now
+ woollier still...)
+
+2010-08-13 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-filename): bug fix for the simple \input patch
+
+2010-08-12 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add isodoc
+
+ * filectan.tex: add knuth-letter
+
+ * faq-adj-types.tex (q-lettercls): add isodoc and give location of
+ knuth's letter.tex
+
+2010-08-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add present
+
+ * faq-adj-types.tex (q-slidecls): mention present
+
+2010-08-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-extsizes): mention classes with size ranges
+ that differ from the norm
+
+ * add-general.tex (q-initex): reword last para slightly to avoid
+ impression that i know more about miktex than i actually do
+
+2010-08-05 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add lecturer
+
+ * faq-adj-types.tex (q-slidecls): mention lecturer
+
+ * sanitize-beta.pl (sanitize_line): restore old \CONTeXt command
+
+ * faq.sty: add \context command
+
+2010-07-29 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-fancyhdr): add keywords for fancyhdr
+ (q-reallyblank): correct ref to fancyhdr
+
+2010-07-28 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * texfaq2file: add $mirror_selector, use extended dirctan, filectan
+ previously developed in texfaq2html-beta
+
+2010-07-27 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add beamerposter
+
+ * faq-adj-types.tex (q-slidecls): minor editorial
+ (q-poster): add beamerposter
+
+ * faq-intro.tex: add nicola talbot
+
+ * faq-adj-types.tex (q-poster): correct link for nicola's tutorial,
+ tidy link list
+
+2010-07-22 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-nopagebrk): correct assertion about samepage vs.
+ list items
+
+ * add-general.tex: new answer q-samepage in "why does it do that"
+
+ * faq.sty: add \alltex, \latex, \latexe, \pdflatex
+
+ * sanitize-beta.pl: more of the lower-case bumpy road commands, extend
+ replacement of " by + in substitute commands
+
+2010-07-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (q-fontname): elaborate a bit (why foundries'
+ names don't help)
+
+2010-07-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-fonts.tex (q-metrics): rewrite text around ly1
+
+ * faq-graphics.tex (q-dvipsgraphics): bmeps now part of dktools
+
+ * dirctan.tex: add titleref, dktools; remove bmeps; edit ly1,
+ pdftex-graphics
+
+ * filectan.tex: remove titleref
+
+ * faq-intro.tex: mention moulder in helpers list
+
+ * faq-t-g-wr.tex (q-widows): rewrite with clarification from peter
+ moulder
+
+2010-07-07 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq.sty: hack around the non-existence of \textcurrency in ptmr
+
+ * dirctan.tex: make revtex ref revtex4-1 (for clarity)
+
+ * faq-biblio.tex (q-mcite): deal with revtex 4.1 situation
+
+2010-06-28 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add cat link for ite
+
+2010-06-22 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (generate_CTAN_ref): use $mirror_selector
+
+ * texfaq2html-beta: add $mirror_selector
+
+2010-06-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (q-secnumdep): give actual commands for
+ manipulating secnumdepth and tocdepth, in tocvsec2 and memoir
+
+2010-05-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-mathml): gasp! stix now released
+
+ * dirctan.tex: fontspec moved to m/l/c
+
+ * faq-backgrnd.tex (q-triptrap): sort out paren at end of last para
+
+2010-05-16 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * filectan.tex: del needspace,notoccite,nopageno,optional,underscore
+
+ * dirctan.tex: add needspace,notoccite,nopageno,optional,underscore
+
+ * faq-how-do-i.tex (q-conditional): xcomment now in own dir
+
+2010-05-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (q-footnpp): editorial on perpage vs zref-perpage
+
+2010-05-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-projects.tex (q-mathml): try to sound cheery about stix
+
+2010-05-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add emptypage
+
+ * faq-adj-types.tex (q-reallyblank): mention emptypage package
+
+2010-04-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-texsys.tex (q-syswin32,q-sysunix): tl portable
+ (q-sysunix): we do now have reports of tex-gpc running
+
+ * faq-wdidt.tex (q-baselinepar): rewrite, with solutions after each
+ example, and dealing with the business of size change at end par
+
+2010-04-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-intro.tex (list of contributors): add bob tennent, comment mike
+ vulis
+
+ * dirctan.tex: add classico, sansmath
+
+ * faq-fonts.tex (subsection{Adobe Type 1 fonts}): add entry to list in
+ q-psfchoice for urw classico
+
+ * CHANGES-3.19e: mention above change
+
+2010-04-20 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \macosx{}
+
+ * faq-texsys.tex (section{TeX Systems}): editorial in q-sysmac,
+ q-sysother
+
+2010-04-20 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-texsys.tex: diddle with oztex and cmactex stuff in q-sysmac;
+ editorial in q-sysother
+
+2010-04-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add atari-cstex
+
+ * faq-texsys.tex (section{TeX Systems}): various tidies in the various
+ q-sys* answers (removing the last of the description environments)
+
+2010-04-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-texsys.tex (section{TeX Systems}): split out 4 sub-answers
+ (q-sys*) from q-TeXsystems, which then becomes (mostly) a list of
+ references
+
+2010-04-17 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add tex-gpc
+
+ * faq-texsys.tex (section{TeX Systems}): another thrash at windows,
+ incl commenting-out w32tex pending possible developments; amalgamate
+ "unix" and "linux" entries, and add tex-gpc
+
+2010-04-16 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-texsys.tex (section{TeX Systems}): further iteration of windows
+ dists, removing w32tex (which i can't get to at all now) and rehashing
+ text around the miktex/tex live compare and contrast thing
+
+ * faq-getit.tex (q-cd): redo text after thinking about the faq-texsys
+ stuff about windows
+
+2010-04-15 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \textcurrency, \texteuro
+
+ * faq.sty: add \etex
+
+ * faq-intro.tex: qualify entry for scott pakin in list of the great and
+ good
+
+ * faq-adj-types.tex (q-codelist): correct ctanref for minted
+
+2010-04-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-texsys.tex (section{TeX Systems}): chunk of work on miktex/
+ texlive for windows. needs reviewing before release!!!
+
+ * sanitize-beta.pl (sanitize_line): \tex{} for TeX, similarly for
+ several other tex-variants
+
+2010-04-14 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add biber
+
+ * faq-projects.tex (q-biblatex): add ctanref to biber
+
+2010-04-13 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex: add subdocs to q-multidoc (feels dodgy as i write
+ the description...)
+
+ * sanitize-beta.pl (sanitize_line): semicolon at end of \hyperflat(!)
+
+ * texfaq2html: load sanitize.pl not -beta!
+
+2010-04-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq.sty: create skeleton of collecting catalogue entries in ctanrefs
+
+ * faq-adj-types.tex (q-replstdcls): editorial tidies
+
+ * faq.sty: add \hyperflat as long-term replacement for \latexhtml
+
+ * sanitize-beta.pl (sanitize_line): deal with \hyperflat
+
+ * faq-intro.tex (list of contributors): add tomek
+
+ * faq-adj-types.tex (subsection{Alternative document classes}): add
+ blurb about standalone in q-multidoc
+
+2010-04-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add docmute, standalone
+
+ * faq-adj-types.tex (subsection{Alternative document classes}): add
+ docmute in q-multidoc
+
+2010-04-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add docmute, cat link for docmfp
+
+2010-04-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex (section{Documentation and Help}): retitle q-doc-wiki as
+ wiki _books_, bits of editorial
+
+2010-04-08 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (q-latexwords): typo corrected
+
+RELEASE 3.19d (2nd attempt)
+
+2010-04-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (subsection{Typesetting specialities}): editorial
+ in q-makeindex (including two separate texindex entries in list)
+
+ * dirctan.tex: add catalogue link idxtex to glo+idxtex
+
+2010-04-06 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2html, sanitize.pl: update
+
+ * sanitize-beta.pl (sanitize_line): massive shambles in [lr]brace
+
+ * faq-mac-prog.tex (subsection{"Generic" macros and techniques}):
+ correct ref to shortvrb in ctanrefs of q-activechars, and tidy
+ verbatim stuff in 2nd para of answer
+
+2010-04-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (subsection{Alternative document classes}): add
+ example structures for combine and subfiles alternatives in q-multidoc
+
+2010-04-04 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-projects.tex (section{Current TeX-related projects}): accommodate
+ luatex 0.60.0 in scribble about luatex
+
+2010-04-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * gather-faqbody.tex: v3.19d, today (to be revised ;-)
+
+ * faq-intro.tex: omit unnecessary stuff in html mode (looks a bit bare
+ now, but ought to improve if/when i can sort out a css for the output)
+
+2010-04-01 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-intro.tex: minute delta-comment in list of helpers
+
+ * faq-how-do-i.tex: correct typo in q-hyphoff
+
+2010-03-26 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-graphics.tex,faq-biblio.tex,faq-lab-ref.tex,faq-how-do-i.tex,
+ faq-symbols.tex,faq-mac-prog.tex,faq-t-g-wr.tex,faq-wdidt.tex,
+ faq-jot-err.tex,faq-projects.tex (throughout): add individual cat
+ links for "distributed as part of" ctanrefs
+
+2010-03-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-fonts.tex (Macros for using fonts): editorial on some rubbish in
+ q-fonts-pln
+
+2010-03-23 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (Page Layout): mention pdfcolparcolumns in
+ q-parallel
+ (throughout): add individual cat links for "as part of" ctanrefs
+
+ * dirctan.tex: add minted
+
+ * faq-adj-types.tex (Typesetting specialities): add minted in q-codelist
+
+ * sanitize-beta.pl (sanitize_line): add flatversion in the $ignoring
+ twiddling at the end
+
+ * faq.sty: add flatversion env (== non-hyperversion)
+
+2010-03-22 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add vruler
+
+ * filectan.tex: remove vruler
+
+ * faq-adj-types.tex (Page Layout): editorial in q-parallel, add own cat
+ entry for pdfcolparallel
+
+2010-03-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add fncylab, ifmtarg, import (hypernat was here already)
+
+ * filectan.tex: remove fncylab, hypernat, ifmtarg, import
+
+2010-03-15 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * faq-docs.tex: epslatex one ref only, now, relying on catalogue
+
+ * sanitize-beta.pl (generate_CTAN_ref, etc.): generate per reference
+ catalogue entries if opt argument of \CTANref
+
+ * dirctan.tex: add cat link for everypage
+
+ * faq-texsys.tex: editorial to avoid multiple \ctanref per line
+
+ * faq-graphics.tex: single reference to epslatex (doc from catalogue)
+
+ * filectan.tex: remove epslatex_(ps|pdf)
+
+ * dirctan.tex: add epslatex
+
+ * faq.sty: have \CTANref check for following optional argument (and
+ ignore it)
+
+ * faq-adj-types.tex: mention atbegshi in q-watermark
+
+2010-03-10 Robin Fairbairns <rf10@warp.cl.cam.ac.uk>
+
+ * dirctan.tex: add framed, verbdef (despite believing it already done!)
+
+ * faq-biblio.tex (subsection{Creating citations}): qualify ctanref for
+ chapterbib in q-chapbib
+
+2010-03-08 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * dirctan.tex: add threeparttable
+ correct directory for bigstrut (it's multirow)
+
+ * filectan.tex: remove threeparttable
+
+2010-03-02 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (subsection{Document management}): try to clear
+ ambiguity about \input in q-filesused
+
+ * Makefile: make "index" opt come out in help
+
+ * dirctan.tex: add framed, verbdef dirs
+
+ * filectan.tex: removed framed, verbdef
+
+2010-02-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * filectan.tex: remove excludeonly
+
+ * dirctan.tex: add bigstrut, excludeonly
+
+ * faq-how-do-i.tex (subsection{Tables, figures and diagrams}): remark
+ about docs of tabls and bigstrut now not needed; bigstrut now has own
+ registered directory
+
+2010-02-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add tabls qua directory
+
+ * filectan.tex: remove tabls
+
+2010-02-26 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (subsection{Tables, figures and diagrams}): correct
+ incompletely edited reference to \PBS in q-tabcellalign
+
+2010-02-24 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * Makefile: add web-index target to updated (dir|file)ctan for when
+ ctan structure is changing
+
+2010-02-23 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (subsection{Floating tables, figures, etc.}): remove
+ mention of docs of dpfloat
+
+ * faq-wdidt.tex (subsection{Common errors}): use fix2col package
+ direct, rather than ref to carlisle bundle
+
+ * filectan.tex: remove anonchap, bold-extra, braket, cancel, chngcntr,
+ dblfloatfix
+
+ * dirctan.tex: add anonchap, bold-extra, braket, cancel, chngcntr,
+ fix2col, dblfloatfix
+
+2010-02-18 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-intro.tex (section improvement; general typos): add enrico
+ gregorio (help with q-seccntfmt)
+
+ * faq-mac-prog.tex (subsection{LaTeX macro programming}): redo
+ switching code in q-seccntfmt
+
+2010-02-12 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * texfaq2html-beta: convert (rather smaller number of) entities
+
+ * sanitize-beta.pl (sanitize_line): convert all alphabetic entities to
+ numerical entities
+
+2010-02-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (section{The Background}): rehash q-texfuture, as
+ suggested by karl berry
+
+2010-02-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): scrunge hyperversion
+
+ * faq.sty: add a hyperversion env
+
+ * dirctan.tex: add knuth-dist
+
+ * faq-backgrnd.tex (section{The Background}): split q-plaintex from
+ q-whattex (controversial?)
+
+ * filectan.tex: add knuth-tds
+
+2010-02-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (section{The Background}): add ctan link in q-etex
+
+ * dirctan.tex: add etex
+
+2010-02-05 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * texfaq2html-beta: an even more abstruse grep command for registering
+ labels than was the old for registering question nos (do we really
+ need to convert + to space? are user-generated questions significant?
+ -- because if not there never will be "xxx + yyy")
+
+2010-02-03 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * dirctan.tex: add ulem "stand-alone"
+
+ * filectan.tex: remove ulem
+
+2010-02-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (subsection{LaTeX macro programming}): remove
+ superflous \expandafter in q-seccntfmt, and tidy text a bit
+
+2010-02-02 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): move
+ q-ovwtsym and q-long-outer to start of text
+ add q-detknize
+
+RELEASE 3.19c
+
+2010-01-26 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * mk-makefile: deal with CHANGES files
+
+2010-01-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: correct catalogue link for revtex
+
+ * filectan.tex: remove capt-of, url
+
+ * dirctan.tex: add capt-of, url
+
+2010-01-20 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-docs.tex (section{Documentation and Help}): herbert voss's handy
+ "tips and tricks" has disappeared, leaving q-doc-dirs very thin
+
+ * dirctan.tex: add dtl, dviasm
+
+ * faq-t-g-wr.tex (subsection{Things have "gone away"}): suggest dis/re-
+ assembling dvi files to get rid of am font refs in q-amfonts
+
+2010-01-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex,faq-fonts.tex,faq-getit.tex,faq-how-do-i.tex: use
+ mirrors.ctan.org where reasonable
+
+ * dirctan.tex: add txfontsb
+
+ * faq-fonts.tex (subsection{Adobe Type1 fonts}): mention txfontsb
+
+2010-01-08 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * gather-faqbody.tex: update version and date
+
+ * sanitize.pl (sanitize_line): brought -beta changes to mainstream
+
+2010-01-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * gather-faqbody.tex: extend comment on the line making \faqinput work
+ when processing with latex
+
+ * build-faqbody (gather_process): slightly refine the regexp that
+ was ignoring all lines beginning \let ;-)
+
+2010-01-05 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * sub-luximono.sty: jiffy for when \not\exists luximono
+
+ * faq.sty: provide for no luximono
+
+2010-01-04 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-biblio.tex (subsection{Creating bibliographies}): mention google
+ scholar in q-buildbib
+
+2009-12-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-intro.tex (section improvement; general typos): add uwe lueck
+
+ * faq-t-g-wr.tex (subsection{Getting things to fit}): correct the name
+ of the author of pictexwd (courtesy uwe lueck)
+
+2009-12-25 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-projects.tex (section{Current TeX-related projects}): mention
+ luatex 0.50.0, and tidy up the paragraph, in q-luatex
+
+2009-12-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-install.tex (section{Installing (La)TeX files}): change two
+ (different) uses of kpsewhich to find a variable to use -var-value
+ instead, in q-what-tds and q-privinst
+
+2009-12-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-getit.tex (section{Acquiring the Software}): minor edit of
+ q-archives
+
+ * faq-bits+pieces.tex (section{Bits and pieces of (La)TeX}): change
+ anchor for liang's thesis in q-hyphen
+ (section{Bits and pieces of (La)TeX}): ctan link for auc-tex in q-dtx
+ (section{Bits and pieces of (La)TeX}): minor edit of q-ecfonts
+ (section{Bits and pieces of (La)TeX}): redo q-tds somewhat
+
+2009-12-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (section{Bits and pieces of (La)Tex}) rehash
+ q-dvi and q-specials somewhat
+
+ * dirctan.tex: typo in miktex
+
+ * filectan.tex: remove pdftex-oztex (moved, but no longer used anyway),
+ and move both install-tl links down from 2008/ subdir
+
+2009-12-17 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-getit.tex (section{Acquiring the Software}): reword q-nonfree to
+ reflect the actual disappearance of the nonfree tree
+ (section{Acquiring the Software}): update details of the tex collection
+ from the web site (in q-cd, of course)
+ (section{Acquiring the Software}): use official address for dante
+ search page, in q-findfiles
+
+2009-12-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-projects.tex (section{Current TeX-related projects}): tidy up
+ q-latex3 (used to ref unpackages)
+
+ * faq-texsys.tex (section{TeX Systems}): tidy up miktex, and ref to
+ miktex under linux; removed commented non-386 nt refs
+
+ * dirctan.tex: kill two non-intel miktex links, add miktex "plain"
+
+2009-12-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * gather-faqbody.tex: v3.19b, date
+
+ * dirctan.tex: add threeparttablex
+
+ * faq-how-do-i.tex (subsection{Footnotes}): add threeparttablex, and
+ rewrite somewhat...
+
+2009-12-09 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-backgrnd.tex (section{The Background}): context is already
+ running on luatex (in q-context)
+ (section{The Background}): \luatex without {} in q-texfuture :-(
+
+ * sanitize-beta.pl (sanitize_line): translate \LuaTeX{}
+
+2009-12-08 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (subsection{Document management}): rewrite blurb
+ around pdftex in intro of q-changebars
+
+2009-11-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add here.sty
+
+ * faq-how-do-i.tex (subsection{Floating tables, figures, etc.}): add
+ here package to q-figurehere
+
+2009-11-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-install.tex (section{Installing (La)TeX files}): mention mactex
+ default location for home texmf, in q-privinst
+
+2009-11-20 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-hyp+pdf.tex (section{Hypertext and PDF}): first attempt at
+ sorting out q-pdfpagelabels
+
+2009-11-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Things have gone away}): minor typo in
+ q-initex
+
+ * faq-projects.tex (section{Current TeX-related projects}): work on
+ q-luatex to minimise hostages to fortune. (miktex 2.8 _wasn't_
+ released with a luatex implementation, for example)
+
+ * faq-intro.tex (section{Introduction}): explain what the visual faq is
+ about
+
+2009-11-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-intro.tex: add steve mayer to the grand old list
+
+ * faq-projects.tex (section{Current TeX-related projects}): correct
+ link to mathtex
+
+2009-10-30 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-intro.tex (section improvement; general typos): add david jansen
+
+ * sanitize-beta.pl (sanitize_line): deal with \ltxcounter
+
+ * faq.sty: add command \ltxcounter
+
+ * faq-jot-err.tex (section{The joy of TeX errors}): remove *two*
+ spurious \end{enumerate} from example code in q-errmissitem
+
+2009-10-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-mac-prog.tex (subsection{"Generic" macros and techniques}): orig
+ command copy missing (more than once) in q-patch
+
+2009-10-23 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-intro.tex (subsection{Origins}): extend comment on joseph w
+
+ * faq-mac-prog.tex (subsection{"Generic" macros and techniques}): add
+ l3keys[2e] to discussion in q-keyval
+
+2009-10-21 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-projects.tex (section{Current TeX-related projects}): remove ref
+ to and link to dir of keys3
+
+ * faq-mac-prog.tex (subsection{"Generic" macros and techniques}):
+ remove mention of keys3 in q-keyval
+
+ * filectan.tex: xtexcad off nonfree tree
+
+ * dirctan.tex: add changepage directory
+
+ * filectan.tex: remove changepage
+
+2009-10-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): treat typesetversion like
+ dviversion (which ought to be right...)
+
+ * faq.sty: add environment typesetversion
+
+ * dirctan.tex: add subdepth, remove qms, quicspool
+
+ * add-general.tex (subsection{Mathematics}): add q-subdepth
+
+2009-10-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex (section{Documentation and Help}): change link for ams
+ "short math guide"
+
+2009-10-09 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-bits+pieces.tex (section{Bits and pieces of (La)TeX}): ref xetex
+ and luatex in q-adobetypen
+
+ * faq-intro.tex (introduction): add a para at the end of the list of
+ "real" contributors, to point out that lots of people help without
+ realising i'm snapping up their words...
+
+ * texfaq2html: use \end{introduction} to recognise end of intro copying
+ add code to read in catalogue details for files (oops)
+
+ * texfaq2html-beta: use \end{introduction} to recognise end of intro
+ copying
+
+ * dirctan.tex: various font-related catalogue entries (from psfchoice)
+
+2009-10-09 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+RELEASE 3.19a
+
+2009-10-08 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * CHANGES-3.19a: new, for release
+
+ * faq-wdidt.tex (subsection{Common misunderstandings}): new q-emptynum
+ from add-general
+
+ * Makefile ($(HTMLDIR)/index.html): add faqbody.tex to prereqs
+
+2009-10-07 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * sanitize.pl: incorporate developments in -beta
+
+ * texfaq2file: correct root addr (in reading archive.list)
+
+2009-10-06 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (subsection{Document management}): add latex-make,
+ latex_maker and vpp discussion to q-make
+
+ * dirctan.tex: add latex-make, latex_maker and vpp
+
+2009-10-04 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex (section{Documentation and Help}): add texlive and
+ miktex maintainers to people it's not good to ask direct, in q-gethelp
+
+2009-09-11 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-biblio.tex (subsection{Creating bibliographies}): append further
+ stuff to the last sentence of q-capbibtex
+
+2009-08-31 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-wdidt.tex (subsection{Why shouldn't I?}): editorial in q-dolldoll
+ (subsection{Why shouldn't I?}): correct typo in q-2letterfontcmd
+
+2009-08-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (subsection{Document structure}): remove caveat
+ about front- and backmatter in q-secthead
+
+ * faq-install.tex (section{Installing (La)TeX files}): another
+ editorial hack at q-instt1font
+
+2009-08-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-install.tex (section{Installing (La)TeX files}): minor editorial
+ in q-instt1font
+
+2009-08-26 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-install.tex (section{Installing (La)TeX files}): hack viciously
+ at q-inst1cm, move it to end of section
+
+ * Makefile (clean): remove faqbody.tex too
+ (<web copying rules>): correct variable names, correct dependencies
+
+2009-08-25 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-install.tex (section{Installing (La)TeX files}): deal with
+ confusion at the start of q-instt1font (spotted by jos\'e carlos
+ santos, again...)
+
+ * faq-bits+pieces.tex (section{Bits and pieces of (La)TeX}): tidy up
+ the shambles of q-ecfonts
+
+2009-08-25 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * dirctan.tex: correct three typos created while adding catalogue links
+
+ * faq-mac-prog.tex (subsection{"Generic" macros and techniques}): in
+ q-patch, extend discussion of ted package, change patchcmd
+ accordingly, and do a few editorial diddles
+
+2009-08-23 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-fonts.tex (subsection{Macros for using fonts}): mention
+ font-change in q-fonts-pln
+
+ * dirctan.tex: add font-change
+
+2009-08-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-intro.tex: add RIP note for Eitan Gurari ... much missed already
+
+ * dirctan.tex: sort out a couple of catalogue links
+
+ * check-ctan-lists: display missing cat entries
+
+ * filectan.tex: add cat links
+
+2009-08-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: remove t1tidy,t1tools,t1utils,uktug,umddvi,umlaute,
+ ugaritic,umrand,unadobe,uncompressing,undump,unix,unpacked,untex,usl,
+ utthesis,va,vector,vector,vga2mf,vietnamese,vispeech,vm-cms,vplutils,
+ vrb,vslitex,vutex,w2latex,wasy2,webtoc,whatstex,williams,winw2ltx,
+ word2tex,word_tex,wsuipa,xetal,xypic -- cat links completed
+
+2009-07-31 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-docs.tex (section{Documentation and Help}): editorial in
+ q-maillists*
+
+ * dirctan.tex: remove pstab, pxlgen, qfig, quicspool, ransom,
+ recycle, redit, reduce, relabel, review, rmit, rune, rweb, s2latex;
+ cat links to end r*
+ remove sanskrit,saiter,sbtex,schemetex,screenview,script,scripttex,
+ sisisi, slant,sml,softfonts,southarabian,spain,spelchek,spell,
+ spiderweb,srune,ssl,ssqqote,stmaryrd,subeqnarray,sueterlin,swebib,
+ swedish,sweet-tex,swiftex,syriac
+ cat links to end s*
+ remove tamil,tbe,tcd-manual,tde-macros,teencontrex,tek2eepic,telugu,
+ tengwar,tex--xet,tex-d-l,tex-implementors,tex-primer_vms-specific,
+ tex-surface,texcalc,texchord,texdraw,texed,texfilt,texgraph,
+ texi2roff,texix,texpert,texproc,text1,text2dvi,textool,textures,
+ textures_figs,texutils,texware,thai,tie,tiff,translit,tree,tsipa,
+ tspell,turing[+],turkish,twcal,tx1,typingtex
+ cat links to end t*
+ restore spiderweb,spain,swebib
+
+
+2009-07-28 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): new q-emptynum
+ containing an offcut from q-nopageno
+
+ * faq-adj-types.tex (subsection{Page layout}): further tidying of
+ q-nopageno, remove matter for q-emptynum
+
+2009-07-27 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (subsection{Page layout}): further tidying of
+ q-nopageno
+
+2009-07-21 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-adj-types.tex (subsection{Page layout}): amalgamate
+ q-nopageno and q-ps@empty (which talked about the same sorts of thing)
+ (subsection{Page layout}): change ref to \ps@empty in q-fancyhdr to
+ q-nopageno (not entirely reasonable just now, but we're getting there)
+
+ * add-general.tex (subsection{Things have "gone away"}): new q-initex
+
+2009-07-20 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): \dots->&hellip; (not ellipsis!)
+
+2009-07-16 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: cat links to end p*
+
+2009-07-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: added lshort, more cat links (up to l* now)
+
+ * filectan.tex: removed lshort (now in dirctan)
+
+2009-07-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-docs.tex (section{Documentation and Help}): add link to the
+ symbol classifier, in q-symbols
+
+ * dirctan.tex: still more catalogue links
+
+2009-07-13 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * dirctan.tex: bunch of new catalogue links (no particular order)
+
+ * texfaq2html-beta: deal with \CTANdirectory* and a cat link, and
+ \CTANfile ditto
+
+ * sanitize-beta.pl (generate_CTAN_ref): generate refs for directories
+
+2009-07-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: catalogue links up to f*
+
+2009-07-10 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-support.tex (section{Support Packages for TeX}): add link to
+ cygwin installation advice in q-xfigetc
+
+ * faq-projects.tex (section{Current TeX-related projects}): typo
+ spotted by fran\c{c}ois charette in q-biblatex, and further editorial
+ work starting from another of his observations
+
+2009-07-06 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-biblio.tex (section{References from articles}): add warning about
+ citeref's problems with cite.sty in q-backref
+
+2009-07-03 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * dirctan.tex: cat linkparallels up to cm-super
+
+ * add-general.tex (subsection{Bits and pieces of (La)TeX}): new
+ q-howfonts
+
+ * faq-mac-prog.tex (subsection{LaTeX macro programming}): correct one
+ instance of spelling of chngcntr in q-running-nos
+
+2009-07-02 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq.sty: get rid of optional args to \CTAN-(directory|file)
+
+2009-06-30 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq-fonts.tex (subsection{MF fonts}): bluesky fonts from amsfonts in
+ q-getbitmap
+
+ * faq-install.tex (section{Installing (La)TeX files}): remove "bluesky"
+ from name of q-inst1cm
+
+ * dirctan.tex: remove bluesky stuff
+
+2009-06-30 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * dirctan.tex: alpha now back to main tree
+
+ * faq-t-g-wr.tex (subsection{Things have "gone away"}): use amsfonts
+
+ * faq-install.tex (section{Installing (La)TeX files}): ams and cm fonts
+ type 1 links both go to amsfonts now
+
+ * dirctan.tex: add amsfonts-only link
+
+ * faq-fonts.tex (subsection{Adobe PS fonts}): replace refs to
+ ams-amstype1
+
+ * faq-symbols.tex (section{Symbols, etc.}): all ams things are in
+ amsfonts now
+
+ * dirctan.tex: added catalogue links up to babel
+
+2009-06-29 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * texfaq2html-beta: revert to oldstyle css, having experienced a
+ stronger yuck reaction to hufthammer's other suggestions
+
+ * dirctan.tex: add cat link for footmisc
+
+ * texfaq2html-beta: decode catalogue entry name (trailing [foo]) after
+ \CTANdirectory, non-starred versions only pro tem
+
+ * sanitize-beta.pl (generate_CTAN_ref): add catalogue link if available
+
+2009-06-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): a bit
+ of work on q-bgroup
+
+2009-06-23 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * texfaq2html-beta: try Steely style sheet for today...
+
+ * faq-docs.tex (section{Documentation and Help}): add reference to a
+ "full" tug india latex guide on sarovar
+
+2009-06-22 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * texfaq2html-beta: add css link to header of docs (Oldstyle)
+
+ * faq-docs.tex (section{Documentation and Help}): mention hisrchhorn's
+ amslatex-primer in q-man-latex
+ (section{Documentation and Help}): comment about difficulty of reading
+ in q-ref-doc
+
+2009-06-18 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-graphics.tex (section{Graphics}): change title of q-impgraph
+
+ * patchdates.tex: update patch version and date (was 2007...)
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): new
+ answer q-bgroup
+
+ * sanitize-beta.pl (sanitize_line): make \dots{} produce &ellipsis;
+
+2009-06-16 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faq-how-do-i.tex (subsection{Mathematics}): correct statements about
+ \textrm in q-mathstext (after enlightenment from Philipp Stephani...)
+
+2009-06-15 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * letterfaq.tex,newfaq-patch.tex,newfaq.tex: use gather-faqbody in jf's
+ lovely \afterassignment\endinput\input line...
+
+ * Makefile: include subdocuments.mk, add $(SUBDOCS) to BODY
+
+ * subdocuments.mk: list of things gathered by gather-faqbody
+
+2009-06-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * newfaq.tex,newfaq-patch.tex,letterfaq.tex: use gather-faqbody
+
+ * gather-faqbody.tex: new name for faqbody, as gutted (see below)
+
+ * faq-intro.tex,faq-backgrnd.tex,faq-docs.tex,faq-bits+pieces.tex,
+ faq-getit.tex,faq-texsys.tex,faq-dvi.tex,faq-support.tex,
+ faq-litprog.tex,fmt-conv.tex,faq-install.tex,faq-fonts.tex,
+ faq-hyp+pdf.tex,faq-graphics.tex,faq-biblio.tex,faq-adj-types.tex,
+ faq-lab-ref.tex,faq-how-do-i.tex,faq-symbols.tex,faq-mac-prog.tex,
+ faq-t-g-wr.tex,faq-wdidt.tex,faq-jot-err.tex,faq-projects.tex,
+ faq-the-end.tex: split out sections of faqbody.tex
+
+ * faqbody.tex: split sections out into their own faq-*.tex, make
+ this predominantly a set of \faqinput commands
+
+ * faq.sty: deal with LastEdit*
+
+ * sanitize-beta.pl (sanitize_line): process \LastEdit*
+
+ * faqbody.tex: adding \LastEdit to q-texorpdf,q-recovertex,
+ q-linmacnames,q-latexpronounce,q-logos,q-mcite,q-texthings
+
+2009-06-11 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * Makefile (newfaq.aux): move label to linf of its own
+
+ * Makefile.CTAN (CHANGES): do this properly (may need -new rather than
+ -replace)
+
+ * dirctan.tex: add figflow
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): add figflow
+ to q-textflow (at bnb's suggestion), and remove "in latex" qualifier
+ in question title
+
+ * faq.sty: add \LastEdit (to gobble, pro tem at least)
+
+ * sanitize-beta.pl (sanitize_line): add \LastEdit
+
+ * faqbody.tex: v3.19a, today
+ (paragraph{Modified tex executables}): a couple of typos spotted by
+ scott pakin in q-texthings, add experimental \LastEdit
+
+ * sanitize-beta.pl (sanitize_line): move \ISBN .. \Newsgroup above
+ \section, etc., so that those things can be in section arguments
+
+2009-06-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize.pl (generate_CTAN_ref): change worked for -beta, so here too
+
+ * sanitize-beta.pl (generate_CTAN_ref): missing "/" found by bnb
+
+2009-06-10 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * CHANGES-3.19: final released version
+
+ * faqbody.tex: today's date
+
+ * Makefile.CTAN (CHANGES): muck about with installation of new file
+
+ * locations.mk: add HTMLDIREL, define HTMLDIR in relation to it
+
+ * Makefile (release): new target, generate pdfs and html tar file
+
+2009-06-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add collref; bring macros/blu, systems/msdos/e4t,
+ support/et, support/jpeg2ps, macros/scripttex from nonfree; junk
+ oztex-german (now obsolete), patches (nonsense)
+
+ * faqbody.tex (section{References from articles}): rearrange q-mcite a
+ bit, and add collref to it
+
+2009-06-09 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * Makefile.CTAN: don't do .ps files any longer
+
+ * Makefile: don't generate .ps files in "all", just pdf
+
+ * sanitize.pl: up to date with -beta changes
+
+ * texfaq2html: up to date with -beta changes
+
+ * texfaq2html-beta: removed debugging statements (already commented)
+
+2009-06-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Background}): micro-editorial in q-latexpron...
+
+2009-06-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Background}): untangle logos in re. q-latexe,
+ and modify q-latexpronounce accordingly
+ (subsection{Odds and ends}): adjust q-logos to cope with non-bumpy text
+ such as we now use
+
+ * faq.sty: add \latexe
+
+2009-06-03 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): new
+ q-linmacname from add-general
+
+2009-05-29 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): change
+ name of q-macronames to q-linmacnames, yet more editorial
+
+ * faqbody.tex (section{Format conversions}): editorial in q-recovertex
+ (section{The joy of TeX errors}): new q-texorpdf from add-general
+
+2009-05-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): a bit
+ of editorial on q-macronames
+
+2009-05-28 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): translate \c{c}
+
+ * faqbody.tex (section{Current TeX-related projects}): revised q-xetex
+ from francois charette
+ (intro): add francois to list of acknowledgements
+ (first line): today's date
+
+2009-05-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): minor editorial on q-drawing
+
+ * dirctan.tex: add epic
+
+ * faqbody.tex (section{Graphics}): add brief descriptions of pictex,
+ epic and eepic[emu] to q-drawing
+
+2009-05-25 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add first-latex-doc
+
+ * faqbody.tex: today's date
+ (section{Documentation and Help}): mention first-latex-doc in
+ q-man-latex
+
+2009-05-20 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Symbols, etc.}): new q-osf from add-general
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): refer
+ to q-whatmacros rather than spelling out the rules, in q-macronames
+
+2009-05-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): update link for textures in
+ q-commercial
+ (various places): minor editorial work
+
+ * add-general.tex (subsection{Odds and ends}): editorial on q-osf
+
+ * faqbody.tex (section{Support Packages for TeX}): correct \href for
+ texcount,in q-wordcount
+
+ * dirctan.tex: add asymptote
+
+ * faqbody.tex (section{Support Packages for TeX}): retitle q-xfig as
+ q-figetc, and mention asymptote in it (now it's on ctan!)
+
+2009-05-18 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): q-grffilenames from add-general
+
+ * add-general.tex (subsection{Graphics}): tidy q-grffilenames, correct
+ previous text about knuthian constraints on input file name format
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): moved q-whatmacros
+ from add-general *already*
+ (subsection{Floating tables, figures, etc.}): q-wideflt from
+ add-general, too!!
+
+ * add-general.tex (subsection{Bits and pieces of (La)TeX}): new "what
+ are macros" (q-whatmacros)
+ (subsection{Tables, figures and diagrams}): new "wide figures and
+ tables" (q-wideflt)
+ (subsection{Odds and ends}): editorial on q-osf
+
+2009-05-16 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * filectan.tex: add miktex-portable
+
+ * faqbody.tex (section{TeX Systems}): mention miktex-portable in
+ q-texsystems
+
+2009-05-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq.sty: tidy include/exclude comments; make introduction into a real
+ env
+
+ * faqbody.tex (intro): simplify \nothtml code in introduction env
+
+2009-05-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (intro): v3.19, today
+
+2009-05-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): yet more
+ editorial on q-keyval
+
+ * sanitize-beta.pl (sanitize_line): translate \par{} as <br/>
+
+2009-05-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): yet
+ another diddle of q-macronames ... just can't quite satisfy myself
+ about this thing
+
+2009-05-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): list macro
+ names for class/package options in xkeyval
+
+2009-05-07 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): mention
+ ifxetex and ifluatex in q-ifpdf
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): yet
+ more diddling with q-macronames
+ (subsection{\LaTeX{} macro tools and techniques}): wrap a terrible wide
+ line in an example in q-keyval
+
+ * dirctan.tex: add texcount
+
+ * faqbody.tex (section{Support Packages for TeX}): add ctan links for
+ (la)texcount and description of texcount in q-wordcount
+
+2009-05-03 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): minor
+ update of q-macronames on internal macros and why they work
+
+2009-05-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: psfig back on main tree; xypic link as catalogue, now;
+ xfig, xdvi and usergrps now browse-only;
+ remove arc521, arj, atob, binhex, boo, bsplit, checksum, comm, compact,
+ compress, filehdr, ftpd, ftpmail, hexbin, lharc, machdr, macunpack,
+ macutils, mcvert, mirror, mixed, parc, stuffit, tar, tex88, tex8fmts,
+ transname, unarj, unpack, unstuff, uue, uuencode, vtree, vtree-fix,
+ vvcode, xbin (tools/*);
+ remove two borceux subdirs -- diagram, user-guides
+
+ * add-general.tex (subsection{LaTeX macro tools and techniques}): add
+ final(?) paragraphs of q-keyval
+
+2009-05-01 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro tools and techniques}): add
+ pgfkeys to q-keyval, and make a start on scrbase
+
+ * dirctan.tex: add biblatex-contrib
+
+ * faqbody.tex (section{Current TeX-related projects}): update
+ q-biblatex and mention biber therein
+
+2009-04-29 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): mention setspaces
+ spaces and hyphens options of url.sty, in q-setURL
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): don't
+ use |$| in q-catcodes, since it confuses auctex's text colouring --
+ \texttt{\$} instead
+ (subsection{"Generic" macros and techniques}): hack at q-macronames
+ after staring at it a bit
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): give
+ \textasciicircum a null argument in q-wholerow
+
+2009-04-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro tools and techniques}): add
+ xkeyval to q-keyval
+
+ * faqbody.tex (rogue's gallery): add joseph wright and philipp stephani
+ in recognition of help on q-keyval answer
+
+2009-04-17 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro tools and techniques}): add
+ kvoptions and kvsetkeys to q-keyval
+
+2009-04-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro tools and techniques}): more
+ work on q-keyval
+
+2009-04-14 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro tools and techniques}): new
+ q-keyval
+
+ * faqbody.tex (subsection{Why does it do that?}): editorial on
+ q-pdf-fig-chars following thanh's comment
+
+2009-04-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): new q-pdf-fig-chars from
+ add-general
+
+ * add-general.tex (subsection{Graphics}): flesh out q-grffilenames
+
+2009-04-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): complete sentence that
+ previously ended "but" (no full stop!) in q-changemargin
+
+ * add-general.tex (subsection{Why does it do that?}): further editorial
+ on q-pdf-fig-chars
+
+ * texfaq2html-beta: remove the "complete set" link at bottom of search
+
+ * faqbody.tex (subsection{Adobe Type 1 (PS) fonts}): editorial on cm
+ bright in T1 (now a bit less pompous, i hope)
+
+2009-04-12 (small hours) Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): new
+ q-pdf-fig-chars at thanh's request
+
+2009-04-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): improvements to
+ q-luatex from manuel pegourie-gonnard
+ (intro): add mpg to list of names
+
+2009-04-09 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): editorial on
+ q-mfptutorials
+ (section{Acquiring the Software}): editorial on q-nonfree
+
+ * dirctan.tex: add latex-tds
+
+ * faqbody.tex (section{Documentation and Help}): mention heiko's
+ source2e in q-writecls
+
+ * filectan.tex: add latexcheat
+
+ * faqbody.tex (section{Documentation and Help}): add bullet item about
+ figures in q-askquestion
+ (section{Documentation and Help}): editorial on q-man-latex,
+ q-typo-style
+ (section{Documentation and Help}): correct link for pgf/tikz examples
+ in q-tutbitslatex
+ (section{Documentation and Help}): add cheat sheet in q-ref-doc
+
+2009-04-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (paragraph{TeX distributions}): editorial work on
+ q-texthings, q-plainvltx, q-amspkg, q-eplain, q-texfuture
+ (section{Documentation and Help}): editorial work on q-wherefaq,
+ q-gethelp, q-maillists*
+
+2009-04-04 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): add link to
+ liang's thesis in q-hyphen
+
+2009-04-02 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): add sentence to the end of
+ first para of q-whattex; hack away at q-whatpdftex
+
+ * dirctan.tex: delete preview-latex & fptex, make auctex browse only
+
+ * faqbody.tex (section{Current TeX-related projects}): preview-latex
+ now part of auctex, in q-wygexpts
+
+ * dirctan.tex: remove ghostview, move plnfss up one and remove *
+
+ * faqbody.tex (subsection{Finding the Files}): further iteration,
+ now checked in all 3 formats
+ (section{Hypertext and PDF}): ghostview now an unprogram in q-acrobat
+ (subsection{Adobe Type 1 fonts}): replace ghostview with gv
+
+ * Makefile (web,web-beta): correct shell syntax of yesterday's patch(!)
+
+2009-04-01 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Finding the Files}): further iteration
+
+ * Makefile (update web files): deal with case that file doesn't exist
+
+2009-03-31 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Finding the Files}): get rid of a link-
+ without-visible-anchor in the pdf, generally tidy
+
+2009-03-27 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): stupid error in sub of \wideonly
+
+ * texfaq2file: various errors thrown up by -w ... so remove -w
+
+2009-03-26 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (generate_CTAN_ref):
+
+ * texfaq2file: restore list of protocols and hosts (since they're used)
+ ... but don't overdo it ... this lot is a mess and needs tidying
+
+ * label-to-file.pl: the list of file names corresponding to q labels
+
+ * texfaq2file+texfaq2html-beta: use label-to-file.pl in place of list
+ in file
+
+2009-03-25 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * filectan.tex: add compactbib
+
+ * faqbody.tex (subsection{Creating citations}): mention compactbib in
+ q-compactbib (where else? ;-)
+
+2009-03-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: rename bibtex-doc-pdf to bibtex-doc (overwriting old
+ one) so that link takes you to something readable
+
+ * faqbody.tex: 3.18b, today
+ (section{Documentation and Help}): make bibtex docs link just
+ bibtex-doc -- see dirctan change
+ (subsection{Creating bibliographies}): ditto in q-custbib
+
+2009-03-20 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * check-ctan-lists: check status of directory .zip files ...
+
+ * dirctan.tex: bunch of anomalies shown up by latest version of scanner
+
+ * sanitize-beta.pl (generate_CTAN_ref): suppress .tar.gz link
+
+ * texfaq2html-beta: sort lists of matching answers numerically, at last
+ (initialisation): close CTANFILES and CTANDIR after reading them...
+
+ * faqbody.tex (section{Current TeX-related projects}): more twiddling
+ with q-xetex
+ (section{Current TeX-related projects}): ditto q-luatex
+ (section{Current TeX-related projects}): ditto q-omegaleph (more
+ downbeat still than previously :-(
+ (section{Symbols, etc.}): add q-usesymb from add-general
+
+2009-03-19 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Symbols, etc.}): add initial body for
+ q-usesymb
+
+ * faqbody.tex (section{TeX Systems}): mention miktex-for-linux in
+ q-texsystems
+ (section{Current TeX-related projects}): more hacking at q-luatex
+ (section{Current TeX-related projects}): rearrange q-omegaleph,
+ q-xetex, q-luatex, q-ant, q-extex into that order
+
+2009-03-18 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): more fiddling
+ with latex project answer
+ (section{Current TeX-related projects}): mimetex now superseded by
+ mathtex
+ (section{Current TeX-related projects}): don't compare ant to nts,
+ since we no longer mention nts ;-)
+ (section{Current \TeX{}-related projects}): hack at q-luatex
+
+ * dirctan.tex: add keys3, numparse3
+
+ * faqbody.tex (section{Format conversions}): reword q-fmtconv as
+ suggested by jose carlos santos
+
+ * dirctan.tex: add yagusylo
+
+ * add-general.tex (subsection{Symbols, etc.}): skeleton q-usesymb
+
+2009-03-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Footnotes}): try to clarify text of q-ftncapt
+ in re. complaint on c.t.t
+ (section{The joy of TeX errors}): tidy up talk about etex.sty in
+ q-noroom, and mention \reserveinserts
+
+2009-03-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add blackboard
+
+ * faqbody.tex (section{Symbols, etc.}): redo q-numbersets, mention
+ blackboard doc
+
+2009-03-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add urw-base35, remove plain urw
+
+ * faqbody.tex (section{Symbols, etc.}): redo refs to urw chancery, add
+ link to URW base35, in q-scriptfonts
+
+2009-03-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): tidy wording about tbt
+ in q-books
+
+2009-03-06 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): typo in q-editors
+
+2009-03-04 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): slightly less frivolity, in
+ pursuit of better comprehensibility, among the unix editors
+
+ * sanitize-beta.pl (sanitize_line): translate \texshop{}, \texworks{};
+ reorganise the list of "programs" for ease of editing
+
+ * faq.sty: define \texshop, \texworks
+
+ * faqbody.tex (section{TeX Systems}): add a wildcard entry to the list
+ for texworks, in q-editors
+
+2009-02-12 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): micro-
+ typo in q-patch
+
+2009-02-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add expl3, xpackages
+
+ * faqbody.tex (section{Current TeX-related projects}): update q-latex3
+
+2009-02-09 Robin Fairbairns <rf10@hehe.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): add q-texthings, from
+ add-general
+
+2009-01-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): add q-texorpdf
+
+2009-01-22 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): revise view of the
+ wiki books (which seem to have improved a lot)
+
+2009-01-21 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-beta: correct period positioning after previous mod
+
+ * faqbody.tex (subsection{Document structure}): chappg documented
+ "normally" now in q-pagebychap
+ (subsection{Document structure}): remove q-outszwrng
+ (subsection{Document structure}): merge (and condense) list from old
+ q-outszwrng into q-acroantics
+
+
+2009-01-19 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): exptl translation for \paragraph
+
+ * faq.sty: redefine \paragraph, too
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): more
+ minor diddling with q-macronames
+ (subsection{The Background}): similar for q-texthings
+
+2009-01-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document structure}): rewrite warning about
+ programming zoonekynd's stuff, in q-secthead
+
+2009-01-06 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add revised tth ;-)
+
+ * filectan.tex: remove tth
+
+2009-01-05 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): tidy up following
+ obsoleting of numline, in q-linenos
+
+ * dirctan.tex: remove rsfs-type1
+
+ * faqbody.tex (section{Symbols, etc.}): rsfs type 1 now part of base
+ distribution in q-scriptfonts
+
+ * filectan.tex: numline now in obsolete
+
+2008-12-31 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Background}): editorial on list of
+ enhanced tex engines
+
+2008-12-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): add
+ q-macronames from scott pakin
+ (subsection{The Background}): add q-texthings from scott pakin
+
+2008-12-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): typo in q-graphicspath spotted by
+ jim diamond
+
+2008-11-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): minor tidy of q-tds-zip
+ (section{Installing (La)TeX files}): clear up gross \qref error in
+ q-inst-tds-zip, and tidy up rest of question
+
+2008-11-26 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): mention tl network install, tl
+ and miktex package net update
+
+ * filectan.tex: add texlive-unix, texlive-windows
+
+ * faqbody.tex (section{Current TeX-related projects}): a bit of
+ rewording of the presumed prospects for omega 2
+
+2008-11-26 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex ([throughout]): minor edits for untidinesses spotted by
+ karl berry
+
+2008-11-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): minor ed of q-eps
+
+ * add-general.tex (subsection{Graphics}): added q-grffilenames
+ (initial stab ... not even complete in itself)
+
+2008-09-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2html: as -beta
+
+ * texfaq2html-beta: add home link at end of answer, after next/prev
+ links if present
+
+2008-09-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): correct
+ invocation of topcapt package in q-destable
+
+2008-09-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): try to refer to dvipdfmx in parallel
+ in q-dvipdfmgraphics
+
+2008-09-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add ptr to emory
+ latex2e ref in q-ref-doc
+
+2008-08-31 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * Makefile (dist): new target for manual pegouri\'e-gonnard
+
+2008-08-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): mention lulu version
+ of tbt, both in q-ol-books and q-books
+
+2008-08-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add varisize
+
+ * faqbody.tex (subsection{Macros for using fonts}): mention varisize in
+ q-fonts-pln
+
+2008-08-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): deprecate
+ dropping, rewrite descr of lettrine appropriately
+ (subsection{Floating tables, figures, etc.}): mention perpage's
+ \MakeSorted in q-figurehere
+
+2008-08-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Generic macros and techniques}): store
+ a copy of donald a's \moverlay in q-ovwtsym, for future reference
+
+2008-08-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add addlines
+
+ * faqbody.tex (section{Graphics}): mention eplain as a plain route to
+ to loading graphics in q-impgraph (per kb's suggestion)
+ (subsection{Page layout}): mention addlines in q-chngmargonfly
+
+2008-07-31 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \htmlentity to deal with
+ q-dropping guillemet problem
+
+ * faqbody.tex (subsection{Typesetting specialities}): use \htmlentity
+ in \latexhtml (guillemets) in q-dropping
+
+2008-07-30 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): remove chngpage from
+ q-marginpkgs
+
+ * filectan.tex: chngpage->changepage; remove pdftex
+
+ * dirctan.tex: add mciteplus, pdftex, record move of aro-bend
+
+ * faqbody.tex (subsection{Creating citations}): mention mciteplus in
+ q-mcite
+
+2008-07-28 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2file: ruthless stamping on problems produces a use full output
+
+2008-07-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2file: more minor adjustments
+
+ * faqbody.tex (section{Introduction}): now a real (unnumbered) section
+
+2008-07-25 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faq.sty: include comment introduction
+
+ * faqbody.tex: put environment introduction around introduction
+
+2008-07-22 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: minor tidies, use index.html for intro, pro tem
+
+ * faqbody.tex (subsection{Common errors}): editorial in q-verbwithin
+
+2008-07-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: correct repeated-code subroutine from 19th
+ (print_intro_para, etc): attempt to sort out coherent "whole path"
+
+2008-07-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: some tidying of repeated code, clarification of
+ logic of the code -- lots more still to do...
+
+2008-07-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): discuss
+ \ifpatchable in the bit about etoolbox in q-patch
+ (section{Current TeX-related projects}): brief scribble about how lua
+ operates inside tex, in q-luatex
+
+2008-07-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Footnotes}): mention zref/perpage in
+ q-footnpp
+
+2008-07-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{MetaFont fonts}): more modernisation of
+ q-usemf (no longer mentions virmf, for example)
+
+2008-07-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: major upheavals: beginning to show signs of
+ working in the various parts separately
+
+ * faqbody.tex (subsection{Alternative document classes}): tidy text of
+ both q-thesis and q-journalpaper
+ (subsection{MetaFont fonts}): tidy up q-usemf (though whether to keep
+ it at all remains a matter of debate)
+
+2008-07-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add plastex
+
+ * faqbody.tex (section{Format conversions}): add plastex to
+ q-latex2html
+
+2008-07-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Alternative document classes}): enumerate the
+ complete set of memoir document sizes in q-extsizes
+
+2008-07-02 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * Makefile: add target inst-perl-gamma (just texfaq2html-gamma)
+
+ * texfaq2html-gamma: add description meta element to start_html
+
+ * texfaq2html-beta: added a description meta element
+
+ * texfaq2html-gamma: comment out setting of $seclevel hash, since it's
+ not used and therefore logging errors
+
+2008-07-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): miktex already
+ has xetex ('cos it's got to 2.7 already)
+
+2008-06-23 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * Makefile: delete FAQ-html.tar.gz in "clean"
+
+2008-06-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Documentation and Help}): make clear we're talking about latex
+ packages in re. the comp. list in q-symbols
+
+2008-06-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2file: add inst-miktex* to label_to_file (per mpg);
+ correct generation of links from index.html (per jonathan k)
+
+ * faqbody.tex: 3.18a, today
+ (subsection{Lists}): add mention of expdlist in q-interruptlist
+
+ **FAQ-html.tar.gz patched on archive**
+
+2008-06-20 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date, for release
+ (section{Bits and pieces of (La)TeX}): correct typo in q-dtx
+ wideversion
+
+ **RELEASE**
+
+2008-06-19 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html: carried -beta modifications forward
+
+ * sanitize.pl (sanitize_line): carried -beta modifications forward
+
+2008-06-17 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): tidy descr
+ of patch.doc in q-patch, and mention ted and etoolbox
+
+2008-06-13 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (head): today's date
+ (section{Acquiring the Software}): rewrite of some of q-tds-zip
+ (section{Current TeX-related projects}): discuss luatex schedule for
+ distribution, and firm up demise of pdftex devel, in q-luatex
+ (section{Acquiring the Software}): \Qref* to q-psfchoice in link
+ in q-findfont (rather weird without the * ;-)
+
+2008-06-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): new q-tds-zip
+ (section{Installing (La)TeX files}): refer to q-tds-zip in
+ q-inst-tds-zip
+
+2008-06-09 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): reorganise to make
+ the text flow slightly more coherently in q-install-find
+
+ * dirctan.tex: add winedt (browse only)
+
+ * filectan.tex: add mathsurvey.(pdf|html), remove winedt
+
+ * faqbody.tex (subsection{Adobe Type 1 ("PostScript") fonts}): mention
+ Hartke's survey in q-psfchoice, add ctanref to it
+
+2008-06-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Adobe Type1 ("PostScript") fonts}): mention
+ the tex font catalogue in q-psfchoice
+ (subsection{Adobe Type 1 (PostScript) fonts}): add links to the
+ catalogue for fonts we _do_ list, in q-psfchoice
+ (section{Installing (La)TeX files}): editorial on q-instmffont
+
+2008-06-06 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): recognise "\textbackslash ";
+ (hopefully) throughout routine, escape semicolons in substitution text
+
+ * faqbody.tex (section{Installing (La)TeX files}): diddle endlessly
+ with q-what-tds to get \textbackslash to work
+ (throughout): \textbackslash{} -> "\textbackslash " (dunno why)
+
+2008-06-05 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Hyphenation}): mention none option of
+ hyphenat package in q-hyphoff, and point out it's incompatible with
+ babel
+
+ * texfaq2html-beta: correct typo in no-mod branch of translation of
+ question labels
+
+2008-06-04 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): rearrange (and do a
+ smidgeon of editing while we're at it) q-install-find
+
+2008-06-02 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): change initexmf -u
+ to --update-fndb (official version) in q-inst-wlcf
+ (section{Installing (La)TeX files}): tidy up q-what-tds (last of
+ proof-reading stuff?)
+
+2008-05-31 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): proof-reading work
+ on q-installthings, q-install-find, q-install-unpack
+
+2008-05-30 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2html-beta: remove papersize* from label_to_file
+
+ * faqbody.tex (subsection{Page layout}): remove old q-papersize, rename
+ q-papersize* as q-papersize
+ (section{Installing (La)TeX files}): oops -- had missed the \Question
+ command of q-instt1font
+ (header) version 3.18, today
+
+2008-05-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): hack some more at
+ q-instt1font, and split q-prept1font from the front of it
+
+2008-05-29 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): major hacking of
+ q-instt1font, with a view to splitting it in two
+
+2008-05-27 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-beta: require aliasfile.list, use its hash to update
+ input labels
+
+ * faq.sty: write aliasquestion.list as a perl module creating a hash
+
+2008-05-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * Makefile (targets web and web-beta): add aliasquestion.list to the
+ files copied
+
+ * texfaq2html-beta,texfaq2html-gamma: add inst-miktex* to label_to_file
+ hash
+
+ * add-general.tex (subsection{Particular font families}): in q-mathtime
+ change ref to q-inst-miktex to q-inst-miktex* (even though mathtime
+ question has now presumably timed out)
+
+ * faqbody.tex (section{Installing \AllTeX{} files}): add questions
+ q-inst-scut, q-inst-miktex* and q-inst-tds-zip (from add-general)
+ in place of q-inst-miktex
+
+2008-05-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \AliasQuestion (ignored)
+
+ * faqbody.tex (section{Documentation and Help}): minor editorial in
+ q-pkgdoc
+
+2008-05-20 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): add body to
+ q-inst-tds-zip
+
+ * Makefile (target clean): add aliasquestion.list
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): editorial tidies
+ in q-pk and q-tfm
+
+2008-05-20 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): minor edit of
+ q-inst-miktex*
+
+2008-05-12 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): add alias
+ instpackages (for installthings) and wherefiles (for inst-wlcf)
+
+ * add-general.tex (subsection{Installing (La)TeX files}): add alias for
+ q-inst-scut, for testing purposes
+
+ * faq.sty: add \AliasQuestion and supporting mechanisms
+
+2008-05-08 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems errors}): tidy q-endingroup markup
+
+2008-05-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): stupid typo spotted by
+ keith briggs, in q-changebars
+
+ * sanitize-beta.pl (sanitize_line): \texlive, again
+
+ * faq.sty: \texlive according to karl b
+
+2008-05-01 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): tidy up the english
+ and the markup of q-install-unpack, a bit
+
+2008-05-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.17-3, today; add ernst to list of helpers
+ (subsection{Footnotes}): clarify text around mdw's packages in
+ q-footintab
+
+2008-04-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): mention textures on osx
+
+2008-04-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): correct tug box search
+ address in q-findfiles
+
+2008-04-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * filectan.tex: correct dvitype, moved as part of texware (v.i.)
+
+ * dirctan.tex: correct errata, tex--xet, texware and web (knuth-isms
+ moved); add vc
+
+ * faqbody.tex (subsection{Document management}): add vc to q-rcs and
+ make various minor adjustments to accommodate it
+ (header) today's date, add hennig to list of contributors
+
+2008-04-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): mention tex4ht as a route
+ to word format in q-fmtconv; re-sort list to make it more reasonable
+ for today's use
+ (header) v3.17-2, today
+
+2008-03-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: correct committee font, lgrind and mfware; add ziffer
+
+ * filectan.tex: add changepage, remove ziffer, correct figsinltx
+
+ * faqbody.tex (subsection{Spacing of characters and lines}): the
+ letterspace package is no more so change description to microtype
+ in q-letterspace
+ (subsection{LaTeX macro programming}): mention changepage in q-oddpage,
+ (subsection{Page layout}): mention changepage in q-chngmargonfly
+
+2008-03-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2html-beta, texfaq2html-gamma: add papersize* to label mapping
+ list
+
+ * faqbody.tex (subsection{Page layout}): comment out q-papersize, add
+ q-papersize*, q-acroantics, q-papergeom from add-general
+
+2008-03-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: update \faqfiledate
+
+2008-03-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Footnotes}): rearrange recommendations in
+ q-footnpp
+
+2008-02-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): tfti is gnu _free_
+ documentation licence, in q-ol-books
+
+2008-02-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): correct usage of \bsbs
+
+2008-02-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Page layout}): tidy text in q-acroantics
+ so the italic of \ProgName doesn't get confused with emphasis
+ (subsection{Odds and ends}): minor edit of q-osf
+
+2008-02-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Page layout}): add memoir section to
+ q-papergeom
+
+2008-01-31 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Page layout}): more diddling with
+ q-papergeom
+
+2008-01-30 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Page layout}): replacement for
+ q-papersize (3 qs: q-papersize*, q-acroantics, q-papergeom)
+
+2008-01-20 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \plaintex{}
+
+ * faq.sty: add \plaintex{}
+
+ * faqbody.tex (subsection{Page layout}): lots of diddling of
+ q-papersize
+ (throughout) [Pp]lain[ ~]\TeX{} -> \plaintex{}
+
+2008-01-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): muck about with % (which fools
+ sanitize) in q-papersize quoted material about acrobat
+ (subsection{Page layout}): more hacking at this, trying to make it read
+ as if written by a human being
+
+2008-01-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): change url for
+ nicola's latex for novices, in q-man-latex
+
+2008-01-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Hypertext and PDF}): new q-pdf-encr
+
+2008-01-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (intro): add william ingram
+
+2008-01-03 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: * def of crosstex
+
+ * faqbody.tex (section{Current TeX-related projects}): lots of hacking
+ at q-biblatex
+
+2008-01-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): micro-change to q-etex
+
+2008-01-02 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): add a word of caution about about
+ bmeps bitmap patch for dvips, in q-dvipsgraphics
+
+2008-01-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add crosstex
+
+ * faqbody.tex (section{Current TeX-related projects}): mention crosstex
+ in q-biblatex
+
+2008-01-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (subsection{Creating bibliographies}): dealing with p.m. de f. forster
+ in q-bibtranscinit
+
+2007-12-20 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add preview, remove ps4mf
+
+ * faqbody.tex (section{Graphics}): update text around pstricks in
+ q-drawing (the question may need more root-and-branch attention)
+
+2007-12-10 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): mention pdfcolparallel in
+ q-parallel
+
+2007-12-03 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * filectan.tex: add miktex-usb
+
+ * add-general.tex (section{TeX Systems}): add q-onna-stick
+
+2007-11-27 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): yet
+ more mucking with q-long-outer (mostly trimming narrowversion lines)
+
+ * Makefile (clean): add htmltex/* for cleaning
+
+2007-11-26 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): more-
+ or less finished q-long-outer
+
+2007-11-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \textasciicircum{}
+
+ * dirctan.tex: add picins
+
+ * filectan.tex: remove picins
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): heroic attack
+ on command skeletons in q-textflow
+ (throughout): lots of hacking to get rid of |...| verbatims
+
+ * faq.sty: \cmdinvoke accepts parenthesised arguments
+
+ * faqbody.tex (subsection{MF fonts}): tidy narrow/wide interaction in
+ basic mf commands in q-usemf
+ (subsection{Creating bibliographies}): get rid of inline verb in
+ q-bibaccent, and merge html and non-html versions
+
+2007-11-23 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): new
+ q-long-outer
+
+ * faqbody.tex (throughout (remaining)): spell-checked
+ (section{Symbols, etc.}): minor editorial on q-underscore
+
+2007-11-22 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout first ~50%): spell-checked
+
+2007-11-20 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add auto-pst-pdf (yet to be installed, but...)
+
+ * faqbody.tex (section{Graphics}): mention (auto-)pst-pdf in q-labelfig
+
+2007-11-19 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): replace
+ "places to look for are" (!) with "candidates are" in q-protect
+
+2007-11-16 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: add john harper to preamble list of helpers
+ (subsection{LaTeX macro tools and techniques}): yet another rehash
+ of q-protect, following further input from john harper
+
+2007-11-15 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add pkfix-helper
+ * faqbody.tex (subsection{Mathematics}): changed name of q-theoremfmt,
+ minor editorial work
+ (section{Hypertext and PDF}): mention pkfix-helper in q-pkfix
+
+2007-11-14 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add fontspec
+
+ * add-general.tex (subsection{Odds and ends}): tidy, ref fontspec pkg
+ in re. xetex use of fancy otf features, in q-osf
+
+2007-11-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (heading); today's date, add david kraus
+ (subsection{Tables of contents and indexes}): correct bug spotted by
+ david kraus, in q-tocbibind; also add example of koma options
+
+2007-11-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Odds and ends}): more work on q-osf
+
+ * faqbody.tex (subsection{Alternative document classes}): update norman
+ gray's link, add nicola talbot's and rob clark's, and expand all the
+ other links in q-poster
+ (section{Bits and pieces of (La)TeX}): remove assertions about matt
+ swift's doc-tex stuff in q-dtx -- auctex now does the job, says dak;
+ tidy tortuous ref to both q-mf and q-mp, now to work for narrow and
+ wide versions rather than \latexhtml
+
+2007-11-09 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (head): v3.17-1, today
+ (subsection{Document structure}): remove incorrect note about fncychap
+ docs in q-secthead (they're quite standard now)
+
+2007-11-08 [Released as 3.17]
+
+2007-11-07 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): extend reference to
+ nlct's tutorials page in q-man-latex
+
+ * faq.sty: change pdfpagemode to UseNone (but mailing ho for assurance)
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): typo in q-pk
+
+2007-11-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): update german minimal
+ example link
+
+2007-11-05 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.17, today
+
+ * sanitize.pl,texfaq2html: bring forward changes from -beta
+
+ * faqbody.tex (throughout): ensure all \dots have empty arg
+
+2007-11-01 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add xargs, xkeyval
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): discuss
+ xargs in q-twooptarg
+
+2007-10-31 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): reword
+ q-empty for clarity
+
+2007-10-30 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{DVI Drivers and Previewers}): editorial diddles
+ with q-dvi-bmp
+
+ * dirctan.tex: restore dviljk; pretend ghostscript is on free tree
+ (it will be, it will); make gv browse-only
+
+ * faqbody.tex (section{TeX Systems}): editorial work in q-editors
+ (section{TeX Systems}): two minor changes in q-commercial
+ (section{DVI Drivers and Previewers}): dviljk has reappeared
+
+2007-10-30 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): link to latest unsatisfactory
+ source for xemtex
+ (section{TeX Systems}): elide the mail address from atari listing in
+ q-texsystems
+
+ * filectan.tex: remove the protext entry (moved to dirctan for
+ symmetry reasons...)
+
+ * dirctan.tex: * the mactex entry, add protext
+
+ * faqbody.tex (section{Acquiring the Software}): rehash q-findfont
+ (section{Acquiring the Software}): mention ctan copies in q-cd
+
+2007-10-29 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): new link for troy
+ henderson's previewer in q-mfptutorials
+ (section{Documentation and Help}): and delete link to the metafun
+ tutorial, which seems to have vanished from the web :-(
+ (intro): today's date, add troy henderson
+
+2007-10-24 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): ref new askinclude in
+ q-conditional
+ (section{Acquiring the Software}): micro-edit of q-uploads
+
+ * filectan.tex: remove askinclude
+
+2007-10-23 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Adobe Type 1 fonts}): update mtpro stuff for
+ mtpro2, incl providing working web link
+
+ * sanitize-beta.pl (sanitize_line): translate \par (one instance only!)
+
+ * faqbody.tex (section{Acquiring the Software}): add link to catalogue
+ set of licences in q-nonfree (rms' suggestion)
+
+ * filectan.tex: add cat-licences
+
+ * dirctan.tex: add kpfonts, minionpro, mnsymbol
+
+ * faqbody.tex (subsection{Adobe Type 1 fonts}): add kpfonts and
+ minionpro/mnsymbol
+
+2007-10-22 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add fouriernc
+
+ * faqbody.tex (subsection*{Origins}): extend the list to members of the
+ committee, thus reducing the confusion (in my mind) about who is/was
+ and who isn't/wasn't
+ (subsection{Adobe Type 1 fonts}): add web location for berthold horn's
+ paper, add thierry bouche, similarly, in q-psfchoice
+ (subsection{Adobe Type 1 fonts}): add fouriernc to list; add fontsite
+ garamond to the list of mathdesign fonts, in q-psfchoice
+
+2007-10-17 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): edit q-uploads
+
+2007-10-17 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): remove \xxx|...| forms of
+ \ProgName, \FontName, \Package, \Class, \Email, \mailto, \File and
+ \Newsgroup
+
+ * faqbody.tex (section{The joy of TeX errors}): remove last two
+ instances of \ProgName|...|, in q-8000
+ (throughout): remove last three instances of \Email|...|
+
+ * sanitize-beta.pl (sanitize_line): implement \ISBN*
+
+ * faq.sty: add \ISBN* (2 args) version, for ISBN10+ISBN13
+
+ * faqbody.tex (section{Documentation and Help}): use \ISBN* for tlc2
+ and tlgc2 (latter newly converted from original tlgc entry)
+
+2007-10-16 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): bits of editorial
+ work in q-adobetypen, q-resolns, q-fontname
+ (section{Acquiring the Software}): mention mirror.ctan.org in
+ q-archives
+
+2007-10-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): hack at q-dtx
+ (have asked dak about dtx in emacs...)
+ (section{Bits and pieces of (La)TeX}): minor editorial on q-whatenc and
+ q-ecfonts
+ (section{Bits and pieces of (La)TeX}): work on q-eps
+
+2007-10-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): rehash q-special
+ (section{Bits and pieces of (La)TeX}): minor editorial to q-hyphen
+
+2007-10-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro tools and techniques}): bit
+ more work on q-printvar
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): yet more
+ twiddling with q-protect
+
+2007-10-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): lots of hacking of
+ q-virtualfonts
+
+2007-10-12 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro tools and techniques}): new
+ q-printvar contributed by gernot hassenpflug
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): change to
+ q-protect developed from john harper's contribution
+ intro: v3.16z-4, today; add john harper to list of helpers
+
+2007-10-11 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add texbytopic
+
+ * faqbody.tex (subsection{Hyphenation}): tidy up alternatives at the
+ end of q-hyphoff
+ (subsection{Hyphenation}): mention \uchyph in q-wdnohyph
+ (section{Documentation and Help}): tex by topic now ctan in q-ol-books
+
+2007-10-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): remove latexhtml around
+ thanh's full name in q-whatpdftex
+ (section{The Background}): link to q-latextoplain from q-latexandplain
+ (section{The Background}): tidy up references to other projects,
+ add luatex in q-texfuture
+ (section{The Background}): replace last para of q-readtex
+ (section{The Background}): add \href to tug's web site in q-tug*
+ (section{The Background}): correct a couple of \luatex (capitalised)
+
+ * sanitize-beta.pl (sanitize_line): add def of \The (for thanh)
+
+2007-10-08 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add autolatex
+
+ * faqbody.tex (section{TeX Systems}): refer to makefile question in
+ q-editors, rather than just mentioning latexmk (not the only thing
+ wrong with that answer)
+ (subsection{Document management}): mention autolatex in q-make
+
+2007-10-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Spacing of characters and lines}): sanity
+ adjustment in q-flushboth ("latest version" was 2003)
+
+2007-10-04 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): q-biblatex from
+ add-general
+ (section{Current \TeX{}-related projects}): minor edit to q-luatex
+
+ * dirctan.tex: amsrefs now on m/l/c
+
+ * add-general.tex (subsection{Current TeX-related projects}): declare
+ that amsrefs is currently supported; while this seems true (as a
+ phenomenon) i wonder whether it's a good thing to rely on...
+
+ * faqbody.tex (section{Current TeX-related projects}): diddle with
+ q-xetex
+
+2007-09-25 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add dir excel2latex
+
+ * filectan.tex: remove the .zip distro of excel2latex
+
+ * faqbody.tex (section{Installing (La)TeX files}): reword text about
+ readme files in q-install-unpack
+
+2007-09-24 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): correct references to new installation qs
+
+2007-09-18 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16z-1, today
+ (section{Installing (La)TeX files}): bunch of answers from add-general,
+ replacing most of the section
+
+2007-09-13 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{You're still stuck?}): "carefule" corrected ;-)
+
+ * add-general.tex (subsection{Installing (La)TeX files}): lots of work
+ on q-what-tds and q-install-where, to clarify what's going on
+
+2007-09-04 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): more emphasis on ctan
+ supply of documentation, in q-gethelp
+ (subsection{Document management}): a bit extra on changes.sty in
+ q-changebar (whole question needs reviewing)
+ (section{Documentation and Help}): ctan supply of docs, again, in
+ q-man-latex
+
+2007-08-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): new q-entercompmode
+ and q-checksum from add-general
+
+2007-08-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): updated uk address for sciword
+
+2007-08-17 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add a warning about
+ mailing inappropriate people in q-gethelp
+ (section{Current \TeX{}-related projects}): the project is latex, not
+ latex3 -- correct some of the text of q-latex3
+ (subsection{Tables of contents and indexes}): mention the use of
+ \phantomsection in q-tocbibind
+
+ * dirctan.tex: amslatex-primer moved to info/amslatex/primer, now
+
+2007-08-16 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Odds and ends}): add ref to mathpazo on
+ ctan, in q-osf
+
+ * faqbody.tex (subsection{Floating tables, figures, etc.}): new
+ q-figurehere from add-general
+
+2007-07-27 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of AllTeX}): restored "\" to
+ "acro" in q-virtualfonts
+
+2007-07-25 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): typo in
+ q-struttab, spotted by karl b
+
+2007-07-23 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): extend typo examples,
+ and tidy coding, in q-altabcr
+ (subsection{Tables, figures and diagrams}): rationalise, reduce range
+ of overlapping recommendations in q-tabcellalign
+
+2007-07-16 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add cmolddig, eco
+
+ * add-general.tex (subsection{Current TeX-related projects}): write
+ more on biblatex in q-biblatex
+ (subsection{Odds and ends}): mention vf access in q-osf
+
+2007-07-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Current TeX-related projects}): first
+ stab at new q-biblatex
+
+ * dirctan.tex: add biblatex and amsrefs; remove dvi2xx and dvilj4,
+ correct lollipop
+
+2007-07-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): editorial tidies of
+ q-writecls, mention clsguide.pdf
+
+2007-07-03 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16c-17, today; add axel sommerfeldt to list
+ (section{The joy of TeX errors}): add further text in q-hyperdupdest,
+ as suggested by axel sommerfeldt
+
+2007-06-29 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Odds and ends}): new q-osf
+
+2007-06-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v 3-16c-15, today; mention neto's input on numprint in
+ list of helpers
+
+ * dirctan.tex: add numprint
+
+ * faqbody.tex (subsection{Typesetting specialities}): mention numprint
+ in q-dec_comma
+
+2007-06-13 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add texlive
+
+ * faqbody.tex (section{TeX Systems}): add details of a mactex mailing
+ list in q-texsystems
+
+2007-06-11 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): mention fragility of \url in
+ q-verbwithin
+ (subsection{Typesetting specialities}): mention lack of robustness in
+ q-seturl, and explain use of \urldef to deal with the problem
+
+2007-06-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq.sty: yet another small typo (in the fail branch, this time)
+
+ * filectan.tex: add mil-short (gratzer's offering)
+
+ * faqbody.tex (section{Documentation and Help}): add gratzer's short
+ course to q-man-latex
+
+2007-06-06 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): editorial correction
+ of q-optionclash
+
+2007-06-05 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faq.sty: check for etex
+
+ * add-general.tex (subsection{Installing (La)TeX files}): add some
+ actual text to q-inst-tidy and q-what-tds
+ (subsection{The Joy of TeX errors}): new q-entercompmode
+
+2007-06-04 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): editorial
+ in q-install-where and q-inst-wlcf
+
+ * dirctan.tex: correct fptex link (even though nothing now uses it...)
+
+2007-06-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): flynn's classes.dtx
+ article now rev., in tub (q-writecls)
+
+2007-06-01 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): mention texshop in mactex distr,
+ in q-editors
+ (section{TeX Systems}): deal with oztex and cmactex's relation to os/x
+ (so far as i understand what's going on) in q-texsystems
+
+2007-05-31 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Generic macros and techniques}): complete
+ and clarify q-ovwtsym
+
+2007-05-30 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \xetex
+
+ * faq.sty: add \xetex
+
+ * faqbody.tex: v3.16c-15, today
+ (section{Current TeX-related projects}): xetex is available in texlive
+ and will be in miktex 2.7, mention bidi capabilities in q-xetex
+
+2007-05-29 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): extend and make less
+ abrupt the stuff of q-latextoplain
+
+ * add-general.tex (subsection{Installing (La)TeX files}): trying to bed
+ this set of answers down -- work on several of the questions
+
+2007-05-24 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16c-14, today
+ (section{Documentation and Help}): attempt to clarify q-minxampl
+
+2007-05-23 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): tidy the two
+ references to nicola talbot in q-man-latex
+
+2007-05-21 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16c-13, today
+ (subsection{Metafont fonts}): hack at q-getbitmap to hint that bitmap
+ fonts aren't really the world's prime concern any more
+
+2007-05-14 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Labels and references}): list zref's options
+ in q-nameref
+ (section{The joy of TeX errors}): correct error in q-errmissitem
+ (inserted yesterday at home :-( )
+
+2007-05-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): discuss lists inside
+ tables, in q-errmissitem
+
+2007-05-11 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): miktex stuff
+ given a bit of a going-over in q-install-where (plus a few
+ consequential changes
+
+ * sanitize-beta.pl (sanitize_line): add \textbackslash{}
+
+2007-05-10 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Lists}): expand details of enumitem in
+ q-complist
+
+2007-05-09 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Lists}): expand on enumitem stuff in
+ q-interruptlist (it _does_ allow nested interruptions ... sort of
+
+2007-05-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16c-12, today
+ (subsection{LaTeX macro programming}): new q-latexqual from add-general
+ (subsection{Mathematics}): new q-mathonlyref from add-general
+
+2007-05-08 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Macros for using fonts}): mention that eplain
+ doesn't do font selection in q-fonts-pln
+ (subsection{LaTeX macro tools and techniques}): editorial on q-atsigns
+
+2007-05-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2html-beta: use &[lr][sd]quo; in decorating text
+
+ * dirctan.tex: add pdcmac
+
+ * faqbody.tex (subsection{Macros for using fonts}): mention pdcmac in
+ q-fonts-pln
+
+2007-05-05 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * locations.mk: correct path to cgi, tidy
+
+2007-05-04 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-beta: escape characters in keyword strings
+
+ * sanitize-beta.pl (sanitize_line): add \extension
+
+ * faqbody.tex (section{The joy of TeX errors}): mention grffile package
+ in q-unkgrfextn
+
+ * faq.sty: add \extension command
+
+ * faqbody.tex: v3.16c-11, today
+
+2007-05-03 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-beta: redo decoding of % in code reading switches
+
+ * faq.sty: correct typo
+
+2007-04-29 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add pictex(!) and texlive
+
+ * faq.sty: add def of \texlive
+
+ * faqbody.tex: v3.16c-10, today
+ (subsection{Alternative document classes}): add a pointer to context
+ resources in q-slidecls
+ (throughout): typeset variants of texlive -> \texlive{}
+
+2007-04-27 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: remove tetex-beta, tetex to point at obsolete/ tree
+
+ * filectan.tex: add bibtex-faq
+
+ * faqbody.tex (subsection{Page layout}): mention ar scaling issues in
+ q-papersize, and tidy rest of text, too
+ (section{Documentation and Help}): remove unnecessary conditionals in
+ q-gethelp
+ (section{Documentation and Help}): tidy q-bibtexing, add reference to
+ btxfaq
+
+2007-04-25 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * Makefile (inst-perl[-beta]): everything on standard web server, use
+ cp -p instead of copy -t, adjust help
+
+2007-04-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: version 3.16c-9, today
+ (subsection{Footnotes}): rewrite answer q-ftnsect
+ (section{TeX Systems}): update bluesky information in q-commercial
+
+2007-04-16 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): stick some
+ text in q-install-doc
+
+2007-04-10 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): further
+ clarification of options in q-install-find
+ (subsection{Installing (La)TeX files}): flesh out answer
+ q-install-unpack, elaborating on what appears in q-dtx
+ (subsection{Installing (La)TeX files}): new q-install-doc placeholder
+
+ * faqbody.tex: v3.16c-8, today
+ (subsection{Tables, figures and diagrams}): tidy up refs to ltxtable in
+ q-fixwidtab
+
+2007-04-03 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * newfaq-patch.tex: add patch option to \documentclass
+
+ * faq.cls: deal with option patch, produce different page footer if so
+
+2007-04-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Footnotes}): mention bigfoot in q-multfoot
+
+2007-03-27 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): correct
+ \dots (with no {}) in q-ltxabbrv
+
+2007-03-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16c-7; remove all references to package web2c
+
+2007-03-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: remove web2c, web2c*
+
+ * filectan.tex: remove unixtex.ftp, correct protext
+
+2007-03-20 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): tops-20 ftp link regularised
+ (section{Acquiring the Software}): redo description of ctan sites,
+ with alternative versions for hyper (wide) and non-hyper (narrow)
+ version in q-archives
+
+ * sanitize-beta.pl (sanitize_line): \FTP to accept braced args only
+
+2007-03-19 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): another thrash at q-texsystems
+
+2007-03-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16c, today
+ (throughout): remove traces of tetex, and rewrite as necessary
+
+2007-03-17 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): redo q-cd to talk
+ about the tex collection, rather than just tex live
+ (section{TeX Systems}): work (so far) on unix, linux and win32
+ (win32 contains a line of "+++..." to follow on with)
+
+2007-03-16 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16c-5, today
+ (section{The Background}): 2^16->2^15 in q-etex (!)
+ (subsection{Why shouldn't I?}): replace q-newfont with q-newfont* from
+ add-general
+ (subsection{LaTeX macro tools and techniques}): replace q-plninltx with
+ q-plninltx* from add-general
+ (subsection{LaTeX macro programming}): new q-fontsize from add-general
+ (subsection{Footnotes}): new q-run-fn-nos from add-general
+
+2007-03-15 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-beta: attempts at introducing some sanity into the
+ search code; notably unsuccessful, to date
+
+ * add-general.tex (subsection{Odds and ends}): proof-reading
+ corrections in q-run-fn-nos, q-newfont*, q-plninltx* and q-fontsize
+
+2007-03-11 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2file: as for texfaq2html-beta
+
+ * texfaq2html-gamma: as for texfaq2html-beta
+
+ * texfaq2html-beta: add new *-names to %label_to_file
+
+ * add-general.tex (subsection{Odds and ends}): new q-fontsize,
+ q-plninltx* and q-newfont* (three questions from the old 2 non-*)
+
+2007-03-09 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * CHANGES-3.16d: revised q-running-nos
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): restore
+ commented-out hack above q-ltxabbrv; it's not clever and it's not
+ pretty, but the printed output is less awful than without the hack
+
+2007-03-08 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro programming}): recommend chngctr
+ first, the two fragment alternatives second in q-running-nos
+
+ * add-general.tex (subsection{Footnotes}): new q-run-fn-nos
+
+2007-03-02 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: modest doodling
+
+2007-02-21 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): odd tinkering
+ with answers in this section -- needs concerted attack
+
+2007-02-15 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Odds and ends}): new q-fontsize, to meld
+ with (new) q-plninltx* and q-newfont*
+
+ * faqbody.tex (section{Current TeX-related projects}): make mention of
+ lua itself in q-luatex into a hyperref
+
+2007-02-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faq.sty: add \LuaTeX
+
+ * faqbody.tex: v3.16c-4, today
+ (section{The Background}): rewrite of q-context from Aditya Mahajan
+ (intro): Aditya Mahajan in list of helpers
+ (section{Current TeX-related projects}): tidy luatex thing a bit, add
+ link to luatex.org site
+
+2007-02-06 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Mathematics}): correct typo in q-limits
+ (introduced, but change not documented, on 2007-01-30)
+
+ * add-general.tex (subsection{Mathematics}): new q-mathonlyref
+
+2007-01-30 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (subsection{Mathematics}): more detail about "ad hoc" operators in
+ q-newfunction
+
+2007-01-26 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Introduction}): make links to pdf copies \CTANhref
+
+2007-01-24 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add changes
+ remove nonfree from bakoma-tex, dvi2tty, foiltex
+
+ * faqbody.tex: today's date
+ (subsection{Document management}): mention changes pkg in q-changebars
+
+2007-01-23 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: list listbib and biblist
+
+ * faqbody.tex: today's date
+ (subsection{Manipulating whole bibliographies}): mention listbib and
+ biblist in q-nocite*
+
+2007-01-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * newfaq-patch.tex: input additions (!)
+
+ * faqbody.tex (section{Documentation and Help}): correct ctan ref for
+ pictex-summary
+
+2007-01-22 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16c-3, today
+ (subsection{Spacing of characters and lines}): mention microtype's
+ letterspace.sty in q-letterspace
+
+2007-01-05 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * patchdates.tex: pl4.14, today
+
+ * add-general.tex (subsection{The Joy of TeX errors}): new q-checksum
+
+2006-12-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add pictex-summary
+
+ * faqbody.tex: v3.16c-2, today
+ (section{Documentation and Help}): pictex summary in q-docpictex
+
+2006-12-20 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Support Packages for TeX}): correct text about
+ ispell vs. aspell
+
+2006-12-18 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ *** released ***
+
+ * Makefile ($(WEB_BETA)*): use cp rather than copy (!)
+
+ * sanitize.pl (sanitize_line): add \narrowonly, \wideonly
+
+ * faqbody.tex: v3.16c-1, today (for release)
+
+2006-12-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * letterfaq.tex: do the single column trick here too, for letterfaq.pdf
+
+2006-12-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (everything up to section{Graphics}): use \Qref* when
+ appropriate, using \narrowonly, \wideonly as necessary
+
+ * sanitize-beta.pl (sanitize_line): deal with \narrowonly, \wideonly
+
+ * faq.sty: define \narrowonly, \wideonly
+
+2006-12-13 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): major edits to q-acrobat,
+ following cogent comments from karl berry
+ (section{Hypertext and PDF}): liberal use of \qref* makes q-dvips-pdf
+ more nearly comprehensible, when read as pdf
+
+ * dirctan.tex: add dvipdfmx, gv
+
+ * newfaq-patch.tex: make pdf output single column, as in newfaq.tex
+
+2006-12-11 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16c
+
+ * faq.sty: bludgeon \CTANhref in pdf mode
+
+ * faqbody.tex: v3.16b-6, today
+ (subsection{Document structure}): put titlesec and sectsty into
+ different paras, offer rationale for choice om q-secthead
+ (subsection{LaTeX macro tools and techniques}): mention \@dblarg in
+ q-oarglikesect
+
+2006-12-07 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * filectan.tex: shiny new *longer* path for btxmac
+
+2006-12-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): correct typos in
+ ctanrefs in q-music
+
+2006-12-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating citations}): correct reed.edu link,
+ thanks to barbara b
+
+2006-11-30 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): make an itemised
+ list of alternative styles in q-citeurl, add babelbib to list
+
+2006-11-28 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): add two more
+ examples in q-bibprefixsort
+
+2006-11-26 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16b-5, today
+ (section{Documentation and Help}): reference kmf's page about pgf/tikz
+
+2006-11-22 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16b-4, today
+ (subsection{Spacing of characters and lines}): \linestretch ->
+ \linespread (per ulrike fischer) in q-linespace
+
+2006-11-20 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): correct sciword uk phone nos in
+ q-commercial
+
+2006-11-17 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add everypage and draftwatermark; correct wd2latex,
+ remove wasy and xymtex
+
+ * faqbody.tex (subsection{Page layout}): mention draftwatermark (and
+ its everypage) in q-watermark
+
+2006-11-15 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): ctan ref for mptopdf
+ in q-mpprologues
+
+ * dirctan.tex: add pdftex-graphics
+
+ * faqbody.tex (section{The joy of TeX errors}): mention "h" response
+ in q-optionclash
+
+2006-11-14 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Floating tables, figures, etc.}): new
+ q-figurehere
+
+2006-11-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (preamble): today's date; input archive.cfg regardless of
+ whether we're using pdf
+
+ * faq.sty: yet more baroquery towards \CTANhref
+
+2006-11-13 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): ref to vis faq in "how to use"
+
+ * faq.sty: new command \CTANhref works for dvi version so far;
+ no longer requires \Status for pdf working, uses ifpdf pkg instead;
+ a fair bit of more minor tidying
+
+2006-11-09 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Floating tables, figures, etc.}): example
+ code in {quote} in q-vertspacefloat and q-mcfloat
+
+2006-11-06 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): mention the
+ case of multirow-multicolumn in q-multirow
+ (subsection{"Generic" macros and techniques}): new q-isdef from
+ add-general
+
+2006-11-03 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): correct \cmdinvoke{c}{arg1}{arg2}
+ sanitize.pl (sanitize_line): -beta works, so correct here too
+
+06-11-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): bunch
+ of editorials in q-isdef
+ (subsection{"Generic" macros and techniques}): tidy narrow layout of
+ example, add wide version and hack at words a bit in q-ovwtsym
+
+2006-10-31 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Generic macros}): \csx{relax} in place of
+ \relax(!) in q-isdef
+
+ * dirctan.tex: add pspicture
+
+ * faqbody.tex (section{Graphics}): correct ctan ref for pspicture
+
+2006-10-31 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date, v3.16b-3
+ (subsection{LaTeX macro programming}): dot \makeat* liberally around
+ examples in q-running-nos
+
+2006-10-23 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): draftcopy doesn't work with
+ pdflatex (in q-watermark)
+
+2006-10-19 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: version 3.16b-2, date now iso format (with hyphens)
+
+ * patchdates.tex: pl4.13, date now iso format (with hyphens)
+
+ * add-general.tex (subsection{Generic macros and techniques}): new
+ q-ovwtsym from a post by enrico gregorio (latest instance of an
+ oft-repeated answer)
+
+2006-10-05 Robin Fairbairns <rf10@pb000.cl.cam.ac.uk>
+
+ * Makefile.CTAN: basis of mechanism to install CHANGES files
+
+2006-10-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * texfaq2html: sigh...merge in intro patch from texfaq2html-beta
+
+ * dirctan.tex: add figflow
+
+ * faqbody.tex: v3.16c, today
+ (subsection{Tables, figures and diagrams}): add figflow for plain, tidy
+ some of the ghastly verbatim in q-textflow
+
+2006-10-04 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.16b-1, today
+ (section{Format conversions}): correct address for stil, in q-sgml2tex
+
+2006-10-02 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * sanitize.pl (sanitize_line): updates from -beta
+
+ * faqbody.tex: v3.16b, today
+
+2006-09-28 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{``Generic'' macros and techniques}): new
+ q-isdef
+
+ * sanitize-beta.pl (sanitize_line): move \csx before text shape
+ changing commands, so we can have emphasised control seqq
+
+2006-09-23 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro programming}): misspelling of
+ corrollary (over and over again) in q-addtoreset
+
+2006-09-20 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): reference testflow in
+ q-dvips-pdf
+ (section{Documentation and Help}): link to q-dvips-pdf in tutbitslatex
+ (section{Hypertext and PDF}): trivial editorials in q-acrobat
+ (section{Documentation and Help}): remove caveat about epslatex in
+ q-tutbitslatex
+
+2006-09-19 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16a-6, today
+ (section{Documentation and Help}): add the word "minimal" (to assist
+ searching - suggestion from brooks moses) and tidy q-minxampl a bit
+ (section{The joy of TeX errors}): new q-optionclash from add-general
+
+2006-09-18 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Alternative document classes}): mention
+ nicola talbot's experimental jpgfdraw in q-poster
+
+2006-09-12 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): rewrite q-texinfo
+
+2006-09-11 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): yet more fun
+ with q-optionclash
+
+ * faqbody.tex: v3.16a-5, today
+ (throughout): t1 and ot1 done consistently (remains to check other
+ encodings like t2 series, etc)
+ (section{Installing AllTeX files}): correct \latinfamily in
+ q-instt1font
+
+2006-09-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): rewrite
+ recommendations for q-optionclash
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): add
+ \makeatletter to example in q-ltxcmds
+
+2006-09-05 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): add
+ q-optionclash
+
+2006-08-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * check-ctan-lists: add miktex-setup to list of known links
+
+ * dirctan.tex: correct dvipaste
+
+ * filectan.tex: correct miktex-setup, metafp-pdf
+
+2006-08-26 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): q-omegaleph tidy-ups in
+ q-texfuture, q-books, q-texsystems
+ (section{Current TeX-related projects}): q-omegaleph and q-luatex from
+ add-general
+
+2006-08-25 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Current TeX-related projects}): minor
+ editorial on q-luatex
+
+ * faqbody.tex (section{The Background}): typo in q-whatpdftex
+
+2006-08-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16a-4, today
+ (section{Bits and pieces of (La)TeX}): rehash q-virtualfonts
+
+ * faq.sty: make \htmlonly careful about spacing (thought experiment led
+ to this -- don't know that it's actually a concern)
+
+2006-08-16 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: lots more diddling (trying to get all keys into a
+ hash, and working from there ... not successful)
+
+ * faqbody.tex (section{Graphics}): suggestion from donald for \raisebox
+ alignment of graphics in q-topalign
+
+2006-08-15 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: yet more thrashing about
+
+ * faqbody.tex (section{The joy of TeX errors}): other reasons for the
+ error in q-hyperdupdest
+ (_the_ list): add iain murray
+
+2006-08-14 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: further extension of yesterday's fun; added
+ ?intro(duction) [needs work on texfaq2file] and more debugging
+
+ * add-general.tex (subsection{Current TeX-related projects}): tidy
+ q-omegaleph, extend q-luatex and (hopefully) make it more coherent
+
+2006-08-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Current TeX-related projects}): new
+ questions (rather, bases for questions) q-omegaleph and q-luatex
+
+ * faqbody.tex: version 3.16a-3, today
+ (section{TeX Systems}): different instructions for miktex installation
+ in q-texsystems
+ (subsection{Footnotes}): change ctan link for perpage in q-footnpp
+ (subsection{LaTeX macro programming}): change ctan link for perpage in
+ q-addtoreset
+ (subsection{Typesetting specialities}): mention lilypond in q-music
+ (subsection*{Origins}): add comment to contributor entry about dak,
+ remove the silly footnote about full stops
+
+ * filectan.tex: correct epsf (should be link to dir?), metafp,
+ metafont-for-beginners, miktex-setup (not *right*...); delete
+ miktex-install, perpage
+
+ * dirctan.tex: correct arabtex, cellspace, dvipaste pst-pdf, texindex;
+ add epsf
+
+ * faqbody.tex (subsection{Common misunderstandings}): spelling error in
+ q-paraparam
+
+ * texfaq2html-gamma: done a debugging session; add search-box
+ switching; add a modicum of doc in comments; allow to be run from
+ command line (editable pointer)
+
+ * faqbody.tex (section{Introduction}): capa_bi_lities (!)
+
+2006-08-11 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16a-2, today
+ (section{Documentation and Help}): add tug font resources to
+ q-tutbitslatex
+
+2006-08-07 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): correct spelling of separate & derivatives
+
+ * add-general.tex (subsection{LaTeX macro programming}): new
+ q-latexqual for nag, texidate
+
+ * dirctan.tex: add a (multilingual, as it were) browsable l2tabu
+
+2006-08-06 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): correct
+ typo in, and editorial on q-atsigns
+
+ * sanitize-beta.pl (sanitize_line): translate \LaTeX{} (!)
+
+ * faqbody.tex (subsection{Tables of contents and indexes}): correct
+ sample code and slick up descr slightly, in q-minitoc
+ (subsection*{Origins}): mention Jean-Pierre Drucbert in _the_ list
+
+2006-08-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): delete doubling of "the" (!)
+
+2006-08-04 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): rewrite the note
+ about maths fonts in q-ecfonts
+
+2006-08-03 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): tweak wording
+ slightly
+
+ *** release 3.16a ***
+
+2006-07-31 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: separate section for searches, trim final else
+
+ * faqbody.tex (section{The Background}): correct current mf version no
+
+2006-07-25 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16a, today
+
+2006-07-25 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): extend q-filename with
+ a simpler file-name saver, and show how to strip .tex from fink
+ filenames
+
+ * texfaq2html-beta: more careful about \section test for end of intro
+
+2006-07-07 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): stupidity
+ in q-cmdstar, spotted by Kasper van den Berg
+
+2006-07-06 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Lists}): typo in q-enumerate spotted by
+ Samuel Lelievre
+
+2006-06-30 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.16, today
+
+ * sanitize.pl: bring up to date with sanitize-beta.pl
+
+ * texfaq2html-gamma: remove %SymbolChar table
+
+ * faqbody.tex (section{Documentation and Help}): typo in q-tutbitslatex
+ (wideversion only, so only now detected)
+
+2006-06-29 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (subsection{Creating citations}): q-whatbst from add-general
+ (subsection{Macros for using fonts}): (new subsection) q-fonts-pln from
+ add-general
+ (section{Graphics}): new q-repeatgrf from add-general
+
+ * add-general.tex (subsection{Creating bibliographies}): proof-reading
+ corrections of q-whatbst
+
+2006-06-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Fonts}): proof-reading corrections in
+ q-fonts-pln
+ (subsection{Graphics}): proof-reading corrections in q-repeatgrf
+
+2006-06-28 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Graphics}): mention dvips version, and
+ add missing pdf bit in q-repeatgrf
+
+2006-06-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Graphics}): mention graphicx-psmin
+
+ * dirctan.tex: add graphicx-psmin
+
+2006-06-27 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): first stab at
+ body for q-install-find
+
+ * faqbody.tex: today's date
+ (subsection{Common misunderstandings}): new q-gutter from add-general
+ (subsection{Common errors}): new q-matchbrak from add-general
+
+2006-06-26 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): skeleton of
+ new installation question structure
+
+2006-06-23 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): editorial tidying of q-graphicspath
+ plus emphasise the need for trailing slash on \graphicspath dirs
+ (section{Graphics}): minor editorial in q-graph-pspdf q-mpprologues too
+ (subsection{Creating bibliographies}): editorials on q-bibstrtl
+
+2006-06-22 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): deal with \subsection* (i.e.,
+ ignore it, for intro \latexhtml command)
+
+ * faqbody.tex: version 3.16alpha, today
+ (section{Introduction}): rearrange to limit the amount we need to show
+ on the web by default
+
+2006-06-22 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date -- rehash the intro
+
+2006-06-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): actual text for
+ q-gutter
+
+ * additions.tex: let's change patch version and date, for once!
+
+2006-06-19 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Documentation and Help}): add smith's latex for logicians to
+ q-tutbitslatex
+ (section{TeX Systems}): make ref to w32tex, move dos & os/2 offerings
+ down below win32 in the doc (q-texsystems)
+
+2006-06-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Graphics}): comment-out
+ q-dvipdfmgraphics* -- seems to have been a mistake
+
+ * faqbody.tex (subsection{Page layout}): restructure the list of
+ related answers in q-changemargin with an intersticial remark
+ (subsection{Page layout}): develop and extend q-chngmargonfly
+
+2006-06-14 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date in preamble
+ (subsection{Page layout}): split Q-changemargin into intro and 3 bits
+ of detail
+
+2006-06-13 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): a huge start on
+ new q-gutter (i.e., wrote \Question command)
+
+ * faqbody.tex (subsection{Page layout}): start of rehash of
+ q-changemargin
+
+2006-06-05 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add cellspace
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): mention
+ cellspace in q-struttab
+
+2006-06-02 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): give framed a
+ paragraph of its own in q-changebars
+
+2006-06-01 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): no longer mention
+ troff-to-latex in q-fmtconv
+
+ * dirctan.tex: add moderncv
+ chappg,mathdots,shade from filectan; correct pst-pdf; delete tr2tex,
+ troff-to-latex
+
+ * faqbody.tex (subsection{Alternative document classes}): refine the
+ statement about europecv, in q-cv
+ (section{TeX Systems}): redo note on y&y in q-commercial
+ (subsection{Alternative document classes}): mention moderncv in q-cv
+
+2006-05-30 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): simplify q-xetex
+ and mention xetex for linux
+ (section{Current TeX-related projects}): remove q-pdftex
+
+ * faq.sty: another iteration of ctanrefs: sanitising isn't right, since
+ we often have real commands in there, so use \scantokens -- which
+ means we need always to use an e-tex
+
+ * faqbody.tex (subsection{Document structure}): "simple minded" example
+ now no longer uses 2.09 fonts in q-secthead
+
+2006-05-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): add qualifier to actions of
+ distributors in q-triptrap
+
+ * dirctan.tex: add a2ping, sam2p
+
+ * faqbody.tex (section{Graphics}): tidy q-dvipsgraphics, add
+ sam2p/a2ping as alternatives for bitmaps
+
+2006-05-27 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Fonts}): new q-fonts-pln
+
+ * faq.sty: \@onelevel@sanitize \item args in ctanrefs env
+
+ * dirctan.tex: add ec-plain, font_selection, fontch, plnfss and ofs
+
+ * faqbody.tex (section{TeX Systems}): stupid logo macros in xemtex
+ description
+
+2006-05-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add labelcas
+
+ * faqbody.tex (subsection{Alternative document classes}): get q-poster
+ from add-general
+ (subsection{Why shouldn't I?}): get q-newfont from add-general
+ (subsection{LaTeX macro programming}): mention labelcas package in
+ q-labundef
+
+ * add-general.tex (subsection{Alternative document classes}): mention
+ multicol for "unadorned" a0poster-posters in q-poster
+
+ * faqbody.tex: today's date
+ (section{Bits and pieces of (La)TeX}): tidy up (and extend) q-ecfonts
+
+2006-05-21 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Acquiring the Software}): mention bytopic.html in q-findfiles
+
+2006-05-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Alternative document classes}): q-poster
+
+ * dirctan.tex: add sciposter, a0poster, flowfram
+
+2006-05-10 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Documentation and Help}): add chris harrison's book to
+ q-man-latex
+
+2006-05-08 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Current TeX-related projects}): add \href to berlios site, and
+ make link to CTAN rather than old site
+
+2006-05-04 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): elide all reference to
+ "quote site index" from q-findfiles
+
+2006-04-24 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (subsection{LaTeX macro programming}): correct recipe given in
+ Q-seccntfmt
+ (section{Installing (La)TeX files}): correct link to map update stuff
+ in miktex in q-instt1font and q-uselmfonts
+
+2006-04-23 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): yet another tidying of \cmdinvoke
+
+2006-04-15 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): mention tex-ptr-faq in
+ q-wherefaq
+ (section{You're still stuck?}): correct bnb's address in q-bug
+
+2006-04-10 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): annotation at end of
+ q-noline to mention other instances that could need covering
+
+2006-04-06 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): mention bernard
+ gaulle's faqs in q-wherefaq; emphasise that the fr.c.t.t one is no
+ longer in the land of the living [check!]
+
+2006-04-04 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): new q-matchbrak
+
+2006-04-03 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Documentation and Help}): new q-doc-wiki from add-general
+ (section{Documentation and Help}): link q-doc-wiki in q-tutorials*
+ (section{The Background}): new q-whatpdftex from add-general
+ (throughout): refs to q-pdftex -> q-whatpdftex
+
+2006-03-30 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+
+ * sanitize-beta.pl: couple of changes to introduce quoteverbatim
+
+ * faq.sty: add quoteverbatim environment, for verbatim output of
+ verbatim environments (used by new q-verbwithin, of course)
+
+ * examples/verbwithin.tex: new file
+
+ * faqbody.tex (subsection{Common errors}): extend description of
+ failures of verbatim environment, in q-verbwithin
+
+2006-03-29 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): new address for pstricks site in
+ q-drawing and q-labelfig
+
+ * dirctan.tex: remove ps4pdf, add pst-pdf
+
+ * faqbody.tex: today's date
+ (section{Graphics}): ps4pdf->pst-pdf in q-pdftexgraphics, new address
+ for hv's web stuff
+
+2006-03-27 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * locations.mk: add HTMLDIR, HTMDIR_GAMMA and GAMMADIR
+
+ * Makefile: remove inst-html target, add inst-gamma
+
+ * sanitize-beta.pl (sanitize_line): translate both double and single
+ quotes to entities
+ (sanitize_line): make \end{quote} issue a <p> for the benefit of the
+ css mechanisms in -gamma
+
+ * texfaq2file: use sanitize-beta
+
+ * add-general.tex (subsection{The Background}): iterate q-whatpdftex
+
+2006-03-21 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): braces around
+ \multirow *s (distinction without a difference...)
+
+2006-03-17 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Documentation and Help}): update details for wheildon in
+ q-typebooks
+
+2006-03-09 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (subsection{Creating bibliographies}): minor rewording of q-bibinline
+
+2006-03-08 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): deal with dviversion and pdfversion
+ (sanitize_line): deal with --- => &mdash; -- => &ndash;
+
+ * faqbody.tex: today's date on first line
+ (section{Documentation and Help}): mention visualFAQ in q-wherefaq
+
+ * filectan.tex: add visualFAQ
+
+ * faqbody.tex (section{The Background}): yet another minuscule
+ iteration of q-texpronounce
+
+2006-03-02 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): mention .pool, .fmt,
+ .base and .mem locations, tidy text a bit, in q-wherefiles
+
+2006-03-01 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): typo in q-changebars
+ (section{Creating citations}): tidy up q-bibinline a bit more
+
+2006-02-28 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{DVI Drivers and Previewers}): cut q-dvips down
+ to its bare bones (whole section needs a going-over)
+ (subsection{Hyphenation}): correct typo in q-hyphexcept
+
+2006-02-26 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Creating citations}): sort out *my*
+ understanding of footbib, in q-bibinline
+
+2006-02-25 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): mention urs oswald's
+ things in q-mfptutorials
+
+2006-02-24 Robin Fairbairns <rf10@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro programming}): mention the
+ koma-script facilities in q-oddpage
+
+2006-02-24 Robin Fairbairns <rf10@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (subsection{Common errors}): "typeset" page number rather than
+ "set" page number in q-wrongpn
+ (subsection{Creating bibliographies}): remove snide comment about
+ tex2bib documentation -- it's standard now
+
+2006-02-22 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * README: try to avoid the contradictions; may need to take poli's
+ advice more nearly wholesale...
+
+ * faqbody.tex: today's date
+ (section{Graphics}): redo ref to epslatex in q-impgraph
+
+ * filectan.tex: ref epslatex -> epslatex_pdf
+
+ * faqbody.tex (section{Documentation and Help}): mention zoonekynd's
+ series in q-tutbitslatex, and reorganise references to epslatex (given
+ we're supposed to have source rsn)
+
+2006-02-20 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Graphics}): mention psfragx in q-labelfig
+ (section{Bits and pieces of (La)TeX}): mention "eps" as an abbr,
+ in q-eps (seems it's never previously been used!)
+
+2006-02-17 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{You're still stuck?}): improve layout of q-noans, tidy
+ text a bit
+
+ * filectan.tex: add xampl-bib
+
+ * add-general.tex (subsection{Creating bibliographies}): new q-whatbst
+
+ * faqbody.tex (section{Graphics}): mention tikz in q-drawing
+
+2006-02-14 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (subsection{Adobe Type~1 fonts}): minor typo in q-usepsfont
+ (subsection{Common errors}): breakurl patches \url by default in
+ q-breaklinks
+ (section{Introduction}): add vilar camara neto to list
+
+2006-02-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today, note more input from ulrike f
+ (subsection{LaTeX macro tools and techniques}): extend \DefaultOpt
+ example in q-oarglikesect
+
+2006-02-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date, note chris walker's further contribution
+ (subsection{Mathematics}): add \operatorname to q-newfunction
+
+ * dirctan.tex: add ite
+
+ * faqbody.tex (section{Graphics}): correct pstricks homepage link,
+ and add reference to ite in q-labelfig (Chris Walker)
+
+2006-02-06 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Getting things to fit}): re-describe mathspic
+ to tally with current reality
+
+ * dirctan.tex: correct paths of mathspic, bdfchess
+
+ * filectan.tex: correct tex2bib paths (2 off)
+
+2006-02-06 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Documentation and help}): new q-doc-wiki
+
+ * faqbody.tex (subsection{Lists}): mention multenum in q-complist
+
+ * dirctan.tex: add multenum
+
+2006-01-29 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): correct url (and name)
+ for the note on ptex in q-tutbitslatex
+
+2006-01-23 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): gosh -- a mention of
+ quote site index, still...removed from q-findfiles
+
+2006-01-10 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Alternative document classes}): hack around
+ at the text about includex, and add newclude
+
+2006-01-05 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add rotfloat
+
+ * faqbody.tex: today's date
+ (subsection{Page layout}): mention rotfloat in q-rotating
+
+2005-12-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): mention verbatim environment
+ in the intro to q-verbwithin
+
+2005-12-24 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Background}): new q-whatpdftex (just
+ a start, so far)
+
+ * faqbody.tex (section{Graphics}): change title of "making \mp output
+ display..."
+
+2005-12-23 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date, v3.15b
+
+2005-12-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): remove rogue character on keywords
+ line
+
+ * faqbody.tex (subsection{Page layout}): restore lost text to
+ q-parallel (from RCS file :-})
+
+2005-12-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * filectan.tex: add ttb-pdf
+
+ * faqbody.tex (section{Documentation and Help}): add ttb to q-bibtexing
+
+2005-12-05 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * filectan.tex: add bidstobibtex
+
+ * faqbody.tex (subsection{Creating bibliographies}): make ref to
+ bids.to.bibtex in q-buildbib
+
+2005-11-30 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): new url for andy
+ roberts' latex page
+
+2005-11-29 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): remove code for \symbol
+
+ * faqbody.tex (section{Current TeX-related projects}): correct links in
+ q-latex3
+ (section{TeX Systems}): remove fptex, add xemtex
+ (section{Acquiring the Software}): replace fptex with protext in q-cd
+ (throughout): remove all remaining fptex options
+ (subsection{"Generic" macros and techniques}): don't use \symbol in
+ q-activechars
+ (subsection{Common errors}): do away with \symbol for underscore in
+ q-verbwithin (also rename \bs to \us for underscore, in the example)
+
+*** RELEASE 3.15 ***
+
+ * sanitize.pl,sanitize-beta.pl: attempts to solve the $symbolchar
+ lunacy (failed)
+
+ * faqbody.tex: 3.15a, today's date (already: at 10am!)
+ (section{Symbols, etc.}): \_ for underscores in q-underscore
+ (section{Current TeX-related projects}): correct urls in q-latex3
+
+ * texfaq2html,texfaq2html-beta,texfaq2file: correct *-list
+
+ * sanitize.pl (sanitize_line): add changes from -beta
+
+2005-11-28 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add mactex
+
+ * faqbody.tex (subsection{Creating citations}): new q-formbiblabel from
+ add-general
+ (subsection{Tables, figures and diagrams}): new q-varwidcol from
+ add-general
+ (header): v3.15, today
+ (section{Documentation and Help}): suppress link to mimi's documentation
+ at fsu -- they've removed it already, the fools
+ (section{Documentation and Help}): add ref to memoir manual in
+ q-typo-style
+ (section{TeX Systems}): mention mactex on ctan
+
+2005-11-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * texfaq2file,texfaq2html,texfaq2html-beta,texfaq2html-gamma: add
+ maillists* to translation list
+
+ * faqbody.tex (section{Documentation and Help}): new q-maillists* from
+ the rest of the old q-maillists (leaving a few bits out, admittedly)
+
+2005-11-26 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): build q-gethelp from
+ the old q-maillists
+
+2005-11-25 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{The joy of TeX errors}): reword (not change) advice in
+ q-errmissitem
+ (subsection{Mathematics}): new q-brkinline from add-general
+ (section{Hypertext and PDF}): new q-srchpdf from add-general
+
+ * add-general.tex (subsection{Why shouldn't I?}): change recommendation
+ to fix-cm in q-newfont, but retain mention of type1cm/ec for old latex
+ dists
+
+ * filectan.tex: add fix-cm (path to file)
+
+2005-11-24 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro programming}): editorial work on
+ q-seccntfmt and q-labundef
+
+ * sanitize-beta.pl (sanitize_line): sort out order of \cmdinvoke*
+ patterns
+
+2005-11-22 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro programming}): emphasise internal
+ commands in q-seccntfmt
+ (subsection{LaTeX macro tools and techniques}): reword to avoid blame
+ on the companion, and to use a tlc2 example in q-atsigns
+
+ * filectan.tex: get abstract.bst from biblio/bibtex/utils/bibtools
+ rather than contrib
+
+2005-11-21 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: point lucida at new metrics, add lucida-psnfss
+
+ * faqbody.tex (subsection{Adobe Type~1 fonts}): reinstate lucida
+ bright/math and add link to karl's interim web page
+
+2005-11-21 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Tables, figures and diagrams}): iteration
+ of q-varwidcol
+ (subsection{Hypertext and PDF}): iteration of q-srchpdf
+
+ * faqbody.tex (section{Current TeX-related projects}): tinkering with
+ q-aleph (needs rewrite to eliminate ref to q-omega, which is destined
+ to go some time soon
+
+ * add-general.tex (subsection{Why shouldn't I?}): change link for
+ type1cm (shouldn't this be fix-cm?)
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): new
+ answer q-ltxhash from add-general
+ (subsection{LaTeX macro programming}): was (confusingly) described as
+ techniques, too
+ (section{The joy of TeX errors}): new q-errparnum and q-fllost from
+ add-general
+ (section{Bits and pieces of (La)TeX}): move q-hyphen up above q-dtx
+ (section{Bits and pieces of (La)TeX}): new q-clsvpkg from add-general
+
+2005-11-21 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Tables, figures and diagrams}): new
+ q-varwidcol
+
+2005-11-20 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): mention alternative
+ locations for .map files following new tds, bit of editorial work
+ (section{Documentation and Help}): reinstate link to bausum's stuff in
+ q-ref-doc
+
+2005-11-18 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: axodraw is a directory now
+
+ * filectan.tex: remove axodraw, correct finplain
+
+ * faqbody.tex (subsection{Common misunderstandings}): correct path for
+ textcase in q-casechange
+ (subsection{Tables, figures and diagrams}): correct path for tabulary
+ in q-tabcellalign and q-fixwidtab
+
+ * dirctan.tex: add tabulary,textcase
+
+ * faqbody.tex (section{The Background}): add q-etex from add-general,
+ and edit it a bit
+ (throughout): remove references to q-nts, in favour of q-etex
+ (section{Current TeX-related projects}): dump q-nts
+ (section{Current TeX-related projects}): rewrite antecedent text in
+ q-aleph
+
+ * add-general.tex (subsection{Graphics}): ref to q-tutorial ->
+ q-tutbitslatex in q-repeatgrf
+
+ * Makefile (PATCH): remove add-tutorial
+
+ * dirctan.tex: add cmap
+
+ * add-general.tex (subsection{Hypertext and PDF}): add q-srchpdf
+
+2005-11-17 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * texfaq2html-gamma,texfaq2html-beta,texfaq2html,texfaq2file: add
+ q-tutorials* to %label_to_file initialisation
+
+ * faqbody.tex: v3.14c, today's date
+ (section{Documentation and Help}): add reference to syropoulos' book
+ (section{Documentation and Help}): replace q-tutorials with
+ q-tutorials* and friends (fix up refs to q-tutorials from elsewhere)
+
+ * add-tutorial.tex (subsection{Documentation and help}): final
+ rearrangement and tidy; add the guide to ptex posted yesterday
+
+ * faq.sty: pdfstartview=FitH since FitBH seems no longer to work with
+ AR7 or the latest pdftex or something
+
+2005-11-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Introduction}): add steve peter to contributors
+ (throughout): bunch of corrections from steve peter
+
+2005-11-14 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faq.sty: load textcomp
+
+ * dirctan.tex: add mutex
+
+2005-11-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * README: remove my name and email address
+
+ * newfaq(-patch).tex,letterfaq.tex: null \author
+
+ * texfaq2html(-beta),texfaq2file: remove claim that i'm involved with
+ maintenance
+
+ * faqbody.tex (throughout): replace my name with "another idiot"
+
+2005-11-08 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-tutorial.tex (subsection{Documentation and help}): yet more
+ rearrangement
+
+2005-11-07 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.14b, today
+
+2005-11-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * filectan.tex: bbl2html and notex.bst moved
+
+ * add-tutorial.tex (subsection{Documentation and help}): more
+ rearrangement
+
+2005-11-05 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Hyphenation}): correct def of \hyph in
+ q-nohyph, do a bunch of quote-env stuff in whole subsection; also,
+ more enthusiastic wrapping of the quote about catalan
+
+2005-10-26 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Mathematics}): mention bracing to
+ suppress breaks in maths
+
+2005-10-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Mathematics}): suggest \textstyle/
+ \displaystyle alternative for q-limits
+
+2005-10-15 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): extend q-breaklinks to cover
+ the toc/lof/lot... case, and to outline circumstances where there's no
+ help to be had
+
+2005-10-10 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: sort regex in opening of ?section= code
+
+2005-10-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): add the offered text to
+ q-acrobat; this question is a mess and needs rearranging (probably
+ splitting into two)
+
+ * dirctan.tex: remove aix3.2, move miktexppc, miktex-AXP
+
+ * texfaq2html-gamma: start work on index/fullindex switching
+
+ * texfaq2file: secondary index now full-index.html
+
+ * add-general.tex (subsection{Bits and pieces of (La)TeX}): new q-etex
+
+ * faqbody.tex: v3.14a.3, today
+ (section{TeX Systems}): mention texlive mac distro
+
+2005-10-03 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * texfaq2file: more of same
+
+ * texfaq2html-gamma: yet more twiddling
+
+ * filectan.tex: epsf.tex moved
+
+ * sanitize.pl,sanitize-beta.pl (sanitize_line): add \nolinkURL
+
+2005-09-26 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: restructure q_label_list
+
+ * faqbody.tex (section{Current TeX-related projects}): correct web addr
+ in q-extex
+
+ * texfaq2file: iterate -w actions
+
+2005-09-25 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * filectan.tex: patch and shade have moved
+
+ * texfaq2html-gamma: label argument may be a list
+
+2005-09-23 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * filectan.tex: letterspacing,backgrnd moved
+
+05-09-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): minor edits in q-type1T1
+ (section{The Background}): revised q-eplain from Oleg Katsitadze
+ (<heading>): today's date, add katsitadze to credits
+
+ * dirctan.tex: remove icelandic, which we weren't using
+
+ * filectan.tex: mathdots has moved
+
+2005-09-16 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add luximono, microtype; move tip pointer
+
+ * faqbody.tex: today's date
+ (subsection{Document structure}): new first para for q-fancyhdr
+ (subsection{Common misunderstandings}): reword description of
+ \emergencystretch and discuss microtype in q-overfull
+ (subsection{Odds and ends}): add luximono to q-bold-extras
+
+2005-09-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add powerdot
+
+ * faqbody.tex (subsection{Alternative document classes}): mention
+ powerdot in q-slidecls
+
+2005-09-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faq.sty: add \nolinkURL definitions
+
+ * add-general.tex (subsection{Graphics}): a proto-q-dvipdfmgraphics
+ redefinition (hrrumph)
+
+2005-09-03 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.14a.2
+ (section{Introduction}): mention that the texlive version is no better
+ than the "current on the web"
+
+ [interim web release 3.14a.1]
+
+2005-09-03 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{You're still stuck?}): faq-devel@tex.ac.uk in q-noans
+
+2005-08-28 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): all remaining miktex references via \miktex
+
+2005-08-10 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * filectan.tex: correct pointers for the two epslatex entries
+
+ * faqbody.tex (section{Installing (La)TeX files}): text about mpm in
+ q-miktexinst (and convert to \miktex in that question, where
+ appropriate)
+
+2005-08-07 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): tidy
+ \htmlignore stuff in q-textflow
+
+2005-08-06 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add talk
+
+ * faqbody.tex (subsection{Alternative document classes}): add talk to
+ q-slidecls
+
+2005-08-05 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Bits and pieces of (La)TeX}): new answer
+ q-clsvpkg on the distinction between classes and packages
+
+ * faqbody.tex (section{Bits and pieces of (La)TeX}): change of section
+ name
+
+2005-08-02 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): try to avoid the acronym
+ ASCII except where necessary in q-toascii
+
+2005-08-01 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): minor editorial in
+ q-conditional
+
+2005-07-31 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): new q-fllost
+
+2005-07-20 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{You're still stuck?}): warn about non-latex bug
+ reports in q-latexbug and q-bug
+ (intro) v3.14a.1, today
+
+2005-07-19 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * README: faq->faq-devel in email addrs, except munged one for me in
+ sig line at bottom
+
+ * faqbody.tex (subsection{Odds and ends}): remove "not doing away with
+ bumpy-road logos" comment, since i now have done so
+
+ * sanitize.pl,sanitize-beta.pl (sanitize_line): sigh -- \\textless...
+
+2005-07-19 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * sanitize.pl,sanitize-beta.pl (sanitize_line): yet another iteration
+ of the < > translation fiasco
+
+2005-07-15 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add quotchap
+
+ * faqbody.tex (subsection{Page layout}): add quotchap to q-epigraph and
+ rewrite intro to question somewhat.
+
+2005-07-10 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{You're still stuck?}): faq->faq-devel in
+ q-newans
+
+ * sanitize.pl (sanitize_line): as -beta (now it's been tested ;-)
+
+ * sanitize-beta.pl (sanitize_line): sort out translations of <> when
+ not converting
+
+2005-07-09 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * Makefile: remove inst-html target
+ (FAQ-html.tar.gz): make depend on html/index.html (does this do it?)
+
+2005-07-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.14a, today
+ (subsection{Document management}): boondoggle in q-rcs html output
+
+ * faqbody.tex: v3.14, today
+ New version installed
+
+ * faqbody.tex (section{Introduction}): mention static .zip files in
+ html-only bit about retrieving directories
+ (section{Acquiring the Software}): remove exact location names for
+ individual ctans, in q-archives
+ (section{Acquiring the Software}): rewrite the stuff about searching in
+ q-findfiles
+
+2005-07-05 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): add fancyhdr commands (to do
+ empty plain style) to q-ps@empty
+
+ * texfaq2html-beta,texfaq2file: as texfaq2html
+
+ * texfaq2html: switch .tar.gz and .zip in retrieval
+
+2005-07-04 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): add q-wrongpn and
+ q-breaklinks from add-general
+ (preamble) v3.13b.5, today
+ (subsection{Footnotes}): rewrite q-ftncapt, aiming for clarity (hah!)
+ (section{Acquiring the Software}): remove mention of ftpmail and finger
+ of ctan user
+
+ * dirctan.tex: add breakurl
+
+ * add-general.tex (subsection{Why does it do that?}): mention breakurl
+ in q-breaklinks -- looks as if this makes the answer usable...
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): correct
+ blatant error in q-tabcellalign (spotted by ulrike fischer)
+ (section{Introduction}): hack the note about the pdf version slightly,
+ add ulrike fischer to list of contributors
+
+2005-07-01 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add ref to
+ http://www.latex-einfuehrung.de/ in q-minxampl
+
+2005-06-29 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): correct advice on
+ over-long urls and url.sty in q-citeurl
+
+2005-06-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.13b.4, tonight
+
+ * faqbody.tex (section{Introduction}): add chris walker
+ (section{Bits and pieces of TeX}): \Qref* in q-dtx
+ (subsection{Tables of contents and indexes}): \Qref* in q-tocloft
+
+ * dirctan.tex: add revtex(!)
+
+ * faqbody.tex (subsection{Creating citations}): note that mcite doesn't
+ play with revtex, in q-mcite
+
+2005-06-09 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): mention use
+ of pict2e in q-slashbox
+
+2005-06-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{You're still stuck?}): slight editorial in q-bug
+
+ * add-tutorial.tex: bunch of work, throughout, which seems not to have
+ been recorded or even copied to backed-up space before now...
+
+ * faqbody.tex (section{Installing (La)TeX files}): mention .map and
+ .enc trees, and alternative inputs such as .sto, .clo and .cfg in
+ q-wherefiles
+
+ * filectan.tex: add nextpage
+
+ * faqbody.tex (subsection{Document structure}): mention nextpage
+ package in q-reallyblank
+
+2005-06-02 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): mention pspicture as a superseded
+ package in q-drawing
+ (section{Documentation and Help}): slight iteration of q-pkgdoc
+
+2005-05-23 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Why shouldn't I?}): mention vertical spacing
+ inconsistencies in q-dolldoll
+
+2005-05-19 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): add philip
+ ratcliffe's fake-accent solution to q-bibtranscinit
+ (preamble): v3.13b.3 (ok, i don't know what i'm doing here...), today
+ (section{Introduction}): add philip ratcliffe to thanks list
+
+ * add-general.tex (subsection{Why does it do that?}): add q-wrongpn
+
+ * faqbody.tex (subsection{LaTeX macro tools and techniques}): renamed
+ subsection, moved q-oarglikesect and q-twooptarg from "latex macros"
+ (subsection{LaTeX macro tools and techniques}): change name to "more
+ than one opt arg"
+ (subsection{LaTeX macro tools and techniques}): new q-cmdstar, from
+ add-general
+
+2005-05-18 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add q-minxampl
+ from add-tutorial
+ (section{Documentation and Help}): ref to q-minxampl from q-askquestion
+ (section{You're still stuck?}): ref to q-minxampl from q-latexbug
+
+2005-05-17 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macro tools}): add q-plninltx (from
+ add-general), and split this of from the more simple stuff (now
+ subsection "latex macro techniques"); other ones in here are
+ q-atsigns, q-protect, q-edef, q-ltxcmds and q-ltxabbrv
+
+ * faq.sty: remove spurious guff at start of ctanrefs env (was solemnly
+ forcing horizontal mode, thus confusing \addvspace at start of list)
+
+ * add-general.tex (subsection{Creating citations}): add q-formbiblabel
+
+2005-04-29 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add splitbib
+
+ * faqbody.tex (section{References from articles}): mention splitbib in
+ q-multbib
+
+2005-04-28 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add placeins as a directory
+
+ * filectan.tex: change beginlatex to its latest incarnation
+ remove placeins
+
+2005-04-26 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faq.sty: make robust a few commands that get to appear in tocs
+
+2005-04-22 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * texfaq2file: put correct cross question links if -w
+
+ * texfaq2html-gamma: miscellaneous tidies from debugging session
+
+2005-04-19 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * filectan.tex: add clsguide
+
+ * dirctan.tex: add makedtx
+
+ * faqbody.tex (section{Bits and pieces of TeX}): mention makedtx in
+ q-dtx; list clsguide.pdf in links
+
+2005-04-17 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Adobe Type1 ("PS") fonts}): add mathdesign to
+ the list in q-psfchoice
+
+2005-04-16 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): correct
+ \csx{listfiles} to \Package{snapshot} (!) as data collection mech for
+ bundledoc, in q-filesused
+
+2005-04-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common misunderstandings}): minor editorial
+ to q-xspace
+
+2005-04-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): remove some text that's
+ crept in unawares to q-tmupfl
+
+2005-04-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): new q-errparnum
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): a bit of
+ desultory macro-usage editing
+
+ * add-general.tex (subsection{LaTeX macro programming}): new q-ltxhash
+
+2005-03-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-tutorial.tex (subsection{Documentation and help}): (changed name
+ for the subsection) new answer q-minxampl
+
+ * Makefile (PATCH): add add-tutorial (can't we automate this?)
+
+2005-03-26 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): new q-errmissitem from
+ add-general
+ (section{Documentation and Help}): editorials on q-askquestion
+
+ * add-general.tex (subsection{LaTeX macro programming}): minor
+ editorial to q-plninltx
+
+2005-03-25 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: correct path to obsolete/support/undump; point
+ umlaute at the latex package (rather than support/); remove umlaut
+
+2005-03-24 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why shouldn't I?}): new q-newfont
+ (subsection{LaTeX macro programming}): use \font rather than \newfont
+ in examples in q-plninltx
+
+2005-03-23 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro programming}): lots more
+ fiddling with q-plninltx, including extending the font stuff
+
+2005-03-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro programming}): add example of
+ font encoding confusion arising from \newfont, in q-plninltx
+ (subsection{LaTeX macro programming}): have narrow/wideversion of one
+ example in q-cmdstar
+
+2005-03-21 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): mention javier's
+ checkend package in q-endingroup
+
+2005-03-01 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): editorial on
+ q-errmissitem, plus mention of \mbox, \makebox, \framebox
+
+2005-02-28 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Mathematics}): new q-brkinline
+
+ * sanitize-beta.pl (sanitize_line): convert \< (never used) to
+ \textless, \> (ditto) to \textgreater ... so now i can use the beasts
+
+ * add-general.tex (subsection{The Joy of TeX errors}): mention \section
+ as another case of misbehaviour in q-errmissitem
+
+2005-02-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faq.sty: rewrite \href (non-hyper version) so as to get quoting
+ actually right, and not to lose trailing spaces...
+
+ * faqbody.tex (subsection{Typesetting specialities}): mention c2latex
+ in q-codelist (previously, the program was in ctanrefs only); also add
+ an actual recommendation for listings, but suggest the others may be
+ worth considering; add tgrind, sitting with lgrind
+ (section{Graphics}): rewrite item about mfpic, and add one about pgf,
+ in q-drawing
+
+2005-02-25 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): new
+ q-errmissitem
+
+2005-02-23 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-tutorial.tex: add a subsection heading (who cares there are 10?)
+
+ * faqbody.tex (subsection{Footnotes}): mention threeparttable in
+ q-ftncapt (suggestion by don arseneau)
+
+2005-02-17 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): reword etex
+ description in q-nts
+
+ * add-general.tex (subsection{LaTeX macro programming}): new q-cmdstar
+
+ * sanitize-beta.pl (sanitize_line): add \elatex and \miktex translation
+
+ * faq.sty: add \elatex and \miktex commands
+
+ * faqbody.tex (section{The joy of TeX errors}): elatex as a progname->
+ \elatex{} in q-endingroup
+
+2005-02-17 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): MiKTeX!!!
+
+2005-02-15 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{DVI Drivers and Previewers}): xdvi and xdvik are
+ no longer separate
+
+ * dirctan.tex: delete xet,xdvik,hp2xx311; correct addindex
+
+ * filectan.tex: correct pdftex, latexcount
+
+ * faqbody.tex: v3.13b.1, today
+
+ * filectan.tex: add vf-howto
+
+ * faqbody.tex (section{Bits and pieces of TeX}): mention virtual fonts
+ howto in q-virtualfonts
+
+2005-02-09 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faq.sty: minor twiddling with default font loading;
+
+ * faqbody.tex: v3.13b, today
+
+ * texfaq2file: generate labels that go to the modified file names
+ rather than to the raw label name, in .aux scan
+
+2005-02-04 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macros}): correct enumii->enumi in one
+ of the "recipes" in q-labelformat
+
+2005-02-03 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): \qref* for etex
+ and aleph in q-omega mention of aleph
+ (subsection{Typesetting specialities}): remove rogue line break in
+ q-upquote
+
+ * faqfont.cfg.ugm: new: for typesetting with urw garamond
+
+ * faq.sty: require lmodern regardless (for sans fonts)
+
+2005-01-21 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): correct details for
+ ctan-ann, and mention mail-archive.com in q-maillists
+ (section{TeX Systems}): mention tetex mailing list (not -announce or
+ -pretest...), plus RSS feed, in q-texsystems
+
+2005-01-16 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Support Packages for TeX}): make clear that
+ 4spell comes from a package that's now defunct
+
+2005-01-15 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add pseudocode
+
+ * faqbody.tex (subsection{Typesetting specialities}): mention
+ pseudocode package in q-algorithms
+
+2005-01-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * filectan.tex: single file ispell (is this supportable?)
+
+ * dirctan.tex: remove ispell
+
+2005-01-10 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add aspell
+
+ * faqbody.tex (section{Support Packages for TeX}): tidy up reference to
+ aspell in q-spell, given that it's now on ctan
+
+2005-01-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add svn, svninfo
+
+ * faqbody.tex (subsection{Document management}): add svn and svninfo to
+ q-rcs
+
+2005-01-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.13a.1, today
+ (section{TeX Systems}): update sciword bumf from mail from mabb
+ (section{Documentation and Help}): typo in q-mfptutorials
+ (subsection{Particular font families}): typos in both q-uselmfonts and
+ q-concrete
+ (section{TeX Systems}): add a link to the y&y mailing list page at the
+ end of q-commercial
+
+2005-01-04 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.13a
+ (subsection{Document management}): correction+more details of extract
+ package in q-conditional
+
+2005-01-04 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.13, today (release)
+
+2005-01-02 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Symbols, etc.}): add bbm and doublestroke, and
+ do various editorial changes (including pouring more derision on the
+ "lazy person's" macros)
+
+ * dirctan.tex: add bbm-macros, doublestroke
+
+2005-01-01 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Particular font families}): mention that lm
+ fonts are already in tetex 3.0, and may (at least) be added to miktex
+ automatically, also bring updmap stuff up to date for miktex
+ (section{Installing (La)TeX files}): same change in q-instt1font
+ (section{Installing (La)TeX files}): editorials in q-miktexinst
+ (section{Installing (La)TeX files}): mention non-standard things like
+ .cfg and .drv files in q-wherefiles
+
+ * sanitize.pl (sanitize_line): bring up-to-date with -beta
+
+ * sanitize-beta.pl (sanitize_line): add \href* pattern
+
+ * faq.sty: add * and quote detection to \href (non-hyper version; *
+ simply ignored \ifpdf)
+
+ * faqbody.tex (section{Documentation and Help}): make reference to the
+ rutgers typography guidelines in q-tutorials
+
+2004-12-30 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add extract
+
+ * faqbody.tex: v3.13rc2, today
+ (subsection{Document management}): mention extract.sty in q-conditional
+
+2004-12-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-hammond.tex (subsection{William Hammond's contributions}): more
+ work on q-sgml2tex* ... i'm bogging down here :-(
+
+ * faqbody.tex (subsection{LaTeX macros}): correct spelling of optparams
+ in q-twooptarg
+
+2004-12-26 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): replacement for
+ q-mathml from add-hammond (where it was q-mathml*)
+ (section{Current TeX-related projects}): move all the \URL entries to
+ body of q-textrace, and add link to fontforge
+ (subsection{Adobe Type 1 fonts}): remove mathtime, mathtime plus and
+ lucida; add mathtime pro
+ (section{TeX Systems}): correct details of personal tex inc from web
+
+2004-12-25 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-hammond.tex (subsection{William Hammond's contributions}):
+ mention inkscape in q-mathml*, as a free svg editor
+ (subsection{William Hammond's contributions}): general other editorials
+ throughout q-mathml*
+
+2004-12-24 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add wallpaper
+
+ * faqbody.tex (subsection{Page layout}): add wallpaper package to
+ q-watermark
+
+2004-12-22 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.13rc1, today
+
+ * dirctan.tex: add metatype1
+
+ * faqbody.tex (section{Current TeX-related projects}): provide
+ sourceforge link to autotrace and potrace, and talk up mftrace in
+ q-textrace; also add description of metatype1 and change title of
+ question to emphasise that it covers a bunch of projects; remove
+ references to actual fonts in the ctanrefs list
+ (section{Hypertext and PDF}): make reference to metatype1 via
+ q-textrace, in q-type1t1
+
+2004-12-20 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-tutorial.tex: new file: replacements for q-tutorials
+
+2004-12-19 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+ * add-hammond.tex (subsection{William Hammond's contributions}): yet
+ more editorials on q-sgml2tex*
+
+2004-12-17 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-hammond.tex (subsection{William Hammond's contributions}): edit-
+ orial work in both q-readml* and q-sgml2tex*
+
+ * faqbody.tex (subsection{Document management}): add xcomment with
+ example of use to q-conditional
+
+2004-12-16 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * 3.12a/faqbody.tex: v3.12a-p4, today
+ (subsection{Document management}): correct \includeversion ->
+ \includecomment in q-conditional (and install)
+
+ * faqbody.tex: v3.12a.9, today
+ (subsection{Document management}): correct \includeversion ->
+ \includecomment in q-conditional, and add an example
+
+2004-12-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it do that?}): couple of typos in
+ q-marginparside, spotted by vladimir volovich
+
+2004-12-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): typo in q-papersize...
+
+ * check-ctan-lists: distinguish linked files,
+
+ * filectan.tex: correct path for protext
+
+ * dirctan.tex: correct basix (yoyoy?)
+
+2004-12-02 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-hammond.tex (subsection{William Hammond's contributions}): editor
+ work on q-readml*
+
+2004-11-30 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-hammond.tex (subsection{William Hammond's contributions}): re-
+ write text around sgmls and stil in q-sgml2tex*
+
+ * dirctan.tex: add euler-latex
+
+ * faqbody.tex (subsection{Particular font families}): add mention of
+ euler package and eulervm to q-concrete
+
+2004-11-29 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * filectan.tex: add protext
+
+ * faqbody.tex (section{TeX Systems}): mention protext
+
+2004-11-26 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): mention william hammond
+ (section{DVI Drivers and Previewers}): slight mod suggested by author
+ of dvipng to q-dvi-bmp
+
+ * add-hammond.tex (subsection{William Hammond's contributions}): edit-
+ orial on q-mathml*, q-sgml2tex*
+
+2004-11-25 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * Makefile (newfaq-patch.dvi,.pdf): run find-add-files
+ (clean): remove additions.tex, too
+
+ * patchdates.tex: new; the patch levels that were mastered in
+ additions.tex; now pl4.12g, today
+
+ * find-add-files: perl jiffy to find what add-* files exist just now,
+ and to create a suitable additions.tex
+
+ * add-general.tex: remove hammond answers
+
+ * add-hammond.tex: new, hammond revised answers
+
+2004-11-23 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{William Hammond's contributions}): add
+ q-mathml*, q-sgml2tex* and q-readml*
+
+ * dirctan.tex: add gellmu and jadetex
+
+2004-11-23 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.12a.8, today
+ (subsection{Typesetting specialities}): add c2latex to q-codelist
+
+2004-11-22 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faq.sty: provide a definition for \textoslash
+
+ * sanitize-beta.pl (sanitize_line): \textoslash for \o (but why does
+ perl substitution of \o not work?)
+
+ * faqbody.tex (section{Introduction}): \textoslash for \o
+
+2004-11-20 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \o{}
+
+ * faqbody.tex (section{Current TeX-related projects}): ant now has
+ insertions, so suggest it's worth investigating as a system.
+ (section{Introduction}): add morten h
+
+2004-11-19 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): new q-ouparmd from
+ add-general
+
+ * add-general.tex (subsection{The Joy of TeX errors}): editorials on
+ q-ouparmd
+
+ * faqbody.tex (subsection{Page layout}): q-changemargin replaced by the
+ body of q-changemargin* from add-general
+
+ * add-general.tex (subsection{Page layout}): q-changemargin* editorials
+
+ * dirctan.tex: add algorithmicx
+
+ * faqbody.tex (subsection{Typesetting specialities}): add algorithmicx
+ to q-algorithms
+
+2004-11-12 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): mention parcolumns in
+ q-parallel, add examples
+
+2004-11-11 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Making things stay where you want them}): use
+ of infinite value for widow and club penalties in q-widow
+
+2004-11-10 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add reference to jim's
+ one-person system web page, under tutorials (this question needs re-
+ working, methinks...)
+
+2004-11-09 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): new
+ q-subverttoks from add-general
+ (subsection{Creating citations}): q-i18nbib from add-general
+ (subsection{Tables, figures and diagrams}): q-rulethk from add-general
+
+ * dirctan.tex: add bib2xhtml
+
+ * faqbody.tex (section{Hypertext and PDF}): correction for words about
+ plainpages=false, from dan luecking
+ (subsection{Manipulating whole bibliographies}): add bib2xhtml to
+ q-htmlbib
+
+ * texfaq2file: missing </ul> before subsections in normal mode
+
+2004-11-08 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): ec-type1->tt2001
+ in q-textrace
+
+2004-10-27 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * filectan.tex: correct context-tmf to current location
+
+ * faqbody.tex (section{Graphics}): correct pdftricks link in
+ q-pdftexgraphics
+
+04-10-26 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Odds and ends}): mention bold csc fonts in
+ knuth-style t1-encoded fonts to q-bold-extras
+ (section{Hypertext and PDF}): add tt2001 to q-type1t1
+
+ * dirctan.tex: remove fonts/ps-type1/ec, add fonts/ps-type1/tt2001
+
+ * faqbody.tex: v3.12a.7, today
+
+2004-10-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): provide morten's witty
+ example of the problems with \iffalse in q-conditional
+
+2004-10-17 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Hyphenation}): rejig q-newlang to mention the
+ use of texconfig to do the format rebuild in tetex
+
+2004-10-10 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): editorial on
+ q-extrabrace
+
+ * sanitize.pl (sanitize_line): as -beta
+
+ * sanitize-beta.pl (sanitize_line): add \cmdinvoke*{cmd}[opt]{mand} and
+ \cmdinvoke*{cmd}[opt]{mand1}{mand2}
+
+ * faqbody.tex (subsection{Mathematics}): add reference to
+ \shortintertext in q-mathstext, and show how to do short intertexts
+ using flalign
+
+ * dirctan.tex: add mh
+
+ * add-general.tex (subsection{Creating citations}): add norbib to
+ q-i18nbib
+
+2004-10-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add dk-bib
+
+ * add-general.tex (subsection{Creating citations}): add dk-bib to
+ q-i18nbib, and reorganise the list
+
+2004-10-07 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): excise european modern from
+ q-type1T1
+
+2004-10-06 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): purge references to y&y
+
+2004-10-05 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of TeX}): editorial,
+ particularly on q-virtualfonts
+
+2004-10-03 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): mention pstricks overlaying stuff in
+ q-labelfig
+
+ * add-general.tex (subsection{Why does it do that?}): new q-breaklinks
+
+2004-09-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Adobe Type 1 ("PS") fonts}): mention CH math
+
+2004-09-26 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.12a.6, today
+ (section{Current TeX-related projects}): minimum change to reflect
+ what's happened since john's omega bombshell, plus ref to aleph
+ (section{TeX Systems}): mention the miktex cd with miktex descr
+ (section{Acquiring the Software}): make q-cd talk about nothing but the
+ tex live distribution
+ (section{Current TeX-related projects}): describe etex as today's
+ thing, in the article on nts.
+
+2004-09-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Symbols, etc.}): mention fourier in q-numbersets
+
+2004-09-19 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): q-atvert problem
+ happens in maths mode too
+ (section{Adjusting the typesetting}): add ctanref for fancyhdr in
+ q-reallyblank, supply missing text about memoir
+
+2004-09-18 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * additions.tex: pl4.12f, today
+
+ * add-general.tex (subsection{Page layout}): q-changemargin* (revision
+ from donald)
+
+2004-09-17 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.12a.5, today
+ (subsection{Adobe Type 1 ("PS") fonts}): merry upheaval of q-psfchoice
+ (subsection{LaTeX macros}): mention optparams in q-twooptarg
+
+2004-09-16 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Alternative document classes}): ha-prosper is
+ a package, not a class
+
+2004-09-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): mention eplain online docs and
+ mailing list
+
+2004-09-14 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add fourier and utopia
+ corrected swebib and elsevier entries
+ added bigfoot (for suffix.sty)
+
+ * faqbody.tex: v3.12a.4, today
+ (subsection{Typesetting specialities}): add concrete examples of using
+ listings package
+ (subsection{Adobe Type1 ("PS") fonts}): add blurb about fourier
+
+2004-09-13 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): standardise on \ProgName{Perl} (note cap)
+ and \ProgName{Python} (all of one change)
+
+ * dirctan.tex: add latexdiff, remove language, and resort in that area
+
+ * faqbody.tex (subsection{Document management}): mention latexdiff in
+ q-changebar
+
+2004-09-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating citations}): provide criterion for
+ choosing jurabib instead of footbib in q-bibinline
+
+2004-09-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Labels and references}): tidy up description
+ of byname in q-nameref
+
+2004-09-09 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): bring in parallel with sanitize.pl
+
+ * faqbody.tex (subsection{Odds and ends}): \bsbs (twice) in q-varwidth
+ (subsection{Common errors}): \bsbs -> \texttt{\bsbs } in q-noline
+ (section{The joy of TeX errors}): \bsbs in q-altabcr
+ (subsection{Tables, figures and diagrams}): \bsbs in q-tabcellalign
+
+ * sanitize.pl (sanitize_line): make \bsbs gobble a single following
+ space
+
+2004-09-07 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating citations}): putative completion
+ of q-i18nbib
+
+ * faqbody.tex (section{The Background}): mention the wiki in q-context
+
+2004-09-06 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating citations}): bit more on
+ q-i18nbib -- probably more language contributions to be found, but
+ there's enough here for the time being
+
+ * dirctan.tex: add spain and bib-fr
+
+ * faqbody.tex (subsection{Creating bibliographies}): rewrite the
+ description of the custom-bib mechanism in q-custbib
+
+2004-09-04 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating citations}): start on q-i18nbib
+
+ * filectan.tex: add finplain.bst
+
+ * dirctan.tex: add bibgerm, swebib
+
+2004-08-30 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): new (tug) list address for
+ q-mp, and add reference to tug mp page
+
+ * add-general.tex (subsection{The Joy of TeX errors}): new q-ouparmd
+
+2004-08-29 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add ebib
+ multibbl, texpower now both in (regular) latex/contrib
+
+ * faqbody.tex (subsection{Creating bibliographies}): add ref to ebib in
+ q-buildbib
+
+2004-08-28 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Tables, figures and diagrams}): new
+ q-rulethk
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): editorial,
+ q-destable, and add reference to memoir implementing booktabs commands
+
+2004-08-25 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Mathematics}): add karl berry's suggestion to
+ q-mathsize
+ (subsection{Tables of contents and indexes}): editorial on q-tocbibind
+
+2004-08-24 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Floating tables, figures, etc.}): correct
+ startling error in q-vertposfp (courtesy of donald -- i can't work out
+ how i came to write the original rubbish in the first place)
+ (section{TeX Systems}): correct address for truetex
+ (subsection{Adobe Type 1 ("PS") fonts}): mention truetex using type 1
+ fonts under xp
+
+2004-08-23 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * sanitize[-beta].pl (sanitize_line): provide \mailto{}
+
+2004-08-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Adobe Type 1 ("PS") fonts}): editorial on
+ q-pspreview
+ (subsection{Adobe Type 1 ("PS") fonts}): editorial on q-psfchoice (more
+ remains to be done)
+ (subsection{Adobe Type 1 ("PS") fonts}): editorial on q-concrete
+ (subsection{Adobe Type 1 ("PS") fonts}): editorial on q-uselmodern
+
+2004-08-21 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Metafont fonts}): editorial on q-getbitmap
+ (subsection{Adobe Type 1 ("PS") fonts}): editorial on q-usepsfont
+
+2004-08-20 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.12a.3, today
+ (section{TeX Systems}): forward ref to q-buildbib from q-editors
+ (section{Installing (La)TeX files}): refer to "specific font families"
+ in q-instfont
+ (throughout): \FontName|...| -> \FontName{...}
+
+2004-08-20 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): add mention of
+ JabRef
+ (section{The Background}): editorial on q-latexe
+ (section{The Background}): editorial on q-context
+ (section{The Background}): editorial on q-amspkg
+ (section{Acquiring the Software}): editorial (big time) on q-uploads
+
+2004-08-19 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): carry forward changes from non-beta
+
+ * sanitize.pl (sanitize_line): correct \Newsgroup{}
+
+2004-08-18 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * sanitize.pl (sanitize_line): make all the variants of \cmdinvoke use
+ the <code>\\</code><code> trick we already have for \csx, to deal with
+ \@ problem
+
+2004-08-02 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * filectan.tex: add ziffer
+
+ * faqbody.tex (subsection{Typesetting specialities}): mend typo in q-
+ dec_comma, and add reference to ziffer
+
+2004-08-01 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): first stab at updating
+ package doc question
+
+ * add-general.tex (subsection{"Generic" macros and techniques}): new
+ answer on \[ex]def -- going to need a lot more thought
+
+ * faqbody.tex (section{Documentation and Help}): add link to edith
+ hodgen's magnum opus
+
+2004-07-31 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Mathematics}): superseded theorem.sty with
+ amsthm.sty in the quaintly named "roman theorems" answer
+
+2004-07-30 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.12a.2, today
+
+ * filectan.tex: add voss-mathmode (again?!)
+
+2004-07-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add texniccenter
+
+ * faqbody.tex (section{TeX Systems}): add texniccenter to q-editors
+
+2004-07-24 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * filectan.tex: add voss-mathmode
+
+ * faqbody.tex (throughout): change \Newsgroup|...| -> {...}
+ (section{Documentation and Help}): refer to ctan version of herbert
+ voss' mathmode thing
+
+ * sanitize.pl,sanitize-beta.pl (sanitize_line): add closing </code> in
+ \marg (!), and allow \Newsgroup{...}
+
+2004-07-23 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.12a.1, today
+
+ * 3.12a/faqbody.tex: pl2, today
+ (section{The Background}): 3.141592
+ (various): remaining ctanrefs to enumitem
+
+ * faqbody.tex (subsection{Lists}): document \begin{enumerate}[resume]
+ from enumitem (and tidy up remaining ctanrefs to enumitem)
+
+2004-07-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * Makefile.CTAN: remove all mention of -cm targets
+
+2004-07-22 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * Makefile: remove -cm targets from "all"
+
+ * faq.sty: use T1 encoding, times & luximono fonts, by default
+
+2004-07-21 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * 3.12a/faqbody.tex: change version to -p1, today's date (for web
+ release with enumitem directory correct)
+
+2004-07-20 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): correct tex version no, and
+ add link to copy of knuth's paper in maps archive
+
+2004-07-19 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add andy roberts'
+ stuff
+
+2004-07-19 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: move fonts/ps-type1/lm up one
+
+ * faqbody.tex (subsection{Lists}): change location of enumitem
+
+ * dirctan.tex: add enumitem
+
+2004-07-15 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.12a
+ (subsection{"Generic" macros and techniques}): editorial in q-patch
+
+*** RELEASE 3.12 ***
+
+2004-07-15 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Mathematics}): sigh -- narrowversion stuff in
+ q-mathstext
+
+ * sanitize.pl (sanitize_line): transfer change to table defs
+
+ * faqbody.tex: v3.12, today
+
+ * faq.sty: suppress \pdfavoidoverfull if the cs doesn't exist
+ add pdfstring disable command for \marg
+
+2004-07-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Alternative document classes}): q-slidecls
+ from add-general
+ (subsection{LaTeX macros}): suppress the stupid coding for this release
+ since adding the new answer has obviated the need pro tem
+
+2004-07-14 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macros}): stupid coding to prevent
+ spacing silliness around q-ltxabbrv; this will need reviewing at every
+ release unless i can think of some better way around the problem
+
+ * add-general.tex (subsection{Alternative document classes}): minor
+ tweak to slides question
+
+ * sanitize-beta.pl (sanitize_line): add cellpadding to <table>
+
+ * faqbody.tex (section{Documentation and Help}): change address of
+ teencontrex (sent reply to prompt check whether the latest stuff
+ really is on ctan...)
+ (subsection{Mathematics}): point maths sizes at q-ltxabbrv
+ (subsection{LaTeX macros}): q-ltxabbrv from add-general
+
+2004-07-13 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): add pybliographer
+ to the list of "managers not on ctan"
+ 3.12RC2, today
+
+2004-07-12 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add ppr-prv, ha-prosper
+
+ * add-general.tex (subsection{Alternative document classes}): write up
+ prosper, with ppr-prv and ha-prosper
+
+ * dirctan.tex: add pgf,xcolor
+
+ * add-general.tex (subsection{Alternative document classes}): write up
+ beamer, add links for pgf and xcolor
+
+2004-07-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): new q-buildbib
+ from add-general
+ (subsection{Creating citations}): new q-usebibtex from add-general
+ (subsection{Common errors}): new q-zerochap from add-general
+
+ * dirctan.tex: add ps4pdf
+
+ * faqbody.tex (section{Graphics}): mention ps4pdf and pdftricks, and
+ reference voss' page for various support options
+
+2004-07-10 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): add texmaker after kile in
+ q-editors
+ (subsection{Typesetting specialities}): elaborate situation of texindex
+ in q-makeindex, and add reference to ltxindex
+
+ * add-general.tex (subsection{Creating bibliographies}): write up the
+ bibtex db management systems
+
+ * dirctan.tex: add xbibfile and btOOL
+
+2004-07-05 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (subsection{Common errors} and elsewhere): adjust spacing of
+ ellipsis in question title
+
+ * add-general.tex (subsection{Why does it do that?}): new q-zerochap
+
+ * faq.sty: debug \Qref*{}{}''
+
+2004-07-05 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqfont.cfg.mbvj: add definition of \acro
+
+2004-07-04 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faq.sty: adjust "null" \acro command so as not to gobble following
+ space in the toc!
+
+ * add-general.tex (subsection{Alternative document classes}): work on
+ the slides question
+
+2004-07-03 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables of contents and indexes}): correct
+ section number of companion reference
+ (section{Installing (La)TeX files}): moved up to before fonts
+ (subsection{Document structure}): add section number for companion
+ reference
+
+2004-07-02 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * additions.tex: pl4.12e, today
+
+ * faqbody.tex: today's date
+ (subsection{LaTeX macros}): two more editorials on q-ltxcmds
+
+2004-07-01 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * dirctan.tex: add chapterfolder
+
+ * faqbody.tex: today's date
+ (subsection{Common misunderstandings}): add another example of trouble
+ to q-baselinepar
+ (subsection{Document management}): add chapterfolder to q-docotherdir
+
+2004-06-30 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * texfaq2html, texfaq2html-beta, texfaq2file: align all three with
+ sanitize changes
+
+ * sanitize.pl: up to date with sanitize-beta
+
+ * faqbody.tex (throughout): \path|...| -> \path{...}
+
+ * sanitize-beta.pl (sanitize_line): add \path{...}
+
+ * faqfont.cfg.mbvj: boldmath not available
+
+ * faqfont.cfg.cmfonts: boldmath is available
+
+ * faq.sty: define \ifboldmathavail and set false in default font setup
+
+ * faqbody.tex: today's date
+ (subsection{Tables of contents and indexes}): editorial on q-secnumdep
+ (subsection{LaTeX macros}): debugging and editorial on q-ltxcmds
+ (throughout): tidy \boldmath for question (etc) titles
+
+2004-06-28 Robin Fairbairns <rf@mole.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): correct \href for
+ "highlight" home site
+
+2004-06-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): new q-zerochap
+
+2004-06-22 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX-related projects}): q-extex and
+ q-xetex from add-general
+ (subsection{Hyphenation}): q-hyphexcept from add-general
+ (subsection{Common misunderstandings}): q-tocloftwrong from add-general
+ (subsection{Page layout}): q-outszwrng from add-general
+
+ * add-general.tex (subsection{LaTeX macro programming}): change \hline
+ in q-ltxabbrv (on the off-chance we can introduce this answer to the
+ running version)
+ (subsection{Current \TeX-related projects}): editorial on xetex
+
+ * sanitize-beta.pl (sanitize_line): fiddle trying to make \hline equiv
+ commands show up in tables
+
+ * faq.sty: define \acro conditionally in body of file; define it as
+ null (apart from \@) in default font setup, but not in cmfonts version
+
+ * faqbody.tex (section{TeX Systems}): links for gwtex and texshop,
+ reword availability statements for oztex and cmactex (looks like the
+ only "generally" pre-macosX version is textures, now :-( )
+
+2004-06-21 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.12RC1, today
+ (subsection{Typesetting specialities}): rewrite highlight stuff to be
+ more upbeat about it (and to mention its valuable properties)
+
+2004-06-19 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Macro programming}): new q-subverttoks
+
+2004-06-18 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macros}): missing \csx in q-fixnam
+
+2004-06-17 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): editorial
+ on q-ifpdf
+
+2004-06-16 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): use the
+ \relax trick in q-empty
+
+ * sanitize-beta.pl (sanitize_line): move the zapping of \relax to after
+ that of {}, so that \cmdinvoke{cmd}{\relax} describes empty arg
+
+2004-06-16 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro programming}): first stab at
+ "abbreviations" answer (q-ltxabbrv)
+
+2004-06-15 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): ftpmail only at dante,
+ only one answer about searching, in q-archives
+ (section{Acquiring the Software}): mend ref in q-nonfree
+ (section{Acquiring the Software}): replace refs in q-uploads
+ (section{Installing (La)TeX files}): ... and in q-instpackages
+ (subsection{Alternative document classes}): and in q-journalpaper
+ (subsection{Common errors}): jf contribution to q-verbwithin
+
+2004-06-15 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): replace q-findpkg,
+ q-siteindex and q-websearch by q-findfiles from add-general
+ (subsection{Common errors}): rewrite my\string_name in q-verbdef
+
+2004-06-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: version 3.11h, tomorrow
+
+ * add-general.tex (subsection{Acquiring the software}): minor edits of
+ q-findfiles
+
+2004-06-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): q-ifpdf
+ from add-general
+ (section{The joy of TeX errors}): new q-divzero, q-missbegdoc,
+ q-normalszmiss and q-manymathalph from add-general
+ (subsection{Creating citations}): new q-compactbib and q-bibtocorder
+ from add-general
+
+2004-06-13 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Current TeX-related projects}): new
+ q-xetex
+
+ * faqbody.tex (throughout): \mailto|...| -> \mailto{...}
+
+ * filectan.tex: add notoccite, remove tocunscite
+
+ * add-general.tex (subsection{Macro programming}): typo in q-ifpdf
+
+ * faqbody.tex (several places): deal with companion issues or mark
+ further work needed with ********
+
+ * dirctan.tex: add tlc2
+
+ * faqbody.tex (section{Documentation and Help}): add reference to tlc2
+ examples
+
+2004-06-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faq.sty: make \mailto accept either sort of arg, \ifpdf
+
+2004-06-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Mathematics}): tweak q-mathsize
+
+2004-06-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * filectan.tex: add fontmath and fontdef (in some order)
+
+ * faqbody.tex (subsection{Mathematics}): clarification (one hopes) of
+ q-mathsize
+
+2004-06-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): warn about non-error in
+ q-verbwithin
+
+2004-06-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): emphasise
+ that \ifnoerror is a fantasy...
+
+ * add-general.tex (subsection{Macro programming}): new q-ifpdf
+
+2004-06-05 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Alternative document classes}): tidy q-cv
+
+2004-06-04 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): mention amsmath in the \\ q
+
+ * CHANGES-3.12: mention europecv
+
+ * dirctan.tex: add europecv
+
+ * faqbody.tex (subsection{Alternative document classes}): add europecv
+ to q-cv
+
+2004-06-02 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): comments
+ on "is it an integer" from donald
+
+2004-06-01 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Common misunderstandings}): new
+ q-tocloftwrong dealing with numbers in toc and so on, basically just a
+ pointer to q-tocloft
+
+ * faqbody.tex (section{Documentation and Help}): refer aspirant authors
+ to tex books and to q-dtx
+
+2004-05-31 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): expand q-extrabrace a
+ bit, adding stuff about \caption and non-moving opt args
+
+2004-05-27 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: remove french-le and french-pro (not actually used, and
+ french-le has disappeared, at least temporarily)
+
+ * filectan.tex: correct litprog-faq
+ comment-out compan-ctan
+
+ * faqbody.tex (section{Documentation and Help}): correct pointer to
+ voss's latex stuff (twice)
+
+2004-05-26 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): add keywords for
+ q-extrabrace (also touch up verbatim quoting)
+ (subsection{LaTeX macros}): mention definition of fragile commands in
+ lamport, and that some robust commands (e.g., \cite) get redefined
+ fragile
+ (section{TeX Systems}): mention texshop as an editor/shell for macos x
+
+2004-05-25 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): correction to
+ q-bibprefixsort from james szinger
+
+2004-05-24 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Page layout}): first draft of "output
+ size wrong"
+
+2004-05-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): provide documentation, etc., links
+ for pstricks
+
+2004-05-23 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): correct maarten sneep's name
+ (subsection{Common errors}): correct the example in q-alreadydef
+
+ * dirctan.tex: e4t moved to nonfree/ (though we don't use it...)
+
+ * CHANGES-3.12: document 4alltex and miktex changes to faqbody
+
+ * faqbody.tex (section{TeX Systems}): slightly more expansive about
+ kile, and a link to sourceforge in q-editors; also remove mention of
+ eddi4tex (defunct?) and the 4alltex cdrom
+ (subsection{Adobe Type 1 (postscript) fonts}): texlive 7 is no longer
+ the type example of a system that does dvips 5.90 (or better)
+ (section{Acquiring the Software}): mention the miktex cdrom (a good
+ deal, imo)
+
+2004-05-21 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): add keywords to
+ q-newlineargs
+
+2004-05-20 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * texfaq2html (oh_dear): put an (obfuscated) mail address in the
+ message (does it need obfuscation?)
+
+2004-05-18 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): deal with the table things
+
+ * faq.sty: macros for use in tables
+
+ * faqbody.tex (subsection{LaTeX macros}): tabular for *name macros
+
+2004-05-16 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (throughout): get rid \cs usage
+
+ * faqbody.tex (section{The Background}): rewrite that nasty para in
+ q-texpronounce
+ (subsection{Creating bibliographies}): correct use of \csx for \&
+
+2004-05-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.11f, today
+ (section{The Background}): another paragraph (shock!) to elucidate
+ the relationship to "technology" (i have a nasty feeling...)
+
+2004-05-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: redefine \csx to allow its argument to expand, remove \cs
+
+ * faqbody.tex (section{Symbols, etc.}): use \symbol{95} for underscore
+ in several places
+ (subsection{"Generic" macros and techniques}): use \symbol{95}
+
+ * texfaq2html-beta: remove symbol character table
+
+ * sanitize-beta.pl: add symbol character table, with 95=>"_", remove
+ \cs
+
+ * add-general.tex (subsection{Creating bibliographies}): note bibdesk
+ (in comment)
+
+2004-05-10 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{\LaTeX{} macros}): reinstate minor changes
+ done here over the w/e
+
+2004-05-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): redo text at
+ start of q-codelist -- wasn't translating properly to html
+
+ * faq.sty: squeeze list indentations a fair bit
+
+ * faqbody.tex (throughout): enumerate->itemize wherever reasonable,
+ plus associated tidying of markup
+
+2004-05-09 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * filectan.tex: add the FILES.* requirements
+
+ * add-general.tex (subsection{Acquiring the software}): q-findfiles
+ more or less complete
+
+2004-05-07 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Acquiring the software}): first serious
+ chunk of a q-findfiles to replace the existing three answers
+
+2004-05-03 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): fidgeting with the
+ "find stuff" answers; these ought all to be one :-(
+
+ * filectan.tex: move T1instguide one directory down in the tree (nb,
+ keeping companion.ctan entry, even though the file's not on archive,
+ on the basis that i've to rewrite the file for ed.2)
+
+ * faqbody.tex (section{Acquiring the Software}): more hacking at
+ q-findpkg
+
+2004-05-02 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): removed the "more
+ dynamic is" rubbish from intro to lshort
+ (subsection{Mathematics}): tidying markup to avoid verbatim, use quote
+ env, in q-proof
+ (section{Acquiring the Software}): purge references to companion.ctan
+
+2004-04-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): allow narrow
+ version of \normalsize error message
+
+2004-04-28 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Graphics}): new q-repeatgrf
+
+2004-04-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * CHANGES-3.12: mention mimetex reference
+
+ * faqbody.tex (section{Current TeX-related projects}): tidy up narrow
+ column stuff in q-mathml
+
+2004-04-26 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add MimeTeX
+
+ * faqbody.tex: v3.11e, today
+ (section{Current TeX-related projects}): mention techexplorer as
+ introduction to mimetex in q-mathml
+
+ * commands-to-define: add \addvspace (simplified defn)
+
+2004-04-20 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): mention
+ \tabularnewline in q-tabcellalign
+
+2004-04-20 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): whinge about age of emtex and
+ djgpp, suggesting users who want up-to-date systems need to go to
+ win32 :-(
+
+ * dirctan.tex: emtexTDS now obsolete
+
+2004-04-19 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): mend markup in
+ q-bibplain
+ (subsection{Spacing of characters and lines}): markup in q-flushboth
+ (subsection{Page layout}): shambles in q-landscape
+
+ * sanitize.pl,sanitize-beta.pl (sanitize_line): move \qref and
+ \cmdinvoke down below def of all "font-change-only" commands (things
+ that could be in args)
+
+2004-04-15 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): redo tex2bib
+ references in q-makebib
+
+2004-04-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * filectan.tex: add tex2bib entries (one for doc too)
+
+ * dirctan.tex: remove incorrect tex2bib entry
+
+ * add-general.tex (subsection{Creating bibliographies}): added tex2bib
+ to q-buildbib
+
+2004-04-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): tidy markup of
+ q-siteindex
+
+ * texfaq2file,texfaq2html-gamma,texfaq2html-beta,texfaq2html: add
+ symbol 94 for work on q-siteindex
+
+2004-04-10 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): q-manymathalph
+ complete (first pass)
+
+2004-04-09 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): a start to
+ q-manymathalph (interrupted by falling asleep...)
+
+ * faqbody.tex: v3.11d, today
+ (section{Documentation and Help}): add reference to kindersley book in
+ q-typebooks
+ (section{Introduction}): added isaac khabaza to list
+ (section{Documentation and Help}): fourth edition of k&d, 2nd of tlc
+ (section{Documentation and Help}): sort out ~ in an \href line (twice)
+
+2004-04-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): deal with line-
+ broken \Qref command in q-seturl
+ (subsection{Typesetting specialities}): it's M-Tx not M_Tx in q-music
+
+ * Makefile.CTAN: drop stupid_names.sty
+
+ * sanitize.pl (sanitize_line): line up with changes to -beta
+
+ * additions.tex: pl 4.12a, today
+
+ * faqbody.tex: v3.11c, today
+ (subsection{The Joy of TeX errors}): q-altabcr from add-general
+
+ * add-general.tex (subsection{The Joy of TeX errors}): new q-missbegdoc
+ (subsection{The Joy of TeX errors}): new q-normalszmiss
+
+ * sanitize-beta.pl (sanitize_line): remove $...$ re, add \beta, \marg{}
+
+ * faqbody.tex (throughout): replace $...$ with \ensuremath{...}
+
+2004-04-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): comment on relation to
+ grouping level errors in q-semanticnest
+
+ * add-general.tex (subsection{Creating citations}): correct typo in
+ Q-compactbib
+
+ * faq.sty: arrange that \Qref doesn't eat following space (by
+ converting \@ifnextchar to \afterassignment with "\let\@tempa= "
+
+2004-04-04 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating citations}): jiffy on compact
+ thebibliography lists
+
+2004-04-01 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize[-beta].pl (throughout): align the two files (2-way process)
+
+ * faqbody.tex: v3.11b, today
+ (subsection{Floating tables, figures, etc.}): note bottom double float
+ restrictions and complications
+
+2004-03-30 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2file: add -2 switch, and corresponding tidies; correct a
+ few things detected by perl -w
+
+ * sanitize.pl (generate_CTAN_ref): correct = -> == in conditional(!)
+
+2004-03-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: define a bunch of stupid name macros to free us of these
+ idiot logos for ever; also define \MF and \MP without package mflogo
+
+2004-03-26 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of \TeX{} errors}): graphicx
+ height/division question q-divzero
+
+2004-03-25 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Hyphenation}): writing hyphenation
+ exceptions q-hyphexcept
+
+2004-03-25 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Support Packages for TeX}): typo in q-fig title
+ (section{The Background}): correct the earlier twaddle about X in
+ Q-TeXpronounce (courtesy of Ulrich Klauer)
+ (section{Introduction}): added Ulrich Klauer
+ (subsection{Tables, figures and diagrams}): editorial on q-tabcellalign
+ (section{Documentation and Help}): add reference to shipman's texcrib
+
+2004-03-24 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common misunderstandings}): typo, found
+ courtesy of bil kleb
+
+2004-03-22 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): new q-altabcr
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): tidy up
+ q-tabcellalign, adding refs to q-altabcr, and correcting errors
+
+2004-03-21 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faq.sty: remove unnecessary \pdfstringdisable commands, sanitise \nts
+ and \texxet (but comment out \texxet and also \mltex, which aren't
+ used)
+
+ * sanitize-beta.pl (sanitize_line): get rid of \texsis
+
+ * faqbody.tex (subsection{Typesetting specialities}): write out in full
+ the one instance of use of \texsis...
+
+ * faq.sty: de-sillify \tex, \etex, \extex, \latex, \alltex, \context,
+ \pdftex, \pdflatex, \twee ... and junk \texsis
+
+2004-03-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Current TeX-related projects}): complete
+ first stab at extex question
+
+ * sanitize-beta.pl (sanitize_line): add \Omega
+
+2004-03-18 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * README: modify final paragraph (about distributing modified versions)
+
+ * sanitize-beta.pl (sanitize_line): remove \Q
+
+ * faq.sty: suppress \Q (temporarily, just possibly: it's going from
+ texfaq2html, anyway)
+
+2004-03-16 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Why shouldn't I?}): correct fantasy in html
+ of q-2letterfontcommands
+
+ * filectan.tex: add vruler
+
+ * faqbody.tex: 3.11a, today
+ (section{The Background}): editorial on q-triptrap
+ (section{Introduction}): add brooks moses to list
+ (subsection{Typesetting specialities}): add vruler to q-linenos
+
+ * sanitize.pl (sanitize_line): sanitize_beta changes
+
+2004-03-15 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): removed \ldots, added \psatempty
+
+ * faqbody.tex (subsection{Page layout}): minor editorials for ps@empty
+
+2004-03-15: release 3.11
+
+2004-03-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faq.sty: disable \, in \pdfstringdisablecommands; define \psatempty
+
+ * faqbody.tex (subsection{Page layout}): use \psatempty in question
+ title for label ps@empty
+
+2004-03-13 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): don't refer to individual
+ latex doc files (not sensible since none is now html)
+ (section{Documentation and Help}): mention clsguide via directory only
+
+ * dirctan.tex: latex documentation directory
+
+2004-03-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add texcnvfaq as a directory
+
+ * filectan.tex: remove texcnvfaq
+
+2004-03-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.11, today
+ (subsection{Page layout}): clarify "pdf output" for pdflscape
+
+2004-03-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{DVI Drivers and Previewers}): new text about
+ dvipng, from its author
+
+2004-03-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: document \Qref in the course of checking it...
+
+ * faqbody.tex (throughout): check on "\Qref..." -- ensure sensible
+ usage, specifically avoiding "(see question x)"
+
+2004-03-09 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Lists}): tidy "interrupting lists" answer
+
+ * CHANGES-3.11: 2 more answers listed
+
+ * additions.tex: pl4.12, today
+
+ * faqbody.tex (subsection{Why shouldn't I?}): q-2letterfontcmd from
+ add-general
+ (section{Graphics}): q-dvipdfmgraphics from add-general
+ v3.11RC4, today
+
+ * add-general.tex (subsection{Why shouldn't I?}): editorials on
+ q-2letterfontcmd and q-dvipdfmgraphics
+
+2004-03-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Graphics}): edit the dvipdfm answer a bit
+
+2004-03-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.11b, today
+
+ * add-general.tex (subsection{Graphics}): graphics in dvipdfm
+
+2004-02-28 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v 3.11RC3, today
+ (section{Introduction}): contributors contributions, added szinger
+
+2004-02-27 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \bsbs{}
+
+ * faq.sty: add \bsbs
+
+ * filectan.tex: beginlatex and tex4ht changed names
+
+ * dirctan.tex: add pict2e, remove/amend things to match changes on
+ the archive
+
+ * faqbody.tex
+ (subsection{Odds and ends}): add pbox and eqparbox to q-varwidth
+ (section{Graphics}): mention pict2e in "drawing in latex"
+
+ * dirctan.tex: add eqparbox and pbox
+
+2004-02-26 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: date today, of course!
+ (subsection{Adobe Type 1 ("Postscript") fonts}): rearrange list of
+ fonts to clump free ones together better [more still to be done]
+
+2004-02-26 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Odds and ends}): tidy up coding around stupid
+ logos answer
+ v3.11RC2
+
+ * filectan.tex: texnames.sty from info/biblio
+
+ * Makefile.CTAN: texnames.sty -> stupid_names.sty
+
+ * faq.sty: load stupid_names
+
+ * stupid_names.sty: renamed [my] texnames.sty
+
+2004-02-25 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add smallcap
+
+ * add-general.tex (subsection{Why shouldn't I?}): New q-2letterfontcmd
+
+ * faqbody.tex (section{Installing AllTeX files}): add note about public
+ fonts directories
+ (subsection{Odds and ends}): mention texhash for bold-extra installs
+
+2004-02-23 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): mention that memoir doesn't
+ choke on verbatim in footnotes in q-verbwithin
+ (subsection{LaTeX macros}): note koma-script \chapterformat (etc.)
+ functions in q-seccntformat
+ (subsection{Common errors}): q-tabacc and q-alreadydef from add-general
+ (subsection{Common misunderstandings}): q-linespread and q-baselinepar
+ from add-general
+ (section{Hypertext and PDF}): q-pdfpagelabels from add-general
+ (subsection{Odds and ends}): q-varwidth from add-general
+ (subsection{Creating bibliographies}): q-bibtranscinit from add-general
+ (subsection{Creating citations}): q-sortbib from add-general
+ [preamble]: v3.11RC1, today
+ (section{The joy of TeX errors}): q-inputlev and q-hyperdupdest from
+ add-general
+
+2004-02-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): new options for
+ q-changebars, from peter w; ditto comment env in memoir, for
+ q-conditional; totals counters in memoir for q-howmanypp
+ (subsection{"Generic" macros and techniques}): mention memoir's
+ \ifinteger setup in q-isitanum; ifmtarg in memoir for q-empty
+ (subsection{LaTeX macros}): chngcntr in memoir for q-running-nos;
+ q-oddpage stuff in memoir
+
+2004-02-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.10k, today
+ (section{Bits and pieces of TeX}): tidy up text about bitmap type 3
+ fonts in q-adobetypen
+
+2004-02-17 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating bibliographies}): correct
+ conditional code in Q-bibtranscinit
+ (subsection{Creating bibliographies}): bit more on Q-buildbib
+
+2004-02-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): mention koma
+ \captionabove command
+
+2004-02-09 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Labels and references}): twiddle further with
+ reference-by-name answer (i wonder if it's comprehensible?)
+
+2004-02-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add smartref
+
+ * faqbody.tex (subsection{Tables of contents and indexes}): reword text
+ about splitidx package to take account of split option; more work
+ needed on this answer still :-{
+ (subsection{Labels and references}): note memoir titleref functions,
+ and mention byname
+
+2004-02-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty (\Qref): new whistle in case "\Qref..."
+
+ * faqbody.tex (subsection{Page layout}): editorial work on ps@empty
+
+2004-02-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.10j, today
+
+ * additions.tex: pl4.10f, today
+
+2004-02-02 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-gamma: first tentative steps towards a new web script
+ (nothing much to do with tex, as yet...)
+
+ * texfaq2file: add switches to control what is output, for grand new
+ scheme of things
+
+2004-01-31 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables of contents and indexes}): correct
+ reference to index package
+
+ * dirctan.tex: add index
+
+2004-01-29 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add ledmac
+
+2004-01-25 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: qq159,161 (in wilson's notes) for memoir
+ q163 for both memoir and koma-script
+
+ * add-general.tex (subsection{Why does it do that?}): close paren in
+ q-baselinepar
+ (subsection{Odds and ends}): new q-varwidth
+
+ * filectan.tex: add varwidth
+
+2004-01-24 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): finished (first
+ draft of) q-baselinepar
+
+ * faqbody.tex (subsection{"Generic" macros and techniques}): correct a
+ typo (or perhaps "braino") pointed out by hendrik maryns
+
+2004-01-21 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): new q-baselinepar
+ and a link to it from
+
+ * faqbody.tex (subsection{Common misunderstandings}): bit more scrunge
+ at end of q-paraparam
+
+2004-01-20 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of TeX}): mention swiftex in dtx
+ answer
+
+2004-01-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.10i, today
+ (subsection{Document structure}): refer to zoonekynd's title, chapter
+ and section style pages
+
+ * additions.tex: pl4.10e, yesterday
+
+2004-01-18 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): correct miktex
+ "update database" key name
+
+ * add-general.tex (subsection{Why does it do that?}): nearing
+ completion of q-linespread
+
+2004-01-16 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): don't have comment.sty \end{xyz} other than
+ in column 1
+
+ * filectan.tex: add savesym
+
+ * add-general.tex (subsection{Why does it do that?}): new Q-alreadydef
+
+2004-01-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common misunderstandings}): reword paraparam,
+ having recommended it to someone :-}
+
+2004-01-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add Tabbing
+
+ * add-general.tex (subsection{Why does it do that?}): complete q-tabacc
+
+2004-01-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): new q-tabacc (not
+ yet quite complete)
+
+2004-01-13 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: subfigure->subfig, in case i ever get to use it...
+
+2004-01-13 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): remove references to ntex
+ (subsection{Common misunderstandings}): quote work complete to end
+ of this subsection
+
+2004-01-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common misunderstandings}): more work on the
+ quote and verbatim
+
+2004-01-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * additions.tex: pl 4.10d, today
+
+ * add-general.tex (subsection{Hypertext and PDF}): new answer
+ q-pdfpagelabels
+ (subsection{The Joy of TeX errors}): new q-hyperdupdest
+
+ * faqbody.tex (section{Hypertext and PDF}): tidy qrefs to get rid of
+ stray space in html; reword intro to make clear what the answer will
+ tell us
+
+2004-01-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): still more work on tidying
+ (subsection{Getting things to fit}): remove question on miktex failing
+ to generate latex format
+ (subsection{Common errors}): mention dblfloatfix in "dbl float order"
+ v3.10h, today
+
+2004-01-10 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout, again): more work on conditionals
+ (correcting gross errors of yesterday) and tidying layout (more quote
+ environments, f'rex)
+
+2004-01-09 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): redoing conditional control
+
+2004-01-09 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating bibliographies}): start of scan
+ of database offerings
+
+2004-01-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): memoir does crop marks
+
+2004-01-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): couple of editorials
+ from christina thiele
+
+2004-01-06 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): q-nopageno and q-ps@empty,
+ update for memoir and koma-script
+
+2004-01-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing (La)TeX files}): new q-privinst from
+ add-general
+ (section{Installing (La)TeX files}): new q-instt1font from add-general
+ (section{Bits and pieces of TeX}): new q-resolns from add-general
+ (section{Bits and pieces of TeX}): new q-fontname from add-general
+ (subsection{Tables of contents and indexes}): new q-minitoc from
+ add-general
+
+2004-01-04 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): add a stricture against using epsfig
+ unless really necessary
+ (subsection{Document structure}): mention memoir in "page numbering"
+ (subsection{Page layout}): note typearea's capabilities in q-papersize
+
+ * add-general.tex (subsection{Creating bibliographies}): wrap bib
+ entries in dviversion for transcribed initials question
+
+ * faqbody.tex (subsection{Document structure}): dealt with the stuff
+ about marks
+
+2004-01-02 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating bibliographies}): new answer
+ from martin sneep, about transcribed initial letters
+
+ * faqbody.tex (subsection{Document structure}): \clearempty... koma
+ stuff in Q-reallyblank
+ (section{Documentation and Help}): typesetting japanese tutorial from
+ matsusaka u. in japan
+ (section{Current TeX-related projects}): mention lambda in q-omega,
+ and add a health warning to the \ctanref about omega itself
+
+2004-01-01 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): mention
+ tabulary
+ (subsection{Document structure}): koma-script scrpage2, memoir into
+ q-fancyhdr
+ (subsection{Page layout}): mention koma \chapterpagestyle in Q-ps@empty
+
+2003-12-31 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * filectan.tex: add capt-of
+
+ * faqbody.tex (subsection{Document structure}): record change back from
+ caption2 to caption
+ (subsection{Document structure}): koma & memoir appendix facilities
+ (section{Document structure}): caption facilities of koma and memoir,
+ and add capt-of too
+
+2003-12-29 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): refer to mimi's pages
+ next to tim love's
+ (section{Documentation and Help}): remove reference to basum (bausum?)
+ page on tug.org since it's shortly to be no more, and remove the ltx-2
+ one too, since we seem to have a latex one in the offing
+
+2003-12-28 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): mention mptopdf in "mp in gs" q
+
+ * add-general.tex (subsection{Creating citations}): mention ken
+ turner's list of reference styles
+
+ * faqbody.tex (section{Documentation and Help}): list herbert voss'
+ thing under both faqs and tutorials
+
+ * add-general.tex (subsection{Installing (La)TeX files}): tidy up the
+ private installation thing to fit in the columns (still needs proper
+ proof-reading)
+
+2003-12-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): yet more
+ verbosity about home texmf trees (this stuff needs proof-reading!!!)
+
+ * faqbody.tex (subsection{Document structure}): koma, memoir additions
+ to q-secthead
+
+2003-12-25 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Tables of contents and indexes}): finish
+ off minitoc q with reference to hyperref; nb no reference to
+ minitoc-hyper (since no-one else has complained about it)
+
+2003-12-24 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): new question
+ q-privinst (incomplete so far)
+
+ * sanitize-beta.pl (sanitize_line): remove translation of \& to bare &
+ (which surely isn't safe?)
+
+2003-12-23 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Alternative document classes}): remove
+ statement that koma and memoir classes are "still under development"
+ with its unfortunate suggestion that they're still incomplete
+ (subsection{Document structure}): mention koma and memoir's titling
+ capabilities
+
+2003-12-22 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Bits and pieces of TeX}): fontname q
+ (subsection{Installing AllTeX files}): refer to q-fontname in
+ q-instt1font
+ (subsection{Creating citations}): restored q-sortbib ...
+
+ * faq.sty: redo definition of \ProgName (and hence various others)
+ to work with latest url.sty (if it's available)
+
+2003-12-21 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Particular font families}): optimise \Qref in
+ lmfonts question
+ (subsection{Alternative document classes}): updated other sizes
+ question to mention koma and memoir
+
+ * add-general.tex (subsection{Installing AllTeX files}): another batch
+ of work on "installing type 1 fonts"
+
+ * filectan.tex: excalibur now apparently 4.0.2
+
+2003-12-18 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating citations}): new Q-sortbib
+
+2003-12-15 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): current gs version (in "old
+ gs" q) changed to 8.12 (dec 2003)
+ (preamble): v3.10g, today
+ (section{Installing (La)TeX files}): changes for new fptex
+
+2003-12-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * filectan.tex: add dblfloatfix
+
+ * faqbody.tex (subsection{Floating tables, figures, etc.}): mention
+ dblfloatfix in Q-2colfloat
+
+2003-12-02 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables of contents and indexes}): correction
+ of multind example [how _could_ i have got it so wrong?]
+ (preamble): v3.10f, today
+
+2003-11-28 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: pdftitle uk _tex_ faq (not tug)
+
+ * faqbody.tex (section{TeX Systems}): typos in emacs names
+
+2003-11-19 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * additions.tex: pl 4.10a
+
+ * add-general.tex (subsection{Tables of contents and indexes}): minitoc
+ question answered
+
+2003-11-18 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.10e, today
+ (throughout): refer to koma-script (the object, as opposed to the ctan
+ address) as KOMA-script
+
+2003-11-13 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{References from articles}): minor extra
+ editorial
+
+2003-11-13 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.10d, today
+ (section{References from articles}): clarification of, and expansion of
+ examples in, q-mcite
+
+2003-11-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.10c, today
+ (subsection{Creating bibliographies}): correct @preamble for \noopsort
+ (section{References from articles}): correct location for unsrtnat,
+ plainnat
+
+2003-11-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ <release to the web>
+
+ * dirctan.tex: FirstSteps, lgc, lwc -> info/examples
+
+ * faqbody.tex: v3.10b, today
+ (section{Documentation and Help}): corrections to mf/mp tutorials, plus
+ two additions (from jose santos)
+
+ * texfaq2html: vital item left out yesterday when doing changes from
+ -beta
+
+2003-11-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.10a
+ (subsection{Document structure}): typo in appendices question
+
+ * texfaq2html: changes from -beta
+
+ * sanitize.pl (sanitize_line): changes from -beta
+
+ * faqbody.tex: v3.10 today
+
+2003-10-30 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: remove kostas entry (corresponding directory seems to
+ have disappeared from CTAN without trace...)
+
+ * faqbody.tex (subsection{Tables of contents and indexes}): extend and
+ tidy examples in "multiple indexes"
+
+ * sanitize-beta.pl (sanitize_line): add \Email{ }
+
+ * faqbody.tex (subsection{Typesetting specialities}): correct mail list
+ details for tex-music (now at icking archive)
+ (throughout): change \Email|...| to \Email{...}
+
+ * dirctan.tex: algorithm2e
+
+ * faqbody.tex: 3.10RC2, today
+ (subsection{Typesetting specialities}): mention algorithm2e in
+ Q-algorithms
+
+2003-10-24 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * additions.tex: pl4.9g, today
+
+ * faqbody.tex: v3.10RC1, today
+ (section{Documentation and Help}): various small editorials
+
+2003-10-23 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Document Structure}): editorial work on
+ the appendix answer
+
+2003-10-23 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Labels and references}): tidy q-extref
+
+ * dirctan.tex: removed web/glasgow and all subdir references
+
+ * add-general.tex (subsection{Labels and references}): faithfully add
+ reference to xr-hyper's url optional argument (though i've not tried
+ heiko's new version of hyperref that he says makes it work)
+
+ * dirctan.tex: add appendix
+
+ * add-general.tex (subsection{Document Structure}): new Q-appendix
+
+2003-10-21 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Why shouldn't I?}): add example of how to
+ code align in place of eqnarray; make all questions in section have ?
+ at their ends (just for once, they _are_ written as questions)
+ (subsection{Common errors}): mention Q-eqnarray in Q-newlineargs where
+ eqnarray is used as an example
+
+2003-10-19 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): q-toodeep from
+ add-general
+ (subsection{Mathematics}): q-mathstext and q-reuseq from add-general
+ (subsection{Common misunderstandings}): q-exscale from add-general
+ (subsection{Page layout}): q-epigraph from add-general
+ (section{Current TeX-related projects}): q-aleph from add-general
+ (subsection{Footnotes}): q-footnpp from add-general
+ (subsection{LaTeX macros}): q-addtoreset from add-general
+ (subsection{Tables, figures and diagrams}): removed superfluous
+ \endhtmlignore in q-wholerow
+
+ * add-general.tex (subsection{LaTeX macro programming}): mention per
+ page resetting problem and the perpage package, in answer "master and
+ slave counters" (done once before, and obviously lost :-( )
+
+2003-10-18 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * additions.tex: pl4.9f, today
+
+ * faqbody.tex (section{Support Packages for TeX}): mention aspell under
+ q-spell; remove mention of fig2mf under q-fig, and expand list of
+ known export formats (which now includes mf)
+
+ * add-general.tex (subsection{The Joy of TeX errors}): finished
+ editorial work on q-toodeep -- removed wibble about pressing on past
+ the error
+ (subsection{Creating citations}): minor editorial on the "howto"
+
+2003-10-17 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro programming}): mention per
+ page resetting problem and the perpage package, in newly-renamed
+ answer "master and slave counters"
+
+2003-10-17 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta: remove $original_keyword (no longer used); make
+ $keyword have spaces exchanged for + signs; if not providing link to
+ list of questions, </center> ...
+
+2003-10-17 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Footnotes}): typo; add example of perpage
+ and list sources of documentation
+
+2003-10-16 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating bibliographies}): more work on
+ how to
+ (subsection{Mathematics}): re-use of equation
+
+2003-10-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating bibliographies}): start on "how
+ to write a .bib file"
+
+2003-10-13 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * filectan.tex: add versions.sty
+
+ * faqbody.tex (subsection{Document management}): add versions.sty to
+ conditional compilation answer
+
+2003-10-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): remove the historical
+ stricture about the bibtex man page, and tidy the rest of the answer
+ up a bit
+
+2003-10-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Footnotes}): new subsection, new
+ Q-footnpp
+
+2003-10-10 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): add crippled keyword to
+ questions about fuzzy fonts
+
+2003-10-09 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): too deep (list
+ nesting error answer
+
+ * sanitize-beta.pl (sanitize_line): add \"u
+
+ * faqbody.tex (section{Documentation and Help}): reference to l2tabuen
+ as a -ve tutorial
+
+ * filectan.tex: add l2tabuen and l2tabuen.src
+
+2003-10-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * filectan.tex: add fncyref
+
+2003-10-07 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.9d, today
+ (subsection{"Generic" macros and techniques}): renamed section, added
+ Q-empty, tidied up quoting further up section
+ (subsection{LaTeX macros}): added Q-labundef
+ (section{The joy of TeX errors}): added Q-8000
+ (subsection{Why shouldn't I?}): add Q-dolldoll
+ (subsection{LaTeX macros}): mention latex kernel problem with \p@<*>,
+ and list the patch; also mention fncylab and point out that list
+ reference patching is best done with enumitem
+
+2003-10-05 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Labels and references}): new question on
+ xr and xr-hyper
+
+ * faqbody.tex (subsection{Labels and references}): hyperref defines
+ \nameref for itself; nameref doesn't need hyperref
+
+ * dirctan.tex: add clrscode
+
+ * faqbody.tex (subsection{Typesetting specialities}): mention clrscode
+
+ * sanitize-beta.pl (sanitize_line): add narrowversion and wideversion
+
+ * faq.sty: add narrowversion and wideversion
+
+ * add-general.tex (subsection{Labels and references}): new subsection,
+ for (new) q-extref
+
+ * faqbody.tex (subsection{Labels and references}): new, so far just
+ contains q-nameref
+
+2003-10-03 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro programming}): add an
+ \@addtoreset answer
+
+ * sanitize-beta.pl (sanitize_line): correct order of
+ \cmdinvoke*{c}{a1}{a2}{a3} and \cmdinvoke*{c}{a1}{a2}; add
+ \cmdinvoke*{c}{a1}[a2]
+
+ * faqbody.tex (subsection{Typesetting specialities}): slight tidying of
+ algorithm answer
+
+2003-10-01 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add epigraph
+
+ * add-general.tex (subsection{Creating citations}): fiddling with cites
+ in how to bibtex question
+ (subsection{Page layout}): answer on epigraphs
+
+2003-09-30 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating citations}): how to run bibtex
+
+2003-09-28 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add bezos
+
+ * faqbody.tex (subsection{Lists}): add enumitem to the same two answers
+
+ * add-general.tex (subsection{Mathematics}): correction, following
+ discussion on c.t.t
+
+2003-09-27 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add paralist, savetrees
+
+ * faqbody.tex (subsection{Lists}): add commentary on paralist and
+ savetrees to compaction of lists, and re-organise rest of question;
+ turn "fancy enumeration" upside down (to mention the package first),
+ and add side reference to paralist
+
+2003-09-25 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * additions.tex: v4.9d. 22nd
+
+ * faqbody.tex: v3.9c, today
+ (section{Documentation and Help}): mention www.macrotex.net/texbooks
+
+2003-09-23 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating citations}): consistent set of
+ examples for all three candidate packages, and compare-and-contrast
+ stuff to help users choose
+
+2003-09-22 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating citations}): add ctan ref for
+ multibbl
+
+ * add-general.tex (subsection{Mathematics}): add \intertext command to
+ answer on text in maths (example copied from amsldoc)
+
+2003-09-20 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): add ref to latex2html
+ mailing list
+
+ * dirctan.tex: add texpower, beamer
+
+ * add-general.tex (subsection{Alternative document classes}): bits and
+ pieces added on to slides question
+
+2003-09-19 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * texfaq2file: complete filename mapping to avoid nasty chars
+
+ * add-general.tex (subsection{Mathematics}): new answer: text in maths
+
+2003-09-18 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why shouldn't I?}): sort out $$ answer
+
+ * faqbody.tex (subsection{Common misunderstandings}): micro-tutorial on
+ the way \marginpar works
+
+2003-09-17 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Common misunderstandings}): add exscale q
+
+2003-09-16 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): reference odp tex area
+
+ * add-general.tex (subsection{LaTeX macro programming}): add answer on
+ detecting whether a label's undefined
+
+2003-09-15 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add 4-arg \cmdinvoke*
+
+ * dirctan.tex: add zoon-mp-eg
+
+ * faqbody.tex (section{Documentation and Help}): add zoonekynd's
+ example set to list of mp tutorials
+
+2003-09-14 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): bunch of
+ changes \Package| | to \Package{ }
+ (subsection{Getting things to fit}): advise etex/etex.sty for pictex
+ (section{The joy of TeX errors}): mention etex for dealing with
+ register problems
+
+2003-09-13 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): mention
+ bigstrut
+
+ * dirctan.tex: add multirow
+
+ * add-general.tex (subsection{Tables, figures and diagrams}): Add q on
+ multirow
+
+2003-09-12 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Tables, figures and diagrams}): question
+ on modifying single rows
+
+2003-09-11 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: add aleph
+
+ * add-general.tex (subsection{Current TeX-related projects}): little
+ answer on the aleph project
+
+2003-09-10 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * dirctan.tex: directory for TftI
+
+ * faqbody.tex (section{Documentation and Help}): add tex for the
+ impatient to the list of books released "free"
+
+2003-09-09 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): \label outside environment
+ enclosing \caption, too
+ (section{The joy of TeX errors}): play the htmlversion trick in
+ semanticnest
+
+2003-09-08 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Bits and pieces of TeX}): question on
+ resolutions
+
+ * faqbody.tex: today's date
+ (section{Documentation and Help}): mention mptut.pdf
+ (subsection{Getting things to fit}):
+
+2003-09-07 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Documentation and Help}): recommend TUG India tutorial page
+
+2003-09-06 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): complete rewrite
+ of the "mismatched mode" answer
+
+ * dirctan.tex: add bakoma-texfonts
+
+ * faqbody.tex: v3.9a, today; move hypertext section beyond fonts
+ (section{Graphics}): reorder questions, make all titles of answers that
+ refer to imported graphics actually say "imported"
+ (section{Documentation and Help}): minor editorial on mf books
+ (section{Documentation and Help}): mention herbert voss' maths tutorial
+ (section{Documentation and Help}): tidy up references to texhax
+ (section{Documentation and Help}): remark on the nasa latex thing
+ referring to 2.09
+ (section{Bits and pieces of TeX}): minor editorial
+ (section{Acquiring the Software}): minor editorial
+ (section{Hypertext and PDF}): add ctan ref for bakoma fonts
+
+2003-09-05 Robin Fairbairns <rf@beret.cl.cam.ac.uk>
+
+ * texfaq2file: start on facility for changing file names of awkwardly-
+ labelled questions
+
+2003-08-29 Robin Fairbairns <rf@shep.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.9
+
+2003-08-28 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.9RC2, today
+
+ * additions.tex: pl4.8a, today
+
+ * add-general.tex (subsection{Creating citations}): use donald's
+ simpler scheme for doing unsrt styles by hand... still no tocunsrt :-(
+
+ * faqbody.tex (section{Graphics}): rename the "graphics in" to
+ "imported graphics in", and rename q-graph-pspdf to "portable imported
+ graphics
+ (subsection{Creating bibliographies}): trivial anglicisation
+ (subsection{Typesetting specialities}): mention sverb.sty in the
+ verbatim input question, and tidy the whole mess up
+ (subsection{Typesetting specialities}): tidy ctanrefs of music answer
+ (section{The joy of TeX errors}): reorder the question about "missing
+ number", and refer to mathptmx to replace the old times package
+
+2003-08-27 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background} and elsewhere): yet more typos
+ noticed by jose carlos santos
+
+2003-08-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize.pl (sanitize_line): bring up-to-date with changes to -beta
+
+ * sanitize-beta.pl (sanitize_line): move {} pattern to end of funtion
+
+ * faqbody.tex: 3.9RC1, today
+ (subsection{Spacing of characters and lines}): documentation (such as
+ it is) of setspace
+
+ * companion.ctan: remove contrib/(supported|other) with a lot of help
+ from reinhard
+
+ * faqbody.tex (subsection{Tables of contents and indexes}): put code
+ example in quote environment (seems to set it off rather well)
+
+2003-08-12 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex,filectan.tex: remove all remaining contrib/supported
+
+2003-08-11 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): ignore \bgroup, \egroup (the latter
+ has to have trailing space in its pattern, for some reason)
+
+ * faqbody.tex (section{References from articles}): tidy up ctanrefs
+ (subsection{Tables of contents and indexes}): add example of the use of
+ index.sty (other two to come)
+
+2003-08-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Odds and ends}): advise against nameref with
+ hyperref
+
+ * dirctan.tex: added cm-lgc
+
+2003-08-10 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Spacing of characters and lines}): rewrite
+ doublespacing question for less pomposity
+
+2003-08-09 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): use \Qref*
+ (subsection{Particular font families}): use \Qref*
+ (section{Hypertext and PDF}): rework the 8-bit fonts question to
+ include cm-lgc, with caveats about its size range, and also to compare
+ the three type 1 alternatives to cm shapes
+
+2003-08-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macros}): further slight tweaks
+
+2003-08-08 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.8c, today
+ (subsection{LaTeX macros}): add argument-version to \collect@body q
+
+2003-08-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): typo in
+ Q-slashbox
+
+ * sanitize-beta.pl (sanitize_line): deal with \Qref* (twice) -- same as
+ \Qref here
+
+ * faq.sty: deal with \Qref*
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): couple of
+ typos in destable, and use \Qref*
+
+2003-08-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.8b, today
+ (section{Current TeX-related projects}): reference to pdftex in its own
+ right on ctan
+
+ * filectan.tex: add pdftex
+
+2003-08-01 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize.pl, sanitize-beta.pl (sanitize_line): add \File{ }
+
+ * faqbody.tex: v3.8a, today
+ (section{Hypertext and PDF}): typo in Q-fuzzy-type3
+
+2003-07-31 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * Makefile.CTAN: remove texfaq2{file,html}, but install faq-html.tar.gz
+
+ * Makefile (inst-html): muck about with html .tar.gz creation
+
+ * additions.tex: pl4.8, today
+
+ * faqbody.tex (subsection{Creating bibliographies}): merge Q-capbibtex
+ and Q-bibcase to convert the latter to just Q-bibaccent
+ v3.8, today ** release **
+
+2003-07-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): use new fantasies
+ around the production of \~
+
+ * sanitize-beta.pl (sanitize_line): deal with \~
+
+ * sanitize.pl (sanitize_line): deal with \~, bring up to date with
+ sanitize-beta
+
+ * faqbody.tex (subsection{Creating bibliographies}): \htmlignore around
+ dvi/pdf versions in examples of case protection
+
+2003-07-29 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add lshort-parent
+
+ * faqbody.tex (section{Documentation and Help}): make sure that every
+ tutorial mentions it's available from ctan if it is; suggest browsing
+ for other language versions
+
+2003-07-28 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add testflow to list
+ of tutorials
+
+ * additions.tex: pl4.7c, today
+
+ * faqbody.tex: v3.8RC2, today
+
+2003-07-27 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): \ProgName|...| -> \ProgName{...}
+
+2003-07-26 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add epslatex to list
+ of tutorials
+
+2003-07-25 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): remove claim about the
+ regularity of tugboat :-)
+
+2003-07-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): Q-upquot, Q-time
+ and Q-the-commands from add-general (slight edit to Q-the-commands)
+ (subsection{Particular font families}): lm question from add-general
+ (subsection{Creating bibliographies}): sorting from add-general
+ (subsection{Tables, figures and diagrams}): Q-slashbox from add-general
+ v3.8RC1, today
+
+2003-07-23 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): turned the 8-bit fonts
+ question upside down so as to emphasise cm-like fonts.
+ (section{Current TeX-related projects}): change section title, and
+ adjust emphasis in the textrace/mftrace answer (as well as moving
+ download addresses to the ctanrefs section)
+ (section{Current TeX-related projects}): new answer on ANT (to what
+ question? you may well ask :-), from add-general
+
+2003-07-22 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Particular font families}): new one on lm
+
+ * faqbody.tex (section{Hypertext and PDF}): add lm fonts to type1T1
+
+2003-07-21 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add lm fonts
+
+2003-07-18 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating citations}): \noopsort question
+
+ * faqbody.tex (subsection{Creating bibliographies}): mention the natbib
+ styles and custom-bib _above_ harvard :-}
+
+2003-07-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Adobe Type 1 ("PS") fonts}): mention cm-super
+ and hfbright as sources of type 1 cm bright
+
+ * dirctan.tex: add latex4jed; move mcite, mdwtools, mfnfss, ssqquote,
+ textfit and tocvsec2 up/down/sideways one; also multibbl and foiltex
+ on the nonfree tree; add hfbright
+
+ * faqbody.tex: v3.7.1a, today
+ (section{TeX Systems}): mention latex4jed
+
+2003-07-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: move minitoc, ms, multibib, nrc, ntheorem, rcs, rcsinfo,
+ refcheck, rotating, sectsty, showlabels, snapshot, sttools,
+ supertabular, titling and tocloft down one (or up one -- who cares?);
+ delete schroeder entry (pointing to the ms directory)
+
+ * faqbody.tex (two places): ctanref schroeder -> ms
+
+2003-07-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: move mparhack, ncctools, newlfm, oberdiek, soul and
+ tocbibind up one
+
+2003-07-09 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Current TeX-related projects}): minor
+ tidies
+ (subsection{Current TeX-related projects}): add a sentence on _why_
+ separation of languages might be a good thing
+
+2003-07-09 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add \textsf as a no-op (like \acro)
+
+ * add-general.tex (subsection{Typesetting specialities}): still more
+ tidying, after sleeping on the problem
+ (subsection{Current TeX-related projects}): (new title for the section)
+ new question on ANT
+
+2003-07-08 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Typesetting specialities}): another pass
+ over the wording of the advice in the \the_xxx_ question
+
+2003-07-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add 2-arg *'d \cmdinvoke
+
+ * add-general.tex (subsection{Typesetting specialities}): remove \emph
+ from the arguments of \csx in Q-the-commands
+
+ * dirctan.tex: move jknappen, jurabib and mailing down one level
+
+2003-07-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: move toppages, type1cm and ucthesis down one level
+
+2003-07-07 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add datetime; move memoir, utthesis, vector and vmargin
+ down one level
+
+2003-07-06 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macros}): add twoopt.sty to Q-twooptarg
+
+2003-07-05 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document structure}): tidy q-captsty (incl
+ documentation reference, and add reference to Q-atsigns in the early
+ bit about diy
+
+2003-07-04 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl4.7b, today
+
+ * add-general.tex (subsection{Typesetting specialities}): new question
+ on typesetting the time
+
+ * faqbody.tex (subsection{Creating bibliographies}): btxmac is actually
+ part of eplain; reference eplain, too
+
+2003-07-02 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add slashbox; move textpos, was, wordcount, wrapfig,
+ xtab and xymtex down from contrib/supported
+
+ * add-general.tex (subsection{Tables, figures and diagrams}): answer
+ containing a recommendation of slashbox (but presenting thomas lotze's
+ suggestion from textex_355 as an alternative)
+
+ * filectan.tex: add tocunscite (it's not there yet, mind)
+
+ * add-general.tex (subsection{Creating citations}): answer for unsrt
+ with table of contents (etc)
+
+ * faqbody.tex (section{Current TeX Projects}): added mailing list
+ details for pdftex from tug site
+ (section{The Background}): maillist address for MP (didn't know it had
+ one!)
+ (subsection{Alternative document classes}): scrlettr->scrlttr2
+
+2003-07-01 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of TeX}): reference docmfp in
+ Q-dtx (is this the right place for it?)
+ (section{The Background}): rewrite text about mp in pdflatex, including
+ making reference to Q-pdflatexgraphics rather than to the pdflatex
+ project itself
+ (section{Current TeX Projects}): update pdftex answer; still needs
+ reference for new mailing list sign-up
+
+ * dirctan.tex: add docmfp
+
+ * faqbody.tex: v3.7.1, today
+ (subsection{Spacing of characters and lines}): mention the justify
+ stuff in latest ragged2e
+ (subsection{Document structure}): mention fncychap's restriction re.
+ front/backmatter in Q-secthead
+
+2003-06-25 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macro programming}): aide-memoir
+ for vertical spacing commands in plain-in-latex
+
+2003-06-20 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: release...
+
+ * sanitize.pl (sanitize_line): corrections from -beta
+
+ * sanitize-beta.pl (sanitize_line): move \csx so it can appear in \Qref
+ (sanitize_line): correct \^e
+
+ * faqbody.tex (section{Hypertext and PDF}): reorganise reference to
+ dvisstrip
+ (subsection{Typesetting specialities}): minor editorial
+
+ * sanitize-beta.pl (sanitize_line): add \ensuremath
+
+ * faqbody.tex: v3.7, today (i'm determined...)
+ (section{Format conversions}): refer to hennings' faq via href, not an
+ entry in ctanrefs
+ (section{Hypertext and PDF}): minor editorial in fuzzy-type3
+
+2003-06-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: correct subeqnarray, subfigure, subfiles
+
+2003-06-18 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: correct arabtex, ifmslide, natbib, titlesec
+
+2003-06-17 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Typesetting specialities}): new question
+ on upright (Xterm-like) quotes
+
+ * filectan.tex: add upquote
+
+2003-06-16 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.7RC3, today
+ (section{Format conversions}): tidy up "others" question a bit, and add
+ mention of tex2word and word2tex; no longer first in section
+
+2003-06-15 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl4.7a, today
+
+ * add-general.tex (subsection{The Joy of TeX errors}): new answer on
+ 8000dpi gsftopk attempts
+
+ * faqbody.tex: 3.7RC2, today
+ (section{The joy of TeX errors}): non-PDF-special from add-general
+
+2003-06-14 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex: add ifmtarg
+
+ * add-general.tex (subsection{Macro programming}): empty arg answer
+
+2003-06-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.7RC1, today
+ (section{Hypertext and PDF}): replace q-dvips-pdf from add-general qs
+ (section{Installing (La)TeX files}): 4 font install answers ditto
+
+ * add-general.tex (subsection{Hypertext and PDF}): real error message
+ from dvips when font missing: not mentioning latest version, since
+ systems will have the fonts anyway
+
+2003-06-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): change reference to fuzzy
+ fonts question in "8-bit fonts"
+ (subsection{Typesetting specialities}): pseudocode, from add-general
+
+ * add-general.tex (subsection{Hypertext and PDF}): several editorial
+ and typographic changes
+
+2003-06-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.6.1d, today
+
+ * additions.tex: pl4.6b, today
+
+ * faqbody.tex (section{Graphics}): add graphics needed... from
+ add-general
+
+ * dirctan.tex: harvard, hyper, hyperref and hyphenat
+
+ * faqbody.tex (subsection{"Generic" macros}): minor edits of "spaces"
+
+ * add-general.tex (subsection{Installing (La)TeX files}): tidies of
+ some of these font answers
+ (subsection{Graphics}): minor edit
+ (subsection{Hypertext and PDF}): add proviso about acroread 6
+
+ * dirctan.tex: psfig change
+
+2003-06-09 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add urlbst
+
+ * faqbody.tex (subsection{Creating bibliographies}): mention urlbst in
+ Q-citeurl
+
+2003-06-08 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): reference to
+ Q-algorithms in Q-proglist; also be more positive still about listings
+ package (when did anyone last recommend lgrind?)
+
+ * add-general.tex (subsection{Hypertext and PDF}): minor edits
+ (subsection{Typesetting specialities}): minor adjustments
+
+2003-06-07 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.6.1c, today
+ (section{Hypertext and PDF}): mention pstill in q-pkfix
+ (section{The joy of TeX errors}): \$ needs {} (eh!?)
+
+2003-06-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{DVI Drivers and Previewers}): bitmap drivers
+
+ * add-general.tex (subsection{Hypertext and PDF}): split "quality of
+ pdf" into two, so all "problems" are on the same level; slight
+ editorials (some as a result of split)
+
+ * faqbody.tex: v3.6.1b, today
+ (subsection{Page layout}): page sizes from add-general;
+ (subsection{Tables, figures and diagrams}): table design from
+ add-general
+ (subsection{Common errors}): float ordering question from add-general
+
+ * add-general.tex (subsection{Typesetting specialities}): remove the
+ "short" option; tidy up description of algorithms bundle; mention
+ float.sty; write documentation notes
+ (subsection{Page layout}): minor editorial of page sizes
+
+ * dirctan.tex: bunch of directories contrib/supported->contrib
+
+2003-06-02 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl4.6a, today
+
+2003-06-02 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add algorithms,alg,newalg; junk old (cyrillic) "program"
+ in favour of pseudocode one for scott's answer(s); deal with labels,
+ lineno, listings, refman and wasysym (now links)
+
+ * add-general.tex (subsection{Typesetting specialities}): both
+ alternatives of scott pakin's take on algorithm typesetting
+
+ * faqbody.tex: today's date
+ (subsection{Typesetting specialities}): minor edit of q-codelist
+
+2003-06-02 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document structure}): mention doc of fncychap
+
+2003-06-01 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex: add topcapt
+
+ * add-general.tex (subsection{Tables, figures and diagrams}): new
+ design of tables answer
+
+ * dirctan.tex: add ctable
+
+ * faqbody.tex: v3.6.1a, today
+ (subsection{Footnotes}): reference ctable.sty in footintab
+
+2003-05-21 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Graphics}): more editorial, mentions of
+ dvipdfm
+
+2003-05-20 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): further
+ iterations, including reference to new bluesky-maps in place of clunky
+ instructions on generating the beastly things
+
+ * dirctan.tex: add bluesky-maps
+
+ * add-general.tex (subsection{Hypertext and PDF}): move Q-fuzzy-t1 up
+ one so questions are in order of itemize
+
+2003-05-20 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Hypertext and PDF}): editorial work on
+ quality; put related answers into an itemize
+ (subsection{Installing (LaTeX files}): editorial work on bluesky
+
+2003-05-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: move mflogo and moreverb "down one"
+
+2003-05-18 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): mention mp doesn't need help from
+ psfrag
+
+2003-05-16 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): mention winedt
+ changebar macros
+
+2003-05-16 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): add "revision bars" to
+ Q-changebars
+
+2003-05-15 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Page layout}): new question on paper size
+
+2003-05-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.6, today
+
+ * add-general.tex (subsection{Graphics}): trim ps+pdf graphics q title
+
+ * faqbody.tex: v3.6.1, today
+ (subsection{Typesetting specialities}): add highlight to Q-codelist
+
+ * dirctan.tex: add highlight
+
+2003-05-13 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: collapse koma-script address
+
+ * sanitize.pl,sanitize-beta.pl (sanitize_line): correct \^E->\^e, bring
+ sanitize.pl up to date
+
+ * faqbody.tex (section{Documentation and Help}): texhax now at tug.org
+ (subsection{Spacing of characters and lines}): mention \centering in
+ "cancelling ragged" question
+
+2003-05-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Common Errors}): slight diddle on
+ fixltx2e question
+
+2003-05-11 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add hvfloat
+
+2003-05-10 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add fnbreak; bunch of contrib/supported directories ->
+ contrib directories, and also picked up other link directories
+ (allowing some to remain links for clarity)
+
+ * faqbody.tex: 3.6RC5, today
+ (subsection{Common misunderstandings}): mention fnbreak in q-splitfoot
+
+2003-05-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.5f, today
+
+ * add-general.tex (subsection{DVI drivers and previewers}): editorials
+ (subsection{Common Errors}): new question on fix2col/fixltx2e
+
+2003-05-05 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl4.5e, today
+
+ * add-general.tex (subsection{The Joy of TeX errors}): answer on
+ "unknown special ignored"
+
+ * sanitize-beta.pl (sanitize_line): add ê
+
+2003-05-03 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{DVI drivers and previewers}): minor typos
+ and editorial corrections
+ (subsection{Graphics}): mention dvipdfm option, and auto driver
+ selection, in q about ambivalent output generation
+
+2003-05-02 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Alternative document classes}): correct
+ spelling of résumé
+
+2003-04-22 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * Makefile (clean): add *.png
+
+ * add-general.tex (subsection{DVI drivers and previewers}): bunch of
+ tidies in this and other questions answered recently
+
+ * additions.tex: pl4.5d, today
+
+2003-04-21 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex: correct tex4ht-mn.zip, remove usergrps-list
+
+ * dirctan.tex: remove geralpha, which has gone from the archive
+
+ * check-ctan-lists: make to work on gordon
+
+ * dirctan.tex: add dvipng
+
+ * add-general.tex (subsection{Hypertext and PDF}): new Q-fuzzy-t1 on
+ the effect of type3 fonts when switching to T1
+ (subsection{DVI drivers and previewers}): new Q-dvi-bmp
+
+2003-04-20 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Hypertext and PDF}): replacement `quality
+ of PDF' answer (part 1)
+ (subsection{Hypertext and PDF}): Q-gs-pdfqual (part 2 of same)
+ (subsection{Hypertext and PDF}): Q-distill-prob (part 3 of same)
+
+2003-04-17 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): Add \FontName
+
+ * faq.sty: add \FontName
+
+ * add-general.tex (subsection{Installing (La)TeX files}): yet more on
+ Q-instprinterfont
+
+2003-04-16 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Particular font families}): move mathtime
+ back where it started!
+ (subsection{Installing (La)TeX files}): more on Q-instprinterfont
+
+2003-04-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2file: name question files by label, rather than by number; add
+ web link for question at end; change regexp for \Question to require
+ label, and to return it alone as $1 (did have [] too); remove
+ provision for generating a list of all questions
+
+ * faqbody.tex: v3.6RC4, today
+ (subsection{Why shouldn't I?}): Q-eqnarray from add-general
+ (section{Bits and pieces of \TeX}): Q-adobetypen from add-general
+ (subsection{LaTeX macros}): Q-spaftend, Q-cmdasenv from add-general
+
+2003-04-13 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl4.5c, today
+
+ * faqbody.tex (section{Documentation and Help}): more on how to ask a
+ question
+ (section{Graphics}): mention graphicx.tex as well as miniltx
+
+2003-04-12 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing AllTeX files}): installing
+ mathtime, back from faqbody (not ready for prime time: reinstate when
+ new version released so it appears in beta again
+ (subsection{Bits and pieces of TeX}): new q-adobetypen on font formats
+
+ * filectan.tex: contrib/other/fragments -> contrib/fragments
+
+ * dirctan.tex: remove "other" (whole contrib/other directory!); move
+ all contrib/other stuff down to contrib
+
+2003-04-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: introduce \ifusePSfont, set true if using times
+
+ * faqbody.tex (subsection{Adobe Type1 ("PS") fonts}): remove reference
+ to fonts/psfonts in Q-metrics
+
+2003-04-10 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): add mpsproof to question on mp
+ output in ghostscript
+
+ * filectan.tex: add mpsproof
+
+2003-04-09 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * filectan.tex: latex/contrib/(other|supported)/misc -> contrib/misc
+
+2003-04-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): only options now, in
+ Q-CD, are texlive and the ctan cds.
+
+2003-04-07 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): dvistrip corrected to
+ dvipsstrip
+
+ * dirctan.tex: remove fonts/psfonts
+
+ * faqbody.tex (subsection{Adobe Type 1 (postscript) fonts}): remove
+ reference to psfonts directory
+
+ * add-general.tex (subsection{Macro programming}): slight elaboration
+ of command-as-env question
+ (subsection{Macro programming}): move Q-spaftend in here
+ (subsection{LaTeX macro programming}): moved up (with one so far
+ incoherent question) so as to redesignate previous two questions as
+ latex
+
+2003-04-06 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Macro programming}): finally a usable
+ question on commands-as-environments, Q-cmdasenv
+
+2003-04-04 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): slight tidy Q-dvips-pdf
+
+ * add-general.tex (subsection{Why shouldn't I?}): new Q-eqnarray
+
+2003-04-03 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.6RC3, today
+ (subsection{Typesetting specialities}): add discouragement of the use
+ of path.sty with latex
+
+2003-04-02 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why does it do that?}): new Q-spaftend
+
+2003-03-31 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: oops -- remove line break in decl of psnfssx-mathtime
+
+ * faqbody.tex: v3.6RC2, today
+ (subsection{Creating bibliographies}): add Q-bibcase from add-general
+ (subsection{Mathematics}): add Q-limits and Q-mathlips from add-general
+ (subsection{Particular font families}): add Q-mathtime from add-general
+
+ * add-general.tex (subsection{Mathematics}): add csnames as keywords
+ for Q-mathlips
+ (subsection{Mathematics}): \CTANref for graphics.sty
+
+ * additions.tex: pl4.5b, today
+
+ * add-general.tex (subsection{Creating bibliographies}): small changes,
+ plus text-wrapping in verbatim examples
+
+2003-03-30 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Creating bibliographies}): new Q-bibcase
+
+2003-03-29 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Mathematics}): revise reference to
+ \DeclareMathOperator with reference to Q-limits
+
+ * filectan.tex: add T1instguide
+
+ * add-general.tex (subsection{Installing (La)TeX files}): add reference
+ to lehman's guide
+ (subsection{Mathematics}): new question Q-limits
+
+2003-03-28 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add yhmath-(fonts|macros)
+
+ * add-general.tex (subsection{Mathematics}): new question on ellipses
+
+ * filectan.tex: add mathdots
+
+ * faqbody.tex: v3.6RC1, today
+ (section{The joy of TeX errors}): Q-formatstymy from add-general
+
+ * add-general.tex: tidy after removing questions
+
+ * faqbody.tex (section{Graphics}): typos in Q-graphicspath
+ (subsection{Document structure}): typos in Q-captsty
+ (subsection{Alternative document classes}): missing close paren in Q-cv
+ (section{The joy of TeX errors}): Q-bufovfl from add-general
+ (subsection{Mathematics}): Q-mathsize from add-general
+
+2003-03-27 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.5.1c, today
+
+ * filectan.tex: add ltablex
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): refer
+ disparagingly to ltablex.sty
+
+2003-03-27 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: removed beginlatex again, having changed policy
+
+ * faqbody.tex (section{Documentation and Help}): update tutorials to
+ reference "production" version of beginner's latex
+
+ * dirctan.tex: mps2eps
+
+ * faqbody.tex (section{Graphics}): reference mps2eps in "mp output in
+ gs" question
+
+2003-03-26 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: info/beginlatex
+
+2003-03-25 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.5a, today
+
+ * add-general.tex (subsection{Mathematics}): new, Q on
+ \DeclareMathSizes
+
+ * sanitize-beta.pl (sanitize_line): add a 5-argument form of \cmdinvoke
+
+2003-03-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): new, on format
+ error stymying
+
+2003-03-20 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.5.1b, today
+ (subsection{Lists}): change \parsep to \parskip in patched definition
+ of itemize in q on compacting lists
+ (section{Introduction}): added simon law to list of helpers
+
+2003-03-17 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Particular font families}): added a
+ miktex url for font map management
+
+2003-03-15 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.5.1a, today
+
+ * filectan.tex: add excludeonly
+
+ * faqbody.tex (subsection{Document management}): mention excludeonly in
+ Q-conditional
+
+2003-03-12 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): add a couple of keywords to
+ Q-dvips-pdf (at scott pakin's suggestion)
+
+2003-03-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): minor editorial
+ on Q-buffov
+
+ * faqbody.tex: v3.5.1, today
+
+2003-03-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): up-to-date with sanitize.pl
+
+ * sanitize.pl (sanitize_line): bunch of "g" qualifiers missing on and
+ after patterns for \cmdinvoke, and on \csx
+
+ * faqbody.tex (section{Documentation and Help}): typo in Q-pkgdoc
+ (section{Documentation and Help}): typo in Q-mfptutorials
+ (section{Current TeX Projects}): separate "real" ~ from url so as to
+ avoid hacking by sanitize
+ (section{Current TeX Projects}): couple of typos in Q-mathml
+ (section{Current TeX Projects}): \textpercent mayn't be followed by {},
+ so use \ for space
+ (section{The joy of TeX errors}): several small typos
+
+ * Makefile (clean): add *.tpt (thumbpdf-related, afaict)
+
+ * sanitize.pl: bring up to date with -beta
+
+ * Makefile.CTAN: remove references to .lab files
+
+ * additions.tex: pl4.5, today
+
+ * add-general.tex (subsection{The Joy of TeX errors}): minor
+ tidies of Q-buffov
+
+ * faqbody.tex: 3.5, today
+ (section{Hypertext and PDF}): tidy stuff in the distillation question
+
+2003-03-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2file: bring up-to-date, too
+
+ * texfaq2html: brought up-to-date with texfaq2html-beta
+
+ * texfaq2html-beta: removed presetting of value in search fields
+
+ * faqbody.tex (subsection{MF fonts}): editorials on bitmap fonts q
+
+ * dirctan.tex: correct path for gsview
+
+ * faqbody.tex: 3.5RC1, today
+ (section{Hypertext and PDF}): implement jose santos' remark about AR
+
+2003-03-08 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex: add latexcount
+
+ * faqbody.tex (section{Support Packages for TeX}): mention latexcount
+ (section{Current TeX Projects}): use revised name for mftrace (was
+ pktrace)
+
+2003-03-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (subsection{Why shouldn't I?}): \ss now now {} after it...
+
+ * sanitize-beta.pl (sanitize_line): stupid change to \ss
+
+ * texfaq2html-beta: patch in the google searching stuff
+
+2003-03-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.4b.4, today
+ (subsection{Why shouldn't I?}): new subsection of "why does it do that"
+
+2003-03-05 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add psnfssx-mathtime, and remove a couple of essentially
+ defunct mathtime directories
+
+ * add-general.tex (subsection{Particular font families}): start of
+ question on installing mathtime
+
+2003-03-02 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): mention \epsfig in Q-impgraph
+
+2003-03-01 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl4.4c, yesterday
+
+ * faqbody.tex: v3.4b.3, today
+ (section{TeX Systems}): yet more mucking about with the words about
+ tetex
+
+ * dirctan.tex: tetex2->tetex, using current/ rather than 2.0/; restore
+ tetex-beta
+
+ * faqbody.tex (section{Graphics}): mention withdrawal of tiff from
+ pdftex graphics
+
+2003-02-28 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): add decoding of \hphantom --
+ converted to (another) gobble operation
+ (sanitize_line): don't detect an argument in regexps for \hphantom and
+ \nothtml (efficiency only)
+
+ * filectan.tex: delete wrapfig
+
+ * dirctan.tex: add wrapfig's new directory
+
+ * faqbody.tex (subsection{Creating bibliographies}): Reconstructing bib
+ files from add-general
+ (section{Graphics}): graphics from somewhere else, from add-general
+
+ * add-general.tex (subsection{Why shouldn't I}): oops: subsection
+ rename didn't take
+
+ * faqbody.tex (section{Hypertext and PDF}): mention cm-super in type1T1
+
+2003-02-27 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta: add $host_[fd] for use in generate_CTAN_ref
+
+ * sanitize-beta.pl (generate_CTAN_ref): tidy generation of http
+ references (which were ending up on $default_archive)
+
+2003-02-26 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Why shouldn't I?}): renamed from
+ "encoding" -- will go into "why does it _do_ that"
+ new question on why not use $$ for display maths in latex
+
+ * faqbody.tex (section{Graphics}): correct \href in mentions of
+ hutchinson's paper
+
+2003-02-25 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.4b, today
+
+ * sanitize-beta.pl (sanitize_line): add \ss{}
+
+ * add-general.tex (subsection{Encoding (?~--- new)}): questions on
+ t1enc and on eliding inputenc-fontenc when the codings nearly match
+
+ * faqbody.tex: v3.4b.2, today
+ (section{Graphics}): reference to hutchinson's graphics inclusion paper
+
+2003-02-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * filectan.tex: correct simpl-latex
+
+ * dirctan.tex: add dvi2bitmap
+
+2003-02-21 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): corrected the address
+ for eric raymond on questions to get answers
+
+2003-02-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta: add skip links to top of search, top of list of
+ questions, at very start, if the (now very long) intro is present
+
+2003-02-15 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): describe \jobname as a
+ primitive, not a "special macro"
+
+2003-02-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Floating tables, figures, etc.}): prevent
+ \normalfont in the description env in Q-vertposfp \nothtml (also done
+ as running repair on source on web site)
+
+2003-02-13 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta: remove extensive (but hugely incomplete) change log
+ at front of file; move def of $default_web, and define $href_script in
+ terms of it; two minor corrections to previous work
+
+2003-02-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.4b.1, today
+ (section{Hypertext and PDF}): put comment from jose carlos santos in as
+ reminder of work needing to be done; note that gs8.00 is current (and
+ the date of the statement ;-), and claim that gs6.50 is the minimum
+ sensible; add proviso to recommendation of -G1
+
+2003-02-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta: set up protocols for new sanitize
+
+ * texfaq2file: some updating w.r.t. latest texfaq2html
+
+ * sanitize-beta.pl (generate_CTAN_ref): use of different protocols for
+ different things
+
+ * add-general.tex (subsection{The Joy of TeX errors}): minor typo
+
+2003-02-09 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: date today
+
+ * add-general.tex (subsection{Graphics}): and a bit more, to make the
+ thing make sense
+ (subsection{The Joy of TeX errors}): line too long for buffer error
+
+2003-02-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Graphics}): slight edit of yesterday's
+ question, to avoid bad line break
+
+ * dirctan.tex: add tex2bib
+
+ * add-general.tex (subsection{Creating bibliographies}): new question
+ on regenerating bibliographies
+
+2003-02-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.4a, today
+
+ * add-general.tex (subsection{Graphics}): new question on \graphicspath
+
+2003-02-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: remove provisions for .lab files
+
+ * all: checkin/release
+
+ * faqbody.tex: changed date in first line
+
+2003-02-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): \ctanref to tetex (per se)
+ upgraded in windows section (talking about cygwin usage)
+
+2003-02-04 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: update tds
+
+ * faqbody.tex: v4.3b, today
+ (section{Bits and pieces of TeX}): more tidying
+
+2003-02-04 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): reword talk about tetex around
+ current state of tetex2
+
+ * dirctan.tex: remove both instances of tetex 1.0
+
+2003-02-03 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of TeX}): updated tds stuff,
+ after announcement of tds v1.0
+
+2003-01-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: replace \CTAN with \@ctan@path
+
+ * faqbody.tex: v3.4, today
+ (subsection{Typesetting specialities}): typo in Q-makeindex
+ (subsection{Typesetting specialities}): minor editorial in Q-verbfile
+ (subsection{Odds and ends}): there's no \CTAN macro! (error spotted by
+ Charles Cameron, in Q-bold-extras)
+ (section{Introduction}): credit CC, and now ... v3.4a
+
+2003-01-27 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): minor change to ensure match
+ between -beta and master version
+
+ * texfaq2html-beta: match with master version (as far as poss)
+
+ * faqbody.tex: 3.4RC4, today
+ (subsection{Page layout}): slightly less absolutist about samepage
+ environment in Q-nopagebrk
+
+2003-01-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.4RC3, today
+ (section{TeX Systems}): add reference to tetex release candidates
+ (subsection{Page layout}): rewrite Q-abspos, to mention eso-pic
+ solution (which i learnt on c.t.t today)
+ (subsection{Page layout}): corrected statement of relation between
+ eso-pic and everyshi in Q-watermark
+
+ * dirctan.tex: make testflow a browsable directory; add tetex2
+
+ * add-general.tex (subsection{Alternative document classes}): comment
+ on texpower expanded somewhat (must _really_ work on this some time)
+
+2003-01-21 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: ifmslide
+
+ * add-general.tex (subsection{Alternative document classes}): make
+ reference to ifmslide (whatever that is)
+
+2003-01-17 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: 3.4RC2, today
+ (section{Adjusting the typesetting}): use a formulation of don
+ arseneau's for \sectionmark, in Q-runheadtoobig
+
+2003-01-16 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add the catalogue
+
+ * faqbody.tex (section{Acquiring the Software}): minor tidy in
+ Q-nonfree
+ (section{Acquiring the Software}): make reference to the catalogue in
+ Q-websearch
+
+ * additions.tex: pl4.3i, today
+
+ * faqbody.tex: v3.4RC1, today
+
+ * sanitize.pl (generate_CTAN_ref): bring in updates from -beta
+
+ * texfaq2html: bring in updates from -beta
+
+ * faqbody.tex (section{The Background}): correct web address for
+ context
+ (section{Documentation and Help}): correct web address for metafun
+ (subsection{Footnotes}): Q-multfoot from add-general
+ (section{Acquiring the Software}): correct address for dante's upload
+
+2003-01-15 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.3q, today
+ (section{Adjusting the typesetting}): slight adjustment of the text
+ referring to \sectionmark in runheadtoobig
+
+2003-01-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta: split keyword lists and examine each separately,
+ case-independently (even)
+
+ * faqbody.tex (section{Documentation and Help}): \url->\URL in writecls
+
+2003-01-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.3p, today
+
+ * additions.tex: pl4.3h, today
+
+2003-01-05 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add ncctools
+
+ * add-general.tex (subsection{Installing (La)TeX files}): editorial
+ work on the type1 cm fonts installation stuff.
+ (subsection{Footnotes}): question whose answer is manyfoot
+
+ * faqbody.tex (section{Installing (La)TeX files}): mention /usr/local/
+ share/texmf (suggestion from julian gilbey), and also suggest
+ kpsewhich as a source of the information for a tetex system
+
+2002-12-28 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing LaTeX files}): tidying
+ (perhaps even finishing!) the type 1 cmfonts installation question
+
+2002-12-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): more work on
+ cmfonts answer
+
+2002-12-17 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Floating tables, figures, etc.}): Q-dpfloat,
+ Q-vertposfp from add-general
+
+ * faq.sty: try forcing \l@section/\l@subsection onto next page if not
+ enough space (retracted ...)
+
+2002-12-09 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing (La)TeX files}): more work on
+ "installing CM type1" question
+
+2002-12-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (generate_CTAN_ref): provide link terminator, in
+ case that the link doesn't have $ctanref_plus set true
+
+ * texfaq2html-beta: forget about label "lastquestion", correct coding
+ of next/previous links in case of last question
+
+2002-12-04 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize-beta.pl (sanitize_line): first hopeful stab at multiple
+ formats (new file, copy of sanitize.pl)
+
+ * texfaq2html-beta: first stab at provision for multiple format
+ directory retrieval
+
+2002-12-03 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.3g, today
+
+ * add-general.tex (subsection{Floating tables, figures, etc.}): new
+ Q-vertposfp
+
+2002-11-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.3o, today
+ (section{Documentation and Help}): move \CTANref of teencontrex to list
+ at end of question
+ (section{Documentation and Help}): refer to bibtex-doc-pdf in bibtex
+ docs question
+ (section{Format conversions}): move ref to html2latex to ctanrefs
+ (section{TeX Systems}): separate vtex-common in ctanrefs (twice)
+ (subsection{\MF fonts}): tidy up references in "running mf" q
+ (subsection{Document structure}): move ctan reference for abstract.sty
+ in Q-onecolabs
+ (section{Current TeX Projects}): move reference to ltx3pub
+ (subsection{Alternative document classes}): slight modification of ctan
+ references in Q-letterclass
+
+ * dirctan.tex: add bibtex-doc-pdf
+
+2002-11-26 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.3f, today
+
+ * faqbody.tex: v3.3n, today
+ (subsection{Document structure}): Q-pagebychap from add-general
+ (section{Documentation and Help}): Q-pkgdoc from add-general
+
+ * add-general.tex (subsection{Floating tables, figures, etc.}): new
+ answer Q-dpfloat
+ (subsection{Page Layout}): minor editorial
+
+ * faqbody.tex (subsection{Tables of contents and indexes}): refer to
+ spliti[n]d[e]x in Q-multind
+
+ * dirctan.tex: add splitindex
+
+2002-11-25 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Adobe Type1 ("PS") fonts}): more editorials
+
+2002-11-24 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl4.3e, today
+
+ * add-general.tex (subsection{Documentation and help}): editorial
+ corrections to documentation question
+
+ * faqbody.tex
+ (throughout): editorial corrections noted on train...
+
+2002-11-23 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex: add chappg
+
+ * add-general.tex (subsection{Page Layout}): new question on page nos
+ by chapter
+
+2002-11-22 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Documentation and help}): new question on
+ package documentation
+
+ * faqbody.tex (section{Bits and pieces of TeX}): slight tidy of Q-dtx
+
+2002-11-21 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Alternative document classes}): point at
+ miwie.org comparison of things in Q-slidecls
+
+ * faqbody.tex (subsection{Mathematics}): add example of coding \qedhere
+ in Q-proof
+
+2002-11-20 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.3l, today
+ (subsection{Mathematics}): typo left "i" at very end of answer
+ (subsection{Typesetting specialities}): note documentation of path and
+ url in Q-setURL
+ (subsection{Common errors}): note documentation of url and verbdef in
+ Q-verbwithin
+
+2002-11-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.3k, today
+ (subsection{Typesetting specialities}): Q-overstrike from add-general
+ (subsection{Mathematics}): Q-cancel from add-general
+ (subsection{Hyphenation}): typo in Q-hyphoff
+
+2002-11-18 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add eso-pic; remove ref2bib (which has gone, and whose
+ replacement's name i've forgotten)
+
+ * faqbody.tex (subsection{Page layout}): separate references to eso-pic
+ and everyshi
+
+2002-11-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.3j, today
+ (subsection{Page layout}): mention \filbreak in question about
+ suppressing page breaks
+ (subsection{Making things stay where you want them}): mention the
+ (common) need to load ulem with normalem option
+
+ * additions.tex: pl4.3d, today
+
+ * filectan.tex: add cancel
+
+ * add-general.tex (subsection{Mathematics}): cancel.sty
+ (subsection{Typesetting specialities}): overstriking
+
+2002-11-13 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.3i, today
+ (subsection{Common misunderstandings}): make clear what is actually
+ being redefined with \usepackage[overload]{textcase}
+
+2002-11-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.3c, today
+
+ * add-general.tex (subsection{Installing (La)TeX files}): more scribble
+ on installing font files
+
+ * faqbody.tex: v3.3h, today
+ (section{Installing (La)TeX files}): correct location of font source
+ files, and mention font families all in one directory
+
+2002-11-10 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Creating bibliographies}): a bit more on the
+ capitalisation question
+
+2002-11-09 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.3g, today
+ (section{The Background}): tidy eplain answer and add reference to the
+ project home page
+
+2002-11-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): minor typo in
+ non-html stuff on wrapfigure
+ (subsection{"Generic" macros}): slight iteration of active chars q
+ v3.3f, today
+
+2002-11-05 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros}): hacking to get html right
+ in active chars question
+
+ * sanitize.pl (sanitize_line): remove requirement for {} after \textbar
+
+2002-11-01 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.3b, today
+
+ * add-general.tex (subsection{Installing (La)TeX files}): another whole
+ paragraph for the question about installing fonts
+
+ * faqbody.tex: v3.3e, today
+ (subsection{LaTeX macros}): make reference to newcommand in the
+ question about multiple optional arguments
+
+ * dirctan.tex: add newcommand
+
+ * faqbody.tex (subsection{"Generic macros}): more work on don A's
+ stuff
+
+2002-10-30 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{"Generic" macros}): mods to make tilde appear
+ in html output...
+ (subsection{"Generic" macros}): first pass at getting don A's revised
+ answer for activechars in (much interrupted -- needs checking)
+
+2002-10-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Lists}): Q-interruptlist from add-general
+ v3.3d, today
+
+2002-10-17 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.3a, today
+
+ * add-general.tex (subsection{Lists}): new question on suspending and
+ resuming lists
+
+ * faqbody.tex: v3.3c, today
+ (section{Format conversions}): add mayer.dial.pipex.com samples url to
+ latex->html question (they *really* make tex4ht look good ;-)
+
+2002-10-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add rcsinfo
+
+ * faqbody.tex: v3.3b, today
+ (subsection{Document management}): refer to rcsinfo (ex norman gray)
+
+ * Makefile (throughout): tabs before thumbpdf and following $(PDFLATEX)
+ seem to have gone missing -- reinstated
+
+2002-10-12 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * Makefile: add heiko's modification to run thumbpdf
+
+ * faq.sty: new version from heiko; slight patch to do \@ReturnAfterFi
+ at outer level since i'm experiencing problems with it where he had
+ defined it
+
+ * faqbody.tex (subsection{Document structure}): add a proviso about
+ sections in the question on marks different from the toc entry
+ (section{Symbols, etc.}): mention euro-ce
+
+2002-10-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: added euro-ce
+
+2002-10-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.3, today
+
+2002-10-06 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * newfaq-patch.tex: remove a redundant \Dings
+
+ * add-general.tex (subsection{LaTeX macro programming}): bit more of
+ non-equivalences between latex and plain commands
+
+ * faqbody.tex (subsection{Page layout}): parallel setting from
+ add-general
+
+ * add-general.tex (subsection{Page layout}): remove reference to nrc
+ classes in parallel setting question (they're not _that_ wonderful in
+ this context)
+
+2002-10-01 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Bits and pieces of TeX}): give skips
+ question a label (warned by new faq.sty ;-)
+
+ * Makefile.CTAN (all): add (letterfaq|newfaq).lab, remove
+ newfaq.workers
+
+ * Makefile (clean): remove pdf-newfaq-patch.tex, *.lab
+
+ * newfaq.tex,newfaq-patch.tex,letterfaq.tex: \labellist
+
+ * faq.sty: added \labellist stuff; make \Question complain if no label
+
+ * faqbody.tex (throughout): final touches to last night's additions
+
+2002-09-30 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): add nopagebrk from add-general
+ (subsection{Hyphenation}): add wdnohyph from add-general
+ (subsection{Floating tables, figures, etc.}): 2 >1 column floats
+ questions from add-general
+ (section{Graphics}): topgraph from add-general
+ (subsection{Document management}): inclplain from add-general
+ (section{Symbols, etc.}): tradesyms from add-general
+
+2002-09-30 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.2e, today
+ (subsection{Adobe Type 1 ("PS") fonts}): put version number on the
+ dvips that doesn't do charshift
+
+ * add-general.tex (subsection{Alternative document classes}): start
+ question on producing slides
+
+ * dirctan.tex: move foiltex to nonfree, to reflect reality, add
+ prosper, ppower4
+
+2002-09-29 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: today's date, no change of version
+
+ * add-general.tex (subsection{Page layout}): question on parallel
+ setting of texts
+
+ * dirctan.tex: add parallel
+
+2002-09-27 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Symbols}): new question on trade symbols
+
+ * additions.tex: pl4.2i, today
+
+2002-09-26 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl4.2h, today
+
+ * add-general.tex (subsection{Floating tables, figures, etc.}): new
+ questions about single-column floats in multicols, and bottom-
+ placement of double-column floats in twocolumn
+
+2002-09-25 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Graphics}): new answer on top-aligning
+
+ * additions.tex: pl2.4g, today
+
+ * faqbody.tex: v3.2d, today
+ (section{Documentation and Help}): small tidying of book list
+
+ * add-general.tex (subsection{Page Layout}): mention \enlargethispage
+ in "keeping things together on the page"
+ (subsection{LaTeX macro programming}): expand for tidiness sake
+
+2002-09-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.2f, today
+
+ * faqbody.tex: v3.2d, today
+ (subsection{Document structure}): two questions from add-general
+ (subsection{Document management}): how many pp, from add-general
+ (section{Graphics}): limit width, from add-general
+ (subsection{Floating tables, figures, etc.}): extra vertical space from
+ add-general
+
+ * add-general.tex (throughout): several minor editorials
+
+2002-09-23 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macros}): question plain commands
+ in latex code
+ (subsection{How do I \dots{}?~--- somewhere}): plain.sty question
+
+ * faqbody.tex (section{How do I do ...?}): another change of name
+
+2002-09-20 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Floating tables, figures, etc.}): new section
+ heading for explicit float things (currently only floats on their own
+ float pages)
+
+ * add-general.tex (subsection{Graphics}): limit graphics width to page
+ (subsection{Floating tables, figures, etc.}): witter about vertical
+ space in figures
+
+ * additions.tex: pl4.2e, today
+
+ * faqbody.tex (subsection{Page layout}): slight tidy of watermark q's
+ ctanrefs env
+
+ * dirctan.tex: add totpages
+
+ * add-general.tex (section{Where? --- sort of support?}): "number of
+ pages in the document?" answer
+
+2002-09-18 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): booktabs _is_
+ now compatible with at least some other table packages...
+
+ * add-general.tex (subsection{Document structure}): add "page n of m"
+
+ * filectan.tex: add mtw
+
+ * faqbody.tex (section{Documentation and Help}): mention mtw on ctan
+
+2002-09-17 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.2c, today
+ (section{Documentation and Help}): restore "making tex work" in the
+ books section, note that it's out of (print|date), and add link to
+ tutorials, which now lists sourceforge url
+
+2002-09-16 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Document structure}): new question about
+ fitting text into the running head.
+
+ * faqbody.tex: v3.2b, today
+ (section{TeX Systems}): mention some vim scripts
+ (subsection{Mathematics}): moved Q-braket in here
+ (subsection{Page layout}): moved "changing margins" in here
+
+
+2002-09-15 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add pdftricks
+
+ * faqbody.tex (section{Graphics}): reference pdftricks in the answer
+ about alternative drawing systems
+
+2002-09-13 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): tidy up "editors" entry for
+ ms-dos (for tidiness' sake, rather than because of the intrinsic
+ importance of the subject matter ;-)
+
+2002-09-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.2a, today
+ (section{TeX Systems}): text on vim from schröcker
+ (section{Introduction}): mention schröcker
+
+ * add-general.tex (subsection{Hyphenation}): rather feeble answer on
+ suppressing hyphenation of words
+
+ * dirctan.tex: concmath is in supported...
+
+ * additions.tex: pl4.2d, today
+
+ * filectan.tex: add needspace, add .gz to latex209.tar
+
+ * add-general.tex (subsection{Page Layout}): complete \needspace
+ question
+
+2002-09-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Page Layout}): start of a question on
+ keeping things on the same page
+
+ * faqbody.tex (section{Graphics}): typo in dvipsgraphics
+
+2002-09-10 Robin Fairbairns <rf@shep.cl.cam.ac.uk>
+
+ * faq.sty: tidy up after stupidity working on text annotations in
+ pdf version (which preserved as botched-faq.sty)
+
+2002-09-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{LaTeX macros}): typo in "finding macros"
+ v3.2, today
+
+2002-09-09 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Spacing of characters and lines}): remove
+ reference to tracking.sty, following notice of its bug
+
+2002-09-09 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.2c, today
+
+ * faqbody.tex: v3.1c, today
+ (subsection{Creating citations}): "References from the bibliography to
+ the citation" from add-general
+ (section{Graphics}): "Labelling graphics" from add-general
+ (subsection{LaTeX macros}): "The definitions of LaTeX commands" from
+ add-general
+ (section{The joy of TeX errors}): add "missing $" and "font shape not
+ available" from add-general
+
+ * add-general.tex (subsection{LaTeX macros}): editorial
+ (subsection{The Joy of TeX errors}): editorial
+ (subsection{Bibliographies (somewhere)}): editorial
+ (subsection{Graphics}): editorial
+
+ * faq.sty: add a \toclevel@question with a view to shutting hyperref up
+ a bit
+
+ * faqbody.tex (subsection{Page layout}): bit more description of
+ eso-pic (from a post by rolf niepraschk)
+
+2002-09-08 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document structure}): since i'm more informed
+ about titlesec, i might as well instruct the world as well... (losing
+ the reference to titletoc in passing -- dunno about that yet)
+
+ * dirctan.tex: add citeref
+
+ * add-general.tex (subsection{Bibliographies (somewhere)}): backwards
+ reference to citation answer
+
+ * additions.tex: pl4.2b, today
+
+ * add-general.tex (subsection{The Joy of TeX errors}): answer on font
+ substitution messages (at long last!!!)
+
+ * filectan.tex: add type1ec
+
+ * dirctan.tex: add type1cm
+
+ * faqbody.tex: v3.1b, today
+ (subsection{Particular font families}): incorporate small correction
+ from José Carlos Santos
+
+2002-09-07 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: add overpic
+
+ * add-general.tex (subsection{Graphics}): first stab at answer on
+ overlaying text on figures
+
+2002-09-06 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The Joy of TeX errors}): $ missing answer
+
+2002-09-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macros}): tidy and slightly expand
+ yesterday's work
+
+2002-09-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Graphics}): add a label Q-impgraph
+ v3.1a, today
+ (section{Documentation and Help}): added "a tex primer for scientists"
+ (section{Introduction}): add Hartmut Henkel to list of helpers
+ (section{Literate programming}): promote noweb (which supersedes
+ spidery web)
+ v3.1a.1 (patched prior to re-release)
+
+ * additions.tex: pl4.2a, today
+
+ * add-general.tex (section{LaTeX macros}): tweak finding macro question
+
+2002-09-05 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{LaTeX macros}): new answer: finding macro
+ definitions
+
+2002-09-04 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Alternative document classes}): "replacing
+ the standard classes" from add-general
+ (subsection{LaTeX macros}): "presentation of section numbers" from
+ add-general
+
+ * add-general.tex (subsection{LaTeX macros}): editorial on seccntformat
+ answer
+
+ * faqbody.tex: v3.1, today
+ (section{Documentation and Help}): replace mention of uk tug (after
+ list of books) with notes on contributing
+ (section{Acquiring the Software}): editorial stuff; remove reference to
+ decus tape distribution
+ (section{\acro{DVI} Drivers and Previewers}): remove reference to decus
+ distribution holding a copy of dvips
+ (section{Format conversions}): remove troff translator in decus dist
+
+2002-09-03 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{LaTeX macros}): add actual body to
+ \@seccntformat question
+
+ * filectan.tex: add sober
+
+ * add-general.tex (subsection{Alternative document classes}): editorial
+ on standard classes answer
+
+ * dirctan.tex: add pstoedit and purifyeps
+
+ * faqbody.tex (section{Graphics}): mention purifyeps in pdf question,
+ as route to something includable by pdflatex
+
+2002-09-03 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.0.1v, today
+ (section{Documentation and Help}): moved ctan references out to
+ ctanrefs env after book list
+
+ * additions.tex: pl4.1m, today
+
+ * add-general.tex (subsection{Alternative document classes}): long-
+ awaited answer on ntgclass, koma-script and memoir
+
+ * faqbody.tex (subsection{"Generic" macros}): defining characters,
+ active characters in command arguments, defining characters from
+ command arguments, and transcribing latex commands, from add-general
+ (subsection{Particular font families}): new section, to hold "using
+ concrete fonts", from add-general
+ (subsection{Document management}): add makefiles q from add-general
+
+ * add-general.tex (subsection{How do I do X in (La)TeX}): editorial on
+ makefiles question
+ (subsection{Macro programming}): "macros from command arguments" solely
+ in terms of plain programming
+ (subsection{Fonts (or something)}): couple more editorials on concrete
+
+ * faqbody.tex (section{Graphics}): moved "making \mp graphics display"
+ into this section
+ (subsection{Alternative document classes}): moved "other document font
+ sizes" into this section
+ (subsection{Typesetting specialities}): moved code listings up to top
+ of section
+
+2002-09-02 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * locations.mk: add FTPDIR
+
+ * Makefile (inst-html): goes to $(FTPDIR)
+
+ * add-general.tex (subsection{Macro programming}): rebalance
+ "characters commands as commands" and "active chars in command
+ arguments"
+
+ * dirctan.tex: add concmath-f (the fonts)
+
+ * add-general.tex (subsection{Fonts (or something)}): tidy up, and add
+ ctan references to the fonts mentioned
+
+ * faqbody.tex (section{Fonts}): new section, to include metafont stuff
+ and postscript font issues (was \MF and \MP, and \PS and \TeX)
+ (section{Graphics}): new section, from add-general, plus \MP in
+ ghostscript (from old \MF and \MP) and drawing stuff from tables,
+ figures and diagrams
+ v3.0.1u, today
+ (subsection{Making things stay where you want them}): mention
+ flafter.sty in Q-floats
+
+2002-08-30 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add latexmake
+
+ * Makefile.CTAN (all): add Makefile itself
+
+ * Makefile (ctan): remove commented-out ftp target
+
+ * add-general.tex (subsection{How do I do X in (La)TeX}): more work on
+ the Makefile question (really for doc management, now, i suppose)
+
+ * locations.mk: new file of "private" locations, that won't go on CTAN
+
+ * Makefile: move explicit locations out to locations.mk
+
+ * dirctan.tex: texhax is browsable
+
+ * faqbody.tex (section{You're still stuck?}): typos/minor corrections
+ to latex bug and additions to the faq questions
+ (section{The joy of \TeX{} errors}): typend and unkgrfextn from
+ add-general
+ v3.0.1t, today
+
+ * sanitize.pl (sanitize_line): add \pkgoption
+
+ * faq.sty: add \pkgoption
+
+ * add-general.tex (subsection{The Joy of TeX errors}): amalgamated
+ graphics extension bit with earlier one
+
+ * additions.tex: pl4.1k, today
+
+ * filectan.tex: add gkpmac
+
+ * dirctan.tex: add ccfonts and concmath
+
+ * add-general.tex (subsection{Fonts (or something)}): new subsection
+ for question from josé carlos santos about concrete
+
+2002-08-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Graphics}): provide some sort of
+ completion for pdftex graphics question, and do first version of dvips
+ graphics
+ (subsection{The Joy of TeX errors}): tidy up "... say \end"
+
+ * dirctan.tex: add jpeg2ps, bmeps
+
+ * filectan.tex: add resume
+
+ * dirctan.tex: add currvita
+
+ * faqbody.tex (subsection{Alternative document classes}): update
+ curriculum vita question with rec for currvita
+ (section{Introduction}): hans nordhaug to list of contributors
+
+ * additions.tex: pl4.1j, today
+
+ * add-general.tex (subsection{"Generic" macros}): first pass of
+ \newcommand answer complete (do we need \@ifundefined, \@ifnextchar?)
+
+2002-08-25 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PS and TeX}): editorial from santos
+
+2002-08-24 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): mention pdflscape.sty in the
+ landscape question
+ v3.0.1r, today
+
+2002-08-23 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Footnotes}): make reference to \footref in
+ "texts are identical"
+
+ * add-general.tex (subsection{Installing AllTeX files}): editorials
+
+ * faqbody.tex (subsection{Document management}): mention \gobble and
+ \iffalse ... \fi in "comments" question
+
+ * sanitize.pl (sanitize_line): add cmdinvoke with mandatory argument
+ followed by optional one
+
+ * dirctan.tex: add subfiles
+
+ * faqbody.tex (subsection{Alternative document classes}): add reference
+ to subfiles system in "report from lots of articles"
+ v3.0.1q, today
+
+ * additions.tex: pl4.1i, today
+
+ * add-general.tex (subsection{The joy of TeX errors}): new answer (from
+ a post by heiko oberdiek), about "unknown graphics extension"
+
+2002-08-21 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables of contents and indexes}): editorials,
+ including rearranging "unnumbered sections in toc"
+ (subsection{Typesetting specialities}): editorials
+ (subsection{Tables, figures and diagrams}): editorials
+
+ * add-general.tex (subsection{"Generic" macros}): first paragraph of
+ question on understanding latex command declarations
+
+ * faqbody.tex (section{Bits and pieces of TeX}): minor editorials
+ (section{Bibliographies and citations}): minor editorials, split into
+ subsections
+ (section{PS and TeX}): excise any mention of mathpple
+
+ * filectan.tex: give TeX-FAQ a filename (ha ha)
+
+ * dirctan.tex: remove TeX-FAQ (the old faq)
+
+2002-08-20 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): talk down
+ dropping package in Q-dropping (ha ha)
+ (subsection*{Finding the Files}): slight editorial
+ (section{The Background}): various holiday editorials
+ (section{Documentation and Help}): added joy of tex to list of books(!)
+ v3.0.1p, today
+
+2002-08-02 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex:
+ 3.0.1o, today
+ (sections{The Background,Bits and pieces of TeX}): minor tidies and
+ updates
+
+2002-07-31 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.1h, today
+
+ * add-general.tex
+ (subsections{Generic and LaTeX macros}): frameworks for a couple of new
+ questions
+
+ * faqbody.tex
+ v3.0.1n, today
+ (section{Macro programming}): split into two halves, "generic" and
+ latex
+
+2002-07-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex
+ (section{Documentation and Help}): add wilkins' pllong.pdf to the
+ tutorials section
+ v3.0.1m, today
+
+2002-07-25 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Symbols, etc.}): add mention of encoding problems, and suggest
+ \char`\_, in underscore question
+
+2002-07-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): add stabular
+ to the long table stuff
+ v3.0.1l, today
+
+2002-07-23 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.0.1k, today
+ (section{Bits and pieces of TeX}): record that ec fonts don't cover all
+ sami languages
+ (section{Introduction}): add Regnor Jernsletten to helpers' list
+
+2002-07-21 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): change \htmlonly to \nothtml in
+ Y&Y entry (!)
+
+ * sanitize.pl (sanitize_line): move \htmlonly down with the other two
+
+ * faqbody.tex (section{Current TeX Projects}): micro-typo in doc prep
+ (section{Bits and pieces of TeX}): \nothtml problem in encodings
+ (section{PS and TeX}): add licence remark to txfonts and pxfonts
+ (section{PS and TeX}): mention dvips -G1 bugfix (which version is it?)
+ v3.0.1j, today
+
+2002-07-18 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize.pl (sanitize_line): moved \nothtml and \latexhtml to the end
+ of the big block of conversions, so their arguments get processed
+ before they do (probably need to do same for other similar commands)
+
+ * faqbody.tex (section{The Background}): \begin{footnoteenv} on a line
+ by itself (and three other places in the document)
+ (subsection{Things have "gone away"}): typo correction for msx/y font
+ ctanrefs environment
+ v3.0.1i, today
+ (section{Installing AllTeX files}): add Q-miktexinst from add-general
+ (section{The Background}): also tidy Q-MP
+
+2002-07-16 Robin Fairbairns <rf@stripos2.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing AllTeX files}): more work on
+ the cm-pfb fonts question
+
+2002-07-14 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{Installing AllTeX files}): correct typos;
+ add disclaimer about miktex failing to know about a package
+
+2002-07-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.1g, today
+
+ * add-general.tex (subsection{Installing (La)TeX files}): new question
+ about installing from miktex
+
+ * faqbody.tex:: v3.0.1h, today
+ (section{Installing (La)TeX files}): make reference to new question on
+ miktex installation
+
+2002-07-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.1f, today
+
+ * add-general.tex (subsection{Installing AllTeX files}): bit of editing
+ of the cm-type1 question
+
+2002-07-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Format conversions}): added info (from Alejandro Lopez-
+ Valencia) about using acrobat 5 to produce output via word 2000 (!)
+
+2002-07-07 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add system and OS info
+ to the list of things people should report, when appropriate.
+
+ * add-general.tex (subsection{Installing AllTeX files}): start on
+ questions about installing fonts, and installing type 1 cm in
+ particular
+
+ * faqbody.tex (section{MF and MP}): make the reference to bluesky to
+ mention browsing
+ v3.0.1g, today
+
+ * dirctan.tex: Make bluesky browsable
+
+2002-06-28 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date (not changing minor version number)
+ (section{Support Packages for TeX}): correct support reference for
+ xfig, and mention jfig in that question
+
+2002-06-27 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common misunderstandings}): minor usage mods
+ in "rerun" question, suggested by john palmieri
+
+ * sanitize.pl (sanitize_line): remove \end{document}
+
+ * faqbody.tex: v3.0.1f, today
+
+2002-06-22 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): correct address for
+ Peter Flynn's intro, which has moved with site re-org
+ 3.0.1e, today
+
+2002-06-18 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Page layout}): mention full document in
+ landscape orientation in landscape question, and include geometry for
+ that
+ v3.0.1d, today
+
+2002-06-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX Projects}): url for x-symbol
+ v3.0.1c, today
+
+2002-06-13 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): CTAN-refer to oberdiek
+
+ * dirctan.tex: add epstopdf, rename pagesel as oberdiek
+
+ * add-general.tex (subsection{Graphics}): start on pdftex question
+
+ * faqbody.tex (subsection{Mathematics}): deal with overflowing column
+ in second example definition of "log-like" \diag
+
+2002-06-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * Makefile.CTAN: removed required-questions
+
+2002-06-10 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (three places): remove \Destination commands
+ v3.0.1a, today
+
+2002-06-09 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.0.1, today
+ (section{Current TeX Projects}): web2c* for sources; final editorial
+ work on document prep question
+ (section{DVI Drivers and Previewers}): weasel words around dvilj
+
+ * dirctan.tex: add web2c*; remove pdftex, dviljk; update
+ french-(le|pro)
+
+2002-06-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Typesetting specialities}): "typesetting a
+ file in verbatim" -> drop the "in"
+ (section{Current TeX Projects}): typo in the web question
+ (section{Current TeX Projects}): several gross typos in the wysiwyg
+ question, and new intro para
+ v3.0h, today
+
+2002-06-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.0g, today
+ (section{Current TeX Projects}): new question re-derived from david
+ kastrup's input on wysiwyg
+ (section{The Background}): david kastrup's stuff moved away from here
+
+ * sanitize.pl (sanitize_line): rearrange deckchairs slightly so
+ \cmdinvoke "long forms" are scanned before shorter equivalents
+
+ * faqbody.tex (subsection{Spacing of characters and lines}): minor
+ reword to change emphasis of doublespace document
+
+2002-06-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v3.0f, today
+ (section{Macro programming}): correct minor think-o in opt args
+ question yesterday
+ (section{The Background}): lots more editorial work on wysiwyg
+
+ * texfaq2html-beta: require sanitize-beta.pl
+
+ * Makefile (inst-perl-beta): install sanitize-beta
+
+2002-06-04 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): moved wysiwyg question over
+ (section{Macro programming}): the two command argument answers, too
+
+ * additions.tex: pl4.1e, today
+
+ * add-general.tex (subsection{Macro programming}): new answer on >1
+ optional argument
+ (subsection{The background}): editorial work on david kastrup's
+ splendid contribution
+ (subsection{Macro programming}): added ctanrefs for Q-moren9
+
+ * sanitize.pl (sanitize_line): add \cmdinvoke{name}[opt]
+
+2002-06-02 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Mathematics}): refer to amsthm proof env
+
+2002-06-01 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Installing AllTeX files}): add .mf to wherefiles
+
+2002-05-27 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{The background}): revision of wysiwyg
+ question, courtesy of david kastrup
+
+ * dirctan.tex: added texmacs and preview-latex
+
+2002-05-26 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2file: distinguish sections and subsections in index.html, and
+ change the trailer of each question to be a bit like that of the web
+ version
+
+ * texfaq2html,texfaq2html-beta: distinguish sections and subsections in
+ the listing of questions at the start
+
+2002-05-25 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex,dirctan.tex,faqbody.tex: uktug-faq -> faq throughout
+ (file names as well as email address)
+
+ * Makefile (inst-html): add README
+
+ * README: first stab at this; done for thomas esser's benefit
+
+ * Makefile.CTAN: replace 00readme with README, add sanitize.pl and
+ texfaq2file
+
+ * additions.tex: pl4.1c, today
+
+ * faqbody.tex (section{Documentation and Help}): typo in words about
+ tex-by-topic on web, so reworded slightly, too
+ v3.0d, today
+
+ * add-general.tex (subsection{Macro programming}): added question on >9
+ arguments
+ (subsection{Graphics}): finished first pass on general question; added
+ headers for dvips and pdflatex graphics
+
+2002-05-23 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl4.1b, today
+
+ * filectan.tex: add epsf.tex
+
+ * add-general.tex (subsection{Graphics}): start of a witter about
+ graphics inclusion in general
+
+ * dirctan.tex: add dtxtut
+
+ * faqbody.tex: v3.0c, today
+ (section{Bits and pieces of TeX}): add ref to dtxtut
+
+2002-05-22 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document management}): rename question to
+ "conditional compilation and comments"
+
+2002-05-21 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PS and TeX}): mathpazo now v1.003
+
+ * Makefile (ctan): use newly-defined $CTAN_ROOT and $CTAN_HOME
+
+ * faqbody.tex (section{Symbols, etc.}): redo text about euro in light
+ of the discovery that the commission now accepts non-sans symbols
+ v3.0b, today
+
+2002-05-16 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Macro programming}): \p@enumii needs
+ \renewcommand
+
+ * add-general.tex (subsection{Macro programming}): tidy and extend
+ catcodes question
+
+ * faqbody.tex (section{PS and TeX}): removed \acro round micropress
+ font name "capitals" part, and corrected "ps math"->"pa math"(!)
+ (section{Bibliographies and citations}): reword answer on multiple
+ citations
+
+2002-05-15 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Document structure}): balancing columns (as
+ amended) from add-general
+ (subsection{Alternative document classes}): letter classes from add-
+ general
+ v3.0a, today
+
+2002-05-15 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (subsection{How do I do X in (La)TeX}): remove
+ reference to baltools in "balancing columns" question
+ (subsection{Alternative document classes}): twiddle the wording a bit
+ (subsection{Macro programming}): more scribbling in "defining macro
+ from argument"
+
+2002-05-14 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: added testflow
+
+2002-05-14 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add akletter, dinbrief, newlfm; remove aladdin
+
+ * additions.tex: pl4.1, today
+
+ * add-general.tex (subsection{Alternative document classes}): letter
+ classes
+
+2002-05-13 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize.pl (sanitize_line): \WYSIWYG translate as WYSIWYG(!)
+
+ * additions.tex: pl4.0, today
+
+ * faqbody.tex: v3.0, today
+
+ * texfaq2html: added provision for subsections
+
+ * faqbody.tex (section{Format conversions}): add latex->plain from
+ add-general
+ (section{The Background}): latex<->plain from add-general
+ (subsection{Document structure}): "really blank pages" from add-general
+ (subsection{Typesetting specialities}): decimal comma from add-general
+ (subsection{Document management}): RCS question from add-general
+ (subsection{Typesetting specialities}): breaking boxes from add-general
+ (subsection{Tables, figures and diagrams}): floats on their own float
+ pages from add-general
+
+2002-05-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Things are Going Wrong...}): rearranged, and
+ stuff moved out; suppressed question about miktex format creation
+ (section{PostScript and TeX}): moved charshift in here for want of
+ anything better...
+ (subsection{Page layout}): landscape orientation (from "specialities")
+
+ * add-general.tex (subsection{Format Conversions}): for part of the
+ latex->tex question (also edited a bit)
+
+ * additions.tex: pl3.9m, today
+
+ * faqbody.tex (section{You're still stuck?}): split bug question in
+ two, taking stuff from add-general
+ (section{Documentation and Help}): "how to ask a question" from
+ add-general
+ (section{Bibliographies and citations}): "bib->html" from add-general
+ (section{The Background}): add explanation of the acronym in the
+ wysiwyg question
+ v2.5.8u, today
+
+2002-05-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9l, today
+
+ * add-general.tex (subsection{You're still stuck?}): add details of
+ using the bugs web page to question on latex bug reports
+ (subsection{How do I do X in (La)TeX}): tidy wrapping in norman gray's
+ question
+
+2002-05-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add rcs
+
+ * add-general.tex (subsection{How do I do X in (La)TeX}): rcs question,
+ courtesy of norman gray
+
+ * additions.tex: pl3.9k, today
+
+ * faqbody.tex (section{TeX Systems}): tidied text about cygwin
+
+2002-05-06 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.8t, today
+ (section{TeX Systems}): add reference to tetex for cygwin
+
+2002-04-30 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): added peter flynn's
+ tutorial to tutorials question
+
+ * add-general.tex (subsection{Documentation and Help}): new question on
+ how to formulate questions (self-referential or what?)
+ (subsection{The Background}): minor tidy of translation question
+ (throughout): removed most \Destination commands
+
+ * additions.tex: pl3.9j, today
+
+ * faqbody.tex: v2.5.8s, today
+ (section{Documentation and Help}): reword text about google
+
+2002-04-29 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: various questions moved around and subsections created
+
+2002-04-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{DVI Drivers and Previewers}): suppress
+ suggestion that dvips is readily available
+
+2002-04-28 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: changed date to today
+
+ * dirctan.tex: added feyn
+
+ * faqbody.tex (subsection{Tables, figures and diagrams}): correct
+ ctanrefs references to picins; put picins at the end of the list in
+ the body of the answer
+ (subsection{Footnotes}): mention the "table notes" feature of
+ threeparttable
+ (subsection{Tables, figures and diagrams}): refer to feyn font package
+
+2002-04-27 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common misunderstandings}): correction and
+ improvement to Q-marginparside from Norman Gray
+ v2.5.8r, today
+
+2002-04-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: removed three directories that no longer exist
+ (including dviware/dvipsk)
+
+2002-04-16 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9i, today
+
+ * add-general.tex: 3 questions->faqbody
+
+ * faqbody.tex: v2.5.8q, today
+ (subsection{Tables of contents and indexes}): bibliography and index in
+ toc from add-general
+ (subsection{Tables, figures and diagrams}): strutting tables, and long
+ tables from add-general
+
+2002-04-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Something or other}): add mention of tracking
+ to the letterspacing question
+
+ * filectan.tex: added tracking.sty
+
+2002-03-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9h, today
+
+ * faqbody.tex: bunch more shifting around of questions
+ v2.5.8p, today
+ (section{Current TeX Projects}): textrace question, from add-general
+
+ * faq.cls: add \ProvidesClass declaration, use obeyspaces option when
+ loading url.sty
+
+2002-03-10 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PS and TeX}): mention DVIWindo as capable of
+ direct rendering of type1 fonts
+ (section{Hypertext and PDF}): hack at "making hypertext documents" and
+ "making acrobat documents", and correct references to [tp]xfonts (the
+ package name is plural]
+ v2.5.8o, today
+
+2002-03-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (subsection{Common errors}): new, under why does it do
+ that?; plus a whole bunch of new subsections, with corresponding re-
+ arrangements of text of questions
+
+ * texfaq2html-beta: treat \subsection the same as \section, pro tem
+
+ * sanitize.pl (sanitize_line): ignore \subsection and its arguments
+
+2002-03-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex: move all the questions into subsections
+
+ * faq.sty: today's date: deemed to be v1.1 (surely as good as any?)
+ define \subsection as a sort of mini-section (also \l@subsection)
+
+2002-03-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): mention that
+ \extracolsep can be cancelled
+ v2.5.8m, today
+
+2002-03-04 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: convert \def\file* + \typeout => \ProvidesPackage (v2.2)
+
+ * add-general.tex (section{Proposed new questions}): minor rewording of
+ q on breaking boxes of text
+
+2002-02-26 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.8l, today
+ (section{Documentation and Help}): refer to ams short math guide
+
+2002-02-21 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9g, today
+
+ * add-general.tex (section{Proposed new questions}): tidy up breakable
+ boxes question
+
+ * faqbody.tex (section{Hypertext and PDF}): lates gs is 7.04
+ v2.5.8k, today
+ (section{Special sorts of typesetting}): eplain defines \path; provide
+ recipe for using url.sty in plain
+
+2002-02-20 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): stupid error in Q-latex2e
+
+ * texfaq2html: the -beta version seems to work, so let's go live with
+ it...
+
+ * faqbody.tex (section{You're still stuck?}): tidy noans and newans, in
+ particular making use of \href for the mailto url
+ [preamble]: v2.5.8j, today
+
+ * texfaq2html-beta: first stab at labellisation
+
+2002-02-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.8i, today
+ (section{The Background}): add link to Q-lit under description of tex
+ (section{Literate programming}): add reference to
+ literateprogramming.com in Q-lit
+
+2002-02-13 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * filectan.tex: add framed and shade
+
+ * add-general.tex (section{Proposed new questions}): start of breakable
+ boxes question
+
+2002-02-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: added was (walter schmidt's bits and pieces)
+
+ * add-general.tex (section{Proposed new questions}): question about
+ commas as decimal separators
+
+2002-02-01 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): correct a \URL|...|
+
+2002-01-30 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): first stab at
+ answer on under- and overfull boxes, made by strapping a few
+ other people's postings onto a bit of intro stuff of mine
+
+ * additions.tex: pl3.9f, today
+
+ * add-general.tex (section{Proposed new questions}): added pktrace to
+ textrace question
+
+2002-01-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PS and TeX}): typo spotted by jose carlos santos
+ (section{Why does it do that?}): typo spotted by j.c.s (again)
+
+2002-01-17 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9e, today
+
+ * add-general.tex (section{Proposed new questions}): minor tweaking of
+ the bib->html question
+
+Tue Jan 15 08:02:18 2002 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): added web pointers to
+ some known latex documentation, rewrote mention of tex by topic
+ v2.5.8h, today
+
+Sun Jan 13 22:17:28 2002 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9d, today
+
+ * filectan.tex: add noTeX, bbl2html
+
+ * add-general.tex (section{Proposed new questions}): add question on
+ bib->html, starting with noTeX, bbl2html
+
+2002-01-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): change information
+ about texhax, and provide url for finding info about tex lists via
+ heidelberg
+ v2.5.8g, today
+
+2002-01-09 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Symbols, etc.}): mention the m$ euro code
+
+ * faq.sty: change \Question \@startsection parameters to allow less
+ space between questions, and to use \normalsize bold text
+
+2002-01-08 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9c, today
+
+ * add-general.tex (section{Proposed new questions}): answer on
+ translating latex to plain, directly copied from Jules Bean on c.t.t
+
+ * dirctan.tex: removed all the obsolete/dviware things, the format-
+ dumper fantasies, systems/knuth/dviware and dvitodvi
+
+ * filectan.tex: correct axodraw
+
+ * newfaq.tex,newfaq-patch.tex,letterfaq.tex: \typeout at end report
+ \thequestion, not \thesubsection
+
+ * faq.sty: redo \question as a \@startsection in its own right with its
+ own counter), and remove all the kerfuffle needed to make it work
+ mapping to \subsection; also remove \subquestion and the like
+
+2002-01-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.8f, today
+ (section{Introduction}): tidy reference to alternative html, remove
+ dick nickalls from the list of non-members of the committee
+ (section{The Background}): rewrite texinfo entry to mention texi2html
+ (section{The Background}): various other entries: provide pointers to
+ distributions in ctanrefs envs at end of questions
+
+2002-01-03 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * sanitize.pl (sanitize_line): remove requirement for \nobreakspace to
+ have trailing {} (dunno why this makes it work, mind you...)
+
+ * faqbody.tex (section{Bibliographies and citations}): change ~ in
+ \href anchor to \nobreakspace
+ (section{Symbols, etc.}): change ~ at end of \href to \nobreakspace
+
+2002-01-02 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): all double-line
+ \Destination commands forced onto single line
+ (section{Proposed new questions}): tidy up question on long tables
+
+ * sanitize.pl (sanitize_line): escape "*" in \cmdinvoke* :-}
+
+Tue Jan 1 09:12:47 2002 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9b, today
+
+ * add-general.tex (section{Proposed new questions}): finish off
+ longtable question
+
+Sat Dec 29 22:52:52 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.8e, today
+ (section{Documentation and Help}): various corrections to books, on
+ advice from Barbara Beeton (including removing Gr"atzer's math into
+ tex, which is superseded by math into latex)
+
+Wed Dec 26 00:28:32 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * sanitize.pl (sanitize_line): add * version of 2-mandatory-arg
+ \cmdinvoke
+
+ * faq.sty: make \cmdinvoke take * (for meta-arguments)
+
+ * filectan.tex: add ltxtable
+
+ * dirctan.tex: add xtab
+
+ * add-general.tex (section{Proposed new questions}): start new question
+ on long tables
+
+Tue Dec 25 09:15:35 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: 2.5.8d, today
+
+Mon Dec 24 17:37:18 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.8c, today
+ (section{Documentation and Help}): add tex by topic to "tutorials";
+ remove it from "books"
+ (section{The Background}): switch reference to tex by topic
+ (section{Documentation and Help}): restore tex by topic to "books", at
+ victor's suggestion, and cross-link to tutorials
+
+2001-12-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.8b, today
+
+ * dirctan.tex: add nedit-latex
+
+ * faqbody.tex (section{Current TeX Projects}): explain that the java
+ version is called nts
+ (section{TeX Systems}): added reference to the nedit stuff in editors
+ and shells
+
+2001-12-18 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): Added question on
+ submitting latex bug reports; minor tidies to question on array
+ spacing
+ (section{Proposed new questions}): new version of q-bug
+
+Sun Dec 16 10:17:08 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: today
+
+ * dirctan.tex: add booktabs
+
+ * filectan.tex: add tabls
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ array strutting
+
+ * sanitize.pl (sanitize_line): added \'o (for peter szabo)
+
+Sat Dec 15 10:56:39 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9a, today
+
+ * add-general.tex (section{Proposed new questions}): question on
+ textrace, with references to existing outputs
+
+ * dirctan.tex: added cm-super and ec-type1
+
+ * filectan.tex: added musixtex-type1
+
+ * Makefile.CTAN (all): remove newfaq.workers
+
+ * faqbody.tex: v2.5.8a, today
+ (section{Symbols, etc.}): removed second mention of europs<->eurosans
+ difference in recommendation at end of adobe subsection
+
+2001-12-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Symbols, etc.}): added mention of latin9 and its
+ implications
+
+2001-12-10 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.9
+
+ * faqbody.tex (section{Symbols, etc.}): added euro question from
+ add-general
+ (section{How do I do X in TeX or LaTeX}): added bold-xy and ragged
+ questions from add-general
+ v2.5.8
+
+ * add-general.tex (section{Proposed new questions}): yet more fiddling
+ with euro question
+ slight typo corrected in "cancelling ragged" question; comment out text
+ referring to donald's flushboth (which hasn't surfaced yet)
+
+ * faqbody.tex (section{Current TeX Projects}): minor tidy of omega q
+
+Mon Dec 10 07:30:22 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.7i, today
+
+ * add-general.tex (section{Proposed new questions}): revision and
+ slight extension of euro question
+
+Sun Dec 9 23:19:29 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX Projects}): slight further reduction
+ of random twaddle in text of nts q
+
+2001-12-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add nts
+
+ * faqbody.tex (section{Current TeX Projects}): deflower phil's text
+ about nts a bit, and add reference to public release of nts/java
+
+ * additions.tex: pl3.8b, today
+
+ * add-general.tex (section{Proposed new questions}): bunch of new stuff
+ on how to typeset euros (from yesterday and today)
+
+ * dirctan.tex: add china2e, eurosym, eurofont
+
+2001-12-06 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): good start on euro
+ question
+
+ * dirctan.tex: add euro-fonts, marvosym-fonts
+
+2001-12-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): added scott pakin's
+ keywords to symbol list question
+ v2.5.7h, today
+ (section{The Background}): correct \href for context
+
+2001-12-04 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): correct syntax
+ for latest version of pdfpages package
+ v2.5.4g, today
+ (section{Introduction}): add Andreas Matthias to list of benefactors
+
+2001-11-28 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: 2.5.7f, today
+ (section{PS and TeX}): tidy up question about metrics, add reference to
+ ly1 and to walter's site of extra goodies and, and, and...
+
+2001-11-27 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): spell martin
+ schröder's name right
+
+2001-11-26 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.7e, today
+
+ * additions.tex: pl4.8a, today
+
+ * add-general.tex (section{Proposed new questions}): add question on
+ flushboth (after discussion with da)
+
+ * faqbody.tex (throughout): saturday's -{}- -> -\relax-
+
+Sat Nov 24 09:47:06 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): -- (in "verbatim" bits convert) to -{}-,
+ and where necessary convert |..--..| -> \texttt{..-{}-..}
+ v2.5.7d, today
+ (section{Introduction}): add thomas esser
+
+2001-11-23 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): amend words about
+ metafun manual, and redirect web address to ntg site
+ v2.5.7c, today
+
+2001-11-22 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): \nothtml-tidy typo correction
+
+2001-11-20 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.7b, today
+ (sections {The Background}, {Acquiring the Software}): micro-editorials
+ from Jose Carlos Oliveira Santos
+ (section{The Background}): added a ref to the ntg copy of context web
+ site (pending the arrival of a "real" one...)
+
+2001-11-15 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): "tiny typo"
+ (\pagnumbering) in "eliminating page numbers"
+ v2,5,7a, today
+ (section{TeX Systems}): first stab (pre-ctan availability) of reference
+ to macos x tetex and texshop; added reference under "unix" to "mac"
+ (section{Current TeX Projects}): correct signup address for omega list
+ (section{TeX Systems}): corrected spelling of wierda
+ (section{Documentation and Help}): tug.org copy of bausum's list
+
+2001-11-13 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.8, today
+
+ * add-general.tex (section{Proposed new questions}): add a question on
+ bold tt and csc
+
+ * filectan.tex: add bold-extra
+
+ * faqbody.tex (throughout}): \CTAN{}->\acro{CTAN}
+
+2001-11-07 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): change references to miktex
+ v2.5.7, today
+
+ * dirctan.tex: remove miktex directory
+
+ * filectan.tex: replace miktex-zip with miktex-install and miktex-setup
+
+2001-11-05 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.7l, today
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): mention
+ ntheorem in "roman theorems", use \upshape instead of \rm in original
+ example
+ 2.5.6k, today
+
+ * add-general.tex (section{Proposed new questions}): tocbibind question
+
+Sat Nov 3 15:29:07 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): moved code
+ listings from "how do i do x"
+ (section{How do I do X in TeX or LaTeX}): removed text about 209 in
+ "log-like function"
+ (section{Things are Going Wrong}): remove rmnonsense question, and
+ reference to it in "missing symbol commands"; tidy up "missing symbol
+ commands", and add ctanrefs for amsfonts
+ (section{Things are Going Wrong}): ctanrefs for msx/y question
+
+Wed Oct 31 23:10:31 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PS and TeX}): finished belleek stuff
+
+Tue Oct 30 23:35:48 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex: add belleek (just the .zip file)
+
+ * faqbody.tex (section{PS and TeX}): mention belleek (needs url for
+ paper)
+
+2001-10-30 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * Makefile (inst-perl*): add sanitize_line
+
+ * texfaq2file,texfaq2html,texfaq2html-beta: require sanitize.pl, remove
+ sanitize_line
+
+ * sanitize.pl: new file, providing sanitize_line for texfaq2*
+
+ * faqbody.tex (section{Current TeX Projects}): not :8080 for omega site
+
+Tue Oct 30 00:14:29 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX Projects}): update omega question
+
+Mon Oct 29 22:32:39 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PS and TeX}): use richard's words re. truetype
+ (section{How do I do X in TeX or LaTeX}): detail the further brilliant
+ things titlesec can do in re. \subsubsubsection
+ (section{Special sorts of typesetting}): remove misleading remark about
+ titlesec's capabilities re. \part
+ v2.5.6l, today
+
+2001-10-29 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bibliographies and citations}): change title
+ from just "bibliographies"
+ (section{PS and TeX}): change listing of {cm,ams}-amstype1 to "browse"
+ (section{TeX Systems}): change to truetex entry as per mail from
+ richard
+
+Sun Oct 28 09:19:36 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it do that?}): correct html problem
+ spotted by donald a, and modify \xspace question according to his
+ caveats
+
+ * texfaq2html,texfaq2html-beta,texfaq2file (sanitize_line): add
+ nullification of \relax at end
+
+ * faqbody.tex (section{PS and TeX}): comlete tidying-up the outline
+ fonts question (no more now until i've viewed the result on paper)
+
+Sat Oct 27 00:55:30 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PS and TeX}): corrections/extensions from Walter
+ Schmidt, started work on ctanrefs env at end of question
+ (section{Introduction}): add Walter's name to list
+
+ * dirctan.tex: add eulervm
+
+ * faqbody.tex (section{Typesetting particular types of documents}):
+ moved typesetting a thesis here
+ (section{Bibliographies}): rearranged to put things relating to
+ creating the bib together at the start of the section, with "using" it
+ (macros etc) afterwards; moved citing urls in here
+ (section{The joy of TeX errors}): replacement "how to approach",
+ new "missing number" questions from add-general
+
+ * additions.tex: pl3.7k, today
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): rewrite
+ parenthetical remarks about gill, correct parentheses later on
+ v2.5.6k, today
+
+ * add-general.tex (section{Proposed new questions}): yet again correct
+ wrapping of examples in "macros from command arguments" (will get it
+ right eventually...)
+
+Mon Oct 22 12:48:28 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): work on active
+ character questions (can we do without a screed on catcodes
+ altogether?)
+
+ * texfaq2file,texfaq2html,texfaq2html-beta (sanitize_line): add
+ \textbar
+
+ * faq.sty: add definition of \textbar
+
+Sat Oct 20 08:26:05 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): correct josé carlos santos' name
+
+2001-10-19 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): add a label to
+ "alignment of tabular cells" question
+ v2.5.6j, today
+
+2001-10-12 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.7.l1 {since redone}, today
+
+ * add-general.tex (section{Proposed new questions}): redoing work done
+ at home decreasing the verbosity of the replacement error approach q,
+ and tidying it up
+
+2001-10-11 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The joy of TeX errors}): slight rewording of
+ Q-atvert to take account of "improper \spacefactor" (which appeared in
+ a question on c.t.t)
+ v2.5.6i, today
+
+Sat Oct 6 09:17:26 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.7k, today
+
+ * add-general.tex (section{Proposed new questions}): tidied missing
+ number question, start on question on skips vs. dimens
+
+2001-10-04 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.7j, today
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ "missing number"
+
+Tue Oct 2 22:45:47 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.7i, today
+
+ * add-general.tex (section{Proposed new questions}): revision of
+ general approach errors question, taking account of trace package
+
+2001-10-02 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): gratuitous tidying of
+ mail list text
+
+2001-09-26 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): greek->Greek
+ (for epsilon in question about logos and things)
+
+ * texfaq2file (oh_dear): don't print wrapper for message...
+ (two other places): replace "die" with call to oh_dear
+
+Mon Sep 24 22:41:48 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.6h, yesterday (forgot the change then)
+
+ * additions.tex: pl3.7h, today
+
+ * add-general.tex (section{Proposed new questions}): tiny typo
+ correction in \clearemptydoublepage answer
+
+2001-09-24 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: added memoir
+
+ * add-general.tex (section{Proposed new questions}): question on
+ empty pages between chapters
+
+Sun Sep 23 15:37:53 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ what to do when asked to type \end
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): "referring to
+ things by name" from add-general
+ (section{Bibliographies}): "listing all bib entries" from add-general
+
+ * add-general.tex (section{Proposed new questions}): wrap dvi version
+ of some of examples in "defining macro from arg" question (and adjust
+ the title of the question
+
+ * faqbody.tex (section{Special sorts of typesetting}): a couple of
+ issues raised in proofreading (principally in description of xindy)
+
+Mon Sep 10 14:52:09 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): muck about with the "alternative
+ versions text, and add reference to the pdf copies on ctan
+
+ * filectan.tex: added uktug-faq-{a4,letter}
+
+Sun Sep 9 00:43:37 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex: add titleref
+
+ * add-general.tex (section{Proposed new questions}): question on title
+ references (first stab)
+
+ * additions.tex: pl3.7g, today
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ \nocite{*}
+
+ * dirctan.tex: add fonts/amsfonts/{latex/plaintex}
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): rehash of
+ blackboard bold question
+
+Sat Sep 8 22:02:04 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: added ntheorem
+
+ * faqbody.tex (section{Why does it do that?}): twiddling with the over-
+ full boxes question
+ (section{How do I do X in TeX or LaTeX}): answer the "end proof
+ environment with symbol" question in the affirmative, ref. ntheorem
+ v2.5.6g, today
+
+Fri Sep 7 17:01:12 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.7f, today
+
+ * faqbody.tex (section{Why does it do that?}): question on overfull
+ lines from add-general
+ v2.5.6f, today
+
+Thu Sep 6 09:54:29 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html,texfaq2html-beta: minor tidies to make uniform with
+ texfaq2file
+
+Wed Sep 5 17:55:48 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): tidying wysiwyg question
+ (again)
+
+Tue Sep 4 23:03:11 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): a little tidying
+ of the new question
+
+Tue Sep 4 17:32:47 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.7e, today
+
+ * add-general.tex (section{Proposed new questions}): bit of tidying of
+ one-float-per-page question, new question on defining commands whose
+ name arrives in an argument
+
+Tue Aug 28 13:01:30 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX Projects}): correct typo
+ (section{The Background}): reading tex files, and why not wysiwyg from
+ add-general
+ (section{The joy of TeX errors}): \end in group from add-general
+ (section{Special sorts of typesetting}): dropped capitals from
+ add-general
+
+Tue Aug 28 11:37:17 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * Makefile (clean): delete _all_ *.out
+
+Mon Aug 27 10:53:49 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current TeX Projects}): normalise ctan etex and
+ pdftex references (and thus reword a little)
+
+ * dirctan.tex: make e-tex and pdftex *-directories
+
+ * add-general.tex (section{Proposed new questions}): new drop caps q
+ (should we mention dropcaps, if only to deprecate it?)
+ (section{Proposed new questions}): couple of \end{verbatim} missing
+ from end groups question(!)
+
+ * dirctan.tex: add dropping, lettrine
+
+Sun Aug 26 10:24:31 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.6d, today
+
+ * additions.tex: pl3.7d, today
+
+ * add-general.tex (section{Proposed new questions}): minor proofreading
+ edits
+
+ * faqbody.tex (section{Macro programming}): minor proofreading edits
+
+Sat Aug 25 19:59:17 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Macro programming}): added proposed question on
+ macro programming
+
+ * add-general.tex (section{Proposed new questions}): tidying "\end
+ inside a group"
+
+Thu Aug 23 15:06:09 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): first outline of
+ "\end inside a group..." question
+
+Wed Aug 22 12:28:17 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): minor proof-
+ reading changes
+
+ * faq.sty: make \WYSIWYG uppercase the first letter of the start of a
+ sentence ... mostly
+
+Sat Aug 18 09:29:00 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2html,texfaq2html-beta (sanitize_line): as texfaq2file
+
+ * texfaq2file (sanitize_line): redo definition of \CONTeXT
+
+ * faq.sty: redo definition of \CONTeXT
+
+ * faqbody.tex (section{Why does it do that?}): standardise reference to
+ textcase package
+ (throughout): standardise on use of \CONTeXT macro
+
+ * add-general.tex (section{Proposed new questions}): putative
+ completion of the wysiwig question (lordie, is it turgid)
+
+ * faqbody.tex (section{Current TeX Projects}): typo in the "web" bullet
+ about svg
+
+ * Makefile: have `clean' target get rid of html/* as well as _all_
+ *.aux (no need to protect newfaq.aux nowadays), and remove a redundant
+ second (empty) `ctan' target
+
+ * texfaq2html,texfaq2html-beta (sanitize_line): as texfaq2file
+
+ * texfaq2file (sanitize_line): take {} requirements off definition of
+ \textasciitilde, so it can be used in \texttt
+
+ * add-general.tex (section{Proposed new questions}): correction/
+ improvement of spaces and active chars in arguments questions
+
+Fri Aug 17 00:53:10 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.7c, today
+
+ * faqbody.tex (section{Special sorts of typesetting}): remove (now
+ unwanted) braces after \textpercent
+
+ * texfaq2html,texfaq2html-beta (sanitize_line): as texfaq2file
+
+ * texfaq2file (sanitize_line): don't have \textpercent requiring braces
+ after it (since it'll inevitably appear in the argument of \texttt)
+
+ * add-general.tex (section{Proposed new questions}): another new
+ question on unwanted space in macros
+
+Thu Aug 16 00:36:09 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ active chars in args of other commands
+
+ * faqbody.tex (section{The joy of TeX errors}): correct example in
+ "structure of errors"
+ (section{Why does it do that?}): minor improvement of english in "rerun
+ messages"
+ (section{Why does it do that?}): move "hash signs doubled in macros" to
+ macro programming, and change title to "defining macros within macros"
+
+ * add-general.tex (section{Proposed new questions}): a few more words
+ on wysiwygginess...
+
+Tue Aug 14 16:16:29 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ installed on ctan; checked-in
+
+ * dirctan.tex,filectan.tex: texsis no longer nonfree
+
+ * faqbody.tex (section{Format conversions}): revised address for
+ wilfried hennings' faq
+ v2.5.6c, today
+
+Mon Aug 13 01:01:12 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): more twiddles on
+ "what to do with a latex file"
+ (section{Proposed new questions}): new question on wysiwyg-ness
+
+ * texfaq2file: sorted archive and format defaults (were left blank)
+
+Sun Aug 12 01:01:49 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): "what to do with a
+ (la)tex file" (first version)
+
+ * additions.tex: pl3.7b, today
+
+ * faqbody.tex (section{Documentation and Help}): stray char in
+ booklist; move reference to errata for math into latex back up where
+ it belongs near the reference to the book
+
+ * add-general.tex (section{Proposed new questions}): change preamble of
+ each proposed question to use \Destination
+ (section{Proposed new questions}): add reference to paragraph parameter
+ problem in \tolerance question
+
+ * faq.sty: add \Destination
+
+ * texfaq2file (sanitize_line): add \Destination
+
+ * texfaq2html,texfaq2html-beta (sanitize_line): as texfaq2file
+
+ * texfaq2file (sanitize_line): redo definition of \keywords to produce
+ html comments (works! ... if not subsequently translated to html ;-),
+ and place it at the end of if (converting ...) section
+
+ * faqbody.tex (section{Bits and pieces of TeX}): verbatim \'e (again)
+ (section{The joy of TeX errors}): and again
+ v2.5.6b, today
+
+Fri Aug 10 14:21:38 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}): silliness of html trans
+ v2.5.6a, today -- checkin
+
+Thu Aug 9 12:42:56 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: set \@rightskip, not \rightskip, in def of ctanrefs env
+
+ * additions.tex: pl3.7a, today
+
+ * add-general.tex (section{Proposed new questions}): start of question
+ about tolerance (yeah, man)
+
+ * faqbody.tex (section{Things are Going Wrong...}): missing paren added
+ in Q-nohyph
+
+Tue Aug 7 14:41:37 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): correct
+ list info for music list
+
+Mon Aug 6 16:50:12 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * [various]: checkin
+
+Mon Aug 6 13:18:02 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.7, today
+
+ * Makefile.CTAN (DEST): new location (oops!)
+
+ * faqbody.tex: 2.5.6, today
+
+Sun Aug 5 00:31:07 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): correct urls for html
+ upload scripts
+ (section{Hypertext and PDF}): pkfix question from add-general
+ (section{Macro programming}): comparing the job name question (ditto)
+ (section{Why does it do that?}): commands gobbling space (ditto)
+ (section{How do I do X in TeX or LaTeX}): repeating footnotes (ditto)
+ (section{Macro programming}): argument a number (ditto)
+ (section{How do I do X in TeX or LaTeX}): altering tabular cell
+ alignment (ditto)
+
+ * add-general.tex (section{Proposed new questions}): finally struggled
+ through section on catcodes of question on catcodes and tokens
+
+ * texfaq2file,texfaq2html,texfaq2html-beta (sanitize_line): added
+ \environment translation(!)
+
+ * add-general.tex (section{Proposed new questions}): |\\|->|\||\|
+ throughout
+
+ * texfaq2file: add ability to read files whose names appear on $ARGV;
+ correct test for new faq sections at the start of while <TEXFAQ> (NB
+ still a problem with \begin{center}\itshape in add-* files)
+
+Sat Aug 4 09:21:21 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2file (sanitize_line): update to latest version from ...2html
+
+Fri Aug 3 20:03:18 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): correct typos in
+ tabular cell alignment question
+
+Fri Aug 3 14:58:31 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): added cross-references
+ for symbols, as suggested by scott pakin
+ v2.5.5f, today
+
+ * additions.tex: today's date
+
+ * add-general.tex (section{Proposed new questions}): completed question
+ (started last night at home) on \centering et al in tabular
+
+Thu Aug 2 22:11:35 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.6f, today
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ detecting numbers
+
+Thu Aug 2 09:44:18 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): ctan-ann at dante.de
+ v2.5.5e, today
+
+Wed Jul 25 11:27:01 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): typo in eitan's name
+
+ * add-general.tex (section{Proposed new questions}): new question about
+ \xspace
+
+Wed Jul 25 00:07:47 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): add a word about
+ mirroring
+
+ * faq.sty: define pdfversion and dviversion on the basis of \ifpdf
+
+ * additions.tex: pl3.6e, today
+
+ * faqbody.tex (section{Introduction}): added heiko's name to list of
+ helpers
+
+ * add-general.tex (section{Proposed new questions}): new question about
+ comparing \jobname to something
+
+Tue Jul 24 22:25:54 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): rewritten the upload
+ question to reflect what goes on in the real world now
+
+ * texfaq2html[-beta] (sanitize_line): add \PS{}
+
+ * faq.sty: add \PS command
+
+ * faqbody.tex: v2.5.5d, today
+ (throughout): postscript->\PS{}, ghostscript all l-c; various other
+ minor changes
+
+ * add-general.tex (section{Proposed new questions}): postscript->\PS{}
+ throughout
+
+Mon Jul 23 12:13:51 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): reword the pkfix
+ question
+
+ * faqbody.tex (section{Support Packages for TeX}): add reference to
+ spell checkers in winedt and 4alltex (last available separately,
+ 4spell)
+ (section{TeX Systems}): junk win3.1 section of editors and shells
+ v2.5.5c, today
+
+Fri Jul 20 00:22:56 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.6c, today
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ pkfix
+
+Thu Jul 19 17:31:25 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Macro programming}): minor typo in list
+ numbering question
+
+Thu Jul 19 13:55:55 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.5b, today
+ (section{The Background}): inappropriate line wrap corrected, given up
+ on \nobreakspace, pro tem
+
+ * texfaq2html-beta (sanitize_line): add \nobreakspace [doesn't work...]
+
+ * add-general.tex (section{Proposed new questions}): yet more fiddling
+ with the fixed footnotes question
+
+Tue Jul 17 13:41:03 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): witter about knuth's eminence
+
+ * texfaq2html (sanitize_line): add \nobreakspace...
+
+ * faqbody.tex (section{Documentation and Help}): \url->\URL in books
+ question
+ (section{The Background}): Donald E.\nobreakspace{}Knuth ;-)
+
+ * additions.tex: today's date
+
+ * add-general.tex (section{Proposed new questions}): tidy of fixed ftnt
+ question
+
+Mon Jul 16 17:54:15 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: v3.6a, today
+
+ * add-general.tex (section{Proposed new questions}): finished question
+ on fixed-text footnotes (1st draft, anyway)
+
+Sun Jul 15 22:14:41 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): start of a
+ question on repeating footnotes
+
+ * dirctan.tex: added fixfoot
+
+ * faqbody.tex (section{TeX Systems}): join up the two download lines
+ (and alternative urls) for miktex
+ (section{Hypertext and PDF}): adjust the blurb in the first question,
+ for consistency, and wind down the implication that the hypertex
+ project is an ongoing thing
+ (section{PostScript and TeX}): rehash the basic "using ps fonts" q, add
+ mention in the previewing question that recent xdvis cope with type1
+ fonts
+ v2.5.5a, today
+
+Sat Jul 14 10:10:11 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.5, today
+ (section{Installing \AllTeX{} files}): new section, holding two
+ installation questions from "acquiring the software" and the "temp
+ installation question from add-general
+
+ * additions.tex: pl3.6, today
+
+ * add-general.tex (section{Proposed new questions}): move "format of
+ labels","multiple citations","widows and orphans","retrieving tex...",
+ "bits of docs" (changed title and label name),"extending tex paths"
+ (again, changed title to "temporary installation") -> faqbody
+
+Thu Jul 12 16:19:25 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{MF and MP}): add further caveats to this
+ question (derived from a post by dan luecking)
+
+ * add-general.tex (section{Proposed new questions}): final tweaking of
+ revised margins question -- back to faqbody, replacing old version
+
+ * faqbody.tex (section{Special sorts of typesetting}): reference
+ harvard as a possible source of urls-in-biblios
+ v2.5.4q, today
+
+Tue Jul 10 10:34:16 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: today's date
+
+ * add-general.tex (section{Proposed new questions}): more fiddling with
+ the margins faq
+
+Mon Jul 9 16:46:44 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.5o, today
+
+ * add-general.tex (section{Proposed new questions}): proposed new
+ version of the change margins faq
+
+Thu Jul 5 16:17:44 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): insert Q-TUG* in place of
+ Q-TUG and the two following
+ (section{You're still stuck?}): change reference to be to Q-TUG* (and
+ elsewhere, plus change on reference to Q-othergroups to a reference to
+ ntg's website)
+
+ * add-general.tex (section{Proposed new questions}): remove Q-TUG*
+
+ * faqbody.tex: v2.5.4p, today
+ (section{How do I do X in TeX or LaTeX}): text from Norman Gray added
+ (section{Introduction}): add Norman Gray to the list of helpers
+
+Tue Jun 19 10:38:45 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add xpdf
+
+ * additions.tex: pl5.5m, today
+
+ * add-general.tex (section{Proposed new questions}): reference
+ pdftotext from xpdf in the "final->revisable" question
+
+Fri Jun 15 10:21:57 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta,texfaq2html (sanitize_line): deal with tildes in
+ urls in \href commands too
+
+ * faqbody.tex (section{Documentation and Help}): add reference to hans'
+ metafun manual
+ v2.5.4o, today
+ (section{Introduction}): thanks to sanjoy mahajan
+
+Thu Jun 14 10:37:46 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html[-beta] (sanitize_line): correct \textcbracesymbol in both
+
+Tue Jun 12 13:10:08 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html: as -beta
+
+ * texfaq2html-beta: translate keyword spaces to + (and vice versa) when
+ initialising $original_keyword and $keyword
+
+Mon May 28 10:30:47 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: today's date
+
+ * add-general.tex (section{Proposed new questions}): added question on
+ \p@... commands
+
+Sun May 27 23:58:37 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.5l, today
+
+ * add-general.tex (section{Proposed new questions}): quick question on
+ mcite
+
+Thu May 24 10:21:33 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: add \environment command
+
+ * add-general.tex (section{Proposed new questions}): one use of
+ \environment
+
+ * faqbody.tex (section{Bibliographies}): moved "bibtex with plain tex"
+ from "how to do"
+ today's date (same version no)
+ (throughout): use \environment
+
+ * additions.tex: pl3.5k, today
+
+ * add-general.tex (section{Proposed new questions}): add ps2ascii to
+ the list of tools for retrieving source from final form output
+
+Wed May 23 09:32:48 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it do that?}): more alternatives for
+ avoiding the use of \verb, in Q-verbwithin
+ 2.5.4n, today
+
+Tue May 22 09:43:20 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html,texfaq2file (sanitize_line): add \Class translations from
+ texfaq2html-beta
+
+Mon May 21 18:04:02 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): \endhtmlignore in
+ tutorial question!!!
+ (section{How do I do X in TeX or LaTeX}): \thispagestyle is what
+ chapters and things use ... change Q-nopageno
+
+Fri May 18 12:45:03 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): emphasised the scottishness of
+ "loch" in the silly thing about pronunciation
+
+Wed May 16 15:08:37 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): couple of typos in
+ balancing question
+
+ * faqbody.tex (section{Documentation and Help}): add reference to david
+ basum's list of tex primitives to "online tutorials", pointing out
+ that it's reference rather than tutorial...
+ (section{Macro programming}): refer to patchcmd as a package...
+ (section{Current TeX Projects}): correct reference to latex
+ experimental code, minor tidies of omega, nts entries
+
+Mon May 14 15:15:23 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.4l, today
+ (throughout): bunch of "unguarded" \dots had {} appended...
+
+Wed May 2 00:07:49 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Hypertext and PDF}, {how do i do}, {macro
+ programming}, {special sorts of typesetting}, etc): accession of
+ questions from add-general.tex
+
+ * additions.tex: pl3.5j, today
+
+ * add-general.tex (section{Proposed new questions}): numerous minor
+ editorial hackettes...
+
+Tue May 1 23:50:40 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.4k, today
+ (section{Format conversions}): correct url for w3.org
+ (section{Why does it do that?}): no need for \verb if \texttt will do
+ (unamended...)
+
+Tue May 1 10:04:13 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it do that?}): couple of tidies in
+ \verb question so's texfaq2html can cope (both applied to current web
+ copy too)
+
+Mon Apr 30 16:36:54 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Macro programming}): restore missing
+ \endhtmlignore in "optional arguments like \section"
+
+Fri Apr 27 12:02:02 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bibliographies}): added reference to multibbl
+
+ * dirctan.tex: added dpfloat
+
+ * faqbody.tex (section{Typesetting particular types of documents}): add
+ reference to pdfpages to "report from lots of..."
+
+ * additions.tex: pl3.5i, today
+
+ * faqbody.tex (section{Why does it do that?}): add reference to \string
+ inside \texttt as a means of avoiding \verb in command args
+ v2.5.4j, today
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ widows and orphans
+
+ * dirctan.tex: added curve (oh joy!)
+
+ * faqbody.tex (section{Typesetting particular types of documents}):
+ added curve to the cv question
+
+Thu Apr 26 10:01:23 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): \href-ise question on
+ sources of faqs, and add reference to the latex navigator
+ (section{The joy of \TeX{} errors}): removed {center}ed note of where
+ question was to go to, in Q-atvert... (emergency patch to copy on web
+ site, too!)
+
+Wed Apr 25 14:40:22 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): added a bit of
+ uncertainty about the name of the localtexmf tree ;-)
+ (section{Special sorts of typesetting}): added multiple indexing
+ and zero paragraph indent questions from add-general
+ (section{How do I do X in TeX or LaTeX}): added footnotes in
+ captions question from add-general
+
+Tue Apr 24 12:00:01 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): added urls to tug
+ article
+ (section{Proposed new questions}): adjust the balance columns question
+ to mention patricks balance.sty and to rename mine baltools.sty
+
+Sun Apr 22 00:07:16 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): TUG article now
+ only awaiting urls
+
+ * faqbody.tex (throughout): bunch of rewriting \URL commands as \href
+ commands (incomplete)
+
+ * Makefile (html): new target to run texfaq2file
+
+Sat Apr 21 18:19:23 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): question on t1
+ type 1 fonts, and one (as yet incomplete) to replace all three on TUG/
+ other user groups
+
+ * additions.tex: v3.5h, today
+
+ * faqbody.tex (section{Hypertext and PDF}): new section starting with
+ three questions from the "format conversion" section
+ v2.5.4i, today
+
+Fri Apr 20 14:38:55 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.5g, today
+
+ * add-general.tex (section{Proposed new questions}): questions on
+ tabularx and so on, and on non-terminating "rerun" diagnostics
+
+Wed Apr 18 10:38:30 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): added a changebars
+ question
+
+ * filectan.tex: add vertbars.sty and backgrnd.tex
+
+ * dirctan.tex: moved our location to uk-tex-faq
+
+ * additions.tex: pl3.5f, today
+
+ * add-general.tex (section{Proposed new questions}): mention \[sub]
+ includefrom commands in the blurb about import.sty
+
+ * faqbody.tex: 2.5.4h, today
+ (section{Acquiring the Software}): moved findpkg, siteindex and
+ websearch questions to "acquiring the software", and edit blooper out
+ of findpkg
+
+Mon Apr 16 00:16:21 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): start on question
+ about retrieving tex-ish source from final form files
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): added list
+ spacing question from add-general (should this really go to
+ typesetting?)
+ (section{Macro programming}): opt arg and counter-label questions from
+ add-general
+ (throughout): minor editorial change
+ (section{Acquiring the Software}): make reference to web access in the
+ question about archives, and remove reference to the DECUS collection
+ (section{Acquiring the Software}): tone down the question about finding
+ fonts (how does one do this nowadays?)
+ (section{Format conversions}): refer to w3c page on ->html conversion
+
+Sun Apr 15 00:12:06 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): removed the
+ "finding a document's files" proto-question, now taken over by
+ "extending search paths"
+
+ * faqbody.tex (section{You're still stuck?}): add "you don't understand
+ the answer", and "submitting new answers" questions from add-general
+ (section renamed from "perhaps there isn't an answer")
+ v2.5.4g, today
+
+ * markup-syntax: grand updating (for the submission faq)
+
+ * add-general.tex (section{Proposed new questions}): more new uns: opt
+ args that behave like \section's, \refstepcounter and submitting
+ material to the faq
+
+ * additions.tex: pl3.5e, today
+
+ * add-general.tex (section{Proposed new questions}): two new questions,
+ on extending path searches (needs careful review) and on loading files
+ from other directories (the import package)
+
+Sat Apr 14 18:52:30 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex: add import.sty (up-to-date or what?)
+
+Fri Apr 13 16:50:41 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: added pkfix, preprint
+
+Thu Apr 12 11:28:24 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): reference to
+ anonchap (and incidentally tocbibind) in "style of section headings"
+
+ * filectan.tex: added anonchap
+
+Tue Apr 10 00:00:30 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{\MF{} and \MP{}}): renamed section, added
+ question on \MP{} prologues from add-general
+ (section{Special sorts of typesetting}): added questions on style of
+ captions and of document titles, from add-general, and style of
+ section headings and indent after section headings from herein, "how
+ do I do?"
+
+ * texfaq2file: removed redundant $href_script, remove echoing of
+ archive list
+
+ * faqbody.tex: 2.5.4f, today
+
+ * additions.tex: pl3.5d, today
+
+ * faqbody.tex (section{Macro programming}): new section with vaguely
+ programming-related things (6 from "how to do X", one from "things are
+ going wrong" and one from "why does it", plus a new one from
+ add-general.tex
+
+Mon Apr 9 23:59:40 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Typesetting particular types of documents}):
+ changed section name
+
+Mon Apr 9 12:08:07 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Things are Going Wrong...}): <some damned thing>
+ (section{How do I do X in TeX or LaTeX}): incorporated donald a's
+ comments on the hyphenation and raggedness questions
+
+Sun Apr 8 00:32:22 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2file: quick'n'dirty html file generator
+
+Sat Apr 7 16:35:58 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2html-beta (sanitize_line): define \Class
+
+ * faq.sty: add definition of \Class
+
+ * additions.tex: pl3.5c, today
+
+ * add-general.tex (section{Proposed new questions}): question on zero
+ parindent/non-zero parskip
+
+ * filectan.tex: add parskip
+
+Thu Apr 5 10:25:00 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ determining which side of the page we're on
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): hyphenation and
+ ragged right questions from add-general
+ v2.5.4e, today
+
+Wed Apr 4 13:16:41 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: added patchcmd
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): refer to
+ patchcmd in question on (er) patching commands
+
+ * add-general.tex (section{Proposed new questions}): bit more
+ detail on the behaviour of ragged2e
+
+ * faqbody.tex (section{Bibliographies}): bibtex string too long
+ question moved here from "things going wrong"
+
+Wed Apr 4 00:09:17 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): question on ragged
+ right setting, needed by the now-finished hyphenation question
+
+ * faqbody.tex (section{Things are Going Wrong...}): added reference to
+ hyphenat in question about why hyphenation isn't happening
+
+ * dirctan.tex: added hyphenat, schroeder
+
+ * additions.tex: today
+
+ * add-general.tex (section{Proposed new questions}): started "no
+ hyphenation" question
+
+Tue Apr 3 00:21:27 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it do that?}): tidy marginpar and
+ pictex questions
+ v2.5.4d, today
+ (section{Things are Going Wrong...}): \tenrm question, remove .sty from
+ rawfonts
+
+ * add-general.tex (section{Proposed new questions}): minor tidies of
+ the two caption questions
+
+ * additions.tex: today
+
+ * add-general.tex (section{Proposed new questions}): do example in
+ caption format question in the usual three styles, and slight change
+ to text about typesetting caption.dtx for caption2
+
+Mon Apr 2 07:56:15 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: today's date
+
+ * add-general.tex (section{Proposed new questions}): skeleton of
+ question on title formats (vehicle for titling.sty)
+
+ * dirctan.tex: add titling
+
+Sun Apr 1 20:40:44 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * filectan.tex: added chngcntr.sty
+
+ * additions.tex: pl3.5b, today
+
+ * add-general.tex (section{Proposed new questions}): added questions on
+ caption formats, and on footnotes in captions
+
+ * dirctan.tex: added symbols, caption, ccaption
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): rationalise
+ mention of chngpage package in "adjusting the margins"; mention
+ ccaption in the wide figures question; reference to chngcntr in
+ counter manipulation question
+ (section{The joy of TeX errors}): slight reword of \@ question
+ (section{Documentation and Help}): added question about symbols list
+ (head of file): v2.5.4c, today
+
+Thu Mar 29 14:13:36 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta (sanitize_line): as production version
+
+ * texfaq2html (sanitize_line): ignore \vspace*
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): tidied visual
+ typesetting so's texfaq2html could cope, added a missing \\ (names
+ question)
+
+Wed Mar 28 22:42:32 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): added \seename
+ and \alsoname to the list of names
+
+Wed Mar 28 09:25:54 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * filectan.tex: add excel2latex (the .zip file thereof)
+
+ * faqbody.tex: v2.5.4a, today, for ctan installation, then v2.5.4b
+ (section{Format conversions}): added excel2latex
+
+ * dirctan.tex: add fink
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): shortened
+ written-out code for retaining file names, and added reference to
+ fink package
+
+Tue Mar 27 13:05:22 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.5a, today
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ multiple indexes
+
+ * filectan.tex: added multind.sty
+
+ * dirctan.tex: added camel
+
+Mon Mar 26 14:08:37 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl3.5
+
+ * texfaq2html: bring up to date with -beta
+
+ * faqbody.tex: v2.5.4, today, for release
+
+Mon Mar 26 00:11:55 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: today's date
+
+ * add-general.tex (section{Proposed new questions}): start of questions
+ on finding files in multi-file docs, and latex makefiles
+
+Sun Mar 25 10:17:04 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: dated today
+
+ * faqbody.tex (section{Bibliographies}): added bibtex capitalisation,
+ cite sorting, \subsubsubsection and file name qs from add-general
+ dated today
+
+ * add-general.tex: new question on lists
+ (section{Proposed new questions}): add reference to the companion in
+ \sub*section question
+
+Sat Mar 24 15:22:18 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): minor tidying of
+ the missing chars question
+
+ * faqbody.tex (section{Current TeX Projects}): added question on web
+ technologies, from add-general
+ (section{How do I do X in TeX or LaTeX}): added Q-fixnam, with list of
+ fixed names included
+
+ * add-general.tex: added column balancing question
+
+ * dirctan.tex: added nrc
+
+ * additions.tex: pl3.4m, today
+
+ * faqbody.tex (section{PostScript and TeX}): tidy up references to
+ ghostscript, gsview and (new) ghostview
+ (throughout): ensure ghostscript is properly referred to
+ v2.5.3r, today
+
+ * dirctan.tex: restore gsview link as *-directory (this stuff needs
+ moving on ctan)
+
+ * faqbody.tex (section{MF}): remove reference to paradissa which is no
+ longer on the archive
+
+ * dirctan.tex: add sttools
+ removed remaining things found in ctan scan
+
+ * faqbody.tex (throughout): impose consistency on part distributions in
+ ctanrefs environments
+
+Fri Mar 23 08:09:03 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.3q, yesterday
+
+ * additions.tex: pl3.4k, today
+
+ * add-general.tex (section{Proposed new questions}): major hack on the
+ new web technologies question; new question on what to do if you don't
+ understand
+
+Thu Mar 22 10:24:58 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: added pmx and mtx
+
+ * faqbody.tex (section{Special sorts of typesetting}): tidied feynmann
+ question, and added reference to axodraw
+ (section{Special sorts of typesetting}): updated the musi[cx] question,
+ with very aged input from werner icking
+
+ * filectan.tex: added axodraw as a single file (after examining the
+ actual ctan holding)
+
+ * dirctan.tex: removed axodraw
+
+ * faqbody.tex (section{TeX Systems}): comment out the windows 3.1 stuff
+ in "editors and shells" (including the reference to eddi4tex), and
+ refer to the 4alltex cd under (current) windows
+
+ * add-general.tex (section{Proposed new questions}): sorted list of
+ \*name commands (on the *-bits) and corrected somewhat
+
+ * dirctan.tex: add pdfpages
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): mention
+ pdfpages in Q-conditional
+
+Wed Mar 21 13:43:55 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): mention
+ \verbatimtabinput in verbfile
+
+Tue Mar 20 07:54:30 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): suppress mention of
+ sgmlbase (in the absence of evidence that it's going anywhere beyond
+ the toy status); masses of tidying of questions
+
+ * dirctan.tex: make psfonts browsable
+
+ * texfaq2html-beta (sanitize_line): add a 3-mandatory-arg version of
+ \cmdinvoke; add \ae{}
+
+ * Makefile: add a bunch of short aliases for parts of make patch
+
+ * faq.sty: increase ctanrefs \topsep a bit (4pt: half of article.cls
+ default)
+
+ * add-general.tex (section{Proposed new questions}): body to Q-fixnam
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): remove some
+ text of Q-latexwords to Q-fixnam and add reference to that question
+ today's date; tidy code listings, logos questions
+
+ * add-general.tex (section{Proposed new questions}): put reference to
+ docs at end of bibtex caps question
+
+Mon Mar 19 23:18:19 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.4j
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): add question on
+ patching commands from add-general
+ (section{The joy of TeX errors}): \@ question from add-general
+ v2.5.3p
+
+ * add-general.tex (section{Proposed new questions}): corrected code in
+ "what's the name", rewrote sort&compress (for typographic reasons);
+ moved patching and \@ questions to faqbody
+
+Mon Mar 19 16:38:02 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: added snapshot
+
+ * add-general.tex (section{Proposed new questions}): added some words
+ about mike downes's snapshot package, and correct the etex csname i
+ couldn't remember while typing at home (\middle)
+
+Mon Mar 19 08:47:50 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): rather feeble
+ question on bibtex capitalisation
+
+ * filectan.tex: add braket
+
+ * add-general.tex (section{Proposed new questions}): mostly-complete
+ question on dirac brackets
+
+ * additions.tex: today's date
+
+ * faqbody.tex: today's date
+ (section{Special sorts of typesetting}): tidy the "typesetting urls"
+ and "citing urls" questions, and add mention of hyperref's ability to
+ ignore %<eol> in urls
+
+ * dirctan.tex: add bundledoc
+
+ * add-general.tex (section{Proposed new questions}): first stab at
+ "what files" question
+
+Sun Mar 18 08:33:36 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date, no change of versiion
+ (section{How do I do X in TeX or LaTeX}): tidy page-size question and
+ add reference to layout.sty for the diy-er; tidy the letterspacing
+ answer
+
+Sat Mar 17 13:35:37 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2html-beta (sanitize_line): \YandY->Y&amp;Y (!)
+
+ * add-general.tex (section{Proposed new questions}): sorting cites
+ question
+
+ * filectan.tex: add patch
+
+ * add-general.tex (section{Proposed new questions}): questions on file
+ name, patching commands
+
+ * faq.sty: minor adjustments (a) to separate the list from its
+ preceding pargraph, so that raggedness doesn't propagate backwards
+ into that paragraph(!) and (b) to set \topsep zero (prob. not nec.)
+
+ * faqbody.tex (section{The joy of TeX errors}): rehash unprocessed
+ floats question
+ v2.5.3o, today
+
+ * add-general.tex (section{Proposed new questions}): new "errors"
+ question on \@ in vertical mode; minor hacks
+
+ * faqbody.tex (section{Things are Going Wrong...}): tidy up (and
+ marginally correct) the \pagestyle{empty} question, and add soul to
+ the underline question; tidy old font names question; separate the two
+ case in missing symbols question; rehash the \@ question in the light
+ of Q-atvert
+
+Fri Mar 16 13:34:54 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): added scott pakin to helpers
+ list
+ (section{Things are Going Wrong...}): typo \CTANref{morefloats} for
+ endfloat
+
+ * add-general.tex (section{Proposed new questions}): removed tmupfl
+ question
+
+ * faqbody.tex: v4.5.3n, today
+ (section{Documentation and Help}): deja->groups.google
+ (section{Things are Going Wrong...}): remove some of text from Q-floats
+ and replace with reference to Q-tmupfl
+
+ * additions.tex: pl3.4i, today
+
+Fri Mar 16 00:19:03 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): changed title of
+ future web technologies
+ (section{Proposed new questions}): added tmupfl question
+
+Thu Mar 15 10:19:40 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it _do_ that?}): added mdwlist to the
+ "no line here to end" question
+
+ * additions.tex: pl3.4h, today
+
+ * add-general.tex (section{Proposed new questions}): new thing (with
+ stuff from the latex2html question) about the nature of future web
+ technologies
+
+ * faqbody.tex: 2.5.3m, today
+ (section{Format conversions}): yet another rehash of latex2html,
+ following further input from hutchinson
+
+Thu Mar 15 00:20:49 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): yet another iteration,
+ following input from eitan
+ (section{Why does it _do_ that?}): added reference to expdlist for the
+ no line to end question
+ (section{How do I do X in TeX or LaTeX}): tidy conditional compilation
+ and bold greeks questions
+
+Wed Mar 14 09:48:48 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: added \latex2html
+
+ * texfaq2html-beta (sanitize_line): added \latexhtml
+
+ * faqbody.tex (section{Why does it do that?}): added "no line" question
+ (section{How do I do X in TeX or LaTeX}): added "wide figure" question
+
+ * add-general.tex (section{Proposed new questions}): add an actual
+ recommendation on setting wide equations, and move to faqbody
+ (section{Proposed new questions}): no line to end error message too
+ wide for 2-col text, sorted; question moved to faqbody
+
+ * faqbody.tex: today (no change of version since nothing printed
+ (section{Introduction}): add peter wilson -- oops!
+ (section{Documentation and Help}): add "short history of the printed
+ word"
+ (section{Things are Going Wrong...}): minor honing of words of accented
+ hyphenation question and moving tables
+ (throughout): suppress (almost) all personal email addresses
+ (section{Things are Going Wrong...}): add mention of float.sty [H] in
+ the moving tables question
+
+Wed Mar 14 00:12:56 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2html-beta (sanitize_line): preserve ~ in arguments of URLs
+
+Tue Mar 13 22:59:56 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Things are Going Wrong...}): add the famous
+ arseneau parameters to the moving tables question, and add reference
+ to placeins.sty (simultaneously tidying up and de-ponceing the text a
+ bit)
+ v2.5.3k, today
+ (section{Format conversions}): input from eitan gurari and ian
+ hutchinson (coo, they were quick)
+ (section{Introduction}): added eitan gurari and ian hutchinson to the
+ hall of fame
+
+Mon Mar 12 11:33:47 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * filectan.tex: added tth, tex4ht
+
+ * faqbody.tex (section{Format conversions}): ->html question rehashed,
+ including reference to texpider and hevea (both off ctan)
+
+ * dirctan.tex: make latex2html \CTANdirectory*
+
+ * faqbody.tex (section{Format conversions}): rewrote the ->ascii
+ question, including reference to tex2mail and catdvi
+ v2.5.3j, today
+
+ * dirctan.tex: added catdvi
+
+ * faqbody.tex (section{TeX Systems}): removed arbortext and northlake
+ from list of commercial systems (advice from bnb); add keywords to the
+ two systems questions so's bnb can find them by searching
+
+Sun Mar 11 09:22:44 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): new question about
+ subsubsubsections
+
+ * dirctan.tex: add latex (for base dir) and remove fonts/latex with the
+ same name
+
+ * additions.tex: today (no change of patch level)
+
+ * add-general.tex (section{Proposed new questions}): new question about
+ "no line here to end"
+
+Sat Mar 10 15:22:05 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): removed two
+ questions for the benefit of faqbody (vide infra)
+ (section{Proposed new questions}): new wide-figure question
+
+ * faqbody.tex (section{TeX Systems}): added vtex for linux & os/2
+ (section{DVI Drivers and Previewers}): new question about using
+ ghostscript in default of a printer-specific driver
+ (throughout): typos corrected
+ (section{Bits and pieces of TeX}): added encoding and eps questions
+ from add-general
+ v2.5.3i, today
+
+ * faq.cls: added hyphens option when loading url.sty
+
+Fri Mar 9 10:41:09 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): correcting a couple of
+ names, and a typo, in the section on conversion to "other formats"
+
+Thu Mar 8 09:15:30 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.3g, today
+
+ * additions.tex: pl3.4f, today
+
+ * add-general.tex (section{Proposed new questions}): remove questions
+ on character shifts in dvips output, toc, running equation etc,
+ crop marks and fixed positions
+
+ * faqbody.tex (section{Format conversions}): reformat the general
+ conversions question
+ (section{Literate programming}): add reference to dtx in the literate
+ programming question, and tidy up the packages question
+ (section{Support Packages for \TeX{}}): tidy up the spelling, wordcount
+ and fig questions
+ (section{DVI Drivers and Previewers}): minor tidies of previewers
+ (including excision of reference to dviwin, which has been withdrawn)
+ and laserjet questions, and removed reference to dvitops from the ps
+ output program
+ (section{Things are Going Wrong...}): added question on character
+ shifts in dvips output
+ (section{Special sorts of typesetting}): add toc question (from
+ peter wilson, originally)
+ (section{How do I do X in TeX or LaTeX}): add running equation etc,
+ crop marks and fixed positions questions
+
+ * dirctan.tex: add rtf2latex2e
+
+ * faq.sty: compact decsription environment, too
+
+ * faqbody.tex (section{Format conversions}): add question on quality of
+ PDF output, from add_general; tidy up question on generating pdf, link
+ to one on quality
+
+Tue Mar 6 23:18:23 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): narrow some of
+ the lines of code in principal value integral question, when doing
+ tex-only output; tidy footnotes in tables question
+
+ * add-general.tex (section{Proposed new questions}): wrap code in
+ running numbering question, when doing tex-only output
+
+ * faqbody.tex (section{Macros for Particular Types of Documents}): add
+ peter wilson's combine stuff to the question on multi-article
+ documents, and minor tidy of the vita class question
+
+Tue Mar 6 10:03:40 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * filectan.tex: added removefr
+
+ * add-general.tex (section{Proposed new questions}): add "running
+ numbering" question
+
+ * faqbody.tex (section{Bits and pieces of TeX}): yet more diddling with
+ ec question
+
+ * additions.tex: pl3.4e, today
+
+ * faqbody.tex (section{Acquiring the Software}): removed ip address of
+ wuarchive
+ (section{Bits and pieces of TeX}): small rewording of hyphenation q
+ v2.5.3f, today
+ (section{Bits and pieces of TeX}): extend and reword ec font q
+
+ * add-general.tex (section{Proposed new questions}): minor improvements
+ to text of encoding and acrobat questions
+
+Mon Mar 5 11:40:20 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): two minor
+ improvements to the encodings, pdf output questions
+
+ * faqbody.tex (section{Acquiring the Software}): fptex local default is
+ texmf-local
+
+Sun Mar 4 00:00:57 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (chapter{Preface}): tidy "style of section headings"
+ (section{PostScript and TeX}): tidy wrapping of urls in the font
+ choice question
+ v2.5.3e, today
+
+Sat Mar 3 13:59:57 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): tidying the
+ section (un)numbering question
+
+ * dirctan.tex: added tocloft
+
+ * add-general.tex (section{Proposed new questions}): dvips output for
+ pdf, weird character mapping questions
+ (section{Proposed new questions}): added peter wilson's tocloft
+ question
+
+ * dirctan.tex: added textpos
+
+ * add-general.tex (section{Proposed new questions}): crop and textpos
+ questions
+
+ * faqbody.tex (section{\TeX{} Systems}): added brief info from carlos
+ santos re. windvi's printing capability
+ (section{Introduction}): added carlos santos to list of helpers
+ v2.5.3d, today
+ (section{Special sorts of typesetting}): tidied the fancyhdr question
+
+ * additions.tex: today (no change of patch level)
+
+ * add-general.tex (section{Proposed new questions}): yet again, hacking
+ at encodings question
+
+Fri Mar 2 14:22:08 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * filectan.tex: askinclude now from latex/contrib/other/misc
+
+ * dirctan.tex: removed mathpple
+
+Fri Mar 2 07:20:03 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: today (no change of patch level)
+
+ * add-general.tex (section{Proposed new questions}): yet more fiddling
+ with the encodings question ("philosophy")
+
+Thu Mar 1 21:20:49 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): filled out the
+ body of "what is encapsulated postscript"
+
+ * additions.tex: pl3.4c, today
+
+ * add-general.tex (section{Proposed new questions}): honing the words
+ in "what are encodings"
+
+ * faqbody.tex (section{PostScript and TeX}): add mathpazo (serious drop
+ off that i hadn't mentioned it before)
+
+ * dirctan.tex: add mathpazo
+
+ * faqbody.tex: v2.5.3c, today
+
+Thu Mar 1 09:44:55 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PostScript and TeX}): added pxfonts to question
+ on font choice, updated txfonts outline
+
+ * dirctan.tex: added emtextds, pxfonts
+
+ * faqbody.tex (section{Things are Going Wrong...}): hack around to
+ cause texfaq2html not to be fazed by verbatim \\ commands
+ (section{TeX Systems}): ftp.math.utah.edu's ip address has changed --
+ removed it altogether
+
+ * texfaq2html-beta (sanitize_line): explicitly squash "{}" if it
+ survives to the end of the main conversion scan
+
+ * filectan.tex: morefloats->latex/contrib/other/misc
+
+Tue Feb 27 07:20:48 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.4b, today
+
+ * faqbody.tex (section{TeX Systems}): slight rearrangement of ctanrefs
+ in "(la)tex for different systems"
+
+ * add-general.tex (section{Proposed new questions}): three questions
+ transferred (see below)
+ (section{Proposed new questions}): bunch of diddling with the encodings
+ question (still not right, though)
+
+ * faqbody.tex (section{Special sorts of typesetting}): hack the
+ indexing question (new style ctan references, expand remarks about
+ xindy and about makeindex sorting issues)
+ (throughout): minor markup adjustments/typo corrections
+ (section{Special sorts of typesetting}): verbatim input, line numbering
+ and typesetting urls questions tidied to new format
+ (section{How do I do X in TeX or LaTeX}): using underscores, no page
+ nos and typing "@", from add-general
+
+ * dirctan.tex: * to xindy
+
+ * faqbody.tex: v2.5.3b, today
+
+Sun Feb 25 00:09:42 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): tidied up the freely-distributed
+ software question
+ (section{\TeX{} Systems}): further iteration of same (after a good
+ night's sleep ;-), also added more detail about web2c
+ (section{Special sorts of typesetting}): converted the `wrapping
+ figures' to new form, since it always did look untidy.
+
+Sat Feb 24 00:07:21 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{TeX Systems}): start of rearranging the non-
+ commercial systems part of the section
+
+ * dirctan.tex: added bakoma-tex
+
+ * faqbody.tex (section{Bits and pieces of TeX}): add "what is hyphen-
+ ation" question
+ (section{The joy of TeX errors}): add "bad hyphenation" question
+
+ * add-general.tex (section{Proposed new questions}): remove "what is
+ hyphenation" and "bad hyphenation" questions
+
+ * additions.tex: pl3.4a, today
+
+ * dirctan.tex: plain now refers to base only
+
+ * faqbody.tex (section{Things are Going Wrong...}): added "no
+ hyphenation" question at start of section
+
+ * add-general.tex (section{Proposed new questions}): removed "no
+ hyphenation" question
+
+ * faqbody.tex (section{Metafont}): scale down the panic of the bitmap
+ fonts question -- convert into advice to start using type 1 versions
+ v2.5.3a, today
+
+ * dirctan.tex: bluesky (was a reference to their mac mf port) becomes a
+ reference to the "bluesky" cm fonts
+
+Fri Feb 23 23:54:03 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: ps-type1 -> \CTANdirectory*
+
+Thu Feb 22 12:28:58 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html: brought in all -beta changes
+
+ * texfaq2html-beta: sit on $_ (in case we're not producing an intro) so
+ as not to get a lone "introduction", and dump the "index" statement in
+ front of the list of questions; various other minor tidies
+
+ * dirctan.tex: corrected dratex (another from dan l)
+
+ * faqbody.tex (section{Special sorts of typesetting}): mfpic can now do
+ \MP output (alert from dan luecking)
+
+Thu Feb 22 07:30:54 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PostScript and TeX}): first stab at rehashing
+ the figures question (pretty major rewrite, but issues remain)
+ today's date
+
+Wed Feb 21 09:17:47 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2html-beta: blundering attempt to create a better header; and
+ similarly distance from uktug in the footer
+
+ * faqbody.tex (section{PostScript and TeX}): redo question about
+ previewing files with type 1 fonts in 'em
+ (section{The Background}): less prissy about the reference to the list
+ of commercial vendors
+ (section{Format conversions}): tidy up question about generating pdf
+ (was talking about archaic versions of ghostscript)
+ (section{PostScript and \TeX{}}): renamed question deploying type 1
+ fonts ... substantial rewrite
+ (section{Introduction}): added mike vulis to ack list (belatedly)
+
+ * dirctan.tex: ghostscript nonfree; added gsview (with wrong value)
+
+ * faqbody.tex: v2.5.3, today
+
+Tue Feb 20 11:46:36 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta: add a couple of <hr> directives, after the
+ "preamble", and before the "tail"
+
+ * dirctan.tex: added refcheck and crop
+
+Mon Feb 19 10:40:43 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bibliographies}): entire new section
+
+ * add-biblio.tex: ripped out entire text
+
+ * faqbody.tex (section{Special sorts of typesetting}): added the
+ document font sizes question
+
+ * add-general.tex (section{Proposed new questions}): removed the
+ document font sizes question
+
+ * faqbody.tex (section{Special sorts of typesetting}): added the
+ landscape typesetting question
+
+ * add-general.tex (section{Proposed new questions}): removed the
+ landscape typesetting question
+
+ * faq.sty: added a bit of raggedness to the ctanrefs environment
+
+ * faqbody.tex (section{Things are Going Wrong...}): add the end-line
+ question
+
+ * add-general.tex (section{Proposed new questions}): removed the end-
+ line thing
+
+ * texfaq2html: bring up to date with -beta (== -alpha) version
+
+ * faqbody.tex (section{Introduction}): add dan luecking
+
+ * add-general.tex (section{Proposed new questions}): added caveat about
+ viewing rotated output to landscape question
+
+ * texfaq2html-alpha (sanitize_line): add \YandY [does a raw & really
+ work reliably in html?]
+
+ * faq.sty: define \YandY
+
+ * faqbody.tex (throughout): \YandY for the company, for consistent
+ typesetting
+
+Sun Feb 18 00:14:33 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): rewording of the
+ "what is hyphenation" and "encodings" questions
+ (section{Proposed new questions}): new question on landscape
+ typesetting
+
+ * additions.tex: update to today
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ encodings (started yesterday)
+
+Sat Feb 17 15:56:43 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.4, today
+
+ * faqbody.tex: v2.5.2f, today
+ (throughout): article->FAQ where appropriate
+ (section{How do I do X in TeX or LaTeX): alter "changing babel's ideas"
+ to one that takes in the whole gamut, and thus renders redundant:
+ (section{Why does it do that?}): "why won't fixed names stay fixed",
+ which is therefore deleted
+
+ * newfaq-patch.tex,letterfaq.tex,newfaq.tex: slim down heading, again
+
+ * faqbody.tex (throughout): Plain \TeX{} now uniformly used
+ (subsection*{Finding the Files}): new slim-line slightly less pompous
+ intro (no tedious lists of committee members, which are impossible to
+ maintain when the committee don't maintain their web site)
+
+ * add-general.tex (section{Proposed new questions}): filled out the
+ \hyphenation error question
+
+ * texfaq2html-alpha: deal with label=, generate a label= URL at end for
+ people to quote, use \faqfiledate, \faqfileversion (oops)
+
+Fri Feb 16 13:59:41 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2html-alpha (sanitize_line): add code for \textbf
+
+Thu Feb 15 11:25:45 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): add the babel
+ question at end of section
+
+ * add-general.tex (section{Proposed new questions}): tidied up
+ representation of the babel error messages still further (option for
+ pdf printing, too)
+ (section{Proposed new questions}): removed babel question
+
+ * additions.tex: pl3.3, today
+
+ * faqbody.tex: 2.5.2e, today
+
+ * add-general.tex (section{Proposed new questions}): add the miktex 2
+ gen for the babel "add new language" question
+
+ * faqbody.tex (section{Acquiring the Software}): minor typographic
+ consistency changes in description of miktex 2.0 package install
+
+Wed Feb 14 13:44:07 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Things are Going Wrong...}): tidied up the
+ question about hyphenating accented letters
+ v2.5.2d, today
+
+ * add-general.tex (section{Proposed new questions}): start on question
+ about "improper hyphenation" error message
+
+ * texfaq2html-beta (sanitize_line): added \csx
+
+Mon Feb 12 14:42:27 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: 2.5.2c, today
+ (section{Documentation and Help}): recorded details of knuth boxed set
+
+Fri Feb 9 11:33:00 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.2b, today
+ (section{Documentation and Help}): replaced old references to french
+ and german faqs with a {booklist}, and added spanish and czech
+ (section{The Background}): slight iteration of the context question
+
+Thu Feb 8 13:41:36 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): question on \\
+ arguments
+
+Wed Jan 31 11:41:12 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: extra indirection (via texinfo) for both texinfo and
+ makeinfo
+
+ * faqbody.tex (section{The Background}): texinfo to use whole (sub-)
+ directory reference
+
+ * filectan.tex: removed texinfo-dist (no longer on archive)
+
+ * faqbody.tex (section{Format conversions}): expand referencing of vtex
+ (this is going to look gross...)
+
+ * dirctan.tex: pass to deal with check-ctan-lists diagnostics
+
+ * faqbody.tex (section{Special sorts of typesetting}): \textpercent{}
+
+ * texfaq2html-beta (sanitize_line): added \item[\normalfont{}...];
+ require \textpercent{}
+
+ * add-biblio.tex (section{Bibliographies}): added question on entries
+ in text of docs; added body of "writing your own .bst" question
+
+ * dirctan.tex: added inlinebib, jurabib, footbib
+
+Wed Jan 31 00:04:26 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex,additions.tex: \faqfileversion, \faqfiledate (because of
+ the confusion with definitions introduced by nameref.sty
+
+ * faqbody.tex: v2.5.2a, today
+
+Tue Jan 30 23:28:17 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl3.1, today
+
+ * newfaq.tex,letterfaq.tex,newfaq-patch.tex: use \ref* in the title,
+ \ifpdf; \faqfileversion, \faqfiledate
+
+ * add-general.tex (section{Proposed new questions}): have the correct
+ layout of the babel message (in the "new language" question) for html
+ generation
+
+Mon Jan 29 12:17:28 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html: bring up to date with latest thinking in -beta version
+
+ * faq.sty: add \[oc]bracesymbol
+
+ * texfaq2html-beta (sanitize_line): moved \symbol to the end
+ (sanitize_line): add \obracesymbol and \cbracesymbol
+
+ * additions.tex: comment out add-errors, pl3.0, today
+
+ * faqbody.tex (section{TeX Systems}): tidied miktex text
+ v2.5.2, today
+ (section{The joy of TeX errors}): moved en bloc from add-errors
+
+Tue Jan 23 16:58:28 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Things are Going Wrong...}): update the miktex
+ question with a reference to 2.0
+ (section{TeX Systems}): update remarks about miktex
+
+ * dirctan.tex: miktex itself now a *-reference to miktex/2.0
+
+ * filectan.tex: deleted miktex-latex, added miktex.zip
+
+Fri Jan 19 12:46:49 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * Makefile (clean): add *patch.aux
+
+ * add-general.tex (section{Proposed new questions}): question-ette
+ about typing @ signs
+
+ * additions.tex: pl2.14, today
+
+ * add-general.tex (section{Proposed new questions}): change reference
+ to carlisle to nopageno (\CTANref doesn't have a * form -- duh!)
+
+Thu Jan 18 11:37:53 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): new question on
+ "no page numbers"
+
+ * req.qs: bbl2html question
+
+Wed Jan 17 13:33:56 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl2.13, today
+
+ * add-general.tex (section{Proposed new questions}): question on eps
+ (outline only, as yet)
+
+Tue Jan 16 12:05:46 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta (sanitize_line): definition of \item _doesn't_ need
+ "."s to separate the variable instances...
+
+ * faqbody.tex (section{Introduction}): make reference to the dante faq
+ use \href
+
+ * texfaq2html-beta (sanitize_line): add \href
+
+ * faqbody.tex (section{The Background}): add knuth's url to the first
+ occurrence of his name
+
+ * faq.sty: add an \href command, that only has effect in the absence of
+ pdf generation (hyperref providing the necessary otherwise)
+
+ * faqbody.tex: v2.5.1d, today
+ (section{Documentation and Help}): corrected isbn for lamport 2nd ed
+ (section{Documentation and Help}): add reference to knuth's nimellium
+ boxed set (though no details since a-w can't get their act together)
+ (section{Documentation and Help}): update math into latex reference to
+ vol 3
+
+Tue Jan 16 11:40:37 2001 Robin Fairbairns <rf@huntingdon.cl.cam.ac.uk>
+
+ * additions.tex: pl2.12, today
+
+ * filectan.tex: underscore
+
+ * add-general.tex (section{Proposed new questions}): question on
+ underscore
+
+Sun Jan 14 20:59:29 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-errors.tex (section{The joy of TeX errors}): more on the
+ structure question
+
+ * additions.tex: pl2.11, today
+
+ * add-errors.tex (section{The joy of TeX errors}): refer to structure
+ question from the philosophy question
+
+ * add-general.tex (section{Proposed new questions}): reindented the
+ "missing character" messages for the tex versions
+
+Fri Jan 12 14:06:40 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: today's date (previous pl not yet printed out)
+
+ * add-general.tex (section{Proposed new questions}): finished the
+ hyphenation question, and added another about hyphenation problems and
+ their solution
+
+Thu Jan 11 21:42:45 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex: pl2.10, today
+
+ * add-general.tex (section{Proposed new questions}): start of the body
+ of the hyphenation question
+
+Tue Jan 9 14:59:56 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): minor tweaks to
+ the text of the babel question, and skeleton for a question on hyphen-
+ ation
+
+ * additions.tex: pl2.9, today
+
+ * add-errors.tex (section{The joy of \TeX{} errors}): v1 closure on
+ first question of section, and proposal for yet another new question
+ about the structure of error messages
+
+ * faq.sty: adjust \topsep in itemize and enumerate, and do the same to
+ verbatim
+
+ * faqbody.tex (section{The Background}): change reference to books
+ question
+
+ * add-biblio.tex (section{Bibliographies}): some wrapping of verbatim
+ text, and minor text tidies
+
+Fri Jan 5 18:08:32 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl2.8, today
+
+ * add-general.tex (section{Proposed new questions}): added caveat about
+ running out of pattern memory when adding a new hyphenation pattern
+
+Thu Jan 4 15:44:41 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta (sanitize_line): process `` and '' to ", and
+ isolated ` to ' (for the benefit of m$ browsers)
+ evaluate $last_question, $next_question and $previous_question as
+ we go along, and use them to produce pointers to previous and
+ next in the footer of the generated page, if appropriate
+
+Tue Jan 2 14:17:33 2001 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta (sanitize_line): make \ProgName and \Package accept
+ arguments in braces
+
+ * faq.sty: make \FTP, \File, \CTAN and \ProgName robust
+
+ * add-biblio.tex (section{Bibliographies}): lists of authors question
+
+ * additions.tex: pl2.7, today
+
+ * add-general.tex (section{Proposed new questions}): new question on mp
+ prologues
+
+Mon Jan 1 17:15:11 2001 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * texfaq2html-beta: normalise tabbing in perl code
+
+Sat Dec 30 16:35:47 2000 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex: v2.5.1c, today
+
+ * additions.tex: pl2.6, today
+
+ * add-biblio.tex (section{Bibliographies}): ctanrefs at end of bibs per
+ section question
+
+ * faqbody.tex (section{Why does it do that?}): add pointers to fancyvrb
+ and verbdef packages in the question on verbatim in arguments
+
+ * filectan.tex: add verbdef.sty
+
+ * add-general.tex (section{Proposed new questions}): bit more at end of
+ missing characters question
+
+Wed Dec 27 14:19:48 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): missing characters
+
+ * faq.sty: minor typo corrected
+
+Tue Dec 26 16:39:47 2000 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faq.sty: compact the booklist and ctanrefs environments, and
+ compactify standard itemize and enumerate environments
+
+Sun Dec 24 10:26:08 2000 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-errors.tex (section{The joy of TeX errors}): filling out the
+ answer (work vaguely started last evening, and will probably take the
+ whole holiday...)
+
+Fri Dec 22 17:25:04 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex: pl2.4, today
+
+ * faqbody.tex (section{Introduction}): added giuseppe bilotta and
+ michael dewey to list of helpers
+
+ * add-general.tex (section{Proposed new questions}): provided format
+ generation instructions for the babel new language question
+
+ * faqbody.tex (section{Acquiring the Software}): tidy list at end of
+ "installing" question
+ 2.5.1b, today
+
+Thu Dec 21 00:24:20 2000 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): tiny adjustment to
+ punctuation of \edef question, and a bit of rewording of one of
+ michael's sentences
+
+Wed Dec 20 16:56:43 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-general.tex (section{Proposed new questions}): new question
+ on \protected@[ex]def using some nice words of mjd's
+
+Tue Dec 19 10:00:41 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * Makefile (PATCH): add add-general
+
+ * additions.tex: replace body by \input of add-general
+
+ * add-general.tex: was body of additions.tex
+
+ * archive.list: correct list
+
+ * texfaq2html-beta: add code to deal with ctanrefs environment
+ (involves extra stuff in \item[...])
+ change default to cam.ctan.org
+
+ * Makefile (PATCH): add add-biblio.tex
+ add newfaq.aux as label parallel to newfaq.dvi; this satisfies a
+ dependency in the web and web-beta rules
+
+ * additions.tex: pl2.2, today
+
+ * faq.sty: define ctanrefs environment
+
+ * add-biblio.tex (section{Bibliographies}): fill out multiple
+ bibliographies question, introduce new ctanrefs environment for the
+ places to pull stuff from
+
+Mon Dec 18 11:42:43 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: added extsizes
+
+ * additions.tex (section{Proposed new questions}): extsizes question
+
+ * faqbody.tex: v2.5.1a, today
+
+ * texfaq2html (sanitize_line): as -beta version
+
+ * texfaq2html-beta (sanitize_line): add a couple of instances of
+ \cmdinvoke translation (cf comments on what's available in faq.sty)
+
+ * faq.sty: added \cmdinvoke
+
+ * faqbody.tex (section{Why does it do that?}): add reference to
+ textcase in the case-changing question
+
+ * dirctan.tex: add carlisle
+
+Fri Dec 15 16:41:49 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-biblio.tex (section{Bibliographies}): New file, some biblio
+ questions (mostly somewhat fragmentary), in a section of their own...
+
+ * dirctan.tex: added cite (the arseneau stuff) and bibunits ... and
+ multibib and bibtopic
+
+ * additions.tex: pl2.0, today; \input add-biblio
+
+Thu Dec 14 13:30:36 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: change url referring to archive (twice)
+ v2.5.1
+
+ * add-errors.tex (section{The joy of TeX errors}): it's isn't a
+ possessive!!!!!!
+
+ * texfaq2html: add provision for dealing with \symbol commands, tidy up
+ the url for the whole faq for the bottom of each message, and add "not
+ a help address" after email address
+ synchronise with texfaq2html-beta (incl adding title-modifier stuff)
+
+ * Makefile: add targets inst-perl and inst-perl-beta
+
+ * faqbody.tex (section{Things are Going Wrong...}): add reference to
+ new version of miktex's latex.zip
+ v2.5 (!)
+
+ * filectan.tex: added miktex 1.20 latex.zip
+
+ * faqbody.tex (throughout): htmlonly env -> htmlversion (oops!)
+ v2.4.8d, today
+
+Tue Dec 12 22:19:19 2000 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): couple of tidies in
+ question on using quote site index; add new question on web searching
+ (section{Acquiring the Software}): remove outline of the web search
+ facility from question on repositories, and make reference to both
+ searching questions in place of partial duplication and reference to
+ one
+ 2.4.8c, today
+
+Mon Dec 11 11:07:56 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Support Packages for TeX}): add the wordcount
+ question
+ (section{Special sorts of typesetting}): add the watermarks question
+ (section{Acquiring the Software}): hacked the commercial stuff out of
+ the CDs question, and corrected the 4alltex bit to refer to windoze
+ rather than ms-dog
+
+ * add-errors.tex (section{The joy of TeX errors}): new section title,
+ and a couple of new questions (no room for a new..., and what to do
+ when epsf produces that diagnostic)
+
+ * faqbody.tex: 2.4.8b, today
+ (section{Special sorts of typesetting}): moved the script fonts
+ question from additions
+ (section{Why does it do that?}): replaced question about pictex and
+ register usage with improved one from additions
+
+ * additions.tex (section{Proposed new questions}): big hack on the
+ script fonts question, including lots of source references and
+ reference to the new scriptfonts thing; then moved question to faqbody
+ removed pictex, watermarks and wordcount questions
+
+ * filectan.tex: add eucal and mathscript
+
+ * dirctan.tex: add rsfs-type1 and jknappen-macros
+
+ * additions.tex (section{Proposed new questions}): change title of
+ pictex question
+
+ * Makefile (newfaq-patch): typo in yesterday's update
+
+Mon Dec 11 00:02:15 2000 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex (section{Proposed new questions}): Tidied up Babel
+ question; still to complete the section on building a format at the
+ end (don't understand that at all -- does texconfig exist for other
+ than tetex systems, for example?
+
+Sun Dec 10 17:35:09 2000 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * Makefile: replace all use of latexmk with the while-loop/get cross
+ construct
+
+ * additions.tex (section{Proposed new questions}): remove question
+ that's gone to faqbody
+ pl1.14, today
+
+ * faqbody.tex (section{Documentation and Help}): add question on
+ writing latex classes and packages
+ 2.4.8a, today
+
+ * filectan.tex: add latex-source
+
+Sat Dec 9 21:24:54 2000 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * additions.tex (section{Proposed new questions}): remove question
+ about conditional compilation
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): replace
+ question about excluding sections of a document with one about
+ "conditional compilation"
+
+ * additions.tex (section{Proposed new questions}): remove miktex
+ question
+ (section{Proposed new questions}): touch up pictex question with words
+ from existing one (mentioning the contex module that the yesterday's
+ effort omitted)
+
+ * faqbody.tex (section{Things are Going Wrong...}): add miktex question
+ (slightly reworded)
+
+ * additions.tex: pl1.13, today
+ (section{Proposed new questions}): junk question on recognising new
+ package files, since we've now integrated all the matter on these
+ ideas into two questions that have gone to faqbody
+ (section{Proposed new questions}): wrap code in script fonts question
+ so's not to overrun the verbatim margins
+
+ * faqbody.tex: v2.4.8, today
+
+ * additions.tex (section{Proposed new questions}): Remove the first two
+ questions to faqbody.tex
+
+ * faqbody.tex (section{Acquiring the Software}): Two new questions
+ lifted from additions.tex
+
+Fri Dec 8 09:51:42 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * add-errors.tex,additions.tex (throughout): normalised \Question cmds
+
+ * faqbody.tex: (throughout) TeX-systems (as Qref label) -> Q-TeXsystems
+ v2.4.7q, today
+ (throughout): normalise all \Question commands to have optional
+ argument [Q-<alpha string>]
+
+ * additions.tex (section{Proposed new questions}): question about the
+ miktex-latex problem
+ pl1.12, today (happy birthday Ma)
+
+ * faqbody.tex (section{PostScript and TeX}): removed comment at end of
+ type 1 fonts question (no date/time or version change this time)
+
+Tue Dec 5 10:22:48 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): label on the pictex
+ manual question (and remove old commented-out text about the
+ arrangement that used to exist for getting it from tug)
+ v2.4.7p, today
+ (section{Introduction}): add dick nickalls to list of helpers
+
+ * additions.tex (section{Proposed new questions}): added version.sty
+ and verbatim.sty to yesterday's question on conditional compilation
+ input add-errors at end
+ pl1.11, today
+
+ * filectan.tex: add version.sty
+
+ * add-errors.tex: errors section from additions.tex
+
+Mon Dec 4 13:23:04 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex (section{Proposed new questions}): question on
+ conditional compilation, from a c.t.t answer by donald arseneau
+ patch level 1.10, today
+ bunch of \Qref commands tidied not to produce "see" twice in the
+ printed output
+
+ * filectan.tex: remove comment (it's in a directory of its own, now)
+ add askinclude
+
+ * dirctan.tex: add pagesel (contrib/supported/oberdiek, in fact)
+ add comment
+
+ * filectan.tex: add selectp.sty
+
+ * faqbody.tex (section{Why does it do that?}): add label to \include
+ question
+ 2.4.7o, today
+
+Mon Nov 20 13:21:01 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex (section{Proposed new questions}): avoid column
+ overruns in verbatim `meta' sections in "where to put files"
+
+Tue Nov 14 13:23:57 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex (section{Proposed new questions}): tidied up
+ "installing a new package question
+ pl1.8, today
+ (section{Proposed new questions}): question on where to put files ...
+ very much in prototype stage just now (all in verbatim)
+
+ * faqbody.tex (section{Current TeX Projects}): add subscription info
+ for the pdftex list
+ v2.4.7n, today
+
+Tue Nov 7 11:23:44 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PostScript and TeX}): txfonts now have t1 and ts
+ encodings
+
+Wed Nov 1 12:24:01 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): added anthony goreham to
+ the list of helpers
+
+ * additions.tex (section{Proposed new questions}): added a thing
+ on formal scripts from anthony goreham
+
+Tue Oct 31 10:00:51 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: expunged all reference to gopher
+
+ * faqbody.tex (section{TeX Systems}): do away with reference to ctan
+ copy of 4alltex
+
+ * filectan.tex: corrected a bunch found by the script
+
+ * check-ctan-lists: new, jiffy checking script for (dir|file)ctan.tex
+
+Mon Oct 30 23:46:55 2000 Robin Fairbairns <rf@betsy.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): Add a question on LaTeX2e
+ v 2.4.7m, today
+
+Sat Oct 28 14:56:43 2000 Robin Fairbairns <rf@betsy.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): reference to
+ chngpage in question about changing margins
+
+ * filectan.tex: add chngpage; correct entry for comment.sty
+
+ * additions.tex (section{The joy of TeX error messages}): typo in
+ setting { (nb -- \symbol still not yet in texfaq2html)
+
+ * filectan.tex: added pdftex-oztex
+
+ * faq.sty: double accent for doing han the thanh `properly'
+
+ * faqbody.tex: v2.4.7l, today
+ (section{Current TeX Projects}): remove question on latex2e; move small
+ amount of matter from it into updated question on latex3; tidy and
+ update questions on omega, nts and pdftex
+
+Thu Oct 26 09:57:20 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: add txfonts
+
+ * faqbody.tex (section{DVI Drivers and Previewers}): made a Ghostscript
+ reference uniform with rest (i.e., capitalised)
+ (section{PostScript and TeX}): details of the txfonts
+ v 2.4.7k, today
+
+Thu Oct 12 13:04:51 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: dvi2tty -> nonfree
+
+ * additions.tex (section{The joy of TeX error messages}): new question
+ about `extra }' (moving fragile command)
+
+ * Makefile: made web target a modified copy of web-beta
+
+ * filectan.tex: commented out fullpage
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): remove
+ reference to fullpage.sty, add geometry (by, that dates it); put a
+ label on footnotes in latex section headings
+ version 2.4.7j, today
+
+ * dirctan.tex: added geometry
+
+Mon Oct 9 12:30:34 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex (section{The joy of TeX error messages}): new section;
+ first two questions are general advice, and semantic nest
+
+Tue Sep 26 12:05:29 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faq.sty: repeated and undefined CTAN label warnings NoLine; repeated
+ CTAN labels counted and re-warned \AtEndDocument (as undefined labels
+ have been for some time)
+
+ * filectan.tex: abstract->abstract-bst
+
+ * faqbody.tex (section{Things are Going Wrong...}): in the bibtex
+ question, abstract->abstract-bst
+ 2.4.7h1, today
+
+ * additions.tex (section{Proposed new questions}): wordcount question;
+ pl5, today
+
+ * dirctan.tex: added wordcount
+
+Wed Sep 20 10:43:17 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * additions.tex (section{Proposed new questions}): added a question
+ about one float per float page; pl4, today
+
+ * faqbody.tex (section{Things are Going Wrong...}): add Q-floats label
+ to moving tables and figures question
+
+Fri Sep 15 11:42:25 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Current \TeX{} Projects}): tidy up references to
+ omega implementations
+
+Thu Sep 14 10:27:00 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html-beta: title to contain beta indicator
+
+ * faqbody.tex (section{PostScript and \TeX{}}): added remaining
+ micropress font sample urls
+
+ * texfaq2html-beta: new file; runs beta sources
+ added question number to title if exactly one question requested
+
+ * faqbody.tex: 2.4.7h, today
+ (section{Documentation and Help}): removed frivolity about rtfm in
+ `where to get help' (at Manuel Gutierrez' suggestion)
+
+ * additions.tex (section{Proposed new questions}): add note of
+ confirmation of the sequence for refreshing the fndb under miktex
+
+Tue Sep 12 23:20:53 2000 Robin Fairbairns <rf@betsy.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): sound depressed about
+ deja
+ (preamble): today, v2.4.7g
+
+Sun Sep 10 10:22:45 2000 Robin Fairbairns <rf@betsy.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): upgrade of the
+ unnumbered sections question (from peter wilson), and of the 1-column
+ abstract question (from same source)
+
+ * dirctan.tex: added tocvsec2, tocbibind, abstract
+
+Sat Sep 9 14:15:21 2000 Robin Fairbairns <rf@betsy.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PostScript and TeX}): bunch of new stuff from
+ berthold and mike updating the section on scalable outline fonts
+ (section{Documentation and Help}): add a first reference to teencontrex
+ (section{Acquiring the Software}): correct address for the ctan list in
+ `contributing to the archives'
+
+ * dirctan.tex: added hvmath, tmmath and teencontrex
+
+ * faq.sty: make the tex logo robust
+
+Fri Sep 8 17:55:13 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: redid reference to c++2latex
+
+ * faqbody.tex (section{Documentation and Help}): correct a \dots
+ invocation in "where to get help"; recommend ctan search web address
+ rather than the catalogue direct
+ (section{How do I do X in TeX or LaTeX}): added reference to c++2latex
+ for typesetting code, at the suggestion of Michael Soulier
+
+Tue Aug 22 14:39:09 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): slight tidying
+ of matter in question about dashed integrals
+
+Sun Aug 20 17:27:55 2000 Robin Fairbairns <rf@gordon.cl.cam.ac.uk>
+
+ * dirctan.tex: added vmargin (now in supported)
+
+ * filectan.tex: removed vmargin
+
+Mon Jul 24 09:26:41 2000 Robin Fairbairns <rf@betsy.cl.cam.ac.uk>
+
+ * dirctan.tex: add ams-AMStype1
+
+ * faqbody.tex: v 2.4.7f, today
+ (section{PostScript and \TeX{}}): more work on the fonts stuff
+
+Sat Jul 22 10:24:05 2000 Robin Fairbairns <rf@betsy.cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): add donald's
+ "typesetting principal value integral"
+ v2.4.7d, today
+ (section{Introduction}): removed email address for bodenheimer, which
+ hasn't (afaik) worked for some time
+
+Fri Jul 21 17:46:09 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PostScript and TeX}): berthold's stuff on
+ outline fonts (mike's is harder work ;-)
+ v 2.4.7c, today
+
+ * dirctan.tex: add cm-AMStype1
+
+Wed Jul 19 10:18:36 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html (sanitize_line): add \arrowhyph
+
+ * faq.sty: added \arrowhyph
+
+ * additions.tex (section{Proposed new questions}): moved Peter Wilson's
+ one on getting a new package
+
+ * faqbody.tex: v2.4.7b, today
+ (section{Special sorts of typesetting}): correct address for mutex
+
+Mon Jul 10 15:07:48 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * dirctan.tex: explicit location for tds (will presumably never now be
+ version 1.0 ...
+
+ * faqbody.tex (section{Support Packages for \TeX{}}): removed vortex
+ (section{Bits and pieces of \TeX{}}): add pw's on the tds
+
+Fri Jul 7 12:26:22 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html (sanitize_line): make \begin|\end{htmlversion} ignore
+ entire line
+
+ * faqbody.tex (section{Documentation and Help}): new question on \MF
+ and \MP tutorials (pw again)
+ v2.4.7a, today
+
+ * filectan.tex: added metafp.(ps|pdf)
+
+ * faqbody.tex (section{The Background}): pw's revision to mp answer
+ (section{Documentation and Help}): couple of additions to booklists
+ (section{Documentation and Help}): pw's major addition to mail list
+ stuff
+
+ * texfaq2html (sanitize_line): add \PDFLaTeX
+
+ * faq.sty: add \PDFLaTeX
+
+Sat Jul 1 13:12:00 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): added peter wilson to list of
+ acknowledgements
+ (section{Documentation and Help}): the first of peter wilson's new
+ answers -- books on type
+
+Fri Jun 23 12:26:31 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): give locations for
+ ctan servers, and correct www address for tug box search script
+
+Wed Jun 21 13:41:17 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * texfaq2html (sanitize_line): ignore \keywords argument
+
+ * faq.sty: add \keywords command (ignores argument, carefully)
+
+ * faqbody.tex (section{Why does it do that?}): question on renaming
+ fixed texts in the context of babel (has \keywords)
+
+Tue Jun 20 14:03:38 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): acknowledge alan jeffrey's
+ design of the html version, and record use of dante material
+
+ * dirctan.tex: add pictex-addon
+
+ * filectan.tex: add context-tmf, delete doublespace
+
+ * faqbody.tex (section{Why does it do that?}): question on pictex and
+ registers, largely lifted (with help from babelfish) from dante's faq
+
+Wed Jun 14 11:36:29 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): caveat for non-ia32 versions
+ of miktex, mention the psu.edu mac-tex page
+
+Tue Jun 13 10:27:09 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): updated details for gutenberg
+
+Wed Jun 7 12:33:02 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex: version 2.4.5, today (for release)
+ (section{Acquiring the Software}): missing \endhtmlignore in nonfree
+ tree question
+
+Thu Jun 1 16:41:28 2000 Robin Fairbairns <rf@pallas.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Things are Going Wrong}): rewritten question
+ about capacity exceeded (scrapping assertions about pure methods of
+ hacking the tex web source, for goodness' sake!)
+
+Fri May 5 12:44:05 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * filectan.tex: add reference to epslatex.ps
+
+ * faqbody.tex (section{PostScript and TeX}): add reference to
+ epslatex.ps in question on graphics inclusion where previously only
+ the pdf was mentioned
+
+Wed Apr 26 11:17:34 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): remove reference to
+ (now defunct) bitftp@pucc.bitnet
+ (section{Acquiring the Software}): add ctan.tug.org ftpmail
+ (section{Acquiring the Software}): hacking at search info (more to do)
+ (section{The Background}): update uk tug details
+ (throughout): remove parentheses from (+countrycode)
+
+ * faq.sty: another iteration of pdfstartview
+
+Tue Apr 25 15:30:52 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faq.sty: tried alternative pdfstartview value -- no joy
+
+Fri Apr 14 15:20:33 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * filectan.tex: add latex-classes, ltxguide
+
+Wed Apr 12 15:01:42 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex: v2.4.2, today
+
+ * Makefile: add targets help, patch (==newfaq-patch) and web (==march)
+
+ * dirctan.tex: remove gtex; stick a whole lot of obsolete/ prefixes in
+ dviware things (that are probably not, in all honesty, ever going to
+ be used again, but what the hell...)
+
+ * faqbody.tex (section{DVI Drivers and Previewers}): remove all the
+ previewers that have been moved to obsolete/, rewrite the rest
+ mentioning miktex and fptex previewers, characterise emtex's thing as
+ dos+os/2 only, etc., etc.
+ (section{\TeX{} Systems}): remove references to gtex
+ (section{Special sorts of typesetting}): remove references to gtex
+
+Wed Apr 12 07:44 rf@huntingdon (using vi)
+
+ * companion.ctan: update location of version.sty
+
+Thu Apr 6 18:52:52 2000 Robin Fairbairns <rf@betsy.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): correct spelling of
+ bernice in sacks lipkin's name (oops) :-(
+
+Wed Apr 5 10:22:21 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{PostScript and \TeX{}}): rewrite figure
+ inclusion with emphasis on the graphics package
+
+ * dirctan.tex: add draftcopy and ms
+
+ * additions.tex (section{Proposed new questions}): Add watermarks q
+
+Mon Apr 3 21:25:19 2000 Robin Fairbairns <rf@betsy.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): tidy up gratzer's
+ latest (which _has_ been published now, or else...) and add reference
+ to lipkin's latex for linux
+
+Fri Mar 31 14:40:29 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex: v2.4, today
+
+ * additions.tex: bunch of questions moved out; back to pl 1 (only
+ unfinished `new language in babel' question now left)
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): moved in 1-col
+ abstract, babel words and code listings questions
+ (section{Acquiring the Software}): moved in `nonfree' question
+ (section{Format conversions}): moved in `read SGML/XML direct' question
+ (section{Why does it \emph{do} that?}): moved in \marginpar question
+
+2000-03-27 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * newfaq-patch.tex: input faqbody for version and date before additions
+
+ * additions.tex: make version reported derive from \fileversion from
+ faqbody
+
+ * faqbody.tex (section{\TeX{} Systems}): removed listing for microtex
+ v2.3a2, today
+
+2000-03-24 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): correct details for truetex
+
+ * faq.sty: define a url in pdf mode for the debian social contract,
+ _before_ loading hyperref; remove all the old (pre-url.sty)
+ definitions using the FAQverb mechanism; remove the attempts at
+ patching hyperref's normalisation mechanisms
+
+ * additions.tex (section{Proposed new questions}): use defined url for
+ debian social contract address (to bypass hyperref boondoggle)
+
+Fri Mar 17 15:30:56 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * additions.tex (section{Proposed new questions}): Completed new
+ questions added yesterday (but not, I see, documented) -- on listings
+ and \marginpar
+
+ * dirctan.tex: add listings, tiny_c2l
+
+Thu Mar 16 10:01:02 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * texfaq2html (sanitize_line): \URL argument in braces now
+ (sanitize_line): $e$ generalised to $<anything>$ (for $n$, just now)
+
+Thu Mar 2 14:27:03 2000 Robin Fairbairns <rf@huntingdon.cl.cam.ac.uk>
+
+ * dirctan.tex: added mparhack
+
+Thu Feb 10 16:55:44 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * dirctan.tex: add passivetex
+
+ * faq.sty: \URL is _just_ \url now
+
+ * additions.tex: v2.3a1 pl4, today
+ (throughout): convert all \URL commands to take arguments in braces
+ (section{Proposed new questions}): passivetex ctan reference now
+ only one version of reference to social contract
+
+ * faqbody.tex (throughout): convert all \URL commands to take arguments
+ in braces
+ v2.3a1, today
+
+Fri Jan 21 14:09:59 2000 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * dirctan.tex: added xmltex
+
+ * additions.tex (section{Proposed new questions}): added spqr's
+ question about typesetting *ml direct with tex;
+ 2.3a pl3, today
+
+Tue Dec 14 10:28:00 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faq.sty: attempted improvement of \ifpdf definition of \URL (trying
+ to use hyperref's sanitising facilities)
+
+ * additions.tex (section{Proposed new questions}): outlines for babel
+ hyphenation, babel `foreign words'
+ (section{Proposed new questions}): wrap verbatim lines a bit
+
+ * texfaq2html (sanitize_line): add \meta
+
+ * faq.sty: add \meta command
+
+Fri Dec 3 09:34:24 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * Makefile (newfaq-patch): new target (with ancillaries) to make pdf
+ and ps versions of the patched file
+
+ * letterfaq.tex: bring into line with newfaq (was rather wonky)
+
+ * additions.tex: new file -- proposed additions to faqbody
+
+ * newfaq-patch.tex: new file -- newfaq, with the additions
+
+ * newfaq.tex: eliminate reference to bodenheimer in the title, mention
+ the march 1999 printed issue
+
+Mon Nov 1 17:50:07 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * texfaq2html (tail): add href to default address for script using `TeX
+ FAQ' as anchor
+
+Mon Sep 6 13:25:08 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): removed phil taylor from list of
+ non-committee-members
+
+Thu Sep 2 14:11:02 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex: today's date, v2.3a
+
+ * Makefile: add configuration variable CMFONTS(=cmz), and use it where
+ previously just said -Pcms
+
+ * filectan.tex: added simpl-latex
+
+ * faqbody.tex (section{PostScript and \TeX{}}): correct ref to mathpple
+ (section{Documentation and Help}): add ref to harvey greenbergs
+ simplified latex thing
+
+ * faq.sty: defer \let\Qlabel\label to begin document in case that we're
+ using hyperref
+
+Wed Sep 1 09:11:00 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faq.sty: don't have \raggedright explicit in the definition of
+ \Question -- hyperref chokes, now -- redefine \subsection instead
+
+ * faqbody.tex (section{PostScript and \TeX{}}): change description of
+ authorship of mathpple
+
+ * filectan.tex: remove mathpple (dangling pointer into tetex)
+
+ * dirctan.tex: add mathpple (fonts/mathpple)
+
+Mon Jul 26 14:34:46 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): change wording around binary
+ availability for tetex
+ v2.3 (3.0 for the published version?), today
+
+ * dirctan.tex: tetex binaries from distrib/binaries directory (change
+ label to tetex-bin from -install)
+
+Sat Jul 24 08:50:15 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): retrieved text about
+ ghostscript caoability of viewing acrobat docs
+ (section{The Background}): minor typo in lollipop
+
+Fri Jul 23 21:19:39 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): missing \\ in details for sci
+ word
+ (section{\TeX{} Systems}): updated with words from mike vulis about
+ vtex
+ (section{Format conversions}): add references to vtex & tidy a bit more
+
+ * dirctan.tex: add vtex (and delete vtex-demo, ancient)
+
+Tue Jul 13 09:31:14 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Support Packages for \TeX{}}): change reference
+ to ispell to reflect browsing status
+ (section{Format conversions}): tidy the question on generating acrobat,
+ add url for getting acroread
+ (section{Acquiring the Software}): canonical ctan.org addresses for
+ everything, remove numeric addresses (most of which were wrong anyway)
+
+ * dirctan.tex: make ispell directory browsable, and remove all
+ subdirectory references
+
+ * filectan.tex: update version number for excalibur
+
+Sun Jul 4 00:01:06 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): rewrote the section about
+ pdf output, including (inter alia) dvipdfm, and dropping reference to
+ dvipdf
+ (throughout): GhostScript->Ghostscript
+
+ * dirctan.tex: add dvipdfm
+
+ * faqbody.tex (section{Current \TeX{} Projects}): make NTS logo come
+ out bold in question title (using \afterquestion); use \afterquestion
+ for question about 2e
+ (section{The Background}): use \afterquestion (twice) in re. instances
+ of bold math characters in titles
+
+Sat Jul 3 10:02:22 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faq.sty: add \afterquestion command for use after \Question commands
+ inside groups
+
+ * faqbody.tex (section{How do I do X in \TeX{} or \LaTeX{}}): refer to
+ sectsty, titlesec and fncychap as alternatives for changing section
+ headings
+ remove reference to NFSS question in roman theorems question
+
+ * dirctan.tex: add sectsty, titlesec, fncychap
+
+ * faqbody.tex (section{Current \TeX{} Projects}): section renamed from
+ `recent developments'
+ commented-out the nfss question (hardly current any more)
+ rewritten latex question to refer to june 1999, and to stand alone re
+ nfss issue
+ (section{Things are Going Wrong\dots{}}): get rid of references to the
+ NFSS question
+ (section{How do I do \textsl{X} in \TeX{} or \LaTeX{}}): no question
+ reference for NFSS in section headings question
+
+ * dirctan.tex: add context
+
+ * faqbody.tex (section{The Background}): Add a question about context
+ (section{The Background}): junk the commented-out stuff about AMS
+ things we no longer admit to...
+ version 2.2t, today
+
+ * texfaq2html (sanitize_line): add \CONTeXT (and \PDFTeX, \NTS, \eTeX,
+ \Eplain, \TeXsis and \WYSIWYG ... oops)
+
+ * faq.sty: add \CONTeXT
+
+Mon Jun 14 17:46:49 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+
+ * texfaq2html (sanitize_line): add \'e
+
+ * faqbody.tex (section{Documentation and Help}): add a proto-
+ question on tutorials
+
+ * filectan.tex: add gentle, lshort (both pointing at .pdf files) and
+ change epslatex to point at the .pdf file
+
+Sun Jun 13 14:01:10 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): rearranged list of committee
+ members to be more easily editable, and removed malcolm and kaveh's
+ names from the list of people said to have retired in 1998
+ (section{Macros for Particular Types of Documents}): questions about
+ setting papers for journals, and creating a report from a bunch of
+ articles
+ v2.2q, today
+
+ * dirctan.tex: add frankenstein
+
+Sat Jun 12 09:25:42 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do \textsl{X} in \TeX{} or \LaTeX{}}):
+ struggling to make sense of the twaddle about logos, in html...
+ (section{Documentation and Help}): retrieved the isbn for knuth's
+ hardback
+
+ * texfaq2html: define $home from $ENV{FAQ_HOME} if that exists
+
+ * faqbody.tex (section{Documentation and Help}): \ISBN commands for tip
+ separate volumes; add first stab at entry for knuth's collected papers
+ (missing hardback isbn just now)
+ (section{Macros for Particular types of Documents}): new section, only
+ containing vita.cls as yet
+ (section{How do I do \textsl{X} in \TeX{} or \LaTeX{}}): be a bit ruder
+ still about the silly-logo syndrome; mention the \MP problem and the
+ difficulties with texnames.sty
+ (section{The Background}): credit hobby in \MP question
+ v2.2p, today
+
+ * dirctan.tex: Add vita
+
+ * faq.sty: \MP == MetaPost in public version (P was lower case)
+ (matches what's in texfaq2html)
+
+Thu Jun 10 09:41:01 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): rewritten win32 part,
+ emphasising the info got from fabrice's talk at the uk tug meeting
+
+ * dirctan.tex: added lwc, lgc
+
+ * faqbody.tex (section{Documentation and Help}): commented out entry
+ for making tex work (no longer in ora catalogue), updated entry for
+ diller's organ, removed buerger's entry (no longer in mcgraw-hill
+ cat.) and shultis' (no longer in prentice hall cat.)
+ removed comment about what is/isn't good for latex2e, added reference
+ to lgc and lwc directories
+
+ * texfaq2html (sanitize_line): moved \acro up above \emph
+
+Wed Jun 9 17:49:34 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): Added lwc
+ v2.2o, today
+
+Sat Jun 5 11:10:19 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * Makefile.CTAN (archive.cfg): needs distributing, too
+
+ * faq.sty: NoLine for package warning about missing refs at end
+ damn -- need distinguished \CTANdirectory* in pdf case
+
+ * faqbody.tex: v2.2n, today
+
+ * faq.sty: make \CTANdirectory ignore *
+
+ * faqbody.tex (section{\TeX{} Systems}): `browse' 2 tetex directories
+
+ * texfaq2html: add \CTANdirectory* capability, for browsing dirs
+
+ * dirctan.tex: added 0.4 into tetex and tetex-bin, convert all tetex
+ entries to *-form
+
+Tue May 25 14:52:12 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): corrections to sciword stuff
+ 2.2m, today
+
+Mon May 24 14:29:21 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Updated sciword, etc., bumf
+ 2.2l, today
+
+Fri May 14 12:17:37 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): restore yesterday's change...
+
+Thu May 13 10:02:58 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): make the html redirect for
+ miktex go to the 1.20 directory, since miktex/index.html has gone :-(
+
+Fri May 7 10:05:15 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * dirctan.tex: correct directory address of fptex (!)
+
+ * Makefile.CTAN: add texfaq2html
+
+ * faqbody.tex: change date to today
+ (section{\TeX{} Systems}): different references for miktex as
+ between the printed and web versions (ouch...)
+ (section{\TeX{} Systems}): remove commented-out text about getting
+ oztex on floppies...
+
+ * dirctan.tex: add systems/win32/miktex
+
+ * filectan.tex: removed the three miktex file entries
+
+ * texfaq2html: add mail url for uktug-faq@tex.ac.uk in the tail
+
+Thu May 6 14:18:26 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): Add reference to
+ ISO 690-2 online version in question about citing urls
+ v2.2j, today
+
+Fri Apr 23 11:45:35 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * Makefile.march: new, update the things needed for the texfaq script,
+ _only_
+
+ * Makefile: add new target march to run Makefile.march in
+ VH-tex/faq-source
+
+ * faqbody.tex (section{The Background}): new url for uk tug
+ (section{Introduction}): change url for the faq to cambridge, remove
+ footnote about it being a temporary one
+
+ * texfaq2html: remove the `brought to you at' mucking about; change
+ $home; change web address for uktug
+
+Thu Apr 22 15:37:13 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): Update details on K&D
+ to third edition
+
+Sat Apr 17 16:16:10 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * texfaq2html: /usr/bin/perl (so as to work both on bescot and march)
+
+Wed Apr 7 14:10:47 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * newfaq.workers: stupid file ... should i keep it?
+
+ * Makefile.CTAN: add newfaq.ps (eh?!)
+
+ * faqbody.tex (section{Documentation and Help}): kerfoodle to produce
+ the string /caption\\. as in-line verbatim in html
+ version 2.2g, today
+
+Sat Apr 3 08:57:10 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * Makefile.CTAN: (new file) first stab at automating installation on
+ CTAN
+
+ * Makefile.FTP: remove .dvi and .ps files from this distribution
+
+ * Makefile: add symbols DVIPS, PDFLATEX and LATEX (which last rather
+ useless at present
+
+ * faqbody.tex: today's date
+ (section{\acro{DVI} Drivers and Previewers}): remove reference to the
+ separately-available VMS version of dvips
+
+ * dirctan.tex: add tetex-beta
+
+ * faqbody.tex (section{\TeX{} Systems}): correct VMS entry
+ (section{Perhaps There \emph{isn't} an Answer}): sort screed about
+ consultants, and add pointer to TUG consultants page; correct
+ reference to latex project
+ (section{Recent Developments}): revise the text about the latex3
+ project; add reference to cyrillic in the latex2e stuff, and otherwise
+ revise _that_ text; refer to packaged systems that include omega
+ (section{\TeX{} Systems}): urge packaged systems for unix, and refer to
+ tetex-beta
+
+ * filectan.tex: remove all the old VMS references and add OpenVMSTeX
+
+Fri Apr 2 14:53:15 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): reword fptex stuff, and change
+ label
+ (throughout): ensure that _all_ em-dashes are preceded by nobreakspace
+ and use \LaTeXo in place of spelling out the old version number (for
+ consistency of layout)
+
+ * dirctan.tex: deal with latex packages directory (and delete the
+ `whole directory' label which wasn't used)
+ win32/web2c -> fptex
+
+Tue Mar 16 00:03:15 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): minor editorials on the Y2K
+ question
+
+Sun Mar 14 09:29:54 1999 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): Add a question on Y2K
+ compliance (and give a \Qref to the outline of LaTeX)
+ (section{The Background}): Add a section on trip/trap
+ version 2.2e, dated today
+ (section{Introduction}): Add John Palmer to the footnote about the
+ committee
+ (section{Documentation and Help}): add isbn for mfbook paperback
+ (section{Documentation and Help}): mention wichura under the pictex
+ manual, and add reference to pti's web site (without mentioning the
+ price they charge for the damned manual!!!!!)
+ (section{Acquiring the Software}): remove information (which is surely
+ out of date) about the `next' (late 1997) release of 4alltex disc --
+ no replacement since the situation isn't clear to me...
+ (section{Format conversions}): remove reference to jf's stuff (which
+ seems to have been abandoned in favour of activetex)
+
+Sat Nov 14 12:45:16 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * filectan.tex: add a winedt entry
+
+ * faqbody.tex (section{Introduction}): changes to lists of names
+ (section{\TeX{} Systems}): add a little thing about winedt (probably
+ not satisfactory)
+
+ * filectan.tex: three separate miktex files
+
+ * dirctan.tex: miktex (pc) _goes_
+
+ * faqbody.tex (section{Format conversions}): correct info about the
+ word processor conversions faq
+ (section{The Background}): remove reference to .zip file of texinfo
+
+ * filectan.tex: texcnven no longer exists -- record the .zip file in
+ the directory; update the texinfo file name (removing the version
+ number and thereby relying on the link) and get rid of the .zip
+ reference (did such a file _ever_ exist?)
+
+Tue Aug 25 13:51:52 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): New version of tech wg stuff
+ from kaja christiansen
+
+Thu Jun 11 17:10:37 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * Makefile (CONFIGS): new, another category of thing to depend on
+
+Wed Jun 10 12:58:02 1998 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Bits and pieces of \TeX}): minor rewording of
+ text about ec fonts, correction of punctuation
+
+Tue Jun 9 20:40:05 1998 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * dirctan.tex: start suppressing unused directories
+
+ * faq.sty: make \CTAN{directory,file} deal with case of active file or
+ directory name
+
+ * faqbody.tex (section{Special sorts of typesetting}): make direct
+ reference to suppport/xindy into a \CTANref; minor typos corrected
+
+ * archive.cfg: new file, configuration for {file,dir}ctan when make pdf
+
+Tue Jun 9 00:11:09 1998 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faq.sty: distinguish two \Status targets, 1- and 2-column pdf (values
+ 1 and 2)
+
+ * faq.cls: load packages before setting page dimens, don't change
+ horizontal dimens if single column version
+
+ * faqbody.tex (section{Format conversions}): dvipdf lesenko spoke about
+ it in the past (was `hoping to speak' at tug'97); today's date; slight
+ rewording of basic outline of omega
+
+Mon Jun 8 17:21:15 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faq.sty: yet another fiddle with hyperref options; suppress multicol
+ when doing pdf
+
+Sun Jun 7 09:25:05 1998 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): Remove reference to
+ getting the old faq by ftpmail; increment patch number, date today
+
+ * faq.sty: juggle with hyperref package options; remove spurious space
+ in `public' definition of \MF
+
+ * Makefile: do pdf generation on the basis of pdf-{new,letter}faq.tex
+
+Sat Jun 6 00:59:02 1998 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faq.cls: also require url.sty, since we again have a conflict with
+ hyperref
+
+ * faqbody.tex (section{\TeX{} Systems}): remove claim that tug can
+ supply pc software or copies of oztex (and restructure the mac
+ question slightly as a result); refer to omega port in cmactex
+
+ * faq.sty: replace all alan's old url-ish definitions with ones based
+ on url.sty (this is too slow processing dirctan.tex...)
+
+ * Makefile: add new targets newfaq.pdf and letterfaq.pdf; parameterise
+ files we depend on; do away with old `all' target, and use body of
+ `public' one instead
+
+Fri Jun 5 20:23:09 1998 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faq.cls: input multicol before faq, in case we're running pdflatex
+ (\Status=1) -- since hyperref changes \@footnotetext, and multicol
+ checks it, this is somewhat important...
+
+ * faqbody.tex (section{Documentation and Help}): reword the sorry tale
+ of the pictex manual (i.e., not available at all)
+
+Thu May 28 14:52:14 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): refer to
+ fancyvrb in `including verbatim files' and `line numbers'
+ v2.2a, today
+
+ * dirctan.tex: add fancyvrb
+
+Tue May 5 11:05:11 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * Makefile.FTP (all): removed non-cm .dvi files, .300ps files
+
+Mon May 4 21:56:52 1998 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): tug2->ctan.tug.org
+ (section{Acquiring the Software}): tug2->ctan.tug.org
+
+ * faq.sty: add \Status game (cribbed from seb's work on tex-live doc)
+
+Sat May 2 17:49:11 1998 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): backing off bodenheimer, ref the
+ version on TeX Live CD
+ (section{Acquiring the Software}): tex-live now third edition
+ v2.2, today
+
+ * Makefile (public): new `general' target, with no .300ps stuff
+ (newfaq.ps,letterfaq.ps): remove specification of elm
+
+ * faq.sty: junk the old diddling with parameters for times (there've
+ been several new releases of the metrics since those were recommended)
+ define \ifpublicversion, talking of the fonts to be used, so we can
+ have a type1-fonts-only version
+
+Fri May 1 17:55:49 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex: 2.1o, today
+
+ * dirctan.tex: add footmisc
+
+ * filectan.tex: remove stblftnt
+
+ * faqbody.tex (section{How do I do X in \TeX or \LaTeX}): refer to
+ footmisc rather than stblftnt
+
+Mon Apr 6 12:56:20 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * Makefile (clean): add -f switch
+
+ * faqbody.tex (section{\TeX{} Systems}): refer to pctex32 (as a windows
+ implementation)
+ version 2.1n, today's date (forgot that last time)
+
+Thu Mar 26 16:51:01 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it \emph{do} that?}): redo the examples
+ for #-doubling in terms of + rather than -, so no need for farting
+ around with ligatures
+ (section{Introduction}): removed jf from list of resigned committee
+ members, added dpc, and brought committee list up to date
+
+Wed Mar 18 10:19:55 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * companion.ctan: correct calc, changebar
+
+Fri Jan 16 09:58:18 1998 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex: v2.1m, today
+ (section{The Background}): Correct address and phone nos for TUG
+
+Wed Nov 5 10:40:40 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): minor typo in
+ line numbering q
+
+Tue Nov 4 11:03:45 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): Avoid nested
+ braces in indexing question
+ (section{Introduction}): Refer to LaTeX2e rather than LaTeXe in intro
+ (html version only)
+
+ * faq.sty: Define \oparen and \cparen commands
+
+
+Wed Oct 29 16:33:41 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Update truetex web page
+ address (and source details)
+
+Mon Oct 27 09:20:15 1997 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faq.sty: Comment about oddity of \CTAN command
+
+ * faqbody.tex (section{Things are Going Wrong\dots{}}): Tidy up earlier
+ text (difficult to quote entire trivial lines, in-line)
+
+Sat Oct 25 23:37:11 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): \CTAN takes
+ a real argument, not one in vertical bars
+
+ * faq.sty: Add \TeXsis, \parens
+
+Sat Oct 25 10:52:42 1997 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faqbody.tex: today's date
+ (section{Special sorts of typesetting}): Add questions on typesetting
+ URLs, and on citing them with BibTeX; reference texsis's indexing
+ macros, and mention xindy (not terribly satisfactorily, given the way
+ it's organised on CTAN)
+
+ * dirctan.tex: Add xindy
+
+ * filectan.tex: Add texsis-index
+
+ * faq.sty: remove definition of \ifnotreadCTAN, define \htmlonly and
+ \textpercent
+
+ * texfaq2html (sanitize_line): Add \htmlonly (as no-op), \\textpercent
+ rather than \\\% (!)
+
+ * filectan.tex,dirctan.tex: Own protection against being read twice
+
+ * newfaq.tex,letterfaq.tex,faqbody.tex: Do away with conditional around
+ loading {dir,file}ctan
+
+Fri Oct 24 19:34:37 1997 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): Add Oren Patashnik to list of
+ contributors (in anticipation...)
+ (section{Things are Going Wrong\dots{}}): Modify answer to offer Oren's
+ solution to the `BibTeX string too long' problem
+ Add a question about underlining
+ (top of file): v2.1l, today
+
+ * filectan.tex: Add ulem.sty, abstract.bst
+ Excalibur entry now .sit.hqx (also corrected version no)
+
+Thu Oct 23 08:09:37 1997 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * filectan.tex: Add url.sty, update version number in the texinfo
+ distribution
+
+ * faqbody.tex (section{How do I do X in TeX or LaTeX}): Rewrite the
+ initial text in a slightly less school-ma'am-ish way
+
+Fri Oct 10 19:40:06 1997 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): Add question on
+ line numbering
+
+ * dirctan.tex: Add lineno
+ Delete a bunch of entries that are wrong/irrelevant/misleading
+ (including all the latex209 ones that didn't get moved to latex
+ by Seb in his LGC campaign, apart from ones that might figure in
+ a future question, like chbars, chem{struct,tex})
+ Correct xymtex (to contrib/other), crossword (to contrib/other/
+ crosswrd), elsevier (to contrib/supported), footnpag (to contrib/
+ supported), ucthesis (to contrib/supported)
+ Replace epic with (macros/latex/contrib/other/)eepic
+
+ * filectan.tex: Add numline, latex209-base
+ Correct ukhyph
+
+Fri Oct 10 11:41:13 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Recent Developments}): Correct John Plaice's
+ email address
+
+Fri Oct 10 07:01:24 1997 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * texfaq2html (sanitize_line): Process \mailto
+ Use $0 if environment SCRIPT_NAME isn't defined
+
+ * faq.sty: Define \mailto
+
+ * faqbody.tex (throughout): Convert \Email to \mailto for addresses
+ that should/could be mailable direct from the web instance of the FAQ
+ (section{\TeX{} Systems}): Note update date of pctex info
+
+Thu Oct 9 22:36:02 1997 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it \emph{do} that?}): Add a question on
+ the behaviour of \include; small extension of the question about \verb
+ to note other exciting error messages
+
+Wed Oct 8 16:38:52 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): ctan-web from tug2
+ rather from its old Oh Really site
+
+Wed Oct 8 00:26:29 1997 Robin Fairbairns <rf@betsy.al.cl.cam.ac.uk>
+
+ * texfaq2html: Upgraded for perl5 (heaven knows whether it now works
+ under perl4
+
+ * faqbody.tex (section{Documentation and Help}): Add a url for
+ ctindex.html in addition to the full thing
+
+Mon Sep 6 13:50:51 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): New email addresses for PTI
+
+Fri Sep 5 18:42:23 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): correct URL for WC
+ CDROM information
+
+Wed Aug 20 10:51:16 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): Add tug2.cs.umb.edu
+ (section{How do I do \textsl{X} in \TeX{} or \LaTeX{}}): Add Donald
+ Arseneau's note about \mathbf vs. AMSLaTeX
+ (section{Introduction}): Add Donald Arseneau to acknowledgements
+
+Wed Aug 13 11:27:55 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * Makefile (clean): Only delete .aux files cgi-bin script doesn't use
+
+ * dirctan.tex: amslatex from latex/packages, amstex from macros/amstex,
+ fontsel from latex209/amslatex/fontsel (oops); junk AMS author-info
+ and its guidelines
+
+ * faqbody.tex (section{Why does it \emph{do} that?}): Mentioned
+ changing the text, and \enlargethispage for split footnotes
+ (section{How do I do \textsl{X} in \TeX{} or \LaTeX{}}): Add a question
+ on bold greek letters
+
+Tue Aug 12 14:39:30 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it \emph{do} that?}): Add question on
+ split footnotes
+ v 2.1f, today
+ (section{Introduction}): Add David Kastrup to list of acknowledgements
+
+Mon Aug 11 16:07:37 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): Quote a CPAN address for
+ SGMLS (was using a direct UOttawa address for dmeggins' directory)
+ 2.1e, today
+
+Tue Jul 22 12:37:17 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * archive.list: List of acceptable archives (just archive name and root
+ so far, but abbrevs and acceptable formats also possible)
+
+ * texfaq2html: Further work to make the archive list and archive
+ selection work
+ Make the selected archive and format hidden input from the search form
+
+Mon Jul 21 13:59:21 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * texfaq2html: Add format (or f) and archive (or a) keywords
+ Add link at end to UK TUG home page
+ Add archive_list variable
+
+ * archive.list: New file, list of allowable archives
+
+Thu Jul 10 11:26:42 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * texfaq2html (sanitize_line): Add translation of \thinspace{} to space
+
+ * faqbody.tex (section{\TeX{} Systems}): {} after \thinspace
+
+Tue Jul 8 09:48:20 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): remove reference
+ to doublespace.sty
+ v2.1d, today
+
+ * filectan.tex: threeparttable.sty is now a latex (rather than 209)
+ package
+ remove entry for alltt
+
+ * texfaq2html: correct (to non-opaque html) translation of \pounds
+
+ * faqbody.tex (section{\TeX{} Systems}): Refer to the win32 port of
+ Web2C, miktexppc and miktex-AXP, and the djgpp port of Web2C
+
+ * dirctan.tex: Directory name djgpp (an obscure pointer to something
+ deep in the ps2pk tree) subverted to point at systems/msdos/djgpp
+ Add win32-web2c, miktexppc and miktex-AXP
+
+Wed Jun 18 15:57:57 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex: v2.1c, today
+
+Wed Jun 18 00:17:56 1997 Robin Fairbairns (robin@sams-machine)
+
+* faqbody.tex (section{Acquiring the Software}): Rearranged (and somewhat
+ reworded) the CDROM question, at Sebastian's suggestion
+
+Tue Jun 17 23:03:43 1997 Robin Fairbairns (robin@sams-machine)
+
+* faqbody.tex (section{Recent Developments}): Typos in PDFTeX stuff, change
+ assertion to say it is postgrad research rather than originating in an MSc
+ project (as I thought but Sebastian didn't)
+(section{Perhaps There \emph{isn't} an Answer}): Make reference to TUG as
+ contact for TeX bugs a link
+
+Tue Jun 17 14:43:56 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): fancyheadings->
+ fancyhdr
+ (section{Format conversions}): Further iteration of the acrobat-
+ creation text
+ (section{Things are Going Wrong\dots{}}): fancyheadings->fancyhdr in
+ the first-page-empty thing...
+ (top of file) version 2.1b, today's date
+ (section{Acquiring the Software}): Correct \Qref in 4AllTeX text
+
+ * dirctan.tex: other/fancyheadings->supported/fancyhdr
+
+ * faq.sty: Added \PDFTeX
+
+Mon Jun 16 15:40:07 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * dirctan.tex: Added pdftex
+
+ * faqbody.tex (section{Introduction}): Add Mark to committee list,
+ change URL to www.tex.ac.uk and remove footnote about it being
+ temporary
+ (throughout): \emph{}asise `your name' in mailing list subscription
+ info
+ (section{The Background}): Correct address for TUG
+ (section{Format conversions}): dvips implements the hypertex specials
+ now
+ (section{Format conversions}): First stab at editing `making acrobat
+ documents'
+ (section{\MF{}}): Got rid of that awful American-style date in ln03
+ mode file
+ (section{Recent Developments}): Added a pdftex question, moved all the
+ statements about eTeX into present tense, and linked to TeX live in
+ the CDROMs section
+
+ * newfaq.tex: Edit note (beneath title) to refer to 1995 Christmas
+ edition, and to make availability via WWW present tense...
+
+Tue Jun 10 12:44:20 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): Tidy question about
+ availability of the article, and reword pointer to Bodenheimer's one
+ since it's now just to the directory;
+ (section{Bits and pieces of \TeX{}}): Reword the question about DC
+ fonts to one about EC fonts.
+ (section{Acquiring the Software}): Add TeX Live to CD-ROM distributions
+ (section{\TeX{} Systems}): Remvoed the reference to the AIX and 386ix
+ distributions (which are wildly out of date), tidy up the text about
+ Linux, and add a caveat about the Slackware '96 disc
+ Top of file: change to version 2.1
+
+ * dirctan.tex: Add TeX-FAQ (in obsolete/help)
+ Remove dc, add ec in its place
+
+ * filectan.tex: Remove TeX-FAQ
+
+Tue Jun 3 15:38:34 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): add the LGC to the
+ book list, and change the phrasing of the `books that cover 2e' list
+ at the bottom of the list.
+
+Thu Apr 24 11:03:17 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Correct Kinch's details
+ just that little bit further
+
+Wed Apr 23 09:31:06 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): New Web address for PTI
+
+Mon Apr 21 14:48:56 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * dirctan.tex: Remove (confusing) faq and sgi dirs (both under fweb)
+
+Thu Apr 17 17:34:55 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): Final address for NTG's Web
+ offering...
+
+Wed Apr 2 13:57:22 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Update Kinch's web address
+
+Fri Mar 7 10:45:43 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{How do I do \textsl{X} in \TeX{} or
+ \LaTeX{}}): Recode the expression of |\begin{comment}| ... it
+ would appear that the perl happily gobbles the \begin{comment}
+ because it's something it knows about
+
+Mon Mar 3 16:53:14 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * companion.ctan: Bunch of changes from latex209->latex trees
+
+Wed Jan 29 15:44:52 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * filectan.tex: Get xtexcad from graphics/xtexcad
+
+ * faqbody.tex (section{Support Packages for \TeX{}}): xtexcad
+ definitely does work on other Unices
+
+Tue Jan 7 12:25:50 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): Remove the (hopeless)
+ reference to news.answers archives of BB's FAQ, and add references to
+ source location of our FAQ and to the cstug, dante and (2) french FAQs
+ (section{Introduction}): Update the information about the committee,
+ add a pointer to the sources, and tidy
+ (throughout): convert URL and FAQ to \acro (and change the one instance
+ of "an FAQ" to "a FAQ" ... who knows which is right, after all?); a
+ few more Ulrik Vieth typos
+ (section{Recent Developments}): Add references to Omega and e-TeX
+ distributions
+
+ * dirctan.tex: Add dante-faq, french-faq, uktug-faq, omega, e-TeX
+
+Thu Jan 2 13:56:25 1997 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): a small number of extra extra typos from
+ Ulrik Vieth
+
+Fri Dec 20 11:23:29 1996 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): Several typos corrected, mostly spotted by
+ Ulrik Vieth
+ Remove pointer to help/TeX-index/TeX-index from `finding packages', and
+ add a reference to www.ora.com instead
+ (section{Documentation and Help}): Add reference to www.dante.de in the
+ question on finding files on CTAN
+
+ * filectan.tex: Remove TeX-index (since it's now no longer on CTAN)
+
+Thu Dec 12 12:35:35 1996 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * dirctan.tex: Add moreverb
+
+ * faqbody.tex (section{The Background}): Correct the archive pointer
+ from the question on texinfo
+ (section{Special sorts of typesetting}): Add reference to moreverb in
+ the question on including a file in verbatim
+ (section{How do I do \textsl{X} in \TeX{} or \LaTeX{}}): Add a question
+ whose answer is (in part) stblftnt.sty
+ (section{Format conversions}): Add a reference to texcnven
+
+ * filectan.tex: Change texinfo-macros to texinfo-dist, which points to
+ the .tar.gz file, and add a texinfo-dist-zip (oh dammit)
+ Add stblftnt.sty and texcnven
+
+Sat Oct 19 21:48:52 1996 Robin Fairbairns <rf@cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Correct area code in Kinch's
+ telephone and fax nos
+
+Wed Jul 24 15:27:32 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): Move ctan-ann to
+ Heidelberg ...
+ There are `other' TeX-related lists there now (!)
+ (section{Acquiring the Software}): Move ctan to Heidelberg too
+
+Mon Jul 1 11:26:32 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * Makefile (clean): new target
+
+ * faqbody.tex (section{Documentation and Help}): removed first
+ component of vm.urz.uni-heidelberg.de
+
+Thu Jun 27 15:06:50 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): Downgrade the
+ reference to TeX-Index (should I junk reference to it altogether?),
+ and give catalogue.html top billing
+ (section{Acquiring the Software}): finger ctan@ftp.tex.ac.uk or
+ ctan@ftp.dante.de
+
+ * filectan.tex: Add catalogue
+
+Thu Jun 20 13:29:07 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): Remove reference to
+ ftpmail@shsu.edu
+ (section{Documentation and Help}): Nahhh... you can't get the FAQ from
+ SHSU's mail server (can you?) -- tell 'em to use ftpmail instead
+
+Tue Jun 18 17:10:49 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Acquiring the Software}): Removed SHSU from the
+ list of CTAN sites
+
+Mon May 27 13:49:23 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * companion.ctan: Corrections submitted by Brian Ripley
+
+Wed May 22 14:25:07 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * companion.ctan: Update moreverb
+
+Sat May 18 17:06:12 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * dirctan.tex: Add mdwtools
+
+ * filectan.tex: Add threeparttable
+
+Thu May 2 17:47:51 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * Makefile: for the letterfaq.*ps, use -t letter (now that I've
+ installed it in the config files... ;-) ... not that it works at all
+ ... ah me, back to the drawing board ...
+
+Thu Apr 11 12:59:58 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Extended TCI's ZIP to 9 digits
+ (_big_ deal!)
+
+Thu Apr 4 10:52:35 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Updated V\TeX entry from
+ MicroPress' home page (mailed a copy to their support address for
+ their evaluation
+
+Thu Mar 21 18:03:59 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * dirctan.tex: Add miktex
+
+ * filectan.tex: Correct location of setspace
+
+ * faqbody.tex (section{\TeX{} Systems}): Add mik\TeX
+ (section{Special sorts of typesetting}): Comment out the \subQ ahead of
+ the fancyheadings question, pending resolution of the problems with
+ the HTML-iser
+
+Wed Mar 13 11:08:11 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * companion.ctan: setspace from contrib/supported/setspace
+
+Mon Mar 11 <some time> 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * companion.ctan: major revision from SPQR (forgot to log it...)
+
+Mon Mar 4 09:57:37 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * companion.ctan: fnpara from contrib/other/misc
+
+Thu Feb 29 12:52:18 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faq.sty: Hideous hacking (no doubt, phase 1 only ;-) to get \subQ
+ working
+
+Thu Feb 22 11:59:26 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): Added Q66a (but
+ it won't typeset yet, because I don't have \subQ coded...)
+
+Wed Jan 31 09:37:17 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Recent Developments}): Disembuggered a bit of
+ conditional code in \LaTeXe question
+ (section{The Background}): Minor typo editing
+ (section{The Background}): WG-92-05 contact:=Sebastian, WG-94-07:=Karl
+ Berry
+ (section{Things are Going Wrong\dots{}}): hyphen.cfg not lthyphen.cfg
+ (section{Things are Going Wrong\dots{}}): Add a word about the
+ alternative hyphenation character in DC fonts 1.2
+ (section{Special sorts of typesetting}): Add descriptions of fenm[pf]
+
+ * dirctan.tex: Change tds to point to tds/draft-standard
+
+Tue Jan 30 15:05:06 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): Removed `May' from the
+ assertion about the date when JF hopes to release
+ (section{Bits and pieces of \TeX{}}): Add projected release date for EC
+ fonts (courtesy Ulrik Vieth), and add an exhortation about using
+ 1.2/pl1 at least
+ (section{PostScript and \TeX{}}): Add a reference to mathppl, in the
+ section on mathptm (of course)
+
+ * filectan.tex: Add mathppl
+
+Fri Jan 19 09:33:25 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex: (Throughout): Odd bits of \acro-isation ... still,
+ and general proof-reading corrections
+ (section{The Background}): Restore \rightmargin for quote env for NTG
+ (section{Acquiring the Software}): Commented out the elaborate text
+ about the Decus TeX collection (we know there's up-to-date images, but
+ the only mirror I can find is dated Apr '94, and wuarchive times out
+ (section{\MF{}}): Use list rather than tabular for the log report
+ (section{PostScript and \TeX{}}): Remove the reference to PSNFSS in the
+ discussion about font metrics
+ (section{Recent Developments}): Further iteration of the panegyric
+ about the qualities of 2e; also removed the text about latexbug, since
+ it also appears in the last question
+
+ * faq.sty: Today's date, slight increment of version
+ Add a command \fullline
+
+Thu Jan 18 14:15:23 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): Commented LAMSTeX out again
+ Gave the version today's date
+ (section{Recent Developments}): \acro-ised dvi throughout, except for
+ one instance where referring to the file name extension
+ (section{Special sorts of typesetting}): Removed the question
+ "insisting on changing the margins" (merged into the previous one),
+ reword the statements it makes slightly
+ (section{Special sorts of typesetting}): Added Seb's question on
+ drawing packages
+ (section{\TeX{} Systems}): Added a reference to TeXtelmExtel directory
+
+ * dirctan.tex: Add TeXtelmExtel
+
+ * production/bask5_6.tex: A bit more in the intro; \acro-ised
+
+Wed Jan 17 11:53:21 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): Hacked out Bodenheimer's intro
+ (which used to be commented out anyway); change "has been" to "was" in
+ describing Bodenheimer's maintenance...
+ Gave the version today's date
+ A few more proofreading corrections
+ (section{Special sorts of typesetting}): Redone the examples in the
+ figures-in-text question to use explicit line breaks
+ (section{Things are Going Wrong\dots{}}): Add question on hyphenation
+ of accented words
+ (section{Bits and pieces of \TeX{}}): Add question on DC fonts
+
+ * filectan.tex: Correct TeX-FAQ address (must have been wrong from the
+ start!!!
+
+Tue Jan 16 15:43:04 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex: Lots more \acro-isation
+ Up to v2.0d, dated today
+ Bunches of proof-reading corrections
+ (section{\TeX{} Systems}): Added TeXtelMextel to list of shells
+
+ * faq.sty: \acro-ise ISBN
+
+Mon Jan 15 09:44:14 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{The Background}): Added a web address for NTG
+ Surround both instances of `2e' in question names with \boldmath
+
+Sun Jan 14 18:01:19 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex: Surrounded a whole bunch of things in \acro
+ (section{The Background}): Added a few Web addresses for user groups
+ (throughout): Various proofreading corrections (DPC,MJC,RF)
+
+ * dirctan.tex: Got rid of all the old references to fonts/metrics
+
+ * faq.sty: In \AllTeX, kern equally on either side of the closing
+ parenthesis
+ \acroise \DANTE, \MSDOS and \CDROM
+ Declare a \twee macro (to append 2e if necessary)
+ Define a \careof macro (code out of tugboat.dtx)
+
+Tue Jan 9 13:19:42 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Format conversions}): Only one version of
+ "\AllTeX{} conversion to HTML" question title
+ (throughout): \TeX{}/\LaTeX{} -> \AllTeX{}
+
+Wed Jan 3 14:23:09 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Special sorts of typesetting}): Add a label to
+ the text flowing section, for reference in the editorial
+ (throughout): more minor editorials
+
+ * production/faqfont.cfg: Null file, to suppress faq.sty's default to
+ using times
+
+ * production/bask5_6.tex: Rewrote the editorial and the title of the
+ FAQ article itself
+
+ * production/baskerv.cls: Changed (guest) editor name
+ Subsection titles to use \bfseries (rather than \itshape)
+
+Note: directory spqr renamed as production...
+
+Tue Jan 2 12:35:03 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * spqr/bask5_6.tex: From bask4_6.tex, but added \thisyear
+ and \thismonth
+
+ * spqr/5_6baskerv.cls: Changed subsection heading back to \bfseries
+ Select font encoding before selecting family mbvx,
+ \usepackage{t1enc}->\usepackage[T1]{fontenc}
+
+ * faqbody.tex (throughout): Many minor editorial changes
+ Use \raggedwithindent
+ Subsume every occurrence of CTAN in an \acro
+
+ * faq.sty: Add \@ wherever I consider it necessary (includes replacing
+ at least one instance of `\spacefactor1000 '
+ Add a kern before the closing parenthesis in \AllTeX
+ Add an \acro command (and \textSMC as a result...)
+ Redo \Question using \newcommand with an optional argument, and set
+ raggedright in the question title (note: suppresses hyphenation)
+ Add \nothtml command (transparent)
+
+Mon Jan 1 16:37:53 1996 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Introduction}): Add Donald Arseneau and
+ W. Henning (what's the man's first name?)
+ (section{The Background}): Remove line break in Dante details
+ (section{Format conversions}): Add text on TeX2RTF
+ (section{Format conversions}): Correct SPQR's reference to latex2rtf
+ (he was plainly talking about tex2rtf)
+ (section{The Background}): Add a label to the lollipop question
+ (section{PostScript and \TeX{}}): Refer to the lollipop question where
+ a side reference to it is made re. PostScript metrics
+ (section{Special sorts of typesetting}): Slight rearrangement of text
+ in the stuff on wrapping text around figures...
+
+ * faq.sty: Add an \AllTeX command
+
+ * 00readme: Update, dealing with the existence of 600dpi versions,
+ letterfaq (used only to be dealt with in one place) and possibility of
+ problems with old versions of 2e
+
+ * Makefile.FTP: Add 00readme to `all' target
+
+ * Makefile: Add the .300ps things as separate targets
+ Ensure the ftp-directory Makefile is writeable once it's there
+
+Sat Dec 30 17:20:05 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex: Upped the file version and given it today's date
+ (section{Documentation and Help}): Sort out the text about obsolete man
+ pages...
+ (section{Documentation and Help}): Tried a few apostrophe-s in the list
+ of book titles that cover 2e
+ (section{Documentation and Help}): Tidied up DPC's text a bit
+ (incidentally also dealing with a fantasy introduced by my spelling
+ checker!)
+ (section{Documentation and Help}): Couple of minor enhancements to
+ Carol's text
+ (section{Special sorts of typesetting}): Added the long-bruited
+ question on flowing text around figures
+
+ * dirctan.tex: Added reference for floatflt
+
+ * filectan.tex: Added references for picins and wrapfig
+
+Fri Dec 29 21:03:12 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * Makefile: Move removal of the Makefile into the bracketed bit in
+ install
+ Let's have letterfaq.ps actually *make* letterfaq.ps rather than yet
+ another newfaq.ps, folks!
+
+ * faqbody.tex (section{Acquiring the Software}): Added Walnut Creek
+ address and telephone nos from their Web site
+
+Thu Dec 28 18:53:45 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Documentation and Help}): Replaced
+ \Question[index]{Finding \TeX{}/\LaTeX{} macro packages} and
+ \Question[compan-files]{Finding \LaTeXe{}-related packages} with two
+ entirely new answers by the estimable Dr. C.
+ (section{Acquiring the Software}): Added a reference to Walnut Creek's
+ little baby (and despatched a message asking for more)
+
+Tue Dec 19 17:07:09 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Updated Kinch's details from
+ the email he sent me
+
+
+Sat Dec 9 17:24:47 1995 Robin Fairbairns <rf@nape.cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Updated Kinch's entry as best
+ I can just now...
+
+Mon Dec 4 10:03:22 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{PostScript and \TeX{}}): Rewrote paragraph about
+ Goel's document to cover Reckdahl's one as well
+ (section{Documentation and Help}): Rewrite `where to find' to make more
+ clear the distinction between Bodenheimer's article and ours (which
+ does, after all, get updated ;-)
+ (section{Documentation and Help}): Put all the subscribe messages in
+ the question on mailing lists into \texttt, so they can break
+
+ * dirctan.tex: Delete reference for ps2psfrag, alter psfrag to 2e
+ version
+ Add subfigure
+ Convert (2.09) supertab to (2e) supertabular
+
+ * filectan.tex: Added epslatex
+
+ * newfaq.tex: Remove the reference to c.t.t FAQ in the note, since it's
+ plain that nothing will ever get into anything maintained by
+ Bodenheimer
+
+Fri Dec 1 16:30:56 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * dirctan.tex: Add tweb
+
+ * faqbody.tex (section{\MF{}}): Add a label to `getting \MF to do what
+ you want'
+ (section{Literate programming}): Add a reference to tweb
+ (section{Bits and pieces of \TeX{}}): Add Carol's set: dvi, driver, pk
+ and tfm (order probably needs attention)
+ (section{Format conversions}): Thrown out scribe
+
+ * filectan.tex: Add dvitype
+
+Thu Nov 30 12:01:01 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (throughout): Convert all reference to specific TUGboat
+ issues to use the \TUGboat macro, all other references to \textsl
+ (section{Format conversions}): Add Clark's DSSSL page where Seb wanted
+ one, and fill in the URL for stil (Seb found this)
+ (section{Things are Going Wrong\dots{}}): Suggest upgrading \LaTeXo
+ ("if they must"), nopageno.sty
+ (section{\TeX{} Systems}): Sort out the reference to emTeX
+
+ * faq.sty: \ignorespaces before handing on to \@tugboat
+
+ * dirctan.tex: Add latex209-base
+
+ * filectan.tex: Add nopageno
+
+Wed Nov 29 16:33:39 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Why does it \emph{do} that?}): |\protect\cmd| ->
+ \cs|protect|\cs|cmd| so that it doesn't get (hem-hem) b*ed by Alan's
+ perl script
+ (section{The Background}): Add reference to tds in the TWG's blurb
+ (section{The Background}): Update T.V. Raman's email address
+ (section{Documentation and Help}): Note that the book list is only of
+ English ones
+ ():
+ (section{How do I do \textsl{X} in \TeX{} or \LaTeX{}}): Add reference
+ to \frontmatter, \backmatter in the thing about unnumbered sections in
+ the TOC
+
+ * dirctan.tex: Add tds
+
+Tue Nov 28 10:14:34 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * dirctan.tex: Add hyper and hyperref
+ Change psfonts to dos-psfonts (it wasn't referred to, anyway), and
+ create a new psfonts pointing at fonts/psfonts
+
+ * faq.sty: Add definition of \TUGboat
+ Use \ProgName for \Package, pro tem
+
+ * faqbody.tex: Change version number
+ (section{Recent Developments}): Junk Q-SGML (and the one reference to
+ it)
+ (section{Perhaps There \emph{isn't} an Answer}): uktex->texhax
+ (section{Format conversions}): Added questions on hyperTeX and
+ conversion to pdf, and replace Q-SGML2TeX and Q-LaTeX2HTML
+ (section{PostScript and \TeX{}}): Replace Q-usepsfont, Q-metrics,
+ psfonts-problems
+ (section{Why does it \emph{do} that?}): A bit more text from Alan about
+ uppercase shenanigans
+ (section{The Background}): Update TUG's address
+
+Sat Nov 18 12:23:58 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Perhaps There \emph{isn't} an Answer}): Added a
+ pointer to the bugs database in the last question (ASAJ's suggestion)
+
+ * dirctan.tex: Remove emtex/betatest
+
+Sat Nov 18 00:05:11 1995 robin (robin@dosmachine)
+
+ * faqbody.tex (section{Documentation and Help}): Added the metafont
+ list to the section on mailing lists
+ (section{Introduction}): Redone the list of committee names (it said
+ "1993-94" !!!), and added a paragraph acknowledging Rho's, Jonathan's
+ and Chris's efforts.
+ (section{Acquiring the Software}): Make the numeric addresses \FTP
+ addresses, too, so that they wrap
+ (section{Acquiring the Software}): Put `quote site index' (and,
+ separately, `site index') into \texttt (rather than verbatim) so that
+ it wraps if necessary
+ (section{Support Packages for \TeX{}}): Add a bit of explanation of
+ _why_ VorTeX isn't still being developed
+
+ * dirctan.tex: Add metapost
+
+Fri Nov 17 23:29:42 1995 robin (robin@dosmachine)
+
+ * faqfont.cfg: Deal with \Dings
+
+ * faqbody.tex (section{Introduction}): Added John Hobby (because I'm
+ lifting some of his text) and Piet van Oostrum to the list of
+ contributors
+ (section{The Background}): Add a new question about MetaPost (does it
+ really need to be separate?)
+
+Fri Nov 17 13:12:10 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * dirctan.tex: Correct teTeX base directory and add tetex-bin
+
+ * faqbody.tex (section{Documentation and Help}): Disambiguate
+ references to Gratzer's books in the short para after the list of LaTeX
+ books
+ (section{\TeX{} Systems}): Add reference to the teTeX binaries
+ directory
+ (section{\TeX{} Systems}): Remove witter about emTeX betatest, and
+ reword the reference to memory extenders (emxrsx is now part of the
+ distribution)
+
+Wed Nov 8 11:41:47 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * filectan.tex: Add mil
+
+ * faqbody.tex (section{Documentation and Help}): Add reference to the
+ acrobat sampler of Gratzer's book
+
+Tue Nov 7 11:02:31 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{\TeX{} Systems}): Updated scientific word's
+ telephone no, following mail from Christopher
+ (section{Documentation and Help}): Add Gratzer's new book, and correct
+ the text at the end of the list detailing 2e coverage
+
+Sat Aug 26 14:57:41 1995 Robin Fairbairns <rf@dorceus.cl.cam.ac.uk>
+
+ * faqbody.tex (section{Recent Developments}): Subscription information
+ for the omega list
+
+Mon Jul 3 15:01:38 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * 00readme: Note that psfonts-beta is being used
+
+ * dirctan.tex: Added the two musixtex directories
+
+ * faqbody.tex: Added WWW entries for Bluesky, Personal TeX Inc. and TCI
+ Removed claim of "orchestral" music for MusicTeX, added a reference to
+ MusiXTeX
+
+Wed Jun 28 16:17:28 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex: subscribe to texhax via texhax-request
+ give details of Kopka and Daly 2nd ed
+ changed fileversion to 1.9e
+
+Thu Jun 15 17:26:05 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex: Added DPC's neato search for package.??? in quote site
+ index
+
+Wed May 3 10:06:54 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * companion.ctan: Corrected companion.ctan re. curves
+
+Fri Apr 28 13:10:30 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * simpl-sum.txt: A plain text version of the question `what is TeX'
+
+Fri Mar 31 11:15:23 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * texnames.sty: Add definition of \mathcal if it's not there, and
+ redo \AMSLaTeX, \AMSTeX (et al) in terms of \AmS defined similarly
+ to how the definition of \AmSTeX was done
+
+Mon Mar 6 14:55:13 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * companion.ctan: Added graphics.sty (not in companion?)
+
+Sat Feb 11 14:23:41 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (section{\TeX{} Systems}): Update contact details for Y&Y
+ (section{Documentation and Help}): details of ctan-ann mailing list
+ Up to 1.9d
+
+Tue Jan 31 17:48:21 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (section{Documentation and Help}): Add a proviso about
+ multiline-message suppression using `-' to the blurb about quote site
+ index
+
+Mon Jan 30 12:46:02 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * updates.tex (section{Updates to the FAQ}): as its name implies -- a
+ contribution to BV 5.1
+
+ * faqbody.tex (section{Documentation and Help}): Corrected the
+ information about info-tex and ctt-digest and their mutual relationship
+ to comp.text.tex
+
+ * filectan.tex: corrected file name of Tobin's metafont intro (and also
+ its directory!)
+
+Fri Jan 20 17:12:20 1995 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faq.cls: Adjust the page layout with a view to simplicity, symmetry,
+ and all those good things
+
+Fri Dec 16 13:22:52 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (section{The Background}): Remove the em-dashes between
+ the item labels and the TWG titles
+ (section{How do I do \textsl{X} in \TeX{} or \LaTeX{}}): Remove the
+ gratuitous \protect commands from the non-moving part of the [sub]
+ section arguments in the question on fiddling with the layout of
+ sectioning commands
+ (section{The Background}): Use \Emaildot for Yannis' address
+ (section{Format conversions}): Ditto for Nathan Torkington
+ (section{Documentation and Help}): Split the title boxes for both
+ Gr\"atzer's and Shultis' books
+ (section{\MF{}}): Insert @{} at every touch and turn in the
+ `table' specification for the instructions for inimf
+
+ * faqfont.cfg: Add (null) definition of \Dings
+
+ * faq.sty: If using PostScript, define \Dings
+ Add \Emaildot (as \Email, but dot-separates the first part of the
+ name)
+
+ * letterfaq.tex: Same as original newfaq.tex (i.e., letter paper by
+ default), except for \Dings
+
+ * newfaq.tex: Load faq.cls with a4paper option, use \Dings between toc
+ and body
+
+ * faq.cls: Use the paper size we're loaded with; adjust size of text
+ relative to it (using same values SPQR does for A4 paper, not some wild
+ proportional values)
+
+Mon Dec 12 13:07:36 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex: Use \ifnotreadCTAN, set it once the configs read
+
+ * faq.sty: Add \ifnotreadCTAN
+
+Sat Dec 10 10:21:36 1994 Robin Fairbairns (robin@home)
+
+ * faq.cls: First iteration of a class -- aim is that it should
+ ultimately be `generic' as between paper sizes
+
+ * newfaq.tex: Reword for `after the publication', add invocations of
+ multicols
+
+Sun Dec 4 13:54:02 1994 Robin Fairbairns (robin@home) (Sun 13:)
+
+ * faqbody.sty (throughout): The red-biro attack.
+ (throughout, again): The red-fine-felt-tip-pen attack (JF).
+ (section{Recent Developments}): Add a short blurb about JF's work.
+
+ * spqr/baskerv.cls: Cut down \topsep in \@listi to 4pt basic
+
+ * spqr/bask4_6.tex: Add a paragraph about use of the December edition;
+ Don't bother with table of contents before the editorial; the only toc
+ is that within the article itself
+
+Wed Dec 7 12:07:47 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * dirctan.tex: Add sgml2tex
+
+ * faqbody.tex (section{Recent Developments}): Add reference to the
+ conversion programs in the answer about JF's stuff
+ (section{Format conversions}): Add an answer about SGML2TeX conversion
+ programs
+ (section{\MF{}}): Modify the surroundings of the table for running MF,
+ to get rid of the unsightly space at the top
+ (section{Bits and pieces of \TeX{}}): Comment out that question on font
+ formats
+
+Tue Dec 6 13:54:07 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex: Change file version and date
+ (section{Bits and pieces of \TeX{}}): Add question on font formats
+
+Mon Dec 5 15:27:20 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * spqr/baskerv.cls: Hack the toc to make it not produce newarticle
+ entries whatsoever
+
+ * faqbody.tex (throughout): Final consistency checks following
+ spell-check
+
+Sun Dec 4 13:54:02 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.sty (throughout): The red-biro attack.
+ (throughout, again): The red-fine-felt-tip-pen attack (JF).
+ (section{Recent Developments}): Add a short blurb about JF's work.
+
+ * spqr/baskerv.cls: Cut down \topsep in \@listi to 4pt basic
+
+ * spqr/bask4_6.tex: Add a paragraph about use of the December edition;
+ Don't bother with table of contents before the editorial; the only toc
+ is that within the article itself
+
+Fri Dec 2 17:49:38 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * texnames.sty: Use \mathcal rather than \cal
+
+ * filectan.tex: Add morefloats.sty
+
+ * faqbody.tex (section{Things are Going Wrong\dots{}}): Replaced two
+ questions on floats with one conglomerate one (by me)
+
+Thu Dec 1 22:04:45 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex (section{Why does it \emph{do} that?}): Add a new
+ question on #-doubling (from a post of David C's)
+ (section{Things are Going Wrong\dots{}}): Add a new question on BibTeX
+ string sizes
+
+Tue Nov 29 18:49:52 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * spqr/bask4_6.tex: Twiddled with secnumdepth/tocdepth to get things
+ looking roughly right
+
+Tue Nov 29 13:19:09 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex (section{Why does it \emph{do} that?}): Add a question on
+ uppercase, from Jonathan's input
+ (section{Acquiring the Software}): Move the CD question here from TeX
+ systems
+ (throughout): Minor editorials
+
+ * faq.sty: Version no:=0.6, date changed
+ Added hacked-about LaTeX logo
+
+Mon Nov 28 13:32:53 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * spqr/bask4_6.tex: Moved setting secnumdepth/tocdepth to inside the
+ FAQ article
+
+ * faqbody.tex (throughout): More of my minor editorials
+ (subsection*{Finding the Files}): Added note about the lack of
+ full stops
+ (section{Introduction}): Sorted list of helpers into alphabetical
+ order, removed dots from the end
+
+Sun Nov 27 18:23:34 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex (section{Why does it \emph{do} that?}): Add question on
+ the problems with \verb (from JF's input)
+
+Sat Nov 26 22:09:17 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex (section{\TeX{} Systems}): Added Tom Rokicki's details
+ (wot no contact number) and changed the `source' of the stuff from the
+ AMS listing
+
+Fri Nov 25 12:41:36 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (throughout): Barbara Beeton's comments and Alan
+ Jeffrey's niggles
+ (section{PostScript and \TeX{}}): Added reference to mathptm in
+ Berthold's question
+ (throughout) Minor markups by your truly
+ (section{Documentation and Help}): Added a question about email lists
+
+ * faq.sty: Remove spurious space generated by \ProgName
+ Separate the hyphens in \TeXXeT.
+
+Thu Nov 24 15:29:47 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (throughout): Editorial markup after looking at
+ \BV-formatted version
+ (section{\TeX{} Systems}): Add a bit of blurb about Northlake Software
+
+ * dirctan.tex: Add emtex-betatest
+
+ * faq.sty: Define a new environment proglist (maps to booklist while
+ we've got program names italic)
+
+ * spqr/baskerv.cls: Remove stuff from faq.sty, and add requirement of
+ the FAQ package
+ Comment out definition of \CTAN (to something inconsistent)
+
+Wed Nov 23 10:20:27 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faq.sty: Make program names typeset in italic (experimentally)
+
+ * faqbody.tex: Released to SPQR for his work ... then:
+ (throughout): SPQR's editorial changes
+
+Tue Nov 22 22:53:24 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex: Iterate calls of \cs back again...
+
+ * faq.sty: Define \cs in terms of robust \csx (which is exactly the
+ same as the original \cs); \cs|...| now
+
+Tue Nov 22 13:10:26 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * texnames.sty: Sort out the definition of BibTeX (\if re. \textsc was
+ in the wrong place), do similar thing for SliTeX
+
+ * faqbody.tex (throughout): All \ldots -> \dots (and make sure there's
+ a {}!)
+ (section{Introduction}): Add Ulrik to the intro
+ (throughout): Two complete iterations of the syntax for \cs
+
+ * faq.sty: Replace my implementation of footnoteenv by one posted by
+ David to comp.text.tex (on a different matter, but there we are...)
+ Change syntax of \cs to \cs|...|, then find that doesn't work and
+ change it again to \cs[...]
+
+ * faqvers.tex: Removed, since now done in faqbody.tex
+
+Mon Nov 21 22:49:05 1994 Robin Fairbairns (robin@home)
+
+ * faq.sty: Replace \def\Q with the version Seb had put in the faqbody
+
+ * faqbody.tex: Remove \def\Q from front of file, and insert the content
+ of filevers.tex in its place (with comment about how it's to stay where
+ it is)
+
+ * newfaq.tex: Instead of reading faqvers.tex, read the first two lines
+ of faqbody.tex and execute them to get the file version and date
+
+Mon Nov 21 12:52:09 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (throughout): Implement Ulrik Vieth's and Malcolm Clarks
+ (latest) comments;
+ (section{How do I do \textsl{X} in \LaTeX{}}): Add a question about
+ indenting the first line of sections (Ulrik's suggestion)
+
+ * faq.sty: Added definition of \ISBN (to encourage uniformity)
+ \DANTE simply expands to DANTE (until someone else tells me
+ something different ;-)
+
+ * dirctan.tex: Added rnototex (now that it exists) and tetex
+
+Sun Nov 20 16:16:26 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex (throughout): Deal with David C's comments
+ (section{Documentation and Help}): Add reference to LaTeX for
+ Scientists and Engineers;
+ (section{\TeX{} Systems}): Add some blurb about SciWord
+ (throughout): Deal with my editorial markup
+ Two new questions
+
+ * newfaq.tex: Report the number of questions at the end
+
+ * faq.sty: \ignorespaces at the beginning, \unskip at the end of
+ footnoteenv
+
+ * filectan.tex: Add xtexcad, CTAN-sites (needs checking)
+
+Fri Nov 18 22:12:21 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex (section{Format conversions}): Correct Mark James' email
+ address, following mail from him saying that's OK (section name
+ changed, too)
+ (section{Acquiring the software}): Correct the DECUS address, telephone
+ no., etc., and Ted Nieland's email address; also add the proviso about
+ updating of the VMS material in the DECUS collection
+ (throughout): execute Reinhard Zierke's updates (though don't add his
+ complete set of ISBNs for von B ... yet: just leave them there behind
+ comment makers)
+
+Tue Nov 15 10:12:48 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * dirctan.tex: Add alpha (the mac editor)
+
+ * faqbody.tex (section{The Background}): Added a question on Lollipop
+ (which may get updated if Eijkhout responds to my mail)
+ (section{Documentation and Help}): Three more book titles (ex Malcolm),
+ re-attribution of ISBNs Clark<->von Bechtolsheim
+ (section{\TeX{} Systems}): Further refinement of the commercial stuff
+
+ * faqvers.tex: Upped to v1.5, changed date
+
+ * filectan.tex: Add texinfo-macros
+
+Mon Nov 14 22:14:08 1994 Robin Fairbairns (robin@home)
+
+ * faq.sty: Add a ghastly \TeXXeT logo (and a trivial \MLTeX)
+
+ * faqbody.tex (section{The Background}): Add new questions on
+ \LAMSTeX{} (split out of \AMSTeX{}) and Texinfo
+ (throughout): "like"->"such as" (where appropriate)
+
+Mon Nov 14 12:02:44 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (throughout): editorials from loads of people, new stuff
+ for the AMSTeX question from Michael Downes, several new questions from
+ Sebastian...
+
+ * filectan.tex: Added pk300[w]
+
+ * faq.sty: Provide command \CDROM
+
+Sun Nov 13 20:27:34 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex (throughout): All incarnations of the name DOS converted
+ to \MSDOS{}
+ Lots of minor edits following another batch of comments from RAB; three
+ new questions
+ Berthold Horn's question on scaleable fonts (probably needs post-
+ printing review)
+
+ * faq.sty: Redo definition of \cs to enable it to consume things other
+ than letters and others
+ Add definition of command \MSDOS
+
+ * faqbody.tex (section{The background}): When referring to WEB, do it
+ in capitals for consistency (What is TeX?)
+ (section{Things are Going Wrong\ldots}): Change invocation of \cs
+ to be simply \cs{pagestyle{empty}}, following change to \cs
+Fri Nov 11 11:45:59 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (section{\TeX{} Systems}): Modified the list of
+ commercial versions to say platform first, name of system second
+ (section{Introduction}): Add Malcolm's name to committee list!!!!!
+
+Thu Nov 10 12:38:03 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (from section{Bits and pieces of \TeX{}} to
+ section{Recent Developments} [i.e., the end]): sorted the html anchor
+ texts
+ (section{\TeX{} Systems}): Added Malcolm's body for the commercials
+ question
+ (section{The Background}): Added Damian Cugley's questions on
+ pronunciation
+ (section{Special sorts of typesetting}): Added Damian Cugley's question
+ on logos
+
+ * filectan.tex: Get setspace from the latex tree rather than the 209
+ one
+ Add texnames
+
+Wed Nov 9 14:44:25 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (section{Introduction}): Add Rick Zaccone to the list of
+ helpers
+ (up to section{Documentation and Help}): sorted the html anchor texts
+
+Tue Nov 8 11:43:02 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (section{Documentation and Help}): Added ISBNs (from
+ Malcolm) for his an von B's books
+ (section{PostScript and \TeX{}} and elsewhere): Small number of changes
+ arising from Alan's comments
+
+ * filectan.tex: Add Excalibur-sea (we don't want them loading the
+ entire directory)
+
+ * faqvers.tex: New, the settings of fileversion and filedate from
+ newfaq.tex
+
+ * newfaq.tex: Replace setting of fileversion and filedate by inputting
+ of faqvers.tex
+
+Mon Nov 7 11:42:12 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faq.sty: define a footnoteenv as suggested by Alan
+
+ * faqbody.tex (section{Acquiring the Software}): Removed the reference
+ to Flynn's ridiculously old "NETWORK SOURCES OF \TeX{}WARE"
+ (section{Acquiring the Software}): Couple of instances where there were
+ \\ commands at the end of a quote environment; this causes untoward
+ blank space after the environment, so they've been removed
+ (section{Bits and pieces of \TeX{}}): New section, with Seb's virtual
+ fonts question, and a version of \Rho's on \specials (will contain the
+ proposed .dvi and "what's a driver" questions, too)
+ (throughout): replace \footnote{}s with footnoteenv
+
+Sun Nov 6 20:10:52 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex: Slight editing, added questions on msx/y and am fonts
+
+Sat Nov 5 21:41:34 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex: Rearrange the intro slightly to include an outline of
+ what Usenet is about, for the benefit of members who aren't net-
+ connected (this at \Rho's suggestion)
+ Add question on paragraph setting parameters
+Sat Nov 5 14:52:03 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faqbody.tex (section{The Background}): Changed our contact address to
+ Peter Abott
+ (section{Documentation and Help}): Implemented David's suggestion
+ re. the PicTeX manual
+ (section{\TeX{} Systems}): changed `public domain' to `freely
+ available' in re. PC versions
+ (section{Literate programming}): Added a short new question from David
+ on the whole concept
+ (section{Special sorts of typesetting}): Corrected yet more oddities in
+ the changemargin environment
+ (section{Special sorts of typesetting}): Changed `emphasised' to
+ `emboldened' in the LaTeX version
+ (section{Things are Going Wrong\ldots}): Add a reference to ukhyph
+ (section{\TeX{} Systems}): Add reference to shareware fee payments for
+ OzTeX
+ (section{Things are going wrong}): Put the \caption commands in a
+ tabular env, for the benefit of Baskervill narrow setting
+ (section{PostScript and \TeX{}}): Added Sebastian's new questions
+ (inter alia, replacing the original about setting in PS fonts)
+
+ * filectan.tex: Add lw35nfss, LitProg-FAQ, ukhyph
+
+Wed Nov 2 01:26:47 1994 Robin Fairbairns (robin@home)
+
+ * faqbody.tex: updated to match newfaq.tex (\Rho's questions added
+ yesterday)
+
+Tue Nov 1 09:58:40 1994 Sebastian the system admin (root@cygnet)
+
+ * separated text into faqbody.tex and wrapper newfaq.tex;
+ this is to allow experimentation with Baskerville layout.
+
+ * rewrote PostScript fonts question and the one on
+ metrics; added one on problems with PS fonts.
+
+Mon Oct 31 12:14:55 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex: Added a new section How do I do X in \LaTeX{}, as
+ suggested by \Rho, and stuck her remaining proposed questions in it
+
+ * faq.sty: Added the stretchability recommendations from psnfss2e.tex
+ in case setting in times (and remove 'em again)
+
+Sun Oct 30 09:50:54 1994 Robin Fairbairns (robin@home)
+
+ * faq.sty: define a \WYSIWYG command
+
+ * filectan.tex: Change mf-beginners to refer to copy in documentation/,
+ add mf-list
+
+ * newfaq.tex: Move BibTeX docs question above the one on the PicTeX
+ manual
+ (throughout): reformat every \Qref so that the content of the second
+ (first mandatory) argument is the whole of the anchor text
+
+Sat Oct 29 14:27:12 1994 Robin Fairbairns (robin@home)
+
+ * filectan.tex: Add modes-file (to avoid `modes.mf in \CTANref{modes}')
+ and mf-beginners (needs checking)
+
+ * newfaq.tex (throughout): Use \Eplain{} for Eplain
+ Another instance of `\eTeX.'!!!
+ Mark up program names with \ProgName, (more) file names with \File
+ Hack at \MF{} section, following Karl Berry's suggestions
+
+ * faq.sty: Define \Eplain (nullish sort of definition), \ProgName
+ Require comment.sty and exclude a comment of htmlversion
+
+Fri Oct 28 14:05:37 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (section{Acquiring the Software}): Record checking of
+ bitftp@pucc.bitnet, listserv@dhdurz1.bitnet
+ (section{Documentation and Help}): Add reference to Norm Walsh's book
+
+Thu Oct 27 10:39:12 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (section{Special sorts of typesetting}): Added references
+ to abc2mtex, midi2tex (also uploaded 'em to CTAN)
+ (section{The Background}): Added comment about GNU copyleft to the `how
+ come it's free' question
+ (section{Documentation and Help}): Added new question about finding
+ \LaTeXe{} packages (as a place to hang a pointer to companion.ctan,
+ which I've almost finished...)
+
+ * dirctan.tex: Added abc2mtex, midi2tex
+
+ * filectan.tex: Added compan-ctan
+
+Wed Oct 26 23:39:41 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex (section{Documentation and Help}): Sort out formatting of
+ the book lists (ISBNs uniform, no wrapping of \item parameters, removed
+ redundant braces)
+
+Wed Oct 26 12:57:11 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (section{Documentation and Help}): Added stuff about .dtx
+ files
+ (section{The Background}): Add a Question about Eplain (not exactly
+ frequently-asked, but there we are...)
+ (section{\TeX{} Systems}): Use Oz\TeX{} as the `logo'
+ (throughout): Various corrections following Alan's problems generating
+ html
+
+ * dirctan.tex: Corrected spelling of symbols in amsfonts-symbols...
+
+Wed Oct 26 00:02:37 1994 Robin Fairbairns (robin@home)
+
+ * faq.sty: Yet another iteration of the \AtEndDocument CTAN reference
+ checks...
+
+ * newfaq.tex (section{Things are going wrong}): Add RAB's questions
+ Behaviour of \rm, etc.; Missing symbols; Word division; Moving tables
+ and figures; Disappearing tables and figures
+ Add some words about journals in the intro to the question on double
+ spacing
+
+Mon Oct 24 11:26:27 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (section{Special sorts of typesetting}): Refine reference
+ to amsfonts, to get to the directory directly related to the symbols
+ Comment out the "lazy person's" stuff, which I didn't like, and \Rho
+ says doesn't work
+
+ * dirctan.tex: Added amsfonts-symbols (a subdirectory of amsfonts)
+
+ * newfaq.tex (throughout): Do away with the "<American spelling> (sic)"
+ construct
+ (throughout): Lots of minor (and not-so-minor) editorials by Rosemary
+
+ * faq.sty: Add tie between reference to question and the question
+ number
+
+Sun Oct 23 00:25:48 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex: Change fileversion to 1.4, date to tomorrow
+ Add 1994/95 committee to the footnote
+ General editorial consistency tidy-up
+ Add question on which font files need to be kept after a run of mf
+ Add new section "why does it _do_ that", with Joachim's text about
+ protection (this is where the proposed question on paragraph parameters
+ will go, too)
+
+ * faq.sty: Make provision for using faqfont.cfg
+
+ * faqfont.cfg: Null configuration file to enable use of CM fonts
+ in the lab
+
+Sat Oct 22 15:41:11 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (section{DVI Drivers and Previewers}): Extended the text
+ around dvips for VMS
+
+ * filectan.tex: Added {AXP,VAX}VMSdvips, VMSdvips-{fonts,support}
+
+ * dirctan.tex: Added l2a
+
+Sat Oct 22 13:30:17 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex: Removed the \NeedsTeXFormat (since it's now done in
+ faq.sty); also types out file versions and so on.
+ Modified text (sometimes by bodily shifts or even rewrites) to ensure
+ that if a \CTANref is at the end of a sentence, it's always also at the
+ end of a paragraph, with no full stop after it
+ Added references (which aren't yet satisfied) for VMS dvips executables
+ and l2a (do we want that, though?)
+
+ * faq.sty: Moved \NeedsTeXFormat to style file
+ Define version number (now 0.4) and date, and type 'em out
+
+Fri Oct 21 09:52:11 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex (section{Documentation and Help}): Redo the lists somewhat
+ (throughout): Sort out {}s after acronym macros (where did those come
+ from?)
+
+ * filectan.tex: Specify usergrps.tex as coming from usergrps/info
+
+Fri Oct 21 13:40:02 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (section{Special sorts of typesetting}): Added reference
+ to vmargin (and posted a question about whether we still want vpage)
+ (section{Special sorts of typesetting}): Add reference to makeindex (to
+ match the one for macmakeindex) and idxtex (what's all this garbage
+ about texindex? -- the .tar.gz file in the directory is (shall we say)
+ peculiar...)
+
+ * filectan.tex: Bit o' sorting into order...
+ Add fullpage, vmargin
+
+ * texnames.sty: Make logo for BibTeX transportable (i.e., usable not in
+ LaTeX2e if required)
+ Add logos \LaTeXe and \LaTeXo
+
+Thu Oct 20 19:38:17 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex (section{Special Sorts of Typesetting}): First attempt at
+ defining the distinction between `indexing' (deciding what's to be
+ indexed and how) and `making an index' (generating the file to include
+ from the .ind)
+ Throughout: re-mark-up \Qrefs (though the ones in comments aren't
+ touched...
+ (section{DVI Drivers and Previewers}): use Mattes' own emTeX logo
+ (at least as it appears in his documentation...)
+ Throughout: verbatimise `ftp'
+ * dirctan.tex: change reference to fancyheadings to point into 2e
+ directory tree
+
+ * texnames.sty: Define \BibTeX using \textsc rather than the ingenious
+ stuff that the original used (which, since it employs \sc, suppresses
+ the use of bold face in section titles)
+
+ * faq.sty: \Qref now to have three arguments, the third being the
+ actual thing we're referring to (the second is for the html processor's
+ anchoring text)
+
+Mon Oct 17 21:03:06 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex (section{Documentation and Help}): Change list of books to
+ use booklist environment
+ (section{Introduction}): Added a \subsection* giving details of the
+ `elided' first directory of every path name (this surrounded by
+ \htmlignore ... \endhtmlignore)
+
+ * faq.sty: Add environment booklist for use in the list of books
+ (egob!)
+ Define \htmlignore,\endhtmlignore to mean \relax
+
+Mon Oct 17 09:16:55 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (section{Special sorts of typesetting}): Correct to a
+ reference to screensty
+ Tiny tweak of the intro note
+ (section{PostScript and \TeX{}}): Corrected reference to figsinlatex,
+ removed comments about the .dvi being available too...
+
+ * dirctan.tex: Added vmspell, txtdist, texsgi declarations
+ Moved 2etools from newfaq.tex itself
+
+ * newfaq.tex (section{PostScript and \TeX{}}): Record the fact that
+ EdMetrics is available on CTAN, rather than by writing to Bluew Sky
+
+ * faq.sty: In \FAQverb only insert \leavevmode if actually in vertical
+ mode
+
+ * newfaq.tex: Input dirctan.tex (instead of namectan) and filectan.tex
+ (instead of the inline definitions it contains)
+ Moved 2etools directory out to dirctan.tex
+ (section{PostScript and \TeX{}}): Give Blue Sky's telephone no. in
+ canonical form
+ (section{\TeX{} Systems}): Corrected the reference to science.utah.edu
+ (which is now ftp.math.utah.edu), checked that the files for TOPS-20
+ are still there...
+ (section{Documentation and Help}): Corrected numeric address for
+ rtfm.mit.edu
+ (section{Documentation and Help}): Made reference to the index an
+ (section{Acquiring the Software}): refer to, rather than name,
+ README.uploads
+ *Reference* the index rather than (as previously) use \CTANfile (which
+ did nothing and typeset oddly ;-)
+
+ * filectan.tex: New, the _files_ bit from newfaq.tex Added references
+ to README.uploads, TeX-index, EdMetrics, screen.sty, usergrps.tex
+
+ * dirctan.tex: Renamed from namectan.tex
+ Added a reference to TeX-index
+
+Sun Oct 16 10:28:04 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex: Remove loading of package shortvrb and definition of the
+ short verb character
+ Changed layout of the path specified for the start of the CTAN archive
+ from "./tex-archive" to "tex-archive/" (and used \CTAN for reference in
+ place of \path)
+ Refer to ucthesis via its \CTANref
+ Change layout of the path reference for DECUS TeX on wuarchive (without
+ prejudice as to whether we actually want to retain the reference at
+ all, of course)
+ Quote DECUS library telephone number in the same way as all other nos
+ Correct reference to Barbara Beeton's email address
+
+ * faq.sty: Comment out the use of path.sty, all of my old stuff about
+ the CTAN labels
+ Add Alan's versions of the same... (less transmission errors)
+ Load the shortvrb package, and define | as the short verbatim character
+ _before_ using it as a delimiter for the various path-like commands
+ Similarly, make sure `@' is catcoded to `other' before defining the
+ \Email macro
+ Start \FAQverb with \leavevmode, since otherwise we might find
+ ourselves trying to change language while in vertical mode
+ Define \path in terms of \FAQverb
+
+Sat Oct 15 22:08:23 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faq.sty: added, then removed again, \emergencystretch
+
+Sat Oct 15 10:08:43 1994 Robin Fairbairns (robin@home)
+
+ * namectan.tex: add bibtex-doc, graphics
+
+ * newfaq.tex: editorial work on questions 2,4-9,11,12,14-19,21,24
+ Commented out the "alternative" FAQ sites (though left reference to
+ rtfm.mit.edu)
+ taken away the (sanitised) group around all the ctan directory/file
+ commands
+
+ * faq.sty: give \Qref an optional first argument (intro text, default
+ "see question")
+ make \CTANdirectory open a group, sanitise, and then call \@CTANdir
+ which is the old version of the command and then \egroup (similarly for
+ \CTANfile, with \@CTANfile)
+ make the scribble for undefined references come out in \texttt
+ lots of kerfuffle to recover the situation of the directory (etc.)
+ declarations split
+
+ * path.sty: define \@morediscreet, a version of the same as the
+ internal version of \discretionaries, except that it defines all the
+ active characters to become \relax, so that they can be \xdef'ed
+
+Fri Oct 14 22:38:58 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex: change \Qref{dvi-ps} to {Q-dvips} (one or the other had
+ to change, after all)
+ second \CTANfile{unixtexftp} was really a \CTANref
+ removed original entry in the systems list for Macs, since it's been
+ superseded by Seb's new one
+ second \CTANfile{btxmactex} was in fact a \CTANref
+ (outstanding package warnings re CTANrefs are texsgi,vmspell and
+ txtdist)
+
+ * texnames.sty: made the name for SliTeX conform to the comment about
+ it (it's not a big deal now that it's dead, but lower-case `i' (as
+ opposed to small caps `i') looked really odd
+
+ * faq.sty: Added some scribble text in case of an unassigned \CTANref
+ err ... yet another instance of \makeatletter ... and another
+
+Thu Oct 12 16:00 1994 Sebastian Rahtz (s.rahtz@elsevier.co.uk)
+
+ * Removed all non-CTAN ftp references (to be put back as a table)
+
+ * changed order of questions
+
+ * added list of committee names
+
+ * made all questions statements, not questions (as per JS)
+
+ * made complete list of CTAN names (namectan.tex)
+
+Tue Oct 11 13:37:28 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faq.sty: add (null) definition of \checked macro
+ made \CTANfile and \CTANdirectory \gdef their reference commands, and
+ defined a \CTANsanitise command
+
+ * newfaq.tex: last two \CTANlabels become one \CTANdirectory (ispell)
+ and two \CTANfiles (VMS TeX)
+ (section{\MF{}}): mf \smode=... into a verbatim env (rather than short
+ verb)
+ (section{\TeX{} Systems}): VAX/VMS item -> VMS item (added a \checked
+ macro)
+ (section{\TeX{} Systems}): Updated the amiga stuff to point to CTAN
+ only (added a \checked macro)
+
+Fri Oct 7 15:24:29 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (throughout): more hacking at commands that split
+ themselves over lines, added {}s to the last few \LaTeXe's that needed
+ them
+ (section{\MF{}}): indent verbatim command sequences
+ (section{\TeX{} Systems}): unwrap Q-oztex \Question argument
+ (section{Documentation and Help}): use \LaTeX in Lamport's book title
+ (section{Special sorts of typesetting}): reference macmakeindex.sit
+ instead of giving an email address for Tolliver, which causes grief
+ with Alan's perl code...
+
+ * faq.sty: Add a \DANTE command, at Alan's suggestion
+
+Thu Oct 6 14:05:36 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * faq.sty: provide the commands for doing the \CTANlabel/\CTANref game
+
+ * newfaq.tex (section{Special sorts of typesetting}): Added remark
+ about the status of screenview
+ (throughout) try to ensure (as Alan requests) that all logos are
+ referenced as as \logoname{} _only_
+ (throughout) install the \CTANref mechanism for referring to existing
+ CTAN addresses
+ updated \fileversion and \filedate...
+
+Mon Oct 3 09:05:14 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (section{Documentation and Help}): Removed repeated TUG
+ address from PicTeX manual question (replaced with reference to TUG
+ question); then moved question down below TUG question
+ (section{\TeX{} Systems}): mailed Elizabeth Tachikawa about the Unix
+ tape service
+ (section{Documentation and Help}): mailed latex-help-coordinator about
+ LaTeX help service, but the response was "unknown user" -- deleted
+ question and answer
+ (section{Documentation and Help}): Added a question about national/
+ regional user groups
+ (section{Documentation and Help}): rationalise use of \BibTeX (in
+ particular, bibtex.1 is a _file_, not something that can reasonably
+ be expressed as a logo (why doesn't bold small caps appear in question
+ titles?)
+
+Sun Oct 2 17:14:30 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex (section{The Background}): Added body to the questions
+ What is TeX?, What is LaTeX?, why's it free?
+ (section{Introduction}): added a reference to Alan's server (even
+ though it's inevitably out of date w.r.t. this document...)
+
+Sat Oct 1 (evening) 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex: significant upheaval (several new questions, fewer new
+ answers), following discussion with Jonathan;
+ add \NeedsTeXFormat requirement (should this be in faq.sty?);
+ new section The Background with some stuff moved out from Introduction,
+ containing questions What is TeX?, What is LaTeX?, should I use plain
+ or LaTeX?, why's it free?, why isn't it wysiwyg?, and what is the
+ future?;
+ Introduction completely re-written;
+ new questions in The Latest Developments, What is the NTS project?,
+ what is the LaTeX3 project?
+
+ * faq.sty: new commands for \BV, \NTS, \eTeX and \URL
+
+Thu Sep 29 12:43:52 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex: lots of minor typos corrected;
+ yet more markup added;
+ one or two more of Joachim's comments addressed (but note new \Q about
+ LaTeX 2.09 and `weird hyphenatoin')
+
+ * faq.sty: load times.sty only \IfFileExists (such taste; such
+ originality)
+
+Wed Sep 28 10:23:30 1994 Robin Fairbairns (robin@home)
+
+ * newfaq.tex: modified so that all question references (that I've
+ spotted so far ;-) simply consist of a \Qref in parentheses;
+ first iteration of sticking stuff in new sections;
+ more books (well, one more) and into a new question;
+ more markup tidying (\Newsgroup, \CTAN, etc.);
+ now version 1.1, added \hfuzz and \emergencystretch
+
+ * faq.sty: (possibly merely experimental ;-) made Questions into
+ subsections, removed subsection from \cl@section, numbered sections
+ alphabetically...;
+ make \Qref produce "see question \ref{#1}"
+
+Tue Sep 27 16:10:17 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex: change to use \BibTeX instead of \BiBTeX (since the
+ latter's not one of the forms the name appears in texnames.sty;
+ refer to PiCTeX, VorTeX through their (new) logo macros;
+ similarly (though not new logos) tex->\TeX, AMS[La]TeX, LaTeX, BibTeX,
+ SliTeX;
+ correct wording describing incorporation of SliTeX into 2e (ex Joachim
+ Schrod's suggestion)
+
+ * texnames.sty: new, copied from eplain distribution, but with \PiCTeX
+ and \VorTeX added (pro tem, at least)
+
+ * faq.sty: moved the font-setting commands, etc., into the package
+
+Tue Sep 27 14:17:51 1994 Robin Fairbairns (robin@home)
+
+ * faq.sty: markup commands in separate package (ultimately to come in
+ several versions according to the environment it's to be processed in
+ -- e.g., versions for PS font usage/cm font usage, even a version for
+ processing to plain text?)
+
+ * newfaq.tex: moved all the markup commands out to (new) faq.sty;
+ couple of typos corrected following input from Joachim Schrod
+
+Thu Sep 22 09:18:38 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex: (last night's work) new-style markup for question
+ references, label for last question (so we can see how well we're
+ doing), \makeshortverb of \| so as to get coherent log output
+
+Tue Sep 20 13:54:51 1994 Robin Fairbairns (rf@dorceus.cl.cam.ac.uk)
+
+ * newfaq.tex: moved \documentclass, \usepackage above defs of
+ fileversion and date, so as not to pick up that from mflogo;
+ `getting a copy' - removed fileserv@shsu.bitnet, put various email
+ addresses in \Email; put NEWS.ANSWERS into more coherent form
+ (verbatim; and yes, it _does_ need to be upper case)
+ `pictex manual': escape the $s (!)
+ `oztex': it's now shareware, not PD
+ `fig and where to get it': remove escape from _ in \path (!)
+ `music': corrected email address for Taupin and his ftp site
+ `double-spacing': doublespace.sty is a file name; close paren round ref
+ to CTAN; "latest release of LaTeX"->"LaTeX2e"
+ `macros to do Y': verbatim site index command <term> in text
+ `... for machine Y running Q': FTP.nwc is a file, and yes, it is there
+ ibid, both AIX and PC made explicit reference to fpt.dante.de
+ `blackboard bold': tech-support is an email address; add reference to
+ the extraordinary bbm fonts
+ `repositories': correct address corresponding to ftp.tex.ac.uk; put
+ site index command into verbatim
+ `Laserjet': converted S's \Q about Berry's prog into an actual
+ reference to it
+ `\pagestyle{empty}': correct (;-) spelling of behaviour, "is"->"if"
+ `NFSS': rewritten to clarify relationship to New LaTeX
+ New question about things like \tenrm in 2e added
+ `references wrong': line up corrected code in two columns
+ `change margins': indent code
+ `width of letter, etc.': indent examples; remove redundant `T' from
+ LaTeX
+ `LaTeX2e': first production release was June
+ `log-like functions': indent examples
+ `\@': "?" at end of question
+ `Companion ... @': space after LaTeX in question, "!" at end
+ `I've found a bug': slight elaboration of 2.09 case
+ New version of path.sty with some hacking; redo all S's (and my one)
+ markup commands
+
+Mon Sep 19 11:46:40 1994 Robin Fairbairns (robin@home)
+
+ * define \Newsgroup (same as all the rest, pro tem) and use it for
+ comp.tex.tex, comp.unix.wizards, news.answers, comp.sources.unix,
+ comp.programming.literate, comp.sources.misc, comp.text, comp.fonts
+
+ * added new questions "what's all this about \@", "but the companion
+ tells me to use \@startsection" and "I've found a bug: what do I do"
+ (which last was a suggestion of Jonathan's)
+
+ * put \fileversion in the title (rather than \filedate twice)
+
+ * defined command \cs (out of ltxdoc.cls) so that we can put commands
+ in question names, required for q32 about \pagestyle{emtpy}
diff --git a/obsolete/help/texfaq/Makefile b/obsolete/help/texfaq/Makefile
new file mode 100644
index 0000000000..1345d54113
--- /dev/null
+++ b/obsolete/help/texfaq/Makefile
@@ -0,0 +1,226 @@
+# define variables WEB, WEB_BETA, CGI_BIN, HOME_DIR, CTAN_HOME, CTAN_ROOT
+include locations.mk
+
+# list of subdocuments of gather-faqbody
+include subdocuments.mk
+
+BODY = gather-faqbody.tex filectan.tex dirctan.tex $(SUBDOCS)
+MACROS = faq.cls faq.sty
+CONFIGS = archive.cfg
+CMFONTS = cmz
+PATCH = newfaq-patch.tex add-general.tex add-hammond.tex
+MAKEF = Makefile
+
+HTML_TAR = FAQ-html.tar.gz
+
+LATEX = latex
+PDFLATEX = pdflatex
+
+CTAN_HOME = help/uk-tex-faq
+
+#h
+#hThe main targets of this Makefile are
+#h release build a distribution
+#h
+#h patch build latest patched version
+#h
+#h ctan install distribution on CTAN
+#h (to be run on the CTAN machine)
+#h web install files required for web access
+#h (must be run on the machine that hosts
+#h the CGI script)
+#h web-index web access files, just (dir|file)ctan
+#h web-beta as web, except beta distribution
+#h
+#h inst-perl install texfaq2html and sanitize.pl
+#h in the cgi-bin directory
+#h inst-perl-beta ditto, for texfaq2html-beta, sanitize-beta
+#h inst-perl-gamma ditto, for texfaq2html-gamma
+#h
+#h html make html files in html/
+#h html-gamma make html files in html, copy for -gamma tests
+
+help:; @sed -n 's/^#h//p' < $(MAKEF)
+
+release: all html-tar
+all: newfaq.pdf letterfaq.pdf
+
+# did have faqfont.cfg in here, but that caused problems, since it
+# typically doesn't exist...
+
+# pdf generation has to be done one a different base file name because
+# of incompatibilities in the .aux and .toc files
+newfaq.pdf: newfaq.tex $(BODY) $(MACROS) $(CONFIGS)
+ ln -sf newfaq.tex ./pdf-newfaq.tex
+ rm -f faqfont.cfg
+ while ( \
+ $(PDFLATEX) \\def\\Status{1} \\input pdf-newfaq ; \
+ grep "Rerun to get cross" pdf-newfaq.log > /dev/null ) do true ; \
+ done
+ thumbpdf pdf-newfaq
+ $(PDFLATEX) \\def\\Status{1} \\input pdf-newfaq
+ mv pdf-newfaq.pdf newfaq.pdf
+ rm pdf-newfaq.tex
+
+letterfaq.pdf: letterfaq.tex $(BODY) $(MACROS) $(CONFIGS)
+ ln -sf letterfaq.tex ./pdf-letterfaq.tex
+ rm -f faqfont.cfg
+ while ( \
+ $(PDFLATEX) \\def\\Status{1} \\input pdf-letterfaq ; \
+ grep "Rerun to get cross" pdf-letterfaq.log > /dev/null ) do true ; \
+ done
+ thumbpdf pdf-letterfaq
+ $(PDFLATEX) \\def\\Status{1} \\input pdf-letterfaq
+ mv pdf-letterfaq.pdf letterfaq.pdf
+ rm pdf-letterfaq.tex
+
+patch: newfaq-patch
+
+newfaq-patch: newfaq-patch.pdf newfaq-patch.ps
+
+patch.pdf: newfaq-patch.pdf
+
+newfaq-patch.pdf: $(PATCH) $(BODY) $(MACROS) $(CONFIGS)
+ ./find-add-files
+ ln -sf newfaq-patch.tex ./pdf-newfaq-patch.tex
+ rm -f faqfont.cfg
+ while ( \
+ $(PDFLATEX) \\def\\Status{1} \\input pdf-newfaq-patch ; \
+ grep "Rerun to get cross" pdf-newfaq-patch.log > /dev/null ) do true ; \
+ done
+ thumbpdf pdf-newfaq-patch
+ $(PDFLATEX) \\def\\Status{1} \\input pdf-newfaq-patch
+ mv pdf-newfaq-patch.pdf newfaq-patch.pdf
+ ln -sf newfaq-patch.pdf patch.pdf
+ rm pdf-newfaq-patch.tex
+
+patch.dvi: newfaq-patch.dvi
+
+newfaq-patch.dvi: $(PATCH) $(BODY) $(MACROS) $(CONFIGS)
+ ./find-add-files
+ while ( \
+ $(LATEX) newfaq-patch ; \
+ grep "Rerun to get cross" newfaq-patch.log > /dev/null ) do true ; \
+ done
+ ln -sf newfaq-patch.dvi patch.dvi
+
+newfaq.aux: newfaq.dvi
+
+newfaq.dvi: newfaq.tex $(BODY) $(MACROS) $(CONFIGS)
+ echo $(LATEX)
+ while ( \
+ $(LATEX) newfaq ; \
+ grep "Rerun to get cross" newfaq.log > /dev/null ) do true ; \
+ done
+
+letterfaq.dvi: letterfaq.tex $(BODY) $(MACROS) $(CONFIGS)
+ while ( \
+ $(LATEX) letterfaq ; \
+ grep "Rerun to get cross" letterfaq.log > /dev/null ) do true ; \
+ done
+
+newfaq-cm.dvi: newfaq.tex $(BODY) $(MACROS) $(CONFIGS)
+ ln -sf faqfont.cfg.cmfonts faqfont.cfg
+ ln -sf newfaq.tex newfaq-cm.tex
+ while ( \
+ $(LATEX) newfaq-cm ; \
+ grep "Rerun to get cross" newfaq-cm.log > /dev/null ) do true ; \
+ done
+ rm faqfont.cfg newfaq-cm.tex
+
+letterfaq-cm.dvi: letterfaq.tex $(BODY) $(MACROS) $(CONFIGS)
+ ln -sf faqfont.cfg.cmfonts faqfont.cfg
+ ln -sf letterfaq.tex letterfaq-cm.tex
+ while ( \
+ $(LATEX) letterfaq-cm ; \
+ grep "Rerun to get cross" letterfaq-cm.log > /dev/null ) do true ; \
+ done
+ rm faqfont.cfg letterfaq-cm.tex
+
+$(HTML_TAR):
+ tar czvf $(HTML_TAR) html/*
+
+ctan: $(HTML_TAR)
+ (cd $(CTAN_ROOT)/$(CTAN_HOME); \
+ really -u ctan make -f /home/rf/tex/faq/Makefile.CTAN)
+
+# faqbody for all the webbery stuff
+faqbody.tex: $(SUBDOCS) gather-faqbody.tex
+ ./build-faqbody
+
+web: $(WEB)/dirctan.tex $(WEB)/filectan.tex $(WEB)/faqbody.tex $(WEB)/newfaq.aux $(WEB)/archive.list
+
+web-index: $(WEB)/dirctan.tex $(WEB)/filectan.tex
+
+$(WEB)/dirctan.tex: dirctan.tex
+$(WEB)/filectan.tex: filectan.tex
+$(WEB)/faqbody.tex: faqbody.tex
+$(WEB)/newfaq.aux: newfaq.aux
+$(WEB)/archive.list: archive.list
+$(WEB)/aliasquestion.list: aliasquestion.list
+$(WEB)/label-to-file.pl: label-to-file.pl
+
+$(WEB)/dirctan.tex $(WEB)/filectan.tex $(WEB)/faqbody.tex $(WEB)/newfaq.aux $(WEB)/archive.list $(WEB)/aliasquestion.list $(WEB)/label-to-file.pl:
+ if [ -f $@ ]; then \
+ chmod 644 $@; \
+ cp -p $< $@-t; \
+ mv $@-t $@; \
+ else \
+ cp -p $< $@; \
+ fi
+ chmod 444 $@
+
+web-beta: $(WEB_BETA)/dirctan.tex $(WEB_BETA)/filectan.tex $(WEB_BETA)/faqbody.tex $(WEB_BETA)/newfaq.aux $(WEB_BETA)/archive.list $(WEB_BETA)/aliasquestion.list $(WEB_BETA)/label-to-file.pl
+
+$(WEB_BETA)/dirctan.tex: dirctan.tex
+$(WEB_BETA)/filectan.tex: filectan.tex
+$(WEB_BETA)/faqbody.tex: faqbody.tex
+$(WEB_BETA)/newfaq.aux: newfaq.aux
+$(WEB_BETA)/archive.list: archive.list
+$(WEB_BETA)/aliasquestion.list: aliasquestion.list
+$(WEB_BETA)/label-to-file.pl: label-to-file.pl
+
+$(WEB_BETA)/dirctan.tex $(WEB_BETA)/filectan.tex $(WEB_BETA)/faqbody.tex $(WEB_BETA)/newfaq.aux $(WEB_BETA)/archive.list $(WEB_BETA)/aliasquestion.list $(WEB_BETA)/label-to-file.pl:
+ if [ -f $@ ]; then \
+ chmod 644 $@; \
+ cp -p $< $@-t; \
+ mv $@-t $@; \
+ else \
+ cp -p $< $@; \
+ fi
+ chmod 444 $@
+
+inst-perl: $(CGI_BIN)/texfaq2html $(CGI_BIN)/sanitize.pl
+inst-perl-beta: $(CGI_BIN)/texfaq2html-beta $(CGI_BIN)/sanitize-beta.pl
+inst-perl-gamma: $(CGI_BIN)/texfaq2html-gamma
+
+$(CGI_BIN)/texfaq2html: $(HOME_DIR)/texfaq2html
+$(CGI_BIN)/texfaq2html-beta: $(HOME_DIR)/texfaq2html-beta
+$(CGI_BIN)/texfaq2html-gamma: $(HOME_DIR)/texfaq2html-gamma
+$(CGI_BIN)/sanitize.pl: $(HOME_DIR)/sanitize.pl
+$(CGI_BIN)/sanitize-beta.pl: $(HOME_DIR)/sanitize-beta.pl
+
+$(CGI_BIN)/texfaq2html $(CGI_BIN)/texfaq2html-beta $(CGI_BIN)/texfaq2html-gamma $(CGI_BIN)/sanitize.pl $(CGI_BIN)/sanitize-beta.pl:
+# co -l $@
+ cp -p $? $@
+# ci -u -m"automatic check-in" $@
+
+html: $(HTMLDIR)/index.html
+
+$(HTMLDIR)/index.html: $(BODY) newfaq.aux faqbody.tex
+ ./texfaq2file
+
+html-tar: html
+ tar czf FAQ-html.tar.gz $(HTMLDIREL)/
+
+html-gamma: $(HTMLDIR_GAMMA)/index.html
+
+$(HTMLDIR_GAMMA)/index.html: $(BODY) newfaq.aux faqbody.tex
+ ./texfaq2file -2 -w
+ cp -p $(HTMLDIR_GAMMA)/* $(GAMMADIR)/
+
+clean:
+ rm -f *.pdf *.dvi *.log *.bak *.toc *.out *.lab *.tpt *.png
+ rm -f *.aux html/*.html html_gamma/*.html htmltext/*.txt
+ rm -f pdf-newfaq*.tex comment.cut additions.tex aliasquestion.list
+ rm -f faqbody.tex FAQ-html.tar.gz
diff --git a/obsolete/help/texfaq/Makefile-CTAN b/obsolete/help/texfaq/Makefile-CTAN
new file mode 100644
index 0000000000..52912fb5fc
--- /dev/null
+++ b/obsolete/help/texfaq/Makefile-CTAN
@@ -0,0 +1,103 @@
+# this file is auto-generated; edit mk-makefile, not this
+
+/anfs/ctan/tex-archive/help/uk-tex-faq/ChangeLog: ChangeLog
+/anfs/ctan/tex-archive/help/uk-tex-faq/Makefile: Makefile
+/anfs/ctan/tex-archive/help/uk-tex-faq/README: README
+/anfs/ctan/tex-archive/help/uk-tex-faq/dirctan.tex: dirctan.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq.cls: faq.cls
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq.sty: faq.sty
+/anfs/ctan/tex-archive/help/uk-tex-faq/filectan.tex: filectan.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/gather-faqbody.tex: gather-faqbody.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/letterfaq.tex: letterfaq.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/archive.cfg: archive.cfg
+/anfs/ctan/tex-archive/help/uk-tex-faq/markup-syntax: markup-syntax
+/anfs/ctan/tex-archive/help/uk-tex-faq/newfaq.tex: newfaq.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/letterfaq.pdf: letterfaq.pdf
+/anfs/ctan/tex-archive/help/uk-tex-faq/newfaq.pdf: newfaq.pdf
+/anfs/ctan/tex-archive/help/uk-tex-faq/faqfont.cfg.cmfonts: faqfont.cfg.cmfonts
+/anfs/ctan/tex-archive/help/uk-tex-faq/FAQ-html.tar.gz: FAQ-html.tar.gz
+/anfs/ctan/tex-archive/help/uk-tex-faq/CHANGES-3.25: CHANGES-3.25
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-adj-types.tex: faq-adj-types.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-backgrnd.tex: faq-backgrnd.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-biblio.tex: faq-biblio.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-bits+pieces.tex: faq-bits+pieces.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-docs.tex: faq-docs.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-dvi.tex: faq-dvi.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-fmt-conv.tex: faq-fmt-conv.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-fonts.tex: faq-fonts.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-getit.tex: faq-getit.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-graphics.tex: faq-graphics.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-how-do-i.tex: faq-how-do-i.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-hyp+pdf-1.tex: faq-hyp+pdf-1.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-hyp+pdf.tex: faq-hyp+pdf.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-hyp-pdf-rev.tex: faq-hyp-pdf-rev.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-images.tex: faq-images.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-install.tex: faq-install.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-intro.tex: faq-intro.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-jot-err.tex: faq-jot-err.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-lab-ref.tex: faq-lab-ref.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-litprog.tex: faq-litprog.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-mac-prog.tex: faq-mac-prog.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-projects.tex: faq-projects.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-support.tex: faq-support.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-symbols.tex: faq-symbols.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-t-g-wr.tex: faq-t-g-wr.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-texsys.tex: faq-texsys.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-the-end.tex: faq-the-end.tex
+/anfs/ctan/tex-archive/help/uk-tex-faq/faq-wdidt.tex: faq-wdidt.tex
+
+TARGETS = \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/ChangeLog \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/Makefile \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/README \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/dirctan.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq.cls \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq.sty \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/filectan.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/gather-faqbody.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/letterfaq.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/archive.cfg \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/markup-syntax \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/newfaq.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/letterfaq.pdf \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/newfaq.pdf \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faqfont.cfg.cmfonts \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/FAQ-html.tar.gz \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-adj-types.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-backgrnd.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-biblio.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-bits+pieces.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-docs.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-dvi.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-fmt-conv.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-fonts.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-getit.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-graphics.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-how-do-i.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-hyp+pdf-1.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-hyp+pdf.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-hyp-pdf-rev.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-images.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-install.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-intro.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-jot-err.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-lab-ref.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-litprog.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-mac-prog.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-projects.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-support.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-symbols.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-t-g-wr.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-texsys.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-the-end.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/faq-wdidt.tex \
+ /anfs/ctan/tex-archive/help/uk-tex-faq/CHANGES-3.25
+
+all: $(TARGETS)
+ echo $^
+ if [ -f $^ ]; then \
+ /anfs/ctan-maint/install/ctan_install -replace -silent -nozip $(F^) help/uk-tex-faq/$(F^); \
+ else \
+ /anfs/ctan-maint/install/ctan_install -new -silent $(F^) help/uk-tex-faq/$(F^); \
+ fi
+
diff --git a/obsolete/help/texfaq/README b/obsolete/help/texfaq/README
new file mode 100644
index 0000000000..1f452b06e0
--- /dev/null
+++ b/obsolete/help/texfaq/README
@@ -0,0 +1,34 @@
+ The UK TeX FAQ
+
+1. Origins and maintenance
+
+This FAQ was started as a committee effort by the UK TeX Users' Group.
+
+If you wish to offer help, or to comment on the content of the FAQ,
+please mail faq-devel@tex.ac.uk
+
+2. Licence
+
+The source of the FAQ itself and its derived products (human-readable
+versions presented as DVI, PostScript, Adobe Acrobat and HTML) are
+placed in the public domain.
+
+You are permitted (nay, encouraged) to distribute the FAQ as widely as
+you like. Please be careful to keep your copy of the FAQ up-to-date:
+it's possible to mirror the FAQ's directory on CTAN, or to watch the
+CTAN announcements mailing list (see the "answer" on mailing lists in
+the FAQ itself).
+
+Further, you are urged to be very careful about modifying the FAQ:
+
+- the source and its relationship to the macros that support it, and
+ to the dubious Perl scripts that create HTML versions, is extremely
+ fragile; so changes are likely to be tricky to "get right"
+
+- there's a positive danger in publishing un-reviewed advice,
+ particularly if it claims to come from a usually reliable source.
+
+Therefore, if you do have changes to make, please consider submitting
+them to faq-devel@tex.ac.uk at least in parallel with making changes
+to your own copy. A statement that details what you've done, in your
+copy of the FAQ, is particularly useful.
diff --git a/obsolete/help/texfaq/archive.cfg b/obsolete/help/texfaq/archive.cfg
new file mode 100644
index 0000000000..0d998ea78c
--- /dev/null
+++ b/obsolete/help/texfaq/archive.cfg
@@ -0,0 +1,13 @@
+% this file is loaded by the {file,dir}ctan files to define the local
+% preferred archive and directory compression format
+
+%
+% the archive itself
+\def\LocalCTAN{http://mirror.ctan.org/} % could be anything
+ % out of CTAN.sites
+%
+% the format for use when retrieving directory hierarchies
+\def\CTANDirFmt{.zip} % could be .(tar[.(Z|gz)]|tgz|zip) according to what
+ % the local archive is capable of and the users need
+
+\endinput
diff --git a/obsolete/help/texfaq/dirctan.tex b/obsolete/help/texfaq/dirctan.tex
new file mode 100644
index 0000000000..00f797453a
--- /dev/null
+++ b/obsolete/help/texfaq/dirctan.tex
@@ -0,0 +1,990 @@
+% $Id: dirctan.tex,v 1.302 2013/07/24 21:43:10 rf10 Exp rf10 $
+%
+% protect ourself against being read twice
+\csname readCTANdirs\endcsname
+\let\readCTANdirs\endinput
+%
+% declarations of significant directories on CTAN
+\CTANdirectory{2etools}{macros/latex/required/tools}[tools]
+\CTANdirectory{4spell}{support/4spell}[fourspell]
+\CTANdirectory*{Catalogue}{help/Catalogue}
+\CTANdirectory*{MathTeX}{support/mathtex}[mathtex]
+\CTANdirectory{MimeTeX}{support/mimetex}[mimetex]
+\CTANdirectory{Tabbing}{macros/latex/contrib/Tabbing}[tabbing]
+\CTANdirectory*{TeXtelmExtel}{systems/msdos/emtex-contrib/TeXtelmExtel}
+\CTANdirectory{TftI}{info/impatient}[impatient]
+\CTANdirectory{a0poster}{macros/latex/contrib/a0poster}[a0poster]
+\CTANdirectory*{a2ping}{graphics/a2ping}[a2ping]
+\CTANdirectory{a4}{macros/latex/contrib/a4}[a4]
+\CTANdirectory*{abc2mtex}{support/abc2mtex}
+\CTANdirectory{abstract}{macros/latex/contrib/abstract}[abstract]
+\CTANdirectory{abstyles}{biblio/bibtex/contrib/abstyles}
+\CTANdirectory{accents}{support/accents}
+\CTANdirectory{acronym}{macros/latex/contrib/acronym}[acronym]
+\CTANdirectory*{ada}{web/ada/aweb}
+\CTANdirectory{addindex}{indexing/addindex}
+\CTANdirectory{addlines}{macros/latex/contrib/addlines}[addlines]
+\CTANdirectory{adjkerns}{fonts/utilities/adjkerns}
+\CTANdirectory{ae}{fonts/ae}[ae]
+\CTANdirectory{aeguill}{macros/latex/contrib/aeguill}[aeguill]
+\CTANdirectory{afmtopl}{fonts/utilities/afmtopl}
+\CTANdirectory{akletter}{macros/latex/contrib/akletter}
+\CTANdirectory{aleph}{systems/aleph}
+\CTANdirectory{alg}{macros/latex/contrib/alg}
+\CTANdirectory{algorithm2e}{macros/latex/contrib/algorithm2e}[algorithm2e]
+\CTANdirectory{algorithmicx}{macros/latex/contrib/algorithmicx}[algorithmicx]
+\CTANdirectory{algorithms}{macros/latex/contrib/algorithms}[algorithms]
+\CTANdirectory*{alpha}{systems/mac/support/alpha}[alpha]
+\CTANdirectory{amiga}{systems/amiga}
+\CTANdirectory{amscls}{macros/latex/required/amslatex/amscls}[amscls]
+\CTANdirectory{amsfonts}{fonts/amsfonts}[amsfonts]
+\CTANdirectory{amslatex}{macros/latex/required/amslatex}[amslatex]
+\CTANdirectory{amslatex-primer}{info/amslatex/primer}[amslatex-primer]
+\CTANdirectory{amspell}{support/amspell}
+\CTANdirectory{amsrefs}{macros/latex/contrib/amsrefs}[amsrefs]
+\CTANdirectory{amstex}{macros/amstex}[amstex]
+\CTANdirectory{anonchap}{macros/latex/contrib/anonchap}[anonchap]
+\CTANdirectory{answers}{macros/latex/contrib/answers}[answers]
+\CTANdirectory{ant}{systems/ant}[ant]
+\CTANdirectory{anyfontsize}{macros/latex/contrib/anyfontsize}[anyfontsize]
+\CTANdirectory{apl}{fonts/apl}
+\CTANdirectory{aplweb}{web/apl/aplweb}
+\CTANdirectory{appl}{web/reduce/rweb/appl}
+\CTANdirectory{appendix}{macros/latex/contrib/appendix}[appendix]
+\CTANdirectory{arabtex}{language/arabic/arabtex}
+\CTANdirectory{arara}{support/arara}[arara]
+\CTANdirectory{aro-bend}{info/challenges/aro-bend}[aro-bend]
+\CTANdirectory{asana-math}{fonts/Asana-Math}[asana-math]
+\CTANdirectory{asc2tex}{systems/msdos/asc2tex}
+\CTANdirectory{ascii}{fonts/ascii}
+\CTANdirectory*{aspell}{support/aspell}[aspell]
+\CTANdirectory{astro}{fonts/astro}
+\CTANdirectory{asymptote}{graphics/asymptote}[asymptote]
+\CTANdirectory{asyfig}{macros/latex/contrib/asyfig}[asyfig]
+\CTANdirectory{atari}{systems/atari}
+\CTANdirectory*{atari-cstex}{systems/atari/cs-tex}[atari-cstex]
+\CTANdirectory{attachfile}{macros/latex/contrib/attachfile}
+\CTANdirectory*{auctex}{support/auctex}[auctex]
+\CTANdirectory{autolatex}{support/autolatex}
+\CTANdirectory{auto-pst-pdf}{macros/latex/contrib/auto-pst-pdf}[auto-pst-pdf]
+\CTANdirectory{aweb}{web/ada/aweb}
+\CTANdirectory*{awk}{web/spiderweb/src/awk}
+\CTANdirectory{axodraw}{graphics/axodraw}[axodraw]
+\CTANdirectory{babel}{macros/latex/required/babel}[babel]
+\CTANdirectory{babelbib}{biblio/bibtex/contrib/babelbib}[babelbib]
+\CTANdirectory{badge}{macros/plain/contrib/badge}
+\CTANdirectory{bakoma}{fonts/cm/ps-type1/bakoma}[bakoma-fonts]
+\CTANdirectory*{bakoma-tex}{systems/win32/bakoma}[bakoma]
+\CTANdirectory*{bakoma-texfonts}{systems/win32/bakoma/fonts}
+\CTANdirectory*{bard}{fonts/bard}
+\CTANdirectory{barr}{macros/generic/diagrams/barr}
+\CTANdirectory{bashkirian}{fonts/cyrillic/bashkirian}
+\CTANdirectory{basix}{macros/generic/basix}
+\CTANdirectory{bbding}{fonts/bbding}
+\CTANdirectory{bbfig}{support/bbfig}
+\CTANdirectory{bbm}{fonts/cm/bbm}[bbm]
+\CTANdirectory{bbm-macros}{macros/latex/contrib/bbm}[bbm-macros]
+\CTANdirectory{bbold}{fonts/bbold}[bbold]
+\CTANdirectory{bdfchess}{fonts/chess/bdfchess}
+\CTANdirectory{beamer}{macros/latex/contrib/beamer}[beamer]
+\CTANdirectory{beamerposter}{macros/latex/contrib/beamerposter}[beamerposter]
+\CTANdirectory{beebe}{dviware/beebe}
+\CTANdirectory{belleek}{fonts/belleek}[belleek]
+\CTANdirectory{beton}{macros/latex/contrib/beton}[beton]
+\CTANdirectory{bezos}{macros/latex/contrib/bezos}[bezos]
+\CTANdirectory{bib-fr}{biblio/bibtex/contrib/bib-fr}
+\CTANdirectory{bib2dvi}{biblio/bibtex/utils/bib2dvi}
+\CTANdirectory{bib2xhtml}{biblio/bibtex/utils/bib2xhtml}
+\CTANdirectory*{bibcard}{biblio/bibtex/utils/bibcard}
+\CTANdirectory*{bibclean}{biblio/bibtex/utils/bibclean}
+\CTANdirectory*{bibdb}{support/bibdb}
+\CTANdirectory{biber}{biblio/biber}[biber]
+\CTANdirectory{bibextract}{biblio/bibtex/utils/bibextract}
+\CTANdirectory{bibgerm}{biblio/bibtex/contrib/germbib}
+\CTANdirectory{bibindex}{biblio/bibtex/utils/bibindex}
+\CTANdirectory{biblatex}{macros/latex/contrib/biblatex}[biblatex]
+\CTANdirectory*{biblatex-contrib}{macros/latex/contrib/biblatex-contrib}
+\CTANdirectory{biblio}{info/biblio}
+\CTANdirectory{biblist}{macros/latex209/contrib/biblist}
+\CTANdirectory{bibsort}{biblio/bibtex/utils/bibsort}
+\CTANdirectory{bibtex}{biblio/bibtex/base}[bibtex]
+\CTANdirectory*{bibtex8}{biblio/bibtex/8-bit}[bibtex8bit]
+\CTANdirectory{bibtex-doc}{biblio/bibtex/contrib/doc}[bibtex]
+\CTANdirectory{bibtool}{biblio/bibtex/utils/bibtool}
+\CTANdirectory{bibtools}{biblio/bibtex/utils/bibtools}
+\CTANdirectory{bibtopic}{macros/latex/contrib/bibtopic}[bibtopic]
+\CTANdirectory{bibunits}{macros/latex/contrib/bibunits}[bibunits]
+\CTANdirectory{bibview}{biblio/bibtex/utils/bibview}
+\CTANdirectory{bigfoot}{macros/latex/contrib/bigfoot}[bigfoot]
+\CTANdirectory{bigstrut}{macros/latex/contrib/multirow}[bigstrut]
+\CTANdirectory{bit2spr}{graphics/bit2spr}
+\CTANdirectory{black}{fonts/cm/utilityfonts/black}
+\CTANdirectory{blackboard}{info/symbols/blackboard}[blackboard]
+\CTANdirectory{blackletter}{fonts/blackletter}
+\CTANdirectory{blindtext}{macros/latex/contrib/blindtext}[blindtext]
+\CTANdirectory{blocks}{macros/text1/blocks}
+\CTANdirectory{blu}{macros/blu}
+\CTANdirectory{bm2font}{graphics/bm2font}
+\CTANdirectory{boites}{macros/latex/contrib/boites}[boites]
+\CTANdirectory{bold}{fonts/cm/mf-extra/bold}
+\CTANdirectory{bold-extra}{macros/latex/contrib/bold-extra}[bold-extra]
+\CTANdirectory{bonus}{systems/msdos/emtex-contrib/bonus}
+\CTANdirectory{booktabs}{macros/latex/contrib/booktabs}[booktabs]
+\CTANdirectory{boondox}{fonts/boondox}[boondox]
+\CTANdirectory{borceux}{macros/generic/diagrams/borceux}
+\CTANdirectory{braket}{macros/latex/contrib/braket}[braket]
+\CTANdirectory{breakurl}{macros/latex/contrib/breakurl}[breakurl]
+\CTANdirectory{bridge}{macros/plain/contrib/bridge}
+\CTANdirectory{brief_t}{support/brief_t}
+\CTANdirectory{bst}{biblio/bibtex/contrib/germbib/bst}
+\CTANdirectory{btable}{macros/plain/contrib/btable}
+\CTANdirectory{btex8fmt}{macros/generic/cptex/btex8fmt}
+\CTANdirectory{btOOL}{biblio/bibtex/utils/btOOL}
+\CTANdirectory{bundledoc}{support/bundledoc}[bundledoc]
+\CTANdirectory{c}{web/spiderweb/src/c}
+\CTANdirectory{c++}{web/spiderweb/src/c++}
+\CTANdirectory{c++2latex}{support/C++2LaTeX-1_1pl1}
+\CTANdirectory{c2cweb}{web/c_cpp/c2cweb}
+\CTANdirectory{c2latex}{support/c2latex}
+\CTANdirectory{c_cpp}{web/c_cpp}
+\CTANdirectory{caesar-fonts-generic.dir}{macros/generic/caesarcm/caesar-fonts-generic.dir}
+\CTANdirectory{caesarcm}{macros/generic/caesarcm}
+\CTANdirectory{caesarcmfonts.dir}{macros/generic/caesarcm/caesarcmfonts.dir}
+\CTANdirectory{caesarcmv2.dir}{macros/generic/caesarcm/caesarcmv2.dir}
+\CTANdirectory{calendar}{macros/plain/contrib/calendar}
+\CTANdirectory{calligra}{fonts/calligra}
+\CTANdirectory{calrsfs}{macros/latex/contrib/calrsfs}
+\CTANdirectory{cancel}{macros/latex/contrib/cancel}[cancel]
+\CTANdirectory{capt-of}{macros/latex/contrib/capt-of}[capt-of]
+\CTANdirectory{caption}{macros/latex/contrib/caption}[caption]
+\CTANdirectory{carlisle}{macros/latex/contrib/carlisle}[carlisle]
+\CTANdirectory{cascover}{macros/plain/contrib/cascover}
+\CTANdirectory{casslbl}{macros/plain/contrib/casslbl}
+\CTANdirectory{catdvi}{dviware/catdvi}[catdvi]
+\CTANdirectory{ccaption}{macros/latex/contrib/ccaption}[ccaption]
+\CTANdirectory{ccfonts}{macros/latex/contrib/ccfonts}[ccfonts]
+\CTANdirectory{cellular}{macros/plain/contrib/cellular}
+\CTANdirectory{cellspace}{macros/latex/contrib/cellspace}[cellspace]
+\CTANdirectory{changebar}{macros/latex/contrib/changebar}[changebar]
+\CTANdirectory{changepage}{macros/latex/contrib/changepage}[changepage]
+\CTANdirectory{changes}{macros/latex/contrib/changes}[changes]
+\CTANdirectory{chappg}{macros/latex/contrib/chappg}[chappg]
+\CTANdirectory{chapterfolder}{macros/latex/contrib/chapterfolder}[chapterfolder]
+\CTANdirectory{charconv}{support/charconv}
+\CTANdirectory{charter}{fonts/charter}
+\CTANdirectory{chbar}{macros/plain/contrib/chbar}
+\CTANdirectory{chbars}{macros/latex209/contrib/chbars}
+\CTANdirectory{check}{support/check}
+\CTANdirectory{chemstruct}{macros/latex209/contrib/chemstruct}
+\CTANdirectory{chemtex}{macros/latex209/contrib/chemtex}
+\CTANdirectory{cheq}{fonts/chess/cheq}
+\CTANdirectory{cherokee}{fonts/cherokee}
+\CTANdirectory{chesstools}{support/chesstools}
+\CTANdirectory{chi2tex}{support/chi2tex}
+\CTANdirectory{china2e}{macros/latex/contrib/china2e}
+\CTANdirectory{chinese}{language/chinese}
+\CTANdirectory{chngcntr}{macros/latex/contrib/chngcntr}[chngcntr]
+\CTANdirectory{circ}{macros/generic/diagrams/circ}
+\CTANdirectory{circuit_macros}{graphics/circuit_macros}
+\CTANdirectory{cirth}{fonts/cirth}
+\CTANdirectory{cite}{macros/latex/contrib/cite}[cite]
+\CTANdirectory{citeref}{macros/latex/contrib/citeref}[citeref]
+\CTANdirectory{clark}{fonts/utilities/afmtopl/clark}
+\CTANdirectory{classico}{fonts/urw/classico}[classico]
+\CTANdirectory{clrscode}{macros/latex/contrib/clrscode}[clrscode]
+\CTANdirectory{cm}{fonts/cm}
+\CTANdirectory{cm-lgc}{fonts/ps-type1/cm-lgc}[cm-lgc]
+\CTANdirectory{cm-super}{fonts/ps-type1/cm-super}[cm-super]
+\CTANdirectory{cm-unicode}{fonts/cm-unicode}[cm-unicode]
+\CTANdirectory{cmactex}{systems/mac/cmactex}[cmactex]
+\CTANdirectory{cmap}{macros/latex/contrib/cmap}
+\CTANdirectory{cmastro}{fonts/cmastro}
+\CTANdirectory{cmbright}{fonts/cmbright}[cmbright]
+\CTANdirectory{cmcyralt}{macros/latex/contrib/cmcyralt}
+%[fonts/cmcyralt]
+\CTANdirectory{cmfrak}{fonts/gothic/cmfrak}
+\CTANdirectory{cmoefont}{fonts/cmoefont}
+\CTANdirectory{cmolddig}{fonts/cmolddig}
+\CTANdirectory{cmoutlines}{fonts/cm/cmoutlines}[cmoutlines]
+\CTANdirectory{cmpica}{fonts/cmpica}
+\CTANdirectory{cms_help_files}{macros/text1/cms_help_files}
+\CTANdirectory{cmtest}{fonts/cm/cmtest}
+\CTANdirectory{cnoweb}{web/c_cpp/cnoweb}
+\CTANdirectory{collref}{macros/latex/contrib/collref}
+\CTANdirectory{combine}{macros/latex/contrib/combine}[combine]
+\CTANdirectory{commado}{macros/generic/commado}[commado]
+\CTANdirectory{comment}{macros/latex/contrib/comment}[comment]
+\CTANdirectory{committee}{fonts/unsupported/committee}
+\CTANdirectory{comp-fonts-FAQ}{help/comp-fonts-FAQ}
+\CTANdirectory{components-of-TeX}{info/components-of-TeX}
+\CTANdirectory{compugraphics_8600}{macros/text1/compugraphics_8600}
+\CTANdirectory{concmath}{macros/latex/contrib/concmath}[concmath]
+\CTANdirectory{concmath-f}{fonts/concmath}[concmath-fonts]
+\CTANdirectory{concrete}{fonts/concrete}[concrete]
+\CTANdirectory{context}{macros/context/current}[context]
+\CTANdirectory{context-contrib}{macros/context/contrib}
+\CTANdirectory{cprotect}{macros/latex/contrib/cprotect}[cprotect]
+\CTANdirectory{cptex}{macros/generic/cptex}
+\CTANdirectory{crop}{macros/latex/contrib/crop}[crop]
+\CTANdirectory*{crosstex}{biblio/crosstex}[crosstex]
+\CTANdirectory{crosswrd}{macros/latex/contrib/crosswrd}
+\CTANdirectory{crudetype}{dviware/crudetype}[crudetype]
+\CTANdirectory{crw}{macros/plain/contrib/crw}
+\CTANdirectory{cs-tex}{systems/atari/cs-tex}
+\CTANdirectory{csvsimple}{macros/latex/contrib/csvsimple}[csvsimple]
+\CTANdirectory{ctable}{macros/latex/contrib/ctable}[ctable]
+\CTANdirectory{ctan}{help/ctan}
+\CTANdirectory{cun}{fonts/cun}
+\CTANdirectory{currfile}{macros/latex/contrib/currfile}[currfile]
+\CTANdirectory{currvita}{macros/latex/contrib/currvita}[currvita]
+\CTANdirectory{curve}{macros/latex/contrib/curve}[curve]
+\CTANdirectory{curves}{macros/latex/contrib/curves}
+\CTANdirectory{custom-bib}{macros/latex/contrib/custom-bib}[custom-bib]
+\CTANdirectory{cutwin}{macros/latex/contrib/cutwin}[cutwin]
+\CTANdirectory{cweb}{web/c_cpp/cweb}
+\CTANdirectory{cweb-p}{web/c_cpp/cweb-p}
+\CTANdirectory{cypriote}{fonts/cypriote}
+\CTANdirectory{cyrillic}{language/cyrillic}
+\CTANdirectory{cyrtug}{language/cyrtug}
+\CTANdirectory{dante}{usergrps/dante}
+\CTANdirectory{dante-faq}{help/de-tex-faq}
+\CTANdirectory{databases}{biblio/bibtex/databases}
+\CTANdirectory{datatool}{macros/latex/contrib/datatool}[datatool]
+\CTANdirectory{datetime}{macros/latex/contrib/datetime}
+\CTANdirectory{db2tex}{support/db2tex}
+\CTANdirectory{dblfloatfix}{macros/latex/contrib/dblfloatfix}[dblfloatfix]
+\CTANdirectory{dbtex}{support/dbtex}
+\CTANdirectory{dc-latex}{language/hyphen-accent/dc-latex}
+\CTANdirectory{dc-nfss}{language/hyphen-accent/dc-nfss}
+\CTANdirectory{detex}{support/detex}[detex]
+\CTANdirectory{devanagari}{language/devanagari}
+\CTANdirectory{diagbox}{macros/latex/contrib/diagbox}[diagbox]
+\CTANdirectory{diagrams}{macros/generic/diagrams}
+\CTANdirectory{dijkstra}{web/spiderweb/src/dijkstra}
+\CTANdirectory{dinbrief}{macros/latex/contrib/dinbrief}
+\CTANdirectory{dingbat}{fonts/dingbat}
+\CTANdirectory{djgpp}{systems/msdos/djgpp}
+\CTANdirectory{dk-bib}{biblio/bibtex/contrib/dk-bib}
+\CTANdirectory{dktools}{support/dktools}[dktools]
+\CTANdirectory{dm-latex}{language/hyphen-accent/dm-latex}
+\CTANdirectory{dm-plain}{language/hyphen-accent/dm-plain}
+\CTANdirectory{doc2sty}{language/swedish/slatex/doc2sty}
+\CTANdirectory{docmfp}{macros/latex/contrib/docmfp}[docmfp]
+\CTANdirectory{docmute}{macros/latex/contrib/docmute}[docmute]
+\CTANdirectory{docu}{support/makeprog/docu}
+\CTANdirectory{document}{biblio/bibtex/contrib/germbib/document}
+\CTANdirectory{dos-dc}{systems/msdos/dos-dc}
+\CTANdirectory{dos-psfonts}{systems/msdos/emtex-fonts/psfonts}
+\CTANdirectory{doublestroke}{fonts/doublestroke}[doublestroke]
+\CTANdirectory{dowith}{macros/generic/dowith}[dowith]
+\CTANdirectory{dpfloat}{macros/latex/contrib/dpfloat}[dpfloat]
+\CTANdirectory{dpmigcc}{systems/msdos/dpmigcc}
+\CTANdirectory{draftcopy}{macros/latex/contrib/draftcopy}[draftcopy]
+\CTANdirectory{draftwatermark}{macros/latex/contrib/draftwatermark}[draftwatermark]
+\CTANdirectory{dratex}{graphics/dratex}[dratex]
+\CTANdirectory{drawing}{graphics/drawing}
+\CTANdirectory{dropcaps}{macros/latex209/contrib/dropcaps}
+\CTANdirectory{dropping}{macros/latex/contrib/dropping}[dropping]
+\CTANdirectory{dtl}{dviware/dtl}[dtl]
+\CTANdirectory{dtxgen}{support/dtxgen}[dtxgen]
+\CTANdirectory{dtxtut}{info/dtxtut}[dtxtut]
+\CTANdirectory{duerer}{fonts/duerer}
+\CTANdirectory{dvgt}{dviware/dvgt}
+\CTANdirectory{dvi-augsburg}{dviware/dvi-augsburg}
+\CTANdirectory{dvi2bitmap}{dviware/dvi2bitmap}[dvi2bitmap]
+\CTANdirectory{dvi2pcl}{dviware/dvi2pcl}
+\CTANdirectory{dvi2tty}{dviware/dvi2tty}[dvi2tty]
+\CTANdirectory{dviasm}{dviware/dviasm}[dviasm]
+\CTANdirectory{dvibit}{dviware/dvibit}
+\CTANdirectory{dvibook}{dviware/dvibook}
+\CTANdirectory{dvichk}{dviware/dvichk}
+\CTANdirectory{dvicopy}{dviware/dvicopy}
+\CTANdirectory{dvidjc}{dviware/dvidjc}
+\CTANdirectory{dvidvi}{dviware/dvidvi}
+\CTANdirectory{dviimp}{dviware/dviimp}
+\CTANdirectory{dviljk}{dviware/dviljk}
+\CTANdirectory{dvimerge}{dviware/dvimerge}
+\CTANdirectory{dvimfj}{systems/msdos/emtex-contrib/dvimfj}
+\CTANdirectory{dvipage}{dviware/dvipage}
+\CTANdirectory{dvipaste}{dviware/dvipaste}
+\CTANdirectory{dvipdfm}{dviware/dvipdfm}
+\CTANdirectory{dvipdfmx}{dviware/dvipdfmx}[dvipdfmx]
+\CTANdirectory{dvipj}{dviware/dvipj}
+\CTANdirectory{dvipng}{dviware/dvipng}[dvipng]
+\CTANdirectory{dvips-pc}{systems/msdos/dviware/dvips}
+\CTANdirectory{dvips}{dviware/dvips}[dvips]
+\CTANdirectory{dvistd}{dviware/driv-standard}
+\CTANdirectory{dvisun}{dviware/dvisun}
+\CTANdirectory{dvitty}{dviware/dvitty}
+\CTANdirectory{dvivga}{dviware/dvivga}
+\CTANdirectory{e4t}{systems/msdos/e4t}
+\CTANdirectory*{e-TeX}{systems/e-tex}
+\CTANdirectory{easytex}{systems/msdos/easytex}
+\CTANdirectory{ebib}{biblio/bibtex/utils/ebib}
+\CTANdirectory{ec}{fonts/ec}[ec]
+\CTANdirectory{ec-plain}{macros/ec-plain}[ec-plain]
+\CTANdirectory{eco}{fonts/eco}[eco]
+\CTANdirectory{economic}{biblio/bibtex/contrib/economic}
+\CTANdirectory{edmac}{macros/plain/contrib/edmac}[edmac]
+\CTANdirectory{ednotes}{macros/latex/contrib/ednotes}[ednotes]
+\CTANdirectory{eepic}{macros/latex/contrib/eepic}[eepic]
+\CTANdirectory{ega2mf}{fonts/utilities/ega2mf}
+\CTANdirectory{egplot}{macros/latex/contrib/egplot}[egplot]
+\CTANdirectory{eiad}{fonts/eiad}
+\CTANdirectory{elvish}{fonts/elvish}
+\CTANdirectory{elwell}{fonts/utilities/afmtopl/elwell}
+\CTANdirectory{emp}{macros/latex/contrib/emp}[emp]
+\CTANdirectory{emptypage}{macros/latex/contrib/emptypage}[emptypage]
+\CTANdirectory{emt2tex}{systems/msdos/emtex-contrib/emt2tex}
+\CTANdirectory{emtex}{systems/msdos/emtex}
+\CTANdirectory{emtex-contrib}{systems/msdos/emtex-contrib}
+\CTANdirectory{emtex-fonts}{systems/msdos/emtex-fonts}
+\CTANdirectory{emtextds}{obsolete/systems/os2/emtex-contrib/emtexTDS}
+\CTANdirectory{enctex}{systems/enctex}[enctex]
+\CTANdirectory{endfloat}{macros/latex/contrib/endfloat}[endfloat]
+\CTANdirectory{english}{language/english}
+\CTANdirectory{engwar}{fonts/engwar}
+\CTANdirectory{enumitem}{macros/latex/contrib/enumitem}[enumitem]
+\CTANdirectory{environment}{support/lsedit/environment}
+\CTANdirectory{epic}{macros/latex/contrib/epic}[epic]
+\CTANdirectory{epigraph}{macros/latex/contrib/epigraph}[epigraph]
+\CTANdirectory{eplain}{macros/eplain}[eplain]
+\CTANdirectory{epmtex}{systems/os2/epmtex}
+\CTANdirectory{epslatex}{info/epslatex}[epslatex]
+\CTANdirectory*{epstopdf}{support/epstopdf}[epstopdf]
+\CTANdirectory{eqparbox}{macros/latex/contrib/eqparbox}[eqparbox]
+\CTANdirectory{ergotex}{systems/msdos/ergotex}
+\CTANdirectory{errata}{systems/knuth/dist/errata}
+\CTANdirectory{eso-pic}{macros/latex/contrib/eso-pic}[eso-pic]
+\CTANdirectory{et}{support/et}
+\CTANdirectory{etex}{systems/e-tex}[etex]
+\CTANdirectory{etex-pkg}{macros/latex/contrib/etex-pkg}[etex-pkg]
+\CTANdirectory{etextools}{macros/latex/contrib/etextools}[etextools]
+\CTANdirectory{ethiopia}{language/ethiopia}
+\CTANdirectory{ethtex}{language/ethiopia/ethtex}
+\CTANdirectory{etoc}{macros/latex/contrib/etoc}[etoc]
+\CTANdirectory{etoolbox}{macros/latex/contrib/etoolbox}[etoolbox]
+\CTANdirectory{euler-latex}{macros/latex/contrib/euler}[euler]
+\CTANdirectory{eulervm}{fonts/eulervm}[eulervm]
+\CTANdirectory{euro-ce}{fonts/euro-ce}[euro-ce]
+\CTANdirectory{euro-fonts}{fonts/euro}
+\CTANdirectory{eurofont}{macros/latex/contrib/eurofont}[eurofont]
+\CTANdirectory{europecv}{macros/latex/contrib/europecv}[europecv]
+\CTANdirectory{eurosym}{fonts/eurosym}[eurosym]
+\CTANdirectory{everypage}{macros/latex/contrib/everypage}[everypage]
+\CTANdirectory{excalibur}{systems/mac/support/excalibur}
+\CTANdirectory{excel2latex}{support/excel2latex}
+\CTANdirectory{excerpt}{web/spiderweb/tools/excerpt}
+\CTANdirectory{excludeonly}{macros/latex/contrib/excludeonly}[excludeonly]
+\CTANdirectory{expdlist}{macros/latex/contrib/expdlist}
+\CTANdirectory{extract}{macros/latex/contrib/extract}[extract]
+\CTANdirectory{extsizes}{macros/latex/contrib/extsizes}[extsizes]
+% cat links to here
+\CTANdirectory{fancyhdr}{macros/latex/contrib/fancyhdr}[fancyhdr]
+\CTANdirectory{fancyvrb}{macros/latex/contrib/fancyvrb}[fancyvrb]
+\CTANdirectory{faq}{help/uk-tex-faq}[uk-tex-faq]
+\CTANdirectory{fc}{fonts/jknappen/fc}
+\CTANdirectory{fdsymbol}{fonts/fdsymbol}[fdsymbol]
+\CTANdirectory{feyn}{fonts/feyn}
+\CTANdirectory{feynman}{macros/latex209/contrib/feynman}
+\CTANdirectory{feynmf}{macros/latex/contrib/feynmf}[feynmf]
+\CTANdirectory{fig2eng}{graphics/fig2eng}
+\CTANdirectory{fig2mf}{graphics/fig2mf}
+\CTANdirectory{fig2mfpic}{graphics/fig2mfpic}
+\CTANdirectory{figflow}{macros/plain/contrib/figflow}[figflow]
+\CTANdirectory{filehook}{macros/latex/contrib/filehook}[filehook]
+\CTANdirectory{fink}{macros/latex/contrib/fink}[fink]
+\CTANdirectory{first-latex-doc}{info/first-latex-doc}
+\CTANdirectory{fix2col}{macros/latex/contrib/fix2col}[fix2col]
+\CTANdirectory{fixfoot}{macros/latex/contrib/fixfoot}[fixfoot]
+\CTANdirectory{float}{macros/latex/contrib/float}[float]
+\CTANdirectory{floatflt}{macros/latex/contrib/floatflt}[floatflt]
+\CTANdirectory{flow}{support/flow}
+\CTANdirectory{flowfram}{macros/latex/contrib/flowfram}[flowfram]
+\CTANdirectory{fltpage}{macros/latex/contrib/fltpage}[fltpage]
+\CTANdirectory{fnbreak}{macros/latex/contrib/fnbreak}[fnbreak]
+\CTANdirectory{fncychap}{macros/latex/contrib/fncychap}[fncychap]
+\CTANdirectory{fncylab}{macros/latex/contrib/fncylab}
+\CTANdirectory{foiltex}{macros/latex/contrib/foiltex}[foiltex]
+\CTANdirectory{font-change}{macros/plain/contrib/font-change}[font-change]
+\CTANdirectory{fontch}{macros/plain/contrib/fontch}[fontch]
+\CTANdirectory{fontinst}{fonts/utilities/fontinst}[fontinst]
+\CTANdirectory{fontname}{info/fontname}[fontname]
+\CTANdirectory{fontspec}{macros/latex/contrib/fontspec}[fontspec]
+\CTANdirectory{font_selection}{macros/plain/contrib/font_selection}[font-selection]
+\CTANdirectory{footbib}{macros/latex/contrib/footbib}[footbib]
+\CTANdirectory{footmisc}{macros/latex/contrib/footmisc}[footmisc]
+\CTANdirectory{footnpag}{macros/latex/contrib/footnpag}[footnpag]
+\CTANdirectory{forarray}{macros/latex/contrib/forarray}[forarray]
+\CTANdirectory{forloop}{macros/latex/contrib/forloop}[forloop]
+\CTANdirectory{for_tex}{biblio/bibtex/contrib/germbib/for_tex}
+\CTANdirectory{fourier}{fonts/fourier-GUT}[fourier]
+\CTANdirectory{fouriernc}{fonts/fouriernc}[fouriernc]
+\CTANdirectory{framed}{macros/latex/contrib/framed}[framed]
+\CTANdirectory{frankenstein}{macros/latex/contrib/frankenstein}[frankenstein]
+\CTANdirectory{french-faq}{help/LaTeX-FAQ-francaise}
+\CTANdirectory{funnelweb}{web/funnelweb}
+\CTANdirectory{futhark}{fonts/futhark}
+\CTANdirectory{futhorc}{fonts/futhorc}
+\CTANdirectory{fweb}{web/fweb}[fweb]
+\CTANdirectory{garamondx}{fonts/garamondx}[garamondx]
+\CTANdirectory{gellmu}{support/gellmu}[gellmu]
+\CTANdirectory{genfam}{support/genfam}
+\CTANdirectory{geometry}{macros/latex/contrib/geometry}[geometry]
+\CTANdirectory{germbib}{biblio/bibtex/contrib/germbib}
+\CTANdirectory{getoptk}{macros/plain/contrib/getoptk}[getoptk]
+\CTANdirectory{gfs}{info/examples/FirstSteps} % gratzer's
+\CTANdirectory{gitinfo}{macros/latex/contrib/gitinfo}[gitinfo]
+\CTANdirectory{glo+idxtex}{indexing/glo+idxtex}[idxtex]
+\CTANdirectory{gmp}{macros/latex/contrib/gmp}[gmp]
+\CTANdirectory{gnuplot}{graphics/gnuplot}
+\CTANdirectory{go}{fonts/go}
+\CTANdirectory{gothic}{fonts/gothic}
+\CTANdirectory{graphbase}{support/graphbase}
+\CTANdirectory{graphics}{macros/latex/required/graphics}[graphics]
+\CTANdirectory{graphics-plain}{macros/plain/graphics}[graphics-pln]
+\CTANdirectory{graphicx-psmin}{macros/latex/contrib/graphicx-psmin}[graphicx-psmin]
+\CTANdirectory{gray}{fonts/cm/utilityfonts/gray}
+\CTANdirectory{greek}{fonts/greek}
+\CTANdirectory{greektex}{fonts/greek/greektex}
+\CTANdirectory{gsftopk}{fonts/utilities/gsftopk}[gsftopk]
+\CTANdirectory{gut}{usergrps/gut}
+\CTANdirectory*{gv}{support/gv}[gv]
+\CTANdirectory{ha-prosper}{macros/latex/contrib/ha-prosper}[ha-prosper]
+\CTANdirectory{half}{fonts/cm/utilityfonts/half}
+\CTANdirectory{halftone}{fonts/halftone}
+\CTANdirectory{hands}{fonts/hands}
+\CTANdirectory{harvard}{macros/latex/contrib/harvard}
+\CTANdirectory{harvmac}{macros/plain/contrib/harvmac}
+\CTANdirectory{hebrew}{language/hebrew}
+\CTANdirectory{help}{help}
+\CTANdirectory{here}{macros/latex/contrib/here}[here]
+\CTANdirectory{hershey}{fonts/hershey}
+\CTANdirectory{hfbright}{fonts/ps-type1/hfbright}[hfbright]
+\CTANdirectory{hge}{fonts/hge}
+\CTANdirectory{hieroglyph}{fonts/hieroglyph}
+\CTANdirectory{highlight}{support/highlight}
+\CTANdirectory{histyle}{macros/plain/contrib/histyle}
+\CTANdirectory{hp2pl}{support/hp2pl}
+\CTANdirectory{hp2xx}{support/hp2xx}
+\CTANdirectory{hpgl2ps}{graphics/hpgl2ps}
+\CTANdirectory{hptex}{macros/hptex}
+\CTANdirectory{hptomf}{support/hptomf}
+\CTANdirectory{html2latex}{support/html2latex}[html2latex]
+\CTANdirectory{htmlhelp}{info/htmlhelp}
+\CTANdirectory{hvfloat}{macros/latex/contrib/hvfloat}[hvfloat]
+\CTANdirectory{hvmath}{fonts/micropress/hvmath}[hvmath-fonts]
+\CTANdirectory{hyacc-cm}{macros/generic/hyacc-cm}
+\CTANdirectory{hyper}{macros/latex/contrib/hyper}
+\CTANdirectory{hyperbibtex}{biblio/bibtex/utils/hyperbibtex}
+\CTANdirectory{hypernat}{macros/latex/contrib/hypernat}[hypernat]
+\CTANdirectory{hyperref}{macros/latex/contrib/hyperref}[hyperref]
+\CTANdirectory{hyphen-accent}{language/hyphen-accent}
+\CTANdirectory{hyphenat}{macros/latex/contrib/hyphenat}[hyphenat]
+\CTANdirectory{hyphenation}{language/hyphenation}
+\CTANdirectory{ibygrk}{fonts/greek/ibygrk}
+\CTANdirectory{iching}{fonts/iching}
+\CTANdirectory{icons}{support/icons}
+\CTANdirectory{ifmtarg}{macros/latex/contrib/ifmtarg}[ifmtarg]
+\CTANdirectory{ifmslide}{macros/latex/contrib/ifmslide}[ifmslide]
+\CTANdirectory{ifoddpage}{macros/latex/contrib/ifoddpage}[ifoddpage]
+\CTANdirectory{ifxetex}{macros/generic/ifxetex}[ifxetex]
+\CTANdirectory{imakeidx}{macros/latex/contrib/imakeidx}[imakeidx]
+\CTANdirectory{imaketex}{support/imaketex}
+\CTANdirectory{impact}{web/systems/mac/impact}
+\CTANdirectory{import}{macros/latex/contrib/import}[import]
+\CTANdirectory{index}{macros/latex/contrib/index}[index]
+\CTANdirectory{indian}{language/indian}
+\CTANdirectory{infpic}{macros/generic/infpic}
+\CTANdirectory{inlinebib}{biblio/bibtex/contrib/inlinebib}
+\CTANdirectory{inrsdoc}{macros/inrstex/inrsdoc}
+\CTANdirectory{inrsinputs}{macros/inrstex/inrsinputs}
+\CTANdirectory{inrstex}{macros/inrstex}
+\CTANdirectory{isi2bibtex}{biblio/bibtex/utils/isi2bibtex}[isi2bibtex]
+\CTANdirectory{iso-tex}{support/iso-tex}
+\CTANdirectory{isodoc}{macros/latex/contrib/isodoc}[isodoc]
+\CTANdirectory{ispell}{support/ispell}[ispell]
+\CTANdirectory{ite}{support/ite}[ite]
+\CTANdirectory{ivd2dvi}{dviware/ivd2dvi}
+\CTANdirectory{jadetex}{macros/jadetex}
+\CTANdirectory{jemtex2}{systems/msdos/jemtex2}
+\CTANdirectory{jknappen-macros}{macros/latex/contrib/jknappen}
+\CTANdirectory{jpeg2ps}{support/jpeg2ps}[jpeg2ps]
+\CTANdirectory{jspell}{support/jspell}[jspell]
+\CTANdirectory{jurabib}{macros/latex/contrib/jurabib}[jurabib]
+\CTANdirectory{kamal}{support/kamal}
+\CTANdirectory{kane}{dviware/kane}
+\CTANdirectory{karta}{fonts/karta}
+\CTANdirectory{kd}{fonts/greek/kd}
+\CTANdirectory{kelem}{web/spiderweb/src/kelem}
+\CTANdirectory{kelly}{fonts/greek/kelly}
+\CTANdirectory{klinz}{fonts/klinz}
+\CTANdirectory{knit}{web/knit}
+\CTANdirectory{knot}{fonts/knot}
+\CTANdirectory{knuth}{systems/knuth}
+\CTANdirectory{knuth-dist}{systems/knuth/dist}[knuth-dist]
+\CTANdirectory{koma-script}{macros/latex/contrib/koma-script}[koma-script]
+\CTANdirectory{korean}{fonts/korean}
+\CTANdirectory{kpfonts}{fonts/kpfonts}[kpfonts]
+\CTANdirectory{kyocera}{dviware/kyocera}
+\CTANdirectory{l2a}{support/l2a}[l2a]
+\CTANdirectory{l2sl}{language/swedish/slatex/l2sl}
+\CTANdirectory*{l2tabu}{info/l2tabu}
+\CTANdirectory{l2x}{support/l2x}
+\CTANdirectory{la}{fonts/la}
+\CTANdirectory{laan}{macros/generic/laan}
+\CTANdirectory{laansort}{macros/generic/laansort}
+\CTANdirectory{labelcas}{macros/latex/contrib/labelcas}[labelcas]
+\CTANdirectory{labels}{macros/latex/contrib/labels}
+\CTANdirectory{labtex}{macros/generic/labtex}
+\CTANdirectory{lacheck}{support/lacheck}[lacheck]
+\CTANdirectory{lametex}{support/lametex}
+\CTANdirectory{lamstex}{macros/lamstex}
+\CTANdirectory{lastpage}{macros/latex/contrib/lastpage}[lastpage]
+\CTANdirectory{latex}{macros/latex/base}
+\CTANdirectory{latex-course}{info/latex-course}[latex-course]
+\CTANdirectory{latex-essential}{info/latex-essential}
+\CTANdirectory{latex2e-help-texinfo}{info/latex2e-help-texinfo}[latex2e-help-texinfo]
+\CTANdirectory{latex4jed}{support/jed}[latex4jed]
+\CTANdirectory*{latex-tds}{macros/latex/contrib/latex-tds}[latex-tds]
+\CTANdirectory*{latex2html}{support/latex2html}[latex2html]
+\CTANdirectory{latex2rtf}{support/latex2rtf}
+\CTANdirectory{latexdiff}{support/latexdiff}[latexdiff]
+\CTANdirectory{latexdoc}{macros/latex/doc}[latex-doc]
+\CTANdirectory{latexhlp}{systems/atari/latexhlp}
+\CTANdirectory{latexmake}{support/latexmake}[latexmake]
+\CTANdirectory{latex-make}{support/latex-make}[latex-make]
+\CTANdirectory{latex_maker}{support/latex_maker}[mk]
+\CTANdirectory{latexmk}{support/latexmk}[latexmk]
+\CTANdirectory{lecturer}{macros/generic/lecturer}[lecturer]
+\CTANdirectory{ledmac}{macros/latex/contrib/ledmac}[ledmac]
+\CTANdirectory{lettrine}{macros/latex/contrib/lettrine}[lettrine]
+\CTANdirectory{levy}{fonts/greek/levy}
+\CTANdirectory{lextex}{macros/plain/contrib/lextex}
+\CTANdirectory{lgc}{info/examples/lgc}
+\CTANdirectory{lgrind}{support/lgrind}[lgrind]
+\CTANdirectory{libertine}{fonts/libertine}[libertine]
+\CTANdirectory{libgreek}{macros/latex/contrib/libgreek}[libgreek]
+\CTANdirectory{lilyglyphs}{macros/luatex/latex/lilyglyphs}
+\CTANdirectory{lineno}{macros/latex/contrib/lineno}[lineno]
+\CTANdirectory{lipsum}{macros/latex/contrib/lipsum}[lipsum]
+\CTANdirectory{listbib}{macros/latex/contrib/listbib}[listbib]
+\CTANdirectory{listings}{macros/latex/contrib/listings}[listings]
+\CTANdirectory{lm}{fonts/lm}[lm]
+\CTANdirectory{lm-math}{fonts/lm-math}[lm-math]
+\CTANdirectory{lollipop}{macros/lollipop}[lollipop]
+\CTANdirectory{lookbibtex}{biblio/bibtex/utils/lookbibtex}
+\CTANdirectory{lpic}{macros/latex/contrib/lpic}[lpic]
+\CTANdirectory{lsedit}{support/lsedit}
+\CTANdirectory{lshort}{info/lshort/english}[lshort-english]
+\CTANdirectory*{lshort-parent}{info/lshort}[lshort]
+\CTANdirectory{ltx3pub}{info/ltx3pub}[ltx3pub]
+\CTANdirectory{ltxindex}{macros/latex/contrib/ltxindex}[ltxindex]
+\CTANdirectory{luatex}{systems/luatex}[luatex]
+\CTANdirectory{lucida}{fonts/psfonts/bh/lucida}[lucida]
+\CTANdirectory{lucida-psnfss}{macros/latex/contrib/psnfssx/lucidabr}[psnfssx-luc]
+\CTANdirectory{luximono}{fonts/LuxiMono}[luximono]
+\CTANdirectory{lwc}{info/examples/lwc}
+\CTANdirectory{ly1}{fonts/psfonts/ly1}[ly1]
+\CTANdirectory*{mactex}{systems/mac/mactex}[mactex]
+\CTANdirectory{macros2e}{info/macros2e}[macros2e]
+\CTANdirectory{mactotex}{graphics/mactotex}
+\CTANdirectory{mailing}{macros/latex/contrib/mailing}
+\CTANdirectory{make_latex}{support/make_latex}[make-latex]
+\CTANdirectory{makeafm.dir}{fonts/utilities/t1tools/makeafm.dir}
+\CTANdirectory{makecell}{macros/latex/contrib/makecell}[makecell]
+\CTANdirectory{makedtx}{support/makedtx}[makedtx]
+\CTANdirectory{makeindex}{indexing/makeindex}[makeindex]
+\CTANdirectory{makeinfo}{macros/texinfo/contrib/texinfo-hu/texinfo/makeinfo}
+\CTANdirectory{makeprog}{support/makeprog}\CTANdirectory{maketexwork}{info/maketexwork}
+\CTANdirectory{malayalam}{language/malayalam}
+\CTANdirectory{malvern}{fonts/malvern}
+\CTANdirectory{mapleweb}{web/maple/mapleweb}
+\CTANdirectory{marvosym-fonts}{fonts/marvosym}
+\CTANdirectory{mathabx}{fonts/mathabx}[mathabx]
+\CTANdirectory{mathabx-type1}{fonts/ps-type1/mathabx}[mathabx-type1]
+\CTANdirectory{mathastext}{macros/latex/contrib/mathastext}[mathastext]
+\CTANdirectory*{mathdesign}{fonts/mathdesign}[mathdesign]
+\CTANdirectory{mathdots}{macros/generic/mathdots}
+\CTANdirectory{mathematica}{macros/mathematica}
+\CTANdirectory{mathpazo}{fonts/mathpazo}[mathpazo]
+\CTANdirectory{mathsci2bibtex}{biblio/bibtex/utils/mathsci2bibtex}
+\CTANdirectory{mathspic}{graphics/mathspic}[mathspic]
+\CTANdirectory{mcite}{macros/latex/contrib/mcite}[mcite]
+\CTANdirectory{mciteplus}{macros/latex/contrib/mciteplus}[mciteplus]
+\CTANdirectory{mdframed}{macros/latex/contrib/mdframed}[mdframed]
+\CTANdirectory{mdsymbol}{fonts/mdsymbol}[mdsymbol]
+\CTANdirectory{mdwtools}{macros/latex/contrib/mdwtools}[mdwtools]
+\CTANdirectory{memdesign}{info/memdesign}[memdesign]
+\CTANdirectory{memoir}{macros/latex/contrib/memoir}[memoir]
+\CTANdirectory{messtex}{support/messtex}
+\CTANdirectory{metalogo}{macros/latex/contrib/metalogo}[metalogo]
+\CTANdirectory{metapost}{graphics/metapost}
+\CTANdirectory{metatype1}{fonts/utilities/metatype1}[metatype1]
+\CTANdirectory{mf2ps}{fonts/utilities/mf2ps}
+\CTANdirectory{mf2pt1}{support/mf2pt1}[mf2pt1]
+\CTANdirectory{mf_optimized_kerning}{fonts/cm/mf_optimized_kerning}
+\CTANdirectory{mfbook}{fonts/cm/utilityfonts/mfbook}
+\CTANdirectory{mff-29}{fonts/utilities/mff-29}
+\CTANdirectory{mffiles}{language/telugu/mffiles}
+\CTANdirectory{mflogo}{macros/latex/contrib/mflogo}[mflogo]
+\CTANdirectory{mfnfss}{macros/latex/contrib/mfnfss}
+\CTANdirectory{mfpic}{graphics/mfpic}
+\CTANdirectory{mfware}{systems/knuth/dist/mfware}
+\CTANdirectory{mh}{macros/latex/contrib/mh}[mh]
+\CTANdirectory{miktex}{systems/win32/miktex}[miktex]
+\CTANdirectory{microtype}{macros/latex/contrib/microtype}[microtype]
+\CTANdirectory{midi2tex}{support/midi2tex}
+\CTANdirectory{midnight}{macros/generic/midnight}
+\CTANdirectory{minionpro}{fonts/minionpro}[minionpro]
+\CTANdirectory{minitoc}{macros/latex/contrib/minitoc}[minitoc]
+\CTANdirectory{minted}{macros/latex/contrib/minted}[minted]
+\CTANdirectory{mkjobtexmf}{support/mkjobtexmf}[mkjobtexmf]
+\CTANdirectory{mma2ltx}{graphics/mma2ltx}
+\CTANdirectory{mmap}{macros/latex/contrib/mmap}
+\CTANdirectory{mnsymbol}{fonts/mnsymbol}[mnsymbol]
+\CTANdirectory{mnu}{support/mnu}
+\CTANdirectory{models}{macros/text1/models}
+\CTANdirectory{moderncv}{macros/latex/contrib/moderncv}[moderncv]
+\CTANdirectory{modes}{fonts/modes}
+\CTANdirectory{morefloats}{macros/latex/contrib/morefloats}[morefloats]
+\CTANdirectory{moreverb}{macros/latex/contrib/moreverb}[moreverb]
+\CTANdirectory{morewrites}{macros/latex/contrib/morewrites}[morewrites]
+\CTANdirectory{mparhack}{macros/latex/contrib/mparhack}[mparhack]
+\CTANdirectory{mpgraphics}{macros/latex/contrib/mpgraphics}[mpgraphics]
+\CTANdirectory{mps2eps}{support/mps2eps}
+\CTANdirectory{ms}{macros/latex/contrib/ms}[ms]
+\CTANdirectory{msdos}{systems/msdos}
+\CTANdirectory{msx2msa}{fonts/vf-files/msx2msa}
+\CTANdirectory{msym}{fonts/msym}
+\CTANdirectory{mtp2lite}{fonts/mtp2lite}[mtp2lite]
+\CTANdirectory{m-tx}{support/m-tx}[m-tx]
+\CTANdirectory{multenum}{macros/latex/contrib/multenum}[multenum]
+\CTANdirectory{multibbl}{macros/latex/contrib/multibbl}[multibbl]
+\CTANdirectory{multibib}{macros/latex/contrib/multibib}[multibib]
+\CTANdirectory{multido}{macros/generic/multido}[multido]
+\CTANdirectory{multirow}{macros/latex/contrib/multirow}[multirow]
+\CTANdirectory{musictex}{macros/musictex}[musictex]
+\CTANdirectory{musixtex-egler}{obsolete/macros/musixtex/egler}
+\CTANdirectory{musixtex-fonts}{fonts/musixtex-fonts}[musixtex-fonts]
+\CTANdirectory{musixtex}{macros/musixtex}[musixtex]
+\CTANdirectory{mutex}{macros/mtex}
+\CTANdirectory{mwe}{macros/latex/contrib/mwe}[mwe]
+\CTANdirectory{mxedruli}{fonts/georgian/mxedruli}
+\CTANdirectory{nag}{macros/latex/contrib/nag}[nag]
+\CTANdirectory{natbib}{macros/latex/contrib/natbib}[natbib]
+\CTANdirectory{navigator}{macros/generic/navigator}[navigator]
+\CTANdirectory{nawk}{web/spiderweb/src/nawk}
+\CTANdirectory{ncctools}{macros/latex/contrib/ncctools}[ncctools]
+\CTANdirectory{needspace}{macros/latex/contrib/needspace}[needspace]
+\CTANdirectory{newalg}{macros/latex/contrib/newalg}[newalg]
+\CTANdirectory{newcommand}{support/newcommand}[newcommand]
+\CTANdirectory{newlfm}{macros/latex/contrib/newlfm}[newlfm]
+\CTANdirectory{newsletr}{macros/plain/contrib/newsletr}
+\CTANdirectory{newpx}{fonts/newpx}[newpx]
+\CTANdirectory{newtx}{fonts/newtx}[newtx]
+\CTANdirectory{newverbs}{macros/latex/contrib/newverbs}[newverbs]
+\CTANdirectory{nedit-latex}{support/NEdit-LaTeX-Extensions}
+\CTANdirectory{nonumonpart}{macros/latex/contrib/nonumonpart}[nonumonpart]
+\CTANdirectory{nopageno}{macros/latex/contrib/nopageno}[nopageno]
+\CTANdirectory{norbib}{biblio/bibtex/contrib/norbib}
+\CTANdirectory{notoccite}{macros/latex/contrib/notoccite}[notoccite]
+\CTANdirectory{noweb}{web/noweb}[noweb]
+\CTANdirectory{ntg}{usergrps/ntg}
+\CTANdirectory{ntgclass}{macros/latex/contrib/ntgclass}[ntgclass]
+\CTANdirectory{ntheorem}{macros/latex/contrib/ntheorem}[ntheorem]
+\CTANdirectory{nts-l}{digests/nts-l}
+\CTANdirectory{nts}{systems/nts}
+\CTANdirectory{numprint}{macros/latex/contrib/numprint}[numprint]
+\CTANdirectory{nuweb}{web/nuweb}
+\CTANdirectory{nuweb0.87b}{web/nuweb/nuweb0.87b}
+\CTANdirectory{nuweb_ami}{web/nuweb/nuweb_ami}
+\CTANdirectory{oberdiek}{macros/latex/contrib/oberdiek}[oberdiek]
+\CTANdirectory{objectz}{macros/latex/contrib/objectz}
+\CTANdirectory{ocr-a}{fonts/ocr-a}
+\CTANdirectory{ocr-b}{fonts/ocr-b}
+\CTANdirectory{ofs}{macros/generic/ofs}[ofs]
+\CTANdirectory{ogham}{fonts/ogham}
+\CTANdirectory{ogonek}{macros/latex/contrib/ogonek}
+\CTANdirectory{okuda}{fonts/okuda}
+\CTANdirectory{omega}{systems/omega}
+\CTANdirectory{optional}{macros/latex/contrib/optional}[optional]
+\CTANdirectory{os2}{systems/os2}
+\CTANdirectory{osmanian}{fonts/osmanian}
+\CTANdirectory{overpic}{macros/latex/contrib/overpic}[overpic]
+\CTANdirectory{oztex}{systems/mac/oztex}
+\CTANdirectory{page}{support/lametex/page}
+\CTANdirectory{palladam}{language/tamil/palladam}
+\CTANdirectory{pandora}{fonts/pandora}
+\CTANdirectory{paralist}{macros/latex/contrib/paralist}[paralist]
+\CTANdirectory{parallel}{macros/latex/contrib/parallel}[parallel]
+\CTANdirectory{parskip}{macros/latex/contrib/parskip}[parskip]
+\CTANdirectory{passivetex}{macros/xmltex/contrib/passivetex}[passivetex]
+\CTANdirectory{patchcmd}{macros/latex/contrib/patchcmd}[patchcmd]
+\CTANdirectory{path}{macros/generic/path}[path]
+\CTANdirectory{pbox}{macros/latex/contrib/pbox}[pbox]
+\CTANdirectory{pcwritex}{support/pcwritex}
+\CTANdirectory{pdcmac}{macros/plain/contrib/pdcmac}[pdcmac]
+\CTANdirectory{pdfcomment}{macros/latex/contrib/pdfcomment}[pdfcomment]
+\CTANdirectory{pdfpages}{macros/latex/contrib/pdfpages}[pdfpages]
+\CTANdirectory{pdfrack}{support/pdfrack}[pdfrack]
+\CTANdirectory{pdfscreen}{macros/latex/contrib/pdfscreen}[pdfscreen]
+\CTANdirectory{pdftex}{systems/pdftex}[pdftex]
+\CTANdirectory{pdftex-graphics}{graphics/metapost/contrib/tools/mptopdf}[pdf-mps-supp]
+\CTANdirectory{pdftricks}{graphics/pdftricks}[pdftricks]
+\CTANdirectory{pdftricks2}{graphics/pdftricks2}[pdftricks2]
+\CTANdirectory{pgf}{graphics/pgf/base}[pgf]
+\CTANdirectory{phonetic}{fonts/phonetic}
+\CTANdirectory{phy-bstyles}{biblio/bibtex/contrib/phy-bstyles}
+\CTANdirectory{physe}{macros/physe}
+\CTANdirectory{phyzzx}{macros/phyzzx}
+\CTANdirectory{picinpar}{macros/latex209/contrib/picinpar}[picinpar]
+\CTANdirectory{picins}{macros/latex209/contrib/picins}[picins]
+\CTANdirectory{pict2e}{macros/latex/contrib/pict2e}[pict2e]
+\CTANdirectory{pictex}{graphics/pictex}[pictex]
+\CTANdirectory{pictex-addon}{graphics/pictex/addon}[pictexwd]
+\CTANdirectory{pictex-converter}{support/pictex-converter}
+\CTANdirectory{pictex-summary}{info/pictex/summary}[pictexsum]
+\CTANdirectory{pinlabel}{macros/latex/contrib/pinlabel}[pinlabel]
+\CTANdirectory{pkbbox}{fonts/utilities/pkbbox}
+\CTANdirectory{pkfix}{support/pkfix}[pkfix]
+\CTANdirectory{pkfix-helper}{support/pkfix-helper}[pkfix-helper]
+\CTANdirectory{placeins}{macros/latex/contrib/placeins}[placeins]
+\CTANdirectory{plain}{macros/plain/base}[plain]
+\CTANdirectory*{plastex}{support/plastex}[plastex]
+\CTANdirectory{plnfss}{macros/plain/plnfss}[plnfss]
+\CTANdirectory{plttopic}{support/plttopic}
+\CTANdirectory{pmtex}{systems/os2/pmtex}
+\CTANdirectory{pmx}{support/pmx}
+\CTANdirectory{l3experimental}{macros/latex/contrib/l3experimental}[l3experimental]
+\CTANdirectory{l3kernel}{macros/latex/contrib/l3kernel}[l3kernel]
+\CTANdirectory{l3packages}{macros/latex/contrib/l3packages}[l3packages]
+\CTANdirectory{polish}{language/polish}
+\CTANdirectory{polyglossia}{macros/latex/contrib/polyglossia}[polyglossia]
+\CTANdirectory{poorman}{fonts/poorman}
+\CTANdirectory{portuguese}{language/portuguese}
+\CTANdirectory{poster}{macros/generic/poster}
+\CTANdirectory{powerdot}{macros/latex/contrib/powerdot}[powerdot]
+\CTANdirectory{pp}{support/pp}
+\CTANdirectory{preprint}{macros/latex/contrib/preprint}[preprint]
+\CTANdirectory{present}{macros/plain/contrib/present}[present]
+\CTANdirectory{preview}{macros/latex/contrib/preview}[preview]
+\CTANdirectory{print-fine}{support/print-fine}
+\CTANdirectory{printbib}{biblio/bibtex/utils/printbib}
+\CTANdirectory{printlen}{macros/latex/contrib/printlen}[printlen]
+\CTANdirectory{printsamples}{fonts/utilities/mf2ps/doc/printsamples}
+\CTANdirectory{program}{macros/latex/contrib/program}[program]
+\CTANdirectory{proofs}{macros/generic/proofs}
+\CTANdirectory*{protext}{systems/win32/protext}[protext]
+\CTANdirectory{ppower4}{support/ppower4}[ppower4]
+\CTANdirectory{ppr-prv}{macros/latex/contrib/ppr-prv}[ppr-prv]
+\CTANdirectory{prosper}{macros/latex/contrib/prosper}[prosper]
+\CTANdirectory{ps-type3}{fonts/cm/ps-type3}
+\CTANdirectory{ps2mf}{fonts/utilities/ps2mf}
+\CTANdirectory{ps2pk}{fonts/utilities/ps2pk}[ps2pk]
+\CTANdirectory{psbook}{systems/msdos/dviware/psbook}
+\CTANdirectory{psbox}{macros/generic/psbox}
+\CTANdirectory{pseudocode}{macros/latex/contrib/pseudocode}[pseudocode]
+\CTANdirectory{psfig}{graphics/psfig}[psfig]
+\CTANdirectory{psfrag}{macros/latex/contrib/psfrag}[psfrag]
+\CTANdirectory{psfragx}{macros/latex/contrib/psfragx}[psfragx]
+\CTANdirectory{psizzl}{macros/psizzl}
+\CTANdirectory{psnfss}{macros/latex/required/psnfss}[psnfss]
+\CTANdirectory{psnfss-addons}{macros/latex/contrib/psnfss-addons}
+\CTANdirectory{psnfssx-mathtime}{macros/latex/contrib/psnfssx/mathtime}
+\CTANdirectory{pspicture}{macros/latex/contrib/pspicture}[pspicture]
+\CTANdirectory{psprint}{dviware/psprint}
+\CTANdirectory{pst-layout}{graphics/pstricks/contrib/pst-layout}[pst-layout]
+\CTANdirectory{pst-pdf}{macros/latex/contrib/pst-pdf}[pst-pdf]
+\CTANdirectory{pstoedit}{support/pstoedit}[pstoedit]
+\CTANdirectory{pstricks}{graphics/pstricks}[pstricks]
+\CTANdirectory{psutils}{support/psutils}
+\CTANdirectory{punk}{fonts/punk}
+\CTANdirectory{purifyeps}{support/purifyeps}[purifyeps]
+\CTANdirectory{pxfonts}{fonts/pxfonts}[pxfonts]
+\CTANdirectory{qdtexvpl}{fonts/utilities/qdtexvpl}[qdtexvpl]
+\CTANdirectory{qfig}{support/qfig}
+\CTANdirectory{quotchap}{macros/latex/contrib/quotchap}[quotchap]
+\CTANdirectory{r2bib}{biblio/bibtex/utils/r2bib}[r2bib]
+\CTANdirectory{rcs}{macros/latex/contrib/rcs}[rcs]
+\CTANdirectory{rcsinfo}{macros/latex/contrib/rcsinfo}[rcsinfo]
+\CTANdirectory{realcalc}{macros/generic/realcalc}
+\CTANdirectory{refcheck}{macros/latex/contrib/refcheck}[refcheck]
+\CTANdirectory{refer-tools}{biblio/bibtex/utils/refer-tools}
+\CTANdirectory{refman}{macros/latex/contrib/refman}[refman]
+\CTANdirectory{regexpatch}{macros/latex/contrib/regexpatch}[regexpatch]
+\CTANdirectory{revtex4-1}{macros/latex/contrib/revtex}[revtex4-1]
+\CTANdirectory{rnototex}{support/rnototex}[rnototex]
+\CTANdirectory{rotating}{macros/latex/contrib/rotating}[rotating]
+\CTANdirectory{rotfloat}{macros/latex/contrib/rotfloat}[rotfloat]
+\CTANdirectory{rsfs}{fonts/rsfs}[rsfs]
+\CTANdirectory{rsfso}{fonts/rsfso}[rsfso]
+\CTANdirectory{rtf2tex}{support/rtf2tex}[rtf2tex]
+\CTANdirectory{rtf2html}{support/rtf2html}
+\CTANdirectory{rtf2latex}{support/rtf2latex}
+\CTANdirectory{rtf2latex2e}{support/rtf2latex2e}[rtf2latex2e]
+\CTANdirectory{rtflatex}{support/rtflatex}
+\CTANdirectory{rtfutils}{support/tex2rtf/rtfutils}
+\CTANdirectory{rumgraph}{support/rumgraph}
+\CTANdirectory{sam2p}{graphics/sam2p}[sam2p]
+\CTANdirectory{sansmath}{macros/latex/contrib/sansmath}[sansmath]
+\CTANdirectory{sauerj}{macros/latex/contrib/sauerj}[sauerj]
+\CTANdirectory{savetrees}{macros/latex/contrib/savetrees}[savetrees]
+\CTANdirectory{schemeweb}{web/schemeweb}[schemeweb]
+\CTANdirectory{sciposter}{macros/latex/contrib/sciposter}[sciposter]
+\CTANdirectory{sectsty}{macros/latex/contrib/sectsty}[sectsty]
+\CTANdirectory{selectp}{macros/latex/contrib/selectp}[selectp]
+\CTANdirectory{seminar}{macros/latex/contrib/seminar}[seminar]
+\CTANdirectory{shade}{macros/generic/shade}[shade]
+\CTANdirectory{shorttoc}{macros/latex/contrib/shorttoc}[shorttoc]
+\CTANdirectory{showexpl}{macros/latex/contrib/showexpl}[showexpl]
+\CTANdirectory{showlabels}{macros/latex/contrib/showlabels}[showlabels]
+\CTANdirectory{slashbox}{macros/latex/contrib/slashbox}[slashbox]
+\CTANdirectory{smallcap}{macros/latex/contrib/smallcap}[smallcap]
+\CTANdirectory{smartref}{macros/latex/contrib/smartref}[smartref]
+\CTANdirectory{snapshot}{macros/latex/contrib/snapshot}[snapshot]
+\CTANdirectory{soul}{macros/latex/contrib/soul}[soul]
+\CTANdirectory{spain}{biblio/bibtex/contrib/spain}
+\CTANdirectory{spelling}{macros/luatex/generic/spelling}[spelling]
+\CTANdirectory{spiderweb}{web/spiderweb}[spiderweb]
+\CTANdirectory{splitbib}{macros/latex/contrib/splitbib}[splitbib]
+\CTANdirectory{splitindex}{macros/latex/contrib/splitindex}[splitindex]
+\CTANdirectory{standalone}{macros/latex/contrib/standalone}[standalone]
+\CTANdirectory{stix}{fonts/stix}[stix]
+\CTANdirectory{sttools}{macros/latex/contrib/sttools}[sttools]
+\CTANdirectory{sty2dtx}{support/sty2dtx}[sty2dtx]
+\CTANdirectory{subdepth}{macros/latex/contrib/subdepth}[subdepth]
+\CTANdirectory{subfig}{macros/latex/contrib/subfig}[subfig]
+\CTANdirectory{subfiles}{macros/latex/contrib/subfiles}[subfiles]
+\CTANdirectory{supertabular}{macros/latex/contrib/supertabular}[supertabular]
+\CTANdirectory{svn}{macros/latex/contrib/svn}[svn]
+\CTANdirectory{svninfo}{macros/latex/contrib/svninfo}[svninfo]
+\CTANdirectory{swebib}{biblio/bibtex/contrib/swebib}
+\CTANdirectory*{symbols}{info/symbols/comprehensive}[comprehensive]
+\CTANdirectory{tablefootnote}{macros/latex/contrib/tablefootnote}[tablefootnote]
+\CTANdirectory{tabls}{macros/latex/contrib/tabls}[tabls]
+\CTANdirectory{tabulary}{macros/latex/contrib/tabulary}[tabulary]
+\CTANdirectory{tagging}{macros/latex/contrib/tagging}
+\CTANdirectory{talk}{macros/latex/contrib/talk}[talk]
+\CTANdirectory{tcolorbox}{macros/latex/contrib/tcolorbox}[tcolorbox]
+\CTANdirectory{tds}{tds}[tds]
+\CTANdirectory{ted}{macros/latex/contrib/ted}[ted]
+\CTANdirectory*{testflow}{macros/latex/contrib/IEEEtran/testflow}[testflow]
+\CTANdirectory*{tetex}{obsolete/systems/unix/teTeX/current/distrib}[tetex]
+\CTANdirectory{tex2mail}{support/tex2mail}[tex2mail]
+\CTANdirectory{tex2rtf}{support/tex2rtf}[tex2rtf]
+\CTANdirectory{texbytopic}{info/texbytopic}[texbytopic]
+\CTANdirectory{texcnvfaq}{help/wp-conv}[wp-conv]
+\CTANdirectory{texcount}{support/texcount}[texcount]
+\CTANdirectory{texdef}{support/texdef}[texdef]
+\CTANdirectory{tex-gpc}{systems/unix/tex-gpc}[tex-gpc]
+\CTANdirectory{tex-gyre}{fonts/tex-gyre}[tex-gyre]
+\CTANdirectory{tex-gyre-math}{fonts/tex-gyre-math}[tex-gyre-math]
+\CTANdirectory{tex-overview}{info/tex-overview}[tex-overview]
+\CTANdirectory*{texhax}{digests/texhax}[texhax]
+\CTANdirectory{texi2html}{support/texi2html}[texi2html]
+\CTANdirectory{texindex}{indexing/texindex}[texindex]
+\CTANdirectory{texinfo}{macros/texinfo/texinfo}[texinfo]
+\CTANdirectory*{texlive}{systems/texlive}[texlive]
+\CTANdirectory*{texmacs}{support/TeXmacs}[texmacs]
+\CTANdirectory*{texniccenter}{systems/win32/TeXnicCenter}[texniccenter]
+\CTANdirectory{texpower}{macros/latex/contrib/texpower}[texpower]
+\CTANdirectory{texshell}{systems/msdos/texshell}[texshell]
+\CTANdirectory{texsis}{macros/texsis}[texsis]
+\CTANdirectory{textcase}{macros/latex/contrib/textcase}[textcase]
+\CTANdirectory{textfit}{macros/latex/contrib/textfit}[textfit]
+\CTANdirectory{textmerg}{macros/latex/contrib/textmerg}[textmerg]
+\CTANdirectory{textpos}{macros/latex/contrib/textpos}[textpos]
+\CTANdirectory{textures_figs}{systems/mac/textures_figs}
+\CTANdirectory{texutils}{systems/atari/texutils}
+\CTANdirectory{tgrind}{support/tgrind}[tgrind]
+\CTANdirectory{threeparttable}{macros/latex/contrib/threeparttable}[threeparttable]
+\CTANdirectory{threeparttablex}{macros/latex/contrib/threeparttablex}[threeparttablex]
+\CTANdirectory{tib}{biblio/tib}[tib]
+\CTANdirectory{tiny_c2l}{support/tiny_c2l}[tinyc2l]
+\CTANdirectory{tip}{info/examples/tip}
+\CTANdirectory{titleref}{macros/latex/contrib/titleref}[titleref]
+\CTANdirectory{titlesec}{macros/latex/contrib/titlesec}[titlesec]
+\CTANdirectory{titling}{macros/latex/contrib/titling}[titling]
+\CTANdirectory{tlc2}{info/examples/tlc2}
+\CTANdirectory{tmmath}{fonts/micropress/tmmath}[tmmath]
+\CTANdirectory{tocbibind}{macros/latex/contrib/tocbibind}[tocbibind]
+\CTANdirectory{tocloft}{macros/latex/contrib/tocloft}[tocloft]
+\CTANdirectory{tocvsec2}{macros/latex/contrib/tocvsec2}[tocvsec2]
+\CTANdirectory{totpages}{macros/latex/contrib/totpages}[totpages]
+\CTANdirectory{tr2latex}{support/tr2latex}[tr2latex]
+\CTANdirectory{transfig}{graphics/transfig}[transfig]
+\CTANdirectory{try}{support/try}[try]
+\CTANdirectory{tt2001}{fonts/ps-type1/tt2001}[tt2001]
+\CTANdirectory{tth}{support/tth/dist}[tth]
+\CTANdirectory{ttn}{digests/ttn}
+\CTANdirectory{tug}{usergrps/tug}
+\CTANdirectory{tugboat}{digests/tugboat}
+\CTANdirectory{tweb}{web/tweb}[tweb]
+\CTANdirectory{txfonts}{fonts/txfonts}[txfonts]
+\CTANdirectory{txfontsb}{fonts/txfontsb}[txfontsb]
+\CTANdirectory{txtdist}{support/txt}[txt]
+\CTANdirectory{type1cm}{macros/latex/contrib/type1cm}[type1cm]
+\CTANdirectory{ucharclasses}{macros/xetex/latex/ucharclasses}[ucharclasses]
+\CTANdirectory{ucs}{macros/latex/contrib/ucs}[ucs]
+\CTANdirectory{ucthesis}{macros/latex/contrib/ucthesis}[ucthesis]
+\CTANdirectory{uktex}{digests/uktex}
+\CTANdirectory{ulem}{macros/latex/contrib/ulem}[ulem]
+\CTANdirectory{umrand}{macros/generic/umrand}
+\CTANdirectory{underscore}{macros/latex/contrib/underscore}[underscore]
+\CTANdirectory{unicode-math}{macros/latex/contrib/unicode-math}[unicode-math]
+\CTANdirectory{unix}{systems/unix}
+\CTANdirectory{unpacked}{macros/latex/unpacked}
+\CTANdirectory{untex}{support/untex}[untex]
+\CTANdirectory{url}{macros/latex/contrib/url}[url]
+\CTANdirectory{urlbst}{biblio/bibtex/contrib/urlbst}[urlbst]
+\CTANdirectory{urw-base35}{fonts/urw/base35}[urw-base35]
+\CTANdirectory{urwchancal}{fonts/urwchancal}[urwchancal]
+\CTANdirectory{usebib}{macros/latex/contrib/usebib}[usebib]
+\CTANdirectory{utopia}{fonts/utopia}[utopia]
+\CTANdirectory{varisize}{macros/plain/contrib/varisize}[varisize]
+\CTANdirectory{varwidth}{macros/latex/contrib/varwidth}[varwidth]
+\CTANdirectory{vc}{support/vc}[vc]
+\CTANdirectory{verbatim}{macros/latex/required/tools}[verbatim]
+\CTANdirectory{verbatimbox}{macros/latex/contrib/verbatimbox}[verbatimbox]
+\CTANdirectory{verbdef}{macros/latex/contrib/verbdef}[verbdef]
+\CTANdirectory{version}{macros/latex/contrib/version}[version]
+\CTANdirectory{vertbars}{macros/latex/contrib/vertbars}[vertbars]
+\CTANdirectory{vita}{macros/latex/contrib/vita}[vita]
+\CTANdirectory{vmargin}{macros/latex/contrib/vmargin}[vmargin]
+\CTANdirectory{vmspell}{support/vmspell}[vmspell]
+\CTANdirectory{vpp}{support/view_print_ps_pdf}[vpp]
+\CTANdirectory{vruler}{macros/latex/contrib/vruler}[vruler]
+\CTANdirectory{vtex-common}{systems/vtex/common}
+\CTANdirectory{vtex-linux}{systems/vtex/linux}[vtex-free]
+\CTANdirectory{vtex-os2}{systems/vtex/os2}[vtex-free]
+\CTANdirectory{wallpaper}{macros/latex/contrib/wallpaper}[wallpaper]
+\CTANdirectory{was}{macros/latex/contrib/was}[was]
+\CTANdirectory{wd2latex}{support/wd2latex}
+\CTANdirectory{web}{systems/knuth/dist/web}[web]
+\CTANdirectory*{winedt}{systems/win32/winedt}[winedt]
+\CTANdirectory{wordcount}{macros/latex/contrib/wordcount}[wordcount]
+\CTANdirectory{wp2latex}{support/wp2latex}[wp2latex]
+\CTANdirectory{wrapfig}{macros/latex/contrib/wrapfig}[wrapfig]
+\CTANdirectory{xargs}{macros/latex/contrib/xargs}[xargs]
+\CTANdirectory{xbibfile}{biblio/bibtex/utils/xbibfile}[xbibfile]
+\CTANdirectory{xcolor}{macros/latex/contrib/xcolor}[xcolor]
+\CTANdirectory{xcomment}{macros/generic/xcomment}[xcomment]
+\CTANdirectory*{xdvi}{dviware/xdvi}[xdvi]
+\CTANdirectory{xecjk}{macros/xetex/latex/xecjk}[xecjk]
+\CTANdirectory{xetexref}{info/xetexref}[xetexref]
+\CTANdirectory*{xfig}{graphics/xfig}[xfig]
+\CTANdirectory*{xindy}{indexing/xindy}[xindy]
+\CTANdirectory{xits}{fonts/xits}[xits]
+\CTANdirectory{xkeyval}{macros/latex/contrib/xkeyval}[xkeyval]
+\CTANdirectory{xmltex}{macros/xmltex/base}[xmltex]
+\CTANdirectory*{xpdf}{support/xpdf}[xpdf]
+\CTANdirectory{xtab}{macros/latex/contrib/xtab}[xtab]
+\CTANdirectory{xwatermark}{macros/latex/contrib/xwatermark}[xwatermark]
+\CTANdirectory{yagusylo}{macros/latex/contrib/yagusylo}[yagusylo]
+\CTANdirectory{yhmath}{fonts/yhmath}[yhmath]
+\CTANdirectory{zefonts}{fonts/zefonts}[zefonts]
+\CTANdirectory{ziffer}{macros/latex/contrib/ziffer}[ziffer]
+\CTANdirectory{zoon-mp-eg}{info/metapost/examples}[metapost-examples]
+\CTANdirectory{zwpagelayout}{macros/latex/contrib/zwpagelayout}[zwpagelayout]
+\endinput
diff --git a/obsolete/help/texfaq/faq-adj-types.tex b/obsolete/help/texfaq/faq-adj-types.tex
new file mode 100644
index 0000000000..0906f918f4
--- /dev/null
+++ b/obsolete/help/texfaq/faq-adj-types.tex
@@ -0,0 +1,3671 @@
+% $Id: faq-adj-types.tex,v 1.50 2014/01/22 17:29:03 rf10 Exp $
+
+\section{Adjusting the typesetting}
+
+\subsection{Alternative document classes}
+
+\Question[Q-replstdcls]{Replacing the standard classes}
+
+People are forever concocting classes that replace the standard ones:
+the present author produced an \Class{ukart} class that used the
+\Package{sober} package, and a few British-specific things (such as
+appear in the \Package{babel} package's British-english
+specialisation) in the 1980s, which is still occasionally used.
+
+Similar public efforts were available well back in the days of
+\LaTeXo{}: a notable example, whose pleasing designs seem not to have
+changed much over all that time, is the \Class{ntgclass} bundle.
+Each of the standard classes is replaced by a selection of classes,
+named in Dutch, sometimes with a single numeric digit attached. So we
+have classes \Class{artikel2}, \Class{rapport1}, \Class{boek3} and
+\Class{brief}. These classes are moderately well documented in
+English.
+
+The \Class{KOMA-script} bundle (classes named \Class{scr...}) are a
+strong current contender. They are actively supported and are subject
+to sensitive development; they are comprehensive in their coverage of
+significant typesetting issues; they produce good-looking output and
+they are well documented in both English (\Package{scrguien} in the
+distribution) and German (\Package{scrguide} in the distribution).
+
+The other comparable class is \Class{memoir}. This aims to replace
+\Class{book} and \Class{report} classes directly, and (like
+\Class{KOMA-script}) is comprehensive in its coverage of small issues.
+\Class{Memoir}'s documentation (\Package{memman}) is very highly
+spoken of, and its lengthy introductory section is regularly
+recommended as a tutorial on typesetting.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}KOMA-script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[\nothtml{\rmfamily}NTGclass bundle]\CTANref{ntgclass}
+\item[sober.sty]\CTANref{sober}
+\end{ctanrefs}
+
+\Question[Q-slidecls]{Producing presentations (including slides)}
+
+Lamport's original \LaTeX{} had a separate program (Sli\TeX{}) for
+producing slides; it dates from the age when colour effects were
+produced by printing separate slides in different-coloured inks, and
+overlaying them, and was just about acceptable back then. When
+\LaTeXe{} came along, the reason Sli\TeX{} had to be a separate
+program went away, and its functionality was supplied by the
+\Class{slides} class. While this makes life a little easier for
+system administrators, it does nothing for the inferior functionality
+of the class: no-one who ``knows'' uses \Class{slides} nowadays.
+
+The `classic' alternatives have been \Class{seminar} and \Class{foils}
+(originally known as Foil\TeX{}). Both were originally designed to
+produce output on acetate foils, though subsequent work has provided
+environments in which they can be used with screen projectors (see
+below).
+
+The advent of Microsoft \ProgName{PowerPoint} (feeble though early
+versions of it were) has created a demand for ``dynamic'' slides~---
+images that develop their content in a more elaborate fashion than by
+merely replacing one foil with the next in the way that was the norm
+when \Class{slides}, \Class{foils} and \Class{seminar} were designed.
+
+The \Class{prosper} class builds on \Class{seminar} to provide dynamic
+effects and the like; it retains the ability to provide \acro{PDF} for
+a projected presentation, or to print foils for a foil-based
+presentation. The add-on package \Package{ppr-prv} adds ``preview''
+facilities (that which is commonly called ``hand-out printing''). The
+\Package{HA-prosper} package, which you load with \Class{prosper},
+mends a few bugs, and adds several facilities and slide design styles.
+The (more recent) \Class{powerdot} class is designed as a
+replacement for \Class{prosper} and \Package{HA-prosper}, co-authored
+by the author of \Package{HA-prosper}.
+
+\Class{Beamer} is a relatively easy-to-learn, yet powerful, class that
+(as its name implies) was designed for use with projection displays.
+It needs the \Package{pgf} package (for graphics support), which in
+turn requires \Package{xcolor}; while this adds to the tedium of
+installing \Class{beamer} ``from scratch'', both are good additions to
+a modern \LaTeX{} installation. \Class{Beamer} has reasonable
+facilities for producing printed copies of slides.
+
+\Class{Talk} is another highly functional, yet easy-to-learn class
+which claims to differ from the systems mentioned above, such as
+\Class{beamer}, in that it doesn't impose a slide style on you. You
+get to specify a bunch of slide styles, and you can switch from one to
+the other between slides, as you need. The class itself provides
+just the one style, in the package \Package{greybars}: the author's
+suggestion that users should contribute their own has been
+enthusiastically accepted~--- see (for example) the % !line break
+\href{http://deic.uab.es/~iblanes/beamer_gallery/}{Beamer Gallery}.
+
+\Package{Lecturer} is a \emph{generic} solution (it works with
+\plaintex{}, \latex{} and \context{}~mk~ii, but not~--- yet~--- with
+\context{}~mk iv). By separating the functionality needed for a
+presentation (using \tex{} for typesetting, and \acro{PDF} functions
+for layering and dynamic effects) a clear structure emerges. While it
+doesn't have the range of ``themes'' (presentation styles) of
+\Class{beamer} it seems a useful alternative candidate.
+
+\Package{Present} is designed for use with \plaintex{} only; its
+design is simple, to the extent that its author hopes that users will
+themselves be able to tune its macros.
+
+\ProgName{Ppower4} (commonly known as \ProgName{pp4}) is a
+\ProgName{Java}-based support program that will postprocess
+\acro{PDF}, to `animate' the file at places you've marked with
+commands from one of the \ProgName{pp4} packages. The commands don't
+work on \acro{PDF} that has come from \ProgName{dvips} output; they
+work with \acro{PDF} generated by \PDFLaTeX{}, \LaTeX{}, or
+\ProgName{dvipdfm} running on \LaTeX{} output.
+
+\Package{Pdfscreen} and \Package{texpower} are add-on packages that
+permit dynamic effects in documents formatted in ``more modest''
+classes; \Package{pdfscreen} will even allow you to plug
+``presentation effects'' into an \Class{article}-class document.
+
+% ifmslide
+%\noindent ifmslide: a few slides extolling virtues in \File{doc/ifmman.pdf}
+
+A more detailed examination of the alternatives (including examples
+of code using many of them) may be found at Michael Wiedmann's fine
+\URL{http://www.miwie.org/presentations/presentations.html}
+
+\CONTeXT{} users will find that much (if not all) of what they need is
+already in \CONTeXT{} itself; there's a useful summary of what's
+available, with examples, in
+\URL{http://wiki.contextgarden.net/Presentation_Styles}
+%
+\begin{ctanrefs}
+\item[beamer.cls]Download all of \CTANref{beamer}
+\item[foils.cls]\CTANref{foiltex}
+\item[greybars.sty]distributed with \CTANref{talk}
+\item[HA-prosper.sty]\CTANref{ha-prosper}
+%\item[ifmslide.sty]\CTANref{ifmslide}
+\item[lecturer.sty]\CTANref{lecturer}
+\item[seminar.cls]\CTANref{seminar}
+\item[pdfscreen.sty]\CTANref{pdfscreen}
+\item[pgf.sty]\CTANref{pgf}
+\item[powerdot.cls]\CTANref{powerdot}
+\item[pp4]\CTANref{ppower4}
+\item[ppr-prv.sty]\CTANref{ppr-prv}
+\item[present.tex]\CTANref{present}
+\item[prosper.cls]\CTANref{prosper}
+\item[talk.cls]\CTANref{talk}
+\item[texpower]\CTANref{texpower}
+\item[xcolor.sty]\CTANref{xcolor}
+\end{ctanrefs}
+
+\Question[Q-poster]{Creating posters with \LaTeX{}}
+
+There is no complete ``canned solution'' to creating a poster (as, for
+example, classes like \Class{seminar}, \Class{powerdot} and
+\Class{beamer} serve for creating presentations in a variety of
+styles).
+
+The nearest approach to the complete solution is the \Class{sciposter}
+class, which provides the means to produce really rather good posters
+according to the author's required style. A complete worked example
+is provided with the distribution
+
+Otherwise, there is a range of tools, most of which are based on the
+\Class{a0poster} class, which sets up an appropriately-sized piece of
+paper, sets font sizes appropriately, and leaves you to your own
+devices.
+
+Having used \Class{a0poster}, you can of course slog it out, and write
+all your poster as an unadorned \LaTeX{} document (presumably in
+multiple columns, using the \Package{multicol} package), but it's not really
+necessary: the (straightforward) \Package{textpos} package provides a
+simple way of positioning chunks of text, or tables or figures, on the
+poster page.
+
+More sophisticated is the \Package{flowfram} package, whose basic aim
+in life is flowing text from one box on the page to the next. One of
+the package's design aims seems to have been the production of
+posters, and a worked example is provided. The author of
+\Package{flowfram} has an experimental tool called
+\href{http://www.dickimaw-books.com/software.html#jpgfdraw}{JpgfDraw}, which
+allows you to construct the outline of frames for use with
+\Package{flowfram}.
+
+The \Package{beamerposter} package is added to a % ! line break
+\Qref*{\Class{beamer} document}{Q-slidecls} to enable the user to work
+as if in a \Class{a0poster} class. Thus \Class{beamer}'s neat
+provisions for layout may be used when creating the poster.
+Documentation of \Package{beamerposter} is sparse, but an example file
+allows the user to get a grip on what's available.
+
+Despite the relative shortage of tools, there are a fair few web pages
+that explain the process (mostly in terms of the \Class{a0poster}
+route):
+\begin{itemize}
+\item from Norman Gray, % ! line break; this item checked 2012-10-02
+ \href{http://nxg.me.uk/docs/posters/}{Producing posters using \LaTeX{}};
+\item from Nicola Talbot, % ! line break; this item checked 2012-10-02
+ \href{http://www.dickimaw-books.com/latex/posters/}{Creating technical posters with \LaTeX{}}
+\item From Rob Clark % ! line break; this item checked 2012-10-02
+ \href{http://homepages.inf.ed.ac.uk/robert/posters/advanced.html}{Advanced LaTeX Posters} % ! line break
+ (which has links to code samples);
+\item from Brian Wolven, % ! line break this item failed 2012-10-02
+ \href{http://fuse.pha.jhu.edu/~wolven/posters.html}{LaTeX Poster Macros, Examples, and Accessories} % ! line break
+ (this page also provides macros and other support suggestions); and
+\item from ``\emph{pjh}'' % ! line break; this item checked 2012-10-02
+ \href{http://www.phys.ufl.edu/~pjh/posters/poster_howto_UF.html}{Making and printing a poster with \LaTeX{}}, % ! line break
+ which covers the specific issue of dealing with University of
+ Florida styled poster (offering supporting material as necessary),
+ but has hints which are generally useful.
+\end{itemize}
+\begin{ctanrefs}
+\item[a0poster.cls]\CTANref{a0poster}
+\item[beamer.cls]\CTANref{beamer}
+\item[beamerposter.sty]\CTANref{beamerposter}
+\item[flowfram.sty]\CTANref{flowfram}
+\item[multicol.sty]Distributed as part of \CTANref{2etools}[multicol]
+\item[sciposter.cls]\CTANref{sciposter}
+\item[textpos.sty]\CTANref{textpos}
+\end{ctanrefs}
+
+\Question[Q-thesis]{Formatting a thesis in \LaTeX{}}
+
+Thesis styles are usually very specific to your University, so it's
+usually not profitable to ask around for a package outside your own
+University. Since many Universities (in their eccentric way) still
+require double-spaced thesis text, you may also need separately to set
+up \Qref*{double spacing}{Q-linespace}.
+
+If you want to write a new thesis class of your own, a good place to
+start is the University of California style, but remember that it's
+often difficult to produce a thesis that both looks good and conforms
+with the style that your Univeristy demands.
+\begin{ctanrefs}
+\item[UC thesis style]\CTANref{ucthesis}
+\end{ctanrefs}
+
+\Question[Q-journalpaper]{Setting papers for journals}
+
+Publishers of journals have a wide range of requirements for the
+presentation of papers, and while many publishers do accept electronic
+submissions in \AllTeX{}, they don't often submit recommended macros to
+public archives.
+
+Nevertheless, there are considerable numbers of macros of one sort or
+another available on \acro{CTAN}; searching for your journal name in
+the CTAN catalogue~--- see % ! line break
+\Qref{searching \acro{CTAN}}{Q-findfiles})~---
+may well turn up what you're seeking.
+
+Failing that, you may be well advised to contact the prospective
+publisher of your paper; many publishers have macros on their own web
+sites, or otherwise available only upon application.
+
+Check that the publisher is offering you macros suitable to an
+environment you can use: a few still have no macros for current
+\LaTeX{}, for example, claiming that \LaTeXo{} is good enough\dots{}
+
+Some publishers rekey anything sent them anyway, so that it doesn't
+really matter what macros you use. Others merely encourage you to use
+as few extensions of a standard package as possible, so that they will
+find it easy to transform your paper to their own internal form.
+
+\Question[Q-multidoc]{A `report' from lots of `article's}
+
+This is a requirement, for example, if one is preparing the
+proceedings of a conference whose papers were submitted in \LaTeX{}.
+
+The nearest things to canned solutions are Peter Wilson's
+\Class{combine} and Federico Garcia's \Class{subfiles} classes, but
+many approaches have been proposed. Each of of the offerings has its
+own advantages; in particular, several distinctly light-weight
+solutions (for example, \Package{includex} and \Package{docmute}) are
+available, well-suited to less formal documents.
+
+\Class{Combine} defines the means to `\csx{import}' entire documents,
+and provides means of specifying significant features of the layout of
+the document, as well as a global table of contents, and so on. The
+complete set of facilities is pretty complex. An auxiliary package,
+\Package{combinet}, allows use of the \csx{title}s and \csx{author}s
+(etc.\@) of the \csx{import}ed documents to appear in the global table
+of contents. The basic structure of a combined document would be:
+\begin{quote}
+\begin{verbatim}
+\documentclass[...]{combine}
+...
+\begin{document}
+...
+<introductory materiel>
+...
+\begin{papers}
+% title and author of first article,
+% to go the the main ToC
+\coltoctitle{...}
+\coltocauthor{...}
+\label{art1}
+\import{art1}
+...
+\end{papers}
+...
+<acknowledgements, etc.>
+...
+\end{document}
+\end{verbatim}
+\end{quote}
+
+The \Class{subfiles} class is used in the component files of a multi-file
+project, and the corresponding \Package{subfiles} package is used in the
+master file; so the structure of the master file looks like:
+\begin{quote}
+\begin{verbatim}
+\documentclass{<whatever>}
+...
+\usepackage{subfiles}
+...
+\begin{document}
+...
+\subfile{subfile_name}
+...
+\end{document}
+\end{verbatim}
+\end{quote}
+while a subfile has the structure:
+\begin{quote}
+\begin{verbatim}
+\documentclass[mainfile_name]{subfiles}
+\begin{document}
+...
+\end{document}
+\end{verbatim}
+\end{quote}
+Arrangements may be made so that the component files will
+be typeset using different page format, etc., parameters than those
+used when they are typeset as a part of the main file.
+
+A more `raw' toolkit is offered by Matt Swift's \Package{includex} and
+\Package{newclude} packages, both part of the \Package{frankenstein}
+bundle. Note that Matt believes \Package{includex} is obsolete
+(though it continues to work for this author); furthermore, its
+replacement, \Package{newclude} remains ``in development'', as it has
+been since 1999.
+
+Both \Package{includex} and \Package{newclude} enable you to
+`\csx{includedoc}' complete articles (in the way that you
+`\csx{include}' chapter files in an ordinary report). The preamble
+(everything up to \cmdinvoke{begin}{document}), and everything after
+\cmdinvoke{end}{document}, is ignored by both packages. Thus the
+packages don't ``do the whole job'' for you, though: you need to
+analyse the package use of the individual papers, and ensure that a
+consistent set is loaded in the preamble of the main report. (Both
+packages require \Package{moredefs}, which is also part of the
+bundle.)
+
+A neat (and simple) toolkit is offered by the
+\Package{docmute} package; once the package is loaded, anything
+between \cmdinvoke{documentclass}[...]{...} and
+\cmdinvoke{begin}{document} in an \csx{input}'ed or \csx{include}'d
+document is ignored, and then the input is processed up to
+\cmdinvoke{end}{document} in the input file. The package does nothing
+about \csx{usepackage} (or anything else) in the preamble of the
+included document; it's up to the user to ensure that any packages
+needed are loaded, and any other necessary configuration is done, in
+the parent document.
+
+The \Package{standalone} package develops on the ideas of
+\Package{docmute}; it was designed to meet the needs of users who are
+developing images from one of the more extreme new graphics packages
+(notably \Package{pgf/tikz}) where the compile time of the graphics is
+such that separate compilation is very desirable.
+\Package{Standalone} provides a means of developing the graphics in a
+convenient way, detached from the development of the document as a
+whole; its value for use in multiple documents is clear.
+
+The user includes the \Package{standalone} package in the main
+document, and each subfile uses the \Class{standalone} class.
+(\Class{Standalone} uses \Class{article} for the ``real'' work in
+stand-alone mode, but it may be asked to use another).
+
+The real difference from the \Package{docmute} package is
+flexibility. In particular, you can ask that the preambles of the
+included documents be gathered up, so that you can construct a good
+preamble for the master document.
+
+A final ``compile-together'' approach comes from the \Package{subdocs}
+package. The driver file contains a \csx{subdocuments} command:
+\begin{quote}
+\cmdinvoke*{subdocuments}[options]{file1, file2, ...}
+\end{quote}
+(the optional arguments provide layout options, such as control over
+whether \csx{clearpage} or \csx{cleardoublepage} are used between the
+files). Each of the sub-files will execute
+\begin{quote}
+ \cmdinvoke*{usepackage}[master]{subdocs}
+\end{quote}
+to declare the name, \texttt{\emph{master}}, of the calling file;
+each of the subfiles reads all the \extension{aux} files, so that
+tables of contents may be produced.
+
+A completely different approach is to use the \Package{pdfpages}
+package, and to include articles submitted in \acro{PDF} format into a
+a \acro{PDF} document produced by \PDFLaTeX{}. The package
+defines an \csx{includepdf} command, which takes arguments similar to
+those of the \csx{includegraphics} command. With keywords in the
+optional argument of the command, you can specify which pages you want
+to be included from the file named, and various details of the layout
+of the included pages.
+\begin{ctanrefs}
+\item[combine.cls]\CTANref{combine}
+\item[combinet.sty]\CTANref{combine}
+\item[docmute.sty]\CTANref{docmute}
+\item[includex.sty]Distributed in the ``unsupported'' part of
+ \CTANref{frankenstein}[includex]
+\item[moredefs.sty]Distributed as part of \CTANref{frankenstein}[moredefs]
+\item[newclude.sty]Distributed as part of \CTANref{frankenstein}[newclude]
+\item[pdfpages.sty]\CTANref{pdfpages}
+\item[standalone.cls, standalone.sty]\CTANref{standalone}
+\item[subdocs.sty]Distributed as part of \CTANref{bezos}[subdocs]
+\item[subfiles.cls, etc.]\CTANref{subfiles}
+\end{ctanrefs}
+
+\Question[Q-cv]{\emph{Curriculum Vitae} (R\'esum\'e)}
+
+Andrej Brodnik's class, \Class{vita}, offers a framework for producing
+a \emph{curriculum vitae}. The class may be customised both for
+subject (example class option files support both computer scientists
+and singers), and for language (both the options provided are
+available for both English and Slovene). Extensions may be written by
+creating new class option files, or by using macros defined in the
+class to define new entry types, etc.
+
+Didier Verna's class, \Class{curve}, is based on a model in which
+the \acro{CV} is made of a set of \emph{rubrics} (each one dealing
+with a major item that you want to discuss, such as `education', `work
+experience', etc). The class's documentation is supported by a couple
+of example files, and an emacs mode is provided.
+
+Xavier Danaux offers a class \Class{moderncv} which supports
+typesetting modern \emph{curricula vitarum}, both in a classic and in a
+casual style. It is fairly customizable, allowing you to define your
+own style by changing the colours, the fonts, etc.
+
+The European Commission has recommended a format for % ! line break
+\emph{curricula vitarum} within Europe, and Nicola Vitacolonna has
+developed a class \Class{europecv} to produce it. While (by his own
+admission) the class doesn't solve all problems, it seems well-thought
+out and supports all current official EU languages (together with a
+few non-official languages, such as Catalan, Galician and Serbian).
+
+The alternative to using a separate class is to impose a package on
+one of the standard classes. An example,
+Axel Reichert's \Package{currvita} package, has been recommended to the
+\acro{FAQ} team. Its output certainly looks good.
+
+There is also a \LaTeXo{} package \Package{resume}, which comes with
+little but advice \emph{against} trying to use it.
+\begin{ctanrefs}
+\item[currvita.sty]\CTANref{currvita}
+\item[curve.cls]\CTANref{curve}
+\item[europecv.cls]\CTANref{europecv}
+\item[moderncv.cls]\CTANref{moderncv}
+\item[resume.sty]\CTANref{resume}
+\item[vita.cls]\CTANref{vita}
+\end{ctanrefs}
+
+\Question[Q-letterclass]{Letters and the like}
+
+\LaTeX{} itself provides a \Class{letter} document class, which is
+widely disliked; the present author long since gave up trying with
+it. If you nevertheless want to try it, but are irritated by its way
+of vertically-shifting a single-page letter, try the following hack:
+\begin{quote}
+\begin{verbatim}
+\makeatletter
+\let\@texttop\relax
+\makeatother
+\end{verbatim}
+\end{quote}
+in the preamble of your file.
+
+Doing-it-yourself is a common strategy; Knuth (for use with
+\plaintex{}, in the \TeX{}book), and Kopka and Daly (in their Guide to
+\LaTeX{}) offer worked examples. (The latest version of Knuth's
+macros appear in his ``local library'' dump on the archive, which is
+updated in parallel with new versions of \TeX{}~--- so not very often\dots{})
+
+Nevertheless, there \emph{are} contributed alternatives~--- in fact
+there are an awfully large number of them: the following list, of
+necessity, makes but a small selection.
+
+The largest, most comprehensive, class is \Class{newlfm}; the \texttt{lfm}
+part of the name implies that the class can create letters, faxes and
+memoranda. The documentation is voluminous, and the package seems
+very flexible.
+
+Other classes recommended for inclusion in this \acro{FAQ} are
+\Class{akletter} and \Class{isodoc}.
+
+The \Class{dinbrief} class, while recommended, is only documented in
+German.
+
+There are letter classes in each of the excellent
+\Class{KOMA-script} (\Class{scrlttr2}: documentation is available in
+English) and \Package{ntgclass} (\Class{brief}: documentation in Dutch
+only) bundles. While these are probably good (since the bundles
+themselves inspire trust) they've not been specifically recommended by
+any users.
+\begin{ctanrefs}
+\item[akletter.cls]\CTANref{akletter}
+\item[brief.cls]Distributed as part of \CTANref{ntgclass}
+\item[dinbrief.cls]\CTANref{dinbrief}
+\item[isodoc.cls]\CTANref{isodoc}
+\item[\nothtml{\rmfamily}Knuth's letter.tex]\CTANref{knuth-letter}
+\item[newlfm.cls]\CTANref{newlfm}
+\item[scrlttr2.cls]Distributed as part of \CTANref{koma-script}
+\end{ctanrefs}
+
+\Question[Q-extsizes]{Other ``document font'' sizes?}
+
+The \LaTeX{} standard classes have a concept of a (base) ``document
+font'' size; this size is the basis on which other font sizes (those
+from \csx{tiny} to \csx{Huge}) are determined. The classes are designed
+on the assumption that they won't be used with sizes other than the
+set that \LaTeX{} offers by default (10--12pt), but people regularly
+find they need other sizes. The proper response to such a requirement
+is to produce a new design for the document, but many people don't
+fancy doing that.
+
+A simple solution is to use the \Package{extsizes} bundle. This
+bundle offers ``extended'' versions of the article, report, book and
+letter classes, at sizes of 8, 9, 14, 17 and 20pt as well as the
+standard 10--12pt. Since little has been done to these classes other
+than to adjust font sizes and things directly related to them, they
+may not be optimal~--- but they are at least practical.
+
+More satisfactory are the \emph{\acro{KOMA}-script} classes, which are
+designed to work properly with the class option files that come with
+\Package{extsizes}, and the \Class{memoir} class that has its own
+options for document font sizes 9pt--12pt, 14pt, 17pt, 20pt, 25pt,
+30pt, 36pt, 48pt and 60pt. The classes also offer size setup for any
+old font size, and the \Package{scrextend} package can extend this
+facility for use with any class:
+\begin{quote}
+\begin{verbatim}
+\usepackage[fontsize=12.3]{scrextend}
+\end{verbatim}
+\end{quote}
+will indeed set up the main document font to have size \texttt{12.3pt}
+with an appropriate default baselineskip. The package ``knows'' about
+\emph{\acro{KOMA}-script}'s default sizes, and for eccentric sizes
+such as the example, it will produce a warning:
+\begin{quote}
+\begin{verbatim}
+Using fallback calculation to setup font sizes
+\end{verbatim}
+\end{quote}
+(users should avoid becoming excited about that\dots{}). The package
+suffers from the same problem as does \Package{extsizes}: the
+resulting font sizes are the \emph{only} feature of the document that
+is changed, and the appearance of the resulting document will probably
+not be as good as if the document class had been designed for use at
+the size chosen.
+
+Many classes, designed to produce typeset results other than on
+``ordinary'' paper, will have their own font size mechanisms and
+ranges of sizes. This is true, for example, of % ! line break
+\Qref*{poster classes}{Q-poster} (such as \Class{a0poster}), and of
+\Qref*{presentation and lecturing classes}{Q-slidecls} (such as
+\Class{beamer}.
+\begin{ctanrefs}
+\item[a0poster.cls]\CTANref{a0poster}
+\item[beamer.cls]\CTANref{beamer}
+\item[extsizes bundle]\CTANref{extsizes}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[scrextend.sty]Distributed as part of \CTANref{koma-script}
+\end{ctanrefs}
+\LastEdit{2012-11-01}
+
+\subsection{Document structure}
+
+\Question[Q-titlsty]{The style of document titles}
+
+The \Package{titling} package provides a number of facilities that
+permit manipulation of the appearance of a \csx{maketitle} command, the
+\csx{thanks} commands within it, and so on. The package also defines a
+\environment{titlingpage} environment, that offers something in between the
+standard classes' \pkgoption{titlepage} option and the \environment{titlepage}
+environment, and is itself somewhat configurable.
+
+The memoir class includes all the functionality of the
+\Package{titling} package, while the \Class{KOMA-script} classes have
+their own range of different titling styles.
+
+Finally, the indefatigable Vincent Zoonekynd supplies examples of how
+to program alternative % don't let this \href suffer a line-break
+\href{http://zoonek.free.fr/LaTeX/LaTeX_samples_title/0.html}{title styles}.
+The web page is not useful to users unless they are willing to do
+their own \LaTeX{} programming.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[titling.sty]\CTANref{titling}
+\end{ctanrefs}
+
+\Question[Q-secthead]{The style of section headings}
+
+Suppose that the editor of your favourite journal has specified that section
+headings must be centred, in small capitals, and subsection headings ragged
+right in italic, but that you don't want to get involved in the sort of
+programming described in section 2.2 of \emph{The \LaTeX{} Companion}
+\begin{narrowversion} % really non-hyper
+ (\Qref{}{Q-latex-books}; the programming itself is discussed in
+ \Qref[question]{}{Q-atsigns}).
+\end{narrowversion}
+\begin{wideversion} % really hyper
+ (see \Qref{\latex{} books}{Q-latex-books}; the
+ \Qref{programming}{Q-atsigns} itself is discussed elsewhere in this
+ \acro{FAQ}).
+\end{wideversion}
+The following hack will
+probably satisfy your editor. Define yourself new commands
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\newcommand{\ssection}[1]{%
+ \section[#1]{\centering\normalfont\scshape #1}}
+\newcommand{\ssubsection}[1]{%
+ \subsection[#1]{\raggedright\normalfont\itshape #1}}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion} % really non-hyper
+\begin{verbatim}
+\newcommand{\ssection}[1]{%
+ \section[#1]{\centering
+ \normalfont\scshape #1}}
+\newcommand{\ssubsection}[1]{%
+ \subsection[#1]{\raggedright
+ \normalfont\itshape #1}}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+and then use \csx{ssection} and \csx{ssubsection} in place of
+\csx{section} and \csx{subsection}. This isn't perfect: section numbers
+remain in bold, and starred forms need a separate redefinition.
+
+The \Package{titlesec} package offers a structured approach to the
+problem, based on redefinition of the sectioning and chapter commands
+themselves. This approach allows it to offer radical adjustment: its
+options provide (in effect) a toolbox for designing your own
+sectioning commands' output.
+
+The \Package{sectsty} package provides a more simply structured set of
+tools; while it is less powerful than is \Package{titlesec}, it is
+perhaps preferable for minor adjustments, since you can use it after
+having read a smaller proportion of the manual.
+
+The \Package{fncychap} package provides a nice collection of customised
+chapter heading designs. The \Package{anonchap} package provides a
+simple means of typesetting chapter headings ``like section headings''
+(i.e., without the ``Chapter'' part of the heading); the
+\Package{tocbibind} package provides the same commands, in pursuit of
+another end.
+
+The \Class{memoir} class includes facilities that match
+\Package{sectsty} and \Package{titlesec}, as well as a bundle of
+chapter heading styles (including an \Package{anonchap}-equivalent).
+The \Class{KOMA-script} classes also have sets of tools that provide
+equivalent functionality, notably formatting specifications \csx{partformat},
+\csx{chapterformat}, \csx{sectionformat}, \dots{}, as well as several
+useful overall formatting specifications defined in class options.
+
+Finally, the indefatigable Vincent Zoonekynd supplies examples of how
+to program alternative % don't let these \href suffer line-breaks
+\href{http://zoonek.free.fr/LaTeX/LaTeX_samples_chapter/0.html}{chapter heading styles}
+and
+\href{http://zoonek.free.fr/LaTeX/LaTeX_samples_section/0.html}{section heading styles}.
+The web pages provide programming examples, and expect users to adapt
+them to their own \LaTeX{} use.
+\begin{ctanrefs}
+\item[anonchap.sty]\CTANref{anonchap}
+\item[fncychap.sty]\CTANref{fncychap}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[sectsty.sty]\CTANref{sectsty}
+\item[titlesec.sty]\CTANref{titlesec}
+\item[tocbibind.sty]\CTANref{tocbibind}
+\end{ctanrefs}
+\LastEdit{2011-06-01}
+
+\Question[Q-appendix]{Appendixes}
+
+\LaTeX{} provides an exceedingly simple mechanism for appendixes: the
+command \csx{appendix} switches the document from generating sections
+(in \Class{article} class) or chapters (in \Class{report} or
+\Class{book} classes) to producing appendixes. Section or chapter
+numbering is restarted and the representation of the counter switches
+to alphabetic. So:
+\begin{quote}
+\begin{verbatim}
+\section{My inspiration}
+...
+
+\section{Developing the inspiration}
+...
+
+\appendix
+\section{How I became inspired}
+...
+\end{verbatim}
+\end{quote}
+would be typeset (in an \Class{article} document) something like:
+\begin{quote}
+\textbf{1~~My inspiration}
+
+\dots{}
+
+\textbf{2~~Developing the inspiration}
+
+\dots{}
+
+\textbf{A~~How I became inspired}
+
+\dots{}
+\end{quote}
+which is quite enough for many ordinary purposes. Note that, once
+you've switched to typesetting appendixes, \LaTeX{} provides you with
+no way back~--- once you've had an appendix, you can no longer have an
+``ordinary'' \csx{section} or \csx{chapter}.
+
+The \Package{appendix} provides several ways of elaborating on this
+simple setup. Straightforward use of the package allows you to have a
+separate heading, both in the body of the document and the table of
+contents; this would be achieved by
+\begin{quote}
+\begin{verbatim}
+\usepackage{appendix}
+...
+\appendix
+\appendixpage
+\addappheadtotoc
+\end{verbatim}
+\end{quote}
+The \csx{appendixpage} command adds a separate title ``Appendices''
+above the first appendix, and \csx{addappheadtotoc} adds a similar
+title to the table of contents. These simple modifications cover many
+people's needs about appendixes.
+
+The package also provides an \environment{appendices} environment,
+which provides for fancier use. The environment is best controlled by
+package options; the above example would be achieved by
+\begin{quote}
+\begin{verbatim}
+\usepackage[toc,page]{appendix}
+...
+\begin{appendices}
+...
+\end{appendices}
+\end{verbatim}
+\end{quote}
+The great thing that the \environment{appendices} environment gives
+you, is that once the environment ends, you can carry on with sections
+or chapters as before~--- numbering isn't affected by the intervening
+appendixes.
+
+The package provides another alternative way of setting appendixes, as
+inferior divisions in the document. The \environment{subappendices}
+environment allows you to put separate appendixes for a particular
+section, coded as \csx{subsection}s, or for a particular chapter, coded
+as \csx{section}s. So one might write:
+\begin{quote}
+\begin{verbatim}
+\usepackage{appendix}
+...
+\section{My inspiration}
+...
+\begin{subappendices}
+\subsection{How I became inspired}
+...
+\end{subappendices}
+
+\section{Developing the inspiration}
+...
+\end{verbatim}
+\end{quote}
+Which will produce output something like:
+\begin{quote}
+\textbf{1~~My inspiration}
+
+\dots{}
+
+\textbf{1.A~~How I became inspired}
+
+\dots{}
+
+\textbf{2~~Developing the inspiration}
+
+\dots{}
+\end{quote}
+
+There are many other merry things one may do with the package; the
+user is referred to the package documentation for further details.
+
+The \Class{memoir} class includes the facilities of the
+\Package{appendix} package. The \Class{KOMA-script} classes offer a
+\csx{appendixprefix} command for manipulating the appearance of appendixes.
+\begin{ctanrefs}
+\item[appendix.sty]\CTANref{appendix}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-secindent]{Indent after section headings}
+
+\LaTeX{} implements a style that doesn't indent the first paragraph
+after a section heading. There are coherent reasons for this, but not
+everyone likes it.
+The \Package{indentfirst} package
+suppresses the mechanism, so that the first paragraph is
+indented.
+\begin{ctanrefs}
+\item[indentfirst.sty]Distributed as part of \CTANref{2etools}[indentfirst]
+\end{ctanrefs}
+
+\Question[Q-subsubsub]{How to create a \csx{subsubsubsection}}
+
+\LaTeX{}'s set of ``sections'' stops at the level of
+\csx{subsubsection}. This reflects a design decision by Lamport~---
+for, after all, who can reasonably want a section with such huge
+strings of numbers in front of it?
+
+In fact, \LaTeX{} standard classes \emph{do} define ``sectioning''
+levels lower than \csx{subsubsection}, but they don't format them like
+sections (they're not numbered, and the text is run-in after the
+heading). These deeply inferior section commands are \csx{paragraph}
+and \csx{subparagraph}; you can (if you \emph{must}) arrange that these
+two commands produce numbered headings, so that you can use them as
+\csx{subsubsubsection}s and lower.
+
+The \Package{titlesec} package provides a sensible set of macros for
+you to adjust the definitions of the sectioning macros, and it may be
+used to transform a \csx{paragraph}'s typesetting so that it looks
+like that of a \csx{section}.
+
+If you want to program the change yourself, you'll find that the
+commands (\csx{section} all the way down to \csx{subparagraph}) are
+defined in terms of the internal \csx{@startsection} command, which
+takes 6~arguments. Before attempting this sort of work, you are well
+advised to read the \LaTeX{} sources (\File{ltsect.dtx} in the
+\LaTeX{} distribution) and the source of the standard packages
+(\File{classes.dtx}), or to make use of the % ! line break
+\Qref*{\LaTeX{} Companion}{Q-latex-books}, which
+discusses the use of \csx{@startsection} for this sort of thing.
+
+You will note that Lamport didn't go on adding ``\texttt{sub}'' to the
+names of sectioning commands, when creating commands for the lowest
+levels of a document. This would seem sensible to any but the most
+rigorous stickler for symmetry~--- it would surely challenge pretty
+much anyone's reading of the source of a document, if there was a need
+to distinguish \csx{subsubsubsection} and \csx{subsubsubsubsection}
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\LaTeX{} source]\CTANref{latex}
+\item[titlesec.sty]\CTANref{titlesec}
+\end{ctanrefs}
+\LastEdit{2012-02-14}
+
+\Question[Q-captsty]{The style of captions}
+
+Changes to the style of captions may be made by redefining the commands
+that produce the caption. So, for example, \csx{fnum@figure} (which
+produces the float number for figure floats) may be redefined, in a
+package of your own, or between
+\Qref*{\csx{makeatletter}--\csx{makeatother}}{Q-atsigns}:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\renewcommand{\fnum@figure}{\textbf{Fig.~\thefigure}}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\renewcommand{\fnum@figure}%
+ {\textbf{Fig.~\thefigure}}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+which will cause the number to be typeset in bold face. (Note that
+the original definition used \nothtml{\csx{figurename}~--- }%
+\Qref{\csx{figurename}}{Q-fixnam}.) More elaborate changes can be
+made by patching the \csx{caption} command, but since there are
+packages to do the job, such changes (which can get rather tricky)
+aren't recommended for ordinary users.
+
+The \Package{float} package provides some control of the appearance of
+captions, though it's principally designed for the creation of
+non-standard floats. The \Package{caption} and \Package{ccaption}
+(note the double ``\emph{c}'') packages provide a range of different
+formatting options.
+
+\Package{ccaption} also provides `continuation' captions and captions
+that can be placed outside of float environments. The (very simple)
+\Package{capt-of} package also allows captions outside a float
+environment. Note that care is needed when doing things that assume
+the sequence of floats (as in continuation captions), or potentially
+mix non-floating captions with floating ones.
+
+The \Class{memoir} class includes the facilities of the
+\Package{ccaption} package; the \Class{KOMA-script} classes also
+provide a wide range of caption-formatting commands.
+
+The documentation of \Package{caption} is available by processing a
+file \File{manual.tex}, which is created when you unpack
+\File{caption.dtx}
+
+Note that the previously-recommended package \Package{caption2} has
+now been overtaken again by \Package{caption}; however,
+\Package{caption2} remains available for use in older documents.
+\begin{ctanrefs}
+\item[caption.sty]\CTANref{caption}
+\item[capt-of.sty]\CTANref{capt-of}
+\item[ccaption.sty]\CTANref{ccaption}
+\item[float.sty]\CTANref{float}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-fancyhdr]{Alternative head- and footlines in \LaTeX{}}
+\keywords{headings header footer headline footline}
+
+The standard \LaTeX{} document classes define a small set of `page
+styles' which specify head- and footlines for your document (though
+they can be used for other purposes, too). The standard set is very
+limited, but \LaTeX{} is capable of much more. The internal
+\LaTeX{} coding needed to change page styles is not particularly
+challenging, but there's no need~--- there are packages that provide
+useful abstractions that match the way we typically think about these
+things.
+
+The \Package{fancyhdr} package provides
+simple mechanisms for defining pretty much every head- or footline
+variation you could want; the directory also contains some
+documentation and one or two smaller packages. \Package{Fancyhdr}
+also deals with the tedious behaviour of the standard styles with
+\Qref*{initial pages}{Q-nopageno}, by enabling you to define
+different page styles for initial and for body pages.
+
+While \Package{fancyhdr} will work with \Class{KOMA-script} classes,
+an alternative package, \Package{scrpage2}, eases integration with the
+classes. \Package{Scrpage2} may also be used as a \Package{fancyhdr}
+replacement, providing similar facilities. The \Class{KOMA-script}
+classes themselves permit some modest redefinition of head- and
+footlines, without the use of the extra package.
+
+\Class{Memoir} also contains the functionality of \Package{fancyhdr},
+and has several predefined styles.
+
+Documentation of \Package{fancyhdr} is distributed with the package,
+in a separate file; documentation of \Package{scrpage2} is integrated
+with the \File{scrgui*} documentation files that are distributed with
+the \Class{KOMA-script} classes.
+\begin{ctanrefs}
+\item[fancyhdr.sty]\CTANref{fancyhdr}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-widefigs]{Wide figures in two-column documents}
+
+Floating figures and tables ordinarily come out the same width as the
+page, but in two-column documents they're restricted to the width of
+the column. This is sometimes not good enough; so there are alternative
+versions of the float environments~--- in two-column documents,
+\texttt{figure*} provides a floating page-wide figure (and \texttt{table*} a
+page-wide table) which will do the necessary.
+
+The ``\texttt{*}''ed float environments can only appear at the top of a page,
+or on a whole page~--- \texttt{h} or \texttt{b} float placement directives are
+simply ignored.
+
+Unfortunately, page-wide equations can only be accommodated inside
+float environments. You should include them in \texttt{figure} environments,
+or use the \Package{float} or \Package{ccaption}package to define a
+new float type.
+\begin{ctanrefs}
+\item[ccaption.sty]\CTANref{ccaption}
+\item[float.sty]\CTANref{float}
+\end{ctanrefs}
+
+\Question[Q-onecolabs]{1-column abstract in 2-column document}
+
+One often requires that the abstract of a paper should appear across
+the entire page, even in a two-column paper. The required trick is:
+\begin{quote}
+\begin{verbatim}
+\documentclass[twocolumn]{article}
+...
+\begin{document}
+... % \author, etc
+\twocolumn[
+ \begin{@twocolumnfalse}
+ \maketitle
+ \begin{abstract}
+ ...
+ \end{abstract}
+ \end{@twocolumnfalse}
+ ]
+\end{verbatim}
+\end{quote}
+Unfortunately, with the above \csx{thanks} won't work in the
+\csx{author} list. If you need such specially-numbered footnotes, you
+can make them like this:
+\begin{quote}
+\begin{verbatim}
+\title{Demonstration}
+\author{Me, You\thanks{}}
+\twocolumn[
+ ... as above ...
+]
+{
+ \renewcommand{\thefootnote}%
+ {\fnsymbol{footnote}}
+ \footnotetext[1]{Thanks for nothing}
+}
+\end{verbatim}
+\end{quote}
+and so on.
+
+As an alternative, among other facilities the \Package{abstract} package
+provides a
+\csx{saythanks} command and a \environment{onecolabstract} environment
+which remove the need to fiddle with the \csx{thanks} and
+footnoting. They can be used like this:
+\begin{quote}
+\begin{verbatim}
+\twocolumn[
+ \maketitle % full width title
+ \begin{onecolabstract} % ditto abstract
+ ... text
+ \end{onecolabstract}
+]
+\saythanks % typeset any \thanks
+\end{verbatim}
+\end{quote}
+The \Class{memoir} class offers all the facilities of \Package{abstract}.
+\begin{ctanrefs}
+\item[abstract.sty]\CTANref{abstract}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-reallyblank]{Really blank pages between chapters}
+
+If you're using the standard classes, you need to take special action;
+the \Class{memoir} class and the \Class{Koma-Script} classes provide
+their own support for this~--- see below.
+
+\Class{Book} (by default) and \Class{report} (with \pkgoption{openright} class
+option) ensure that each chapter starts on a right-hand (recto) page;
+they do this by inserting a \csx{cleardoublepage} command between
+chapters (rather than a mere \csx{clearpage}). The empty page thus
+created gets to have a normal running header, which some people don't
+like.
+
+The (excellent) \Package{fancyhdr} manual covers this issue, basically
+advising the creation of a command \csx{clearemptydoublepage}:
+\begin{quote}
+\begin{verbatim}
+\let\origdoublepage\cleardoublepage
+\newcommand{\clearemptydoublepage}{%
+ \clearpage
+ {\pagestyle{empty}\origdoublepage}%
+}
+\end{verbatim}
+\end{quote}
+The ``obvious'' thing is then to use this command to replace
+\csx{cleardoublepage} in a patched version of the \csx{chapter} command.
+(Make a package of your own containing a copy
+of the command out of the class.) This isn't particularly difficult,
+but you can instead simply subvert \csx{cleardoublepage} (which isn't
+often used elsewhere):
+\begin{quote}
+\begin{verbatim}
+\let\cleardoublepage\clearemptydoublepage
+\end{verbatim}
+\end{quote}
+Note: this command works because \csx{clearemptydoublepage} uses a copy
+of \csx{cleardoublepage}: instructions on macro programming
+% beware line break
+\Qref*[question]{patching techniques}{Q-patch} explain the problem and
+why this is a solution.
+
+The \Package{emptypage} package does this sort of thing for you; all
+you need do is load the package, and it does the rest.
+
+The \emph{\acro{KOMA}-Script} replacements for the
+\Class{book} and \Class{report} classes (\Class{scrbook} and
+\Class{scrreprt} offers class options \pkgoption{cleardoubleempty},
+\pkgoption{cleardoubleplain} and \pkgoption{cleardoublestandard}
+(using the running page style, as normal) that control the appearance
+of these empty pages. The classes also offer do-it-yourself commands
+\csx{cleardoubleempty} (etc.\@).
+
+The \Class{memoir} class (and the \Package{nextpage} package)
+provide commands \csx{cleartooddpage} and \csx{cleartoevenpage},
+which both take an optional argument (the first, with no argument,
+being an equivalent of \csx{cleardoublepage}). One can achieve
+`special' effects by putting commands in the optional argument: the
+\csx{clearemptydoublepage} we're after would be achieved by
+\csx{cleartooddpage[}\cmdinvoke{thispagestyle}{empty}\texttt{]}. The
+commands will also serve if you want the surreal effect of ``This page
+intentionally left blank'' in the centre of an otherwise empty page.
+\begin{ctanrefs}
+\item[emptypage.sty]\CTANref{emptypage}
+\item[fancyhdr.sty]\CTANref{fancyhdr}
+\item[memoir.cls]\CTANref{memoir}
+\item[nextpage.sty]\CTANref{nextpage}
+\item[scrbook.cls, scrrept.cls]Part of \CTANref{koma-script}
+\end{ctanrefs}
+
+\Question[Q-balance]{Balancing columns at the end of a document}
+
+The \Package{twocolumn} option of the standard classes causes
+\LaTeX{} to set the text of a document in two columns. However, the last
+page of the document typically ends up with columns of different
+lengths~--- such columns are said to be ``unbalanced''. Many (most?)
+people don't like unbalanced columns.
+
+The simplest solution to the problem is to use the \Package{multicol}
+package in place of the \Package{twocolumn} option, as
+\Package{multicol} balances the columns on the final page by default.
+However, the use of \Package{multicol} does come at a cost: its
+special output routine disallows the use of in-column floats, though
+it does still permit full-width (e.g., \environment{figure*}
+environment) floats.
+
+As a result, there is a constant push for a means of balancing columns
+at the end of a \Package{twocolumn} document. Of course, the job can
+be done manually: \csx{pagebreak} inserted at the appropriate place on
+the last page can often produce the right effect, but this seldom
+appeals, and if the last page is made up of automatically-generated
+text (for example, bibliography or index) inserting the command will
+be difficult.
+
+The \Package{flushend} package offers a solution to this problem. It's a
+somewhat dangerous piece of macro code, which patches one of the most
+intricate parts of the \LaTeX{} kernel without deploying any of the
+safeguards discussed in \Qref[question]{patching commands}{Q-patch}.
+The package only changes the behaviour at end document (its
+\csx{flushend} command is enabled by default), and one other command
+permits adjustment of the final balance; other packages in the bundle
+provide means for insertion of full width material in two-column
+documents.
+
+The \Package{balance} package also patches the output routine
+(somewhat more carefully than \Package{flushend}).
+
+The user should be aware that any of these packages are liable to
+become confused in the presence of floats: if problems arise, manual
+adjustment of the floats in the document is likely to be necessary.
+It is this difficulty (what's required in any instance can't really be
+expressed in current \LaTeX{}) that led the author of
+\Package{multicol} to suppress single-column-wide floats.
+\begin{ctanrefs}
+\item[balance.sty]Distributed as part of \CTANref{preprint}[balance]
+\item[flushend.sty]Distributed as part of \CTANref{sttools}[flushend]
+\item[multicol.sty]Distributed as part of \CTANref{2etools}[multicol]
+
+\end{ctanrefs}
+
+\Question[Q-runheadtoobig]{My section title is too wide for the page header}
+
+By default, \LaTeX{} sectioning commands make the chapter or section
+title available for use by page headers and the like. Page headers
+operate in a rather constrained area, and it's common for titles too
+be too big to fit: the \LaTeX{} sectioning commands therefore take an
+optional argument:
+\begin{quote}
+\begin{verbatim}
+\section[short title]{full title}
+\end{verbatim}
+\end{quote}
+If the \meta{short title} is present, it is used both for the table of
+contents and for the page heading. The usual answer to people who
+complain that their title is too big for the running head is to
+suggest that they the optional argument.
+
+However, using the same text for the table of contents as for the
+running head may also be unsatisfactory: if your chapter titles are
+seriously long (like those of a Victorian novel), a valid and rational
+scheme is to have a shortened table of contents entry, and a really
+terse entry in the running head.
+
+One of the problems is the tendency of page headings to be set in
+capitals (which take up more space); so why not set headings as written
+for ``ordinary'' reading? It's not possible to do so with unmodified
+\LaTeX{}, but the \Package{fancyhdr} package provides a command
+\csx{nouppercase} for use in its header (and footer) lines to suppress
+\LaTeX{}'s uppercasing tendencies. Classes in the \Class{KOMA-script}
+bundle don't uppercase in the first place.
+
+In fact, the sectioning commands use `mark' commands to pass
+information to the page headers. For example, \csx{chapter} uses
+\csx{chaptermark}, \csx{section} uses \csx{sectionmark}, and so on. With
+this knowledge, one can achieve a three-layer structure for chapters:
+\begin{quote}
+\begin{verbatim}
+\chapter[middling version]{verbose version}
+\chaptermark{terse version}
+\end{verbatim}
+\end{quote}
+which should supply the needs of every taste.
+
+Chapters, however, have it easy: hardly any book design puts a page
+header on a chapter start page. In the case of sections, one has
+typically to take account of the nature of the \csx{*mark} commands:
+the thing that goes in the heading is the first mark on the page (or,
+failing any mark, the last mark on any previous page). As a result
+the recipe for sections is more tiresome:
+\begin{quote}
+\begin{verbatim}
+\section[middling version]{verbose version%
+ \sectionmark{terse version}}
+\sectionmark{terse version}
+\end{verbatim}
+\end{quote}
+(the first \csx{sectionmark} deals with the header of the page the
+\csx{section} command falls on, and the second deal with subsequent
+pages; note that here, you need the optional argument to \csx{section},
+even if ``\emph{middling version}'' is in fact the same text as
+``\emph{long version''}.)
+
+A similar arrangement is necessary even for chapters if the class
+you're using is odd enough that it puts a page header on a chapter's
+opening page.
+
+Note that the \Package{titlesec} package manages the running heads in
+a completely different fashion; for example, you can use the optional
+argument of sectioning commands for page headers, only, by loading the
+package as:
+\begin{quote}
+\begin{verbatim}
+\usepackage[toctitles]{titlesec}
+\end{verbatim}
+\end{quote}
+The package documentation offers other useful techniques in this area.
+\LeadFrom{Tobi}{sx}{2012-02-01}
+
+The \Class{memoir} class avoids all the silliness by providing an
+extra optional argument for chapter and sectioning commands, for
+example:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\section[middling version][terse version]%
+ {verbose version}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\section[middling version][terse version]{verbose version}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+As a result, it is always possible for users of \Class{memoir} to
+tailor the header text to fit, with very little trouble.
+\begin{ctanrefs}
+\item[fancyhdr.sty]\CTANref{fancyhdr}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[titlesec.sty]\CTANref{titlesec}
+\end{ctanrefs}
+\LastEdit{2012-02-01}
+
+\nothtml{\begingroup\boldmath}
+\Question[Q-nofm]{Page numbering ``\meta{n} of \meta{m}''}
+\nothtml{\afterquestion}
+
+Finding the page number of the last page of a document, from within
+the document, is somewhat tricky. The \Package{lastpage} and
+\Package{zref-lastpage} packages define a label
+\texttt{LastPage} whose number is \emph{right} (after sufficiently many
+passes through \LaTeX{}, of course). The \Class{memoir} class also
+defines a ``last page'' label.
+
+The documentation of the \Package{fancyhdr} package spells out exactly
+how one might actually use this information to produce page numbering
+as suggested in the question.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}fancyhdr documentation]\CTANref{fancyhdr}
+\item[lastpage.sty]\CTANref{lastpage}
+\item[zref-lastpage]Distributed as part of \CTANref{oberdiek}[zref]
+\end{ctanrefs}
+\LastEdit{2012-10-16}
+
+\Question[Q-pagebychap]{Page numbering by chapter}
+
+When I was a young man, a common arrangement for loose bound technical
+manuals is to number pages by chapter. (It's quite a good scheme, in
+those situations: even if your corrections add a whole page to the
+chapter, the most you have to redistribute is that chapter.)
+
+The problem, at first sight, seems pretty much the same as that in
+another answer on
+% beware line break
+\Qref*{running numbers within a chapter}{Q-running-nos},
+and the basic technique is indeed pretty similar.
+
+However, tidying-up loose ends, making sure the page number gets reset
+to the correct value at the start of each chapter, and so on, is
+slightly more challenging. This is why the \Package{chappg} package
+was written: it does the obvious things, and more.
+
+Users have been known to ask for running page numbers within a
+section, but this really doesn't make sense: you need to run page
+numbers within document objects that always start on a fresh page.
+\begin{ctanrefs}
+\item[chappg.sty]\CTANref{chappg}
+\end{ctanrefs}
+
+\subsection{Page layout}
+
+\Question[Q-papersize]{The size of printed output}
+
+The final product of a \AllTeX{} run is something for a person to
+read. Often, nowadays, that product will be read ``on-screen'', but
+the printed page remains a principal output form.
+
+When we come to print our output, it is important that the output fits
+on the paper; in some cases, for the output to ``fit'' is good enough.
+However, there are circumstances where the actual size of the printed
+output, on the page, is crucial to the acceptance of the output.
+(This might happen when the output is a book to be published, or when
+it's a dissertation which must match the fancies of some bureaucrat
+even to be considered.)
+
+Sadly, we often find that the printed output doesn't conform to our
+expectations\dots{}
+
+The check-list for such problems has two entries:
+\begin{itemize}
+\item Your output is generated via Adobe \ProgName{Reader} (or
+ possibly ``\ProgName{Acrobat Reader}''~--- older versions of the
+ program had the qualified name). In this case, it may be that
+ \ProgName{Reader} is willfully changing the size of your output:
+ read \Qref*{\ProgName{Reader} antics}{Q-acroantics}.
+\item Something in your \TeX{} system is producing the wrong size (or
+ shape) of output: read \Qref*{paper geometry}{Q-papergeom}.
+\end{itemize}
+
+An alternative approach is to use the (excellent) \Package{testflow}
+suite, that provides a detailed outline of the potential problems
+together with a sample document and prototype outputs.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}testflow bundle]\CTANref{testflow}
+\end{ctanrefs}
+
+\Question[Q-acroantics]{Adobe \ProgName{Reader} messing with print size}
+\AliasQuestion{Q-outszwrng}
+
+Printing from Adobe \ProgName{Reader} shrinks the page ``to fit''
+(\emph{by default}). Unfortunately, its calculation doesn't consider
+the existing margins of the document, so that it shrinks what it
+believes is your whole page onto what it believes is its output page.
+The effect typically looks as if your margins have expanded.
+
+Solve this problem by adjusting the \ProgName{Reader}'s default in the
+print dialogue; unfortunately, this dialogue varies from one version
+to the next:
+\begin{itemize}
+\item \ProgName{Reader} version 7:\\
+ Page Scaling (default: ``Fit to printer margins'')~--- change to
+ ``None'', and\\
+ Scale (default 95\textpercent{} of Normal size)~--- change to
+ ``100\textpercent{}''.
+\item Adobe Reader 6:\\
+ in the print dialogue, on the ``copies \& pages'' pane, you'll find a
+ popup menu/drop-down list titled ``Page Scaling''~--- change to ``None''.
+\item Windows, Linux Acrobat (Reader) 5.0:\\
+ In the print dialog, make sure the ``Shrink oversized pages to fit''
+ checkbox is unchecked. It may also be useful to uncheck the
+ ``Expand small pages to fit paper size'' checkbox as well.
+\end{itemize}
+
+\Question[Q-papergeom]{Getting the right paper geometry from \AllTeX{}}
+
+If your output is the wrong size, and you've checked that it's not due
+to the \Qref*{ministrations of Adobe \ProgName{Reader}}{Q-acroantics},
+the problem is probably that your \AllTeX{} system is producing output
+that specifies the wrong paper size. Paper sizes can be a pain:
+they're a forgotten backwater~--- Knuth seems not to have considered
+paper size as something the \TeX{} engine needs to know about. As a
+result, there is no \acro{DVI} command to specify the paper on which
+the document should be printed, which has led a dichotomy where macros
+shape the text according to the needs of the author's chosen paper
+size, and device drivers' choice happens independently of the macros'
+ideas.
+
+In practice, one usually finds that macro packages (such as \plaintex{} and
+\LaTeX{}) assume American ``letter'' paper size, by default; and since
+most distributions nowadays originate in Europe, the drivers usually
+default to \acro{ISO} ``A4'' paper size.
+
+This is (of course) pretty unsatisfactory. Users may select a
+different paper size for their document (current \LaTeX{} offers a
+range of sizes as options in the standard classes), pretty easily.
+Nevertheless, the user also has to be sure that each time
+\ProgName{xdvi}, \ProgName{dvips} (or whatever) runs, it uses the
+paper size the document was designed for.
+
+The default paper size for \acro{DVI} drivers may be changed by a
+distribution management command (\ProgName{texconfig} for \texlive{},
+the \ProgName{Options} application for \miktex{}), but this still
+doesn't provide for people using the ``wrong'' sort of paper for some
+reason.
+
+A different issue arises for users of \PDFTeX{}~--- the
+\acro{PDF} format \emph{does} have the means of expressing paper size
+and \PDFTeX{} has system variables \csx{pdfpagewidth} and
+\csx{pdfpageheight}, that are written into the output \acro{PDF} file.
+Unfortunately, most of the core software predates \PDFTeX{}, so not even
+\PDFLaTeX{} sets the correct values into those variables, to match the
+paper size specified in a \csx{documentclass} option.
+
+The \acro{DVI} drivers \ProgName{dvips}, \ProgName{dvipdfm} and its
+extensions (\ProgName{dvipdfmx} and \ProgName{xdvipdfmx}) define
+\csx{special} commands for the document to specify its own paper size;
+so in those cases, as when \PDFTeX{} is being used, the
+paper size can be programmed by the document. Users who wish to, may
+of course consult the manuals of the various programs to write the
+necessary code.
+
+The \Package{geometry} and \Package{zwpagelayout} packages (whose main
+business includes defining
+typeset page areas), also takes notice the size of the paper that the
+document is going to be printed on, and can issue the commands
+necessary to ensure the correct size of paper is used. If
+\Package{geometry} is used when a document is being processed by
+\PDFLaTeX{}, it can set the necessary dimensions ``in the output''.
+If the document is being processed by \LaTeX{} on a \TeX{} or \eTeX{}
+engine, there are package options which instruct \Package{geometry}
+which \csx{special} commands to use. (Note that the options are
+ignored if you are using \PDFLaTeX{}.)
+
+So, one resolution of the problem, when you are using \latex{}, is to add
+\begin{quote}
+\begin{verbatim}
+\usepackage[processor-option,...]{geometry}
+\end{verbatim}
+\end{quote}
+Where \pkgoption{processor-option} tells the package what will produce
+your (\PS{} or \acro{PDF} output~--- \Package{geometry} knows about
+\pkgoption{dvips} and \pkgoption{dvipdfm} (\pkgoption{dvipdfm} also
+serves for the extension \ProgName{dvipdfmx} and
+\ProgName{xdvipdfmx}).
+
+If you're using \PDFLaTeX{} or \xetex{}, load with
+\begin{quote}
+\begin{verbatim}
+\usepackage[program-option,...]{geometry}
+\end{verbatim}
+\end{quote}
+where \pkgoption{program-option} is \pkgoption{pdftex},
+\pkgoption{xetex}.
+
+The alternative, \Package{zwpagelayout} requires a \pkgoption{driver}
+option:
+\begin{quote}
+\begin{verbatim}
+\usepackage[driver=value,...]{zwpagelayout}
+\end{verbatim}
+\end{quote}
+(permissible \meta{values} are \pkgoption{pdftex}, \pkgoption{xetex}
+and \pkgoption{dvips}; the default value is \pkgoption{unknown}).
+
+Needless to say, both the ``big'' classes (\Class{koma-script} and
+\Class{memoir}) provide their own ways to get the paper size
+``right''.
+
+The \Package{typearea} package is the \Class{Koma-script}
+distribution's way of providing page layout functionality. Load it
+with the \pkgoption{pagesize} option and it will ensure the correct
+paper is selected, for \acro{PDF} output from \PDFLaTeX{}, and for
+\PS{} output from \LaTeX{} via \ProgName{dvips}.
+
+\Class{Memoir} has the standard classes' paper-size selections
+(\pkgoption{a4paper}, \pkgoption{letterpaper} and so on), but also
+permits the user to choose an arbitrary paper size, by setting the
+length registers \csx{stockheight} and \csx{stockwidth}. The commands
+\csx{fixdvipslayout} (for \LaTeX{} processing), and \csx{fixpdflayout}
+(for \PDFLaTeX{} processing) then instruct the processor to produce
+output that specifies the necessary paper size.
+\begin{ctanrefs}
+\item[geometry.sty]\CTANref{geometry}
+\item[memoir.cls]\CTANref{memoir}
+\item[typearea.sty]Distributed as part of \CTANref{koma-script}[typearea]
+\item[zwpagelayout.sty]\CTANref{zwpagelayout}
+\end{ctanrefs}
+\LastEdit{2011-12-12}
+
+\Question[Q-changemargin]{Changing the margins in \LaTeX{}}
+
+Changing the layout of a document's text on the page involves several
+subtleties not often realised by the beginner. There are interactions
+between fundamental \TeX{} constraints, constraints related to the
+design of \LaTeX{}, and good typesetting and design practice, that
+mean that any change must be very carefully considered, both to ensure
+that it ``works'' and to ensure that the result is pleasing to the
+eye.
+
+\LaTeX{}'s defaults sometimes seem excessively conservative,
+but there are sound reasons behind how Lamport designed the layouts
+themselves, whatever one may feel about his overall design. For
+example, the common request for ``one-inch margins all round on A4
+paper'' is fine for 10- or 12-pitch typewriters, but not for 10pt (or
+even 11pt or 12pt) type because readers find such wide, dense, lines
+difficult to read. There should ideally be no more than 75 characters
+per line (though the constraints change for two-column text).
+
+So Lamport's warning to beginners in his section on `Customizing the
+Style'~--- ``don't do it''~--- should not lightly be ignored.
+
+This set of \acro{FAQ}s recommends that you use a package to establish
+consistent settings of the parameters: the interrelationships are
+taken care of in the established packages, without you \emph{needing}
+to think about them, but remember~--- the packages only provide
+consistent, working, mechanisms: they don't analyse the quality of
+what you propose to do.
+
+The following answers deal with the ways one may choose to proceed:
+\begin{itemize}
+\item \Qref*{Choose which package to use}{Q-marginpkgs}.
+\item \Qref*{Find advice on setting up page layout by hand}{Q-marginmanual}.
+\end{itemize}
+There is a related question~--- how to change the layout
+temporarily~--- and there's an answer that covers that, too:
+\begin{itemize}
+\item \Qref*{Change the margins on the fly}{Q-chngmargonfly}.
+\end{itemize}
+
+\Question[Q-marginpkgs]{Packages to set up page designs}
+
+There are two trustworthy tools for adjusting the dimensions and position of the
+printed material on the page are \Package{geometry} and the
+\Package{zwpagelayout} packages; a very
+wide range of adjustments of the layout may be relatively
+straightforwardly programmed with either, and package documentation is good and
+comprehensive.
+
+As is usual, users of the \Class{memoir} class have built-in
+facilities for this task, and users of the \Class{KOMA-script} classes
+are recommended to use an alternative package, \Package{typearea}. In
+either case it is difficult to argue that users should go for
+\Package{geometry}: both alternatives are good.
+
+The documentation both of \Package{geometry} and of
+\Package{zwpagelayout} is rather overwhelming, and
+learning all of of either package's capabilities is likely to be more
+than you ever need.
+The \Package{vmargin} package is somewhat simpler to use: it has a
+canned set of paper sizes (a superset of that provided in \LaTeXe{}),
+provision for custom paper, margin adjustments and provision for
+two-sided printing.
+\begin{ctanrefs}
+\item[geometry.sty]\CTANref{geometry}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[layout.sty]Distributed as part of \CTANref{2etools}[layout]
+\item[memoir.cls]\CTANref{memoir}
+\item[typearea.sty]Distributed as part of \CTANref{koma-script}[typearea]
+\item[vmargin.sty]\CTANref{vmargin}
+\item[zwpagelayout.sty]\CTANref{zwpagelayout}
+\end{ctanrefs}
+\LastEdit{2011-12-12}
+
+\Question[Q-marginmanual]{How to set up page layout ``by hand''}
+
+So you're eager to do it yourself, notwithstanding the cautions
+\begin{flatversion}
+ outlined above (\Qref{}{Q-changemargin}).
+\end{flatversion}
+\begin{hyperversion}
+ outlined in ``\Qref{changing margins}{Q-changemargin}''.
+\end{hyperversion}
+
+It's important that you first start by familiarising yourself
+with LaTeX's page layout parameters. For example, see section C.5.3 of the
+\LaTeX{} manual (pp.~181-182), or corresponding sections in many of the other
+good \LaTeX{} manuals (see \Qref[question]{\LaTeX{} books}{Q-latex-books}).
+
+\LaTeX{} controls the page layout with a number of parameters, which
+allow you to change the distance from the edges of a page to the left
+and top edges of your typeset text, the width and height of the text,
+and the placement of other text on the page. However, they are
+somewhat complex, and it is easy to get their interrelationships wrong
+when redefining the page layout. The layout package defines a
+\csx{layout} command which draws a diagram of your existing page
+layout, with the dimensions (but not their interrelationships) shown.
+
+Even changing the text height and width, \csx{textheight} and
+\csx{textwidth}, requires more care than you might expect: the height
+should be set to fit a whole number of text lines (in terms of
+multiples of \csx{baselinskip}), and the width should be constrained
+by the number of characters per line, as mentioned in % ! line break
+``\Qref*{changing margins}{Q-changemargin}''.
+
+Margins are controlled by two parameters: \csx{oddsidemargin} and
+\csx{evensidemargin}, whose names come from the convention that
+odd-numbered pages appear on the right-hand side (`recto') of a
+two-page spread and even-numbered pages on the left-hand side
+(`verso'). Both parameters actually refer to the left-hand margin of
+the relevant pages; in each case the right-hand margin is specified by
+implication, from the value of \csx{textwidth} and the width of the
+paper. (In a one-sided document, which is the default in many
+classes, including the standard \Class{article} and \Class{report}
+classes, \csx{oddsidemargin} stands for both.)
+
+The
+``origin'' (the zero position) on the page is one inch from the top of
+the paper and one inch from the left side; positive horizontal
+measurements extend right across the page, and positive vertical
+measurements extend down the page. Thus, the parameters
+\csx{evensidemargin}, \csx{oddsidemargin} and \csx{topmargin}, should
+be set to be 1~inch less than the true margin; for margins closer to
+the left and top edges of the page than 1~inch, the margin parameters
+must be set to negative values.
+
+\Question[Q-chngmargonfly]{Changing margins ``on the fly''}
+
+One of the surprises characteristic of \TeX{} use is that you cannot
+change the width or height of the text within the document, simply by
+modifying the text size parameters; \TeX{} can't change the text width
+on the fly, and \LaTeX{} only ever looks at text height when starting
+a new page.
+
+So the simple rule is that the parameters should only be
+changed in the preamble of the document, i.e., before the
+\cmdinvoke{begin}{document} statement (so before any typesetting has
+happened.
+
+To adjust text width within a document we define an environment:
+\begin{quote}
+\begin{verbatim}
+\newenvironment{changemargin}[2]{%
+ \begin{list}{}{%
+ \setlength{\topsep}{0pt}%
+ \setlength{\leftmargin}{#1}%
+ \setlength{\rightmargin}{#2}%
+ \setlength{\listparindent}{\parindent}%
+ \setlength{\itemindent}{\parindent}%
+ \setlength{\parsep}{\parskip}%
+ }%
+ \item[]}{\end{list}}
+\end{verbatim}
+\end{quote}
+The environment takes two arguments, and will indent the left and
+right margins, respectively, by the parameters' values. Negative
+values will cause the margins to be narrowed, so
+\cmdinvoke{begin}{changemargin}{-1cm}{-1cm} narrows the left and right
+margins by 1 centimetre.
+
+Given that \TeX{} can't do this, how does it work?~--- well, the
+environment (which is a close relation of the \LaTeX{}
+\environment{quote} environment) \emph{doesn't} change the text width
+as far as \TeX{} is concerned: it merely moves text around inside the
+width that \TeX{} believes in.
+
+The \Package{changepage} package provides ready-built commands to do
+the above; it includes provision for changing the shifts applied to
+your text according to whether you're on an odd (\emph{recto}) or an
+even (\emph{verso}) page of a two-sided document.
+\Package{Changepage}'s structure matches that of the \Class{memoir}
+class.
+
+The (earlier) package \Package{chngpage} provides the same facilities,
+but it uses rather different syntax. \Package{Changepage}'s structure
+matches that of the \Class{memoir} class, and it should be used for
+any new work.
+
+Changing the vertical dimensions of a page is more clumsy still: the
+\LaTeX{} command \csx{enlargethispage} adjusts the size of the current
+page by the size of its argument. Common uses are
+\begin{quote}
+\begin{verbatim}
+\enlargethispage{\baselineskip}
+\end{verbatim}
+\end{quote}
+to make the page one line longer, or
+\begin{quote}
+\begin{verbatim}
+\enlargethispage{-\baselineskip}
+\end{verbatim}
+\end{quote}
+to make the page one line shorter. The process is (to an extent)
+simplified by the \Package{addlines} package: its \csx{addlines}
+command takes as argument the \emph{number} of lines to add to the
+page (rather than a length): the package documentation also provides a
+useful analysis of when the command may (or may not) be expected to
+work.
+\begin{ctanrefs}
+\item[addlines.sty]\CTANref{addlines}
+\item[changepage.sty]\CTANref{changepage}
+\end{ctanrefs}
+\LastEdit{2011-06-01}
+
+\Question[Q-nopageno]{How to get rid of page numbers}
+\AliasQuestion{ps@empty}
+
+Very occasionally, one wants a document with no page numbers. For
+such occasions, the package \Package{nopageno} will make
+\cmdinvoke{pagestyle}{plain} have the same effect as
+\cmdinvoke{pagestyle}{empty}; in simple documents, this will suppress
+all page numbering (it will not work, of course, if the document uses
+some other pagestyle than \environment{plain}).
+
+To suppress page numbers from a sequence of pages, you may use
+\cmdinvoke{pagestyle}{empty} at the start of the sequence, and restore
+the original page style at the end. Unfortunately, you still have to
+deal with the page numbers on pages containing a \csx{maketitle},
+\csx{part} or \csx{chapter} command, since the standard classes; deal
+with those separately, as described below.
+
+To suppress page numbers on a single page, use
+\cmdinvoke{thispagestyle}{empty} somewhere within the text of the
+page. Note that, in the standard classes, \csx{maketitle} and
+\csx{chapter} use \csx{thispagestyle} internally, so your call
+must be \emph{after} those commands.
+
+Unfortunately, \csx{thispagestyle} doesn't work for \Class{book} or
+\Class{report} \csx{part} commands: they set the page style (as do
+\csx{chapter} commands), but then they advance to the next page so
+that you have no opportunity to change the style using
+\csx{thispagestyle}. The present author has proposed solving the
+problem with the following ``grubby little patch'', on
+\Newsgroup{comp.text.tex}:
+\begin{quote}
+\begin{verbatim}
+\makeatletter
+\let\sv@endpart\@endpart
+\def\@endpart{\thispagestyle{empty}\sv@endpart}
+\makeatother
+\end{verbatim}
+\end{quote}
+Fortunately, that patch has now been incorporated in a small package
+\Package{nonumonpart} (a difficult name\dots)
+
+Both the \Class{KOMA-script} classes and \Class{memoir} have separate
+page styles for the styles of various ``special'' pages, so, in a
+\Class{KOMA} class document one might say:
+\begin{quote}
+\begin{verbatim}
+\renewcommand*{\titlepagestyle}{empty}
+\end{verbatim}
+\end{quote}
+while \Class{memoir} will do the job with
+\begin{quote}
+ \cmdinvoke{aliaspagestyle}{title}{empty}
+\end{quote}
+
+An alternative (in all classes) is to use the rather delightful
+\cmdinvoke{pagenumbering}{gobble}; this has the simple effect that any
+attempt to print a page number produces nothing, so there's no issue
+about preventing any part of \LaTeX{} from printing the number.
+However, the \csx{pagenumbering} command does have the side effect that
+it resets the page number (to 1), so it is unlikely to be helpful
+other than at the beginning of a document.
+
+The \Package{scrpage2} package separates out the representation of the
+page number (it typesets the number using the \csx{pagemark} command) from
+the construction of the page header and footer; so one can say
+\begin{quote}
+\begin{verbatim}
+\renewcommand*{\pagemark}{}
+\end{verbatim}
+\end{quote}
+which will also suppress the printing of the page number.
+
+Neither of these ``suppress the page number'' techniques touches the
+page style in use; in practice this means they don't make sense unless
+you are using \cmdinvoke{pagestyle}{plain}
+\begin{ctanrefs}
+\item[fancyhdr.sty]\CTANref{fancyhdr}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[nonumonpart.sty]\CTANref{nonumonpart}
+\item[nopageno.sty]\CTANref{nopageno}
+\item[scrpage2.sty]Distributed as part of \CTANref{koma-script}
+\end{ctanrefs}
+\LastEdit{2011-04-16}
+
+\Question[Q-crop]{How to create crop marks}
+
+If you're printing something that's eventually to be reproduced in
+significant quantities, and bound, it's conventional to print on paper
+larger than your target product, and to place ``crop marks'' outside
+the printed area. These crop marks are available to the production
+house, for lining up reproduction and trimming machines.
+
+You can save yourself the (considerable) trouble of programming these
+marks for yourself by using the package \Package{crop}, which has
+facilities to satisfy any conceivable production house. Users of the
+\Class{memoir} class don't need the package, since \Class{memoir} has
+its own facilities for programming crop marks.
+\begin{ctanrefs}
+\item[crop.sty]\CTANref{crop}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-watermark]{`Watermarks' on every page}
+
+It's often useful to place some text (such as `DRAFT') in the
+background of every page of a document. For \LaTeX{} users, the
+simplest way to do this uses the \Package{draftcopy} package. This
+can deal with
+many types of \acro{DVI} processors (in the same way that the graphics
+package does) and knows translations for the word `DRAFT' into a wide
+range of languages (though you can choose your own word, too).
+Unfortunately, however, the package relies on \PS{} specials, and will
+therefore fail if you are viewing your document with \ProgName{xdvi},
+and won't even compile if you're using \PDFLaTeX{}. (\PDFLaTeX{}
+users need one of the other solutions below.)
+
+The \Package{wallpaper} package builds on \Package{eso-pic} (see
+below). Apart from the single-image backdrops described above
+(``wallpapers'', of course, to this package), the package provides
+facilities for tiling images. All its commands come in pairs: one for
+``general'' use, and one applying to the current page only.
+
+The \Package{draftwatermark} package uses the same author's
+\Package{everypage} package to provide a simple interface for adding
+textual (`DRAFT'-like) watermarks.
+
+The \Package{xwatermark} package provides very flexible watermarking,
+with a ``modern'' (key-value) interface.
+
+More elaborate watermarks may be achieved using the \Package{eso-pic}
+package, or by using \Package{everypage} (see below).
+\Package{Eso-pic} attaches a \environment{picture} environment to
+every page as it is shipped out; the user can put things into that
+environment: the package provides commands for placing things at
+certain useful points (like ``text upper left'' or ``text centre'') in
+the picture, but the user is at liberty to do what he or she likes.
+
+\Package{Eso-pic} is, in turn, built upon the package
+\Package{atbegshi}. That package has the capability to produce
+watermarks \emph{on top of} the other material on the page; this
+doesn't sound very ``watermark-like'', but can be useful on pages
+where the watermark would otherwise be hidden by graphics or the
+like. The \Package{atbegshi} command that \Package{eso-pic} uses is
+\csx{AtBeginShipoutUpperLeft}; \csx{AtBeginShipoutUpperLeftForeground}
+is what's needed instead to place the material on top of the rest of
+the content of the page.
+
+\Package{Everypage} allows you to add ``something'' to every page, or
+to a particular page; you therefore need to construct your own
+apparatus for anything complicated.
+
+Finally, one can use the \ProgName{pdftk} untility; with it, the
+command:
+\begin{quote}
+\begin{verbatim}
+pdftk a.pdf background b.pdf output c.pdf
+\end{verbatim}
+\end{quote}
+will recreate \File{a.pdf} as \File{c.pdf}, having used the first page
+of \File{b.pdf} as background on every page. If you have a standard
+background (``DRAFT'' or ``SECRET'', or whatever) used in several
+files, \ProgName{pdftk} might well be attractive.
+
+\ProgName{Pdftk} is available as a command line tool; it is available
+in most linux distritbutions, but may be downloaded from its
+% ! line break
+\href{http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/}{home site}
+\begin{ctanrefs}
+\item[atbegshi.sty]Distributed as part of \CTANref{oberdiek}[atbegshi]
+\item[draftcopy.sty]\CTANref{draftcopy}
+\item[draftwatermark.sty]\CTANref{draftwatermark}
+\item[eso-pic.sty]\CTANref{eso-pic}
+\item[everypage.sty]\CTANref{everypage}
+\item[everyshi.sty]Distributed as part of \CTANref{ms}[everyshi]
+\item[wallpaper.sty]\CTANref{wallpaper}
+\end{ctanrefs}
+
+\Question[Q-landscape]{Typesetting things in landscape orientation}
+
+It's often necessary to typeset part of a document in landscape
+orientation; to achieve this, one needs not only to change the page
+dimensions, but also to instruct the output device to print the
+strange page differently.
+
+There are two ``ordinary'' mechanisms for doing two slight variations
+of landscape typesetting:
+\begin{itemize}
+\item If you have a single floating object that is wider than it is
+ deep, and will only fit on the page in landscape orientation, use
+ the \Package{rotating} package; this defines
+ \environment{sidewaysfigure} and \environment{sidewaystable}
+ environments which create floats that occupy a whole page.
+
+ Note that \Package{rotating} has problems in a document that also
+ loads the \Package{float} package, which recommended in other
+ answers in these \acro{FAQ}s, for example that on
+ \Qref*{float placement}{Q-floats}. The \Package{rotfloat} package
+ loads \Package{rotating} for you, and smooths the interaction with
+ \Package{float}.
+\item If you have a long sequence of things that need to be typeset in
+ landscape (perhaps a code listing, a wide \environment{tabbing}
+ environment, or a huge table typeset using \Package{longtable} or
+ \Package{supertabular}), use the \Package{lscape} package (or
+ \Package{pdflscape} if you're generating \acro{PDF} output, whether
+ using \PDFLaTeX{} or \ProgName{dvips} and generating \acro{PDF} from
+ that). Both packages define an environment \environment{landscape}, which
+ clears the current page and restarts typesetting in landscape
+ orientation (and clears the page at the end of the environment
+ before returning to portrait orientation).
+\end{itemize}
+No currently available package makes direct provision for typesetting
+in both portrait and landscape orientation on the same page (it's not
+the sort of thing that \TeX{} is well set-up to do). If such
+behaviour was an absolute necessity, one might use the techniques
+described in
+% beware line-wrap
+\Qref[question]{"flowing text around figures"}{Q-textflow}, and would
+rotate the landscape portion using the rotation facilities of the
+\Package{graphics} package. (Returning from landscape to portrait
+orientation would be somewhat easier: the portrait part of the page
+would be a bottom float at the end of the landscape section, with its
+content rotated.)
+
+To set an entire document in landscape orientation, one might use
+\Package{lscape} around the whole document. A better option is the
+\pkgoption{landscape} option of the \Package{geometry} package; if you
+also give it \pkgoption{dvips} or \pkgoption{pdftex} option,
+\Package{geometry} also emits the rotation instructions to cause the
+output to be properly oriented. The \Class{memoir} class has the same
+facilities, in this respect, as does \Package{geometry}.
+
+A word of warning: most current \TeX{} previewers do not honour
+rotation requests in \acro{DVI} files.
+%% (the exception is
+%% (the exceptions are the
+%% \begin{htmlversion}
+%% (\Qref{commercial}{Q-commercial}) \YandY{} previewer
+%% \ProgName{dviwindo},
+%% \end{htmlversion}
+%% \htmlignore
+%% (commercial) \YandY{} previewer \ProgName{dviwindo}
+%% (\Qref{}{Q-commercial}),
+%% \endhtmlignore
+%% and
+%% the fp\TeX{} previewer Win\acro{DVI}). If your previewer is not
+%% capable of rotation,
+Your best bet is to convert your output to \PS{} or to \acro{PDF}, and
+to view these `final' forms with an appropriate viewer.
+\begin{ctanrefs}
+\item[geometry.sty]\CTANref{geometry}
+\item[graphics.sty]Distributed as part of \CTANref{graphics}
+\item[longtable.sty]Distributed as part of \CTANref{2etools}[longtable]
+\item[lscape.sty]Distributed as part of \CTANref{graphics}[lscape]
+\item[memoir.cls]\CTANref{memoir}
+\item[pdflscape.sty]Distributed with Heiko Oberdiek's packages
+ \CTANref{oberdiek}[pdflscape]
+\item[rotating.sty]\CTANref{rotating}
+\item[rotfloat.sty]\CTANref{rotfloat}
+\item[supertabular.sty]\CTANref{supertabular}
+\end{ctanrefs}
+
+\Question[Q-abspos]{Putting things at fixed positions on the page}
+
+\TeX{}'s model of the world is (broadly speaking) that the author
+writes text, and \TeX{} and its macros decide how it all fits on the
+page. This is not good news for the author who has, from whatever
+source, a requirement that certain things go in exactly the right
+place on the page.
+
+There \emph{are} places on the page, from which things may be hung,
+and two \LaTeX{} packages allow you position things relative to such
+points, thus providing a means of absolute positioning.
+
+The \Package{textpos} package aids the construction of pages from
+``blobs'', dotted around over the page (as in a poster); you give it
+the location, and it places your typeset box accordingly.
+
+The \Package{eso-pic} defines a ``shipout picture'' that covers the
+page. The user may add \environment{picture}-mode commands to this
+picture, which of course can include box placements as well as the
+other rather stilted commands of \environment{picture}-mode.
+(\Package{Eso-pic} requires the services of \Package{everyshi}, which
+must therefore also be available.)
+%
+% Fortunately, in the \LaTeX{} world at least, there \emph{is} a fixed
+% point on every page, to whit the page header. The package
+% \Package{textpos} latches bits of typesetting to locations you
+% specify, by fixing them to the page header, and thereby solves the
+% problem.
+\begin{ctanrefs}
+\item[eso-pic.sty]\CTANref{eso-pic}
+\item[everyshi.sty]Distributed as part of \CTANref{ms}[everyshi]
+\item[textpos.sty]\CTANref{textpos}
+\end{ctanrefs}
+
+\Question[Q-nopagebrk]{Preventing page breaks between lines}
+
+One commonly requires that a block of typeset material be kept on the
+same page; it turns out to be surprisingly tricky to arrange this.
+
+\LaTeX{} provides a \environment{samepage} environment which claims it
+does this sort of thing for you. It proceeds by setting infinite
+penalties for all sorts of page-break situations; but in many
+situations where you want to prevent a page break,
+\environment{samepage} doesn't help. If you're trying to keep running
+text together, you need to end the paragraph inside the environment
+(see \Qref[question]{preserving paragraph parameters}{Q-paraparam}).
+Also, if the things you are trying to keep together insert their own
+pagebreak hints, \environment{samepage} has no power over them (though
+list items' attempts~--- they suggest page breaks between items~---
+are subverted by \environment{samepage}). Naturally, if
+\environment{samepage} \emph{does} work, it is capable of leaving
+stuff jutting out at the bottom of the page.
+
+Another convenient trick is to set all the relevant stuff in a
+\csx{parbox} (or a \environment{minipage} if it contains things like
+verbatim text that may not be used in the argument of a \csx{parbox}).
+The resulting box certainly \emph{won't} break between pages, but
+that's not to say that it will actually do what you want it to do:
+again, the box may be left jutting out at the bottom of the page.
+
+Why do neither of these obvious things work?~--- Because \TeX{} can't
+really distinguish between infinitely awful things.
+\environment{Samepage} will make any possible break point ``infinitely
+bad'' and boxes don't even offer the option of breaks, but if the
+alternative is the leave an infinitely bad few centimetres of blank
+paper at the bottom of the page, \TeX{} will take the line of least
+resistance and do nothing.
+
+This problem still arises even if you have \csx{raggedbottom} in
+effect: \TeX{} doesn't notice the value of \emph{that} until it starts
+actually shipping a page out. One approach is to set:
+\begin{quote}
+\begin{verbatim}
+\raggedbottom
+\addtolength{\topskip}{0pt plus 10pt}
+\end{verbatim}
+\end{quote}
+The \texttt{10pt} offers a hint to the output routine that the column is
+stretchable; this will cause \TeX{} to be more tolerant of the need to
+stretch while building the page. If you're doing this as a temporary
+measure, cancel the change to \csx{topskip} by:
+\begin{quote}
+\begin{verbatim}
+\addtolength{\topskip}{0pt plus-10pt}
+\end{verbatim}
+\end{quote}
+as well as resetting \csx{flushbottom}. (Note that the \texttt{10pt} never
+actually shows up, because it is overwhelmed when the page is shipped
+out by the stretchability introduced by \csx{raggedbottom}; however, it
+could well have an effect if \csx{flushbottom} was in effect.)
+
+An alternative (which derives from a suggestion by Knuth in the
+\TeX{}book) is the package \Package{needspace} or the \Class{memoir} class,
+which both define a command \csx{needspace} whose argument tells it
+what space is needed. If the space isn't available, the current page
+is cleared, and the matter that needs to be kept together will be
+inserted on the new page. For example, if 4~lines of text need to be
+kept together, the sequence
+\begin{quote}
+\begin{verbatim}
+\par
+\needspace{4\baselineskip}
+% the stuff that must stay together
+<text generating lines 1-4>
+% now stuff we don't mind about
+\end{verbatim}
+\end{quote}
+Yet another trick by Knuth is useful if you have a sequence of small
+blocks of text that need, individually, to be kept on their own page.
+Insert the command \csx{filbreak} before each small block, and the
+effect is achieved. The technique can be used in the case of
+sequences of \LaTeX{}-style sections, by incorporating \csx{filbreak}
+into the definition of a command (as in % beware line break
+\Qref[question]{patching commands}{Q-patch}). A simple and effective
+patch would be:
+\begin{quote}
+\begin{verbatim}
+\let\oldsubsubsection=\subsubsection
+\renewcommand{\subsubsection}{%
+ \filbreak
+ \oldsubsubsection
+}
+\end{verbatim}
+\end{quote}
+While the trick works for consecutive sequences of blocks, it's
+slightly tricky to get out of such sequences unless the sequence is
+interrupted by a forced page break (such as \csx{clearpage}, which may
+be introduced by a \csx{chapter} command, or the end of the document).
+If the sequence is not interrupted, the last block is likely to be
+forced onto a new page, regardless of whether it actually needs it.
+
+If one is willing to accept that not everything can be accomplished
+totally automatically, the way to go is to typeset the document and to
+check for things that have the potential to give trouble. In such a
+scenario (which has Knuth's authority behind it, if one is to believe
+the rather few words he says on the subject in the \TeX{}book) one can
+decide, case by case, how to deal with problems at the last
+proof-reading stage. At this stage, you can manually alter page
+breaking, using either \csx{pagebreak} or \csx{clearpage}, or you can
+place a \csx{nopagebreak} command to suppress unfortunate breaks.
+Otherwise, you can make small adjustments to the page geometry, using
+\csx{enlargethispage}. Supposing you have a line or two that stray:
+issue the command \cmdinvoke{enlargethispage}{2\csx{baselineskip}} and
+two lines are added to the page you're typesetting. Whether this
+looks impossibly awful or entirely acceptable depends on the document
+context, but the command remains a useful item in the armoury.
+
+Note that both \csx{pagebreak} and \csx{nopagebreak} take an optional
+number argument to adjust how the command is to be interpreted. Thus
+\cmdinvoke{pagebreak}[0], the command `suggests' that a page break
+might be worth doing, whereas \cmdinvoke{pagebreak}[4] `demands' a
+page break. Similarly \cmdinvoke{nopagebreak}[0] makes a suggestion,
+while \cmdinvoke{nopagebreak}[4] is a demand. In both commands, the
+default value of the optional argument is 4.
+\begin{ctanrefs}
+\item[memoir.cls]\CTANref{memoir}
+\item[needspace.sty]\CTANref{needspace}
+\end{ctanrefs}
+
+\Question[Q-parallel]{Parallel setting of text}
+
+It's commonly necessary to present text in two languages `together' on a
+page, or on a two-page spread. For this to be satisfactory, one usually
+needs some sort of alignment between the two texts.
+
+The \Package{parallel} package satisfies the need, permitting
+typesetting in two columns (not necessarily of the same width) on one
+page, or on the two opposing pages of a two-page spread. Use can be
+as simple as
+\begin{quote}
+\begin{verbatim}
+\usepackage{parallel}
+...
+\begin{Parallel}{<left-width>}{<right-width}
+ \ParallelLText{left-text}
+ \ParallelRText{right-text}
+ \ParallelPar
+ ...
+\end{Parallel}
+\end{verbatim}
+\end{quote}
+\Package{Parallel} can get terribly confused with colour changes, in
+\PDFTeX{}; the indefatigable Heiko Oberdiek has a patch for this
+issue~--- the \Package{pdfcolparallel} package, which maintains
+separate colour stacks for the columns.
+
+The \Package{parcolumns} package can (in principle) deal with any
+number of columns: the documentation shows its use with three
+columns. Usage is rather similar to that of \Package{parallel},
+though there is of course a ``number of columns to specify'':
+\begin{quote}
+\begin{verbatim}
+\usepackage{parcolumns}
+...
+\begin{parcolumns}[<options>]{3}
+ \colchunk{<Column 1 text>}
+ \colchunk{<Column 2 text>}
+ \colchunk{<Column 3 text>}
+ \colplacechunks
+ ...
+\end{parcolumns}
+\end{verbatim}
+\end{quote}
+The \meta{options} can specify the widths of the columns, whether to
+place rules between the columns, whether to set the columns sloppy,
+etc. Again, there are issues with colours, which are addressed by the
+\Package{pdfcolparcolumns} package.
+
+The \Package{ledpar} package is distributed with (and integrated with)
+the \Qref{\Package{ledmac} package}{Q-linenos}. It provides parallel
+setting carefully integrated with the needs of a scholarly text,
+permitting translation, or notes, or both, to be set in parallel with
+the `base' text of the document.
+\begin{ctanrefs}
+\item[ledpar.sty]Distributed with \CTANref{ledmac}
+\item[parallel.sty]\CTANref{parallel}
+\item[parcolumns.sty]Distributed as part of \CTANref{sauerj}[parcolumns]
+\item[pdfcolparallel.sty]Distributed as part of \CTANref{oberdiek}[pdfcolparallel]
+\item[pdfcolparcolumns.sty]pdfcolparcolumns]
+\end{ctanrefs}
+
+\Question[Q-epigraph]{Typesetting epigraphs}
+
+Epigraphs are those neat quotations that authors put at the start of
+chapters (or even at the end of chapters: Knuth puts things at the
+ends of chapters of the \TeX{}book).
+
+Typesetting them is a bit of a fiddle, but not impossible to do for
+yourself. Fortunately, there are two packages that do the job, to
+some extent; there are also facilities in the two ``big'' classes
+(\Class{memoir} and \Class{koma-script}.
+
+The \Package{epigraph} package defines an \csx{epigraph} command, for
+creating a single
+epigraph (as at the top of a chapter):
+\begin{quote}
+\begin{verbatim}
+\chapter{The Social Life of Rabbits}
+\epigraph{Oh! My ears and whiskers!}%
+ {Lewis Carroll}
+\end{verbatim}
+\end{quote}
+and an epigraphs environment, for entering more than one epigraph
+consecutively, in a sort of list introduced by \csx{qitem} commands:
+\begin{quote}
+\begin{verbatim}
+\begin{epigraphs}
+\qitem{What I tell you three times is true}%
+ {Lewis Carroll}
+\qitem{Oh listen do, I'm telling you!}%
+ {A.A. Milne}
+\end{epigraphs}
+\end{verbatim}
+\end{quote}
+The \csx{epigraphhead} command enables you to place your epigraph
+\emph{above} a chapter header:
+\begin{quote}
+\begin{verbatim}
+\setlength{\unitlength}{1pt}
+...
+\chapter{The Social Life of Rabbits}
+\epigraphhead[<distance>]{%
+ \epigraph{Oh! My ears and whiskers!}%
+ {Lewis Carroll}%
+}
+\end{verbatim}
+\end{quote}
+The \meta{distance} says how far above the chapter heading the
+epigraph is to go; it's expressed in terms of the \csx{unitlength}
+that's used in the \environment{picture} environment; the package's
+author recommends \texttt{70pt}.
+
+The package also offers various tricks for adjusting the layout of
+chapter header (necessary if you've found a hugely long quotation for
+an \csx{epigraphhead}), for patching the bibliography, for patching
+\csx{part} pages, and so on. (Some of these suggested patches lead you
+through writing your own package\dots{})
+
+The \Package{quotchap} package redefines chapter headings (in a
+moderately striking way), and provides an environment
+\environment{savequotes} in which you can provide one (or more)
+quotations to use as epigraphs. The facilities seem not as flexible
+as those of \Package{epigraph}, but it's probably easier to use.
+
+The \Class{memoir} class offers all the facilities of the
+\Package{epigraph} package. The \Class{Koma-script} classes have
+commands \csx{setchapterpreamble} and \csx{dictum} to provide these
+facilities.
+\begin{ctanrefs}
+\item[epigraph.sty]\CTANref{epigraph}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[quotchap.sty]\CTANref{quotchap}
+\end{ctanrefs}
+
+% \Question[Q-outszwrng]{\AllTeX{} \acro{PDF} output prints at wrong size}
+
+% Having got everything \emph{else} right, you should be aware that the
+% problem may have nothing to do with \AllTeX{} and everything to do
+% with the program you use for printing. A regular cause for such
+% problems lies with Acrobat Reader, which by default enables its option
+% to scale pages to fit on the printable area of the paper. Since a
+% printer can rarely print right to the edge, this means that pdf-files
+% will be shrunk by some (small) factor (even if the pdf-file is
+% formatted for A4, and your paper size is set to A4 as well).
+
+% Correcting this silliness is not very hard, but the exact details
+% depend on the version of Acrobat Reader (or "Adobe Reader" from
+% version 6.0 onwards) you have installed:
+% \begin{itemize}
+% \item Mac OS X, Adobe Reader 6:\\
+% in the print dialogue, on the ``copies \& pages'' pane, you'll find a
+% popup menu titled ``Page Scaling''. Make sure that the menu reads
+% ``None''.
+% \item Windows, Adobe Reader 6:\\
+% in the print dialogue, select ``None'' from the drop-down list
+% ``Page Scaling''.
+% \item Windows, Linux Acrobat (Reader) 5.0:\\
+% In the print dialog, make sure the ``Shrink oversized pages to fit''
+% checkbox is unchecked. It may also be useful to uncheck the
+% ``Expand small pages to fit paper size'' checkbox as well.
+%\end{itemize}
+
+\subsection{Spacing of characters and lines}
+
+\Question[Q-linespace]{Double-spaced documents in \LaTeX{}}
+
+A quick and easy way of getting inter-line space for copy-editing is
+to change \csx{baselinestretch}~--- \cmdinvoke{linespread}{1.2} (or,
+equivalently \cmdinvoke{renewcommand}{\csx{baselinestretch}}{1.2}) may
+be adequate. Note that \csx{baselinestretch} changes don't take
+effect until you select a new font, so make the change in the preamble
+before any font is selected. Don't try changing \csx{baselineskip}:
+its value is reset at any size-changing command so that results will
+be inconsistent.
+
+For preference (and certainly for a production document, such as a
+dissertation or an article submission), use a line-spacing package.
+The only one currently supported is \Package{setspace}.
+\Package{Setspace} switches off double-spacing at places where even
+the most die-hard official would doubt its utility (footnotes, figure
+captions, and so on); it's very difficult to do this consistently if
+you're manipulating \csx{baselinestretch} yourself.
+
+(Note: do \emph{not} be tempted by \Package{doublespace}~--- its
+performance under current \LaTeX{} is at best problematical.)
+
+Of course, the real solution (other than for private copy editing) is
+\emph{not} to use double-spacing at all. Universities, in particular,
+have no excuse for specifying double-spacing in submitted
+dissertations: \LaTeX{} is a typesetting system, not a
+typewriter-substitute, and can (properly used) make single-spaced text
+even more easily readable than double-spaced typewritten text. If you
+have any influence on your university's system (for example, through
+your dissertation supervisor), it may be worth attempting to get the
+rules changed (at least to permit a ``well-designed book'' format).
+
+Double-spaced submissions are also commonly required when submitting
+papers to conferences or journals. Fortunately (judging by the
+questions from users in this author's department), this demand is
+becoming less common.
+
+Documentation of \Package{setspace} appears as \TeX{} comments in the
+package file itself.
+\begin{ctanrefs}
+\item[setspace.sty]\CTANref{setspace}
+\end{ctanrefs}
+\LastEdit{2013-10-28}
+
+\Question[Q-letterspace]{Changing the space between letters}
+
+A common technique in advertising copy (and other text whose actual
+content need not actually be \emph{read}) is to alter the space
+between the letters (otherwise known as the tracking). As a general
+rule, this is a very bad idea: it detracts from legibility, which is
+contrary to the principles of typesetting (any respectable font you
+might be using should already have optimum tracking built into it).
+
+The great type designer, Eric Gill, is credited with saying ``he who
+would letterspace lower-case text, would steal sheep''. (The
+attribution is probably apocryphal: others are also credited with the
+remark. Stealing sheep was, in the 19th century, a capital offence in
+Britain.) As the remark suggests, though, letterspacing of upper-case
+text is less awful a crime; the technique used also to be used for
+emphasis of text set in Fraktur (or similar) fonts.
+
+Straightforward macros (usable, in principle, with any \TeX{} macro
+package) may be found in \Package{letterspacing} (which is the name of
+the \extension{tex} file).
+
+%%% the package has a serious bug in it, so suppress mention pro tem
+%The \Package{tracking} package has similar facilities.
+
+A more comprehensive solution is to be found in the \Package{soul}
+package (which is optimised for use with \LaTeX{}, but also works with
+\plaintex{}). Soul also permits hyphenation of letterspaced text;
+Gill's view of such an activity is not (even apocryphally) recorded.
+(Spacing-out forms part of the name of \Package{soul}; the other half
+is described in \Qref[question]{another question}{Q-underline}.)
+
+Possibly the `ultimate' in this field is the \Package{microtype},
+which uses the micro-typography capabilities of current \PDFTeX{} to
+provide a \csx{textls} command, which operates according to parameters
+declared in a \csx{SetTracking} command. \Package{Microtype}'s
+`tracking' facility expands the natural spacing of the font itself,
+rather than inserting space between characters. Ordinarily,
+letter-spacing will destroy ligatures; however, this is \emph{wrong}
+for some font styles (for example, \FontName{fraktur}), and the
+package provides a means of protecting the ligatures in a
+letter-spaced text.
+\begin{ctanrefs}
+\item[letterspacing.tex]\CTANref{letterspacing}
+\item[microtype.sty]\CTANref{microtype}
+\item[soul.sty]\CTANref{soul}
+%\item[tracking.sty]\CTANref{tracking}
+\end{ctanrefs}
+
+\Question[Q-ragright]{Setting text ragged right}
+
+The trick with typesetting ragged right is to be sure you've told the
+\TeX{} engine ``make this paragraph ragged, but never \emph{too}
+ragged''. The \LaTeX{} \csx{raggedright} command (and the
+corresponding \environment{flushleft} environment) has a tendency to
+miss the ``never'' part, and will often create ridiculously short
+lines, for some minor benefit later in the paragraph. The
+\plaintex{} version of the command doesn't suffer this failing, but
+is rather conservative: it is loath to create too large a gap at the
+end of the line, but in some circumstances~--- such as where
+\Qref*{hyphenation is suppressed}{Q-hyphoff}~--- painfully large gaps
+may sometimes be required.
+
+Martin Schr\"oder's \Package{ragged2e} package offers the best of both
+worlds: it provides raggedness which is built on the \plaintex{}
+model, but which is easily configurable. It defines easily-remembered
+command (e.g., \csx{RaggedRight}) and environment (e.g.,
+\environment{FlushLeft}) names that are simply capitalised
+transformations of the \LaTeX{} kernel originals. The documentation
+discusses the issues and explains the significance of the various
+parameters of \Package{ragged2e}'s operation.
+\begin{ctanrefs}
+\item[ragged2e.sty]Distributed as part of \CTANref{ms}[ragged2e]
+\end{ctanrefs}
+
+\Question[Q-flushboth]{Cancelling \csx{ragged} commands}
+
+\LaTeX{} provides commands \csx{raggedright} and \csx{raggedleft}, but
+none to cancel their effect. The \csx{centering} command is
+implemented in the same way as the \csx{ragged*} commands, and suffers
+in the same way.
+
+The following code (to be inserted in a package of your own, or as
+\nothtml{internal \LaTeX{} code~---}% beware line break
+\Qref{internal \LaTeX{} code}{Q-atsigns}) defines a command that
+restores flush justification at both margins:
+\begin{verbatim}
+\def\flushboth{%
+ \let\\\@normalcr
+ \@rightskip\z@skip \rightskip\@rightskip
+ \leftskip\z@skip
+ \parindent 1.5em\relax}
+\end{verbatim}
+There's a problem with the setting of \csx{parindent} in the code: it's
+necessary because both the \csx{ragged} commands set \csx{parindent} to
+zero, but the setting isn't a constant of nature: documents using a
+standard \LaTeX{} class with \pkgoption{twocolumn} option will have
+\texttt{1.0em} by default, and there's no knowing what you (or some
+other class) will have done.
+
+Any but a really old copy of Martin Schr\"oder's \Package{ragged2e}
+package has a \csx{justifying} command to match its % ! line break
+\Qref*{versions of the \LaTeX{} `ragged' commands}{Q-ragright}. The
+package also provides a \environment{justify} environment, which
+permits areas of justified text in a larger area which is ragged.
+\begin{ctanrefs}
+\item[ragged2e.sty]Distributed as part of \CTANref{ms}[ragged2e]
+\end{ctanrefs}
+% this package hasn't materialised, for some reason i don't now
+% remember...
+%% Donald Arseneau's \Package{flushboth} package provides this code, and
+%% preserves a sensible value for \csx{parindent} (at begin document).
+%% This still doesn't protect it against any change you might make to
+%% \csx{parindent} within the body of your document.
+%% \begin{ctanrefs}
+%% \item[flushboth.sty]\CTANref{flushboth}
+%% \end{ctanrefs}
+
+\subsection{Typesetting specialities}
+
+\Question[Q-verbfile]{Including a file verbatim in \LaTeX{}}
+
+A good way is to use Rainer Sch\"opf's \Package{verbatim} package,
+which provides a command \csx{verbatiminput} that takes a file name as
+argument:
+\begin{quote}
+\begin{verbatim}
+\usepackage{verbatim}
+...
+\verbatiminput{verb.txt}
+\end{verbatim}
+\end{quote}
+Another way is to use the \environment{alltt} environment, which
+requires the \Package{alltt} package. The environment interprets its
+contents `mostly' verbatim, but executes any \AllTeX{} commands it
+finds:
+\begin{quote}
+\begin{verbatim}
+\usepackage{alltt}
+...
+\begin{alltt}
+\input{verb.txt}
+\end{alltt}
+\end{verbatim}
+\end{quote}
+of course, this is little use for inputting \AllTeX{} source
+code\dots{}
+
+The \Package{moreverb} package extends the \Package{verbatim} package,
+providing a \environment{listing} environment and a \csx{listinginput}
+command, which line-number the text of the file. The package also has
+a \csx{verbatimtabinput} command, that honours \acro{TAB} characters in
+the input (the package's \environment{listing} environment and the
+\csx{listinginput} command also both honour \acro{TAB}).
+
+The \Package{sverb} package provides verbatim input (without recourse
+to the facilities of the \Package{verbatim} package):
+\begin{quote}
+\begin{verbatim}
+\usepackage{sverb}
+...
+\verbinput{verb.txt}
+\end{verbatim}
+\end{quote}
+
+The \Package{fancyvrb} package offers configurable implementations of
+everything \Package{verbatim}, \Package{sverb} and \Package{moreverb}
+have, and more besides. It is nowadays the package of choice for the
+discerning typesetter of verbatim text, but its wealth of facilities
+makes it a complex beast and study of the documentation is strongly
+advised.
+
+The \Class{memoir} class includes the relevant functionality of the
+\Package{verbatim} and \Package{moreverb} packages.
+\begin{ctanrefs}
+\item[alltt.sty]Part of the \LaTeX{} distribution.
+\item[fancyvrb.sty]\CTANref{fancyvrb}
+\item[memoir.cls]\CTANref{memoir}
+\item[moreverb.sty]\CTANref{moreverb}
+\item[sverb.sty]Distributed as part of \CTANref{mdwtools}[sverb]
+\item[verbatim.sty]Distributed as part of \CTANref{2etools}[verbatim]
+\end{ctanrefs}
+
+\Question[Q-linenos]{Including line numbers in typeset output}
+
+For general numbering of lines, there are two packages for use with
+\LaTeX{}, \Package{lineno} (which permits labels attached to
+individual lines of typeset output) and \Package{numline}.
+(\Package{Numline} is considered obsolete, but remains available from
+the archive.)
+
+Both of these packages play fast and loose with the \LaTeX{} output
+routine, which can cause problems: the user should beware\dots{}
+
+If the requirement is for numbering verbatim text, \Package{moreverb},
+or \Package{fancyvrb} (see % ! line break
+\Qref[question]{including files verbatim}{Q-verbfile}) may be used.
+Class \Class{memoir} also provides the necessary facilities.
+
+One common use of line numbers is in critical editions of texts, and
+for this the \Package{edmac} package offers comprehensive support;
+\Package{ledmac} is a \LaTeX{} port of \Package{edmac}.
+
+The \Package{vruler} package sidesteps many of the problems associated
+with line-numbering, by offering (as its name suggests) a rule that
+numbers positions on the page. The effect is good, applied to
+even-looking text, but is poor in texts that involve breaks such as
+interpolated mathematics or figures. Documentation of the package, in
+the package itself, is pretty tough going, though there is an example
+(also inside the package file).
+\begin{ctanrefs}
+\item[edmac]\CTANref{edmac}
+\item[fancyvrb.sty]\CTANref{fancyvrb}
+\item[ledmac.sty]\CTANref{ledmac}
+\item[lineno.sty]\CTANref{lineno}
+\item[memoir.cls]\CTANref{memoir}
+\item[moreverb.sty]\CTANref{moreverb}
+\item[numline.sty]\CTANref{numline}
+\item[vruler.sty]\CTANref{vruler}
+\end{ctanrefs}
+
+\Question[Q-codelist]{Code listings in \LaTeX{}}
+
+`Pretty' code listings are sometimes considered worthwhile by the
+``ordinary'' programmer, but they have a serious place in
+the typesetting of dissertations by computer science and other
+students who are expected to write programs. Simple verbatim listings
+of programs are commonly useful, as well.
+
+\begin{hyperversion}
+ \Qref{Verbatim listings}{Q-verbfile} are dealt with elsewhere,
+\end{hyperversion}
+\begin{flatversion}
+ Verbatim listings are dealt with elsewhere (\Qref{}{Q-verbfile}),
+\end{flatversion}
+as is the problem of % ! line break
+\Qref*{typesetting algorithm specifications}{Q-algorithms}.
+
+The \Package{listings} package is widely regarded as the best bet for
+formatted output (it is capable of parsing program source, within the
+package itself), but there are several well-established packages that
+rely on a pre-compiler of some sort. You may use \Package{listings}
+to typeset snippets that you include within your source:
+\begin{quote}
+\begin{verbatim}
+\usepackage{listings}
+\lstset{language=C}
+...
+\begin{document}
+\begin{lstlisting}
+#include <stdio.h>
+
+int main(int argc, char ** argv)
+{
+ printf("Hello world!\n");
+ return 0;
+}
+\end{lstlisting}
+\end{document}
+\end{verbatim}
+\end{quote}
+or you can have it typeset whole files:
+\begin{quote}
+\begin{verbatim}
+\usepackage{listings}
+\lstset{language=C}
+...
+\begin{document}
+\lstinputlisting{main.c}
+\end{document}
+\end{verbatim}
+\end{quote}
+These very simple examples may be decorated in a huge variety of ways,
+and of course there are other languages in the package's vocabulary
+than just \ProgName{C}\dots{}
+
+For a long time, advice on \AllTeX{} lists seemed to regard
+\Package{listings} as the be-all and end-all on this topic. In the
+last few years, viable alternatives have appeared
+
+\ProgName{Highlight} is attractive if you need more than one output
+format for your program: as well as \AllTeX{} output,
+\ProgName{highlight} will produce (\acro{X})\acro{HTML}, \acro{RTF}
+and \acro{XSL}-\acro{FO} representations of your program listing. The
+manual leads you through the details of defining a parameter file for
+a ``new'' language, as well as the presentation details of a language.
+
+The \Package{minted} package is another alternative that offers
+the means of creating new language definitions. It
+requires that code be processed using an external (\ProgName{python})
+script, \href{http://pygments.org/}{\ProgName{Pygments}}.
+\ProgName{Pygments}, in turn, needs a ``lexer'' that knows the
+language you want to process; lots of these are available, for the
+more commonly-used languages, and there is advice on ``rolling your
+own'' on the % ! line break.
+<a href='http://pygments.org/docs/lexerdevelopment/'>\ProgName{Pygments} site</a>
+
+Usage of \Package{minted} can be as simple as
+\begin{quote}
+ \cmdinvoke{begin}{minted}{\meta{language}}\\
+ \dots{}\\
+ \cmdinvoke{end}{minted}
+\end{quote}
+which processes the program code dynamically, at typesetting time~---
+though such usage is likely to require that % ! line break
+\Qref*{separate processing be enabled}{Q-spawnprog}.
+
+On a rather different path, the package \Package{showexpl} supports
+typesetting \alltex{} code and its typeset output, in parallel
+`panes'. (Thiscould provide support for \alltex{} instruction texts,
+or for papers in \tex{} user group publications. The package uses
+\Package{listings} for its \alltex{} pane, and typesets the result
+into a simple box, for the other pane.
+
+Longer-established, and variously less ``powerful'' systems include:
+\begin{itemize}
+\item The \ProgName{lgrind} system is a well-established
+ pre-compiler, with all the facilities one might need and a wide
+ repertoire of languages; it is derived from the even
+ longer-established \ProgName{tgrind}, whose output is based on
+ \plaintex{}.
+\item The \ProgName{tiny_c2l} system is slightly more recent: users
+ are again encouraged to generate their own driver files for
+ languages it doesn't already deal with, but its ``tiny'' name
+ correctly hints that it's not a particularly elaborate system.
+\item The \ProgName{C++2LaTeX} system comes with strong
+ recommendations for use with \acro{C} and \acro{C}++.
+\item An extremely simple system is \ProgName{c2latex}, for which you
+ write \LaTeX{} source in your \acro{C} program comments. The
+ program then converts your program into a \LaTeX{} document for
+ processing. The program (implicitly) claims to be
+ ``self-documenting''.
+\end{itemize}
+\begin{ctanrefs}
+\item[c2latex]\CTANref{c2latex}
+\item[C++2LaTeX]\CTANref{c++2latex}
+\item[highlight]\CTANref{highlight}
+\item[lgrind]\CTANref{lgrind}
+\item[listings.sty]\CTANref{listings}
+\item[minted.sty]\CTANref{minted}
+\item[showexpl.sty]\CTANref{showexpl}
+\item[tgrind]\CTANref{tgrind}
+\item[tiny\_c2l]\CTANref{tiny_c2l}
+\end{ctanrefs}
+\LastEdit{2013-03-28}
+
+\Question[Q-algorithms]{Typesetting pseudocode in \LaTeX{}}
+
+There is no consensus on the `right' way to typeset pseudocode.
+Consequently, there are a variety of \LaTeX{} packages to choose from
+for producing \ae{}sthetically pleasing pseudocode listings.
+
+Pseudocode differs from actual program listings in that it lacks
+strict syntax and semantics. Also, because pseudocode is supposed to
+be a clear expression of an algorithm it may need to incorporate
+mathematical notation, figures, tables, and other \LaTeX{} features
+that do not appear in conventional programming languages.
+\begin{wideversion} % hyper?
+ \Qref{Typesetting program listings}{Q-codelist} is described
+ elsewhere.
+\end{wideversion}
+\begin{narrowversion} % non-hyper
+ Typesetting program listings is described elsewhere
+ (\Qref{}{Q-codelist}).
+\end{narrowversion}
+
+You can certainly create your own environment for typesetting
+pseudocode using, for example, the \environment{tabbing} or
+\environment{list} environments~--- it's not difficult, but it may
+prove boring. So it's worth trying the following packages, all
+designed specifically for typesetting pseudocode.
+
+The \Package{algorithms} bundle (which contains packages
+\Package{algorithm} and \Package{algorithmic}, both of which are
+needed for ordinary use) has a simple interface and produces fairly
+nice output. It provides primitives for statements, which can contain
+arbitrary \LaTeX{} commands, comments, and a set of iterative and
+conditional constructs. These primitives can easily be redefined to
+produce different text in the output. However, there is no support
+for adding new primitives. Typesetting the pseudocode itself is
+performed in \Package{algorithmic}; the \Package{algorithms} package
+uses the facilities of the \Package{float} package to number
+algorithms sequentially, enable algorithms to float like figures or
+tables, and support including a List of Algorithms in a document's
+front matter.
+
+Packages in the \Package{algorithmicx} bundle are similar both in
+concept and output form to \Package{algorithmic} but additionally
+provide support for adding new keywords and altering the formatting.
+It provides the \Package{algpseudocode} package which is (almost) a
+drop-in replacement for \Package{algorithmic}. Another package in the
+bundle, \Package{algpascal}, uses Pascal-like keywords, indents
+differently from \Package{algpseudocode}, and puts command arguments
+in maths mode instead of text mode. There is no floating environment
+but \Package{algorithmicx}, like \Package{algorithmic}, is compatible
+with the \Package{algorithm} package. (There have been reports of
+difficulty defining new commands to fit with the package;
+unfortunately, the author is not available to comment.)
+
+The \Package{alg} package, like \Package{algorithms}, offers a
+floating algorithm environment with all of the ensuing niceties.
+\Package{alg}, however, can caption its floats in a variety of
+(natural) languages. In addition, \Package{alg} unlike
+\Package{algorithms}, makes it easy to add new constructs.
+
+The \Package{newalg} package has a somewhat similar interface to
+\Package{algorithms}, but its output is designed to mimic the rather
+pleasant typesetting used in the book ``\emph{Introduction to Algorithms}''
+by Corman, Leiserson, Rivest and Stein. Unfortunately,
+\Package{newalg} does not support a floating environment or any
+customisation of the output.
+
+``\emph{Bona fide}'' use of the style of ``Introduction to
+Algorithms'' may be achieved with Cormen's own \Package{clrscode}:
+this is the package as used in the second edition of the book.
+
+Similarly, the style of % ! line break
+``\emph{Combinatorial Algorithms: Generation, Enumeration and Search}''
+is supported by the \Package{pseudocode} package, written by the
+authors of the book. It has the common `Pascal-like' style, and has
+some interesting constructs for what one thinks of as Pascal blocks.
+
+The \Package{algorithm2e} is of very long standing, and is widely used
+and recommended. It loads the \Package{float} package to provide the
+option of floating algorithm descriptions, but you can always use the
+``\texttt{H}'' option of \Package{float} to have the algorithm appear
+``where you write it''.
+
+The usage of the \Package{program} package is a little different from
+that of the other packages. It typesets programs in maths mode
+instead of text mode; and linebreaks are significant.
+\Package{program} lacks a floating environment but does number
+algorithms like \Package{alg} and \Package{algorithms}. Customisation
+and extension are not supported. Documentation of the
+\Package{program} package (such as it is) appears in a file
+\File{program.msg} in the distribution.
+
+None of the above are perfect. The factors that should influence your
+choice of package include the output style you prefer, how much you
+need to extend or modify the set of keywords, and whether you require
+algorithms to float like figures and tables.
+%%
+%% Documentation availability:
+%% \begin{description}
+%% \item[\Package{algorithms} bundle] is provided in \File{algorithms.ps}
+%% (also available as LaTeX{} source). The documentation speaks as if
+%% the two packages of the bundle were indeed one, called
+%% \Package{algorithms}.
+%% \item[\Package{program} package] (such as it is) appears in a file
+%% \File{program.msg}.
+%% \item[\Package{clrscode} package] is to be found in
+%% \File{clrscode.pdf} in the distribution.
+%% \item[\Package{algorithm2e} package] is to be found in
+%% \File{algorithm2e.tex} in the distribution (it needs the package
+%% itself when you process it).
+%% \end{description}
+\begin{ctanrefs}
+\item[algorithm2e.sty]\CTANref{algorithm2e}
+\item[algorithmicx\nothtml{\rmfamily} bundle]\CTANref{algorithmicx}
+\item[algorithms\nothtml{\rmfamily} bundle]\CTANref{algorithms}
+\item[alg.sty]\CTANref{alg}
+\item[clrscode.sty]\CTANref{clrscode}
+\item[float.sty]\CTANref{float}
+\item[newalg.sty]\CTANref{newalg}
+\item[program.sty]\CTANref{program}
+\item[pseudocode.sty]\CTANref{pseudocode}
+\end{ctanrefs}
+\LastEdit{2011-10-12}
+
+\Question[Q-makeindex]{Generating an index in \AllTeX{}}
+
+Making an index is not trivial; what to index, and how to index it, is
+difficult to decide, and uniform implementation is difficult to
+achieve. You will need to mark all items to be indexed in your text
+(typically with \csx{index} commands).
+
+It is not practical to sort a large index within \TeX{}, so a
+post-processing program is used to sort the output of one \TeX{} run,
+to be included into the document at the next run.
+
+The following programs are available:
+\begin{description}
+\item[makeindex] Comes with most distributions~--- a good workhorse,
+ but is not well-arranged to deal with other sort orders than the
+ canonical \acro{ASCII} ordering.
+
+ The \Package{makeindex} documentation is a good source of
+ information on how to create your own index. \Package{Makeindex} can
+ be used with some \TeX{}
+ macro packages other than \LaTeX{}, such as \nothtml{\Eplain\ (}%
+ \Qref{Eplain}{Q-eplain}\nothtml{)}, and \TeX{} (whose macros can
+ be used independently with \plaintex{}).
+\item[idxtex] for \LaTeX{} under \acro{VMS}; \ProgName{idxtex} comes
+ with a glossary-maker \ProgName{glotex}.
+\item[texindex(1)] A witty little shell-script using \ProgName{sed}
+ and \ProgName{awk}; designed for \LaTeX{} under Unix.
+\item[texindex(2)] The \Qref*{Texinfo}{Q-texinfo} system also offers a program
+ \ProgName{texindex}, whose source is to be found in the
+ \ProgName{texinfo} distribution. The \Package{ltxindex} package
+ provides macros that enable \LaTeX{} users to use this
+ \ProgName{texindex}.
+\item[xindy] arose from frustration at the difficulty of making a
+ multi-language version of \ProgName{makeindex}. It is designed to
+ be a successor to \ProgName{makeindex}, by a team that included the
+ then-current maintainer of \ProgName{makeindex}. It successfully
+ addresses many of \ProgName{makeindex}'s shortcomings, including
+ difficulties with collation order in different languages, and it is
+ highly flexible.
+
+ \ProgName{Xindy} itself will work with Unicode (UTF-8) encoded
+ \latex{} input. A separate application (\ProgName{texindy}) deals
+ with `standard' \latex{} source, processes it and passes
+ `sanitised' text to \ProgName{Xindy}.
+\end{description}
+\begin{ctanrefs}
+\item[idxtex]\CTANref{glo+idxtex}
+\item[ltxindex.sty]\CTANref{ltxindex}
+\item[makeindex]\CTANref{makeindex}
+\item[makeindex (Macintosh)]\CTANref{macmakeindex}
+\item[texindex \nothtml{\upshape\rmfamily}(the script)]\CTANref{texindex}
+\item[texindex \nothtml{\upshape\rmfamily}(the program)]Distributed
+ with \CTANref{texinfo}
+\item[texsis (system)]\CTANref{texsis}
+\item[texsis (makeindex support)]\CTANref{texsis-index}
+\item[xindy]\CTANref{xindy}
+\end{ctanrefs}
+
+\Question[Q-setURL]{Typesetting \acro{URL}s}
+
+\acro{URL}s tend to be very long, and contain characters that would
+naturally prevent them being hyphenated even if they weren't typically
+set in \csx{ttfamily}, verbatim. Therefore, without special treatment,
+they often produce wildly overfull \csx{hbox}es, and their typeset
+representation is awful.
+
+There are three packages that help solve this problem:
+\begin{itemize}
+\item The \Package{path} package, which defines a \csx{path} command.
+ The command defines each potential break character as a
+ \csx{discretionary}, and offers the user the opportunity of
+ specifying a personal list of potential break characters. Its chief
+ disadvantage is fragility in \LaTeX{} moving arguments. The
+% beware line breaks
+ \Qref*{\Eplain{} macros}{Q-eplain}~--- define a similar \csx{path} command.
+
+ \Package{Path}, though it works in simple situations, makes no
+ attempt to work with \LaTeX{} (it is irremediably fragile). Despite
+ its long and honourable history, it is no longer recommended for
+ \LaTeX{} use.
+\item The \Package{url} package, which defines an \csx{url} command
+ (among others, including its own \csx{path} command). The command
+ gives each potential break character a maths-mode `personality', and
+ then sets the \acro{URL} itself (in the user's choice of font) in
+ maths mode. It can produce (\LaTeX{}-style) `robust' commands
+ % beware line break within paren
+ (\htmlonly{see }\Qref{use of \csx{protect}}{Q-protect}) for use
+ within moving arguments.
+
+ The package ordinarily ignores spaces in the \acro{URL}, but
+ unfortunately \acro{URL}s that contain spaces do exist; to typeset
+ them, call the package with the \pkgoption{obeyspaces} option. Two
+ other useful options allow line breaks in the \acro{URL} in places
+ where they are ordinarily suppressed to avoid confusion:
+ \pkgoption{spaces} to allow breaks at spaces (note, this requires
+ \pkgoption{obeyspaces} as well, and \pkgoption{hyphens} to allow
+ breaks after hyphens. (Note that the package \emph{never} does
+ ``ordinary'' hyphenation of names inside an \acro{URL}.)
+
+ It is possible to use the \Package{url} package in \plaintex{},
+ with the assistance of the \Package{miniltx} package (which was
+ originally developed for using the \LaTeX{} graphics package in
+ \plaintex{}). A small patch is also necessary: the required
+ sequence is therefore:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\input miniltx
+\expandafter\def\expandafter\+%
+ \expandafter{\+}
+\input url.sty
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\input miniltx
+\expandafter\def\expandafter\+\expandafter{\+}
+\input url.sty
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+\item The \Package{hyperref} package, which uses the typesetting code
+ of \Package{url}, in a context where the typeset text forms the
+ anchor of a link.
+\end{itemize}
+
+The author of this answer prefers the (rather newer) \Package{url}
+package (directly or indirectly); both \Package{path} and
+\Package{url} work well with \plaintex{} (though of course, the fancy
+\LaTeX{} facilities of \Package{url} don't have much place there).
+(\Package{hyperref} isn't available in a version for use with \plaintex{}.)
+
+Note that neither \csx{path} (from package \Package{path}) nor \csx{url} (from
+package \Package{url}) is robust (in the \LaTeX{} sense). If you need
+a \acro{URL} to go in a moving argument, you need the command
+\csx{urldef} from the \Package{url} package. So one might write:
+\begin{quote}
+\begin{verbatim}
+\urldef\faqhome\url{http://www.tex.ac.uk/faq}
+\end{verbatim}
+\end{quote}
+after which, \csx{faqhome} is robust.
+
+Documentation of both package \Package{path} and package \Package{url}
+is in the package files.
+\begin{ctanrefs}
+\item[hyperref.sty]\CTANref{hyperref}
+\item[miniltx.tex]Distributed as part of \CTANref{graphics-plain}[miniltx]
+\item[path.sty]\CTANref{path}
+\item[url.sty]\CTANref{url}
+\end{ctanrefs}
+
+\Question[Q-music]{Typesetting music in \tex{}}
+
+The current best bet for music typesetting is to use
+\Package{musixtex}. \Package{Musixtex} is a three-pass system that
+has a \tex{}-based pass, a processing pass and then a further \tex{}
+pass. The middle pass, a program called \ProgName{musixflx},
+optimises the spacing and sorts out slurs and ties.
+\Package{Musixtex} is demanding of \tex{} resources, and any
+significant score requires that typesetting is done using \etex{},
+whose expanded variable- and box-register ranges allow for more of the
+``parallel'' activities that abound in a music score.
+Of course, \Package{musixtex} also requires music fonts; those are
+available in a separate package on the archive.
+
+\Package{Musixtex} requires pretty arcane input; most people using it
+actually prepare (less obscure) input for \ProgName{pmx}, whose output
+is \tex{} input suitable for \Package{musixtex}.
+
+A further preprocessor, \ProgName{M-Tx}, allows preparation of music
+with lyrics; \ProgName{M-Tx}'s output is fed into \ProgName{pmx}, and
+thence to \Package{musixtex}.
+
+An alternative path to music examples within a \alltex{} document is
+\href{http://www.lilypond.org}{\ProgName{Lilypond}}.
+\ProgName{Lilypond} is (at heart) a batch music typesetting system
+with plain text input that does most of its work without \tex{}.
+\ProgName{Lilypond}'s input syntax is less cryptic than is
+MusiX\TeX{}'s, though similar quality is achieved. The
+\ProgName{lilypond}
+\href{http://lilypond.org/web/about/faq}{\acro{FAQ}} mentions programs
+with graphical user interfaces, that export lilypond output.
+
+For occasional music references (sharp and flat signs, notes, clefs
+and so on, there is a (\latex{}) package (with associated font) called
+\Package{lilyglyphs}. This uses \progname{lilypond}'s fonts (which
+are included in the package), and also provides the means to add stuff
+from other sources.
+
+Another alternative in the production of music is the \acro{ABC}
+notation, which was developed to notate the traditional music of
+Western Europe (which can be written on a single stave), though it can
+be used much more widely. A front end to \Package{musictex} (see
+below), \ProgName{abc2mtex}, makes \acro{ABC} typesetting possible.
+
+The program \ProgName{midi2tex} can also generate \Package{musictex}
+output, from \acro{MIDI} files.
+
+The history of music in \tex{} goes back some time; the earliest
+``working'' macros were Mu\tex{}, by Angelika Schofer and Andrea
+Steinbach. Mu\tex{} was very limited, but it was some time before
+Daniel Taupin took up the baton, and developed Music\TeX{}, which
+allows the typesetting of polyphonic and other multiple-stave music;
+Music\TeX{} remains available, but is no longer recommended.
+
+The first version of Musix\tex{} was developed by Andreas Egler, but
+he withdrew from the project to work on another package, Opus\tex{}.
+That never reached the mainstream, and is no longer maintained. The
+current recommended way of doing Opus\tex{}'s job is
+\href{http://home.gna.org/gregorio/}{\ProgName{gregorio}}, which can
+in principle feed into a \tex{}-based document.
+
+Once Andreas Egler had withdrawn (his last version of
+\Package{musixtex} is preserved on the archive), Daniel Taupin took up
+the development, leading to the \Package{musixtex} used today.
+\begin{ctanrefs}
+\item[abc2mtex]\CTANref{abc2mtex}
+\item[lilyglyphs]\CTANref{lilyglyphs}
+\item[M-Tx]\CTANref{m-tx}
+\item[midi2tex]\CTANref{midi2tex}
+\item[musictex]\CTANref{musictex}
+% ! line breaks
+\item[musixtex \nothtml{\rmfamily}(Taupin's version)]\CTANref{musixtex}
+\item[musixtex \nothtml{\rmfamily}(Egler's version)]\CTANref{musixtex-egler}
+\item[musixtex \nothtml{\rmfamily}fonts]\CTANref{musixtex-fonts}
+\item[mutex]\CTANref{mutex}
+\item[pmx]\CTANref{pmx}
+\end{ctanrefs}
+\LastEdit{2013-09-27}
+
+\Question[Q-parskip]{Zero paragraph indent}
+
+The conventional way of typesetting running text has no separation
+between paragraphs, and the first line of each paragraph in a block of
+text indented.
+
+In contrast, one common convention for typewritten text was to have no
+indentation of paragraphs; such a style is often required for
+``brutalist'' publications such as technical manuals, and in styles
+that hanker after typewritten manuscripts, such as
+officially-specified dissertation formats.
+
+Anyone can see, after no more than a moment's thought, that if the
+paragraph indent is zero, the paragraphs must be separated by blank
+space: otherwise it is sometimes going to be impossible to see the
+breaks between paragraphs.
+
+The simple-minded approach to zero paragraph indentation is thus:
+\begin{quote}
+\begin{verbatim}
+\setlength{\parindent}{0pt}
+\setlength{\parskip}{\baselineskip}
+\end{verbatim}
+\end{quote}
+and in the very simplest text, it's a fine solution.
+
+However, the non-zero \csx{parskip} interferes with lists and the like,
+and the result looks pretty awful. The \Package{parskip} package
+patches things up to look reasonable; it's not perfect, but it deals
+with most problems.
+
+The Netherlands Users' Group's set of classes includes an
+\Class{article} equivalent (\Class{artikel3}) and a \Class{report}
+equivalent (\Class{rapport3}) whose design incorporates zero paragraph
+indent and non-zero paragraph skip.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\acro{NTG} classes]\CTANref{ntgclass}
+\item[parskip.sty]\CTANref{parskip}
+\end{ctanrefs}
+\LastEdit{2011-04-01} % yes, really
+
+\Question[Q-dropping]{Big letters at the start of a paragraph}
+
+A common style of typesetting, now seldom seen except in newspapers,
+is to start a paragraph (in books, usually the first of a chapter)
+with its first letter set large enough to span several lines.
+
+This style is known as ``dropped capitals'', or (in French)
+\latexhtml{``lettrines''}{\htmlentity{laquo}lettrines\htmlentity{raquo}},
+and \TeX{}'s primitive facilities for hanging indentation make its
+(simple) implementation pretty straightforward.
+
+The \Package{dropping} package does the job simply, but has a curious
+attitude to the calculation of the size of the font to be used for the
+big letters. Examples appear in the package documentation, so before
+you process the \extension{dtx}, the package itself must already be
+installed. Unfortunately, \Package{dropping} has an intimate relation
+to the set of device drivers available in an early version of the
+\LaTeX{} graphics package, and it cannot be trusted to work with
+modern offerings such as \PDFTeX{} or \acro{DVI}pdfm, let
+alone such modernisms as \xetex{}. As a result, the package is widely
+deprecated, nowadays.
+
+The more recent \Package{lettrine} package is generally more reliable.
+It has a well-constructed array of options, and an impressive set of
+examples adds to the package's document.
+\begin{ctanrefs}
+\item[dropping]\CTANref{dropping}
+\item[lettrine]\CTANref{lettrine}
+\end{ctanrefs}
+\LastEdit{2014-01-22}
+
+\Question[Q-dec_comma]{The comma as a decimal separator}
+
+\TeX{} embodies the British/American cultural convention of using a
+period as the separator between the whole number and the decimal
+fraction part of a decimal number. Other cultures use a comma as
+separator, but if you use a comma in maths mode you get a small space
+after it; this space makes a comma that is used as a decimal separator
+look untidy.
+
+A simple solution to this problem, in maths mode, is to type
+\texttt{3}\marg{,}\texttt{14} in place of \texttt{3,14}. While such a
+technique may produce the right results, it is plainly not a
+comfortable way to undertake any but the most trivial amounts of
+typing numbers.
+
+Therefore, if you need to use commas as decimal separator, you will
+probably welcome macro support. There are two packages that
+can help relieve the tedium: \Package{icomma} and \Package{ziffer}.
+
+\Package{Icomma} ensures that there will be no extra space after a
+comma, unless you type a space after it (as in \texttt{f(x, y)}~--- in
+the absence of the package, you don't need that space), in which case
+the usual small space after the comma appears. \Package{Ziffer} is
+specifically targeted at the needs of those typesetting German, but
+covers the present need, as well as providing the double-minus sign
+used in German (and other languages) for the empty `cents' part of an
+amount of currency.
+
+The \Package{numprint} package provides a command
+\cmdinvoke*{numprint}{number} that prints its argument according to
+settings you give it, or according to settings chosen to match the
+language you have selected in \Package{babel}. The formatting works
+equally well in text or maths. The command is very flexible (it can also
+group the digits of very `long' numbers), but is inevitably less
+convenient than \Package{icomma} or \Package{ziffer} if you are typing a
+lot of numbers.
+\begin{ctanrefs}
+\item[icomma.sty]Distributed as part of \CTANref{was}[icomma]
+\item[numprint.sty]\CTANref{numprint}
+\item[ziffer.sty]\CTANref{ziffer}
+\end{ctanrefs}
+
+\Question[Q-breakbox]{Breaking boxes of text}
+
+\AllTeX{} boxes may not be broken, in ordinary usage: once you've
+typeset something into a box, it will stay there, and the box will jut
+out beyond the side or the bottom of the page if it doesn't fit in the
+typeset area.
+
+If you want a substantial portion of your text to be framed (or
+coloured), the restriction imposes a serious restriction.
+Fortunately, there are ways around the problem.
+
+The \Package{framed} package provides \environment{framed} and
+\environment{shaded} environments; both put their content into
+something which looks like a framed (or coloured) box, but which
+breaks as necessary at page end. The environments ``lose'' footnotes,
+marginpars and head-line entries, and will not work with
+\Package{multicol} or other column-balancing macros. The
+\Class{memoir} class includes the functionality of the
+\Package{framed} package.
+
+The \Package{mdframed} package does the same job, using a different
+algorithm. The package also provides means of defining
+`private' framed environments, whose parameters are set at definition
+time, thus saving considerable effort in documents with many framed
+boxes. Its restrictions seem much the same as those of
+\Package{framed}; this is as one would expect, but the list is
+noticeably different in the two packages' documentation.
+
+The \Package{boites} package provides a \environment{breakbox}
+environment; examples of its use may be found in the distribution, and
+the package's \File{README} file contains terse documentation. The
+environments may be nested, and may appear inside
+\environment{multicols} environments; however, floats, footnotes and
+marginpars will be lost.
+
+For \plaintex{} users, the facilities of the \Package{backgrnd}
+package may be useful; this package subverts the output routine to
+provide vertical bars to mark text, and the macros are clearly marked
+to show where coloured backgrounds may be introduced (this requires
+\Package{shade}, which is distributed as tex macros and
+device-independent \MF{} for the shading). The author of
+\Package{backgrnd} claims that the package works with \LaTeXo{}, but
+there are reasons to suspect that it may be unstable working with
+current \LaTeX{}.
+\begin{ctanrefs}
+\item[backgrnd.tex]\CTANref{backgrnd}
+\item[boites.sty]\CTANref{boites}
+\item[framed.sty]\CTANref{framed}
+\item[mdframed.sty]\CTANref{mdframed}
+\item[memoir.cls]\CTANref{memoir}
+\item[shade.tex]\CTANref{shade}
+\end{ctanrefs}
+\LastEdit{2012-02-14}
+
+\Question[Q-overstrike]{Overstriking characters}
+
+This may be used, for example, to indicate text deleted in the course
+of editing. Both the \Package{ulem} and the \Package{soul} packages
+provide the necessary facilities.
+
+Overstriking with an ``attached'' comment may be achieved using the
+\Package{pdfcomment} package, to which you can give optional arguments
+with all sorts of detail. The comment text is encoded using an Adobe
+`annotation'; unfortunately, support for these annotations is not a
+common feature of \acro{PDF} viewers, but if you can safely assume
+that your audience will use \ProgName{Acrobat Reader}, the facility
+provides that extra ``shine'' that business users so love.
+
+Overstriking for % beware line break
+\Qref*{cancellation in maths expressions}{Q-cancellation} is achieved
+by a different mechanism.
+
+Documentation of \Package{ulem} is in the package file.
+\begin{ctanrefs}
+\item[pdfcomment.sty]\CTANref{pdfcomment}
+\item[soul.sty]\CTANref{soul}
+\item[ulem.sty]\CTANref{ulem}
+\end{ctanrefs}
+\LastEdit{2013-08-29}
+
+\Question[Q-upquot]{Realistic quotes for verbatim listings}
+
+The \texttt{cmtt} font has ``curly'' quotes\nothtml{ (\texttt{`thus'})},
+which are pleasing on the eye, but don't really tally with what one
+sees on a modern % beware line break
+\ProgName{xterm}\nothtml{ (which look like \texttt{\textasciigrave this\textquotesingle})}.
+
+The appearance of these quotes is critical in program listings,
+particularly in those of Unix-like shell scripts. The
+\Package{upquote} package modifies the behaviour of the
+\environment{verbatim} environment so that the output is a clearer
+representation of what the user must type.
+\begin{ctanrefs}
+\item[upquote.sty]\CTANref{upquote}
+\end{ctanrefs}
+
+\Question[Q-time]{Printing the time}
+
+\TeX{} has a primitive register that contains ``the number of minutes
+since midnight''; with this knowledge it's a moderately simple
+programming job to print the time (one that no self-respecting
+\plaintex{} user would bother with anyone else's code for).
+
+However, \LaTeX{} provides no primitive for ``time'', so the
+non-programming \LaTeX{} user needs help.
+
+Two packages are available, both providing ranges of ways of printing
+the date, as well as of the time: this question will concentrate on
+the time-printing capabilities, and interested users can investigate
+the documentation for details about dates.
+
+The \Package{datetime} package defines two time-printing functions:
+\csx{xxivtime} (for 24-hour time), \csx{ampmtime} (for 12-hour time) and
+\csx{oclock} (for time-as-words, albeit a slightly eccentric set of
+words).
+
+The \Package{scrtime} package (part of the compendious
+\Class{KOMA-Script} bundle) takes a package option (\pkgoption{12h} or
+\pkgoption{24h}) to specify how times are to be printed. The command
+\csx{thistime} then prints the time appropriately (though there's no
+\emph{am} or \emph{pm} in \pkgoption{12h} mode). The \csx{thistime}
+command also takes an optional argument, the character to separate the
+hours and minutes: the default is of course \texttt{:}.
+\begin{ctanrefs}
+\item[datetime.sty]\CTANref{datetime}
+\item[scrtime.sty]Distributed as part of \CTANref{koma-script}
+\end{ctanrefs}
+
+\Question[Q-the-commands]{Redefining counters' \csx{the-}commands}
+
+Whenever you request a new \LaTeX{} counter, \LaTeX{} creates a bunch
+of behind-the-scenes commands, as well as defining the counter
+itself.
+
+Among other things, \cmdinvoke*{newcounter}{fred} creates a command
+\csx{the}\texttt{\emph{fred}}, which expands to ``the value of
+\texttt{\emph{fred}}'' when you're typesetting.
+
+The definition of \csx{the}\texttt{\emph{fred}} should express the
+value of the counter: it is almost always always a mistake to use the
+command to produce anything else. The value may reasonably be
+expressed as an arabic, a roman or a greek number, as an alphabetic
+expression, or even as a sequence (or pattern of) symbols. If you
+need a decision process on whether to re-define
+\csx{the}\texttt{\emph{fred}}, consider what might happen when you do
+so.
+
+So, for example, if you want your section numbers to be terminated by
+a period, you could make \csx{thesection} expand with a terminating
+period. However, such a change to \csx{thesection} makes the
+definition of \csx{thesubsection} look distinctly odd: you are going to
+find yourself redefining things left, right and centre. Rather, use
+the standard techniques for % beware line break
+\Qref*{adjusting the presentation of section numbers}{Q-seccntfmt}.
+
+Or, suppose you want the page number to appear at the bottom of each
+page surrounded by dashes (as in
+``\texttt{-}{}\texttt{-\textasciitilde}\texttt{nnn\textasciitilde-}{}\texttt{-}'').
+If you try to achieve this by redefining \csx{thepage}, problems will
+arise from the use of the page number in the table of contents (each
+number will have the dashes attached), and \csx{pageref} references
+will be oddly modified. In this case, the change of appearance is
+best done by redefining the page style itself, perhaps using
+\Qref*{package \Package{fancyhdr}}{Q-fancyhdr}.
+
+\subsection{Tables of contents and indexes}
+
+\Question[Q-tocloft]{The format of the Table of Contents, etc.}
+
+The formats of entries in the table of contents (\acro{TOC}) are
+controlled by a number of internal commands (discussed in section~2.3
+of \Qref*{\emph{The \LaTeX{} Companion}}{Q-latex-books}. The commands
+\csx{@pnumwidth}, \csx{@tocrmarg} and \csx{@dotsep} control the space
+for page numbers, the indentation of the right-hand margin, and the
+separation of the dots in the dotted leaders, respectively. The
+series of commands named \csx{l@\emph{xxx}}, where \texttt{\emph{xxx}}
+is the name of a sectional heading (such as \texttt{chapter} or
+\texttt{section}, \dots{}\@) control the layout of the corresponding
+heading, including the space for section numbers. All these internal
+commands may be individually redefined to give the effect that you
+want.
+
+All that work may be avoided, using the package \Package{tocloft}
+which provides a set of user-level commands that may be used to change
+the \acro{TOC} formatting. Since exactly the same mechanisms are used
+for the List of Figures and List of Tables, the layout of these
+sections may be controlled in the same way.
+
+The \Package{etoc} package offers similar flexibility, together with
+multicolumn tables of contents and boxes around tables (and the like).
+
+The \Class{KOMA-Script} classes provides an optional variant structure
+for the table of contents, and calculates the space needed for the
+numbers automatically. The \Class{memoir} class includes the functionality
+of \Package{tocloft}.
+\begin{ctanrefs}
+\item[etoc.sty]\CTANref{etoc}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[tocloft.sty]\CTANref{tocloft}
+\end{ctanrefs}
+\LastEdit{2012-12-07}
+
+\Question[Q-secnumdep]{Unnumbered sections in the Table of Contents}
+
+The way the relevant parts of sectioning commands work is exemplified
+by the way the \csx{chapter} command uses the counter \texttt{secnumdepth}
+(described in Appendix~C of the \LaTeX{} manual):
+\begin{enumerate}
+\item put something in the \extension{aux} file, which will appear in
+ the \extension{toc};
+\htmlignore
+\item if \ensuremath{\texttt{secnumdepth} \geq 0},
+\endhtmlignore
+\begin{htmlversion}
+\item if the \texttt{secnumdepth} counter is greater than or equal to
+ zero,
+\end{htmlversion}
+ increase the counter for the chapter and write it out.
+\item write the chapter title.
+\end{enumerate}
+Other sectioning commands are similar, but with other values used in
+the test.
+
+So a simple way to get headings of funny `sections' such as prefaces
+in the table of contents is to use the counter:
+\begin{quote}
+\begin{verbatim}
+\setcounter{secnumdepth}{-1}
+\chapter{Preface}
+\end{verbatim}
+\end{quote}
+Unfortunately, you have to set \texttt{secnumdepth} back to its usual
+value (which is~2 in the standard styles) before you do any `section'
+which you want to be numbered.
+
+Similar settings are made, automatically, in the \LaTeX{} book class by
+the \csx{frontmatter} and \csx{backmatter} commands.
+
+The value of the counter \texttt{tocdepth} controls which headings
+will be finally printed in the table of contents; it is normally set
+in the preamble and is a constant for the document. The package
+\Package{tocvsec2} package takes the tedium out of changing the
+\texttt{secnumdepth} and/or the \texttt{tocdepth} counter values at
+any point in the body of the document; the commands (respectively)
+\csx{setsecnumdepth} and \csx{settocdepth} make the changes based on
+the \emph{name} of the sectional unit (\texttt{chapter},
+\texttt{section}, etc.\@).
+
+The package \Package{abstract} (see % line break!
+\Qref[question]{one-column abstracts}{Q-onecolabs}) includes an option
+to add the \texttt{abstract} to the table of contents, while the
+package \Package{tocbibind} has options to include the table of
+contents itself, the \texttt{bibliography}, \texttt{index}, etc., to
+the table of contents.
+
+The \Class{KOMA-Script} classes have commands \csx{addchap} and
+\csx{addled}, which work like \csx{chapter} and \csx{section} but
+aren't numbered. The \Class{memoir} class incorporates the facilities
+of all three of the \Package{abstract}, \Package{tocbibind} and
+\Package{tocvsec2} packages.
+\begin{ctanrefs}
+\item[abstract.sty]\CTANref{abstract}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[tocbibind.sty]\CTANref{tocbibind}
+\item[tocvsec2.sty]\CTANref{tocvsec2}
+\end{ctanrefs}
+
+\Question[Q-tocbibind]{Bibliography, index, etc., in \acro{TOC}}
+
+The standard \LaTeX{} classes (and many others) use \csx{section*} or
+\csx{chapter*} for auto-generated parts of the document (the tables of
+contents, lists of figures and tables, the bibliography and the index). As a
+result, these items aren't numbered (which most people don't mind),
+and (more importantly) they don't appear in the table of contents.
+
+The correct solution (as always) is to have a class of your own that
+formats your document according to your requirements. The macro to do
+the job (\csx{addcontentsline}) is fairly simple, but there is always
+an issue of ensuring that the contents entry quotes the correct page.
+Supposing that our the document is chapter-based (class \Class{report}
+or \Class{book}, for example), the text:
+\begin{quote}
+\begin{verbatim}
+\bibliography{frooble}
+\addcontentsline{toc}{chapter}{Bibliography}
+\end{verbatim}
+\end{quote}
+will produce the \emph{wrong} answer if the bibliography is more than
+one page long. Instead, one should say:
+\begin{quote}
+\begin{verbatim}
+\cleardoublepage
+\addcontentsline{toc}{chapter}{Bibliography}
+\bibliography{frooble}
+\end{verbatim}
+\end{quote}
+(Note that \csx{cleardoublepage} does the right thing, even if your
+document is single-sided~--- in that case, it's a synonym for
+\csx{clearpage}). Ensuring that the entry refers to the right place is
+trickier still in a \csx{section}-based class.
+
+If you are using \Package{hyperref} (which will link entries in the
+table of contents to the relevant place in the file), a slight
+adjustment is necessary:
+\begin{quote}
+\begin{verbatim}
+\cleardoublepage
+\phantomsection
+\addcontentsline{toc}{chapter}{Bibliography}
+\bibliography{frooble}
+\end{verbatim}
+\end{quote}
+The extra command (\csx{phantomsection}) gives \Package{hyperref}
+something to ``hold on to'' when making the link.
+
+The common solution, therefore, is to use the \Package{tocbibind}
+package, which provides many facilities to control the way these
+entries appear in the table of contents.
+
+Classes of the \Class{KOMA-script} bundle provide this functionality
+as a set of class options (e.g., \pkgoption{bibtotoc} to add the
+bibliography to the table of contents); the \Class{memoir} class includes
+\Package{tocbibind} itself.
+\begin{ctanrefs}
+\item[hyperref.sty]\CTANref{hyperref}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[tocbibind.sty]\CTANref{tocbibind}
+\end{ctanrefs}
+
+\Question[Q-minitoc]{Table of contents, etc., per chapter}
+
+The common style, of a ``small'' table of contents for each part,
+chapter, or even section, is supported by the \Package{minitoc}
+package. The package also supports mini-lists of tables and figures;
+but, as the documentation observes, mini-bibliographies present a
+different problem~--- see
+\Qref[question]{bibliographies per chapter}{Q-chapbib}.
+
+The package's basic scheme is to generate a little \extension{aux} file for
+each chapter, and to process that within the chapter. Simple usage
+would be:
+\begin{quote}
+\begin{verbatim}
+\usepackage{minitoc}
+...
+\begin{document}
+...
+\dominitoc \tableofcontents
+\dominilof \listoffigures
+...
+\chapter{blah blah}
+\minitoc \mtcskip \minilof
+...
+\end{verbatim}
+\end{quote}
+though a lot of elaborations are possible (for example, you don't need
+a \csx{minitoc} for every chapter).
+
+\Package{Babel} doesn't know about \Package{minitoc}, but
+\Package{minitoc} makes provision for other document languages than
+English~--- a wide variety is available. Fortunately, the current
+version of the \Package{hyperref} package does know about
+\Package{minitoc} and treats \csx{minitoc} tables in the
+same way as ``real'' tables of contents.
+\begin{ctanrefs}
+\item[babel.sty]\CTANref{babel}
+\item[hyperref.sty]\CTANref{hyperref}
+\item[minitoc.sty]\CTANref{minitoc}
+\end{ctanrefs}
+\LastEdit{2013-03-05}
+
+\Question[Q-multind]{Multiple indexes}
+
+\LaTeX{}'s standard indexing capabilities (those provided by the
+\Package{makeidx} package) only provide for one index in your
+document; even quite modest documents can be improved by indexes for
+separate topics.
+
+The \Package{multind} package provides simple and straightforward
+multiple indexing. You tag each \csx{makeindex}, \csx{index} and
+\csx{printindex} command with a file name, and indexing commands are
+written to (or read from) the name with the appropriate (\extension{idx} or
+\extension{ind}) extension appended. The \csx{printindex} command is modified
+from an old version of the \LaTeXo{} standard so that it doesn't
+create its own chapter or section heading; you therefore decide what
+names (or sectioning level, even) to use for the indexes, and
+\Qref*{\csx{indexname}}{Q-fixnam} is completely ignored.
+
+To create a ``general'' and an ``authors'' index, one might write:
+\begin{quote}
+\begin{verbatim}
+\usepackage{multind}
+\makeindex{general}
+\makeindex{authors}
+...
+\index{authors}{Eccentric Professor}
+...
+\index{general}{FAQs}
+...
+\printindex{general}{General index}
+\printindex{authors}{Author index}
+\end{verbatim}
+\end{quote}
+To complete the job, run \LaTeX{} on your file enough times that
+labels, etc., are stable, and then execute the commands
+\begin{quote}
+\begin{verbatim}
+makeindex general
+makeindex authors
+\end{verbatim}
+\end{quote}
+before running \LaTeX{} again. Note that the names of the index files
+to process are not necessarily related to the name of the \LaTeX{}
+file you're processing, at all. (There's no documentation that comes
+with the package: what you see above is as good as you will
+get\dots{})
+
+The \Package{multind} package doesn't work with the % ! line break
+\Qref*{\amslatex{} classes}{Q-AMSpkg}, but the \acro{AMS} provide a
+substitute, the \Package{amsmidx} package. You use the
+\Package{amsmidx} package pretty much the same as you would
+\Package{multind}, but if things aren't clear, there \emph{is}
+documentation (unlike \Package{multind}).
+
+The \Package{index} package provides a comprehensive set of indexing
+facilities, including a \csx{newindex} command that allows the
+definition of new styles of index. \csx{newindex} takes a `tag' (for
+use in indexing commands), replacements for the \extension{idx} and
+\extension{ind} file extensions, and a title for the index when it's
+finally printed; it can also change the item that's being indexed
+against (for example, one might have an index of artists referenced by
+the figure number where their work is shown).
+
+Using \Package{index}, to create an author index together with a
+``normal'' index, one would start with preamble commands:
+\begin{quote}
+\begin{verbatim}
+\usepackage{index}
+\makeindex
+\newindex{aut}{adx}{and}{Name Index}
+\end{verbatim}
+\end{quote}
+which load the package, define a ``main'' (original-style) index, and
+then define an author index. Then, in the body of the document, we
+might find commands like:
+\begin{quote}
+\begin{verbatim}
+\index[aut]{Another Idiot}
+...
+\index{FAQs}
+\end{verbatim}
+\end{quote}
+Which place an entry in the author index, and then one in the main
+index. At the end of the document, we have two commands:
+\begin{quote}
+\begin{verbatim}
+\printindex
+\printindex[aut]
+\end{verbatim}
+\end{quote}
+Which will print the main index and then the author index. Supposing
+this lot to be in \File{myfile.tex}, after enough runs through
+\LaTeX{} that labels are stable, execute the following commands
+(Unix-style shell commands shown here, but the principle is the same
+whatever system you're using):
+\begin{quote}
+\begin{verbatim}
+makeindex myfile
+makeindex myfile.adx -o myfile.and
+\end{verbatim}
+\end{quote}
+and rerun \LaTeX{}. The \ProgName{makeindex} commands process
+\File{myfile.idx} to \File{myfile.ind} (the default action), and then
+\File{myfile.adx} to \File{myfile.and}, the two files needed as input
+by the two \csx{printindex} commands in \File{myfile.tex}.
+
+The \Package{splitidx} package can operate in the same way as the
+others: load the package with the \pkgoption{split} option, and
+declare each index with a \csx{newindex} command:
+\begin{quote}
+ \cmdinvoke{newindex}[\meta{index name}]{\meta{shortcut}}
+\end{quote}
+and \Package{splitidx} will generate a file
+\csx{jobname}\texttt{.\meta{shortcut}} to receive index entries
+generated by commands like \cmdinvoke{sindex}[\meta{shortcut}]{\meta{item}}.
+As with the other packages, this method is limited by \TeX{}'s total
+number of output files. However, \Package{splitindex} also comes with
+a small executable \ProgName{splitindex} (available for a variety of
+operating systems); if you use this auxiliary program (and don't use
+\pkgoption{split}), there's no limit to the number of indexes. Apart
+from this trick, \Package{splitidx} supports the same sorts of things
+as does \Package{index}. An example of use appears in
+the documentation.
+
+The \Package{imakeidx} package can do a wide range of things (in particular,
+it can run an index-builder~--- via % ! line break
+\Qref*{\csx{write18} commands}{Q-spawnprog}~--- so as to simplify
+business of making the final copy of a document). The package can
+also make multiple indexes; it can do the job in the conventional
+(\Package{multind}) way, or by using the external
+\ProgName{splitindex} script provided with the \Package{splitindex}
+package. (This arrangement allows efficient operation with small
+numbers of indexes, while retaining the flexibility of permitting
+large numbers of indexes without hitting the restriction of numbers of
+active output streams.)
+
+The \Class{memoir} class has its own multiple-index functionality (as
+well as its own index layout options, which other packages delegate to
+the index style used by \ProgName{makeindex}).
+\begin{ctanrefs}
+\item[amsmidx.sty]Part of the \acro{AMS} class distribution
+ \CTANref{amscls}[amsmidx]
+\item[imakeidx.sty]\CTANref{imakeidx}
+\item[index.sty]\CTANref{index}
+\item[makeidx.sty]Part of the \LaTeX{} distribution
+\item[memoir.cls]\CTANref{memoir}
+\item[multind.sty]\CTANref{multind}
+\item[splitidx.sty \bgroup\nothtml{\normalfont}and \egroup splitindex]%
+ \CTANref{splitindex}
+\end{ctanrefs}
+
diff --git a/obsolete/help/texfaq/faq-backgrnd.tex b/obsolete/help/texfaq/faq-backgrnd.tex
new file mode 100644
index 0000000000..4b3ed75156
--- /dev/null
+++ b/obsolete/help/texfaq/faq-backgrnd.tex
@@ -0,0 +1,1220 @@
+% $Id: faq-backgrnd.tex,v 1.31 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{The Background}
+
+\Question[Q-startup]{Getting started}
+
+\alltex{} offers a very large number of choices, and the beginner has
+to navigate through that set before even taking his first steps. The
+aim here is to guide the beginner through a set of answers that may
+help the process. We assume the beginner `knows' that \alltex{} is
+for them; if not, the discussion ``\Qref{what is \tex{}}{Q-whatTeX}''
+may help.
+
+To start at the very beginning, then, the beginner may wish to know
+what all those % ! line break
+``\Qref*{things with \tex{} in their name are}{Q-texthings}''.
+
+Armed with that knowledge, the beginner needs to decide what macro
+format she needs (always assuming someone hasn't already told her she
+needs to use ``foo\tex{}''. Learn about the alternatives in answers
+discussing common formats: look at % line break
+\Qref*{writing \plaintex{}}{Q-plaintex},
+\Qref*{\latex{}}{Q-latex} or
+\Qref*{\context{}}{Q-context}.
+
+If no system has been provided, the beginner needs to acquire a \tex{}
+distribution appropriate to their machine. Available options are
+available via the answer % ! line break
+``\Qref*{\alltex{} for various machines}{Q-TeXsystems}''; we assume
+here that the beginner can install things for herself, or has access
+to someone who can.
+
+Finally, the beginner needs to get started in the chosen format. For
+\plaintex{}, see ``\Qref[]{Online introductions: \TeX{}}{Q-man-tex}'';
+for \latex{}, see % ! line break
+``\Qref[]{Online introductions: \LaTeX{}}{Q-man-latex}''; and for
+\context{}, the place to start is the % line break
+\href{http://wiki.contextgarden.net/Main_Page}{ConTeXt garden wiki}
+(which is so good the present \acro{FAQ}s don't even try to compete).
+\LastEdit*{2011-03-04}
+
+
+\Question[Q-whatTeX]{What is \TeX{}?}
+
+\TeX{} is a typesetting system written by
+\href{http://sunburn.stanford.edu/~knuth/}{Donald E. Knuth}, who
+says in the Preface to his book on \TeX{}
+(see \Qref[question]{books about TeX}{Q-tex-books}) that it is
+%% !line wrap avoided by two commands
+``\emph{intended for the creation of beautiful books~---}
+\emph{and especially for books that contain a lot of mathematics}''.
+(If \TeX{} were \emph{only} good for mathematical books, much of its
+use nowadays would not happen: it's actually a pretty good general
+typesetting system.)
+
+Knuth is Emeritus Professor of the Art of Computer Programming at
+Stanford University in California, \acro{USA}. Knuth developed the
+first version of \TeX{} in 1978 to deal with revisions to his series
+``the Art of Computer Programming''. The idea proved popular and
+Knuth produced a second version (in 1982) which is the basis of what
+we use today.
+
+Knuth developed a system of % ! line breaks
+`\Qref*{literate programming}{Q-lit}' to write \TeX{},
+and he provides the literate (\acro{WEB}) source of \TeX{} free of charge,
+together with tools for processing the |web| source into something
+that can be compiled and something that can be printed; there is (in
+principle) never any mystery about what \TeX{} does. Furthermore, the
+\acro{WEB} system provides mechanisms to port \TeX{} to new operating
+systems and computers; and in order that one may have some confidence
+in the ports, Knuth supplied a \Qref*{test}{Q-triptrap} by
+means of which one may judge the fidelity of a \TeX{} system. \TeX{}
+and its documents are therefore highly portable.
+
+For the interested programmer, the distribution of \TeX{} has some
+fascination: it's nothing like the way one would construct such a
+program nowadays, yet it has lasted better than most, and has been
+ported to many different computer architectures and operating
+systems~--- the sorts of attributes that much modern programming
+practice aims for. The processed `readable' source of \TeX{} the
+program may be found in the % ! line break
+\begin{hyperversion}
+ \Qref*{\acro{TDS} structured}{Q-tds} version of the distribution.
+\end{hyperversion}
+\begin{dviversion}
+ \acro{TDS} structured version of the distribution (see
+ \Qref*{\acro{TDS} structure}{Q-tds}).
+\end{dviversion}
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Knuth's source distribution]\CTANref{knuth-dist}
+\item[\nothtml{\rmfamily}Knuth's sources in \acro{TDS} layout]\CTANref{knuth-tds}
+\end{ctanrefs}
+\LastEdit{2013-11-27}
+
+\Question[Q-plaintex]{What's ``writing in \TeX{}''?}
+
+\TeX{} is a macro processor, and offers its users a powerful
+programming capability. To produce a document, you write macros and
+text interleaved with each other. The macros define an environment in
+which the text is to be typeset.
+
+However, the basic \TeX{} engine is pretty
+basic, and is a pretty difficult beast to deal with. Recognising this
+(and not wanting to write the same things at the start of every
+document, himself) Knuth provided a package of macros for use with
+\TeX{}, called \plaintex{}; \plaintex{} is a useful minimum set of
+macros that can be used with \TeX{}, together with some demonstration
+versions of higher-level commands. When people say they're ``writing
+(or programming) in \TeX{}'', they usually mean they're programming in
+\plaintex{}.
+
+\Question[Q-TeXpronounce]{How should I pronounce ``\TeX{}''?}
+
+The `X' is ``really'' the Greek letter % ! line break
+Chi\nothtml{ (\ensuremath{\chi}, in lower case)}, and is pronounced by
+English-speakers either a bit like the `ch' in the Scots word `loch'
+([x] in the IPA) or (at a pinch, if you can't do the Greek sound) like
+`k'. It definitely is not pronounced `ks' (the Greek letter with that
+sound doesn't look remotely like the Latin alphabet `X').
+
+This curious usage derives from Knuth's explanation in the \TeX{}book
+that the name comes from the Greek word for `art' or `craft'
+(`\latexhtml{\ensuremath{\tau\epsilon\chi\nu\eta}}{\emph{techni}}'),
+which is the root of the English word `technology'. Knuth's logo for \TeX{} is
+merely the uppercase version of the first three (Greek) letters of the
+word, jiggled about a bit; we don't use that logo (and logos like it)
+in this \acro{FAQ} (see % ! line break
+\Qref[question]{Typesetting \TeX{}-related logos}{Q-logos}).
+
+\Question[Q-MF]{What is \MF{}?}
+
+\MF{} was written by Knuth as a companion to \TeX{}; whereas \TeX{}
+defines the layout of glyphs on a page, \MF{} defines the shapes of
+the glyphs and the relations between them. \MF{} details the sizes of
+glyphs, for \TeX{}'s benefit, and creates bitmaps that may be used to
+represent the glyphs, for the benefit of programs that will produce
+printed output as post processes after a run of \TeX{}.
+
+\MF{}'s language for defining fonts permits the expression of several
+classes of things: first (of course), the simple geometry of the
+glyphs; second, the properties of the print engine for which the
+output is intended; and third, `meta'-information which can
+distinguish different design sizes of the same font, or the difference
+between two fonts that belong to the same (or related) families.
+
+Knuth (and others) have designed a fair range of fonts using \MF{},
+but font design using \MF{} is much more of a minority skill (even) than is
+\TeX{} macro-writing.
+What is more, it is a dying art: few new \tex{}-related fonts are
+produced using \MF{}, nowadays. Indeed, several of the major font
+families (that originated in \MF{} designs) are now seldom used in any
+other way than their conversion to an outline font format.
+%% The complete \TeX{}-user nevertheless needs to
+%% be aware of \MF{}, and may even be required run \MF{} to generate personal
+%% copies of Meta-fonts that come her way.
+\LastEdit{2011-07-03}
+
+\Question[Q-MP]{What is \MP{}?}
+
+The \MP{} system (by John Hobby) implements a picture-drawing language
+very much like that of \MF{}; the difference is that \MP{} outputs
+vector graphic files instead of run-length-encoded bitmaps; output
+formats available are \PS{} or \acro{SVG}
+\MP{}
+is a powerful language for producing figures for documents to be
+printed on \PS{} printers, either directly or embedded in \AllTeX{}
+documents. \MP{} is able to integrate text and mathematics, marked up
+for use with \TeX{}, within the graphics. (Knuth tells us that he
+uses nothing but \MP{} for diagrams in text that he is writing.)
+
+Although \PDFLaTeX{} cannot ordinarily handle \PS{} graphics, the
+output of \MP{} is sufficiently simple and regular that \PDFLaTeX{}
+can handle it direct, using code borrowed from
+\begin{hyperversion}
+ \Qref*{\context{}}{Q-context}~---
+\end{hyperversion}
+\begin{flatversion}
+ \context{}~---
+\end{flatversion}
+see \Qref[question]{graphics in \PDFLaTeX{}}{Q-pdftexgraphics}.
+
+Much of \MP{}'s source code was copied from \MF{}'s sources, with
+Knuth's permission.
+
+A mailing list discussing \MP{} is available;
+\begin{flatversion}
+ subscribe via the \acro{TUG} \ProgName{mailman} interface at
+ \URL{http://lists.tug.org/metapost}
+\end{flatversion}
+\begin{hyperversion}
+ subscribe via the % ! line break
+ \href{http://lists.tug.org/metapost}{\acro{TUG} \ProgName{mailman} interface}.
+\end{hyperversion}
+The \acro{TUG} website also hosts a % ! line break
+\href{http://tug.org/metapost.html}{\MP{} summary page}, and the
+\Package{tex-overview} document gives you a lot more detail (and some
+explanatory background material).
+\begin{ctanrefs}
+\item[tex-overview.pdf]\CTANref{tex-overview}
+\end{ctanrefs}
+\LastEdit{2013-12-10}
+
+\Question[Q-texthings]{Things with ``\TeX{}'' in the name}
+
+New \TeX{} users are often baffled by the myriad terms with ``\TeX{}''
+in the name. The goal of this answer is to clarify some of the more
+common such terms.
+
+\paragraph{\TeX{} itself}
+\TeX{} proper is a typesetting system based on a set of low-level
+control sequences that instruct \TeX{} how to lay out text on the
+page. For example, \csx{hskip} inserts a given amount of horizontal
+space into the document, and \csx{font} makes a given font available
+in a document. \TeX{} is fully programmable using an integrated macro
+scripting language that supports variables, scoping, conditional
+execution, control flow, and function (really, macro) definitions.
+See % ! line break
+\Qref[question]{what is \TeX{}?}{Q-whatTeX} for some background
+information on \TeX{} and % ! line break
+\Qref[question]{some reference documents}{Q-ref-doc} for pointers to
+descriptions of \TeX{} control sequences, data types, and other key
+parts of \TeX{}.
+
+\paragraph{\TeX{} macro packages (a.k.a.~\TeX{} formats)}
+Some of \TeX{}'s control sequences are tedious to use directly; they are
+intended primarily as building blocks for higher-level~--- and therefore
+more user-friendly~--- abstractions. For example, there is no way in
+base \TeX{} to specify that a piece of text should be typeset in a
+larger font. Instead, one must keep track of the current size and
+typeface, load a new font with the same typeface but a (specified)
+larger size, and tell \TeX{} to use that new font until instructed
+otherwise. Fortunately, because \TeX{} is programmable, it is
+possible to write a macro that hides this complexity behind a simple,
+new control sequence. (For example, it is possible to define
+\cmdinvoke{larger}{my text} to typeset ``my text'' in
+at a font size next larger than the current one.)
+
+While some users write their own, perfectly customized set of
+macros~--- which they then typically reuse across many documents~--- it is
+far more common to rely upon a \emph{macro package}, a collection of
+\TeX{} macros written by experts. For the user's convenience, these
+macro packages are often combined with the base \TeX{} engine into a
+standalone executable. The following are some of that macro packages
+that you are likely to encounter:
+\begin{description}
+ \item[Plain \TeX{} (executable: \ProgName{tex})]
+ See
+ \Qref[questions]{Books on \TeX{} and \plaintex{}}{Q-tex-books},
+ \Qref[]{Online introductions: \TeX{}}{Q-man-tex},
+ \Qref[]{Should I use Plain \TeX{} or \LaTeX{}?}{Q-plainvltx} and
+ \Qref[]{Freely available \AllTeX{} books}{Q-ol-books}.
+ Note that the Plain \TeX{} executable is called \ProgName{tex}; the
+ base \TeX{} engine is generally provided by a separate executable
+ such as \ProgName{initex} or as a \texttt{-ini} flag to
+ \ProgName{tex}.
+
+ \item[\LaTeX{} (executable: \ProgName{latex})]
+ See
+ \Qref[questions]{Books on \TeX{} and its relations}{Q-latex-books},
+ \Qref[]{\AllTeX{} Tutorials, etc.}{Q-tutorials*},
+ \Qref[]{Online introductions: \LaTeX{}}{Q-man-latex} and
+ \Qref[]{Specialized \AllTeX{} tutorials}{Q-tutbitslatex}.
+ Note that there have been two major versions of \LaTeX{}: \LaTeXe{}
+ refers to the current version of \LaTeX{} while \LaTeXo{} is the
+ long-since-obsolete (since 1994) version (cf.~%
+ \Qref[question]{What is \LaTeXe{}?}{Q-latex2e} for more information).
+
+ \item[\CONTeXT{} (executable: \ProgName{texmfstart})]
+ See
+ \Qref[question]{What is \CONTeXT{}?}{Q-context}.
+
+ \item[Texinfo (executables: \ProgName{tex}, \ProgName{makeinfo})]
+ See
+ \Qref[question]{What is Texinfo?}{Q-texinfo}. \ProgName{makeinfo}
+ converts Texinfo documents to \acro{HTML}, DocBook, Emacs info,
+ \acro{XML}, and plain text. \ProgName{Tex} (or wrappers such as
+ \ProgName{texi2dvi} and \ProgName{texi2pdf}) produce one of \TeX{}'s
+ usual output formats such as \acro{DVI} or \acro{PDF}. Because
+ \ProgName{tex} loads the Plain \TeX{} macros, not the Texinfo ones,
+ a Texinfo document must begin with
+ \begin{quote}
+ \csx{input}\texttt{ texinfo}
+ \end{quote}
+ explicitly load the Texinfo macro package.
+
+ \item[\Eplain{}~--- Extended Plain \TeX{} (executable: \ProgName{eplain})]
+ See
+ \Qref[question]{What is \Eplain{}?}{Q-eplain}.
+\end{description}
+
+\paragraph{Modified \ProgName{tex} executables}
+The original \ProgName{tex} executable was produced in the late 1970s
+(cf.~\Qref[question]{What is \TeX{}?}{Q-whatTeX}) and consequently
+lacked some features that users have come to expect from today's
+software. The following programs address these issues by augmenting
+the \TeX{} engine with some additional useful features:
+
+\begin{description}
+ \item[\PDFTeX{} (executable: \ProgName{pdftex})]
+ \TeX{}, which predates the \acro{PDF} file format by a decade,
+ outputs files in a \TeX{}-specific format called \acro{DVI}
+ (cf.~\Qref[question]{What is a \acro{DVI} file?}{Q-dvi}). In
+ contrast, \PDFTeX{} can output both \acro{DVI} \emph{and} \acro{PDF}
+ files. In \acro{PDF} mode, it lets documents exploit various
+ \acro{PDF} features such as hyperlinks, bookmarks, and annotations,
+ \PDFTeX{} additionally supports two sophisticated micro-typographic
+ features: character protrusion and font expansion. See
+ \Qref[question]{What is \PDFTeX{}?}{Q-whatpdftex}.
+
+ \item[\xetex{} (executable: \ProgName{xetex})]
+ \xetex{} reads \acro{UTF}-8 encoded Unicode input, and extends
+ \TeX{}'s font support to include `modern' formats such as TrueType
+ and OpenType; these extensions to its capabilities make it
+ well-suited to multi-lingual texts covering different writing
+ systems. See \Qref[question]{What is \xetex{}?}{Q-xetex}.
+
+ \item[\LuaTeX{} (executable: \ProgName{luatex})]
+ \TeX{} is programmed in its own arcane, integrated, macro-based
+ programming language. \LuaTeX{} adds a second programming engine
+ using a modern scripting language, Lua, which is `embedded' in a
+ \tex{}-alike engine; it too reads \acro{UTF}-8 and uses TrueType
+ OpenType fonts. See % ! line break
+ \Qref[question]{What is \LuaTeX{}?}{Q-luatex}.
+
+ \item[\eTeX{} (executable: \ProgName{etex})]
+ \eTeX{} is an extension of \tex{}'s programming interface; as such
+ it's only indirectly useful to end users, but it can be valuable to
+ package developers; there is an increasing number of macro packages
+ that require the use of \eTeX{}. As well as existing in
+ \ProgName{etex}, \eTeX{} features are usually available in the
+ \ProgName{pdftex} executables provided in the standard
+ distributions; \xetex{} and \luatex{} also provide \etex{}'s
+ programming facilities. See % ! line break
+ \Qref[question]{What is \eTeX{}?}{Q-etex}.
+
+ (Note: \eTeX{}, which enhances the \TeX{} engine, is not to be
+ confused with \Eplain{}, which enhances the Plain \TeX{} macro
+ package.)
+\end{description}
+
+Because each of the above derive from a base \TeX{} engine, it is in
+principle possible to combine any of them with one of the \TeX{} macro
+packages listed earlier to produce `extended' executables. For
+example, the \ProgName{pdflatex}, \ProgName{xelatex} and
+\ProgName{lualatex} executables each combine \LaTeX{} with an enhanced
+\TeX{} engine. Indeed, most (if not all) of the development of
+\context{} is now using \luatex{}.
+
+Some executables combine the features of multiple enhanced \TeX{}
+engines: for example, \ProgName{pdftex} now (in current distributions)
+offers both \PDFTeX{} and \eTeX{} extensions into a single executable
+This executable may be offered with a \LaTeX{} format (as
+\ProgName{latex} or \ProgName{pdflatex}) or with a \plaintex{} format
+(as \ProgName{pdftex}). (\ProgName{Tex} remains with an unadorned
+\TeX{} executable using \plaintex{}, for people such as Knuth himself,
+who want the certainty of the ``original''.)
+
+\paragraph{\TeX{} distributions}
+A \emph{\TeX{} distribution} provides a structured collection of
+\TeX{}-related software. Generally, a \TeX{} distribution includes a
+set of ``core'' \TeX{} executables such as \ProgName{tex} and
+\ProgName{latex}; various fonts optimized for use with \TeX{}; helper
+programs such as the \BibTeX{} bibliographic-database formatter,
+editors, integrated development environments, file-format-conversion
+programs; numerous \LaTeX{} packages; configuration tools; and any
+other goodies the distributor chooses to include.
+
+Commonly encountered \TeX{} distributions include \texlive{},
+\miktex{} and Mac\TeX{}; older ones include oz\TeX{},
+\acro{CM}ac\TeX{} and te\TeX{}. \miktex{} is also available as the
+basis of the Pro\TeX{}t bundle, distributed on the \texlive{}
+\acro{DVD} mailing, as well as being available online.
+
+Some \TeX{} distributions target a specific operating system and/or
+processor architecture; others run on multiple platforms. Many \TeX{}
+distributions are free; a few require payment. See % ! line break
+\Qref[question]{\AllTeX{} for different machines}{Q-TeXsystems} for a
+list of free and shareware \TeX{} distributions and % ! line break
+\Qref[question]{Commercial \TeX{} implementations}{Q-commercial} for a
+list of commercial \TeX{} distributions.
+
+\paragraph{Summary}
+What does it all mean?~--- the simple lists of objects, alone, offer
+no help for the beginner. The \acro{FAQ} team expects this answer
+only to be of use for people who are seeking guidance elsewhere
+(possibly within these \acro{FAQ}s) and coming across an unexpected
+name like ``blah\tex{}''.
+
+The subject matter covered by this answer is also addressed in a page
+on the \acro{TUG} site, % ! line break
+``\href{http://tug.org/levels.html}{the Levels of \tex{}}''.
+\LastEdit{2011-09-26}
+
+\Question[Q-ctan]{What is \acro{CTAN}?}
+
+The acronym stands for ``Comprehensive \tex{} Archive Network'', which
+more-or-less specifies what it's \emph{for}:
+\begin{itemize}
+\item The archives offer a comprehensive collection of \tex{} resources.
+\item The content is made publicly accessible, via the internet.
+\item \acro{CTAN} is a \emph{network} of archives, which strive to
+ stay in step with one another.
+\end{itemize}
+The basic framework was developed by a \acro{TUG} working group set up
+to resolve the (then existing) requirement for users to \emph{know} on
+which archive site a particular package might be found.
+
+Actual implementation offers three distinct types of host:
+\begin{description}
+\item[\emph{Core} archives]Which form a small, tightly-coupled set of
+ machines, which perform management functions as well as serving
+ files;
+\item[\emph{Mirror} archives]Which do no more than take regular copies
+ of core archives, and serve them; and
+\item[Archive selector]Which is a meta-service, which routes requests
+ to an apparently ``local'' mirror (``local'' is determined by an
+ algorithm that uses your net address to determine where you are, and
+ then selects a mirror that's close).
+\end{description}
+Note that there is nothing to prevent any archive from supporting
+other functions, so a \acro{CTAN} mirror may also operate as a
+\acro{CPAN} (Perl) mirror and as a SourceForge (general free software)
+mirror, and \dots{}
+
+Functions that distinguish core archives are:
+\begin{itemize}
+\item Uploads: users may submit new (or updated) material via the
+ \Qref*{upload redirector}{Q-uploads}. Significant changes to the
+ archive are reported via the mailing list \Email{ctan-ann@dante.de}
+\item Weak consistency: changes to the content of the archives are
+ rapidly distributed to all core archives. (Consistency is `weak'
+ since changes can take several minutes to propagate.)
+\item Providing distribution (\texlive{} and \miktex{}) support.
+\item Catalogue maintenance.
+\item Mirror monitoring.
+\end{itemize}
+
+Users may make direct contact with the
+\begin{flatversion}
+ \ctan{} management team, via \mailto{ctan@dante.de}
+\end{flatversion}
+\begin{hyperversion}
+ \href{mailto:ctan@dante.de}{\ctan{} management team}.
+\end{hyperversion}
+
+Users should ordinarily download material from \acro{CTAN} via the
+\href*{http://mirror.ctan.org/}{archive selector}: this uses the
+mirror monitor's database, and uses the caller's geographical location to
+offer an efficient choice of ``sufficiently up-to-date'' mirror site for
+you to connect to. This procedure has the advantage of distributing
+the load on \ctan{} mirrors.
+
+Note that all the download links, given in the web representation of
+these \acro{FAQ}s, are set up to use the mirror selector.
+\LastEdit{2013-05-21}
+
+\Question[Q-catalogue]{The (\acro{CTAN}) catalogue}
+
+Finding stuff on networks used always to be difficult, but in recent years,
+search engines have become amazingly good at digging out unconsidered
+trifles from the myriad items of information available on the net.
+However, for the \alltex{} user, confusion is added by the tendency to
+index the same file at several \acro{CTAN} mirror sites.
+
+Further, the \alltex{} user usually needs the most recent version of a
+package; it's a rare search result that describes itself as obsolete!
+
+The \acro{CTAN} catalogue, several years after it was introduced, has
+developed into a powerful tool for dealing with these difficulties.
+It provides an entry for each package to be found on \acro{CTAN};
+users may search the catalogue for an entry, or they may browse its
+contents, using the catalogue's lists of ``categories'' of item.
+
+The basis of the catalogue is a collection of small, stylised,
+articles; each shows basic information about a package on \acro{CTAN},
+and includes pointers to download address (on a \acro{CTAN} mirror),
+documentation and home page if any, and related packages.
+
+The \href{http://www.ctan.org}{\acro{CTAN} central database machine}
+offers a ``Browse \acro{CTAN}'' area, with links to the list of
+packages, to a list of `topics' (with packages that match each topic),
+and to a list of authors (with their packages).
+
+In addition, every \acro{CTAN} mirror holds a copy of the catalogue,
+presented as a series of web pages; one may scan the files in
+alphabetic order, or use a category-based index. Such access is not
+as ``sophisticated'' as that on the central site, but it served for
+years before the central site appeared.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}The CTAN catalogue (on CTAN)]\CTANref{Catalogue}
+\end{ctanrefs}
+\LastEdit{2014-03-17}
+
+\Question[Q-triptrap]{How can I be sure it's really \TeX{}?}
+
+\TeX{} (and \MF{} and \MP{}) are written in a
+\begin{flatversion} % really "non-hyper"
+ `literate' programming language called \ProgName{Web} (\Qref{}{Q-lit})
+\end{flatversion}
+\begin{hyperversion}
+ \Qref{`literate' programming}{Q-lit} language called \ProgName{Web}
+\end{hyperversion}
+which is designed to be portable across a wide range of computer
+systems. How, then, is a new version of \TeX{} checked?
+
+Of course, any sensible software implementor will have his own suite
+of tests to check that his software runs: those who port \TeX{} and
+its friends to other platforms do indeed perform such tests.
+
+Knuth, however, provides a `conformance test' for both \TeX{}
+(\Package{trip}) and \MF{} (\Package{trap}).
+%%% Is there a similar one for \MP{}?
+He characterises these as `torture tests': they are designed not to
+check the obvious things that ordinary typeset documents, or font
+designs, will exercise, but rather to explore small alleyways off the
+main path through the code of \TeX{}. They are, to the casual reader,
+pretty incomprehensible!
+
+Once an implementation of \TeX{} has passed its \Package{trip} test, or
+an implementation of \MF{} has passed its \Package{trap} test, then it
+may in principle be distributed as a working version. (In practice,
+any distributor would test new versions against ``real'' documents or
+fonts, too; while \Package{trip} and \Package{trap} test bits of
+pathways within the program, they don't actually test for any real
+world problem.)
+\LastEdit{2011-05-28}
+
+% \Question[Q-y2k]{Are \TeX{} and friends Y2K compliant?}
+
+% \begin{description}
+% \item[Crashing:] None of \TeX{}, \MF{} or \MP{} can themselves crash
+% due to any change whatever in the date of any sort.
+
+% \item[Timestamps:] In the original sources, a 2-digit year was
+% stored as the creation time for format files and that value is
+% printed in log-files. These items should not be of general concern,
+% since the only use of the date format file is to produce the log
+% output, and the log file is designed for human readers only.
+
+% Knuth announced in 1998 that implementors would be permitted
+% alter this code without fear of being accused of non-compliance.
+% Nearly all implementations that are being actively maintained had
+% been modified to generate 4-digit years in the format file and the
+% log, by the end of 1998. The original sources themselves have now
+% been modified so that 4-digit year numbers are stored.
+
+% \item[The \csx{year} primitive:] Certification of a \TeX{}
+% implementation (see \Qref[question]{trip/trap testing}{Q-triptrap})
+% does not require that \csx{year} return a meaningful value (which
+% means that \TeX{} can, in principle, be implemented on platforms
+% that don't make the value of the clock available to user programs).
+% The \emph{\TeX{}book} (see
+% \Qref[question]{TeX-related books}{Q-tex-books}) defines \csx{year} as
+% ``the current year of our Lord'', which is the only correct meaning
+% for \csx{year} for those implementations which can supply a
+% meaningful value, which is to say nearly all of them.
+
+% In short, \TeX{} implementations should provide a value in \csx{year}
+% giving the 4-digit year Anno Domini, or the value 1776 if the
+% platform does not support a date function.
+
+% Note that if the system itself fails to deliver a correct date to
+% \TeX{}, then \csx{year} will of course return an incorrect value.
+% \TeX{} cannot be considered Y2K compliant, in this sense, on a
+% system that is not itself Y2K compliant.
+
+% \item[Macros:] \TeX{} macros can in principle perform calculations on
+% the basis of the value of \csx{year}.
+% The \Qref*{LaTeX suite}{Q-latex}
+% performs such calculations in a small number of places; the
+% calculations performed in the current (supported) version of \LaTeX{} are
+% known to be Y2K compliant.
+
+% Other macros and macro packages should be individually checked.
+
+% \item[External software:] Software such as \acro{DVI} translators
+% needs to be individually checked.
+% \end{description}
+% \LastEdit{2011-06-01}
+%
+% withdrawn 2013-05-21
+
+\Question[Q-etex]{What is \eTeX{}?}
+
+While Knuth has declared that \TeX{} will never % !line break
+\Qref*{change in any substantial way}{Q-TeXfuture}, there remain
+things that one might wish had been done differently, or indeed
+implemented at all.
+
+The \acro{NTS} project set out to produce an advanced replacement for
+\TeX{}, to provide a basis for developing such modifications: this
+``New Typesetting System'' would share Knuth's aims, but would
+implement the work in a modern way taking account of the lessons
+learned with \TeX{}. While a first demonstrator \acro{NTS} did
+appear, it wasn't practically useful, and the project seems no longer
+active.
+
+In parallel with its work on \acro{NTS} itself, the project developed
+a set of extensions that can be used with a (``true'') \TeX{} system.
+Such a modified system is known as an \eTeX{} system, and the concept
+has proved widely successful. Indeed, current \TeX{} distributions
+are delivered with most formats built with an \eTeX{}-based system (for
+those who don't want them, \eTeX{}'s extensions can be disabled, leaving
+a functionally standard \TeX{} system).
+
+The extensions range from the seemingly simple (increasing the number
+of available registers from 256 to 32768) through to extremely subtle
+programming support.
+
+\Qref*{\CONTeXT{}}{Q-context} has required \eTeX{} for its operation
+for some time, though development is now focused on the use of
+\Qref*{\luatex{}}{Q-luatex}.
+
+Some \LaTeX{} packages already specify the use of \eTeX{}. Some such
+packages may not work at all on a non-\eTeX{} system; others will
+work, but not as well as on an \eTeX{} system. The % ! line break
+\Qref*{\LaTeX{} team}{Q-LaTeX3} has announced that future \LaTeX{}
+packages (specifically those from the team, as opposed to those
+individually contributed) may require \eTeX{} for optimum performance.
+\begin{ctanrefs}
+\item[\eTeX{}]\CTANref{etex}
+\end{ctanrefs}
+\LastEdit{2011-07-13}
+
+\Question[Q-whatpdftex]{What is \PDFTeX{}?}
+
+One can reasonably say that \PDFTeX{} is (today) the main stream of
+\TeX{} distributions: most \LaTeX{} and many \CONTeXT{} users nowadays use
+\PDFTeX{} whether they know it or not (more precisely, they use
+\PDFTeX{} extended by
+\begin{hyperversion}
+ \Qref*{\eTeX{}}{Q-etex}).
+\end{hyperversion}
+\begin{flatversion}
+ \eTeX{}~--- \Qref{}{Q-etex}).
+\end{flatversion}
+So what is \PDFTeX{}?
+
+\PDFTeX{} is a development of \TeX{} that is capable of generating
+typeset \acro{PDF} output in place of \acro{DVI}. \PDFTeX{} has
+other capabilities, most notably in the area of fine typographic
+detail (for example, its support for % ! line break
+\begin{hyperversion}
+ \Qref{optimising line breaks}{Q-overfull}),
+\end{hyperversion}
+\begin{flatversion}
+ % ( <- dummy for paren balancing
+ optimising line breaks~--- \Qref{}{Q-overfull}),
+\end{flatversion}
+but its greatest impact to date has been in the area of
+\acro{PDF} output.
+
+\PDFTeX{} started as a topic for H\`an \The {} Th\`anh's Master's~thesis,
+and seems first to have been published in \TUGboat{} 18(4), in 1997
+(though it was certainly discussed at the \acro{TUG}'96 conference in
+Russia).
+
+While the world was making good use of ``pre-releases'' of \PDFTeX{},
+Th\`anh used it as a test-bed for the micro-typography which was the
+prime subject of his Ph.D.~research. Since Th\`anh was finally
+awarded his Ph.D., day-to-day maintenance and development of
+\PDFTeX{}~1.0 (and later) has been in the hands of a group of
+\PDFTeX{} maintainers (which includes Th\`anh); the group has managed
+to maintain a stable platform for general use.
+
+Development of \PDFTeX{} has mostly stopped (only bug fixes, and
+occasional small development items are processed): future development
+is focused on \Qref*{\LuaTeX{}}{Q-luatex}.
+\LastEdit{2011-05-28}
+
+\Question[Q-latex]{What is \LaTeX{}?}
+
+\LaTeX{} is a \TeX{} macro package, originally written by Leslie Lamport, that
+provides a document processing system. \LaTeX{} allows markup to
+describe the structure of a document, so that the user
+need not think about presentation. By using document classes and
+add-on packages, the same document can be produced in a variety of
+different layouts.
+
+Lamport says that \LaTeX{}
+``\emph{represents a balance between functionality and ease of use}''.
+This shows itself as a continual conflict that leads to
+the need for such things as \acro{FAQ}s: \LaTeX{} \emph{can}
+meet most user requirements, but finding out \emph{how} is often
+tricky.
+
+\Question[Q-latex2e]{What is \LaTeXe{}?}
+
+Lamport's last version of \LaTeX{} (\LaTeXo{}, last updated in 1992)
+was superseded in 1994 by a new version (\LaTeXe{}) provided by
+\Qref*{the \LaTeX{} team}{Q-LaTeX3}.
+\LaTeXe{} is now the only readily-available version of
+\LaTeX{}, and draws together several threads of \LaTeX{} development
+from the later days of \LaTeXo{}. The ``e'' of the name is (in the
+% next (ghastly) line needed to maintain typesetting
+\wideonly{\Qref{official logo}{Q-logos}}\narrowonly{official logo~--- \Qref{\relax}{Q-logos}})
+% the \relax allows sanitize to cope with the line. just don't ask...
+a single-stroke epsilon
+(\latexhtml{\ensuremath{\varepsilon}}{&epsilon;}, supposedly
+indicative of no more than a small change).
+
+\LaTeXe{} has several enhancements over \LaTeXo{}, but they were all
+rather minor, with a view to continuity and stability rather than the
+``big push'' that some had expected from the team. \LaTeXe{}
+continues to this day to offer a compatibility mode in which most
+files prepared for use with \LaTeXo{} will run (albeit with somewhat
+reduced performance, and subject to voluminous complaints in the log
+file). Differences between \LaTeXe{} and \LaTeXo{} are
+outlined in a series of `guide' files that are available in every
+\LaTeX{} distribution (the same directory also contains ``news'' about
+each new release of \LaTeXe{}).
+
+Note that, now, \latexe{} is ``feature frozen'' (the only allowed
+changes come from bug reports); this, too, is in pursuit of stability,
+and is a driving force for many of the efforts to contribute \latex{}
+packages.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\LaTeX{} guides and news]\CTANref{latexdoc}
+\end{ctanrefs}
+\LastEdit{2011-08-19}
+
+\Question[Q-latexpronounce]{How should I pronounce ``\LaTeX{}(\twee{})''?}
+
+Lamport never recommended how one should pronounce \LaTeX{}, but a lot
+of people pronounce it `Lay \TeX{}' or perhaps `Lah \TeX{}' (with
+\TeX{} pronounced as the program itself; see
+\Qref[question]{the rules for TeX}{Q-TeXpronounce}). It is definitely
+\emph{not} to be pronounced in the same way as the rubber-tree gum
+(which would be `lay teks').
+
+The \LaTeXe{} logo is supposed to end with an
+\latexhtml{\ensuremath{\varepsilon}}{&epsilon;}; nevertheless, most
+people pronounce the name as `\LaTeX{}-two-ee'.
+\LastEdit{2009-06-08}
+
+\Question[Q-plainvltx]{Should I use \plaintex{} or \LaTeX{}?}
+
+There's no straightforward answer to this question. Many people swear
+by \plaintex{}, and produce highly respectable documents using it
+(Knuth is an example of this, of course). But equally, many people
+are happy to let someone else take the design decisions for them,
+accepting a small loss of flexibility in exchange for a saving of
+(mental) effort.
+
+The arguments around this topic can provoke huge amounts of noise and
+heat, without offering much by way of light; your best bet may be to
+find out what those around you are using, and to follow them in the
+hope of some support. Later on, you can always switch your
+allegiance; don't bother about it.
+
+If you are preparing a manuscript for a publisher or journal, ask them
+what markup they want before you
+develop your own; many big publishers have developed their own
+\AllTeX{} styles for journals and books, and insist that authors stick
+closely to their markup.
+
+\Question[Q-LaTeXandPlain]{How does \LaTeX{} relate to \plaintex{}?}
+
+\tex{} provides a programming language (of sorts), and any document
+more complex than the trivial ``hello world'' will need some
+programming.
+
+\LaTeX{} and \plaintex{} are both libraries written for use with
+\tex{}; the user commands \ProgName{tex} and \ProgName{latex} invoke
+\tex{}-the-program with a library incorporated. Libraries that may be
+loaded in this way are known as `\emph{formats}'; when a user ``runs''
+\plaintex{} or \latex{}, they are running \tex{} (the program) with an
+appropriate format. The documents are then programmed in \plaintex{}
+or \latex{} \emph{language}.
+
+\plaintex{} and \latex{} exist because writing your documents in `raw'
+\TeX{} could involve much reinventing of wheels for every document.
+Both languages serve as convenient aids to make document writing more
+pleasant: \LaTeX{} provides many more items to support `common'
+requirements of documents.
+
+As such, \LaTeX{} is close to being a superset of \plaintex{}, but
+some \plaintex{} commands don't work as expected when used in a
+\latex{} document. Using \plaintex{} commands in a \latex{} document
+is an occasional source of bugs: the output is \emph{almost} right,
+but some things are misplaced.
+
+So, \plaintex{} and \latex{} are related through a common parent, and
+are designed for use in similar jobs; programming for one will often
+not work correctly in the other.
+\LastEdit{2014-03-18}
+
+\Question[Q-context]{What is \context{}?}
+
+\href{http://www.pragma-ade.com/}{\context{}} is a macro package
+created by Hans Hagen of Pragma-Ade; it started as a production tool
+for Pragma (which is a publishing company). \CONTeXT{} is a
+document-production system based, like \LaTeX{}, on the \TeX{}
+typesetting system. Whereas \LaTeX{} insulates the writer from
+typographical details, \context{} takes a complementary approach by
+providing structured interfaces for handling typography, including
+extensive support for colors, backgrounds, hyperlinks, presentations,
+figure-text integration, and conditional compilation. It gives the
+user extensive control over formatting while making it easy to create
+new layouts and styles without learning the \TeX{} macro
+language. \CONTeXT{}'s unified design avoids the package clashes that
+can happen with \LaTeX{}.
+
+\context{} also integrates MetaFun, a superset of \MP{} and a powerful
+system for vector graphics. MetaFun can be used as a stand-alone
+system to produce figures, but its strength lies in enhancing
+\context{} documents with accurate graphic elements.
+
+\context{} allows users to specify formatting commands in English,
+Dutch, German, French, or Italian, and to use different typesetting
+engines (\PDFTeX{}, Xe\TeX{}, Aleph and \LuaTeX{}) without
+changing the user interface. \context{} continues to develop, often in
+response to requests from the user community.
+
+The development of \Qref*{\luatex{}}{Q-luatex} was originally driven
+by \context{}, almost from the start of its project. Nowadays,
+\context{} it is distributed in two versions~--- mark two (files with
+extension \extension{mkii}) which runs on \pdftex{} but is not under
+active development, and mark four (files with extension
+\extension{mkiv}) (which runs on \luatex{} and is where development
+happens).
+
+\context{} has a large developer community (though possibly not as
+large as that of latex{}), but those developers who are active seem to have
+prodigious energy. Support is available via a % ! line break
+\href{http://wiki.contextgarden.net/Main_Page}{\acro{WIKI} site} and via the
+\href{http://www.ntg.nl/mailman/listinfo/ntg-context}{mailing list}.
+A ``standalone'' distribution (a \TeX{} distribution with no macros
+other than \context{}-based ones) is available from
+\url{http://minimals.contextgarden.net/} --- it provides
+a \context{} system on any of a number of platforms, executing either
+mark~ii or mark~iv \context{}.
+
+Note that \acro{CTAN} does \emph{not} hold the primary distribution of
+\context{}~--- potential users should refer to
+\href{http://contextgarden.net}{\context{} `garden' site} for details
+of the
+current distribution. \acro{CTAN} holds a copy of \CONTeXT{} but
+makes no claim about its ``up-to-date''ness. Likewise, \acro{CTAN}
+holds a few contributed \context{} packages, but many more are to be
+found via the \href{http://contextgarden.net}{\CONTeXT{} garden}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\CONTeXT{} distribution]\CTANref{context}
+\item[\nothtml{\rmfamily}\CONTeXT{} packages selection]\CTANref{context-contrib}
+\end{ctanrefs}
+\LastEdit{2014-05-30}
+
+\Question[Q-AMSpkg]{What are the \acro{AMS} packages (\AMSTeX{}, \emph{etc}.)?}
+
+\AMSTeX{} is a \TeX{} macro package, originally written by Michael Spivak for
+the American Mathematical Society (\acro{AMS}) during 1983--1985 and
+is described in the book ``\Qref*{The Joy of \TeX{}}{Q-tex-books}''.
+It is based on \plaintex{}, and provides many
+features for producing more professional-looking maths formulas with
+less burden on authors. It pays attention to the finer details of
+sizing and positioning that mathematical publishers care about. The
+aspects covered include multi-line displayed equations, equation
+numbering, ellipsis dots, matrices, double accents, multi-line
+subscripts, syntax checking (faster processing on initial
+error-checking \TeX{} runs), and other things.
+
+As \LaTeX{} increased in popularity, authors sought to submit papers to
+the \acro{AMS} in \LaTeX{}, so \AMSLaTeX{} was developed. \AMSLaTeX{}
+is a collection of \LaTeX{} packages and classes that offer authors most of
+the functionality of \AMSTeX{}.
+The \acro{AMS} no longer recommends the use of \AMSTeX{}, and urges
+its authors to use \AMSLaTeX{} instead.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\AMSTeX{} distribution]\CTANref{amstex}
+\item[\nothtml{\rmfamily}\AMSLaTeX{} distribution]\CTANref{amslatex}
+\end{ctanrefs}
+\LastEdit{2011-06-01}
+
+\Question[Q-eplain]{What is \Eplain{}?}
+
+The \href{http://tug.org/eplain}{\Eplain{}}
+macro package expands on and extends the definitions in \plaintex{}.
+\Eplain{} is not intended to provide ``generic typesetting
+capabilities'', as do \CONTeXT{}, \LaTeX{} or
+\Qref*{Texinfo}{Q-texinfo}. Instead, it defines macro tools that
+should be useful whatever commands you choose to use when you prepare
+your manuscript.
+
+For example, \Eplain{} does not have a command \csx{section},
+which would format section headings in an ``appropriate'' way, as
+\LaTeX{}'s \csx{section} does. The philosophy of \Eplain{} is that
+some people will always need or want to go beyond the macro designer's
+idea of ``appropriate''. Canned sets of macros are fine~--- as long as you
+are willing to accept the resulting output. If you don't like the
+results, or if you are trying to match a different format, you may
+find that \Eplain{} is for you.
+
+On the other hand, almost everyone would like capabilities such as
+cross-referencing by labels, so that you don't have to put actual page
+numbers in the manuscript. The authors of \Eplain{} believe it is the
+only generally available macro package that does not force its
+typographic style on an author, and yet provides these capabilities.
+
+Another useful feature of \Eplain{} is the ability to create PDF files
+with hyperlinks. The cross-referencing macros can implicitly generate
+hyperlinks for the cross-references, but you can also create explicit
+hyperlinks, both internal (pointing to a destination within the
+current document) and external (pointing to another local document or
+a URL).
+
+Several \LaTeX{} packages provide capabilities which \plaintex{}
+users are lacking, most notably text colouring and rotation provided by
+the \Package{graphics} bundle (packages \Package{color} and
+\Package{graphics}). Although the \Package{graphics} bundle provides
+a \plaintex{} ``loader'' for some of the packages, it is not a
+trivial job to pass options to those packages under \plaintex{}, and
+much of the functionality of the packages is accessed through package
+options. \Eplain{} extends the loader so that options can be passed
+to the packages just as they are in \LaTeX{}. The following packages are
+known to work with \Eplain{}: \Package{graphics}, \Package{graphicx},
+\Package{color}, \Package{autopict} (\LaTeX{} picture environment),
+\Package{psfrag}, and \Package{url}.
+
+\href{http://tug.org/docs/html/eplain}{\Eplain{} documentation} is
+available online (there's a \acro{PDF} copy in the \acro{CTAN}
+package as well), and there's also a mailing list~--- sign up, or
+browse the list archives, via
+\URL{http://tug.org/mailman/listinfo/tex-eplain}
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\Eplain{} distribution]\CTANref{eplain}
+\end{ctanrefs}
+\LastEdit{2013-06-25}
+
+\Question[Q-texinfo]{What is Texinfo?}
+
+Texinfo is a documentation system that uses one source file to produce
+both on-line information and printed output. So instead of writing
+two different documents, one for the on-line help and the other for a
+typeset manual, you need write only one document source file. When
+the work is revised, you need only revise one document. By
+convention, Texinfo source file names end with a \extension{texi} or
+\extension{texinfo} extension.
+
+Texinfo is a macro language, somewhat similar to \LaTeX{}, but with
+slightly less expressive power. Its appearance is of course rather
+similar to any \TeX{}-based macro language, except that its macros
+start with \texttt{@} rather than the |\| that's more commonly used in
+\TeX{} systems.
+
+You can write and format Texinfo files into Info files within \acro{GNU}
+\ProgName{emacs}, and read them using the \ProgName{emacs} Info
+reader. You can also format Texinfo files into Info files using
+\ProgName{makeinfo} and read them using \ProgName{info}, so you're not
+dependent on \ProgName{emacs}. The distribution includes a
+\ProgName{Perl} script, \ProgName{texi2html}, that will convert
+Texinfo sources into \acro{HTML}: the language is a far better fit to
+\acro{HTML} than is \LaTeX{}, so that the breast-beating agonies of
+\Qref*{converting \LaTeX{} to \acro{HTML}}{Q-LaTeX2HTML} are largely
+avoided.
+
+Finally, of course, you can also print the files, or convert them to
+\acro{PDF} using \PDFTeX{}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Texinfo distribution]\CTANref{texinfo}
+\end{ctanrefs}
+
+\Question[Q-lollipop]{Lollipop}
+
+A long time ago (in the early 1990s), the Lollipop \tex{} format was
+developed (originally to typeset the excellent book % !line break
+\Qref{\tex{} by topic}{Q-tex-books}). Several people admired the
+format, but no ``critical mass'' of users appeared, that could have
+prompted maintenance of the format.
+
+More than 20 years later, a new maintainer appeared: he hopes to build
+Lollipop into an engine for rapid document style development. (In
+addition, he intends to add support for right-to-left languages such
+as his own~--- Persian.)
+
+We can only hope that, this time, Lollipop will ``catch on''!
+\begin{ctanrefs}
+\item[lollipop]\CTANref{lollipop}
+\end{ctanrefs}
+
+\Question[Q-whyfree]{If \TeX{} is so good, how come it's free?}
+
+It's free because Knuth chose to make it so (he makes money from
+royalties on his \TeX{} books, which still sell well). He is
+nevertheless apparently happy that others should earn money by selling
+\TeX{}-based services and products. While several valuable
+\TeX{}-related tools and packages are offered subject to restrictions
+imposed by the \acro{GNU} General Public Licence (\acro{GPL},
+sometimes referred to as `Copyleft'), which denies the right to
+commercial exploitation. \TeX{} itself is offered under a pretty
+permissive licence of Knuth's own.
+
+There are commercial versions of \TeX{} available; for some users,
+it's reassuring to have paid support. What is more, some of the
+commercial implementations
+have features that are not available in free versions. (The
+reverse is also true: some free implementations have features
+not available commercially.)
+
+This \acro{FAQ} concentrates on `free' distributions of \TeX{}, but we
+do at least list the \Qref*{major vendors}{Q-commercial}.
+\LastEdit{2013-06-25}
+
+\Question[Q-TeXfuture]{What is the future of \TeX{}?}
+
+Knuth has declared that he will do no further development of \TeX{};
+he will continue to fix any bugs that are reported to him (though
+bugs are rare). This decision was made soon after
+\TeX{} version~3.0 was released; at each bug-fix release
+the version number acquires one more digit, so that it tends to the
+limit~\ensuremath{\pi} (at the time of writing, Knuth's latest release
+is version 3.1415926). Knuth wants \TeX{} to be frozen at
+version~\ensuremath{\pi} when he dies; thereafter, no further changes
+may be made to Knuth's source. (A similar rule is applied to \MF{};
+its version number tends to the limit~\emph{e}, and currently
+stands at 2.718281.)
+
+Knuth explains his decision, and exhorts us all to respect it, in a
+paper originally published in % ! line break
+\href{http://tug.org/TUGboat/Articles/tb11-4/tb30knut.pdf}{\TUGboat{} 11(4)},
+and reprinted in the % ! line break
+\href{http://www.ntg.nl/maps/pdf/5_34.pdf}{NTG journal MAPS}.
+
+There are projects (some of them long-term
+projects: see, for example,
+\Qref[question]{the LaTeX3 project}{Q-LaTeX3})
+%\Qref[and]{and the SGML work}{Q-SGML})
+to build substantial new macro packages based on \TeX{}. There are
+also various projects to build a \emph{successor} to \TeX{}. The
+\Qref*{\eTeX{}}{Q-etex} extension to \TeX{} itself arose from such a
+project (\acro{NTS}). Another pair of projects, which have delivered
+all the results they are likely to deliver, is the
+related % ! line break
+\Qref*{Omega and Aleph}{Q-omegaleph}. The % ! line break
+\Qref*{\xetex{} system}{Q-xetex} is in principle still under
+development, but is widely used, and the % ! line break
+\Qref*{\LuaTeX{} project}{Q-luatex} (though not scheduled to produce
+for some time) has already delivered a system that increasingly
+accessible to ``ordinary users''.
+\LastEdit{2013-05-21}
+
+\Question[Q-readtex]{Reading \AllTeX{} files}
+
+So you've been sent an \AllTeX{} file: what are you going to do with
+it?
+
+You can, of course, ``just read it'', since it's a plain text file;
+the problem is that the markup tags in the document may prove
+distracting. Most of the time, even \TeX{} \emph{experts} will
+typeset a \AllTeX{} file before attempting to read it\nobreakspace{}\dots{}
+
+So you shouldn't be too concerned if you can't make head nor tail of
+the file: it is designed to be read by a (sort of) compiler, and
+compilers don't have much in common with human readers.
+
+A possible next step is to try an on-line \latex{} editor. There are
+many of these~--- a compilation of links may be found in % line break
+\href{http://texblog.net/latex-link-archive/online-compiler/}{this blog post}
+
+Of that long list, the present author has only dabbled with
+\href{https://www.writelatex.com/}{Write\latex{}}; it seems well
+suited to simple `one-shot' use in this way.
+
+If no online compiler helps, you need to typeset the document
+``yourself''. The good news is that \TeX{} systems are available,
+free, for most sorts of computer; the bad news is that you need a
+pretty complete \TeX{} system even to read a single file, and complete
+\TeX{} systems are pretty large.
+
+\TeX{} is a typesetting system that arose from a publishing project (see
+\wideonly{``}\Qref[question]{what is \TeX{}}{Q-whatTeX}\wideonly{''}),
+and its basic source is available free from its author. However, at
+its root, it is \emph{just} a typesetting engine: even to view or to
+print the typeset output, you will need ancillary programs. In short,
+you need a \TeX{} \emph{distribution}~--- a collection of
+\TeX{}-related programs tailored to your operating system: for details
+of the sorts of things that are available, see
+% beware line break
+\htmlonly{``}\Qref[question]{\TeX{} distributions}{Q-TeXsystems}\htmlonly{''}
+or
+% beware line break
+\htmlonly{``}\Qref[\htmlonly]{commercial \TeX{} distributions}{Q-commercial}\latexhtml{ (for commercial distributions)}{''}.
+
+But beware~--- \TeX{} makes no attempt to look like the sort of
+\WYSIWYG{} system you're probably used to (see
+% beware line wrap
+\wideonly{``}\Qref[question]{why is \TeX{} not \WYSIWYG{}}{Q-notWYSIWYG}\wideonly{''}):
+while many modern versions of \TeX{} have a compile--view cycle that
+rivals the best commercial word processors in its responsiveness, what
+you type is usually \emph{markup}, which typically defines a logical
+(rather than a visual) view of what you want typeset.
+
+So there's a balance between the simplicity of the original
+(marked-up) document, which can more-or-less be read in \emph{any}
+editor, and the really rather large investment needed to install a
+system to read a document ``as intended''.
+
+Are you ``put off'' by all this?~--- remember that \tex{} is good at
+producing \acro{PDF}: why not ask the person who sent the \tex{} file
+to send an \acro{PDF} copy?
+\LastEdit{2014-05-21}
+
+\Question[Q-notWYSIWYG]{Why is \TeX{} not a \WYSIWYG{} system?}
+
+\WYSIWYG{} is a marketing term (``What you see is what you get'') for
+a particular style of text processor. \WYSIWYG{} systems are
+characterised by two principal claims: that you type what you want to
+print, and that what you see on the screen as you type is a close
+approximation to how your text will finally be printed.
+
+The simple answer to the question is, of course, that \TeX{} was
+conceived long before the marketing term, at a time when the marketing
+imperative wasn't perceived as significant. (In fact, it appears that
+the first experimental \WYSIWYG{} systems were running in commercial
+labs, near where Knuth was working on \tex{}. At the time, of course,
+\tex{} was only available on a mainframe, and getting it to run on the
+small experimental machines would have distracted Knuth from his
+mission to create a typesetting system that he could use when
+preparing his books for publication.)
+
+However, all that was a long time ago: why has nothing been done with
+the ``wonder text processor'' to make it fit with modern perceptions?
+
+There are two answers to this. First, the simple ``things \emph{have}
+been done'' (but they've not taken over the \TeX{} world); and second,
+``there are philosophical reasons why the way \TeX{} has developed is
+ill-suited to the \WYSIWYG{} style''.
+
+Indeed, there is a fundamental problem with applying \WYSIWYG{}
+techniques to \TeX{}: the complexity of \TeX{} makes it hard to get
+the equivalent of \TeX{}'s output without actually running \TeX{} over
+the whole of the document being prepared.
+
+A celebrated early system offering ``\WYSIWYG{} using \TeX{}'' came
+from the Vor\TeX{} project: a pair of Sun workstations worked in
+tandem, one handling the user interface while the other beavered away
+in the background typesetting the result. Vor\TeX{} was quite
+impressive for its time, but the two workstations combined had hugely
+less power than the average sub-thousand-dollar Personal Computer
+nowadays, and its code has not proved portable (it never even made the
+last `great' \TeX{} version change, at the turn of the 1990s, to
+\TeX{} version 3).
+
+Lightning Textures (an extension of Blue Sky's original \TeX{} system
+for the Macintosh), is sadly no longer available.
+
+Thus``\Qref*{Scientific Word}{Q-commercial}'' (which can also interact
+with a computer algebra system), is the only remaining \tex{} system
+that even approximates to \WYSIWYG{} operation.
+
+The issue has of recent years started to attract attention
+from \TeX{} developers, and several interesting projects that address
+the ``\Qref*{\TeX{} document preparation environment}{Q-WYGexpts}''
+are in progress.
+
+All the same, it's clear that the \TeX{} world has taken a long time
+to latch onto the idea of \WYSIWYG{}.
+Apart from simple arrogance (``we're better, and have no need to
+consider the petty doings of the commercial word processor market''),
+there is a real conceptual difference between the word processor model
+of the world and the model \LaTeX{} and \CONTeXT{} employ~--- the idea of
+``markup''. ``Pure'' markup expresses a logical model of a document,
+where every object within the document is labelled according to what
+it is rather than how it should appear: appearance is deduced from the
+properties of the type of object. Properly applied, markup can
+provide valuable assistance when it comes to re-use of documents.
+
+Established \WYSIWYG{} systems find the expression of this sort of
+structured markup difficult; however, markup \emph{is} starting to
+appear in the lists of the commercial world's requirements, for two
+reasons. First, an element of markup helps impose style on a
+document, and commercial users are increasingly obsessed with
+uniformity of style; and second, the increasingly pervasive use of
+\acro{XML}-derived document archival formats demands it. The same
+challenges must needs be addressed by \TeX{}-based document
+preparation support schemes, so we are
+observing a degree of confluence of the needs of the two communities:
+interesting times may be ahead of us.
+\LastEdit{2013-06-03}
+
+\Question[Q-TUG*]{\TeX{} User Groups}
+
+There has been a \TeX{} User Group since very near the time \TeX{}
+first appeared. That first group, \acro{TUG}, is still active and its
+journal \textsl{TUGboat} continues in regular publication
+with articles about \TeX{}, \MF{} and related technologies, and about
+document design, processing and production. \acro{TUG} holds a yearly
+conference, whose proceedings are published in \textsl{TUGboat}.
+
+\acro{TUG}'s \href{http://www.tug.org}{web site} is a valuable
+resource for all sorts of
+\TeX{}-related matters, such as details of \TeX{} software, and lists
+of \TeX{} vendors and \TeX{} consultants. Back articles from
+\textsl{TUGboat} are also available.
+
+Some time ago, \acro{TUG} established a ``technical council'', whose
+task was to oversee the development of \TeX{}nical projects. Most
+such projects nowadays go on their way without any support from
+\acro{TUG}, but \acro{TUG}'s web site lists its
+
+\begin{hyperversion}
+\href{http://www.tug.org/twg.html}{Technical Working Groups (\acro{TWG}s)}.
+\end{hyperversion}
+\begin{flatversion}
+Technical Working Groups (\acro{TWG}s: see
+\URL{http://www.tug.org/twg.html}).
+\end{flatversion}
+
+\acro{TUG} has a reasonable claim to be considered a world-wide
+organisation, but there are many national and regional user groups,
+too; \acro{TUG}'s web site maintains a list of
+\begin{hyperversion}
+href{http://www.tug.org/lugs.html}{``Local User Groups'' (\acro{LUG}s)}.
+\end{hyperversion}
+\begin{flatversion}
+``local user groups'' (\acro{LUG}s: see
+\URL{http://www.tug.org/lugs.html}).
+\end{flatversion}
+
+Contact \acro{TUG} itself via \URL{http://tug.org/contact}
+LastEdit{2013-06-25}
diff --git a/obsolete/help/texfaq/faq-biblio.tex b/obsolete/help/texfaq/faq-biblio.tex
new file mode 100644
index 0000000000..36419bb1bf
--- /dev/null
+++ b/obsolete/help/texfaq/faq-biblio.tex
@@ -0,0 +1,1468 @@
+% $Id: faq-biblio.tex,v 1.15 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{Bibliographies and citations}
+
+\subsection{Creating bibliographies}
+
+\Question[Q-buildbib]{Creating a \BibTeX{} bibliography file}
+
+A \BibTeX{} bibliography file may reasonably be compared to a small
+database, the entries in which are references to literature that may
+be called up by citations in a document.
+
+Each entry in the bibliography has a \emph{type} and a unique
+\emph{key}. The bibliography is read, by \BibTeX{}, using the details
+specified in a \emph{bibliography style}. From the style, \BibTeX{}
+finds what entry types are permissible, what \emph{fields} each entry
+type has, and how to format the whole entry.
+
+The type specifies the type of document you're making reference to; it
+may run all the way from things like ``\environment{Book}'' and
+``\environment{Proceedings}'' (which may even contain other citations
+of type ``\environment{InBook}'' or ``\environment{InProceedings}'')
+through dissertation styles like ``\environment{PhdThesis}'' to
+otherwise-uncategorisable things such as ``\environment{Misc}''. The
+unique key is something you choose yourself: it's what you use when
+you want to \Qref*{cite an entry in the file}{Q-usebibtex}. People
+commonly create a key that combines the (primary) author's name and
+the year of publication, possibly with a marker to distinguish
+publications in the same year. So, for example, the Dyson, Eddington,
+Davidson paper about deflection of starlight appears in my
+experimental \extension{bib} file as \texttt{Dyson20.1}.
+
+So, noting the rules of the style, you have `simply' to write a
+bibliography database. Fortunately, there are several tools to help
+in this endeavour:
+\begin{itemize}
+\item Most of the better \Qref*{\AllTeX{}-oriented editors}{Q-editors}
+ have ``\BibTeX{} modes''.
+\item If you have an existing \environment{thebibliography}
+ environment, the \ProgName{Perl} script \ProgName{tex2bib} will
+ probably help.
+\item There are a number of \BibTeX{} bibliography management systems
+ available, some of which permit a graphical user interface to the
+ task. Sadly, none seems to be available with the ordinary \TeX{}
+ distributions.
+
+ Tools such as \ProgName{Xbibfile} (a graphical user interface),
+ \ProgName{ebib} (a database application written to run `inside'
+ \ProgName{emacs}) and
+ \ProgName{btOOL} (a set of \ProgName{perl} tools for building
+ \BibTeX{} database handlers) are available from \acro{CTAN}.
+
+ Other systems, such as
+ \href{http://refdb.sourceforge.net/}{\ProgName{RefDB}},
+ \href{http://www.nongnu.org/biborb}{BibORB},
+ \href{http://bibdesk.sourceforge.net/}{\ProgName{BibDesk}},
+ \href{http://pybliographer.org}{\ProgName{pybliographer}} and the
+ \ProgName{Java}-based
+ \href{http://freshmeat.net/projects/bibkeeper/}{\ProgName{Bibkeeper}}
+ and \href{http://jabref.sourceforge.net}{\ProgName{JabRef}} (which
+ claims to supersede \ProgName{Bibkeeper})
+ are only available from their development sites.
+% review of web database offerings in textex_368
+\item Some commercial citation-management systems will export in
+ \BibTeX{} format; an example is
+ \href{http://www.endnote.com/}{EndNote}.
+\item Data from on-line citation databases may often be translated to
+ \BibTeX{} format by utilities to be found on \acro{CTAN}. For
+ example, the \ProgName{Perl} script \ProgName{isi2bibtex} will
+ translate citations from \acro{ISI} ``Web of knowledge'' (a
+ subscription service, available to \acro{UK} academics via
+ \acro{BIDS}). UK academics may translate \acro{BIDS} downloads
+ using \ProgName{bids.to.bibtex}
+\item \href{http://scholar.google.com}{Google Scholar} provides an
+ ``Import into \BibTeX{}'' tab for each reference it finds for you:
+ that tab gives you a page containing a \BibTeX{} entry for the
+ reference.
+\end{itemize}
+\begin{ctanrefs}
+\item[bids.to.bibtex]\CTANref{bidstobibtex}
+\item[btOOL]\CTANref{btOOL}
+\item[ebib]\CTANref{ebib}
+\item[isi2bibtex]\CTANref{isi2bibtex}
+\item[tex2bib]\CTANref{tex2bib}
+\item[tex2bib.readme]\CTANref{tex2bib-doc}
+\item[xbibfile]\CTANref{xbibfile}
+\end{ctanrefs}
+
+\Question[Q-custbib]{Creating a bibliography style}
+
+It \emph{is} possible to write your own: the standard bibliography
+styles are distributed in a form with many comments, and there is a description
+of the language in the \bibtex{} distribution (see % ! line wrap
+\Qref[question]{BibTeX documentation}{Q-BibTeXing}).
+However, it must be admitted that the language in which \BibTeX{}
+styles are written is pretty obscure, and one would not recommend
+anyone who's not a confident programmer to write their own, though
+minor changes to an existing style may be within the grasp of many.
+
+If your style isn't too `far out', you can probably avoid programming
+it by using the facilities of the \Package{custom-bib} bundle. The bundle
+contains a file \File{makebst.tex}, which runs you through a text menu
+to produce a file of instructions, which you can then use to generate your
+own \extension{bst} file. This technique doesn't offer entirely new styles
+of document, but the \Package{custom-bib}'s ``master \BibTeX{}
+styles'' already offer significantly more than the \BibTeX{} standard set.
+
+An alternative, which is increasingly often recommended, to use
+\Qref*{\Package{biblatex}}{Q-biblatex}. \Package{Biblatex} offers
+many hooks for adjusting the format of the output of your `basic'
+\bibtex{} style, and a collection of `contributed' styles have also
+started to appear. Note.bowever There are not as many of
+\Package{biblatex}'s contributed styles as there are for \bibtex{},
+and there is no \Package{custom-biblatex}, both of which suggest that
+beginners' r\"ole models are hard to come by. As a result, beginners
+should probably resist the temptation to write their own contributed
+\package{biblatex} style.
+\begin{ctanrefs}
+\item[biblatex.sty]\CTANref{biblatex}
+\item[biblatex \nothtml{\normalfont}contributed styles]\CTANref{biblatex-contrib}
+\item[\nothtml{\normalfont}\BibTeX{} documentation]\CTANref{bibtex}
+\item[makebst.tex]Distributed with \CTANref{custom-bib}
+\end{ctanrefs}
+
+\Question[Q-capbibtex]{Capitalisation in \BibTeX{}}
+
+The standard \BibTeX{} bibliography styles impose fixed ideas about
+the capitalisation of titles of things in the bibliography. While
+this is not unreasonable by \BibTeX{}'s lights (the rules come from
+the \emph{Chicago Manual of Style}) it can be troublesome, since
+\BibTeX{} fails to recognise special uses (such as acronyms, chemical
+formulae, etc.).
+
+The solution is to enclose the letter or letters, whose capitalisation
+\BibTeX{} should not touch, in braces, as:
+\begin{quote}
+\begin{verbatim}
+title = {The {THE} operating system},
+\end{verbatim}
+\end{quote}
+Sometimes you find \BibTeX{} changing the case of a single letter
+inappropriately. No matter: the technique can be applied to single
+letters, as in:
+\begin{quote}
+\begin{verbatim}
+title = {Te{X}niques and tips},
+\end{verbatim}
+\end{quote}
+If your document design specification requires a different style of
+capitalisation, you should acquire a bibliography style that doesn't
+enforce \BibTeX{}'s default rules. It is definitely \emph{not} a good
+idea to enclose an entire title in braces, as in
+\begin{quote}
+\begin{verbatim}
+title = {{TeXniques and tips}},
+\end{verbatim}
+\end{quote}
+though that does ensure that the capitalisation is not changed. Your
+\BibTeX{} database should be a general-purpose thing, not something
+tuned to the requirements of a particular document or bibliography
+style, or to the way you are thinking today~--- for example, on a
+future occasion, you might find yourself using a different \BibTeX{}
+style with different capitalisation rules.
+
+There's more on the subject in the
+% beware line wrap
+\Qref*{\BibTeX{} documentation}{Q-BibTeXing}.
+
+\Question[Q-bibaccent]{Accents in bibliographies}
+
+\BibTeX{} not only has a tendency (by default) to mess about with the
+% line wrap
+\Qref*{case of letters in your bibliography}{Q-capbibtex},
+also makes a hash of accent commands:
+``\texttt{ma}\csx{\textasciitilde}\texttt{nana}'' comes out as ``ma
+nana'' (!). The solution is similar that of the letter case problem:
+enclose the troublesome sequence in braces, as
+``\texttt{\{}\csx{\textasciitilde}\texttt{n\}}'', in this example.
+
+\Question[Q-bibstrtl]{`String too long' in \BibTeX{}}
+
+The \BibTeX{} diagnostic ``Warning--you've exceeded 1000, the
+\texttt{global-string-size}, for entry \texttt{foo}'' usually arises
+from a very large abstract or annotation included in the database.
+The diagnostic usually arises because of an infelicity in the coding of
+\File{abstract.bst}, or styles derived from it. (One doesn't
+ordinarily output annotations in other styles.)
+
+The solution is to make a copy of the style file (or get a clean copy
+from \acro{CTAN}~--- \CTANref{abstract-bst}), and rename it (e.g., on a
+long file-name system, to \File{abstract-long.bst}). Now edit it: find
+function \texttt{output.nonnull} and
+\begin{itemize}
+\item change its first line (line 60 in the version on \acro{CTAN})
+ from
+\begin{quote}
+\begin{verbatim}
+{ 's :=
+\end{verbatim}
+\end{quote}
+to
+\begin{quote}
+\begin{verbatim}
+{ swap$
+\end{verbatim}
+\end{quote}
+Finally,
+\item delete the function's last line, which just says ``\texttt{s}
+ (line 84 in the version on \acro{CTAN}).
+\end{itemize}
+Finally, change your \csx{bibliographystyle} command to refer to the
+name of the new file.
+
+This technique applies equally to any bibliography style: the same
+change can be made to any similar \texttt{output.nonnull} function.
+
+If you're reluctant to make this sort of change, the only way forward
+is to take the entry out of the database, so that you don't encounter
+\BibTeX{}'s limit, but you may need to retain the entry because it
+will be included in the typeset document. In such cases, put the body
+of the entry in a separate file:
+\begin{quote}
+\begin{verbatim}
+@article{long.boring,
+ author = "Fred Verbose",
+ ...
+ abstract = "{\input{abstracts/long.tex}}"
+}
+\end{verbatim}
+\end{quote}
+In this way, you arrange that all \BibTeX{} has to deal with is the
+file name, though it will tell \TeX{} (when appropriate) to include
+all the long text.
+
+\Question[Q-manyauthor]{\BibTeX{} doesn't understand lists of names}
+
+\BibTeX{} has a strict syntax for lists of authors' (or editors')
+names in the \BibTeX{} data file; if you write the list of names in a
+``natural''-seeming way, the chances are you will confuse \BibTeX{},
+and the output produced will be quite different from what you had
+hoped.
+
+Names should be expressed in one of the forms
+\begin{quote}
+\begin{verbatim}
+First Last
+Last, First
+Last, Suffix, First
+\end{verbatim}
+\end{quote}
+and lists of names should be separated with ``\texttt{and}''.
+For example:
+\begin{quote}
+\begin{verbatim}
+AUTHOR = {Fred Q. Bloggs, John P. Doe \&
+ Another Idiot}
+\end{verbatim}
+\end{quote}
+falls foul of two of the above rules: a syntactically significant
+comma appears in an incorrect place, and `\csx{\&}' is being used as a
+name separator. The output of the above might be something like:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+John P. Doe \& Another Idiot Fred Q. Bloggs
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+John P. Doe \& Another Idiot
+ Fred Q. Bloggs
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+because ``John P. Doe \& Another Idiot has become the `first name',
+while ``Fred Q. Bloggs'' has become the `last name' of a single
+person. The example should have been written:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+AUTHOR = {Fred Q. Bloggs and
+ John P. Doe and
+ Another Idiot}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+AUTHOR = {Fred Q. Bloggs and John P. Doe and
+ Another Idiot}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+Some bibliography styles implement clever acrobatics with very long
+author lists. You can force truncation by using the pseudo-name
+``\texttt{others}'', which will usually translate to something like
+``\emph{et al}'' in the typeset output. So, if Mr.~Bloggs wanted to
+distract attention from his co-authors, he would write:
+\begin{quote}
+\begin{verbatim}
+AUTHOR = {Fred Q. Bloggs and others}
+\end{verbatim}
+\end{quote}
+
+\Question[Q-citeURL]{\acro{URL}s in \BibTeX{} bibliographies}
+
+There is no citation type for \acro{URL}s, \emph{per se}, in the
+standard \BibTeX{} styles, though Oren Patashnik (the author of
+\BibTeX{}) is believed to be considering developing one such for use
+with the long-awaited \BibTeX{} version~1.0.
+
+The actual information that need be available in a citation of an
+\acro{URL} is discussed at some length in the publicly available
+on-line
+\begin{narrowversion}
+ extracts of \acro{ISO}~690--2, available via
+ \URL{http://www.nlc-bnc.ca/iso/tc46sc9/standard/690-2e.htm};
+ % checked 2004-01-15
+\end{narrowversion}
+\begin{wideversion}
+\href{http://www.nlc-bnc.ca/iso/tc46sc9/standard/690-2e.htm}{extracts of \acro{ISO}\nobreakspace690--2};
+\end{wideversion}
+the techniques below do \emph{not} satisfy all the requirements of
+\acro{ISO}~690--2, but they offer a solution that is at least
+available to users of today's tools.
+
+Until the new version of \BibTeX{} arrives, the simplest technique is
+to use the \texttt{howpublished} field of the standard styles' \texttt{@misc}
+function. Of course, the strictures
+about \Qref*{typesetting \acro{URL}s}{Q-setURL} still apply, so the
+entry will look like:
+\begin{quote}
+\begin{verbatim}
+@misc{...,
+ ...,
+ howpublished = "\url{http://...}"
+}
+\end{verbatim}
+\end{quote}
+A possible alternative approach is to use \BibTeX{} styles other than
+the standard ones, that already have \acro{URL} entry types.
+Candidates are:
+\begin{itemize}
+\item The \Package{natbib} styles (\Package{plainnat},
+ \Package{unsrtnat} and \Package{abbrevnat}), which are extensions of
+ the standard styles, principally for use with \Package{natbib}
+ itself. However, they've acquired \acro{URL}s and other ``modern''
+ entries along the way. The same author's \Package{custom-bib} is
+ also capable of generating styles that honour \acro{URL} entries.
+\item The \Package{babelbib} bundle, which offers % ! line break
+ \Qref*{multilingual bibliographies}{Q-i18nbib}, similarly provides a
+ set of standard-style equivalents that have \acro{URL} entries.
+\item More modern styles such as the \Package{harvard} package (if the
+ citation styles are otherwise satisfactory for you).
+ \Package{Harvard} bibliography styles all include a ``\texttt{url}''
+ field in their specification; however, the typesetting offered is
+ somewhat feeble (though it does recognise and use
+ \ProgName{LaTeX2HTML} macros if they are available, to create
+ hyperlinks).
+\end{itemize}
+You can also acquire new \BibTeX{} styles by use of Norman Gray's
+\Package{urlbst} system, which is based on a \ProgName{Perl} script
+that edits an existing \BibTeX{} style file to produce a new
+style. The new style thus generated has a \texttt{webpage} entry type, and
+also offers support for \texttt{url} and \texttt{lastchecked} fields
+in the other entry types. The \ProgName{Perl} script comes with a set
+of converted versions of the standard bibliography styles.
+
+Another possibility is that some conventionally-published paper,
+technical report (or even book) is also available on the Web. In such
+cases, a useful technique is something like:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+@techreport{...,
+ ...,
+ note = "Also available as \url{http://...}"
+}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+@techreport{...,
+ ...,
+ note = "Also available as
+ \url{http://...}"
+}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+There is good reason to use the \Package{url} or \Package{hyperref}
+packages in this context: \BibTeX{} has a habit of splitting
+lines it considers excessively long, and if there are no space
+characters for it to use as `natural' breakpoints, \BibTeX{} will
+insert a comment (`\texttt{\textpercent{}}') character~\dots{}\@ which
+is an acceptable character in an \acro{URL}. Any current version of
+either of the \Package{url} or \Package{hyperref} packages detects this
+``\texttt{\textpercent{}}--end-of-line'' structure in its argument, and
+removes it.
+\begin{ctanrefs}
+\item[babelbib \nothtml{\rmfamily}bundle]\CTANref{babelbib}
+\item[custom-bib \nothtml{\rmfamily}bundle]\CTANref{custom-bib}
+\item[harvard.sty]\CTANref{harvard}
+\item[hyperref.sty]\CTANref{hyperref}
+\item[natbib \nothtml{\rmfamily}styles]\CTANref{natbib}
+\item[url.sty]\CTANref{url}
+\item[urlbst]\CTANref{urlbst}
+\end{ctanrefs}
+
+\Question[Q-bibplain]{Using \BibTeX{} with \plaintex{}}
+
+The file \File{btxmac.tex} (which is part of the \Eplain{} system)
+contains macros and documentation for using \BibTeX{} with
+\plaintex{}, either directly or with \Qref*{\Eplain{}}{Q-eplain}. See
+\Qref[question]{the use of \BibTeX{}}{Q-BibTeXing} for more
+information about \BibTeX{} itself.
+\begin{ctanrefs}
+\item[btxmac.tex]\CTANref{btxmactex}
+\item[eplain \nothtml{\rmfamily}system]\CTANref{eplain}
+\end{ctanrefs}
+
+\Question[Q-makebib]{Reconstructing \extension{bib} files}
+
+Perhaps you've lost the \extension{bib} file you generated your document from,
+or have been sent a document without one. Or even, you've realised
+the error of building a substantial document without the benefit of
+\BibTeX{}\dots{}
+
+The \ProgName{Perl} script, \Package{tex2bib} makes a reasonable job
+of regenerating \extension{bib} files from \environment{thebibliography}
+environments, provided that the original (whether automatically or
+manually generated) doesn't deviate too far from the ``standard''
+styles.
+
+You are well-advised to check the output of the script. While it will
+not usually destroy information, it can quite reasonably mislabel it.
+
+Documentation of the script is to be found in the file \File{tex2bib.readme}
+\begin{ctanrefs}
+\item[tex2bib]\CTANref{tex2bib}
+\item[tex2bib.readme]\CTANref{tex2bib-doc}
+\end{ctanrefs}
+
+\Question[Q-bibprefixsort]{\BibTeX{} sorting and name prefixes}
+
+\BibTeX{} recognises a bewildering array of name prefixes (mostly
+those deriving from European language names); it ignores the prefixes
+when sorting the bibliography~--- you want ``Ludwig van Beethoven''
+sorted under ``Beethoven'', not under ``van''. (Lamport made a witty
+deliberate mistake with Beethoven's name, in the first edition of his
+\LaTeX{} manual.)
+
+However, a recurring issue is the desire to quote Lord Rayleigh's
+publications (``Lord'' isn't an acceptable prefix), or names from
+languages that weren't considered when \BibTeX{} was designed such as
+``al-Wakil'' (transcribed from the Arabic). What's needed is a
+separate ``sort key'', but \BibTeX{} only allows such a thing in
+citations of items that have no author or editor.
+
+The solution is to embed the sort key in the author's name, but to
+prevent it from being typeset. Patashnik recommends a command
+\csx{noopsort} (no-output-sortkey), which is defined and used as
+follows:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+@PREAMBLE{ {\providecommand{\noopsort}[1]{}} }
+...
+@ARTICLE{Rayleigh1,
+AUTHOR = "{\noopsort{Rayleigh}}{Lord Rayleigh}",
+...
+}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+@PREAMBLE{
+ {\providecommand{\noopsort}[1]{}}
+}
+...
+@ARTICLE{Rayleigh1,
+AUTHOR =
+ "\noopsort{Rayleigh}{Lord Rayleigh}",
+...
+}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+Note that this \csx{noopsort} applies to the last name in this kind of
+construct, so an author with an Arabic name might be rendered:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+...
+AUTHOR = "Ali {\noopsort{Hadiidii}}{al-Hadiidii}",
+...
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+...
+AUTHOR =
+ "Ali {\noopsort{Hadiidii}}{al-Hadiidii}",
+...
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+A further use might deal with word order games, as in the famous
+Vietnamese name:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+...
+AUTHOR = "\noopsort{Thanh Han The}{Han The Thanh}",
+...
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+...
+AUTHOR =
+ "\noopsort{Thanh Han The}{Han The Thanh}",
+...
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+though that author seems well-acquainted with Western confusion about
+the significance of the parts of his name (even to the extent of
+missing out the accentuation, as above\dots{}).
+
+\Question[Q-bibtranscinit]{`Multi-letter' initials in \BibTeX{}}
+\keywords{compound initials, transcribed initials}
+
+If your bibliographic style uses initials~+ surname, you may encounter
+a problem with some transcribed names (for example, Russian ones).
+Consider the following example from the real world:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+@article{epifanov1997,
+ author = {Epifanov, S. Yu. and
+ Vigasin, A. A.},
+ title = ...
+}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+@article{epifanov1997,
+ author = {Epifanov, S. Yu. and Vigasin, A. A.},
+ title = ...
+}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+Note that the ``Yu'' is the initial, not a complete name. However,
+\BibTeX{}'s algorithms will leave you with a citation~---
+slightly depending on the bibliographic style~--- that reads:
+``S. Y. Epifanov and A. A. Vigasin, \dots{}''. instead of the intended
+``S. Yu. Epifanov and A. A. Vigasin, \dots{}''.
+
+One solution is to replace each affected initial by a command that
+prints the correct combination. To keep your bibliography portable,
+you need to add that command to your bibliography with the
+\texttt{@preamble} directive:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+@preamble{ {\providecommand{\BIBYu}{Yu} } }
+
+@article{epifanov1997,
+ author = {Epifanov, S. {\BIBYu}. and
+ Vigasin, A. A.},
+ title = ...
+}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+@preamble{ {\providecommand{\BIBYu}{Yu} } }
+
+@article{epifanov1997,
+ author = {Epifanov, S. {\BIBYu}. and Vigasin, A. A.},
+ title = ...
+}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+If you have many such commands, you may want to put them in a separate
+file and \csx{input} that \LaTeX{} file in a \texttt{@preamble}
+directive.
+
+An alternative is to make the transcription look like an accent, from
+\BibTeX{}'s point of view. For this we need a control sequence that
+does nothing:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+@article{epifanov1997,
+ author = {Epifanov, S. {\relax Yu}. and Vigasin, A. A.},
+ title = ...
+}
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+@article{epifanov1997,
+ author = {Epifanov, S. {\relax Yu}. and
+ Vigasin, A. A.},
+ title = ...
+}
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+Like the solution by generating extra commands, this involves tedious
+extra typing; which of the two techniques is preferable for a given
+bibliography will be determined by the names in it. It should be
+noted that a preamble that introduces lots of odd commands is usually
+undesirable if the bibliography is a shared one.
+
+``Compound'' initials (for single names made up of two or more words)
+may be treated in the same way, so one can enter Forster's rather
+complicated name as:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+@article{forster2006,
+ author = {Forster, P.M. {\relax de F.} and Collins, M.},
+ title = ...
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+@article{forster2006,
+ author = {Forster, P.M. {\relax de F.} and
+ Collins, M.},
+ title = ...
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+The same trick can be played if you're entering whole names:
+\begin{quote}
+\begin{verbatim}
+...
+ author = {Epifanov, Sasha {\relax Yu}ri and
+...
+\end{verbatim}
+\end{quote}
+(though no guarantee, that either of those names is right, is
+offered!)
+However, if you're typing the names in the ``natural'' (Western) way,
+with given names first, the trick:
+\begin{quote}
+\begin{verbatim}
+...
+ author = {P.M. {\relax de F.} Forster and
+...
+\end{verbatim}
+\end{quote}
+doesn't work~--- ``de F. Forster'' is treated as a compound family
+names.
+
+
+\subsection{Creating citations}
+
+\Question[Q-usebibtex]{``Normal'' use of \BibTeX{} from \LaTeX{}}
+
+To create a bibliography for your document, you need to perform a
+sequence of steps, some of which seem a bit odd. If you choose to use
+\BibTeX{}, the sequence is:
+
+First: you need a \BibTeX{} bibliography file (a \extension{bib}
+file)~--- see \Qref*[question]{``creating a \BibTeX{} file''}{Q-buildbib}.
+
+Second: you must write your \LaTeX{} document to include a declaration
+of the `style' of bibliography, citations, and a reference to the
+bibliography file mentioned above. So we may have a \LaTeX{}
+file containing:
+\begin{quote}
+\begin{verbatim}
+\bibliographystyle{plain}
+...
+Pooh is heroic~\cite{Milne:1926}.
+...
+Alice struggles~\cite{Carroll:1865}.
+...
+\bibliography{mybooks}
+\end{verbatim}
+\end{quote}
+Note: we have bibliography style \Package{plain}, above, which is
+nearly the simplest of the lot: a sample text, showing the sorts of
+style choices available, can be found on Ken Turner's web site:
+\URL{http://www.cs.stir.ac.uk/~kjt/software/latex/showbst.html}
+
+Third: you must process the file.
+\begin{quote}
+\begin{verbatim}
+latex myfile
+\end{verbatim}
+\end{quote}
+As \LaTeX{} processes the file, the \csx{bibliographystyle} command
+writes a note of the style to the \extension{aux} file; each
+\csx{cite} command writes a note of the citation to the
+\extension{aux} file, and the \csx{bibliography} command writes a note
+of which \extension{bib} file is to be used, to the \extension{aux} file.
+
+Note that, at this stage, \LaTeX{} isn't ``resolving'' any of the
+citations: at every \csx{cite} command, \LaTeX{} will warn you of the
+undefined citation, and when the document finishes, there will be a
+further warning of undefined references.
+
+%Some bibliography styles are designed to work with particular
+%packages...
+
+Fourth: you must run \BibTeX{}:
+\begin{quote}
+\begin{verbatim}
+bibtex myfile
+\end{verbatim}
+\end{quote}
+Don't try to tell \BibTeX{} anything but the file name: say
+\texttt{bibtex myfile.aux} (because you know it's going to read the
+\extension{aux} file) and \BibTeX{} will blindly attempt to process
+\texttt{myfile.aux.aux}.
+
+\BibTeX{} will scan the \extension{aux} file; it will find which bibliography
+style it needs to use, and will ``compile'' that style; it will note
+the citations; it will find which bibliography files it needs, and
+will run through them matching citations to entries in the
+bibliography; and finally it will sort the entries that have been
+cited (if the bibliography style specifies that they should be
+sorted), and outputs the resulting details to a \extension{bbl} file.
+
+Fifth: you run \LaTeX{} again. It warns, again, that each citation is
+(still) undefined, but when it gets to the \csx{bibliography} command,
+it finds a \extension{bbl} file, and reads it. As it encounters each
+\csx{bibitem} command in the file, it notes a definition of the
+citation.
+
+Sixth: you run \LaTeX{} yet again. This time, it finds values for all
+the citations, in its \extension{aux} file. Other things being equal, you're
+done\dots{} until you change the file.
+
+If, while editing, you change any of the citations, or add new ones,
+you need to go through the process above from steps 3 (first run of
+\LaTeX{}) to 6, again, before the document is once again stable.
+These four mandatory runs of \LaTeX{} make processing a document with
+a bibliography even more tiresome than the normal two runs required to
+resolve labels.
+
+To summarise: processing to resolve citations requires: \LaTeX{};
+\BibTeX{}; \LaTeX{}; \LaTeX{}.
+
+\Question[Q-whatbst]{Choosing a bibliography style}
+
+A large proportion of people are satisfied with one of Patashnik's
+original ``standard'' styles, \Package{plain}, \Package{unsrt},
+\Package{abbrv} and \Package{alpha}. However, no style in that set
+supports the ``author-date'' citation style that is popular in many
+fields; but there are a very large number of contributed styles
+available, that \emph{do} support the format.
+
+(Note that author-date styles arose because the simple and clear
+citation style that \Package{plain} produces is so awkward in a
+traditional manuscript preparation scenario. However, \TeX{}-based
+document production does away with all those difficulties, leaving us
+free once again to use the simple option.)
+
+Fortunately, help is at hand, on the Web, with this problem:
+\begin{itemize}
+\item a sample text, showing the sorts of style choices available, can
+ be found on
+\begin{narrowversion}
+ Ken Turner's web site:
+ \URL{http://www.cs.stir.ac.uk/~kjt/software/latex/showbst.html};
+\end{narrowversion}
+\begin{wideversion}
+ % ! line break
+ \href{http://www.cs.stir.ac.uk/~kjt/software/latex/showbst.html}{Ken Turner's web site};
+\end{wideversion}
+\item an excellent survey, that lists a huge variety of styles,
+ sorted into their nominal topics as well as providing a good range
+ of examples, is the Reed College % ! line break
+\begin{narrowversion}
+ ``Choosing a \BibTeX{} style''
+ (\URL{http://web.reed.edu/cis/help/LaTeX/bibtexstyles.html}).
+\end{narrowversion}
+\begin{wideversion}
+ % ! line break
+ ``\href{http://web.reed.edu/cis/help/LaTeX/bibtexstyles.html}{Choosing a \BibTeX{} style}''.
+\end{wideversion}
+\end{itemize}
+
+Of course, these pages don't cover everything; the problem the
+inquisitive user faces, in fact, is to find what the various available
+styles actually do. This is best achieved (if the links above don't
+help) by using \Package{xampl.bib} from the \BibTeX{} documentation
+distribution: one can get a pretty good feel for any style one has to
+hand using this ``standard'' bibliography. For style
+\Package{my-style.bst}, the simple \LaTeX{} document:
+\begin{quote}
+\begin{verbatim}
+\documentclass{article}
+\begin{document}
+\bibliographystyle{my-style}
+\nocite{*}
+\bibliography{xampl}
+\end{document}
+\end{verbatim}
+\end{quote}
+will produce a representative sample of the citations the style will
+produce. (Because \Package{xampl.bib} is so extreme in some of its
+``examples'', the \BibTeX{} run will also give you an interesting
+selection of \BibTeX{}'s error messages\dots{})
+\begin{ctanrefs}
+\item[xampl.bib]\CTANref{xampl-bib}
+\end{ctanrefs}
+
+\Question[Q-chapbib]{Separate bibliographies per chapter?}
+
+A separate bibliography for each `chapter' of a document can be provided
+with the package \Package{chapterbib} (which comes with a bunch of
+other good bibliographic things). The package allows you a
+different bibliography for each \csx{include}d file (i.e., despite the
+package's name, the availability of bibliographies is related to the
+component source files of the document rather than to the chapters that
+logically structure the document).
+
+The package \Package{bibunits} ties bibliographies to logical units
+within the document: the package will deal with chapters and sections
+(as defined by \LaTeX{} itself) and also defines a \environment{bibunit}
+environment so that users can select their own structuring.
+
+\Qref*{The \Package{biblatex} package}{Q-biblatex}, with
+\ProgName{biber}, provides a similar facility; enclose the text for
+which you want a local bibliography in a \environment{refsection}
+environment, and place a \csx{printbibliography} command as the last
+thing in that environment:
+\begin{quote}
+\begin{verbatim}
+\begin{refsection}
+\chapter{First chapter}
+\section{Foo}
+Some text \cite{this}
+with citations \cite{that}.
+\printbibliography
+\end{refsection}
+\end{verbatim}
+\end{quote}
+Then process with \latex{} (of whatever flavour) and use
+\ProgName{biber} to process the bibliography output. Note that
+\csx{printbibliography} can take an optional argument
+\pkgoption{heading=bib title} to provide the bibliography with a
+(sub)section title.
+\begin{ctanrefs}
+\item[biber]\CTANref{biber}
+\item[biblatex]\CTANref{biblatex}
+\item[bibunits.sty]\CTANref{bibunits}
+\item[chapterbib.sty]distributed as part of \CTANref{cite}[chapterbib]
+\end{ctanrefs}
+\LastEdit{2013-01-04}
+
+\Question[Q-multbib]{Multiple bibliographies?}
+
+If you're thinking of multiple bibliographies tied to some part of
+your document (such as the chapters within the document), please see
+\Qref[question]{bibliographies per chapter}{Q-chapbib}.
+
+For more than one bibliography, there are three options.
+
+The \Package{multibbl} package offers a very simple interface: you use
+a command \csx{newbibliography} to define a bibliography ``tag''. The package
+redefines the other bibliography commands so that each time you use any one
+of them, you give it the tag for the bibliography where you want the
+citations to appear. The \csx{bibliography} command itself also takes
+a further extra argument that says what title to use for the resulting
+section or chapter (i.e., it patches
+\nothtml{\csx{refname} and \csx{bibname}~---}
+\Qref{\csx{refname} and \csx{bibname}}{Q-fixnam}\nothtml{~---} in a
+\Package{babel}-safe way). So one might write:
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+\usepackage{multibbl}
+\newbibliography{bk}
+\bibliographystyle{bk}{alpha}
+\newbibliography{art}
+\bibliographystyle{art}{plain}
+...
+\cite[pp.~23--25]{bk}{milne:pooh-corner}
+...
+\cite{art}{einstein:1905}
+...
+\bibliography{bk}{book-bib}%
+ {References to books}
+\bibliography{art}{art-bib}%
+ {References to articles}
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+\usepackage{multibbl}
+\newbibliography{bk}
+\bibliographystyle{bk}{alpha}
+\newbibliography{art}
+\bibliographystyle{art}{plain}
+...
+\cite[pp.~23--25]{bk}{milne:pooh-corner}
+...
+\cite{art}{einstein:1905}
+...
+\bibliography{bk}{book-bib}{References to books}
+\bibliography{art}{art-bib}{References to articles}
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+(Note that the optional argument of \csx{cite} appears \emph{before} the
+new tag argument, and that the \csx{bibliography} commands may list
+more than one \extension{bib} file~--- indeed all \csx{bibliography} commands
+may list the same set of files.)
+
+The \csx{bibliography} data goes into files whose names are
+\meta{tag-name}\emph{.aux}, so you will need to run
+\begin{quote}
+\begin{verbatim}
+bibtex bk
+bibtex art
+\end{verbatim}
+\end{quote}
+after the first run of \LaTeX{}, to get the citations in the correct
+place.
+
+The \Package{multibib} package allows you to define a series of
+``additional topics'', each of which comes with its own series of
+bibliography commands. So one might write:
+\begin{quote}
+\begin{verbatim}
+\usepackage{multibib}
+\newcites{bk,art}%
+ {References from books,%
+ References from articles}
+\bibliographystylebk{alpha}
+\bibliographystyleart{plain}
+...
+\citebk[pp.~23--25]{milne:pooh-corner}
+...
+\citeart{einstein:1905}
+...
+\bibliographybk{book-bib}
+\bibliographyart{art-bib}
+\end{verbatim}
+\end{quote}
+Again, as for \Package{multibbl}, any \csx{bibliography...} command may
+scan any list of \extension{bib} files.
+
+\BibTeX{} processing with \Package{multibib} is much like that with
+\Package{multibbl}; with the above example, one needs:
+\begin{quote}
+\begin{verbatim}
+bibtex bk
+bibtex art
+\end{verbatim}
+\end{quote}
+Note that, unlike \Package{multibbl}, \Package{multibib} allows a
+simple, unmodified bibliography (as well as the ``topic'' ones).
+
+The \Package{bibtopic} package allows you separately to cite several
+different bibliographies. At the appropriate place in your document,
+you put a sequence of \environment{btSect} environments (each of which
+specifies a bibliography database to scan) to typeset the separate
+bibliographies. Thus, one might have a file \File{diss.tex} containing:
+\begin{quote}
+\begin{verbatim}
+\usepackage{bibtopic}
+\bibliographystyle{alpha}
+...
+\cite[pp.~23--25]{milne:pooh-corner}
+...
+\cite{einstein:1905}
+...
+\begin{btSect}{book-bib}
+\section{References from books}
+\btPrintCited
+\end{btSect}
+\begin{btSect}[plain]{art-bib}
+\section{References from articles}
+\btPrintCited
+\end{btSect}
+\end{verbatim}
+\end{quote}
+Note the different way of specifying a bibliographystyle: if you want
+a different style for a particular bibliography, you may give it as an
+optional argument to the \environment{btSect} environment.
+
+Processing with \BibTeX{}, in this case, uses \extension{aux} files whose names
+are derived from the name of the base document. So in this example
+you need to say:
+\begin{quote}
+\begin{verbatim}
+bibtex diss1
+bibtex diss2
+\end{verbatim}
+\end{quote}
+
+There is also a command \csx{btPrintNotCited}, which gives the rest of
+the content of the database (if nothing has been cited from the
+database, this is equivalent to \LaTeX{} standard \cmdinvoke{nocite}{*}).
+
+However, the \emph{real} difference from \Package{multibbl} and
+\Package{multibib} is that selection of what appears in each
+bibliography section is determined in \Package{bibtopic} by what's in
+the \extension{bib} files.
+
+An entirely different approach is taken by the \Package{splitbib}
+package. You provide a \environment{category} environment, in the
+preamble of your document, for each category you want a separate
+citation list for. In each environment, you list the \csx{cite} keys
+that you want listed in each category. The \csx{bibliography} command
+(or, more precisely, the \environment{thebibliography} environment it
+uses) will sort the keys as requested. (Keys not mentioned in a
+\environment{category} appear in a ``misc'' category created in the
+sorting process.) A code example appears in the package documentation
+(a \acro{PDF} file in the \acro{CTAN} directory,
+\begin{htmlversion}
+ which you can browse to, from the link, below).
+\end{htmlversion}
+\htmlignore
+ see the file list, below).
+\endhtmlignore
+\begin{ctanrefs}
+\item[bibtopic.sty]\CTANref{bibtopic}
+\item[multibbl.sty]\CTANref{multibbl}
+\item[multibib.sty]\CTANref{multibib}
+\item[splitbib.sty]\CTANref{splitbib}
+\end{ctanrefs}
+
+
+\Question[Q-bibinline]{Putting bibliography entries in text}
+
+This is a common requirement for journals and other publications in
+the humanities. Sometimes the requirement is for the entry to appear
+in the running text of the document, while other styles require that
+the entry appear in a footnote.
+
+Options for entries in running text are
+\begin{itemize}
+\item The package \Package{bibentry}, which puts slight restrictions
+ on the format of entry that your \extension{bst} file generates, but is
+ otherwise undemanding of the bibliography style.
+\item The package \Package{inlinebib}, which requires that you use its
+ \File{inlinebib.bst}. \Package{Inlinebib} was actually designed for
+ footnote citations: its \emph{expected} use is that you place a
+ citation inline as the argument of a \csx{footnote} command.
+\item The package \Package{jurabib}, which was originally designed for
+ German law documents, and has comprehensive facilities for the
+ manipulation of citations. The package comes with four bibliography
+ styles that you may use: \File{jurabib.bst}, \File{jhuman.bst} and
+ two Chicago-like ones.
+\end{itemize}
+
+Options for entries in footnotes are
+\begin{itemize}
+\item The package \Package{footbib}, and
+\item Packages \Package{jurabib} and \Package{inlinebib}, again.
+\end{itemize}
+Note that \Package{jurabib} does the job using \LaTeX{}'s standard
+footnotes, whereas \Package{footbib} creates its own sequence of
+footnotes. Therefore, in a document which has other footnotes, it may
+be advisable to use \Package{jurabib} (or of course
+\Package{inlinebib}), to avoid confusion of footnotes and
+foot-citations.
+
+The \Package{usebib} package offers a `toolbox', which allows the user
+to place exactly what is needed, in the text (that is, rather than a
+full citation). The package's command, that does the actual
+typesetting, is \cmdinvoke{usebibdata}{\meta{key}}{\meta{field}}; it
+typesets the \emph{field} item from the entry \emph{key} in the
+bibliography; the user then formats the entry as desired~--- obviously
+one could construct one's own bibliography, altogether, from this
+command, but it would quickly become tedious.
+\begin{ctanrefs}
+\item[bibentry.sty]\emph{Distributed with} \CTANref{natbib}
+\item[footbib.sty]\CTANref{footbib}
+\item[inlinebib.sty]\CTANref{inlinebib}
+\item[jurabib.sty]\CTANref{jurabib}
+\item[usebib.sty]\CTANref{usebib}
+\end{ctanrefs}
+\LastEdit{2012-03-23}
+
+\Question[Q-citesort]{Sorting and compressing citations}
+
+If you give \LaTeX{}
+\cmdinvoke{cite}{fred,joe,harry,min}, its default commands could give
+something like ``[2,6,4,3]'';
+this looks awful. One can of course get the things in order by
+rearranging the keys in the \csx{cite} command, but who wants to do
+that sort of thing for no more improvement than ``[2,3,4,6]''?
+
+The \Package{cite} package sorts the numbers and detects consecutive
+sequences, so creating ``[2--4,6]''. The \Package{natbib} package,
+with the \pkgoption{numbers} and \pkgoption{sort\&compress} options, will
+do the same when working with its own numeric bibliography styles
+(\File{plainnat.bst} and \File{unsrtnat.bst}).
+
+The package \Package{biblatex} has a built-in style
+\Package{numeric-comp} for its bibliographies.
+\begin{ctanrefs}
+\item[biblatex.sty]\CTANref{biblatex}
+\item[cite.sty]\CTANref{cite}
+\item[hypernat.sty]\CTANref{hypernat}
+\item[hyperref.sty]\CTANref{hyperref}
+\item[plainnat.bst]Distributed with \CTANref{natbib}
+\item[unsrtnat.bst]Distributed with \CTANref{natbib}
+\end{ctanrefs}
+\LastEdit{2012-02-10}
+
+\Question[Q-mcite]{Multiple citations}
+
+A convention sometimes used in physics journals is to ``collapse'' a group of
+related citations into a single entry in the bibliography. \BibTeX{},
+by default, can't cope with this arrangement, but the \Package{mcite}
+and \Package{mciteplus} packages deal with the problem.
+
+\Package{mcite} overloads the \csx{cite} command to recognise a
+``\texttt{*}'' at the start of a key, so that citations of the form
+\begin{quote}
+\begin{verbatim}
+\cite{paper1,*paper2}
+\end{verbatim}
+\end{quote}
+appear in the document as a single citation, and appear arranged
+appropriately in the bibliography itself. You're not limited to
+collapsing just two references. You can mix ``collapsed'' references
+with ``ordinary'' ones, as in
+\begin{quote}
+\begin{verbatim}
+\cite{paper0,paper1,*paper2,paper3}
+\end{verbatim}
+\end{quote}
+Which will appear in the document as 3~citations ``[4,7,11]''
+(say)~--- citation `4' will refer to paper~0, `7' will refer to a
+combined entry for paper~1 and paper~2, and `11' will refer to
+paper~3.
+
+You need to make a small change to the bibliography style
+(\extension{bst}) file you use; the \Package{mcite} package
+documentation tells you how to do that.
+
+Most recent versions of \Class{REVTeX} (version 4.1 and later), in
+conjunction with recent versions of \Package{natbib}, already contain
+support for combined citations and so no longer even need
+\Package{mciteplus} (but \Package{mciteplus} is more general and will
+work with many other class and package combinations).
+
+The \Package{mciteplus} package adresses many of the infelicites of
+\Package{mcite}. Again, `ordinary' \extension{bst} files will not
+work with \Package{mciteplus}, but the package documentation explains
+how to patch an existing \BibTeX{} style.
+
+The \Package{collref} package takes a rather different approach to the
+problem, and will work with most (if not all) \BibTeX{} packages.
+\Package{Collref} spots common subsets of the references, so if it
+sees a sequence
+\begin{quote}
+\begin{verbatim}
+\cite{paper0,paper1,paper2,paper3}
+...
+\cite{some_other_paper,paper1,paper2,and_another}
+\end{verbatim}
+\end{quote}
+it will collect \texttt{paper1} and \texttt{paper2} as a multiple reference.
+\begin{ctanrefs}
+\item[collref.sty]\CTANref{collref}
+\item[mcite.sty]\CTANref{mcite}
+\item[mciteplus.sty]\CTANref{mciteplus}
+\item[natbib.sty]\CTANref{natbib}
+\item[revtex 4.1]\CTANref{revtex4-1}
+\end{ctanrefs}
+\LastEdit{2010-07-07}
+
+\Question[Q-backref]{References from the bibliography to the citation}
+
+A link (or at least a page reference), from the bibliography to the
+citing command, is often useful in large documents.
+
+Two packages support this requirement, \Package{backref} and
+\Package{citeref}. \Package{Backref} is part of the
+\Package{hyperref} bundle, and supports hyperlinks back to the citing
+command.
+
+\Package{Citeref} is the older, and seems to rely on rather simpler
+(and therefore possibly more stable) code; it produces a list of page
+references, only. It doesn't interact well with other citation
+packages (for example, \Package{cite}), which probably reflects its
+antiquity (it's derived from a \LaTeXo{} package).
+
+Neither collapses
+lists of pages (``\texttt{5, 6, 7}'' comes out as such, rather than as
+``\texttt{5--7}''), but neither package repeats the reference to a page that
+holds multiple citations. (The failure to collapse lists is of course
+forgiveable in the case of the \Package{hyperref}-related
+\Package{backref}, since the concept of multiple hyperlinks from the
+same anchor is less than appealing.)
+\begin{ctanrefs}
+\item[backref.sty]Distributed with \CTANref{hyperref}
+\item[citeref.sty]\CTANref{citeref}
+\end{ctanrefs}
+
+\Question[Q-sortbib]{Sorting lists of citations}
+
+\BibTeX{} has a sorting function, and most \BibTeX{} styles sort the
+citation list they produce; most people find this desirable.
+
+However, it is perfectly possible to write a
+\environment{thebibliography} environment that \emph{looks} as if it
+came from \BibTeX{}, and many people do so (in order to save time in
+the short term).
+
+The problem arises when \environment{thebibliography}-writers decide
+their citations need to be sorted. A common misapprehension is to
+insert \cmdinvoke{bibliographystyle}{alpha} (or similar) and expect
+the typeset output to be sorted in some magical way. \BibTeX{}
+doesn't work that way!~--- if you write \environment{thebibliography},
+you get to sort its contents. \BibTeX{} will only sort the contents
+of a \environment{thebibliography} environment when it creates it, to
+be inserted from a \extension{bbl} file by a \csx{bibliography} command.
+
+\Question[Q-compactbib]{Reducing spacing in the bibliography}
+
+Bibliographies are, in fact, implemented as lists, so all the
+confusion about \Qref*{reducing list item spacing}{Q-complist} also
+applies to bibliographies.
+
+If the \Package{natbib} package `works' for you (it may not if you are using
+some special-purpose bibliography style), the solution is relatively
+simple~--- add
+\begin{quote}
+\begin{verbatim}
+\usepackage{natbib}
+\setlength{\bibsep}{0.0pt}
+\end{verbatim}
+\end{quote}
+to the preamble of your document.
+
+The \Package{compactbib} package has a similar effect. Its primary
+purpose is to produce two bibliographies, and it seems to preclude use
+of \BibTeX{} (though the package documentation, in the package file
+itself, isn't particularly clear).
+
+Otherwise, one is into unseemly hacking of something or other. The
+\Package{mdwlist} package actually does the job, but it doesn't work
+here, because it makes a different-named list, while the name
+``\environment{thebibliography}'' is built into \LaTeX{} and
+\BibTeX{}. Therefore, we need to % ! line break
+\Qref*{patch the underlying macro}{Q-patch}:
+\begin{quote}
+\begin{verbatim}
+\let\oldbibliography\thebibliography
+\renewcommand{\thebibliography}[1]{%
+ \oldbibliography{#1}%
+ \setlength{\itemsep}{0pt}%
+}
+\end{verbatim}
+\end{quote}
+The \Package{savetrees} package performs such a patch, among a
+plethora of space-saving measures: you can, in principle, suppress all
+its other actions, and have it provide you a compressed bibliography
+\emph{only}.
+\begin{ctanrefs}
+\item[compactbib.sty]\CTANref{compactbib}
+\item[mdwlist.sty]Distributed as part of \CTANref{mdwtools}[mdwlist]
+\item[natbib.sty]\CTANref{natbib}
+\item[savetrees.sty]\CTANref{savetrees}
+\end{ctanrefs}
+
+\Question[Q-bibtocorder]{Table of contents rearranges ``\Package{unsrt}'' ordering}
+
+If you're using the \Package{unsrt} bibliography style, you're
+expecting that your bibliography will \emph{not} be sorted, but that
+the entries will appear in the order that they first appeared in your
+document.
+
+However, if you're unfortunate enough to need a citation in a section
+title, and you also have a table of contents, the citations that now
+appear in the table of contents will upset the ``natural'' ordering
+produced by the \Package{unsrt} style. Similarly, if you have
+citations in captions, and have a list of figures (or tables).
+
+There's a pretty simple ``manual'' method for dealing with the
+problem~--- when you have the document stable:
+\begin{enumerate}
+\item Delete the \extension{aux} file, and any of \extension{toc},
+ \extension{lof}, \extension{lot} files.
+\item Run \LaTeX{}.
+\item Run \BibTeX{} for the last time.
+\item Run \LaTeX{} often enough that things are stable again.
+\end{enumerate}
+Which is indeed simple, but it's going to get tedious when you've
+found errors in your ``stable'' version, often enough.
+
+The package \Package{notoccite} avoids the kerfuffle, and suppresses
+citations while in the table of contents, or lists of figures, tables
+(or other floating things: the code is quite general).
+\begin{ctanrefs}
+\item[notoccite.sty]\CTANref{notoccite}
+\end{ctanrefs}
+
+\Question[Q-i18nbib]{Non-english bibliographies}
+
+Like so much of early \AllTeX{} software, \BibTeX{}'s assumptions were
+firmly rooted in what its author knew well, viz., academic papers in
+English (particularly those with a mathematical bent). \BibTeX{}'s
+standard styles all address exactly that problem, leaving the user who
+writes in another language (or who deal with citations in the style of
+other disciplines than maths) to strike out into contributed software.
+
+For the user whose language is not English, there are several
+alternatives. Possibly most straightforward is to switch to using
+\Package{biblatex}, which can produce a bibliography appropriate to
+several languages. However, \Package{biblatex} is large and has
+correspondingly large documentation (though it is well-written and
+pleasingly typeset), so its adoption takes time.
+
+Otherwise, the simplest procedure is to provide translations of
+\BibTeX{} styles into the
+required language: the solitary \Package{finplain.bst} does that for
+Finnish; others one can find are for Danish (\Package{dk-bib}), French
+(\Package{bib-fr}), German (\Package{bibgerm}), Norwegian
+(\Package{norbib}) and Swedish (\Package{swebib}) bundles (of which
+the \Package{bib-fr} set is the most extensive). The \Package{spain}
+style implements a traditional Spanish citation style.
+
+These static approaches solve the problem, for the languages that have
+been covered by them. Unfortunately, with such an approach, a lot of
+work is needed for every language involved. Two routes to a solution
+of the ``general'' problem are available~--- that offered by
+\Package{babelbib}, and the % ! line break
+\Qref*{\Package{custom-bib} mechanism for generating styles}{Q-custbib}.
+
+\Package{Babelbib} (which is a development of the ideas of the
+\Package{bibgerm} package) co-operates with \Package{babel} to control
+the language of presentation of citations (potentially at the level of
+individual items). The package has a built-in set of languages it
+`knows about', but the documentation includes instructions on defining
+commands for other languages. \Package{Babelbib} comes with its own
+set of bibliography styles, which could be a restriction if there
+wasn't also a link from \Package{custom-bib}.
+
+The \Package{makebst} menu of \Package{custom-bib} allows you to
+choose a language for the \BibTeX{} style you're generating (there are
+14 languages to choose; it looks as if \Package{spain.bst}, mentioned
+above, was generated this way). If, however, you opt not to specify a
+language, you are asked whether you want the style to interact with
+\Package{babelbib}; if you do so, you're getting the best of both
+worlds~--- formatting freedom from \Package{custom-bib} and linguistic
+freedom via the extensibility of \Package{babelbib}
+\begin{ctanrefs}
+\item[babelbib.sty]\CTANref{babelbib}
+\item[bib-fr \nothtml{\rmfamily\upshape}bundle]\CTANref{bib-fr}
+\item[bibgerm \nothtml{\rmfamily\upshape}bundle]\CTANref{bibgerm}
+\item[biblatex.sty]\CTANref{biblatex}
+\item[custom-bib \nothtml{\rmfamily\upshape}bundle]\CTANref{custom-bib}
+\item[finplain.bst]\CTANref{finplain}
+\item[norbib \nothtml{\rmfamily\upshape}bundle]\CTANref{norbib}
+\item[spain]\CTANref{spain}
+\item[swebib \nothtml{\rmfamily\upshape}bundle]\CTANref{swebib}
+\end{ctanrefs}
+\LastEdit{2012-03-23}
+
+\Question[Q-formbiblabel]{Format of numbers in the bibliography}
+
+By default, \LaTeX{} makes entries in the bibliography look like:
+\begin{quote}
+ [1] Doe, Joe et al. Some journal. 2004.\\ {}
+ [2] Doe, Jane et al. Some journal. 2003.
+\end{quote}
+while many documents need something like:
+\begin{quote}
+ 1. Doe, Joe et al. Some journal. 2004.\\
+ 2. Doe, Jane et al. Some journal. 2003.
+\end{quote}
+
+This sort of change may be achieved by many of the ``general''
+citation packages; for example, in \Package{natbib}, it's as simple as:
+\begin{quote}
+\begin{verbatim}
+\renewcommand{\bibnumfmt}[1]{#1.}
+\end{verbatim}
+\end{quote}
+but if you're not using such a package, the following internal
+\LaTeX{} commands, in the preamble of your document, will do the job:
+\begin{quote}
+\begin{verbatim}
+\makeatletter
+\renewcommand*{\@biblabel}[1]{\hfill#1.}
+\makeatother
+\end{verbatim}
+\end{quote}
+\begin{ctanrefs}
+\item[natbib.sty]\CTANref{natbib}
+\end{ctanrefs}
+
+\subsection{Manipulating whole bibliographies}
+
+\Question[Q-nocite*]{Listing all your \BibTeX{} entries}
+
+\LaTeX{} and \BibTeX{} co-operate to offer special treatment of this
+requirement. The command \cmdinvoke{nocite}{*} is specially treated,
+and causes \BibTeX{} to generate bibliography entries for every entry
+in each \extension{bib} file listed in your \csx{bibliography} statement, so
+that after a \LaTeX{}--\BibTeX{}--\LaTeX{} sequence, you have a
+document with the whole thing listed.
+
+Note that \LaTeX{} \emph{doesn't} produce
+% beware line breaks
+``\texttt{Citation ... undefined}'' or
+``\texttt{There were undefined references}'' warnings in respect of
+\cmdinvoke{nocite}{*}. This isn't a problem if you're running
+\LaTeX{} ``by hand'' (you \emph{know} exactly how many times you have
+to run things), but the lack might confuse automatic processors that
+scan the log file to determine whether another run is necessary.
+
+A couple of packages are available, that aim to reduce the impact of
+\cmdinvoke{nocite}{*} of a large citation database. \Package{Biblist}
+was written for use under \LaTeXo{}, but seems to work well enough;
+\Package{listbib} is more modern. Both provide their own
+\extension{bst} files. (The impact of large databases was significant
+in the old days of \LaTeX{} systems with very little free memory; this
+problem is less significant now than it once was.)
+\begin{ctanrefs}
+\item[biblist.sty]\CTANref{biblist}
+\item[listbib.sty]\CTANref{listbib}
+\end{ctanrefs}
+
+\Question[Q-htmlbib]{Making \acro{HTML} of your Bibliography}
+
+A neat solution is offered by the \Package{noTeX} bibliography style.
+This style produces a \extension{bbl} file which is in fact a series of
+\acro{HTML} `\texttt{P}' elements of class \texttt{noTeX}, and which
+may therefore be included in an \acro{HTML} file. Provision is made
+for customising your bibliography so that its content when processed by
+\Package{noTeX} is different from that presented when it is processed
+in the ordinary way by \AllTeX{}.
+
+A thorough solution is offered by \Package{bib2xhtml}; using it, you
+make use of one of its modified versions of many common \BibTeX{}
+styles, and post-process the output so produced using a
+\ProgName{perl} script.
+
+A more conventional translator is the \ProgName{awk} script
+\ProgName{bbl2html}, which translates the \extension{bbl} file you've generated:
+a sample of the script's output may be viewed on the web, at
+\URL{http://rikblok.cjb.net/lib/refs.html}
+\begin{ctanrefs}
+\item[bbl2html.awk]\CTANref{bbl2html}
+\item[bib2xhtml]\CTANref{bib2xhtml}
+\item[noTeX.bst]\CTANref{noTeX}
+\end{ctanrefs}
+
diff --git a/obsolete/help/texfaq/faq-bits+pieces.tex b/obsolete/help/texfaq/faq-bits+pieces.tex
new file mode 100644
index 0000000000..113d1139e4
--- /dev/null
+++ b/obsolete/help/texfaq/faq-bits+pieces.tex
@@ -0,0 +1,1174 @@
+% $Id: faq-bits+pieces.tex,v 1.32 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{Bits and pieces of \AllTeX{}}
+
+\Question[Q-dvi]{What is a \acro{DVI} file?}
+
+`\acro{DVI}' is supposed to be an acronym for
+\acro{D}e\acro{V}ice-\acro{I}ndependent, meaning that the file may be
+processed for printing or viewing on most kinds of typographic output
+device or display.
+
+A \acro{DVI} file (that is, a file with the type or extension
+\extension{dvi}) is the main output file of ``original'' \tex{} (later
+\tex{}-like systems, such as \Qref*{\pdftex{}}{Q-whatpdftex} may use
+other formats).
+
+A \acro{DVI} file contains all the information that is needed for
+printing or previewing, except for the actual bitmaps or outlines of
+fonts, and any material to be introduced by means of % !line break
+\Qref*{\csx{special} commands}{Q-specials}. Characters in the
+\acro{DVI} file (representing glyphs for printing or display) appear
+in an encoding determined in the document.
+
+Any \TeX{} input file should produce the same \acro{DVI} file
+regardless of which implementation of \TeX{} is used to produce it.
+
+An \acro{DVI} file may be processed by a \Qref*{DVI driver}{Q-driver}
+to produce further output designed specifically for a particular
+printer, or for output in another format (for distribution), or it may
+be used by a previewer for display on a computer screen.
+
+Note that \Qref*{\xetex{}}{Q-xetex} (released some time after
+\pdftex{}) uses an ``extended \acro{DVI} format'' (\acro{XDV}) to send
+its output to a close-coupled \Qref*{\acro{DVI} driver}{Q-driver},
+\ProgName{xdvipdfmx}.
+
+The canonical reference for the structure of a \acro{DVI} file is the
+source of Knuth's program \ProgName{dvitype} (whose original purpose,
+as its name implies, was to view the content of a \acro{DVI} file).
+A partially complete ``standard'' for the way they should be
+processed may offer further enlightenment.
+\begin{ctanrefs}
+\item[\nothtml{rmfamily}DVI processing standard]\CTANref{dvistd}
+\item[dvitype]\CTANref{dvitype}
+\end{ctanrefs}
+\LastEdit{2013-03-15}
+
+\Question[Q-driver]{What is a \acro{DVI} driver?}
+
+A \acro{DVI} driver is a program that takes as input a
+\Qref*{\acro{DVI} file}{Q-dvi}
+and (usually) produces a file in a format that something \emph{other}
+than a \TeX{}-related program can process.
+
+A driver may be designed for producing output for printing (e.g.,
+\PS{}), for later processing (e.g., \PS{} for inclusion in a later
+document), or for document exchange (e.g., \acro{PDF}).
+
+As well as the \acro{DVI} file, the driver typically also needs font
+information. Font information may be held as bitmaps or as outlines,
+or simply as a set of pointers into the fonts that a printer itself
+provides. Each driver will expect the font information in a particular
+form.
+
+For more information on the forms of font information, see
+\Qref[questions]{\acro{PK} files}{Q-pk},
+% ! line break
+\Qref[]{\acro{TFM} files}{Q-tfm},
+\Qref[]{virtual fonts}{Q-virtualfonts}
+and \Qref[]{Using \PS{} fonts with \TeX{}}{Q-usepsfont}.
+\LastEdit{2011-10-10}
+
+\Question[Q-pk]{What are \acro{PK} files?}
+
+\acro{PK} files (packed raster) are the canonical form of \tex{} font
+bitmaps. The output from \Qref*{\MF{}}{Q-useMF} includes a generic
+font (\acro{GF}) file and the utility \ProgName{gftopk} produces a
+\acro{PK} file from that.
+
+There are potentially a lot of \acro{PK} files, as one
+is needed for each font: that is for each magnification of each
+design (point) size for each weight for each font in each family.
+
+Further, since the \acro{PK} files for one printer do not necessarily
+work well for another, the whole set needs to be duplicated for each
+printer type at a site.
+
+While this menagerie of bitmaps can (in principle) provide fonts that
+are closely matched to the capabilities of each printer, the size of
+the collection (and the resulting difficulty of maintaining it) has
+been a potent driver to the move towards outline fonts such as
+\Qref*{Adobe Type 1 fonts}{Q-adobetypen}.
+\LastEdit{2012-10-20}
+
+\Question[Q-tfm]{What are \acro{TFM} files?}
+
+\acro{TFM} is an acronym for `\TeX{} Font Metrics'; \acro{TFM} files hold
+information about the sizes of the characters of the font in question,
+and about ligatures and kerns within that font. One \acro{TFM} file is
+needed for each font used by \TeX{}, that is for each design (point)
+size for each weight for each family; each \acro{TFM} file serves for all
+magnifications of `its' font, so that there are (typically) fewer
+\acro{TFM} files than there are \Qref*{\acro{PK}}{Q-pk} files. \TeX{},
+\LaTeX{}, etc.,\@
+themselves need only know about the sizes of characters and their
+interactions with each other, but not what characters look like. By
+contrast, \acro{TFM} files are not, in principle, needed by the
+\acro{DVI} driver, which only needs to know about the glyphs that each
+character selects, so as to print or display them.
+
+Note that TrueType and OpenType fonts contain the necessary metrics,
+so that \Qref{\xetex{}}{Q-xetex} and \Qref{\luatex{}}{Q-luatex}, using
+such fonts, have no need of \acro{TFM} files. A corollary of this is
+that setting up fonts for use by these engines is far \emph{easier}.
+\LastEdit{2012-10-20}
+
+\Question[Q-virtualfonts]{What are virtual fonts?}
+
+Virtual fonts provide a means of collecting bits and pieces together
+to make the glyphs of a font: the bits and pieces may be glyphs from
+``other'' fonts, rules and other ``basic'' typesetting commands, and
+the positioning information that specifies how everything comes
+together.
+
+An early instance of something like virtual fonts for \TeX{} was
+implemented by David Fuchs to use an unusual printer. However, for
+practical purposes for the rest of us, virtual fonts date from when Knuth
+specified a format and wrote some support software, in 1989 (he
+published an % ! line break
+\href{http://tug.org/TUGboat/tb11-1/tb27knut.pdf}{article in \textsl{TUGboat}}
+at the time; a plain text copy is available on \acro{CTAN}).
+
+Virtual fonts provide a way of telling \TeX{} about something more
+complicated than just a one-to-one character mapping. \TeX{} reads a
+\acro{TFM} file of the font, just as before, but the \acro{DVI}
+processor will read the \acro{VF} and use its content to specify how
+each glyph is to be processed.
+
+The virtual font may contain commands:
+\begin{itemize}
+\item to `open' one or more (real) fonts for subsequent use,
+\item to remap a glyph from one of the (real) fonts for use in the
+ virtual font,
+\item to build up a more complicated effect (using \acro{DVI} commands).
+\end{itemize}
+
+% !this has to be generated as a new paragraph by the translator, so
+% leave the blank line in place
+In practice, the most common use of virtual fonts is to remap
+Adobe Type 1 fonts (see \Qref[question]{font metrics}{Q-metrics}),
+though there has also been useful useful work building `fake' maths
+fonts (by bundling glyphs from several fonts into a single virtual
+font). Virtual Computer Modern fonts, making a % ! line break
+\Qref*{Cork encoded}{Q-ECfonts} font from Knuth's originals by using
+remapping and fragments of \acro{DVI} for single-glyph `accented
+characters', were the first ``Type~1 format'' Cork-encoded Computer
+Modern fonts available.
+
+Virtual fonts are normally created in a single \acro{ASCII} \acro{VPL}
+(Virtual Property List) file, which includes two sets of information.
+The \ProgName{vptovf} utility will use the \acro{VPL} file to create
+the binary \acro{TFM} and \acro{VF} files.
+
+A ``how-to'' document, explaining how to generate a \acro{VPL},
+describes the endless hours of fun that may be had, doing the job by
+hand. Despite the pleasures to be had, the commonest way (nowadays)
+of generating an \acro{VPL} file is to use the
+\ProgName{fontinst} package, which is described in more detail
+\htmlonly{together with the discussion of}
+\Qref[in answer]{\PS{} font metrics}{Q-metrics}.
+\Package{Qdtexvpl} is another utility for creating ad-hoc virtual
+fonts (it uses \TeX{} to parse a description of the virtual font, and
+\ProgName{qdtexvpl} itself processes the resulting \acro{DVI} file).
+\begin{ctanrefs}
+\item[fontinst]\CTANref{fontinst}
+\item[\nothtml{\rmfamily}Knuth on virtual fonts]\CTANref{vf-knuth}
+\item[\nothtml{\rmfamily}Virtual fonts ``how to'']\CTANref{vf-howto}
+\item[qdtexvpl]\CTANref{qdtexvpl}
+\end{ctanrefs}
+\LastEdit{2012-10-20}
+
+\Question[Q-whatmacros]{What are (\TeX{}) macros}
+
+\TeX{} is a \emph{macro processor}: this is a computer-science-y term
+meaning ``text expander'' (more or less); \TeX{} typesets text as it
+goes along, but \emph{expands} each macro it finds. \TeX{}'s macros
+may include instructions to \TeX{} itself, on top of the simple text
+generation one might expect.
+
+Macros are a \emph{good thing}, since they allow the user to
+manipulate documents according to context. For example, the macro
+\csx{TeX} is usually defined to produce ``TEX'' with the `E' lowered
+(the original idea was Knuth's),
+but in these \acro{FAQ}s the default definition of the macro is
+overridden, and it simply expands to the letters ``TeX''. (\emph{You}
+may not think this a good thing, but the author of the macros has his
+reasons~-- see \Qref[question]{\TeX{}-related logos}{Q-logos}.)
+
+Macro names are conventionally built from a \texttt{\textbackslash }
+followed by a sequence of letters, which may be upper or lower case
+(as in \csx{TeX}, mentioned above). They may also be % ! line break
+\texttt{\textbackslash \meta{any single character}}, which allows all
+sorts of oddities (many built in to most \TeX{} macro sets, all the
+way up from the apparently simple `\csx{ }' meaning ``insert a space
+here'').
+
+Macro programming can be a complicated business, but at their very
+simplest they need little introduction~--- you'll hardly need to be
+told that:
+\begin{quote}
+\begin{verbatim}
+\def\foo{bar}
+\end{verbatim}
+\end{quote}
+replaces each instance of \csx{foo} with the text ``bar''. The
+command \csx{def} is \plaintex{} syntax for defining commands;
+\LaTeX{} offers a macro \csx{newcommand} that goes some way towards
+protecting users from themselves, but basically does the same thing:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\foo}{bar}
+\end{verbatim}
+\end{quote}
+Macros may have ``arguments'' , which are used to substitute for marked
+bits of the macro expansion:
+\begin{quote}
+\begin{verbatim}
+\def\foo#1{This is a #1 bar}
+...
+\foo{2/4}.
+\end{verbatim}
+\end{quote}
+which produces:
+\begin{quote}
+ This is a 2/4 bar.
+\end{quote}
+or, in \LaTeX{} speak:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\foo}[1]{This is a #1 bar}
+...
+\foo{3/4}.
+\end{verbatim}
+\end{quote}
+which produces:
+\begin{quote}
+ This is 3/4 bar.
+\end{quote}
+(\latex{} users waltz through life, perhaps?)
+
+You will have noticed that the arguments, above, were enclosed in
+braces (\texttt{\obracesymbol{}\dots{}\cbracesymbol{}}); this is the
+normal way of typing arguments, though \TeX{} is enormously flexible,
+and you may find all sorts of other ways of passing arguments (if you
+stick with it).
+
+Macro writing can get very complicated, very quickly. If you are a
+beginner \AllTeX{} programmer, you are well advised to read something
+along the lines of the \Qref*{\TeX{}book}{Q-tex-books}; once you're under
+way, \Qref*{\TeX{} by Topic}{Q-ol-books} is possibly a more satisfactory
+choice. Rather a lot of the answers in these \acro{FAQ}s tell you
+about various issues of how to write macros.
+\LastEdit{2011-10-12}
+
+\Question[Q-specials]{\csx{special} commands}
+
+\TeX{} provides the means to express things that device drivers can
+do, but about which \TeX{} itself knows nothing. For example, \TeX{}
+itself knows nothing about how to include \PS{} figures into
+documents, or how to set the colour of printed text; but some device
+drivers do.
+
+Instructions for such things are introduced to your document by means
+of \csx{special} commands; all that \TeX{} does with these commands is
+to expand their
+arguments and then pass the command to the \acro{DVI} file. In most
+cases, there are macro packages provided (often with the driver) that
+provide a human-friendly interface to the \csx{special}; for example,
+there's little point including a figure if you leave no gap for it in
+your text, and changing colour proves to be a particularly fraught
+operation that requires real wizardry. \LaTeXe{}
+has standard graphics and colour packages that make figure inclusion,
+rotation and scaling, and colour typesetting relatively
+straightforward, despite the rather daunting \csx{special} commands
+involved. (\CONTeXT{} provides similar support, though not by way of
+packages.)
+
+The allowable arguments of \csx{special} depend on the device driver
+you're using. Apart from the examples above, there are \csx{special}
+commands in the em\TeX{} drivers (e.g., \ProgName{dvihplj}, \ProgName{dviscr},
+\emph{etc}.)~that will draw lines at arbitrary orientations, and
+commands in \ProgName{dvitoln03} that permit the page to be set in
+landscape orientation.
+
+Note that \csx{special} behaves rather differently in \PDFTeX{}, since
+there is no device driver around. There \emph{is} a concept of
+\acro{PDF} specials, but in most cases \csx{special} will provoke a
+warning when used in \PDFTeX{}.
+\LastEdit{2011-10-15}
+
+\Question[Q-write]{Writing (text) files from \tex{}}
+
+\TeX{} allows you to write to output files from within your document.
+The facility is handy in many circumstances, but it is vital for
+several of the things \latex{} (and indeed almost any higher-level
+\tex{}-based macro package) does for you.
+
+The basic uses of writing to an external file are ``obvious''~---
+remembering titles of sections for a table of contents, remembering
+label names and corresponding section or figure numbers, all for a
+later run of your document. However, the ``non-obvious'' thing is
+easy to forget: that page numbers, in \tex{}, are slippery beasts, and
+have to be captured with some care. The trick is that \csx{write}
+operations are only executed as the page is sent to the \acro{DVI}
+or \acro{PDF} file. Thus, if you arrange that your page-number macro
+(\csx{thepage}, in \latex{}) is not expanded until the page is
+written, then the number written is correct, since that time is where
+\tex{} guarantees the page number tallies with the page being sent
+out.
+
+Now, there are times when you want to write something straight away:
+for example, to interact with the user. \TeX{} captures that
+requirement, too, with the primitive command \csx{immediate}:
+\begin{quote}
+\begin{verbatim}
+\immediate\write\terminal{I'm waiting...}
+\end{verbatim}
+\end{quote}
+writes a ``computer-irritates-user'' message, to the terminal.
+
+Which brings us to the reason for that \csx{terminal}. \TeX{} can
+``\csx{write}'' up to 16 streams simultaneously, and that argument to
+\csx{write} says which is to be used. Macro packages provide the
+means of allocating streams for your use: \plaintex{} provides a macro
+\csx{newwrite} (used as ``\csx{newwrite}\csx{streamname}'', which sets
+\csx{streamname} as the stream number). In fact, \csx{terminal} (or
+its equivalent) is the first output stream ever set up (in most macro
+packages): it is never attached to a file, and if \tex{} is asked to
+write to \emph{any} stream that isn't attached to a file it will send
+the output to the terminal (and the log).
+\LastEdit{2011-10-15}
+
+\Question[Q-spawnprog]{Spawning programs from \AllTeX{}: \csx{write18}}
+
+The \tex{} \Qref*{\csx{write} primitive instruction}{Q-write} is used
+to write to different file `streams'; TeX refers to each open file by
+a number, not by a file name (although most of the time we hide this).
+Originally, \tex{} would write to a file connected to a stream
+numbered 0--15. More recently, a special ``stream 18'' has been
+implemented: it is not writing to a file, but rather tells TeX to ask
+the operating system to do something. To run a command, we put it as
+the argument to \csx{write18}. So to run the \progname{epstopdf}
+utility on a file with name stored as \csx{epsfilename}, we would
+write:
+\begin{quote}
+\begin{verbatim}
+\write18{epstopdf \epsfilename}
+\end{verbatim}
+\end{quote}
+When using something like the \Package{epstopdf} package, the `stream'
+write operation is hidden away and you don't need to worry about the
+exact way it's done.
+
+However, there is a security issue. If you download some \alltex{} code from
+the Internet, can you be sure that there is not some command in it
+(perhaps in a hidden way) to do stuff that might be harmful to your
+computer (let's say: delete everything on the hard disk!)? In the
+face of this problem, both \miktex{} and \tex{}~Live have, for some
+time, disabled \csx{write18} by default. To turn the facility on,
+both distributions support an additional argument when starting \tex{}
+from the command shell:
+\begin{quote}
+\begin{verbatim}
+(pdf)(la)tex --shell-escape <file>
+\end{verbatim}
+\end{quote}
+The problem with this is that many people use \alltex{} via a graphical
+editor, so to use \csx{write18} for a file the editor's settings must
+be changed. Of course, the settings need restoring after the file is
+processed: you defeat the point of the original protection, that way.
+
+The latest \miktex{} (version 2.9), and recent \tex{}~Live (from the
+2010 release) get
+around this by having a special ``limited'' version of \csx{write18}
+enabled `out of the box'. The idea is to allow only a pre-set list of
+commands (for example, \BibTeX{}, \progname{epstopdf}, \tex{} itself,
+and so on). Those on the list are regarded as safe enough to allow,
+whereas anything else (for example deleting files) still needs to be
+authorised by the user. This seems to be a good balance: most people
+most of the time will not need to worry about \csx{write18} at all,
+but it will be available for things like \Package{epstopdf}.
+
+Note that the \tex{} system may tell you that the mechanism is in use:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+This is pdfTeX, Version 3.1415926-1.40.11 (TeX Live 2010)
+ restricted \write18 enabled.
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+This is pdfTeX, Version 3.1415926-1.40.11
+ (TeX Live 2010)
+ restricted \write18 enabled.
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+when it starts.
+\begin{ctanrefs}
+\item[epstopdf.sty]Distributed with Heiko Oberdiek's packages
+ \CTANref{oberdiek}[epstopdf-pkg]
+\end{ctanrefs}
+\LastEdit{2012-12-03}
+
+\Question[Q-hyphen]{How does hyphenation work in \TeX{}?}
+
+Everyone knows what hyphenation is: we see it in most books we read,
+and (if we're alert) will spot occasional ridiculous mis-hyphenation
+(at one time, British newspapers were a fertile source).
+
+Hyphenation styles are culturally-determined, and the same language
+may be hyphenated differently in different countries~--- for example,
+British and American styles of hyphenation of English are very
+different. As a result, a typesetting system that is not restricted
+to a single language at a single locale needs to be able to change its
+hyphenation rules from time to time.
+
+\TeX{} uses a pretty good system for hyphenation (originally designed
+by Frank Liang~--- you may view his % ! line break
+\href{http://tug.org/docs/liang/}{Ph.D.\ thesis} online) and while
+it's capable of missing ``sensible'' hyphenation points, it seldom
+selects grossly wrong ones. The
+algorithm matches candidates for hyphenation against a set of
+``hyphenation patterns''. The candidates for hyphenation must be
+sequences of letters (or other single characters that \TeX{} may be
+persuaded to think of as letters). Non-letters interrupt hyphenation;
+this applies to \TeX{}'s \csx{accent} primitive (as in `syst\`eme')
+just as much as the exclamation in`syst!eme'.
+
+(Hyphenation takes place on the characters ``sent to the printer''.
+The problem with \csx{accent} is avoided~---in \latex{}~--- by the use
+of the \Package{fontenc} package, as discussed in % ! line break
+``\Qref*{Accented words aren t hyphenated}{Q-hyphenaccents}''.)
+
+Sets of hyphenation patterns are usually derived from analysis of
+a list of valid hyphenations (the process of derivation, using a tool
+called \Package{patgen}, is not ordinarily a sport to be played by
+ordinary mortals).
+
+The patterns for the languages a \TeX{} system is going to deal with
+may only be loaded when the system is installed. To change the set of
+hyphenation patterns recognised by a \tex{}-based or \xetex{} system,
+a \Qref*{partial reinstallation}{Q-newlang} is necessary (note that
+\Qref*{\luatex{}}{Q-luatex} relaxes this constraint).
+
+\TeX{} provides two ``user-level'' commands for control of
+hyphenation: \csx{language} (which selects a hyphenation style), and
+\csx{hyphenation} (which gives explicit instructions to the hyphenation
+engine, overriding the effect of the patterns).
+
+The ordinary \LaTeX{} user need not worry about \csx{language}, since
+it is very thoroughly managed by the \Package{babel} package; use of
+\csx{hyphenation} is discussed in
+\begin{wideversion}
+ the context of
+\end{wideversion}
+% beware line wrap
+\Qref[question]{hyphenation failure}{Q-nohyph}.
+\LastEdit{2012-12-03}
+
+\Question[Q-clsvpkg]{What are \LaTeX{} classes and packages?}
+
+\latex{} aims to be a general-purpose document processor. Such an aim
+could be achieved by a selection of instructions which would enable
+users to use \tex{} primitives, but such a procedure is considered too
+inflexible (and probably too daunting for ordinary users). Thus the
+designers of \latex{} created a model which offered an
+\emph{abstraction} of the design of documents. Obviously, not all
+documents can look the same (even with the defocussed eye of
+abstraction), so the model uses \emph{classes} of document. Base
+\latex{} offers five classes of document: \Class{book},
+\Class{report}, \Class{article} and \Class{letter}.
+For each class, \latex{} provides a \emph{class file}; the user
+arranges to use it via a \csx{documentclass} command at the top of the
+document. So a document starting
+\begin{quote}
+ \cmdinvoke{documentclass}{article}
+\end{quote}
+may be called ``an \emph{article} document''.
+
+This is a good scheme, but it has a glaring flaw: the actual
+typographical designs provided by the \latex{} class files aren't
+widely liked. The way around this is to \emph{refine} the class. To
+refine a class, a programmer may write a new class file that loads an
+existing class, and then does its own thing with the document design.
+
+If the user finds such a refined class, all is well, but if not, the
+common way is to load a \emph{package} (or several).
+
+The \latex{} distribution, itself, provides rather few package files,
+but there are lots of them, by a wide variety of authors, to be found
+on the archives. Several packages are designed just to adjust the
+design of a document~--- using such packages achieves what the
+programmer might have achieved by refining the class.
+
+Other packages provide new facilities: for example, the
+\Package{graphics} package (actually provided as part of any \latex{}
+distribution) allows the user to load externally-provided graphics
+into a document, and the \Package{hyperref} package enables the user
+to construct hyper-references within a document.
+
+On disc, class and package files only appear different by virtue of
+their name ``extension''~--- class files are called \File{*.cls} while
+package files are called \File{*.sty}. Thus we find that the \LaTeX{}
+standard \Class{article} class is represented on disc by a file called
+\File{article.cls}, while the \Package{hyperref} package is
+represented on disc by a file called \File{hyperref.sty}.
+
+The class vs.~package distinction was not clear in \LaTeXo{}~---
+everything was called a style (``document style'' or ``document style
+option''). It doesn't really matter that the nomenclature has
+changed: the important requirement is to understand what other people
+are talking about.
+\LastEdit{2013-10-21}
+
+\Question[Q-whatenv]{What are \latex{} ``environments''}
+
+While \tex{} makes direct provision for commands, \latex{} adds a
+concept of ``environment''; environments perform an action on a block
+(of something or other) rather than than just doing something at one
+place in your document.
+
+A totally trivial environment could change the font in use for a chunk
+of text, as
+\begin{quote}
+\begin{verbatim}
+\newenvironment{monoblock}%
+ {\ttfamily}%
+ {}
+\end{verbatim}
+\end{quote}
+which defines a \environment{monoblock} which may be used as
+\begin{quote}
+\begin{verbatim}
+\begin{monoblock}
+ some text set in monospace
+\end{monoblock}
+\end{verbatim}
+\end{quote}
+which will look like:
+\begin{quote}
+ \texttt{some text set in monospace}
+\end{quote}
+so it is a particularly simple example. A rather complicated
+environment is introduced by \cmdinvoke{begin}{document}; it looks
+simple, but needs all sorts of special \tex{} code to make it work
+`transparently'; most environments are more elaborate than
+\environment{monoblock} and \emph{much} simpler than
+\environment{document}.
+
+An environment puts its content inside a \tex{} \emph{group}, so that
+commands used inside the environment don't `leak out'~--- the
+\environment{monoblock} environment, above, restricts its effect to
+its own contents (the stuff between the \cmdinvoke{begin}{monoblock}
+and \cmdinvoke{end}{monoblock}), which is just what you need for this
+sort of thing.
+
+So that's ``simple'' environments; the \environment{monoblock}, above
+doesn't actually gain us much over
+\begin{quote}
+\begin{verbatim}
+{\ttfamily some text set in monospace}
+\end{verbatim}
+\end{quote}
+though in fact many useful environments are just as simple (to look
+at). Some, such as \environment{verbatim}, look simple but are
+actually very tricky inside.
+
+\latex{} also allows arguments to an environment:
+\begin{quote}
+\begin{verbatim}
+\newenvironment{fontblock}[1]%
+ {#1\selectfont}%
+ {}
+\end{verbatim}
+\end{quote}
+and use of \environment{fontblock} as:
+\begin{quote}
+\begin{verbatim}
+\begin{fontblock}{\ttfamily}
+\end{verbatim}
+\end{quote}
+would produce the same effect as the \environment{monoblock}
+environment.
+
+Environments may also have optional arguments, in much the same way as
+commands:
+\begin{quote}
+\begin{verbatim}
+\newenvironment{normaltext}[1][\itshape]%
+ {#1}%
+ {}
+\end{verbatim}
+\end{quote}
+which will ordinarily set its body in italic, but
+\begin{quote}
+\begin{verbatim}
+\begin{normaltext}[\ttfamily]
+ ...
+\end{normaltext}
+\end{verbatim}
+\end{quote}
+will observe its optional argument, and behave the same as the
+\environment{monoblock} we started with.
+
+Note that an environments argument(s) (mandatory or optional) are
+\emph{not} passed to the `\csx{end}' text of the environment~--- that
+is specified as a macro with no arguments, so that
+\begin{quote}
+\begin{verbatim}
+\newenvironment{normaltext}[1][\itshape]%
+ {#1}%
+ {\typeout{what was #1, again?}
+\end{verbatim}
+\end{quote}
+produces an error message
+\begin{quote}
+\begin{verbatim}
+! Illegal parameter number in definition of \endnormaltext.
+\end{verbatim}
+\end{quote}
+So, if you need to pass an environment argument to the end-code, you
+have to wrap it in a macro of its own:
+\begin{quote}
+\begin{verbatim}
+\newenvironment{normaltext}[1][Intro]%
+ {#1%
+ \newcommand{\foo}{#1}}%
+ {\typeout{what was \foo{}, again?}
+\end{verbatim}
+\end{quote}
+\LastEdit*{2013-02-20}
+
+\Question[Q-dtx]{Documented \LaTeX{} sources (\extension{dtx} files)}
+
+\LaTeXe{}, and many contributed \latex{} macro packages, are written
+in a \Qref*{literate programming style}{Q-lit}, with source and
+documentation in the
+same file. This format in fact originated before the
+days of the \LaTeX{} project as one of the ``Mainz'' series of
+packages. A documented source file conventionally has the suffix
+\extension{dtx}, and will normally be `stripped' before use with
+\LaTeX{}; an installation (\extension{ins}) file is normally provided,
+to automate this process of removing comments for speed of loading.
+If the \extension{ins} file is available, you may process \emph{it}
+with \latex{} to produce the package (and, often, auxiliary files).
+
+Output should look something like:
+\begin{quote}
+\begin{verbatim}
+Generating file(s) ./foo.sty
+
+Processing file foo.dtx (package) -> foo.sty
+File foo.dtx ended by \endinput.
+Lines processed: 2336
+Comments removed: 1336
+Comments passed: 2
+Codelines passed: 972
+\end{verbatim}
+\end{quote}
+The lines ``\texttt{Processing \dots{}\ ended by \csx{endinput}}'' may
+be repeated if the \extension{dtx} file provides more than one
+`unpacked' file.
+
+To read the comments ``as a document'', you can run \LaTeX{} on the
+\extension{dtx} file to produce a nicely formatted version of the
+documented code. (Most \latex{} packages on \ctan{}, nowadays, already
+have \acro{PDF} of the result of processing the \extension{dtx} file,
+as ``documentation''.)
+
+Several packages may be included in one \extension{dtx} file, with
+conditional sections, and there are facilities for indexes of macros,
+etc. All of this m\'elange is sorted out by directives in the
+\extension{ins} file; conventional indexing utilities may be necessary
+for ``full'' output.
+
+Anyone may write \extension{dtx} files; the format is explained in
+\Qref*{The \LaTeX{} Companion}{Q-latex-books}, and a tutorial is available
+from \acro{CTAN} (which comes with skeleton \extension{dtx} and
+\extension{ins} files).
+
+Composition of \extension{dtx} files is supported in \ProgName{emacs} by
+\Qref*{\acro{AUC}-\TeX{}}{Q-editors}.
+
+The (unix-based) script \ProgName{dtxgen} generates a proforma basic
+\extension{dtx} file, which could be useful when starting a new
+project.
+
+Another route to an \extension{dtx} file is to write the
+documentation and the code separately, and then to combine them using
+the \ProgName{makedtx} system. This technique has particular value in
+that the documentation file can be used separately to generate
+\acro{HTML} output; it is often quite difficult to make % ! line break
+\Qref*{\LaTeX{} to \acro{HTML} conversion}{Q-LaTeX2HTML} tools deal
+with \extension{dtx} files, since they use an unusual class file.
+
+The \ProgName{sty2dtx} system goes one step further: it attempts to
+create a \extension{dtx} file from a `normal' \extension{sty} file
+with comments. It works well, in some circumstances, but can become
+confused by comments that aspire to ``structure'' (e.g., tabular
+material, as in many older packages' file headers).
+
+The \extension{dtx} files are not used by \LaTeX{} after they have been
+processed to produce \extension{sty} or \extension{cls} (or whatever)
+files. They need not be kept with the working system; however, for
+many packages the \extension{dtx} file is the primary source of
+documentation, so you may want to keep \extension{dtx} files elsewhere.
+
+An interesting sideline to the story of \extension{dtx} files is the
+\Package{docmfp} package, which extends the model of the \Package{doc}
+package to
+\begin{flatversion}
+ \MF{} and \MP{} (\Qref[see questions]{}{Q-MF} and \Qref[\nothtml]{}{Q-MP})
+\end{flatversion}
+\begin{hyperversion}
+ \Qref{\MF{}}{Q-MF} and \Qref{\MP{}}{Q-MP},
+\end{hyperversion}
+thus permitting documented distribution of bundles containing code for
+\MF{} and \MP{} together with related \LaTeX{} code.
+\begin{ctanrefs}
+\item[AUC-TeX]\CTANref{auctex}
+\item[clsguide.pdf]\CTANref{clsguide}
+\item[docmfp.sty]\CTANref{docmfp}
+\item[docstrip.tex]Part of the \LaTeX{} distribution
+\item[DTX tutorial]\CTANref{dtxtut}
+\item[dtxgen]\CTANref{dtxgen}
+\item[makedtx]\CTANref{makedtx}
+\item[sty2dtx]\CTANref{sty2dtx}
+\end{ctanrefs}
+\LastEdit{2014-06-03}
+
+\Question[Q-whatenc]{What are encodings?}
+
+Let's start by defining two concepts, the \emph{character} and the
+\emph{glyph}.
+The character is the abstract idea of the `atom' of a
+language or other dialogue: so it might be a letter in an alphabetic
+language, a syllable in a syllabic language, or an ideogram in an
+ideographic language. The glyph is the mark created on screen or
+paper which represents a character. Of
+course, if reading is to be possible, there must be some agreed
+relationship between the glyph and the character, so while the precise
+shape of the glyph can be affected by many other factors, such as the
+capabilities of the writing medium and the designer's style, the
+essence of the underlying character must be retained.
+
+Whenever a computer has to represent characters, someone has to define
+the relationship between a set of numbers and the characters they
+represent. This is the essence of an encoding: it is a mapping
+between a set of numbers and a set of things to be represented.
+
+\TeX{} of course deals in encoded characters all the time: the
+characters presented to it in its input are encoded, and it emits
+encoded characters in its \acro{DVI} or \acro{PDF} output. These
+encodings have rather different properties.
+
+The \TeX{} input stream was pretty unruly back in the days when Knuth
+first implemented the language. Knuth himself prepared documents on
+terminals that produced all sorts of odd characters, and as a result
+\TeX{} contains some provision for translating its input (however
+encoded) to something regular. Nowadays,
+the operating system translates keystrokes into a code appropriate for
+the user's language: the encoding used is usually a national or
+international standard, though some operating systems use ``code
+pages'' (as defined by Microsoft). These standards and code pages often
+contain characters that may not appear in the \TeX{} system's input
+stream. Somehow, these characters have to be dealt with~--- so
+an input character like ``\'e'' needs to be interpreted by \TeX{} in
+a way that that at least mimics the way it interprets ``\csx{'}\texttt{e}''.
+
+The \TeX{} output stream is in a somewhat different situation:
+characters in it are to be used to select glyphs from the fonts to be
+used. Thus the encoding of the output stream is notionally a font
+encoding (though the font in question may be a
+% beware line break (twice)
+\nothtml{virtual one~--- see }%
+\Qref[question]{virtual font}{Q-virtualfonts}). In principle, a
+fair bit of what appears in the output stream could be direct
+transcription of what arrived in the input, but the output stream
+also contains the product of commands in the input, and translations
+of the input such as ligatures like %
+\texttt{fi}\nothtml{\ensuremath\Rightarrow``fi''}.
+
+Font encodings became a hot topic when the
+\Qref*{Cork encoding}{Q-ECfonts}
+appeared, because of the possibility of suppressing
+\csx{accent} commands in the output stream (and hence improving the
+quality of the hyphenation of text in inflected languages, which is
+interrupted by the \csx{accent} commands~--- see
+% beware line break
+\Qref[question]{``how does hyphenation work''}{Q-hyphen}).
+To take advantage of the diacriticised characters represented in the
+fonts, it is necessary to arrange that whenever the
+command sequence ``\csx{'}\texttt{e}'' has been input
+(explicitly, or implicitly via the sort of mapping of input mentioned
+above), the character that codes the position of the ``\'e'' glyph is
+used.
+
+Thus we could have the odd arrangement that the diacriticised character in
+the \TeX{} input stream is translated into \TeX{} commands that would
+generate something looking like the input character; this sequence of
+\TeX{} commands is then translated back again into a single
+diacriticised glyph as the output is created. This is in fact
+precisely what the \LaTeX{} packages \Package{inputenc} and
+\Package{fontenc} do, if operated in tandem on (most) characters in
+the \acro{ISO}~Latin-1 input encoding and the \acro{T}1 font encoding.
+At first sight, it seems eccentric to have the first package do a thing, and
+the second precisely undo it, but it doesn't always happen that way:
+most font encodings can't match the corresponding input encoding
+nearly so well, and the two packages provide the sort of symmetry the
+\LaTeX{} system needs.
+
+\Question[Q-ECfonts]{What are the \acro{EC} fonts?}
+
+A font provides a number of \emph{glyphs}. In order that the glyphs
+may be printed, they are \Qref*{\emph{encoded}}{Q-whatenc}, and the
+encoding is used as an index into tables within the font. For various
+reasons, Knuth chose deeply eccentric encodings for his Computer
+Modern family of fonts; in particular, he chose different encodings
+for different fonts, so that the application using the fonts has to
+remember which font of the family it's using before selecting a
+particular glyph.
+
+When \TeX{} version 3 arrived, most of the drivers for the
+eccentricity of Knuth's encodings went away, and at \acro{TUG}'s Cork
+meeting, an encoding for a set of 256 glyphs, for use in \TeX{} text,
+was defined. The intention was that these glyphs should cover `most'
+European languages that use Latin alphabets, in the sense of including
+all accented letters needed. (Knuth's \acro{CMR} fonts missed things
+necessary for Icelandic and Polish, for example, which the Cork fonts
+do have, though even Cork encoding's coverage isn't complete.)
+\latex{} refers to the Cork encoding as \acro{T}1, and provides the
+means to use fonts thus encoded to avoid problems with the interaction
+of accents and hyphenation % ! line break
+(see \Qref[question]{hyphenation of accented words}{Q-hyphenaccents}).
+
+The first \MF{}-fonts to conform to the Cork encoding were the \acro{EC}
+fonts. They look \acro{CM}-like, though their metrics differ from \acro{CM}-font
+metrics in several areas. They have long been regarded as `stable' (in
+the same sense that the \acro{CM} fonts are stable: their metrics are
+unlikely ever to change). Each \acro{EC} font is, of course, roughly twice the
+size of the corresponding \acro{CM} font, and there are far more of them than
+there are CM fonts. The simple number of fonts proved problematic in
+the production of Type~1 versions of the fonts, but \acro{EC} or
+\acro{EC}-equivalent fonts in Type~1 or TrueType form (the latter only from
+\begin{wideversion}
+ \Qref{commercial suppliers}{Q-commercial}).
+\end{wideversion}
+\begin{narrowversion}
+ % ( <- paren matching
+ commercial suppliers~--- \Qref{question}{Q-commercial}).
+\end{narrowversion}
+Free \Qref*{auto-traced versions}{Q-textrace}~--- the \acro{CM}-super and
+the \acro{LGC} fonts, and the Latin Modern series (rather directly generated
+from Metafont sources), are available.
+
+Note that the Cork encoding doesn't cover mathematics (so that no
+``T1-encoded'' font families can not support it). If you're using
+Computer-Modern-alike fonts, this doesn't actually matter: your system
+will have the original Computer Modern mathematical fonts (or the
+those distributed with the Latin Modern set), which cover `basic' \TeX{}
+mathematics; more advanced mathematics are likely to need separate
+fonts anyway. Suitable mathematics fonts for use with other font
+families are discussed in % ! line break
+``\Qref*{choice of scalable fonts}{Q-psfchoice}''.
+
+The \acro{EC} fonts are distributed with a set of `Text Companion' (\acro{TC}) fonts
+that provide glyphs for symbols commonly used in text. The \acro{TC} fonts
+are encoded according to the \latex{} \acro{TS}1 encoding, and are not
+necessarily as `stable' are the \acro{EC} fonts are. Note that modern
+distributions tend not to distribute the \acro{EC} fonts in outline format, but
+rather to provide Latin Modern for \acro{T}1-encoded Computer Modern-style
+fonts. This can sometimes cause confusion when users are recompiling
+old documents.
+
+The Cork encoding is also implemented by virtual fonts provided in the
+\acro{PSNFSS} system, for Adobe Type 1 fonts, and also by most other such
+fonts that have been developed (or otherwise made available) for use
+with \alltex{}.
+
+Note that \acro{T}1 (and other eight-bit font encodings) are superseded in
+the developing \TeX{}-family members \Qref*{\xetex{}}{Q-xetex} and
+\Qref*{\luatex{}}{Q-luatex}, which use Unicode as their base encoding,
+and use Unicode-encoded fonts (typically in \FontFormat{ttf} or
+\FontFormat{otf} formats). The \Package{cm-unicode} fonts carry the
+flag in this arena, along with the Latin Modern set.
+\begin{ctanrefs}
+\item[CM-super fonts]\CTANref{cm-super}
+\item[CM-LGC fonts]\CTANref{cm-lgc}
+\item[CM unicode fonts]\CTANref{cm-unicode}
+\item[EC and TC fonts]\CTANref{ec}
+\item[Latin Modern fonts]\CTANref{lm}
+\end{ctanrefs}
+
+\Question[Q-unicode]{Unicode and \tex{}}
+
+Unicode is a character code scheme that has the capacity to express
+the text of the languages of the world, as well as important symbols
+(including mathematics). Any coding scheme that is directly
+applicable to \tex{} may be expressed in single bytes (expressing up
+to 256 characters); Unicode characters may require several bytes, and
+the scheme may express a very large number of characters.
+
+For ``old-style'' applications (\tex{} or \pdftex{}) to deal with
+Unicode input, the sequence of bytes to make up Unicode character are
+processed by a set of macros that deliver a glyph number in an
+appropriate font. The macros that read these bytes is complicated,
+and manifests as \pkgoption{utf8} option for the \latex{} distribution
+\Package{inputenc} package; the coverage of that option is limited to
+Unicode characters that can be represented using ``\latex{} standard
+encodings''. The separate package \Package{ucs} provides wider, but
+less robust, coverage via an \Package{inputenc} option
+\pkgoption{utf8x}. As a general rule, you should never use
+\pkgoption{utf8x} until you have convinced yourself that
+\pkgoption{utf8} can not do the job for you.
+
+`Modern' \tex{}-alike applications, \Qref*{\xetex{}}{Q-xetex} and
+\Qref*{\luatex{}}{Q-luatex} read their input using \acro{UTF}-8
+representations of Unicode as standard. They also use TrueType or
+OpenType fonts for output; each such font has tables that tell the
+application which part(s) of the Unicode space it covers; the tables
+enable the engines to decide which font to use for which character
+(assuming there is any choice at all).
+\begin{ctanrefs}
+\item[inputenc.sty]Part of the \CTANref{latex} distribution
+\item[ucs.sty]\CTANref{ucs}
+\end{ctanrefs}
+\LastEdit{2012-04-20}
+
+\Question[Q-tds]{What is the \acro{TDS}?}
+
+\acro{TDS} is an acronym for ``\TeX{} Directory Structure''; it
+specifies a standard way of organising all the \TeX{}-related files on
+a computer system.
+
+Most modern distributions arrange their \tex{} files in conformance
+with the \acro{TDS}, using both a `distribution' directory tree and a
+(set of) `local' directory trees, each containing \TeX{}-related
+files. The \acro{TDS} recommends the name \texttt{texmf} for the name
+of the root directory (folder) of an hierarchy; in practice there are
+typically several such trees, each of which has a name that compounds
+that (e.g., \texttt{texmf-dist}, \texttt{texmf-var}).
+
+Files supplied as part of the distribution are put into the
+distribution's tree, but the location of the distribution's hierarchy is
+system dependent. (On a Unix system it might be at
+\path{/usr/share/texmf} or \path{/opt/texmf}, or a similar location.)
+
+There may be more than one `local' hierarchy in which additional files
+can be stored. An installation will also typically offer a local
+hierarchy, while each user may have an individual local hierarchy.
+
+The \acro{TDS} itself is published as the output of a \acro{TUG} % ! line break
+\Qref*{Technical Working Group}{Q-TUG*}. You may browse an
+\href{http://tug.org/tds/}{on-line version} of the standard, and
+copies in several other formats (including source) are available on
+\acro{CTAN}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\acro{TDS} specification]\CTANref{tds}
+\end{ctanrefs}
+
+\Question[Q-eps]{What is ``Encapsulated \PS{}'' (``\acro{EPS}'')?}
+
+\PS{} has been for many years a \emph{lingua franca} of powerful
+printers (though modern high-quality printers now tend to require some
+constrained form of Adobe Acrobat, instead); since \PS{} is also a
+powerful graphical programming language, it is commonly used as an
+output medium for drawing (and other) packages.
+
+However, since \PS{} \emph{is} such a powerful language, some
+rules need to be imposed, so that the output drawing may be included
+in a document as a figure without ``leaking'' (and thereby destroying
+the surrounding document, or failing to draw at all).
+
+Appendix \acro{H} of the \PS{} Language Reference Manual (second
+and subsequent editions), specifies a set of rules for \PS{} to
+be used as figures in this way. The important features are:
+\begin{itemize}
+\item certain ``structured comments'' are required; important ones are
+ the identification of the file type, and information about the
+ ``bounding box'' of the figure (i.e., the minimum rectangle
+ enclosing it);
+\item some commands are forbidden~--- for example, a \texttt{showpage}
+ command will cause the image to disappear, in most \TeX{}-output
+ environments; and
+\item ``preview information'' is permitted, for the benefit of things
+ such as word processors that don't have the ability to draw
+ \PS{} in their own right~--- this preview information may be in
+ any one of a number of system-specific formats, and any viewing
+ program may choose to ignore it.
+\end{itemize}
+A \PS{} figure that conforms to these rules is said to be in
+``Encapsulated \PS{}'' (\acro{EPS}) format. Most \AllTeX{} packages for
+including \PS{} are structured to use Encapsulated \PS{};
+which of course leads to much hilarity as exasperated \AllTeX{} users
+struggle to cope with the output of drawing software whose authors
+don't know the rules.
+
+\Question[Q-adobetypen]{Adobe font formats}
+\keywords{type1 type3}
+
+Adobe has specified a number of formats for files to represent fonts
+in \PS{} files; this question doesn't attempt to be encyclopaedic, so
+we only discuss the two formats most commonly encountered in the
+\AllTeX{} context, types~1 and 3. In particular, we don't discuss the
+OpenType format, whose many advantages now becoming accessible to most
+\AllTeX{} users (by means of
+\begin{hyperversion}
+ the widely-used \Qref{\xetex{}}{Q-xetex} and the more experimental
+ \Qref{\LuaTeX{}}{Q-luatex}).
+\end{hyperversion}
+\begin{flatversion}
+ the widely-used \xetex{}~--- see \Qref[question]{}{Q-xetex}~--- and
+ the more experimental \LuaTeX{}~--- see \Qref[question]{}{Q-luatex}).
+\end{flatversion}
+
+Adobe Type~1 format specifies a means to represent outlines of the glyphs
+in a font. The `language' used is closely restricted, to ensure that
+the font is rendered as quickly as possible. (Or rather, as quickly
+as possible with Adobe's technology at the time the specification was
+written: the structure could well be different if it were specified
+now.) The format has long been the basis of the digital type-foundry
+business, though nowadays most new fonts are released in OpenType format.
+
+%% Type~1 fonts are directly supported by some operating system software,
+%% and at least one \TeX{} system, the commercial % line break!
+%% \Qref*{\YandY{} system}{Q-commercial}, bases its entire
+%% operation on the use of Type~1 fonts.
+
+In the \AllTeX{} context, Type~1 fonts are extremely important. Apart
+from their simple
+availability (there are thousands of commercial Type~1 text fonts around), the
+commonest reader for \acro{PDF} files has long (in effect) \emph{insisted} on
+their use (see below).
+
+Type~3 fonts have a more forgiving specification. A wide range of
+\PS{} operators is permissible, including bitmap specifiers. Type~3
+is therefore the natural format to be used for programs such as
+\ProgName{dvips} when they auto-generate something to represent
+\MF{}-generated fonts in a \PS{} file. It's Adobe Acrobat Viewer's
+treatment of bitmap Type~3 fonts that has made direct \MF{} output
+increasingly unattractive, in recent years. If you have a \acro{PDF}
+document in which the text looks fuzzy and uneven in Acrobat Reader,
+ask Reader for the \texttt{File}\arrowhyph{}%
+\texttt{Document Properties}\arrowhyph{}%
+\texttt{Fonts ...}, and it will likely show some font or other as
+``Type~3'' (usually with encoding ``Custom''). The problem has
+disappeared with version 6 of Acrobat Reader. See % line break
+\Qref[question]{\acro{PDF} quality}{Q-dvips-pdf} for a discussion of
+the issue, and for ways of addressing it.
+
+Type~3 fonts should not entirely be dismissed, however. Acrobat
+Reader's failure with them is entirely derived from its failure to use
+the anti-aliasing techniques common in \TeX{}-ware. Choose a
+different set of \PS{} graphical operators, and you can make pleasing
+Type~3 fonts that don't ``annoy'' Reader. For example, you may not
+change colour within a Type~1 font glyph, but there's no such
+restriction on a Type~3 font, which opens opportunities for some
+startling effects.
+
+\Question[Q-resolns]{What are ``resolutions''?}
+
+``Resolution'' is a word that is used with little concern for its
+multiple meanings, in computer equipment marketing. The word suggests
+a measure of what an observer (perhaps the human eye) can resolve; yet
+we regularly see advertisements for printers whose resolution is
+1200dpi~--- far finer than the unaided human eye can distinguish. The
+advertisements are talking about the precision with which the printer
+can place spots on the printed image, which affects the fineness of
+the representation of fonts, and the accuracy of the placement of
+glyphs and other marks on the page.
+
+In fact, there are two sorts of ``resolution'' on the printed page
+that we need to consider for \AllTeX{}'s purposes:
+\begin{itemize}
+\item the positioning accuracy, and
+\item the quality of the fonts.
+\end{itemize}
+In the case where \AllTeX{} output is being sent direct to a printer,
+in the printer's ``native'' language, it's plain that the \acro{DVI}
+processor must know all such details, and must take detailed account
+of both types of resolution.
+
+In the case where output is being sent to an intermediate distribution
+format, that has potential for printing (or displaying) we know not
+where, the final translator, that connects to directly to the printer
+or display, has the knowledge of the device's properties: the
+\acro{DVI} processor need not know, and should not presume to guess.
+
+Both \PS{} and \acro{PDF} output are in this category. While \PS{} is
+used less frequently for document distribution nowadays, it is
+regularly used as the source for distillation into \acro{PDF}; and
+\acro{PDF} is the workhorse of an enormous explosion of document
+distribution.
+
+Therefore, we need \acro{DVI} processors that will produce
+``resolution independent'' \PS{} or \acro{PDF} output; of course, the
+independence needs to extend to both forms of independence outlined
+above.
+
+Resolution-independence of fonts was for a long time forced upon the
+world by the feebleness of Adobe's \ProgName{Acrobat}
+\ProgName{Reader} at dealing with bitmap files: a sequence of answers
+starting with one aiming at the % ! line break
+\Qref*{quality of \acro{PDF} from \PS{}}{Q-dvips-pdf} addresses
+the problems that arise.
+
+Resolution-independence of positioning is more troublesome:
+\ProgName{dvips} is somewhat notorious for insisting on positioning to
+the accuracy of the declared resolution of the printer.
+One commonly-used approach is to declare a resolution of 8000 (``better
+than any device''), and this is reasonably successful though it does
+have its \Qref*{problems}{Q-8000}.
+
+\Question[Q-fontname]{What is the ``Berry naming scheme''?}
+
+In the olden days, \AllTeX{} distributions were limited by the
+feebleness of file systems' ability to represent long names. (The
+\MSDOS{} file system was a particular bugbear: fortunately any current
+Microsoft system allows rather more freedom to specify file names.
+Sadly, the ISO~9660 standard for the structure of \CDROM{}s has a
+similar failing, but that too has been modified by various extension
+mechanisms.)
+
+One area in which these short file names posed a particular problem
+was that of file names for Type~1 fonts.
+These fonts are distributed by their vendors with
+pretty meaningless short names, and there's a natural ambition to
+change the name to something that identifies the font somewhat
+precisely. Unfortunately, names such as ``BaskervilleMT'' are
+already far beyond the abilities of the typical feeble file system,
+and add the specifier of a font shape or variant, and the difficulties
+spiral out of control. Font companies deal with the issue by
+inventing silly names, and providing a map file to show what the
+``real'' names. Thus the Monotype Corporation provides the
+translations:
+\begin{quote}
+ \texttt{bas\_\_\_\_\_ BaskervilleMT}\\
+ \texttt{basb\_\_\_\_ BaskervilleMT-Bold}\\
+ \texttt{basbi\_\_\_ BaskervilleMT-BoldItalic}
+\end{quote}
+and so on. These names could be used within \AllTeX{} programs,
+except that they are not unique: there's nothing to stop Adobe using
+`\texttt{bas\_\_\_\_\_}' for \emph{their} Baskerville font.
+
+Thus arose the Berry naming scheme.
+
+The basis of the scheme is to encode the meanings of the various parts
+of the file's specification in an extremely terse way, so that enough
+font names can be expressed even in impoverished file name-spaces. The
+encoding allocates one character to the font ``foundry'' (Adobe, Monotype,
+and so on), two to the typeface name (Baskerville, Times Roman, and so
+on), one to the weight, shape, and encoding and so on.
+
+The whole scheme is outlined in the \Package{fontname} distribution,
+which includes extensive documentation and a set of tables of fonts
+whose names have been systematised.
+\begin{ctanrefs}
+\item[fontname distribution]\CTANref{fontname}
+\end{ctanrefs}
+
diff --git a/obsolete/help/texfaq/faq-docs.tex b/obsolete/help/texfaq/faq-docs.tex
new file mode 100644
index 0000000000..dbbdeb37c5
--- /dev/null
+++ b/obsolete/help/texfaq/faq-docs.tex
@@ -0,0 +1,1305 @@
+% $Id: faq-docs.tex,v 1.46 2014/03/04 15:42:45 rf10 Exp rf10 $
+
+\section{Documentation and Help}
+
+\Question[Q-book-lists]{Books relevant to \tex{} and friends}
+
+There are too many books for them all to appear in a single list, so
+the following answers aim to cover ``related'' books, with subject
+matter as follows:
+\begin{itemize}
+\item \Qref*{\tex{} itself and \plaintex{}}{Q-tex-books}
+\item \Qref*{\latex{}}{Q-latex-books}
+\item \Qref*{Books on other \tex{}-related matters}{Q-other-books}
+\item \Qref*{Books on Type}{Q-type-books}
+\end{itemize}
+
+These lists only cover books in English: notices of new books, or
+warnings that books are now out of print are always welcome. However,
+these \acro{FAQ}s do \emph{not} carry reviews of current published
+material.
+\LastEdit*{2011-06-01}
+
+\Question[Q-tex-books]{Books on \TeX{}, \plaintex{} and relations}
+\AliasQuestion{Q-books}
+
+While Knuth's book is the definitive reference for both \TeX{} and
+\plaintex{}, there are many books covering these topics:
+\begin{booklist}
+\item[The \TeX{}book]by Donald Knuth (Addison-Wesley, 1984,
+ \ISBN{0-201-13447-0}, paperback \ISBN{0-201-13448-9})
+\item[A Beginner's Book of \TeX{}]by Raymond Seroul and Silvio Levy,
+ (Springer Verlag, 1992, \ISBN{0-387-97562-4})
+\item[\TeX{} by Example: A Beginner's Guide]by Arvind Borde
+ (Academic Press, 1992, \ISBN{0-12-117650-9}~--- now out of print)
+\item[Introduction to \TeX{}]by Norbert Schwarz (Addison-Wesley,
+ 1989, \ISBN{0-201-51141-X}~--- now out of print)
+\item[A \plaintex{} Primer]by Malcolm Clark (Oxford University
+ Press, 1993, ISBNs~0-198-53724-7 (hardback) and~0-198-53784-0
+ (paperback))
+\item[A \TeX{} Primer for Scientists]by Stanley Sawyer and Steven
+ Krantz (CRC Press, 1994, \ISBN{0-849-37159-7})
+\item[\TeX{} by Topic]by Victor Eijkhout (Addison-Wesley, 1992,
+ \ISBN{0-201-56882-9}~--- now out of print, but see
+ \Qref[question]{online books}{Q-ol-books}; you can also now buy a copy
+ printed, on demand, by Lulu~--- see
+ \url{http://www.lulu.com/content/2555607})
+\item[\TeX{} for the Beginner]by Wynter Snow (Addison-Wesley, 1992,
+ \ISBN{0-201-54799-6})
+\item[\TeX{} for the Impatient]by Paul W.~Abrahams, Karl Berry and
+ Kathryn A.~Hargreaves (Addison-Wesley, 1990,
+ \ISBN{0-201-51375-7}~--- now out of print, but see
+ \Qref[question]{online books}{Q-ol-books})
+\item[\TeX{} in Practice]by Stephan von Bechtolsheim (Springer
+ Verlag, 1993, 4 volumes, \ISBN{3-540-97296-X} for the set, or
+% nos in comments are for German distribution (Springer Verlag, Berlin)
+ Vol.~1: \ISBN{0-387-97595-0}, % (3-540-97595-0)
+ Vol.~2: \ISBN{0-387-97596-9}, % (3-540-97596-9)
+ Vol.~3: \ISBN{0-387-97597-7}, and % (3-540-97597-7)
+ Vol.~4: \ISBN{0-387-97598-5})% (3-540-97598-5)
+\begin{typesetversion}
+\item[\TeX{}: Starting from \sqfbox{1}\,\footnotemark]%
+\footnotetext{That's `Starting from Square One'}%
+\end{typesetversion}
+\begin{htmlversion}
+\item[\TeX{}: Starting from Square One]
+\end{htmlversion}
+ by Michael Doob (Springer
+ Verlag, 1993, \ISBN{3-540-56441-1}~--- now out of print)
+\item[The Joy of \TeX{}]by Michael D.~Spivak (second edition,
+ \acro{AMS}, 1990, \ISBN{0-821-82997-1})
+\item[The Advanced \TeX{}book]by David Salomon (Springer Verlag, 1995,
+ \ISBN{0-387-94556-3})
+\end{booklist}
+A collection of Knuth's publications about typography is also available:
+\begin{booklist}
+\item[Digital Typography]by Donald Knuth (CSLI and Cambridge
+ University Press, 1999, \ISBN{1-57586-011-2}, paperback
+ \ISBN{1-57586-010-4}).
+\end{booklist}
+\nothtml{\noindent}and in late 2000, a ``Millennium Boxed Set'' of all
+5 volumes of Knuth's ``Computers and Typesetting'' series (about
+\TeX{} and \MF{}) was published by Addison Wesley:
+\begin{booklist}
+\item[Computers \& Typesetting, Volumes A--E Boxed Set]by Donald Knuth
+ (Addison-Wesley, 2001, \ISBN{0-201-73416-8}).
+\end{booklist}
+\checked{rf}{2000/02/12 -- http://cseng.aw.com/book/0,3828,0201734168,00.html}
+\LastEdit*{2011-06-01}
+
+\Question[Q-latex-books]{Books on \latex{}}
+
+\begin{booklist}
+\item[\LaTeX{}, a Document Preparation System]by Leslie Lamport
+ (second edition, Addison Wesley, 1994, \ISBN{0-201-52983-1})
+\item[Guide to \LaTeX{}]Helmut Kopka and Patrick W.~Daly (fourth
+ edition, Addison-Wesley, 2004, \ISBN{0-321-17385-6})
+\item[\latex{} Beginner's Guide]by Stefan Kottwitz (Packt Publishing,
+ 2011, \ISBN*{1847199860}{978-1847199867})
+\item[The \LaTeX{} Companion]by Frank Mittelbach, Michel Goossens,
+ Johannes Braams, David Carlisle and Chris Rowley (second edition,
+ Addison-Wesley, 2004, \ISBN*{0-201-36299-6}{978-0-201-36299-2}); the
+ book as also available as a digital download (in \acro{EPUB},
+ \acro{MOBI} and \acro{PDF} formats) from
+ \url{http://www.informit.com/store/latex-companion-9780133387667}
+\item[The \LaTeX{} Graphics Companion:]%
+ \emph{Illustrating documents with \TeX{} and \PS{}} by Michel
+ Goossens, Sebastian Rahtz, Frank Mittelbach, Denis Roegel and
+ Herbert Vo\ss {} (second edition, Addison-Wesley, 2007,
+ \ISBN*{0-321-50892-0}{978-0-321-50892-8})
+\item[The \LaTeX{} Web Companion:]%
+ \emph{Integrating \TeX{}, \acro{HTML} and \acro{XML}} by Michel
+ Goossens and Sebastian Rahtz (Addison-Wesley, 1999, \ISBN{0-201-43311-7})
+\item[\TeX{} Unbound:]%
+ \emph{\LaTeX{} and \TeX{} strategies for fonts, graphics, and more}
+ by Alan Hoenig (Oxford University Press, 1998, \ISBN{0-19-509685-1}
+ hardback, \ISBN{0-19-509686-X} paperback)
+% \item[Math into \LaTeX{}:]\emph{An Introduction to \LaTeX{} and \AMSLaTeX{}}
+% by George Gr\"atzer (third edition Birkh\"auser and Springer Verlag,
+% 2000, \ISBN{0-8176-4431-9}, \ISBN{3-7643-4131-9})
+% \checked{RF}{2001/01/16}
+\item[More Math into \latex{}:]\emph{An Introduction to} \LaTeX{}
+ \emph{and} \AMSLaTeX{} by George Gr\"atzer (fourth edition Springer Verlag,
+ 2007, \ISBN{978-0-387-32289-6}
+%% gr\"atzer's home page
+%% http://www.maths.umanitoba.ca/homepages/gratzer.html/LaTeXBooks.html
+\item[Digital Typography Using \LaTeX{}]Incorporating some
+ multilingual aspects, and use of \Qref*{Omega}{Q-omegaleph}, by
+ Apostolos Syropoulos, Antonis Tsolomitis and Nick Sofroniou
+ (Springer, 2003, \ISBN{0-387-95217-9}).
+% A list of errata for the first printing of Digital Typography Using
+% \LaTeX{} is available from:
+% \URL{http://www.springer-ny.com/catalog/np/jan99np/0-387-98708-8.html}
+% (not any longer)
+\item[First Steps in \LaTeX{}]by George Gr\"atzer (Birkh\"auser, 1999,
+ \ISBN{0-8176-4132-7})
+\item[\LaTeX{}: Line by Line:]%
+ \emph{Tips and Techniques for Document Processing}
+ by Antoni Diller (second edition, John Wiley \& Sons,
+ 1999, \ISBN{0-471-97918-X})
+\item[\LaTeX{} for Linux:]\emph{A Vade Mecum}
+ by Bernice Sacks Lipkin (Springer-Verlag, 1999,
+ \ISBN{0-387-98708-8}, second printing)
+\item[Typesetting Mathematics with \latex{}]by Herbert Vo\ss {} (UIT
+ Cambridge, 2010, \ISBN{978-1-906-86017-2})
+% checked 2011-09-09 http://www.uit.co.uk/BK-TMWL/HomePage
+\item[Typesetting Tables with \latex{}]by Herbert Vo\ss {}, (UIT
+ Cambridge, 2011, \ISBN{978-1-906-86025-7})
+% checked 2011-09-09 http://www.uit.co.uk/BK-TTWL/HomePage
+\item[PSTricks: Graphics and PostScript for \tex{} and \latex{}]by
+ Herbert Vo\ss {}, (UIT Cambridge, 2011, \ISBN{978-1-906-86013-4})
+\end{booklist}
+A sample of George Gr\"atzer's ``Math into \LaTeX{}'', in Adobe
+Acrobat format, and example files
+for the three \LaTeX{} Companions, and for
+Gr\"atzer's ``First Steps in \LaTeX{}'', are all available on
+\acro{CTAN}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Examples for \nothtml{\upshape}First Steps in \LaTeX{}]\CTANref{gfs}
+\item[\nothtml{\rmfamily}Examples for \nothtml{\upshape}\LaTeX{} Companion]\CTANref{tlc2}
+\item[\nothtml{\rmfamily}Examples for \nothtml{\upshape}\LaTeX{} Graphics Companion]\CTANref{lgc}
+\item[\nothtml{\rmfamily}Examples for \nothtml{\upshape}\LaTeX{} Web Companion]\CTANref{lwc}
+%\item[\nothtml{\rmfamily}Examples for \nothtml{\upshape}\TeX{} in Practice]\CTANref{tip}
+\item[\nothtml{\rmfamily}Sample of \nothtml{\upshape}Math into \LaTeX{}]\CTANref{mil}
+\end{ctanrefs}
+\LastEdit{2014-03-14}
+
+\Question[Q-other-books]{Books on other \tex{}-related matters}
+
+There's a nicely-presented list of of ``recommended books'' to be had
+on the web: \URL{http://www.macrotex.net/texbooks/}
+
+The list of \MF{} books is rather short:
+\begin{booklist}
+\item[The \MF{}book]by Donald Knuth (Addison Wesley, 1986,
+ \ISBN{0-201-13445-4}, \ISBN{0-201-52983-1} paperback)
+\end{booklist}
+Alan Hoenig's `\textsl{\TeX{} Unbound}' includes some discussion and
+examples of using \MF{}.
+
+A book covering a wide range of topics (including installation and
+maintenance) is:
+\begin{booklist}
+\item[Making \TeX{} Work]by Norman Walsh (O'Reilly and Associates,
+ Inc, 1994, \ISBN{1-56592-051-1})
+\end{booklist}
+The book is decidedly dated, and is now out of print, but a copy is
+available via \texttt{sourceforge} and on \acro{CTAN},
+and we list it under ``\Qref*{online books}{Q-ol-books}''.
+\LastEdit*{2011-06-01}
+
+\Question[Q-type-books]{Books on Type}
+
+ The following is a partial listing of books on typography in general.
+Of these, Bringhurst seems to be the one most often recommended.
+\begin{booklist}
+\item[The Elements of Typographic Style]by Robert Bringhurst
+ (Hartley \& Marks, 1992, \ISBN{0-88179-033-8})
+\item[Finer Points in the Spacing \& Arrangement of Type]by Geoffrey Dowding
+ (Hartley \& Marks, 1996, \ISBN{0-88179-119-9})
+\item[The Thames \& Hudson Manual of Typography]by Ruari McLean
+ (Thames \& Hudson, 1980, \ISBN{0-500-68022-1})
+\item[The Form of the Book]by Jan Tschichold
+ (Lund Humphries, 1991, \ISBN{0-85331-623-6})
+\item[Type \& Layout]by Colin Wheildon
+ (Strathmore Press, 2006, \ISBN{1-875750-22-3})
+\item[The Design of Books]by Adrian Wilson
+ (Chronicle Books, 1993, \ISBN{0-8118-0304-X})
+\item[Optical Letter Spacing]by David Kindersley and Lida Cardozo Kindersley
+ % ! line break
+ (\href{http://www.kindersleyworkshop.co.uk/}{The Cardozo Kindersley Workshop}
+ 2001, \ISBN{1-874426-139})
+\end{booklist}
+
+ There are many catalogues of type specimens but the following books provide
+a more interesting overall view of types in general and some of their history.
+\begin{booklist}
+\item[Alphabets Old \& New]by Lewis F.~Day
+ (Senate, 1995, \ISBN{1-85958-160-9})
+\item[An Introduction to the History of Printing Types]by Geoffrey Dowding
+ (British Library, 1998, UK \ISBN{0-7123-4563-9}; USA \ISBN{1-884718-44-2})
+\item[The Alphabet Abecedarium]by Richard A.~Firmage
+ (David R.~Godine, 1993, \ISBN{0-87923-998-0})
+\item[The Alphabet and Elements of Lettering]by Frederick Goudy
+ (Dover, 1963, \ISBN{0-486-20792-7})
+\item[Anatomy of a Typeface]by Alexander Lawson
+ (David R.~Godine, 1990, \ISBN{0-87923-338-8})
+\item[A Tally of Types]by Stanley Morison
+ (David R.~Godine, 1999, \ISBN{1-56792-004-7})
+\item[Counterpunch]by Fred Smeijers
+ (Hyphen, 1996, \ISBN{0-907259-06-5})
+\item[Treasury of Alphabets and Lettering]by Jan Tschichold
+ (W.~W.~Norton, 1992, \ISBN{0-393-70197-2})
+\item[A Short History of the Printed Word]by Warren Chappell and
+ Robert Bringhurst (Hartley \& Marks, 1999, \ISBN{0-88179-154-7})
+\end{booklist}
+
+ The above lists are limited to books published in English. Typographic
+styles are somewhat language-dependent, and similarly the `interesting' fonts
+depend on the particular writing system involved.
+\LastEdit{2011-06-01}
+
+\Question[Q-whereFAQ]{Where to find \acro{FAQ}s}
+
+Bobby Bodenheimer's article, from which this \acro{FAQ} was developed, used
+to be posted (nominally monthly) to newsgroup
+\Newsgroup{comp.text.tex}. The (long
+obsolete) last posted copy of that article is kept on \acro{CTAN} for
+auld lang syne.
+
+\begin{pdfversion}
+A version of the \href{http://www.tex.ac.uk/faq}{present \acro{FAQ}}
+may be browsed via the World-Wide Web, and its sources
+\end{pdfversion}
+\begin{dviversion}
+A version of the present \acro{FAQ} may be browsed via the World-Wide Web, at
+\acro{URL} \URL{http://www.tex.ac.uk/faq}, and its sources
+\end{dviversion}
+\begin{htmlversion}
+The sources of the present \acro{FAQ}
+\end{htmlversion}
+are available from \acro{CTAN}.
+
+This \acro{FAQ} and others are regularly mentioned, on
+\Newsgroup{comp.text.tex} and elsewhere, in a ``pointer \acro{FAQ}''
+which is also saved at \URL{http://tug.org/tex-ptr-faq}
+
+A 2006 innovation from Scott Pakin is the ``visual'' \LaTeX{} \acro{FAQ}.
+This is a document with (mostly rubbish) text formatted so as to
+highlight things we discuss here, and providing Acrobat hyper-links to
+the relevant answers in this \acro{FAQ} on the Web. The visual
+\acro{FAQ} is provided in \acro{PDF} format, on \acro{CTAN}; it works
+best using Adobe Acrobat Reader 7 (or later); some features are
+missing with other readers, or with earlier versions of Acrobat Reader
+
+Another excellent information source, available in English, is the
+\href{http://tex.loria.fr}{\AllTeX{} navigator}.
+
+Both the Francophone \TeX{} user group Gutenberg and the Czech/Slovak
+user group CS-TUG have published translations of this \acro{FAQ}, with
+extensions appropriate to their languages.
+
+% Herbert Vo\ss {}'s excellent % beware line break
+% \href{http://texnik.de/}{\LaTeX{} tips and tricks}
+% provides excellent advice on most topics one might imagine (though
+% it's not strictly a \acro{FAQ})~--- highly recommended for most
+% ordinary mortals' use.
+
+The Open Directory Project (\acro{ODP}) maintains a list of sources of
+\AllTeX{} help, including \acro{FAQ}s. View the \TeX{} area at
+\URL{http://dmoz.org/Computers/Software/Typesetting/TeX/}
+
+Other non-English \acro{FAQ}s are available (off-\acro{CTAN}):
+\begin{booklist}
+\item[German]Posted regularly to \Newsgroup{de.comp.tex}, and archived
+ on \acro{CTAN}; the \acro{FAQ} also appears at
+ \URL{http://www.dante.de/faq/de-tex-faq/}
+\item[French]%
+%% An interactive (full-screen!) FAQ may be found at
+%% \URL{http://www.frenchpro6.com/screen.pdf/FAQscreen.pdf}, and a copy
+%% for printing at \URL{http://frenchle.free.fr/FAQ.pdf};
+ A FAQ used to be posted regularly to
+ \Newsgroup{fr.comp.text.tex}, and is archived on \acro{CTAN}~---
+ sadly, that effort seems to have fallen by the wayside.
+%% \item[Spanish]See \URL{http://apolo.us.es/CervanTeX/FAQ/}
+\item[Czech]See \URL{http://www.fi.muni.cz/cstug/csfaq/}
+\end{booklist}
+
+Resources available on \acro{CTAN} are:
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Dante \acro{FAQ}]\CTANref{dante-faq}
+\item[\nothtml{\rmfamily}French \acro{FAQ}]\CTANref{french-faq}
+\item[\nothtml{\rmfamily}Sources of this \acro{FAQ}]\CTANref{faq}
+\item[\nothtml{\rmfamily}Obsolete \texttt{comp.text.tex} \acro{FAQ}]%
+ \CTANref{TeX-FAQ}
+\item[\nothtml{\rmfamily}The visual \acro{FAQ}]\CTANref{visualFAQ}
+\end{ctanrefs}
+\LastEdit{2013-07-02}
+
+\Question[Q-gethelp]{Getting help online}
+
+We assume, here, that you have looked at all relevant
+\Qref*{\acro{FAQ} answers}{Q-whereFAQ} you can find, you've looked in
+any \Qref*{books}{Q-book-lists} you have, and scanned relevant
+\Qref*{tutorials}{Q-tutorials*}\dots{} and still you don't know what
+to do.
+
+There are two more steps you can take before formulating a question to
+the \tex{} world at large.
+
+First, (if you are seeking a particular package or program), start by
+looking on your own system: you might already have what you seek~---
+the better \TeX{} distributions provide a wide range of supporting
+material. The \Qref*{\acro{CTAN} Catalogue}{Q-catalogue} can also
+identify packages that might help: you can % ! line break
+\href{http://www.tex.ac.uk/search}{search it}, or you can browse it
+\begin{hyperversion}
+% !!!! line break
+``\href{http://mirrors.ctan.org/help/Catalogue/bytopic.html}{by topic}''.
+\end{hyperversion}
+\begin{flatversion}
+``by topic'' at
+\url{http://mirrors.ctan.org/help/Catalogue/bytopic.html}
+\end{flatversion}
+Each catalogue entry has a brief description of the package, and links to
+known documentation on the net. In fact, a large proportion of
+\acro{CTAN} package directories now include documentation, so it's
+often worth looking at the catalogue entry for a package you're considering
+using (where possible, each package link in the main body of these
+\acro{FAQ}s \hyperflat{has a link to}{shows the \acro{URL} of}
+the relevant catalogue entry).
+
+Failing that, look to see if anyone has solved the problem before;
+places where people ask are:
+\begin{enumerate}
+\item newsgroup \Newsgroup{comp.text.tex}, whose ``historical posts''
+ are accessible via
+ \href{http://groups.google.com/group/comp.text.tex}{Google groups},
+ and
+\item the mailing list \texttt{texhax} via its
+ \href{http://tug.org/pipermail/texhax/}{archive}, or via the `Gmane'
+ newsgroup \Newsgroup{gmane.comp.tex.texhax}, which holds a
+ \emph{very} long history of the list. A long shot would be to
+ search the archives of the mailing list's ancient posts on
+ \acro{CTAN}, which go back to the days when it was a digest: in
+ those days, a question asked in one issue would only ever be
+ answered in the next one.
+\end{enumerate}
+If the ``back question'' searches fail, you must ask the world at
+large.
+
+So, how do you like to ask questions?~--- the three available
+mechanisms are:
+\begin{enumerate}
+\item Mailing lists: there are various specialist mailing lists, but
+ the place for `general' \alltex{} queries is the \texttt{texhax}
+ mailing list. Mail to \mailto{texhax@tug.org} to ask a question,
+ but it's probably better to subscribe to the list
+ (via \URL{http://tug.org/mailman/listinfo/texhax}) % ! no ~ allowed
+ first~--- not everyone will answer to you as well as to the list.
+\item Newsgroup: to ask a question on \Newsgroup{comp.text.tex}, you
+ can use your own news client (if you have one), or use the ``+ new
+ post'' button on
+ \URL{http://groups.google.com/group/comp.text.tex}.
+\item Web forum: alternatives are: the % ! line break
+ \href{http://www.latex-community.org/}{``\LaTeX{} community'' site},
+ which offers a variety of `categories' to place your query, and the
+ % the next line will tend to break if you add _anything_ to it!
+ \href{http://tex.stackexchange.com/}{\TeX{}, \LaTeX{} and friends Q\&A site}
+ (``StackExchange'').
+
+ StackExchange has a scheme for voting on the quality of answers (and
+ hence of those who offer support). This arrangement is supposed to
+ enable you to rank any answers that are posted.
+
+ StackExchange offers
+ \href{http://meta.tex.stackexchange.com/questions/1436/welcome-to-tex-sx}{hints about ``good behaviour''},
+ which any user should at least scan before asking for help there.
+ (The hints' principal aim is to maximise the chance that you get useful
+ advice from the first answer; for example, it suggests that you supply a
+ \Qref*{minimal example of your problem}{Q-askquestion}, just as
+ these \acro{FAQ}s do. There are people on the site who can be abrasive
+ to those asking questions, who seem not to be following the
+ guidelines for good behaviour)
+\end{enumerate}
+Do \textbf{not} try mailing the \LaTeX{} project team, the maintainers
+of the \texlive{} or \miktex{} distributions or the maintainers of
+these \acro{FAQ}s for help; while all these addresses reach
+experienced \AllTeX{} users, no small group can possibly have
+expertise in every area of usage so that the ``big'' lists and forums
+are a far better bet.
+\begin{ctanrefs}
+\item[texhax \nothtml{\rmfamily}`back copies']\CTANref{texhax}
+\end{ctanrefs}
+\LastEdit{2014-01-28}
+
+\Question[Q-maillists*]{Specialist mailing lists}
+
+The previous question, ``\Qref*{getting help}{Q-gethelp}'', talked of
+the two major forums in which \AllTeX{}, \MF{} and \MP{} are
+discussed; however, these aren't the only ones available.
+
+The \acro{TUG} web site offers many mailing lists other than just
+\texttt{texhax} via its % ! line break
+\href{http://tug.org/mailman/listinfo}{mail list management page}.
+
+The French national \TeX{} user group, Gutenberg, offers a \MF{} (and,
+de facto, \MP{}) mailing list, \mailto{metafont@ens.fr}: subscribe to
+it by sending a message
+\begin{quote}
+\begin{verbatim}
+subscribe metafont
+\end{verbatim}
+\end{quote}
+to \mailto{sympa@ens.fr}
+
+(Note that there's also a \MP{}-specific mailing list available via the
+\acro{TUG} list server; in fact there's little danger of becoming confused
+by subscribing to both.)
+
+Announcements of \TeX{}-related installations on the \acro{CTAN}
+archives are sent to the mailing list \texttt{ctan-ann}. Subscribe
+to the list via its \ProgName{MailMan} web-site
+\URL{https://lists.dante.de/mailman/listinfo/ctan-ann}; list archives
+are available at the same address. The list archives may also be
+browsed via \URL{http://www.mail-archive.com/ctan-ann@dante.de/}, and
+an \acro{RSS} feed is also available:
+\URL{http://www.mail-archive.com/ctan-ann@dante.de/maillist.xml}
+
+\Question[Q-askquestion]{How to ask a question}
+
+You want help from the community at large; you've decided where you're
+going to \Qref*{ask your question}{Q-gethelp}, but how do you
+phrase it?
+
+Excellent ``general'' advice (how to ask questions of anyone) is
+contained in
+%beware line break
+\href{http://catb.org/~esr/faqs/smart-questions.html}{Eric Raymond's article on the topic}.
+Eric's an extremely self-confident person, and this comes through in
+his advice; but his guidelines are very good, even for us in the
+un-self-confident majority. It's important to remember that you don't
+have a right to advice from the world, but that if you express
+yourself well, you will usually find someone who will be pleased to
+help.
+
+So how do you express yourself in the \AllTeX{} world? There aren't
+any comprehensive rules, but a few guidelines may help in the
+application of your own common sense.
+\begin{itemize}
+\item Make sure you're asking the right people. Don't ask in a \TeX{}
+ forum about printer device drivers for the \ProgName{Foobar}
+ operating system. Yes, \TeX{} users need printers, but no, \TeX{}
+ users will typically \emph{not} be \ProgName{Foobar} systems
+ managers.
+
+ Similarly, avoid posing a question in a language that the majority
+ of the group don't use: post in Ruritanian to
+ \Newsgroup{de.comp.text.tex} and you may have a long wait before a
+ German- and Ruritanian-speaking \TeX{} expert notices your
+ question.
+\item If your question is (or may be) \TeX{}-system-specific, report
+ what system you're using, or intend to use: ``I can't install
+ \TeX{}'' is as good as useless, whereas ``I'm trying to install the
+ \ProgName{mumbleTeX} distribution on the \ProgName{Grobble}
+ operating system'' gives all the context a potential respondent
+ might need. Another common situation where this information is
+ important is when you're having trouble installing something new in
+ your system: ``I want to add the \Package{glugtheory} package to my
+ \ProgName{mumbleTeX v12.0} distribution on the \ProgName{Grobble 2024}
+ operating system''.
+\item If you need to know how to do something, make clear what your
+ environment is: ``I want to do \emph{x} in \plaintex{}'', or ``I
+ want to do \emph{y} in \LaTeX{} running the \Class{boggle}
+ class''. If you thought you knew how, but your attempts are
+ failing, tell us what you've tried: ``I've already tried installing
+ the \Package{elephant} in the \Package{minicar} directory, and it
+ didn't work, even after refreshing the filename database''.
+\item If something's going wrong within \AllTeX{}, pretend you're
+ \Qref*{submitting a \LaTeX{} bug report}{Q-latexbug},
+ and try to generate a \Qref*{minimum failing example}{Q-minxampl}.
+ If your example
+ needs your local \Class{xyzthesis} class, or some other resource
+ not generally available, be sure to include a pointer to how the
+ resource can be obtained.
+\item Figures are special, of course. Sometimes the figure itself is
+ \emph{really} needed, but most problems may be demonstrated with a
+ ``figure substitute'' in the form of a
+ \cmdinvoke*{rule}{width}{height} command, for some value of
+ \meta{width} and \meta{height}. If the (real) figure is needed,
+ don't try posting it: far better to put it on the web somewhere.
+\item Be as succinct as possible. Your helpers don't usually need to
+ know \emph{why} you're doing something, just \emph{what} you're
+ doing and where the problem is.
+\end{itemize}
+
+\Question[Q-minxampl]{How to make a ``minimum example''}
+
+\Qref[Question]{Our advice on asking questions}{Q-askquestion}
+suggests that you prepare a ``minimum example'' (also commonly known
+as a ``\emph{minimal} example'') of failing behaviour,
+as a sample to post with your question. If you have a problem in a
+two hundred page document, it may be unclear how to proceed from this
+problem to a succinct demonstration of your problem.
+
+There are two valid approaches to this task: building up, and hacking
+down.
+
+% ! line break
+\latexhtml{The ``building up'' process}{\textbf{\emph{Building up}}} starts
+with a basic document structure
+(for \LaTeX{}, this would have \csx{documentclass},
+\cmdinvoke{begin}{document}, \cmdinvoke{end}{document}) and adds
+things. First to add is a paragraph or so around the actual point
+where the problem occurs. (It may prove difficult to find the actual
+line that's provoking the problem. If the original problem is an
+error, reviewing % ! line break
+\Qref[the answer to question]{``the structure of \TeX{} errors''}{Q-errstruct}
+may help.)
+
+Note that there are things that can go wrong in one part of the
+document as a result of something in another part: the commonest is
+problems in the table of contents (from something in a section title,
+or whatever), or the list of \meta{something} (from something in a
+\csx{caption}). In such a case, include the section title or caption
+(the caption probably needs the \environment{figure} or
+\environment{table} environment around it, but it \emph{doesn't} need
+the figure or table itself).
+
+If this file you've built up shows the problem already, then you're done.
+Otherwise, try adding packages; the optimum is a file with only one
+package in it, but you may find that the guilty package won't even load
+properly unless another package has been loaded. (Another common case
+is that package \Package{A} only fails when package \Package{B} has been
+loaded.)
+
+% ! line break
+\latexhtml{The ``hacking down'' route}{\textbf{\emph{Hacking down}}} starts
+with your entire document, and
+removes bits until the file no longer fails (and then of course
+restores the last thing removed). Don't forget to hack out any
+unnecessary packages, but mostly, the difficulty is choosing what to
+hack out of the body of the document; this is the mirror of the
+problem above, in the ``building up'' route.
+
+If you've added a package (or more than one), add \csx{listfiles} to
+the preamble too: that way, \LaTeX{} will produce a list of the
+packages you've used and their version numbers. This information may
+be useful evidence for people trying to help you.
+
+The process of `building up', and to some extent that of `hacking
+down', can be helped by stuff available on \acro{CTAN}:
+\begin{itemize}
+\item the \Class{minimal} class (part of the \latex{} distribution)
+ does what its name says: it provides nothing more than what is
+ needed to get \latex{} code going, and
+\item the \Package{mwe} bundle provides a number of images in formats
+ that \alltex{} documents can use, and a small package \Package{mwe}
+ which loads other useful packages (such as \Package{blindtext} and
+ \Package{lipsum}, both capable of producing dummy text in a
+ document).
+\end{itemize}
+
+What if none of of these cut-down derivatives of your document will
+show your error? Whatever you do, don't post the whole of the document: if
+you can, it may be useful to make a copy available on the web
+somewhere: people will probably understand if it's impossible~\dots{}\
+or inadvisable, in the case of something confidential.
+
+If the whole document is indeed necessary, it could be that your
+error is an overflow of some sort; the best you can do is to post the
+code ``around'' the error, and (of course) the full text of the error.
+
+It may seem that all this work is rather excessive for preparing a
+simple post. There are two responses to that, both based on the
+relative inefficiency of asking a question on the internet.
+
+First, preparing a minimum document very often leads \emph{you} to the
+answer, without all the fuss of posting and looking for responses.
+
+Second, your prime aim is to get an answer as quickly as possible; a
+well-prepared example stands a good chance of attracting an answer
+``in a single pass'': if the person replying to your post finds she
+needs more information, you have to find that request, post again, and
+wait for your benefactor to produce a second response.
+
+All things considered, a good example file can save you a day, for
+perhaps half an hour's effort invested.
+
+Much of the above advice, differently phrased, may also be read on the
+web at \URL{http://www.minimalbeispiel.de/mini-en.html}; source of
+that article may be found at \URL{http://www.minimalbeispiel.de/}, in
+both German and English.
+\begin{ctanrefs}
+\item[blindtext.sty]\CTANref{blindtext}
+\item[lipsum.sty]\CTANref{lipsum}
+\item[minimal.cls]Distributed as part of \CTANref{latex}
+\item[mwe.sty]\CTANref{mwe}
+\end{ctanrefs}
+\LastEdit{2013-01-09}
+
+\Question[Q-tutorials*]{Tutorials, etc., for \tex{}-based systems}
+
+From a situation where every \AllTeX{} user \emph{had} to buy a book
+if she was not to find herself groping blindly along, we now have what
+almost amounts to an embarrassment of riches of online documentation.
+The following answers attempt to create lists of sources ``by topic''.
+
+First we have introductory manuals, for
+\Qref*{\plaintex{}}{Q-man-tex} and \Qref*{\LaTeX{}}{Q-man-latex}.
+
+Next comes a selection of
+\Qref*{``specialised'' \AllTeX{} tutorials}{Q-tutbitslatex},
+each of which concentrates on a single \LaTeX{} topic.
+
+A small selection of reference documents (it would be good to have
+more) are listed in an \Qref*{answer of their own}{Q-ref-doc}.
+
+Next comes the (somewhat newer) field of % ! line break
+\Qref*{\TeX{}-related WIKIs}{Q-doc-wiki}.
+
+A rather short list gives us a % ! line break
+\Qref*{Typography style tutorial}{Q-typo-style}.
+\LastEdit{2011-09-26}
+
+\Question[Q-man-tex]{Online introductions: \plaintex{}}
+
+Michael Doob's splendid `Gentle Introduction' to \plaintex{}
+(available on \acro{CTAN}) has been stable for a very long time.
+
+Another recommendable document is D. R.~Wilkins' `Getting started with \TeX{}',
+available on the web at \URL{http://www.ntg.nl/doc/wilkins/pllong.pdf}
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Gentle Introduction]\CTANref{gentle}
+\end{ctanrefs}
+
+\Question[Q-man-latex]{Online introductions: \LaTeX{}}
+
+A pleasing little document, ``Getting something out of \LaTeX{}'' is
+designed to give a feel of \LaTeX{} to someone who's never used it at
+all. It's not a tutorial, merely helps the user to decide whether to
+go on to a tutorial, and thence to `real' use of \LaTeX{}.
+
+Tobias Oetiker's `(Not so) Short Introduction to \LaTeXe{}', is
+regularly updated, as people suggest better ways of explaining things,
+etc. The introduction is available on \acro{CTAN}, together with
+translations into a rather large set of languages.
+
+Peter Flynn's ``Beginner's \LaTeX{}'' (which started life as course
+material) is a pleasing read. A complete copy may be found on
+\acro{CTAN}, but it may also be browsed over the web
+(\URL{http://mirrors.ctan.org/info/beginlatex/html/}).
+
+Harvey Greenberg's `Simplified Introduction to \LaTeX{}' was written
+for a lecture course, and is also available on \acro{CTAN} (in \PS{}
+only, unfortunately).
+
+The fourth edition of George Gr\"atzer's book ``Math into \LaTeX{}''
+contains a ``short course'' in \LaTeX{} itself, and that course has
+been made publicly available on \acro{CTAN}.
+
+Philip Hirschhorn's ``Getting up and running with \AMSLaTeX{}'' has a
+brief introduction to \LaTeX{} itself, followed by a substantial
+introduction to the use of the \acro{AMS} classes and the
+\Package{amsmath} package and other things that are potentially of
+interest to those writing documents containing mathematics.
+
+Edith Hodgen's % beware line break
+\href{http://www.mcs.vuw.ac.nz/~david/latex/notes.pdf}{\LaTeX{}, a Braindump}
+starts you from the ground up~--- giving a basic tutorial in the use
+of \ProgName{Linux} to get you going (rather a large file\dots{}).
+Its parent site, David Friggens' % ! line break
+\href{http://www.mcs.vuw.ac.nz/~david/latex/}{documentation page} is a
+useful collection of links in itself.
+
+% ! line break
+\href{http://www.andy-roberts.net/misc/latex/}{Andy Roberts' introductory material}
+is a pleasing short introduction to the use of \AllTeX{}; some of the
+slides for \emph{actual} tutorials are to be found on the page, as
+well.
+
+D. R.~Wilkins' % ! line break
+\href{http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/}{`Getting started with \latex{}'}
+also looks good (it appears shorter~--- more of a primer~--- than some
+of the other offerings).
+
+Chris Harrison's % ! line break
+\href{http://xoph.co/20111024/latex-tutorial/}{LaTeX tutorial}
+presents basic \LaTeX{} in a rather pleasing and straightforward way.
+
+Nicola Talbot's % ! line break
+\href{http://www.dickimaw-books.com/latex/novices/}{\LaTeX{} for complete novices}
+does what it claims: the author teaches \LaTeX{} at the University of
+East Anglia. The ``Novices'' tutorial is one of several % ! line break
+\href{http://www.dickimaw-books.com/latex/}{introductory tutorials},
+which include exercises (with solutions). Other tutorials include
+those for % ! line break
+\href{http://www.dickimaw-books.com/latex/thesis/}{writing theses/dissertations with \LaTeX{}}, and for % ! line break
+\href{http://www.dickimaw-books.com/latex/admin/}{using \LaTeX{} in administrative work}
+
+Engelbert Buxbaum provides the `slides' for his \latex{} course `The
+\latex{} document preparation system'; this seems to be a departmental
+course at his university.
+
+Mark van Dongen's % line break
+\href{"http://csweb.ucc.ie/~dongen/LaTeX-and-Friends.pdf}{`\latex and friends'}
+appeared as he was writing his book on the subject (soon to be published).
+
+An interesting (and practical) tutorial about what \emph{not} to do is
+\Package{l2tabu}, or ``A list of sins of \LaTeXe{} users'' by Mark
+Trettin, translated into English by J\"urgen Fenn. The
+tutorial is available from \acro{CTAN} as a \acro{PDF} file (though
+the source is also available).
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Beginner's \LaTeX{}]\CTANref{beginlatex-pdf}
+% ! line break
+\item[\nothtml{\rmfamily}Getting something out of \latex{}]\CTANref{first-latex-doc}
+% ! line break
+\item[\nothtml{\rmfamily}Getting up and running with \AMSLaTeX{}]\CTANref{amslatex-primer}
+\item[\nothtml{\rmfamily}Slides for \latex{} course]\CTANref{latex-course}
+\item[\nothtml{\rmfamily}Not so Short Introduction]\CTANref{lshort}
+ (in English, you may browse for sources and other language versions at
+ \CTANref{lshort-parent})
+\item[\nothtml{\rmfamily}Simplified \LaTeX{}]\CTANref{simpl-latex}
+\item[\nothtml{\rmfamily}Short Course in \LaTeX{}]\CTANref{mil-short}
+% ! line break
+\item[\nothtml{\rmfamily}The sins of \LaTeX{} users]Browse
+ \CTANref{l2tabu} for a copy of the document in a language that is
+ convenient for you
+\end{ctanrefs}
+\LastEdit{2012-11-29}
+
+\Question[Q-tutbitslatex]{\AllTeX{} tutorials}
+\AliasQuestion{Q-doc-dirs}
+
+The \acro{AMS} publishes a ``Short Math Guide for \LaTeX{}'', which is
+available (in several formats) via
+\URL{http://www.ams.org/tex/amslatex.html} (the ``Additional
+Documentation'' about half-way down the page.
+
+Herbert Vo\ss {} has written an extensive guide to mathematics in
+\LaTeX{}, and a development of it has been % ! line break
+\Qref*{published as a book}{Q-latex-books}.
+
+Two documents written more than ten years apart about font usage in
+\TeX{} are worth reading: % ! line break
+\href{http://www.tug.org/TUGboat/Articles/tb14-2/tb39rahtz-nfss.pdf}{Essential NFSS}
+by Sebastian Rahtz, and % ! line break
+\href{http://tug.org/pracjourn/2006-1/schmidt/schmidt.pdf}{Font selection in LaTeX},
+cast in the form of an \acro{FAQ}, by Walter Schmidt. A general
+compendium of font information (including the two above) may be found
+on the \href{http://www.tug.org/fonts/}{TUG web site}.
+
+T\acro{UG} India is developing a series of online \LaTeX{} tutorials
+which can be strongly recommended: select single chapters at a time
+from \URL{http://www.tug.org/tutorials/tugindia}\nobreakspace--- there
+are 17~chapters in the series, two of which are mostly introductory.
+
+Peter Smith's
+\begin{narrowversion}
+ ``\LaTeX{} for Logicians''
+ (\URL{http://www.logicmatters.net/latex-for-logicians/})
+\end{narrowversion}
+\begin{wideversion}
+ % ! line break
+ ``\href{http://www.logicmatters.net/latex-for-logicians/}{\LaTeX{} for Logicians}''
+\end{wideversion}
+page covers a rather smaller subject area, but is similarly comprehensive
+(mostly by links to documents on relevant topics, rather than as a
+monolithic document).
+
+Keith Reckdahl's ``Using Imported Graphics in \LaTeXe{}''
+(\Package{epslatex}) is an
+excellent introduction to graphics use. It's available on
+\acro{CTAN}, but not in the \texlive{} or miktex{} distributions, for
+lack of sources.
+
+Stefan Kottwitz manages a web site devoted to the use of the drawing
+packages % ! line break
+\Qref*{\acro{PGF} and \acro{T}ik\acro{Z}}{Q-drawing}, % ! line break
+\url{http://www.texample.net/}
+
+Included is % ! line break
+ \href{http://www.texample.net/tikz/examples/}{examples catalogue}
+includes examples (with output) from the package documentation as well
+as code written by the original site maintainer (Kjell Magne Fauske)
+and others.
+
+The compendious \acro{PGF}/\acro{T}ik\acro{Z} manual is clear, but is
+bewildering for some beginners. The % ! line break
+\href{http://cremeronline.com/LaTeX/minimaltikz.pdf}{`minimal' introduction}
+has helped at least the present author.
+
+Vincent Zoonekynd provides a set of excellent (and graphic) tutorials
+on the programming of % !line breaks, ...
+\href{http://zoonek.free.fr/LaTeX/LaTeX_samples_title/0.html}{title page styles},
+\href{http://zoonek.free.fr/LaTeX/LaTeX_samples_chapter/0.html}{chapter heading styles}
+and
+\href{http://zoonek.free.fr/LaTeX/LaTeX_samples_section/0.html}{section heading styles}.
+In each file, there is a selection of graphics representing an output
+style, and for each style, the code that produces it is shown.
+
+An invaluable step-by-step setup guide for establishing a ``work
+flow'' through your \AllTeX{} system, so that output appears at the
+correct size and position on standard-sized paper, and that the print
+quality is satisfactory, is Mike Shell's \Package{testflow}. The
+tutorial consists of a large plain text document, and there is a
+supporting \LaTeX{} file together with correct output, both in \PS{} and
+\acro{PDF}, for each of \acro{A}4 and ``letter'' paper sizes. The
+complete kit is available on \acro{CTAN} (distributed with the
+author's macros for papers submitted for \acro{IEEE} publications).
+The issues are also covered in a later % ! line break
+\Qref{\acro{FAQ} answer}{Q-dvips-pdf}.
+
+Documentation of Japanese \ensuremath{\Omega{}} use appears in
+Haruhiko Okumura's page
+% ! line break
+\href{http://oku.edu.mie-u.ac.jp/~okumura/texfaq/japanese/}{typesetting Japanese with Omega}
+(the parent page is in Japanese, so out of the scope of this
+\acro{FAQ} list).
+
+Some university departments make their local documentation available
+on the web. Most straightforwardly, there's the simple translation of
+existing documentation into \acro{HTML}, for example the \acro{INFO}
+documentation of the \AllTeX{} installation, of which a sample is the
+\LaTeX{} documentation available at
+\URL{http://www.tac.dk/cgi-bin/info2www?(latex)}
+
+More ambitiously, some university departments have enthusiastic
+documenters who
+make public record of their \AllTeX{} support. For example, Tim Love
+(of Cambridge University Engineering Department) maintains his
+department's pages at
+\URL{http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/}
+%% and Mimi
+%% Burbank (of the School of Computer Science \& Information Technology
+%% at the University of Florida) manages her department's at
+%% \URL{http://www.csit.fsu.edu/~mimi/tex/}\nobreakspace--- both sets are fine
+%% examples of good practice.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Graphics in \LaTeXe{}]\CTANref{epslatex}
+\item[testflow]\CTANref{testflow}
+\item[\nothtml{\rmfamily}Herbert Vo\ss {}'s Maths tutorial]\CTANref{voss-mathmode}
+\end{ctanrefs}
+
+\Question[Q-ref-doc]{Reference documents}
+
+For \TeX{} primitive commands a rather nice % ! line break
+\href{http://www.nmt.edu/tcc/help/pubs/texcrib.pdf}{quick reference booklet},
+by John W.~Shipman, is available; it's arranged in the same way as the
+\TeX{}book. By contrast, you can view David Bausum's % ! line break
+\href{http://www.tug.org/utilities/plain/cseq.html}{list of \TeX{} primitives}
+alphabetically or arranged by ``family''. Either way, the list has a
+link for each control sequence, that leads you to a detailed
+description, which includes page references to the \TeX{}book.
+
+There doesn't seem to be a reference that takes in \plaintex{} as
+well as the primitive commands.
+
+An interesting \LaTeX{} ``cheat sheet'' is available from \acro{CTAN}:
+it's a list of (more or less) everything you `ought to' remember, for
+basic \LaTeX{} use. % line break
+(It's laid out very compactly for printing on N.\ American `letter';
+printed on \acro{ISO} \acro{A}4, using Adobe Acrobat's ``shrink to
+fit'', it strains aged eyes\dots{})
+
+For command organised references to \LaTeX{}, Karl Berry (et
+al)'s % !line break
+\href{http://home.gna.org/latexrefman}{LaTeX reference manual} is (to
+an extent) work in progress, but is generally reliable (source is
+available on the.archive as well).
+
+Martin Scharrer's ``List of internal \latex{} macros'' is a help to
+those aiming to write a class or package.
+
+The reference provided by the Emerson Center of Emory
+University), % ! line break
+\href{http://www.emerson.emory.edu/services/latex/latex2e/latex2e_toc.html}{LaTeXe help}
+also looks good.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Cheat sheet]\CTANref{latexcheat}
+\item[\nothtml{\rmfamily}LaTeX reference manual]\CTANref{latex2e-help-texinfo}
+\item[\nothtml{\rmfamily}LaTeX internal macros]\CTANref{macros2e}
+\end{ctanrefs}
+\LastEdit{2012-02-16}
+
+\Question[Q-doc-wiki]{\acro{WIKI} books for \TeX{} and friends}
+
+The \emph{\acro{WIKI}} concept can be a boon to everyone, if used sensibly.
+The ``general'' \acro{WIKI} allows \emph{anyone} to add stuff, or to edit
+stuff that someone else has added: while there is obvious potential
+for chaos, there is evidence that a strong user community can keep a
+\acro{WIKI} under control.
+
+Following the encouraging performance of the % ! line break
+\href{http://contextgarden.net/}{\CONTeXT{} \acro{WIKI}}, valiant
+efforts have been made generating ``\acro{WIKI} books'' for \AllTeX{}
+users. Thus we have % ! line break
+\href{http://en.wikibooks.org/wiki/TeX}{(Plain) \TeX{} \acro{WIKI} book} and
+\href{http://en.wikibooks.org/wiki/LaTeX}{\LaTeX{} \acro{WIKI} book}~---
+both well established. Both are highly rated as reference sources,
+and even as introductory texts.
+\LastEdit{2012-07-25}
+
+\Question[Q-typo-style]{Typography tutorials}
+
+Peter Wilson's article \Package{memdesign} has a lengthy introductory
+section on typographic considerations, which is a fine tutorial,
+written by someone who is aware of the issues as they apply to
+\AllTeX{} users. (\Package{Memdesign} now distributed separately from
+the manual for his \Class{memoir} class, but was originally part of
+that manual)
+
+There's also (at least one) typographic style tutorial available on
+the Web, the excellent % ! line break
+``\href*{http://www.nbcs.rutgers.edu/~hedrick/typography/typography.janson-syntax.107514.pdf}{Guidelines for Typography in NBCS}''.
+In fact, its % !!
+\href*{http://www.nbcs.rutgers.edu/~hedrick/typography/index.html}{parent page}
+is also worth a read: among other things, it provides copies of the
+``guidelines'' document in a wide variety of primary fonts, for
+comparison purposes. The author is careful to explain that he has no
+ambition to supplant such excellent books as
+\Qref*{Bringhurst's}{Q-type-books}, but the document (though it does
+contain its Rutgers-local matter) is a fine introduction to the issues
+of producing readable documents.
+\begin{ctanrefs}
+\item[memdesign]\CTANref{memdesign}
+\end{ctanrefs}
+
+\Question[Q-ol-books]{Freely available \AllTeX{} books}
+
+People have long argued for \AllTeX{} books to be made available on
+the web, and until relatively recently this demand went un-answered.
+
+The first to appear was Victor Eijkhout's excellent ``\TeX{} by
+Topic'' in 2001 (it had been published by Addison-Wesley, but was long
+out of print). The book is now available on \acro{CTAN}; it's not a
+beginner's tutorial but it's a fine reference. It's also available,
+as a printed copy, via the on-line publishers
+\href{http://www.lulu.com/content/2555607/}{Lulu} (not quite free, of
+course, but not a \emph{bad} deal\dots{}).
+
+Addison-Wesley have also released the copyright of ``\TeX{} for the
+Impatient'' by Paul W.~Abrahams, Karl Berry and Kathryn A.~Hargreaves,
+another book whose unavailability many have lamented. The authors
+have re-released the book under the \acro{GNU} Free Documentation
+Licence, and it is available from \acro{CTAN}.
+
+Norm Walsh's ``Making \TeX{} Work'' (originally published by O'Reilly)
+is also available (free) on the Web, at
+\URL{http://makingtexwork.sourceforge.net/mtw/}; the sources of the
+Web page are on \acro{CTAN}. The book was an excellent resource in
+its day, but while it is now somewhat dated, it still has its uses,
+and is a welcome addition to the list of on-line resources. A project
+to update it is believed to be under way.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Making \TeX{} Work]\CTANref{mtw}
+\item[\nothtml{\rmfamily}\TeX{} by Topic]\CTANref{texbytopic}
+\item[\nothtml{\rmfamily}\TeX{} for the Impatient]\CTANref{TftI}
+\end{ctanrefs}
+\LastEdit{2011-06-29}
+
+\Question[Q-pkgdoc]{Documentation of packages}
+
+These \acro{FAQ}s regularly suggest packages that will ``solve''
+particular problems. In some cases, the answer provides a recipe for
+the job. In other cases, or when the solution needs elaborating, how
+is the poor user to find out what to do?
+
+If you're lucky, the package you need is already in your installation.
+If you're particularly lucky, you're using a distribution that gives
+access to package documentation and the documentation is available in
+a form that can easily be shown.
+
+On \texlive{}-based distributions, help should be available from the
+\ProgName{texdoc} command, as in:
+\begin{quote}
+\begin{verbatim}
+texdoc footmisc
+\end{verbatim}
+\end{quote}
+which opens a window showing documentation of the \Package{footmisc}
+package. (The window is tailored to the file type, in the way normal
+for the system.)
+
+If \ProgName{texdoc} can't find any documentation, it may launch a Web
+browser to look at the package's entry in the \acro{CTAN} catalogue.
+The catalogue has an entry for package documentation, and most authors
+respond to the \acro{CTAN} team's request for documentation of
+packages, you will more often than not find documentation that way.
+
+On \miktex{} systems, the same function is provided by the
+\ProgName{mthelp}.
+
+Note that the site \url{texdoc.net} provides access to the
+documentation you \emph{would} have if you had a \emph{full}
+installation of \texlive{}; on the site you can simply ask for a
+package (as you would ask \ProgName{texdoc}, or you can use the site's
+index of documentation to find what you want. (This is helpful for
+some of us: many people don't have a full \alltex{} installation on
+their mobile phone~\dots{} yet.)
+
+If your luck (as defined above) doesn't hold out, you've got to find
+documentation by other means. That is, you have to find the
+documentation for yourself. The rest of this answer offers a range of
+possible techniques.
+
+The commonest form of documentation of \LaTeX{} add-ons is within the
+\extension{dtx} file in which the code is distributed (see
+\Qref[answer]{documented \LaTeX{} sources}{Q-dtx}). Such files
+are supposedly processable by \LaTeX{} itself, but there are
+occasional hiccups on the way to readable documentation. Common
+problems are that the package itself is needed to process its own
+documentation (so must be unpacked before processing), and that the
+\extension{dtx} file will \emph{not} in fact process with \LaTeX{}. In the
+latter case, the \extension{ins} file will usually produce a
+\extension{drv} (or similarly-named) file, which you process with
+\LaTeX{} instead. (Sometimes the package author even thinks to
+mention this wrinkle in a package \texttt{README} file.)
+
+Another common form is the separate documentation file; particularly
+if a package is ``conceptually large'' (and therefore needs a lot of
+documentation), the documentation would prove a cumbersome extension
+to the \extension{dtx} file. Examples of such cases are the \Class{memoir}
+class, the \Class{KOMA-script} bundle
+(whose developers take the trouble to produce detailed documentation
+in both German and English), the \Package{pgf} documentation (which
+would make a substantial book in its own right)
+and the \Package{fancyhdr} package (whose
+documentation derives from a definitive tutorial in a mathematical
+journal). Even if the documentation is not separately identified in a
+\texttt{README} file, it should not be too difficult to recognise its
+existence.
+
+Documentation within the package itself is the third common form.
+Such documentation ordinarily appears in comments at the head of the
+file, though at least one eminent author regularly places it after the
+\csx{endinput} command in the package. (This is desirable, since
+\csx{endinput} is a `logical' end-of-file, and \AllTeX{} doesn't read
+beyond it: thus such documentation does not `cost' any package loading time.)
+
+The above suggestions cover most possible ways of finding
+documentation. If, despite your best efforts, you can't find
+it in any of the above places, there's the awful possibility that the
+author didn't bother to document his package (on the ``if it was hard
+to write, it should be hard to use'' philosophy). Most ordinary
+mortals will seek support from some more experienced user at this
+stage, though it \emph{is} possible to proceed in the way that the original
+author apparently expected\dots{}by reading his code.
+\LastEdit{2012-11-09}
+
+\Question[Q-writecls]{Learning to write \LaTeX{} classes and packages}
+
+There's nothing particularly magic about the commands you use when
+writing a package, so you can simply bundle up a set of \LaTeX{}
+\csx{(re)newcommand} and \csx{(re)newenvironment} commands, put them in
+a file \File{package.sty} and you have a package.
+
+However, any but the most trivial package will require rather more
+sophistication. Some details of \LaTeX{} commands for the job are to
+be found in `\LaTeXe{} for class and package writers'
+(\File{clsguide}, part of the \LaTeX{} documentation distribution).
+Beyond this, a good knowledge of \TeX{} itself is valuable: thus books
+such as the \Qref*{\TeX{}book}{Q-tex-books} or % ! line break
+\Qref*{\TeX{} by topic}{Q-ol-books} are relevant. With good \TeX{}
+knowledge it is possible to use the documented source of \LaTeX{} as
+reference material (dedicated authors will acquaint themselves with the
+source as a matter of course). A complete set of the documented
+source of \LaTeX{} may be prepared by processing the file
+\File{source2e.tex} in the \LaTeX{} distribution. Such processing is
+noticeably tedious, but Heiko Oberdiek has prepared a well-linked
+\acro{PDF} version, which is in the file \File{base.tds.zip} of his
+\ProgName{latex-tds} distribution. Individual files in the \LaTeX{}
+distribution may be processed separately with \LaTeX{}, like any
+well-constructed \Qref*{\extension{dtx} file}{Q-dtx}.
+
+Writing good classes is not easy; it's a good idea to read some
+established ones (\File{classes.dtx}, for example, is the documented
+source of the standard classes other than \Class{Letter}, and may
+itself be formatted with \LaTeX{}). Classes that are not part of the
+distribution are commonly based on ones that are, and start by loading
+the standard class with \csx{LoadClass}~--- an example of this
+technique may be seen in \Package{ltxguide.cls}
+
+An % !! line break
+\href{http://tug.org/TUGboat/Articles/tb28-1/tb88flynn.pdf}{annotated version of \Class{article}},
+as it appears in \File{classes.dtx}, was published in
+\TUGboat{} 28(1). The article, by Peter Flynn, is a good guide to
+understanding \File{classes.dtx}
+\begin{ctanrefs}
+\item[classes.dtx]\CTANref{latex-classes}
+\item[clsguide.pdf]\CTANref{clsguide}
+\item[latex-tds \nothtml{rmfamily}collection]\CTANref{latex-tds}
+\item[ltxguide.cls]\CTANref{ltxguide}
+\item[\nothtml{\rmfamily}\LaTeX{} documentation]\CTANref{latexdoc}
+\item[source2e.tex]\CTANref{latex-source}
+\end{ctanrefs}
+\LastEdit{2011-07-19}
+
+\Question[Q-latex3-prog]{\latex{}3 programming}
+As yet, there is no book ``Programming in \latex{}3'', and even if
+such a thing existed there would be lots of gaps. So there is no
+\emph{comprehensive} support.
+
+However, there are some `resources':
+\begin{itemize}
+\item The ``introduction to \latex{}3 ideas'' in the \Package{expl3}
+ documentation gives a broad-brush overview of the concepts.
+\item Joseph Wright has written a short series of % !line break
+ \href{http://www.texdev.net/index.php?s=programming+latex3}{blog posts},
+ which may help.
+\item There is also a complete command reference in the
+ \Package{interface3} document.
+\end{itemize}
+
+The documents are still subject to development; some of the broader
+design issues are discussed on the \latex{} mailing list
+\texttt{latex-l}~--- you may subscribe to that list by sending a
+message by sending a message
+\begin{quote}
+ `\texttt{subscribe latex-l <\emph{your name}>}'
+\end{quote}
+to \mailto{listserv@urz.Uni-Heidelberg.de}
+\begin{ctanrefs}
+\item[expl3.pdf]\CTANref{expl3-doc}
+\item[interface3.pdf]\CTANref{interface3-doc}
+\end{ctanrefs}
+\LastEdit*{2012-11-29}
+
+\Question[Q-mfptutorials]{\MF{} and \MP{} Tutorials}
+
+Apart from Knuth's book, there seems to be only one publicly-available
+\href{http://metafont.tutorial.free.fr/}{tutorial for \MF{}}, by
+Christophe Grandsire (a copy in \acro{PDF} form may be downloaded).
+Geoffrey Tobin's \textit{\MF{} for Beginners} % !! line break
+(see \Qref[question]{using \MF{}}{Q-useMF}) describes how the \MF{}
+system works and how to avoid some of the potential pitfalls.
+
+Peter Wilson's experience of running both \MF{} and \MP{} (the
+programs), \textit{Some Experiences in Running \MF{} and \MP{}}
+(available on \ctan{}) offers the benefit of Peter's experience (he
+has designed a
+number of `historical' fonts using \MF{}). For \MF{} the article is
+geared towards testing and installing new \MF{} fonts, while its \MP{}
+section describes how to use \MP{} illustrations in \LaTeX{} and
+\PDFLaTeX{} documents, with an emphasis on how to use appropriate
+fonts for any text or mathematics.
+
+Hans Hagen (of \CONTeXT{} fame) offers a \MP{} tutorial called
+MetaFun (which admittedly concentrates on the use of \MP{} within
+\CONTeXT{}). It may be found on his company's % ! line break
+\href{http://www.pragma-ade.com/general/manuals/metafun-p.pdf}{`manuals' page}.
+
+Another \MP{} tutorial in English is: % ! line breaks
+\url{http://www.tlhiv.org/MetaPost/tutorial/} by Urs Oswald.
+One in French (listed here because it's clearly enough written
+that even this author understands it),
+\url{http://pauillac.inria.fr/~cheno/metapost/metapost.pdf}
+by Laurent Ch\'eno.
+
+Urs Oswald's tutorial uses Troy Henderson's tool
+(\URL{http://www.tlhiv.org/mppreview}) for testing little bits of
+\MP{}; it is an invaluable aid to the learner:
+\URL{http://www.tlhiv.org/mppreview}
+
+A three-part introduction, by Mari Voipio, was published in
+\href{http://tug.org/TUGboat/intromp/tb106voipio-grid.pdf}{\TUGboat34(1) (Entry-level \MP{}: On the grid)},
+\TUGboat34(2)
+\href{http://tug.org/TUGboat/intromp/tb107voipio-moveit.pdf}{(Entry-level \MP{}: Move it!\@)}, and
+\href{http://tug.org/TUGboat/intromp/tb108voipio-color.pdf}{\TUGboat34(2) (Entry-level \MP{}: Color)}.
+
+Vincent Zoonekynd's massive set of example \MP{} files is available on
+\acro{CTAN}; the set includes a \ProgName{Perl} script to convert the
+set to html, and the set may be % beware line break
+\href{http://zoonek.free.fr/LaTeX/Metapost/metapost.html}{viewed on the web}.
+While these examples don't exactly constitute a ``tutorial'', they're
+most certainly valuable learning material. Urs Oswald presents a
+\href{http://www.ursoswald.ch/metapost/tutorial.pdf}{similar document},
+written more as a document, and presented in \acro{PDF}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Beginners' guide]\CTANref{mf-beginners}
+\item[\nothtml{\rmfamily}Peter Wilson's ``experiences'']\CTANref{metafp-pdf}
+\item[\nothtml{\rmfamily}Vincent Zoonekynd's examples]\CTANref{zoon-mp-eg}
+\end{ctanrefs}
+\LastEdit{2014-02-18}
+
+\Question[Q-BibTeXing]{\bibtex{} Documentation}
+
+\bibtex{}, a program originally designed to produce bibliographies in
+conjunction with \LaTeX{}, is explained in Section~4.3 and Appendix~B
+of Leslie Lamport's \LaTeX{} manual.
+The document ``\bibtex{}ing'', in the \bibtex{} distribution (look for
+\File{btxdoc}),
+expands on the chapter in Lamport's book. \emph{The \LaTeX{} Companion}
+also has information on \bibtex{} and writing \bibtex{} style files.
+(See \Qref[question]{\latex{} books}{Q-latex-books} for details of both
+books.)
+
+The web site ``\href{http://www.bibtex.org}{Your \bibtex{} resource}''
+offers a solid introduction, but doesn't go into very great detail.
+
+The document ``Designing \bibtex{} Styles'', also in the \bibtex{}
+distribution (look for
+\File{btxhak}), explains the postfix stack-based language used to
+write \bibtex{} styles (\File{.bst} files). The file\File{btxbst.doc},
+also in the \bibtex{} distribution,
+is the template for the four standard styles (\Package{plain},
+\Package{abbrv}, \Package{alpha}, and \Package{unsrt}); it also
+contains their documentation.
+
+A useful tutorial of the whole process of using \bibtex{} is Nicolas
+Markey's ``\emph{Tame the BeaST (The B to X of \bibtex{})}'', which
+may also be found on \acro{CTAN}. A summary and \acro{FAQ} by Michael
+Shell and David Hoadley, is also to be recommended.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\bibtex{} distribution]\CTANref{bibtex}
+\item[\nothtml{\rmfamily}Shell and Hoadley's FAQ]\CTANref{bibtex-faq}
+\item[\nothtml{\rmfamily}Tame the BeaST]\CTANref{ttb-pdf}
+\end{ctanrefs}
+\LastEdit{2013-10-15}
+
+\Question[Q-symbols]{Where can I find the symbol for\,\dots{}}
+\keywords{assignment circular integral degrees diagonal dots Fourier transform}
+\keywords{Laplace greater less complex integer natural real}
+\keywords{cent euro}
+
+There is a wide range of symbols available for use with \TeX{}, most
+of which are not shown (or even mentioned) in \AllTeX{} books.
+\emph{The Comprehensive \LaTeX{} Symbol List} (by Scott Pakin
+% beware line wrap
+\emph{et al.}\@) illustrates over 2000 symbols, and details the
+commands and the \LaTeX{} packages needed to produce them.
+
+However, while the symbol list is a wonderful resource, it is never
+easy to find a particular symbol there. A graphical % ! line break
+\href{http://detexify.kirelabs.org/classify.html}{symbol search} is
+available on the web. The site provides you a scratch area on which
+you draw the symbol you're thinking of, with your mouse; when you've
+finished drawing, the classifier tries to match your sketch with
+symbols it knows about. The matching process is pretty good, even for
+the sketches of a \emph{really} poor draughtsman (such as the present
+author), and it's often worth trying more than once. `Detexify apps'
+are available for both Android and iPhone devices, you can use them to
+draw the symbol with your fingertip~--- a less challenging procedure
+than using your workstation's mouse, by all accounts!
+
+If you are using Unicode maths in \xetex{} or \luatex{}, your own
+distribution ought to provide the Unicode maths symbol table
+\File{unimath-symbols.pdf}; this lists the things available in the
+commonly-used mathematics fonts. (If the file isn't already available
+on your system, you can download it from \acro{CTAN}, where it live
+with the \Package{unicode-math} package.
+
+Other questions in this \acro{FAQ} offer specific help on kinds of
+symbols:
+\begin{itemize}
+\item \Qref*{Script fonts for mathematics}{Q-scriptfonts}
+\item \Qref*{Fonts for the number sets}{Q-numbersets}
+\item \Qref*{Typesetting the principal value integral}{Q-prinvalint}
+\end{itemize}
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Symbol List]Browse \CTANref{symbols}; there
+ are processed versions \acro{PDF} form for both A4 and letter paper.
+\item[\nothtml{\rmfamily}Unicode maths symbols]Distributed as part of
+ \CTANref{unicode-math}
+\end{ctanrefs}
+\LastEdit{2012-09-03}
+
+\Question[Q-docpictex]{The \pictex{} manual}
+
+\pictex{} is a set of macros by Michael Wichura for drawing diagrams
+and pictures. The
+macros are freely available; however, the
+\pictex{} manual itself is not free.
+Unfortunately, \acro{TUG} is no longer able to supply copies of the
+manual (as it once did), and it is now available only through Personal
+\TeX{} Inc, the vendors of PC\TeX{} (\URL{http://www.pctex.com/}). The
+manual is \emph{not} available electronically.
+
+However, there \emph{is} a summary of \pictex{} commands available on
+\acro{CTAN}, which is a great aide-memoire for those who basically
+know the package to start with.
+\begin{ctanrefs}
+\item[\pictex{}]\CTANref{pictex}
+\item[\pictex{} summary]\CTANref{pictex-summary}
+\end{ctanrefs}
diff --git a/obsolete/help/texfaq/faq-dvi.tex b/obsolete/help/texfaq/faq-dvi.tex
new file mode 100644
index 0000000000..1b6ddf3cf4
--- /dev/null
+++ b/obsolete/help/texfaq/faq-dvi.tex
@@ -0,0 +1,148 @@
+% $Id: faq-dvi.tex,v 1.2 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{\acro{DVI} Drivers and Previewers}
+
+\Question[Q-dvips]{\acro{DVI} to \PS{} conversion programs}
+
+The best public domain \acro{DVI} to \PS{} conversion program, which
+runs under many operating systems, is Tom Rokicki's \ProgName{dvips}.
+\ProgName{dvips} is written in \acro{C} and ports easily. All current
+development is in the context of Karl Berry's \ProgName{kpathsea}
+library, and sources are available from the \texlive{} repository,
+and versions are available in all \TeX{} distributions that recognise
+the use of \PS{}.
+
+An \acro{VMS} versions is available as part of the \acro{CTAN}
+distribution of \TeX{} for \acro{VMS}.
+
+A precompiled version to work with em\TeX{} is available on \acro{CTAN}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\MSDOS{} and \latexhtml{\acro{OS/}}{OS/}2]%
+ \CTANref{dvips-pc}
+\item[\nothtml{\rmfamily}VMS distribution]\CTANref{OpenVMSTeX}
+\end{ctanrefs}
+
+\Question[Q-HPdrivers]{\acro{DVI} drivers for \acro{HP} LaserJet}
+
+The em\TeX{} distribution (see \Qref[question]{\TeX{} systems}{Q-TeXsystems})
+contains a driver for the LaserJet, \ProgName{dvihplj}.
+
+Version 2.10 of the Beebe drivers supports the LaserJet. These drivers
+will compile under Unix, \acro{VMS}, and on the Atari ST and
+\acro{DEC}-20s.
+
+For Unix systems, Karl Berry's \ProgName{dviljk} uses the same
+path-searching library as \ProgName{web2c}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Beebe drivers]\CTANref{beebe}
+\item[dviljk]\CTANref{dviljk}
+\end{ctanrefs}
+
+\Question[Q-otherprinters]{Output to ``other'' printers}
+
+In the early years of \TeX{}, there were masses of \acro{DVI} drivers
+for any (then) imaginable kind of printer, but the steam seems rather
+to have gone out of the market for production of drivers for
+printer-specific formats. There are several reasons for this, but the
+primary one is that few formats offer the flexibility available
+through \PS{}, and with
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}} (and its
+huge range of printer drivers) there is now little demand for new
+printer driver development.
+
+Thus, it is reasonable to \Qref*{generate \PS{}}{Q-dvips}, and
+use \href{http://www.ghostscript.com/}{\ProgName{ghostscript}} to send
+the resulting \PS{} output to the printer you actually have.
+
+(If you are using a Unix system of some sort, it's generally quite
+easy to insert
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}} into the
+print spooling process, which makes printing \emph{really} simple.)
+\LastEdit{2013-05-29}
+
+\Question[Q-previewers]{\acro{DVI} previewers}
+
+Em\TeX{} for \acro{PC}s running \MSDOS{} or \acro{OS/}2, \miktex{} and
+XEm\TeX{} for \acro{PC}s running Windows and Oz\TeX{} for the Macintosh, all
+come with previewers that can be used on those platforms. Em\TeX{}'s
+previewer can also be run under Windows~3.1.
+
+Commercial \acro{PC} \TeX{} packages (see % ! line break
+\Qref[question]{commercial vendors}{Q-commercial})
+have good previewers for \acro{PC}s running Windows, or for Macintoshes.
+
+For Unix systems, there is one `canonical' viewer, \ProgName{xdvi}.
+\ProgName{Xdvik} is a version of \ProgName{xdvi} using the
+\ProgName{web2c} libraries; it is now built from the same distribution
+as \ProgName{xdvi}. The \texlive{} distributions for Unix systems
+include a version of \ProgName{xdvik}.
+
+Alternatives to previewing include
+\begin{itemize}
+\item conversion to `similar' \acro{ASCII} text (see
+ \Qref[question]{converting to \acro{ASCII}}{Q-toascii}) and using a
+ conventional text viewer to look at that,
+\item generating a \PS{} version of your document and viewing it
+ with a
+ \href{http://www.ghostscript.com/}{\ProgName{ghostscript}}-based
+ previewer (see
+ \Qref[question]{previewing \PS{} files}{Q-PSpreview}), and
+\item generating \acro{PDF} output, and viewing that with
+ \ProgName{Acrobat} \ProgName{Reader} or one of the substitutes for that.
+\end{itemize}
+\begin{ctanrefs}
+\item[xdvi]\CTANref{xdvi}
+\end{ctanrefs}
+\LastEdit{2013-04-11}
+
+\Question[Q-dvi-bmp]{Generating bitmaps from \acro{DVI}}
+
+In the last analysis, any \acro{DVI} driver or previewer is generating
+bitmaps: bitmaps for placing tiny dots on paper via a laser- or
+inkjet-printer, or bitmaps for filling some portion of your screen.
+However, it's usually difficult to extract any of those bitmaps any
+way other than by screen capture, and the resolution of \emph{that} is
+commonly lamentable.
+
+Why would one want separate bitmaps? Most often, the requirement is for
+something that can be included in \acro{HTML} generated from \AllTeX{}
+source~--- not everything that you can write in \AllTeX{} can be
+translated to \acro{HTML} (at least, portable \acro{HTML} that may be
+viewed in `most' browsers), so the commonest avoiding action is to
+generate a bitmap of the missing bit. Examples are maths (a maths
+extension to the `|*|\acro{ML}' family is available but not
+universally supported by browsers), and `exotic' typescripts (ones
+that you cannot guarantee your readers will have available). Other
+common examples are generation of
+sample bitmaps, and generation for insertion into some other
+application's display~--- to insert equations into Microsoft
+PowerPoint, or to support the enhanced-\ProgName{emacs} setup called
+\Qref*{\ProgName{preview}-\ProgName{latex}}{Q-WYGexpts}.
+
+In the past, the commonest way of generating bitmaps was to generate a
+\PS{} file of the \acro{DVI} and then use
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}} to
+produce the required bitmap format (possibly by way of \acro{PNM}
+format or something similar). This is an undesirable procedure (it is
+tedious, involving requires two or three steps that run slowly) but it
+served for a long time.
+
+\AllTeX{} users may now take advantage of two bitmap `drivers'. The
+longer-established, \ProgName{dvi2bitmap}, will generate \acro{XBM} and
+\acro{XPM} formats, the long-deprecated \acro{GIF} format (which is
+now obsolescent, but has finally been relieved of the patent
+protection of the \acro{LZW} compression it uses), and also
+the modern (\acro{ISO}-standardised) \acro{PNG} format.
+
+\ProgName{Dvipng} started out as a PNG renderer; from version 1.2 it can also
+render to the GIF format. It is designed for speed, in environments that
+generate large numbers of \acro{PNG} files: the \File{README} mentions
+\ProgName{preview}-\ProgName{latex}, \ProgName{LyX}, and a few
+web-oriented environments. Note that \ProgName{dvipng} gives
+high-quality output even though its internal operations are optimised
+for speed.
+\begin{ctanrefs}
+\item[dvi2bitmap]\CTANref{dvi2bitmap}
+\item[dvipng]\CTANref{dvipng}
+\end{ctanrefs}
+\LastEdit{2013-04-19}
diff --git a/obsolete/help/texfaq/faq-fmt-conv.tex b/obsolete/help/texfaq/faq-fmt-conv.tex
new file mode 100644
index 0000000000..d555e6f1a6
--- /dev/null
+++ b/obsolete/help/texfaq/faq-fmt-conv.tex
@@ -0,0 +1,465 @@
+% $Id: faq-fmt-conv.tex,v 1.10 2014/05/29 11:24:34 rf10 Exp rf10 $
+
+\section{Format conversions}
+
+\Question[Q-toascii]{Conversion from \AllTeX{} to plain text}
+
+The aim here is to emulate the Unix \ProgName{nroff}, which formats
+text as best it can for the screen, from the same
+input as the Unix typesetting program \ProgName{troff}.
+
+Converting \acro{DVI} to plain text is the basis of many of these
+techniques; sometimes the simple conversion provides a good enough
+response. Options are:
+\begin{itemize}
+\item \ProgName{dvi2tty} (one of the earliest),
+\item \ProgName{crudetype} and
+\item \ProgName{catdvi}, which is capable of generating Latin-1
+ (ISO~8859-1) or \acro{UTF}-8 encoded output. \ProgName{Catdvi} was
+ conceived as a replacement for \ProgName{dvi2tty}, but development
+ seems to have stopped before the authors were willing to declare the
+ work complete.
+\end{itemize}
+A common problem is the hyphenation that \TeX{} inserts when
+typesetting something: since the output is inevitably viewed using
+fonts that don't match the original, the hyphenation usually looks
+silly.
+
+Ralph Droms provides a \Package{txt} bundle of things in support of
+\acro{ASCII} generation,
+but it doesn't do a good job with tables and mathematics.
+
+Another possibility is to
+use the \LaTeX{}-to-\acro{ASCII} conversion program, \ProgName{l2a},
+although this is really more of a de-\TeX{}ing program.
+
+The canonical de-\TeX{}ing program is \ProgName{detex}, which removes
+all comments and control sequences
+from its input before writing it to its output. Its original purpose
+was to prepare input for a dumb spelling checker, and it's only usable
+for preparing useful \acro{ASCII} versions of a document in highly
+restricted circumstances.
+
+\ProgName{Tex2mail} is slightly more than a de-TeX{}er~--- it's a
+\ProgName{Perl} script that converts \TeX{} files into
+plain text files, expanding various mathematical symbols
+(sums, products, integrals, sub/superscripts, fractions, square
+roots, \dots{}\@) into ``\acro{ASCII} art'' that spreads over
+multiple lines if necessary. The result is more readable to human
+beings than the flat-style \TeX{} code.
+
+Another significant possibility is to use one of the
+\Qref*{\acro{HTML}-generation solutions}{Q-LaTeX2HTML},
+and then to use a browser such as \ProgName{lynx} to dump the resulting
+\acro{HTML} as plain text.
+\begin{ctanrefs}
+\item[catdvi]\CTANref{catdvi}
+\item[crudetype]\CTANref{crudetype}
+\item[detex]\CTANref{detex}
+\item[dvi2tty]\CTANref{dvi2tty}
+\item[l2a]\CTANref{l2a}
+\item[tex2mail]\CTANref{tex2mail}
+\item[txt]\CTANref{txtdist}
+\end{ctanrefs}
+\LastEdit{2011-07-21}
+
+\Question[Q-SGML2TeX]{Conversion from \acro{SGML} or \acro{HTML} to \protect\TeX{}}
+
+\acro{SGML} is a very important system for document storage and interchange,
+but it has no formatting features; its companion \acro{ISO} standard
+\acro{DSSSL}
+(see \URL{http://www.jclark.com/dsssl/}) is designed for writing
+transformations and formatting,
+but this has not yet been widely implemented. Some \acro{SGML} authoring
+systems (e.g., SoftQuad \ProgName{Author/Editor}) have formatting
+abilities, and
+there are high-end specialist \acro{SGML} typesetting systems (e.g., Miles33's
+\ProgName{Genera}). However, the majority of \acro{SGML} users probably transform
+the source to an existing typesetting system when they want to print.
+\TeX{} is a good candidate for this. There are three approaches to writing a
+translator:
+\begin{enumerate}
+\item Write a free-standing translator in the traditional way, with
+ tools like \ProgName{yacc} and \ProgName{lex}; this is hard, in
+ practice, because of the complexity of \acro{SGML}.
+\item Use a specialist language designed for \acro{SGML} transformations; the
+ best known are probably \ProgName{Omnimark} and \ProgName{Balise}.
+ They are expensive, but powerful, incorporating \acro{SGML} query and
+ transformation abilities as well as simple translation.
+\item Build a translator on top of an existing \acro{SGML} parser. By far
+ the best-known (and free!) parser is James Clark's
+ \ProgName{nsgmls}, and this produces a much simpler output format,
+ called \acro{ESIS}, which can be parsed quite straightforwardly (one also
+ has the benefit of an \acro{SGML} parse against the \acro{DTD}). Two
+ good public domain packages use this method:
+ \begin{itemize}
+ \item
+\begin{narrowversion} % really non-hyper
+ David Megginson's \ProgName{sgmlspm}, written in \ProgName{Perl}
+ 5, which is available from
+ \URL{http://www.perl.com/CPAN/modules/by-module/SGMLS}
+\end{narrowversion}
+\begin{wideversion}
+ David Megginson's
+ \href{http://www.perl.com/CPAN/modules/by-module/SGMLS}{\ProgName{sgmlspm}},
+ written in \ProgName{Perl} 5.
+\end{wideversion}
+ \item
+\begin{narrowversion} % really non-hyper
+ Joachim Schrod and Christine Detig's \ProgName{STIL}
+ (`\acro{SGML} Transformations in Lisp'), which is available from
+ \URL{ftp://ftp.tu-darmstadt.de/pub/text/sgml/stil}
+\end{narrowversion}
+\begin{wideversion}
+ Joachim Schrod and Christine Detig's
+ \href{ftp://ftp.tu-darmstadt.de/pub/text/sgml/stil}{\ProgName{STIL}},
+ (`\acro{SGML} Transformations in Lisp').
+\end{wideversion}
+ \end{itemize}
+ Both of these allow the user to write `handlers' for every \acro{SGML}
+ element, with plenty of access to attributes, entities, and
+ information about the context within the document tree.
+
+ If these packages don't meet your needs for an average \acro{SGML}
+ typesetting job, you need the big commercial stuff.
+\end{enumerate}
+
+Since \acro{HTML} is simply an example of \acro{SGML}, we do not need a specific
+system for \acro{HTML}. However, Nathan Torkington developed
+% (\Email{Nathan.Torkington@vuw.ac.nz})
+\ProgName{html2latex} from the \acro{HTML} parser in \acro{NCSA}'s
+Xmosaic package.
+The program takes an \acro{HTML} file and generates a \LaTeX{} file from it.
+The conversion code is subject to \acro{NCSA} restrictions, but the whole
+source is available on \acro{CTAN}.
+
+Michel Goossens and Janne Saarela published a very useful summary of
+\acro{SGML}, and of public domain tools for writing and manipulating it, in
+\TUGboat{} 16(2).
+\begin{ctanrefs}
+\item[html2latex \nothtml{\rmfamily}source]\CTANref{html2latex}
+\end{ctanrefs}
+
+\Question[Q-LaTeX2HTML]{Conversion from \AllTeX{} to \acro{HTML}}
+
+\TeX{} and \LaTeX{} are well suited to producing electronically publishable
+documents. However, it is important to realize the difference
+between page layout and functional markup. \TeX{} is capable of
+extremely detailed page layout; \acro{HTML} is not, because \acro{HTML} is a
+functional markup language not a page layout language. \acro{HTML}'s exact
+rendering is not specified by the document that is published but is, to
+some degree, left to the discretion of the browser. If you require your
+readers to see an exact replication of what your document looks like
+to you, then you cannot use \acro{HTML} and you must use some other
+publishing format such as \acro{PDF}. That is true for any \acro{HTML}
+authoring tool.
+
+\TeX{}'s excellent mathematical capabilities remain a challenge in the
+business of conversion to \acro{HTML}. There are only two generally
+reliable techniques for generating mathematics on the web: creating
+bitmaps of bits of typesetting that can't be translated, and using
+symbols and table constructs. Neither technique is entirely
+satisfactory. Bitmaps lead to a profusion of tiny files, are slow to
+load, and are inaccessible to those with visual disabilities. The
+symbol fonts offer poor coverage of mathematics, and their use
+requires configuration of the browser. The future of mathematical
+browsing may be brighter~--- see
+% beware line break
+\Qref[question]{future Web technologies}{Q-mathml}.
+
+For today, possible packages are:
+\begin{description}
+\item[\ProgName{LaTeX2HTML}]a \ProgName{Perl} script package that
+ supports \LaTeX{} only, and generates mathematics (and other
+ ``difficult'' things) using bitmaps. The original version was
+ written by Nikos Drakos for Unix systems, but the package now sports
+ an illustrious list of co-authors and is also available for Windows
+ systems. Michel Goossens and Janne Saarela published a detailed
+ discussion of \ProgName{LaTeX2HTML}, and how to tailor it, in
+ \TUGboat{} 16(2).
+
+ A mailing list for users may be found via
+ \URL{http://tug.org/mailman/listinfo/latex2html}
+\item[\ProgName{TtH}]a compiled program that supports either \LaTeX{}
+ or \plaintex{}, and uses the font/table technique for representing
+ mathematics. It is written by Ian Hutchinson, using
+ \ProgName{flex}. The distribution consists of a single \acro{C}
+ source (or a compiled executable), which is easy to install and very
+ fast-running.
+\item[\ProgName{TeX4ht}]a compiled program that supports either
+ \LaTeX{} or \plaintex{}, by processing a \acro{DVI} file; it uses
+ bitmaps for mathematics, but can also use other technologies where
+ appropriate. Written by Eitan Gurari, it parses the \acro{DVI}
+ file generated when you run \AllTeX{} over your file with
+ \ProgName{tex4ht}'s macros included. As a result, it's pretty
+ robust against the macros you include in your document, and it's
+ also pretty fast.
+\item[\ProgName{plasTeX}]a Python-based \LaTeX{} document processing
+ framework. It gives DOM-like access to a \LaTeX{} document, as
+ well as the ability to generate mulitple output formats
+ (e.g. HTML, DocBook, tBook, etc.).
+\item[\ProgName{TeXpider}]a commercial program from
+ \Qref*{Micropress}{Q-commercial}, which is
+ described on \URL{http://www.micropress-inc.com/webb/wbstart.htm};
+ it uses bitmaps for equations.
+\item[\ProgName{Hevea}] a compiled program that supports \LaTeX{}
+ only, and uses the font/table technique for equations (indeed its
+ entire approach is very similar to \ProgName{TtH}). It is written
+ in Objective \acro{CAML} by Luc Maranget. \ProgName{Hevea} isn't
+ archived on \acro{CTAN}; details (including download points) are
+ available via \URL{http://pauillac.inria.fr/~maranget/hevea/}
+\end{description}
+An interesting set of samples, including conversion of the same text
+by the four free programs listed above, is available at
+\URL{http://www.mayer.dial.pipex.com/samples/example.htm}; a linked
+page gives lists of pros and cons, by way of comparison.
+
+The World Wide Web Consortium maintains a list of ``filters'' to
+\acro{HTML}, with sections on \AllTeX{} and \BibTeX{}~--- see
+\URL{http://www.w3.org/Tools/Word_proc_filters.html}
+\begin{ctanrefs}
+\item[latex2html]Browse \CTANref{latex2html}
+\item[plasTeX]Browse \CTANref{plastex}
+\item[tex4ht]\CTANref{tex4ht} (but see \url{http://tug.org/tex4ht/})
+\item[tth]\CTANref{tth}
+\end{ctanrefs}
+
+\Question[Q-fmtconv]{Other conversions to and from \AllTeX{}}
+
+\begin{description}
+\item[troff]\ProgName{Tr2latex}, assists in the translation of a
+ \ProgName{troff} document into \LaTeXo{} format. It recognises most
+ |-ms| and |-man| macros, plus most \ProgName{eqn} and some
+ \ProgName{tbl} preprocessor commands. Anything fancier needs to be
+ done by hand. Two style files are provided. There is also a man page
+ (which converts very well to \LaTeX{}\dots{}).
+ \ProgName{Tr2latex} is an enhanced version of the earlier
+ \ProgName{troff-to-latex} (which is no longer available).
+
+% The \acro{DECUS} \TeX{} distribution (see
+% \Qref[question]{sources of software}{Q-archives})
+% also contains a program which converts \ProgName{troff} to \TeX{}.
+
+%\item[Scribe] Mark James (\Email{jamesm@dialogic.com}) has a copy of
+% \ProgName{scribe2latex} he has been unable to test but which he will
+% let anyone interested have. The program was written by Van Jacobson
+% of Lawrence Berkeley Laboratory.%
+% \checked{RF}{1994/11/18}
+
+\item[WordPerfect] \ProgName{wp2latex} is actively maintained, and is
+ available either for \MSDOS{} or for Unix systems.
+\item[\acro{RTF}] \ProgName{Rtf2tex}, by Robert Lupton, is for
+ converting Microsoft's Rich Text Format to \TeX{}. There is also a
+ converter to \LaTeX{} by Erwin Wechtl, called \ProgName{rtf2latex}.
+ The latest converter, by Ujwal Sathyam and Scott Prahl, is
+ \ProgName{rtf2latex2e} which seems rather good, though development
+ of it seems to have stalled.
+
+ Translation \emph{to} \acro{RTF} may be done (for a somewhat
+ constrained set of \LaTeX{} documents) by \TeX{}2\acro{RTF}, which
+ can produce ordinary \acro{RTF}, Windows Help \acro{RTF} (as well as
+ \acro{HTML}, \Qref{conversion to HTML}{Q-LaTeX2HTML}).
+ \TeX{}2\acro{RTF} is supported on various Unix platforms and under
+ Windows~3.1
+\item[Microsoft Word] A rudimentary (free) program for converting
+ \acro{MS-W}ord to \LaTeX{} is \ProgName{wd2latex}, which runs on \MSDOS{};
+ it probably processes the output of an archaic version of
+ \acro{MS-W}ord (the program itself was archived in 1991).
+
+ For conversion in the other direction, the current preferred
+ free-software method is a two-stage process:
+ \begin{itemize}
+ \item Convert \latex{} to \ProgName{OpenOffice} format, using the
+ \ProgName{tex4ht} command \ProgName{oolatex};
+ \item open the result in \ProgName{OpenOffice} and `save as' a
+ \acro{MS-W}ord document.
+ \end{itemize}
+ (Note that \ProgName{OpenOffice} itself is \emph{not} on
+ \acro{CTAN}; see \url{http://www.openoffice.org/}, though most
+ \ProgName{linux} systems offer it as a ready-to-install bundle.)
+
+ \ProgName{tex4ht} can also generate OpenOffice \acro{ODT}
+ format, which may be used as an intermediate to producing Word
+ format files.
+
+ \ProgName{Word2}\emph{\TeX{}} and \emph{\TeX{}}\ProgName{2Word} are
+ shareware translators from % beware line break
+ \href{http://www.chikrii.com/}{Chikrii Softlab}; positive users'
+ reports have been noted (but not recently).
+
+ If cost is a constraint, the best bet is probably to use an
+ intermediate format such as \acro{RTF} or \acro{HTML}.
+ \ProgName{Word} outputs and reads both, so in principle this route
+ may be useful.
+
+ You can also use \acro{PDF} as an intermediate format: Acrobat Reader
+ for Windows (version 5.0 and later) will output rather feeble
+ \acro{RTF} that \ProgName{Word} can read.
+\item[Excel] \ProgName{Excel2Latex} converts an \ProgName{Excel} file
+ into a \LaTeX{} \environment{tabular} environment; it comes as a
+ \extension{xls} file which defines some \ProgName{Excel} macros to produce
+ output in a new format.
+\item[runoff] Peter Vanroose's \ProgName{rnototex}
+ conversion program is written in \acro{VMS} Pascal.
+ The sources are distributed with a \acro{VAX} executable.
+\item[refer/tib] There are a few programs for converting bibliographic
+ data between \BibTeX{} and \ProgName{refer}/\ProgName{tib} formats.
+ The collection includes a shell script converter from \BibTeX{} to
+ \ProgName{refer} format as well. The collection
+ is not maintained.
+\item[\acro{PC}-Write]\ProgName{pcwritex.arc} is a
+ print driver for \acro{PC}-Write that ``prints'' a \acro{PC}-Write
+ V2.71 document to a \TeX{}-compatible disk file. It was written by Peter
+ Flynn at University College, Cork, Republic of Ireland.
+\end{description}
+
+% beware line breaks
+\href{http://www.tug.org/utilities/texconv/index.html}{Wilfried Hennings' \acro{FAQ}},
+which deals specifically with conversions between \TeX{}-based formats
+and word processor formats, offers much detail as well as tables that
+allow quick comparison of features.
+
+A group at Ohio State University (\acro{USA}) is working on
+a common document format based on \acro{SGML}, with the ambition that any
+format could be
+translated to or from this one. \ProgName{FrameMaker} provides
+``import filters'' to aid translation from alien formats
+(presumably including \TeX{}) to \ProgName{FrameMaker}'s own.
+\begin{ctanrefs}
+\item[excel2latex]\CTANref{excel2latex}
+\item[pcwritex.arc]\CTANref{pcwritex}
+\item[refer and tib tools]\CTANref{refer-tools}
+\item[rnototex]\CTANref{rnototex}
+\item[rtf2latex]\CTANref{rtf2latex}
+\item[rtf2latex2e]\CTANref{rtf2latex2e}
+\item[rtf2tex]\CTANref{rtf2tex}
+\item[tex2rtf]\CTANref{tex2rtf}
+\item[tex4ht]\CTANref{tex4ht} (but see \url{http://tug.org/tex4ht/})
+\item[tr2latex]\CTANref{tr2latex}
+\item[wd2latex]\CTANref{wd2latex}
+\item[wp2latex]\CTANref{wp2latex}
+\item[\nothtml{\rmfamily}Word processor \acro{FAQ} (source)]%
+ \CTANref{texcnvfaq}
+\end{ctanrefs}
+
+\Question[Q-readML]{Using \TeX{} to read \acro{SGML} or \acro{XML} directly}
+
+\Qref*{\context{} (mark \acro{IV})}{Q-context} can process some
+\acro{*ML}, to produce typeset output directly. Details of what can
+(and can not) be done, are discussed in % ! line break
+\href{http://wiki.contextgarden.net/XML}{The \context{} \acro{WIKI}}.
+\context{} is probably the system of choice for \alltex{} users who
+also need to work in \acro{XML} (and friends). (Note that \context{}
+mark~\acro{IV} requires \Qref*{\luatex{}}{Q-luatex}, and should
+therefore be regarded as experimental, though many people \emph{do}
+use it successfully).
+
+Older systems also manage, using no more than \alltex{} macro
+programming, to process \acro{XML} and the like. David Carlisle's
+\Package{xmltex} is the prime example; it offers a solution
+for typesetting \acro{XML} files, and is still in active (though not
+very widespread) use.
+
+One use of a \TeX{} that can typeset \acro{XML} files is as a backend
+processor for \acro{XSL} formatting objects, serialized as \acro{XML}.
+Sebastian Rahtz's Passive\TeX{} uses \Package{xmltex} to
+achieve this end.
+
+However, modern usage would proceed via \acro{XSL} or \acro{XSLT}2 to
+produce a formattable version.
+\begin{ctanrefs}
+\item[Context]\CTANref{context}
+\item[xmltex]\CTANref{xmltex}
+\item[passivetex]\CTANref{passivetex}
+\end{ctanrefs}
+\LastEdit{2013-04-11}
+
+\Question[Q-recovertex]{Retrieving \AllTeX{} from \acro{DVI}, etc.}
+
+The job just can't be done automatically: \acro{DVI}, \PS{} and
+\acro{PDF} are ``final'' formats, supposedly not susceptible to
+further editing~--- information about where things came from has been
+discarded. So if you've lost your \AllTeX{} source (or never
+had the source of a document you need to work on) you've a serious job
+on your hands. In many circumstances, the best strategy is to retype
+the whole document, but this strategy is to be tempered by
+consideration of the size of the document and the potential typists'
+skills.
+
+If automatic assistance is necessary, it's unlikely that any more than
+text retrieval is going to be possible; the \AllTeX{} markup that
+creates the typographic effects of the document needs to be recreated
+by editing.
+
+If the file you have is in \acro{DVI} format, many of the techniques
+for \Qref*{converting \AllTeX{} to \acro{ASCII}}{Q-toascii} are
+applicable. Consider \ProgName{dvi2tty}, \ProgName{crudetype} and
+\ProgName{catdvi}. Remember that there are likely to be problems
+finding included material (such as included \PS{} figures, that
+don't appear in the \acro{DVI} file itself), and mathematics is
+unlikely to convert easily.
+
+To retrieve text from \PS{} files, the
+\ProgName{ps2ascii} tool (part of the
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}}
+distribution) is available. One could try applying this tool to
+\PS{} derived from an \acro{PDF} file using \ProgName{pdf2ps} (also
+from the \href{http://www.ghostscript.com/}{\ProgName{ghostscript}}
+distribution), or \ProgName{Acrobat}
+\ProgName{Reader} itself; an alternative is \ProgName{pdftotext},
+which is distributed with \ProgName{xpdf}.
+
+Another avenue available to those with a \acro{PDF} file they want to
+process is offered by Adobe \ProgName{Acrobat} (version 5 or later):
+you can tag the \acro{PDF} file into an estructured document, output
+thence to well-formed \acro{XHTML}, and import the results into
+Microsoft \ProgName{Word} (2000 or later). From there, one may
+convert to \AllTeX{} using one of the techniques discussed in
+% beware line break
+\wideonly{``}\Qref[question]{converting to and from \AllTeX{}}{Q-fmtconv}\wideonly{''}.
+
+The result will typically (at best) be poorly marked-up. Problems may
+also arise from the oddity of typical \TeX{} font encodings (notably
+those of the maths fonts), which \ProgName{Acrobat} doesn't know how
+to map to its standard Unicode representation.
+\begin{ctanrefs}
+\item[catdvi]\CTANref{catdvi}
+\item[crudetype]\CTANref{crudetype}
+\item[dvi2tty]\CTANref{dvi2tty}
+\item[xpdf]Browse \CTANref{xpdf}
+\end{ctanrefs}
+\LastEdit{2013-04-16}
+
+\Question[Q-LaTeXtoPlain]{Translating \LaTeX{} to \plaintex{}}
+
+Unfortunately, no ``general'', simple, automatic process is likely to
+succeed at this task. See % ! line break
+``\Qref*{How does \LaTeX{} relate to \plaintex{}}{Q-LaTeXandPlain}''
+for further details.
+
+Obviously, trivial documents will translate in a trivial way.
+Documents that use even relatively simple things, such as labels and
+references, are likely to cause trouble (\plaintex{} doesn't support
+labels). While graphics are in principle covered, by the \plaintex{}
+
+Translating a document designed to work with \LaTeX{} into one
+that will work with \plaintex{} is likely to amount to carefully
+including (or otherwise re-implementing) all those parts of \LaTeX{},
+beyond the provisions of \plaintex{}, which the document uses.
+
+Some of this work has (in a sense) been done, in the port of the
+\LaTeX{} graphics package to \plaintex{}. However, while
+\Package{graphics} is available, other complicated packages (notably
+\Package{hyperref}) are not. The aspiring translator may find the
+\Qref*{\Eplain{}}{Q-eplain} system a useful source of code. (In fact,
+a light-weight system such as \Eplain{} might reasonably be adopted as
+an alternative target of translation, though it undoubtedly gives the
+user more than the ``bare minimum'' that \plaintex{} is designed to
+offer.)
+\begin{ctanrefs}
+\item[\nothtml{\begingroup\rmfamily}The\nothtml{\endgroup} eplain \nothtml{\rmfamily}system]%
+ \CTANref{eplain}
+\item[\nothtml{\begingroup\rmfamily'}\plaintex{}\nothtml{'\endgroup} graphics]%
+ \CTANref{graphics-plain}
+\end{ctanrefs}
+\LastEdit{2011-05-30}
diff --git a/obsolete/help/texfaq/faq-fonts.tex b/obsolete/help/texfaq/faq-fonts.tex
new file mode 100644
index 0000000000..c60bce4f54
--- /dev/null
+++ b/obsolete/help/texfaq/faq-fonts.tex
@@ -0,0 +1,1316 @@
+% $Id: faq-fonts.tex,v 1.21 2014/01/22 17:29:03 rf10 Exp $
+
+\section{Fonts}
+
+\subsection{Adobe Type~1 (``\PS{}'') fonts}
+
+\Question[Q-usepsfont]{Using Adobe Type 1 fonts with \protect\TeX{}}
+
+In order to use any font, \TeX{} needs a
+\emph{metric} file (\acro{TFM} file). Several sets of metrics for
+common Adobe Type 1 fonts are
+available from the archives; for mechanisms for generating new ones,
+see \Qref[question]{metrics for \PS{} fonts}{Q-metrics}. You
+also need the fonts themselves; \PS{} printers come with a set of
+fonts built in, but to extend your repertoire you usually
+need to buy from one of the many commercial font vendors (see, for
+example, \Qref[question]{``choice of fonts''}{Q-psfchoice}).
+
+If you use \LaTeXe{}, access to your printer's fonts is offered by the
+\acro{PSNFSS} package; the \LaTeX{}3 project team declare that
+\acro{PSNFSS} is a ``required'' part of a \latex{} distribution, and
+bug reports may be submitted via the % ! line break
+\Qref*{\LaTeX{} bugs system}{Q-latexbug}.
+\acro{PSNFSS} gives you a set of packages for changing the default
+roman, sans-serif and typewriter fonts; \emph{e.g}., the
+\Package{mathptmx} package will set up \FontName{Times}
+\FontName{Roman} as the main text font (and introduces mechanisms to
+typeset mathematics using \FontName{Times} and various more-or-less
+matching fonts), while package \Package{avant} changes the sans-serif
+family to \FontName{AvantGarde}, and \Package{courier} changes the
+typewriter font to \FontName{Courier}. To go with these
+packages, you need the font metric files
+and font description (\File{.fd}) files for each font family you
+want to use. For convenience,
+metrics for the `common 35' \PS{} fonts found in most \PS{} printers
+are provided with \acro{PSNFSS}, packaged as the ``Laserwriter set''.
+
+For older versions of \LaTeX{} there are various schemes, of which the
+simplest to use is probably the \acro{PS}\LaTeX{} macros distributed with
+\ProgName{dvips}.
+
+For \plaintex{}, you load whatever fonts you like; if the encoding of
+the fonts is not the same as Computer Modern it will be up to you to
+redefine various macros and accents, or you can use the font
+re-encoding mechanisms available in many drivers and in
+\ProgName{ps2pk} and \ProgName{afm2tfm}.
+
+Some common problems encountered are discussed elsewhere
+(see \Qref[question]{problems with \acro{PS} fonts}{Q-psfontprob}).
+\begin{ctanrefs}
+\item[Metrics for the `Laserwriter' set of 35 fonts]\CTANref{lw35nfss-zip}
+\item[psnfss]\CTANref{psnfss}
+\end{ctanrefs}
+
+\Question[Q-PSpreview]{Previewing files using Type 1 fonts}
+
+Originally, free \TeX{} previewers were only capable of displaying
+bitmap (\acro{PK}) fonts, but free Type~1 font rendering software has
+been available for some time, and many previewers now use such
+facilities.
+
+The alternative, for previewers, is automatic generation of the
+requisite \acro{PK} files (using \ProgName{gsftopk}, or similar,
+behind the scenes).
+
+In the unlikely event that your previewer isn't capable of either, you
+have a couple options:
+\begin{itemize}
+\item Convert the \acro{DVI} file to \PS{} and use a
+ \PS{} previewer. Some systems offer this capability as
+ standard, but most people will need to use a separate previewer such
+ as \href{http://www.ghostscript.com/}{\ProgName{ghostscript}} or
+ \ProgName{ghostscript}-based viewers
+ such as (free) \ProgName{gv} or (shareware)
+ \href{http://www.ghostgum.com.au/}{\ProgName{gsview}}.
+% \item Under Windows on a \acro{PC}, or on a Macintosh, let Adobe Type Manager
+% display the fonts (textures, on the Macintosh, works like this).
+% %% , and under
+% %% Windows you can use \YandY{}'s \ProgName{dviwindo} for bitmap-free
+% %% previewing.
+% \begin{narrowversion} % really hyper
+% (See \Qref[question]{}{Q-commercial} for details of these
+% suppliers.)
+% \end{narrowversion}
+% %\typeout{after narrowversion, before wideversion}
+% \begin{wideversion}
+% (See \Qref{commercial suppliers}{Q-commercial} for details.)
+% \end{wideversion}
+% %\typeout{after wideversion}
+\item If you have the \PS{} fonts in Type~1 format, use
+ \ProgName{ps2pk} or \ProgName{gsftopk} (designed for use with the
+ \href{http://www.ghostscript.com/}{\ProgName{ghostscript}} fonts) to
+ make \acro{PK} bitmap fonts which
+ your previewer will understand (a process similar to the way some
+ browsers fo the job `automatically') This can produce adequate results,
+ also suitable for printing with non-\PS{} devices. (Note: if you
+ purchased the fonts, it is advisable to check that their licence
+ permits you to convert them, for private use, in this way.)
+\end{itemize}
+\begin{ctanrefs}
+\item[gsftopk]\CTANref{gsftopk}
+\item[gv]Browse \CTANref{gv}
+\item[ps2pk]\CTANref{ps2pk}
+\end{ctanrefs}
+
+\Question[Q-metrics]{\TeX{} font metric files for Type 1 fonts}
+
+Reputable font vendors such as Adobe supply metric files for each
+font, in \acro{AFM} (Adobe Font Metric) form; these can be converted
+to \acro{TFM} (\TeX{} Font Metric) form. Most modern distributions have
+prebuilt metrics which will be more than enough for many people; but you may
+need to do the conversion yourself if you have special needs or
+acquire a new font. One important question is the \emph{encoding} of
+(Latin character) fonts; while we all more or less agree about the
+position of about 96 characters in fonts (the basic \acro{ASCII} set), the
+rest of the (typically) 256 vary. The most obvious problems are with
+floating accents and special characters such as the `pounds sterling'
+sign. There are three ways of dealing with this: either you change the
+\TeX{} macros which reference the characters (not much fun, and
+error-prone); or you change the encoding of the font (easier than you
+might think); or you use \Qref*{virtual fonts}{Q-virtualfonts} to
+\emph{pretend} to \TeX{} that the encoding is the same as it is used to.
+\LaTeXe{} has facilities for dealing with fonts in different
+encodings; read the \Qref*{\emph{\LaTeX{} Companion}}{Q-latex-books} for
+more details. In practice, if you do much non-English (but Latin
+script) typesetting, you are strongly recommended to use the
+\Package{fontenc} package with option `\pkgoption{T1}' to select
+\Qref*{`Cork'}{Q-ECfonts} encoding.
+
+An alternative favoured by some is \YandY{}'s ``private'' \acro{LY}1 encoding,
+which is designed to sit well with ``Adobe standard'' encoded fonts.
+Basic macro support of \acro{LY}1 is available: note that the
+``relation with Adobe's encoding'' means that the \acro{LY}1 user
+needs no virtual fonts.
+
+Alan Jeffrey's \ProgName{fontinst} package is an \acro{AFM} to
+\acro{TFM} converter written in \TeX{}; it is used to generate the
+files used by \LaTeXe{}'s \acro{PSNFSS} package to support use of
+\PS{} fonts. It is a sophisticated package, not for the faint-hearted,
+but is powerful enough to cope with most needs. Much of its power
+relies on the use of \Qref*{virtual fonts}{Q-virtualfonts}.
+
+For slightly simpler problems, Rokicki's \ProgName{afm2tfm},
+distributed with \ProgName{dvips}, is fast and
+efficient; note that the metrics and styles that come with
+\ProgName{dvips} are \emph{not} currently \LaTeXe{} compatible.
+
+For the Macintosh (classic), there is a program called
+\ProgName{EdMetrics} which does the job (and more).
+\ProgName{EdMetrics} comes with the (commercial)
+\Qref*{Textures}{Q-commercial} distribution, but is itself free
+software, and is available on \acro{CTAN}.
+%% \par
+%% Windows users can buy \Qref*{\YandY{}'s}{Q-commercial}
+%% Font Manipulation Tools package which includes a powerful
+%% \ProgName{afmtotfm} program among many other goodies.
+\begin{ctanrefs}
+\item[dvips]\CTANref{dvips}
+\item[EdMetrics]\CTANref{edmetrics}
+\item[fontinst]\CTANref{fontinst}
+\item[LY1 support]\CTANref{ly1}
+\end{ctanrefs}
+\LastEdit{2011-06-01}
+
+\Question[Q-psfontprob]{Deploying Type 1 fonts}
+
+For the \LaTeX{} user trying to use the
+\Qref*{\acro{PSNFSS}}{Q-usepsfont} package, three questions may arise.
+
+First, you have to declare to the \acro{DVI} driver that you are using
+\PS{} fonts; in the case of \ProgName{dvips}, this means adding
+lines to the \File{psfonts.map} file, so that \ProgName{dvips} will know
+where the proper fonts are, and won't try to find \acro{PK}
+files. If the font isn't built into the printer, you have to acquire
+it (which may mean that you need to purchase the font files).
+
+Second, your previewer must know what to do with the fonts: see
+\Qref[question]{previewing type 1 fonts}{Q-PSpreview}.
+
+Third, the stretch and shrink between words is a function of the
+font metric; it is not specified in \acro{AFM} files, so different converters
+choose different values. The \PS{} metrics that come with \acro{PSNFSS}
+used to produce quite tight setting, but they were revised in mid 1995
+to produce a compromise between American and European practice.
+Sophisticated users may not find even the new the values to their taste, and
+want to override them. Even the casual user may find more
+hyphenation or overfull boxes than Computer Modern produces; but \acro{CM}
+is extremely generous.
+
+\Question[Q-psfchoice]{Choice of Type~1 fonts for typesetting Maths}
+
+If you are interested in text alone, you can in principle use any of
+the huge numbers of text fonts in Adobe Type~1, TrueType or OpenType
+formats. The constraint is, of course, that your previewer and
+printer driver should support such fonts (\TeX{} itself \emph{only}
+cares about metrics, not the actual character programs).
+
+If you also need mathematics, then your choice is more limited, in
+particular by the
+demands that \TeX{} makes of maths fonts (for details, see the papers
+by
+\begin{wideversion}
+% !! line break !!
+ \href{http://tug.org/TUGboat/Articles/tb14-3/tb40horn.pdf}{B.K.P. Horn in \TUGboat{} 14(3)},
+ or by % ! line break
+ \href{http://tug.org/TUGboat/Articles/tb19-2/tb59bouc.pdf}{Thierry Bouche in \TUGboat{} 19(2)}).
+\end{wideversion}
+\begin{narrowversion}
+ B.K.P. Horn in \TUGboat{} 14(3) or by Thierry Bouche in \TUGboat{}
+ 19(2), available as
+ \URL{http://tug.org/TUGboat/Articles/tb14-3/tb40horn.pdf} or
+ \URL{http://tug.org/TUGboat/Articles/tb19-2/tb59bouc.pdf}, respectively).
+\end{narrowversion}
+There are several options available, which are
+based on Knuth's original designs. Others complement other
+commercial and free text font designs; one set (MicroPress's `informal math')
+stands alone.
+
+Users should also consider the possibilities of typesetting
+\Qref*{maths using OpenType fonts}{Q-otf-maths}.
+
+``Free'' font families that will support \TeX{} mathematics include:
+\begin{booklist}
+\item[Computer Modern](75 fonts~--- optical scaling) Donald E. Knuth\\
+ The \acro{CM} fonts were originally designed in \MF{}, but are also
+ now available in scalable outline form. There are commercial as
+ well as public domain versions, and there are both Adobe Type~1 and
+ TrueType versions. A set of outline versions of the fonts was
+ developed as a commercial venture by \YandY{} and Blue Sky Research;
+ they have since assigned the copyright to the \acro{AMS}, and the
+ fonts are now freely available from \acro{CTAN}. Their quality is
+ such that they have become the \emph{de facto} standard for Type~1
+ versions of the fonts.
+
+\item[\acro{AMS} fonts](52 fonts, optical scaling) The \acro{AMS}\\
+ This set of fonts offers adjuncts to the \acro{CM} set, including
+ two sets of symbol fonts (\FontName{msam} and \FontName{msbm}) and
+ Euler text fonts.
+ These are not a self-standing family, but merit discussion here (not
+ least because several other families mimic the symbol fonts).
+ Freely-available Type~1 versions of the fonts are available on
+ \acro{CTAN}. The \Package{eulervm} package permits use
+ of the Euler maths alphabet in conjunction with text fonts that do
+ not provide maths alphabets of their own (for instance, Adobe
+ Palatino or Minion).
+
+\item[Mathpazo version 1.003](5 fonts) Diego Puga\\
+ The Pazo Math fonts are a family of type~1 fonts suitable for
+ typesetting maths in combination with the Palatino family of text
+ fonts. Four of the five fonts of the distribution are maths
+ alphabets, in upright and italic shapes, medium and bold weights;
+ the fifth font contains a small selection of ``blackboard bold''
+ characters (chosen for their mathematical significance). Support
+ under \LaTeXe{} is available in
+ \Qref*{\acro{PSNFSS}}{Q-usepsfont}; the fonts are
+ licensed under the \acro{GPL}, with legalese permitting the use of
+ the fonts in published documents.
+
+\item[Fourier/Utopia](15 fonts) Michel Bovani\\
+ \FontName{Fourier} is a family built on Adobe \FontName{Utopia}
+ (which has been released for usage free of charge by Adobe). The
+ fonts provide the basic Computer Modern set of mathematical symbols,
+ and add many of the \acro{AMS} mathematical symbols (though you are
+ expected to use some from the \acro{AMS} fonts themselves). There
+ are also several other mathematical and decorative symbols. The
+ fonts come with a \Package{fourier} package for use with \LaTeX{};
+ text support of \acro{OT}1 encoding is not provided~--- you are
+ expected to use \acro{T}1.
+
+ For a sample, see \url{http://www.tug.dk/FontCatalogue/utopia/}
+
+\item[Fourier/New Century Schoolbook]Michael Zedler\\
+ \FontName{Fouriernc} is a configuration using the Fourier fonts in
+ the context of New Century Schoolbook text fonts.
+
+ For a sample, see \url{http://www.tug.dk/FontCatalogue/newcent/}
+
+\item[KP-fonts]The Johannes Kepler project\\
+ The \FontName{kp-fonts} family provides a comprehensive set of text
+ and maths fonts. The set includes replacement fixed-width and sans
+ fonts (though some reports have suggested that these are less
+ successful, and their use may be suppressed when loading the fonts'
+ \Package{kpfonts} \LaTeX{} support package).
+
+ For an example, see \url{http://www.tug.dk/FontCatalogue/kpserif/}
+
+\item[MathDesign](3 free families, 3 commercial-based
+ families\dots{}so far) Paul Pichaureau\\
+ This set so far offers mathematics fonts to match the free fonts
+ Adobe Utopia, URW Garamond and Bitstream Charter (the text versions
+ of all of which are separately available, on \acro{CTAN}, in Type~1
+ format), and Adobe Garamond Pro, Adobe UtopiaStd and ITC Charter
+ (which are commercial fonts, all available for purchase on the web).
+ There has been a little comment on these fonts, but none
+ from actual users posted to the public forums. Users, particularly
+ those who are willing to discuss their experiences, would obviously
+ be welcome. Browse the \acro{CTAN} directory and see which you
+ want: there is a wealth of documentation and examples.
+
+ For samples of the free variants, see
+ \url{http://www.tug.dk/FontCatalogue/charter/} for URW Charter,
+ \url{http://www.tug.dk/FontCatalogue/garamond/} for URW Garamond and
+ \url{http://www.tug.dk/FontCatalogue/utopia-md/} for Adobe Utopia.
+
+\item[Belleek](3 fonts) Richard Kinch\\
+ Belleek is the upshot of Kinch's thoughts on how \MF{} might be used
+ in the future: they were published simultaneously as \MF{} source,
+ as Type~1 fonts, and as TrueType fonts. The fonts act as ``drop-in''
+ replacements for the basic MathTime set (as an example of ``what might
+ be done'').
+
+ The paper outlining Kinch's thoughts, proceeding from considerations
+ of the `intellectual' superiority of \MF{} to evaluations of why its
+ adoption is so limited and what might be done about the problem, is
+ to be found at \URL{http://truetex.com/belleek.pdf}
+
+\item[MTPro2 Lite]Pubish or Perish (Michael Spivak)\\
+ A (functional) subset of the MathTime Pro 2 font set, that is made
+ available, free, for general use. While it does not offer the full
+ power of the commercial product (see below), it is nevertheless a
+ desirable font set.
+
+\item[Mathptmx]Alan Jeffrey, Walter Schmidt and others.\\
+ This set contains maths italic, symbol, extension, and roman virtual
+ fonts, built from Adobe Times, Symbol, Zapf Chancery, and the
+ Computer Modern fonts. The resulting mixture is not entirely
+ acceptable, but can pass in many circumstances. The real advantage
+ is that the mathptm fonts are (effectively) free, and the resulting
+ \PS{} files can be freely exchanged. Support under \LaTeXe{}
+ is available in \Qref*{\acro{PSNFSS}}{Q-usepsfont}.
+
+ For a sample, see \url{http://www.tug.dk/FontCatalogue/times/}
+
+\item[Computer Modern Bright]Free scalable outline versions of these
+ fonts do exist; they are covered below together with their
+ commercial parallels.
+
+\item[URW Classico](4 fonts) LaTeX support by Bob Tennent\\
+ These are clones of Zapf's Optima available from CTAN (for
+ non-commercial use only). Mathematics support can be provided by
+ using packages \Package{eulervm} or \Package{sansmath}. As a
+ sans-serif font family, Optima is especially suitable for
+ presentations.
+\end{booklist}
+The excellent \emph{font catalogue} keeps an % ! line break
+\href{http://www.tug.dk/FontCatalogue/mathfonts.html}{up-to-date list}
+which describes the fonts by giving names and short examples, only.
+(At the time of writing~--- June 2008~--- the list has several that
+are only scheduled for inclusion here.
+
+Another useful document is Stephen Hartke's ``Free maths font
+survey'', which is available on \acro{CTAN} in both \acro{PDF} and
+\acro{HTML} formats. The survey covers most of the fonts mentioned in
+the font catalogue, but also mentions some (such as \Package{Belleek}
+that the catalogue omits.
+
+Fonts capable of setting \TeX{} mathematics, that are available
+commercially, include:
+\begin{booklist}
+\item[BA Math](13 fonts) MicroPress Inc.\\
+ BA Math is a family of serif fonts, inspired by the elegant
+ and graphically perfect font design of John Baskerville. BA
+ Math comprises the fonts necessary for mathematical typesetting
+ (maths italic, math symbols and extensions) in normal and bold
+ weights. The family also includes all \acro{OT}1 and \acro{T}1
+ encoded text fonts of various shapes, as well as fonts with most
+ useful glyphs of the \acro{TS}1 encoding. Macros for using the
+ fonts with \plaintex{}, \LaTeXo{} and current \LaTeX{} are
+ provided.
+
+ \nothtml{\bgroup\raggedwithindent}
+ For further details (including samples) see\\
+ \URL{http://www.micropress-inc.com/fonts/bamath/bamain.htm}
+ \nothtml{\par\egroup}
+\item[CH Math](15 fonts) MicroPress Inc.\\
+ CH Math is a family of slab serif fonts, designed as a maths
+ companion for Bitstream Charter. (The distribution includes
+ four free Bitstream text fonts, in addition to the 15 hand-hinted
+ MicroPress fonts.)
+ \nothtml{\bgroup\raggedwithindent}
+ For further details (including samples) see\\
+ \URL{http://www.micropress-inc.com/fonts/chmath/chmain.htm}
+ \nothtml{\par\egroup}
+
+\item[Computer Modern Bright](62 fonts~--- optical scaling) Walter
+ Schmidt\\
+ \acro{CM} Bright is a family of sans serif fonts, based on Knuth's
+ \acro{CM} fonts. It comprises the fonts necessary for mathematical
+ typesetting, including \acro{AMS} symbols, as well as text and text
+ symbol fonts of various shapes. The collection comes with its own
+ set of files for use with \LaTeX{}. The \acro{CM} Bright fonts are
+ supplied in Type~1 format by MicroPress, Inc. The
+ \Package{hfbright} bundle offers free Type~1 fonts for text using
+ the \acro{OT}1 encoding~--- the \Package{cm-super} fonts provide the
+ fonts in \acro{T}1 text encoding but don't support \acro{CM} bright
+ mathematics.
+
+ \nothtml{\bgroup\raggedwithindent}
+ For further details of Micropress' offering (including samples) see\\
+ \URL{http://www.micropress-inc.com/fonts/brmath/brmain.htm}
+ \nothtml{\par\egroup}
+
+\item[Concrete Math](25 fonts~--- optical scaling) Ulrik Vieth\\
+ The Concrete Math font set was derived from the Concrete Roman
+ typefaces designed by Knuth. The set provides a collection of math
+ italics, math symbol, and math extension fonts, and fonts of
+ \acro{AMS} symbols that fit with the Concrete set, so that Concrete
+ may be used as a complete replacement for Computer Modern. Since
+ Concrete is considerably darker than \acro{CM}, the family may
+ particularly attractive for use in low-resolution printing or in
+ applications such as posters or transparencies. Concrete Math
+ fonts, as well as Concrete Roman fonts, are supplied in Type 1
+ format by MicroPress, Inc.
+
+ \nothtml{\bgroup\raggedwithindent}
+ For further information (including samples) see\\
+ \URL{http://www.micropress-inc.com/fonts/ccmath/ccmain.htm}
+ \nothtml{\par\egroup}
+
+\item[HV Math](14 fonts) MicroPress Inc.\\
+ HV Math is a family of sans serif fonts, inspired by the
+ Helvetica (\acro{TM}) typeface. HV Math comprises the fonts
+ necessary for mathematical typesetting (maths italic, maths symbols
+ and extensions) in normal and bold weights. The family also
+ includes all \acro{OT}1 and \acro{T}1 encoded text fonts of various
+ shapes, as well as fonts with most useful glyphs of the \acro{TS}1
+ encoding. Macros for using the fonts with \plaintex{}, \LaTeXo{}
+ and current \LaTeX{} are provided. Bitmapped copies of the fonts
+ are available free, on \acro{CTAN}.
+
+ \nothtml{\bgroup\raggedwithindent}
+ For further details (and samples) see\\
+ \URL{http://www.micropress-inc.com/fonts/hvmath/hvmain.htm}
+ \nothtml{\par\egroup}
+
+\item[Informal Math](7 outline fonts) MicroPress Inc.\\
+ Informal Math is a family of fanciful fonts loosely based on the
+ Adobe's Tekton (\acro{TM}) family, fonts which imitate handwritten
+ text. Informal Math comprises the fonts necessary for
+ mathematical typesetting (maths italic, maths symbols and extensions)
+ in normal weight, as well as \acro{OT}1 encoded text fonts in
+ upright and oblique shapes. Macros for using the fonts with
+ \plaintex{}, \LaTeXo{} and current \LaTeX{} are provided.
+
+ \nothtml{\bgroup\raggedwithindent}
+ For further details (including samples) see\\
+ \URL{http://www.micropress-inc.com/fonts/ifmath/ifmain.htm}
+ \nothtml{\par\egroup}
+
+\item[Lucida Bright \emph{with} Lucida New Math](25 fonts) Chuck Bigelow and
+ Kris Holmes\\
+ Lucida is a family of related fonts including seriffed, sans serif,
+ sans serif fixed width, calligraphic, blackletter, fax, Kris Holmes'
+ connected handwriting font, \emph{etc}; they're not as `spindly' as
+ Computer Modern, with a large x-height, and include a larger set of
+ maths symbols, operators, relations and delimiters than \acro{CM}
+ (over 800 instead of 384: among others, it also includes the
+ \acro{AMS} \FontName{msam} and \FontName{msbm} symbol sets). `Lucida
+ Bright Expert'
+ (14 fonts) adds seriffed fixed width, another handwriting font,
+ smallcaps, bold maths, upright `maths italic', \emph{etc}., to the
+ set. Support under \LaTeX{} is available under the auspices of the
+ \acro{PSNFSS}, and pre-built metrics are also provided.
+
+ \nothtml{\bgroup\raggedwithindent}
+ \acro{TUG} has the right to distribute these fonts; the web site
+\begin{narrowversion}
+ \href{http://tug.org/lucida/}{``Lucida and TUG''}
+\end{narrowversion}
+\begin{wideversion}
+ ``\href{http://tug.org/lucida/}{Lucida and TUG}''
+\end{wideversion}
+ has details.
+ \nothtml{\par\egroup}
+
+\item[Adobe Lucida, LucidaSans \emph{and} LucidaMath](12 fonts)\\
+ Lucida and LucidaMath are generally considered to be a bit heavy.
+ The three maths fonts contain only the glyphs in the \acro{CM} maths
+ italic, symbol, and extension fonts. Support for using LucidaMath
+ with \TeX{} is not very good; you will need to do some work
+ reencoding fonts \emph{etc}. (In some sense this set is the
+ ancestor of the LucidaBright plus LucidaNewMath font set, which are
+ not currently available.)
+
+\item[MathTime Pro2]Publish or Perish (Michael Spivak)\\
+ This latest instance of the MathTime family covers all the weights
+ (medium, bold and heavy) and symbols of previous versions of
+ MathTime. In addition it has a much extended range of symbols, and
+ many typographic improvements that make for high-quality documents.
+ The fonts are supported under both \plaintex{} and \LaTeXe{}, and
+ are exclusively available for purchase from
+ \Qref*{Personal \TeX{} Inc}{Q-commercial}.
+ \par{}
+ \nothtml{\bgroup\raggedwithindent}
+ For further details and samples and fliers, see
+ \URL{http://www.pctex.com/mtpro2.html}
+ \nothtml{\par\egroup}
+
+\item[Minion Pro and MnSymbol]Adobe, \LaTeX{} support and packaging by
+ Achim Blumensath \emph{et al}.\\
+ \FontName{Minion Pro} derives from the widely-available commercial
+ OpenType font of the same name by Adobe; scripts are provided to
+ convert relevant parts of it to Adobe Type~1 format. The
+ \Package{MinionPro} package will set up text and maths support using
+ \FontName{Minion Pro}, but a separate (free) font set
+ \FontName{MnSymbol} greatly extends the symbol coverage.
+
+\item[PA Math] PA~Math is a family of serif fonts
+ loosely based on the Palatino (\acro{TM}) typeface. PA~Math
+ comprises the fonts necessary for mathematical typesetting (maths
+ italics, maths, calligraphic and oldstyle symbols, and extensions)
+ in normal and bold weights. The family also includes all \acro{OT}1,
+ \acro{T}1 encoded text fonts of various shapes, as well as fonts
+ with the most useful glyphs of the \acro{TS}1 encoding. Macros for
+ using the fonts with \plaintex{}, \LaTeXo{} and current \LaTeX{}
+ are provided.
+
+ \nothtml{\bgroup\raggedwithindent}
+ For further details (and samples) see\\
+ \URL{http://www.micropress-inc.com/fonts/pamath/pamain.htm}
+ \nothtml{\par\egroup}
+
+\item[TM Math](14 fonts) MicroPress Inc.\\
+ TM Math is a family of serif fonts, inspired by the Times
+ (\acro{TM}) typeface. TM Math comprises the fonts necessary for
+ mathematical typesetting (maths italic, maths symbols and extensions)
+ in normal and bold weights. The family also includes all \acro{OT}1
+ and \acro{T}1 encoded text fonts of various shapes, as well as fonts
+ with most useful glyphs of the \acro{TS}1 encoding. Macros for
+ using the fonts with \plaintex{}, \LaTeXo{} and current \LaTeX{}
+ are provided. Bitmapped copies of the fonts are available free, on
+ \acro{CTAN}.
+
+ \nothtml{\bgroup\raggedwithindent}
+ For further details (and samples) see\\
+ \URL{http://www.micropress-inc.com/fonts/tmmath/tmmain.htm}
+ \nothtml{\par\egroup}
+\end{booklist}
+Two other font sets should be mentioned, even though they don't
+currently produce satisfactory output~--- their author is no longer
+working on them, and several problems have been identified:
+\begin{booklist}
+\item[Pxfonts set version 1.0](26 fonts) by Young Ryu\\
+ The \FontName{pxfonts} set consists of
+ \begin{itemize}
+ \item virtual text fonts using \FontName{Adobe} \FontName{Palatino}
+ (or its \acro{URW} replacement, \FontName{Palladio})
+ with modified plus, equal and slash symbols;
+ \item maths alphabets using \FontName{Palatino} (or \FontName{Palladio};
+ \item maths fonts of all symbols in the computer modern maths fonts
+ (\FontName{cmsy}, \FontName{cmmi}, \FontName{cmex} and the Greek
+ letters of \FontName{cmr})
+ \item maths fonts of all symbols corresponding to the \acro{AMS}
+ fonts (\FontName{msam} and \FontName{msbm});
+ \item additional maths fonts of various symbols.
+ \end{itemize}
+ The text fonts are available in \acro{OT}1, \acro{T}1 and \acro{LY}1
+ encodings, and \acro{TS} encoded symbols are also available. The
+ sans serif and monospaced fonts supplied with the \FontName{txfonts}
+ set (see below) may be used with \FontName{pxfonts}; the
+ \FontName{txfonts} set should be installed whenever \FontName{pxfonts}
+ are. \LaTeX{}, \ProgName{dvips} and \PDFTeX{} support files are
+ included.
+
+ The fonts are not perfect; the widths assigned to the characters in
+ the \extension{tfm} file are wrong for some glyphs; this can cause
+ sequences of characters to ``look wrong'', or in some cases even to
+ overlap; the \FontName{newpx} fonts (noted above) aim to reduce
+ these problems.
+
+ The fonts are licensed under the \acro{GPL}; use in published
+ documents is permitted.
+
+\item[Newpx]by Michael Sharpe from Young Ryu's \ProgName{pxfonts}\\
+ This collection is derived from \ProgName{pxfonts}; the maths fonts
+ metrics have been adjusted so that the output is less cramped than
+ when \ProgName{pxfonts} is used; the appearance of the output is
+ much improved. Two packages are provided, \Package{newpxtext} for
+ using the associated text fonts, and \Package{newpxmath} for
+ mathematics.
+
+\item[Txfonts set version 3.1](42 fonts) by Young Ryu\\
+ The \FontName{txfonts} set consists of
+ \begin{itemize}
+ \item virtual text fonts using \FontName{Adobe} \FontName{Times} (or
+ the \acro{URW} \FontName{Nimbus Roman No9 L} font that
+ substitutes for Times, which is distributed as part of the
+ \acro{URW} ``basic 35'' collection) with
+ modified plus, equal and slash symbols;
+ \item matching sets of sans serif and monospace (`typewriter')
+ fonts (the sans serif set is based on \FontName{Adobe} \FontName{Helvetica});
+ \item maths alphabets using Adobe \FontName{Times}, or the URW
+ equivalent \FontName{NimbusRomanNo9};
+ \item maths fonts of all symbols in the computer modern maths fonts
+ (\FontName{cmsy}, \FontName{cmmi}, \FontName{cmex} and the Greek
+ letters of \FontName{cmr})
+ \item maths fonts of all symbols corresponding to the \acro{AMS}
+ fonts (\FontName{msam} and \FontName{msbm});
+ \item additional maths fonts of various symbols.
+ \end{itemize}
+ The text fonts are available in \acro{OT}1, \acro{T}1 and \acro{LY}1
+ encodings, and \acro{TS} encoded symbols are also available.
+
+ The fonts are not perfect; the widths assigned to the characters in
+ the \extension{tfm} file are wrong for some glyphs; this can cause
+ sequences of characters to ``look wrong'', or in some cases even to
+ overlap; the \FontName{newtx} fonts (noted above) aim to reduce
+ these problems.
+
+ The fonts are licensed under the \acro{GPL}; use in published
+ documents is permitted.
+\item[Txfontsb set version 1.00] by Young Ryu and Antonis Tsolomitis\\
+ The \ProgName{txfontsb} bundles \ProgName{txfonts}, extended to
+ provide a Small Caps set, Old-Style numbers and Greek text (from the
+ GNU Freefont set).
+\begin{flatversion}
+ Documentation
+ (\URL{http://mirrors.ctan.org/fonts/txfontsb/doc/txfontsb.pdf})
+\end{flatversion}
+\begin{hyperversion}
+ \href{http://mirrors.ctan.org/fonts/txfontsb/doc/txfontsb.pdf}{Documentation}
+\end{hyperversion}
+ is available for this variant, too.
+
+\item[Newtx]by Michael Sharpe from Young Ryu's \ProgName{txfonts}\\
+ This collection is derived from \ProgName{txfonts}; the maths fonts
+ metrics have been adjusted so that the output is less cramped than
+ when \ProgName{txfonts} is used; the appearance of the output is
+ much improved. Two packages are provided, \Package{newtxtext} for
+ using the associated text fonts, and \Package{newtxmath} for
+ mathematics. Options are provided to substitute
+ letters and symbols from the \FontName{Libertine} set, and from the
+ Garamond extension font \FontName{garamondx} (but note that
+ \FontName{garamondx}, which is an adaptation of \acro{URW} Garamond,
+ is not available via \texlive{}).
+\end{booklist}
+Finally, one must not forget:
+\begin{booklist}
+\item[Proprietary fonts]Various sources.\\
+ Since having a high quality font set in scalable outline form that
+ works with \TeX{} can give a publisher a real competitive advantage,
+ there are some publishers that have paid (a lot) to have such font
+ sets made for them. Unfortunately, these sets are not available on
+ the open market, despite the likelihood that they're more complete
+ than those that are.
+\end{booklist}
+We observe a very limited selection of commercial maths font sets; a
+Type~1 maths font has to be explicitly designed for use with \TeX{},
+which is an expensive business, and is of little appeal in other
+markets. Furthermore, the \TeX{} market for commercial fonts is
+minute by comparison with the huge sales of other font sets.
+
+Text fonts in Type~1 format are available from many vendors including
+Adobe, Monotype and Bitstream. However, be careful with cheap font
+``collections''; many of them dodge copyright restrictions by removing
+(or crippling) parts of the font programs such as hinting. Such
+behaviour is both unethical and bad for the consumer.
+The fonts may not render well (or at all, under \acro{ATM}), may not have the
+`standard' complement of 228 glyphs, or may not include metric files
+(which you need to make \acro{TFM} files).
+
+\ttype{} was for a long time the ``native'' format for Windows, but
+MicroSoft joined the development of the \otype{} specification, and
+`modern' windows will work happily with fonts in either format. Some \TeX{}
+implementations such as \Qref*{True\TeX{}}{Q-commercial} use TrueType
+versions of Computer Modern and Times Maths fonts to render \TeX{}
+documents in Windows without the need for additional system software like
+\acro{ATM}. (When used on a system running Windows~XP or later,
+True\TeX{} can also use Adobe Type~1 fonts.)
+
+When choosing fonts, your own system environment may not be the only one of
+interest. If you will be sending your finished documents to others for
+further use, you should consider whether a given font format will introduce
+compatibility problems. Publishers may require TrueType exclusively because
+their systems are Windows-based, or Type~1 exclusively, because their systems
+are based on the early popularity of that format in the publishing industry.
+Many service bureaus don't care as long as you present them with a finished
+print file (\PS{} or \acro{PDF}) for their output device.
+\begin{ctanrefs}
+\item[\nothtml{\normalfont}CM family collection]%
+ Distributed as part of \CTANref{amsfonts}
+\item[\nothtml{\normalfont}AMS font collection]%
+ Distributed as part of \CTANref{amsfonts}
+\item[Belleek \nothtml{\normalfont}fonts]%
+ \CTANref{belleek}
+\item[\nothtml{\normalfont} URW Classico fonts]\CTANref{classico}
+\item[CM-super \nothtml{\normalfont}collection]\CTANref{cm-super}
+\item[eulervm.sty \nothtml{\normalfont}and supporting metrics]%
+ \CTANref{eulervm}
+\item[fourier \nothtml{\normalfont}(including metrics and other support for \nothtml{\itshape}utopia]%
+ \CTANref{fourier}
+\item[fouriernc]\CTANref{fouriernc}
+\item[garamondx]\CTANref{garamondx}
+\item[hfbright \nothtml{\normalfont}collection]\CTANref{hfbright}
+\item[hvmath \nothtml{\normalfont\itshape}(free bitmapped version)]%
+ \CTANref{hvmath}
+\item[kpfonts \nothtml{\normalfont}family]\CTANref{kpfonts}
+\item[Libertine \nothtml{\normalfont}family]\CTANref{libertine}
+\item[Lucida Bright/Math metrics]\CTANref{lucida}
+\item[Lucida PSNFSS support]\CTANref{lucida-psnfss}
+\item[MathDesign \nothtml{\normalfont}collection]\CTANref{mathdesign}
+\item[\nothtml{\normalfont}Maths Font Survey]\CTANref{mathsurvey.pdf}
+ (\acro{PDF}) or \CTANref{mathsurvey.html} (\acro{HTML})
+\item[\nothtml{\normalfont}MathTime Pro 2 Lite]\CTANref{mtp2lite}
+\item[\nothtml{\normalfont}Minion Pro support]\CTANref{minionpro}
+\item[MnSymbol \nothtml{\normalfont}family]\CTANref{mnsymbol}
+\item[Newtx \nothtml{\normalfont}fonts]\CTANref{newtx}
+\item[NimbusRomanNo9 fonts]distributed in \CTANref{urw-base35}
+\item[Palladio fonts]distributed in \CTANref{urw-base35}
+\item[pxfonts]\CTANref{pxfonts}
+\item[sansmath.sty]\CTANref{sansmath}
+\item[tmmath \nothtml{\normalfont\itshape}(free bitmapped version)]%
+ \CTANref{tmmath}
+\item[txfonts]\CTANref{txfonts}
+\item[\nothtml{\normalfont}URW ``35 fonts'' collection]\CTANref{urw-base35}
+\item[utopia \nothtml{\normalfont}fonts]\CTANref{utopia}
+\end{ctanrefs}
+\LastEdit{2014-01-22}
+
+\Question[Q-otf-maths]{Unicode Maths using OpenType fonts}
+
+The \acro{ISO} standard Universal Coding Scheme (UCS), which is
+commonly known as Unicode, was adopted early by the designers of
+TrueType (\acro{TTF}) and OpenType (\acro{OTF}) fonts. The
+flexibility of the fonts offers hope, for the first time, of a uniform
+method for typesetting essentially any language.
+
+\tex{} users have been eagerly adopting the fonts, for some time,
+using \xetex{} (now a rather stable system) and \luatex{} (which is,
+at the time of writing, still being developed).
+
+While \tex{} users were investigating the use of these text fonts,
+\acro{ISO} was extending Unicode to provide a means of expressing
+mathematics. As this work proceeded, MicroSoft and (separately) a
+consortium of publishing companies were developing OpenType maths
+fonts. (Microsoft contributed on the development of the concepts,
+within the \acro{ISO} process.) MicroSoft's OpenType Maths font,
+\FontName{Cambria Math} has been available for purchase for some time.
+
+The first free OpenType Maths font to appear was % !line break
+\FontName{Asana Math}, which was eventually followed by
+the publishers' consortium's offer of an interim version
+of their font, \FontName{STIX}, which has been
+redeveloped to provide a more usable whole, \FontName{XITS}, by a group
+of \tex{} users.
+
+Other fonts are appearing, including % ! line break
+\FontName{TeX Gyre Termes Math} (based on Times-like fonts) and
+\FontName{Tex Gyre Pagella Math} (based on Palatino-like fonts),
+and \FontName{LM Math} extending the OpenType version of the
+\FontName{Latin Modern} font family.
+
+Actually using a unicode maths font is quite a complicated business,
+but the \latex{} package \Package{unicode-math} (supported
+by the \Package{fontspec} package) does the essential groundwork.
+\begin{ctanrefs}
+\item[Asana-Math \nothtml{\rmfamily}font]\CTANref{asana-math}[asana-math]
+\item[fontspec.sty]\CTANref{fontspec}
+\item[lm-math \nothtml{\rmfamily}fonts]\CTANref{lm-math}
+\item[STIX \nothtml{\rmfamily}fonts]\CTANref{stix}
+\item[unicode-math.sty]\CTANref{unicode-math}
+\item[tex-gyre-math-pagella \nothtml{\rmfamily}font]distributed as
+ part of \CTANref{tex-gyre-math}[tex-gyre-math-pagella]
+\item[tex-gyre-math-termes \nothtml{\rmfamily}font]distributed as part
+ of \CTANref{tex-gyre-math}[tex-gyre-math-termes]
+\item[XITS \nothtml{\rmfamily}fonts]\CTANref{xits}
+\end{ctanrefs}
+\LastEdit*{2014-01-22}
+% more to come...
+
+\Question[Q-charshift]{Weird characters in \ProgName{dvips} output}
+\keywords{fi ligature pound pounds sterling elephants}
+
+You've innocently generated output, using \ProgName{dvips}, and there
+are weird transpositions in it: for example, the \texttt{fi} ligature has
+appeared as a \textsterling{} symbol.
+This is an unwanted side-effect of the precautions
+outlined in \Qref*{generating \PS{} for PDF}{Q-dvips-pdf}.
+The \texttt{-G1} switch discussed in that question is appropriate for
+Knuth's text fonts, but doesn't work with text fonts that don't follow
+Knuth's patterns (such as fonts supplied by Adobe).
+
+If the problem arises, suppress the \texttt{-G1} switch: if you were using it
+explicitly, \emph{don't}; if you were using \texttt{-Ppdf}, add \texttt{-G0} to
+suppress the implicit switch in the pseudo-printer file.
+
+The problem has been corrected in \ProgName{dvips} v~5.90 (and later
+versions); it is unlikely ever to recur\dots{}
+\LastEdit{2012-10-24}
+
+\subsection{Macros for using fonts}
+
+\Question[Q-fonts-pln]{Using non-standard fonts in \plaintex{}}
+
+\plaintex{} (in accordance with its description) doesn't do anything
+fancy with fonts: it sets up the fonts that Knuth found he needed when
+writing the package, and leaves you to do the rest.
+
+To use something other than Knuth's default, you can use Knuth's
+mechanism, the \csx{font} primitive:
+\begin{quote}
+\begin{verbatim}
+\font\foo=nonstdfont
+...
+\foo
+Text set using nonstdfont ...
+\end{verbatim}
+\end{quote}
+The name you use (\texttt{nonstdfont}, above) is the name of the
+\extension{tfm} file for the font you want.
+
+If you want to use an italic version of \csx{foo}, you need to use
+\csx{font} again:
+\begin{quote}
+\begin{verbatim}
+\font\fooi=nonstdfont-italic
+...
+\fooi
+Text set using nonstdfont italic...
+\end{verbatim}
+\end{quote}
+This is all very elementary stuff, and serves for simple use of fonts.
+However, there are wrinkles, the most important of which is the matter
+of \Qref*{font encodings}{Q-whatenc}. One almost never sees new fonts
+that use Knuth's eccentric font encodings~--- but those encodings are
+built into \plaintex{}, so that some macros of \plaintex{} need to be
+changed to use the fonts. \LaTeX{} gets around all these problems by
+using a ``font selection scheme''~--- this `\acro{NFSS}' (`\acro{N}'
+for `new', as opposed to what \LaTeXo{} had) carries around with it
+separate information about the fonts you use, so the changes to
+encoding-specific commands happen automagically.
+
+If you only want to use the \Qref*{\acro{EC} fonts}{Q-ECfonts}, you
+can in principle use the \Package{ec-plain} bundle, which gives you a version
+of \plaintex{} which you can run in the same way that you run
+\plaintex{} using the original \acro{CM} fonts, by invoking
+\ProgName{tex}. (\Package{Ec-plain} also extends the \acro{EC} fonts,
+for reasons which aren't immediately clear, but which might cause
+problems if you're hoping to use Type 1 versions of the fonts.)
+
+The \Package{font_selection} package provides a sort of halfway house:
+it provides font face and size, but not family selection. This gives
+you considerable freedom, but leaves you stuck with the original
+\acro{CM} fonts. It's a compact solution, within its restrictions.
+
+Other \plaintex{} approaches to the problem (packages
+\Package{plnfss}, \Package{fontch} and \Package{ofs}) break out of the
+\plaintex{} model, towards the sort of font selection provided by
+\CONTeXT{} and \LaTeX{}~--- font selection that allows you to change
+family, as well as size and face. The remaining packages all make
+provision for using encodings other than Knuth's \acro{OT}1.
+
+\Package{Plnfss} has a rather basic set of font family details;
+however, it is capable of using font description (\extension{fd}) files
+created for \LaTeX{}. (This is useful, since most modern mechanisms
+for integrating outline fonts with \TeX{} generate \extension{fd} files
+in their process.)
+
+\Package{Fontch} has special provision for \acro{T}1 and \acro{TS}1
+encodings, which you select by arcane commands, such as:
+\begin{quote}
+\begin{verbatim}
+\let\LMTone\relax
+\input fontch.tex
+\end{verbatim}
+\end{quote}
+for \acro{T}1.
+
+\Package{Ofs} seems to be the most thoroughly thought-through of the
+alternatives, and can select more than one encoding: as well as
+\acro{T}1 it covers the encoding \acro{IL}2, which is favoured in the
+Czech Republic and Slovakia. \Package{Ofs} also covers mathematical fonts,
+allowing you the dubious pleasure of using fonts such as the % ! line break
+\Qref*{\FontName{pxfonts} and \FontName{txfonts}}{Q-psfchoice}.
+
+The \Package{pdcmac} \plaintex{} macro package aims to be a complete
+document preparation environment, like \Qref*{\Eplain{}}{Q-eplain}. One
+of its components is a font selection scheme, \Package{pdcfsel}, which
+is rather simple but adequately powerful for many uses. The package
+doesn't preload fonts: the user is required to declare the fonts the
+document is going to use, and the package provides commands to select
+fonts as they're needed. The distribution includes a configuration to
+use Adobe `standard' fonts for typesetting text. (\Eplain{} itself
+seems not to offer a font selection scheme.)
+
+The \Package{font-change} collection takes a rather different
+approach~--- it supplies what are (in effect) a series of templates
+that may be included in a document to change font usage. The
+package's documentation shows the effect rather well.
+
+Simply to change font \emph{size} in a document (i.e., not changing
+the default font itself), may be done using the rather straightforward
+\Package{varisize}, which offers font sizes ranging from 7~points to
+20~points (nominal sizes, all). Font size commands are generated when
+any of the package files is loaded, so the \File{11pt.tex} defines a
+command \csx{elevenpoint}; each of the files ensures there's a ``way
+back'', by defining a \csx{tenpoint} command.
+\begin{ctanrefs}
+\item[ec-plain]\CTANref{ec-plain}
+\item[font-change]\CTANref{font-change}
+\item[fontch]\CTANref{fontch}
+\item[font_selection]\CTANref{font_selection}
+\item[ofs]\CTANref{ofs}
+\item[pdcmac]\CTANref{pdcmac}
+\item[plnfss]\CTANref{plnfss}
+\item[varisize]\CTANref{varisize}
+\end{ctanrefs}
+
+\subsection{Particular font families}
+
+\Question[Q-concrete]{Using the ``Concrete'' fonts}
+
+The Concrete Roman fonts were designed by Don Knuth for a book called
+``Concrete Mathematics'', which he wrote with Graham and Patashnik
+(\emph{the} Patashnik, of \BibTeX{} fame). Knuth
+only designed text fonts, since the book used the Euler fonts for
+mathematics. The book was typeset using \plaintex{}, of course, with
+additional macros that may be viewed in a file \File{gkpmac.tex},
+which is available on \acro{CTAN}.
+
+The packages \Package{beton}, \Package{concmath}, and
+\Package{ccfonts} are \LaTeX{} packages that change the default text
+fonts from Computer Modern to Concrete. Packages \Package{beton} and
+\Package{ccfonts} also slightly increase the default value of
+\csx{baselineskip} to account for the rather heavier weight of the
+Concrete fonts. If you wish to use the \FontName{Euler} fonts for
+mathematics, as Knuth did, there's the \Package{euler} package which
+has been developed from Knuth's own \plaintex{}-based set: these
+macros are currently deprecated (they clash with many things, including
+\AMSLaTeX{}). The independently-developed \Package{eulervm}
+bundle is therefore preferred to the \Package{euler} package. (Note
+that installing the \Package{eulervm} bundle involves installing a
+series of virtual fonts. While most modern distributions seem to have
+the requisite files installed by default, you may find you have to
+install them. If so, see the file \File{readme} in the
+\Package{eulervm} distribution.)
+
+A few years after Knuth's original design, Ulrik Vieth
+designed the Concrete Math fonts. Packages
+\Package{concmath}, and \Package{ccfonts} also change the default math
+fonts from Computer Modern to Concrete and use the Concrete versions
+of the \acro{AMS} fonts (this last behaviour is optional in the case
+of the \Package{concmath} package).
+
+There are no bold Concrete fonts, but it is generally accepted that
+the Computer Modern Sans Serif demibold condensed fonts are an
+adequate substitute. If you are using \Package{concmath} or
+\Package{ccfonts} and you want to follow this suggestion, then use the
+package with \pkgoption{boldsans} class option (in spite of the fact
+that the \Package{concmath} documentation calls it
+\pkgoption{sansbold} class option). If you are using \Package{beton},
+add
+\begin{quote}
+ \cmdinvoke{renewcommand}{\csx{bfdefault}}{sbc}
+\end{quote}
+to the preamble of your document.
+
+Type~1 versions of the fonts are available. For \acro{OT}1 encoding,
+they are available from \Qref*{MicroPress}{Q-psfchoice}. The
+\Qref*{CM-Super fonts}{Q-textrace} contain Type~1 versions
+of the Concrete fonts in \acro{T}1 encoding.
+\begin{ctanrefs}
+\item[beton.sty]\CTANref{beton}
+\item[ccfonts.sty]\CTANref{ccfonts}
+\item[\nothtml{\rmfamily}CM-Super fonts]\CTANref{cm-super}
+\item[concmath.sty]\CTANref{concmath}
+\item[\nothtml{\rmfamily}Concmath fonts]\CTANref{concmath-f}
+\item[\nothtml{\rmfamily}Concrete fonts]\CTANref{concrete}
+\item[euler.sty]\CTANref{euler-latex}
+\item[eulervm \nothtml{\rmfamily}bundle]\CTANref{eulervm}
+\item[gkpmac.tex]\CTANref{gkpmac}
+\end{ctanrefs}
+
+\Question[Q-uselmfonts]{Using the Latin Modern fonts}
+
+The \Package{lm} fonts are an exciting addition to
+the armoury of the \AllTeX{} user: high quality outlines of fonts that
+were until recently difficult to obtain, all in a free and
+relatively compact package. However, the spartan information file
+that comes with the fonts remarks ``It is presumed that a potential
+user knows what to do with all these files''. This answer aims to
+fill in the requirements: the job is really not terribly difficult.
+
+Note that te\TeX{} distributions, from version~3.0, already have the
+\Package{lm} fonts: all you need do is use them. The fonts may also
+be installed via the package manager, in a current \miktex{} system.
+The remainder of this answer, then, is for people who don't use such
+systems.
+
+The font (and related) files appear on \acro{CTAN} as a set of
+single-entry \Qref*{\acro{TDS} trees}{Q-tds}~---
+\File{fonts}, \File{dvips}, \File{tex} and \File{doc}. The \File{doc}
+subtree really need not be copied (it's really a pair of sample
+files), but copy the other three into your existing Local
+\texttt{\$TEXMF} tree, and
+% beware line break
+\Qref*{update the filename database}{Q-inst-wlcf}.
+
+Now, incorporate the fonts in the set searched by \PDFLaTeX{},
+\ProgName{dvips}, \ProgName{dvipdfm}/\ProgName{dvipdfmx}, your
+previewers and Type~1-to-\acro{PK} conversion programs, by
+\begin{itemize}
+\item On a te\TeX{} system earlier than version~2.0, edit the file
+ \File{$TEXMF/dvips/config/updmap} %$
+ and insert an absolute path for the \File{lm.map} just after the
+ line that starts \texttt{extra\_modules="} (and before the closing
+ quotes).
+\item On a te\TeX{} version~2.0 (or later), execute the command
+\begin{quote}
+\begin{verbatim}
+updmap --enable Map lm.map
+\end{verbatim}
+\end{quote}
+\item On a \miktex{} system earlier than version~2.2, the ``Refresh
+ filename database'' operation, which you performed after installing
+ files, also updates the system's ``\PS{} resources database''.
+\item On a \miktex{} system, version~2.2 or later, update
+ \File{updmap.cfg} as described in the \miktex{} % beware line break
+ \href{http://docs.miktex.org/manual/psfonts.html#chgupdmapcfg}{online documentation}.
+ Then execute the command \texttt{initexmf -\relax-mkmaps}, and the
+ job is done.
+\end{itemize}
+
+To use the fonts in a \LaTeX{} document, you should
+\begin{quote}
+ \cmdinvoke{usepackage}{lmodern}
+\end{quote}
+this will make the fonts the default
+for all three \LaTeX{} font families (``roman'', ``sans-serif'' and
+``typewriter''). You also need
+\begin{quote}
+ \cmdinvoke{usepackage}[T1]{fontenc}
+\end{quote}
+for text, and
+\begin{quote}
+ \cmdinvoke{usepackage}{textcomp}
+\end{quote}
+if you want to use any of the \acro{TS}1-encoding symbols. There is
+no support for using fonts according to the \acro{OT}1 encoding.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Latin Modern fonts]\CTANref{lm}
+\end{ctanrefs}
+
+\Question[Q-getnff]{Getting `free' fonts not in your distribution}
+
+Some fonts are free to use, but may not be sold. This creates a
+dilemma for distributions: users may want the fonts, but since the
+distribution is also available on a \acro{DVD} for sale, the fonts may
+not be in the distribtution.
+
+The \acro{CTAN} archives hold such fonts, together with all the
+necessary support files, but even with the support files ready-made,
+installing a font is a tedious business.
+
+For \texlive{} users, this dilemma is solved by the
+\ProgName{getnonfreefonts} script. Download the script installer from
+\url{http://tug.org/fonts/getnonfreefonts/}; the web page tells you
+how to run the installer to get the script, and what fonts are
+currently available
+
+Once the script is installed, you can ask it what it has available by
+saying:
+\begin{quote}
+\begin{verbatim}
+getnonfreefonts -l
+\end{verbatim}
+\end{quote}
+and you can ask it to install a font (in your local texmf tree) by:
+\begin{quote}
+\begin{verbatim}
+getnonfreefonts luximono
+\end{verbatim}
+\end{quote}
+(for example; the printed version of the \acro{FAQ} uses luximono, so
+that the example was to hand\dots{}).
+
+(System adminstrators may use \ProgName{getnonfreefonts-sys}, which
+will install the font in the `public' \texttt{texmf} tree, so that all
+users of the system may use the new font.)
+
+The script will download the relevant font files from \acro{CTAN},
+extract them from their \extension{zip} file, install them and update
+the font maps. It even goes so far as to apologise for how long it's
+taking!
+\LastEdit*{2013-10-22}
+
+\subsection{\MF{} fonts}
+
+\Question[Q-useMF]{Getting \MF{} to do what you want}
+
+\MF{} allows you to create your own fonts, and most \TeX{} users
+will never need to use it~--- modern \AllTeX{} systems contain
+rather few \MF{} fonts of any significance, and when \MF{} output is
+needed the font generation is done, automatically, ``on the fly''.
+
+If you find you have some special requirement that the system doesn't
+satisfy, you need to know about \MF{} in rather more detail. \MF{},
+unlike \TeX{}, requires customisation for each output device: such
+customisation is conventionally held in a ``mode'' associated with the
+device. Modes are commonly defined using the \texttt{mode\_def}
+convention described on page~94 of \emph{The \MF{}book} % ! line break
+(see \Qref[question]{\TeX{}-related books}{Q-other-books}). Your
+distribution should provide
+a file, conventionally called \File{local.mf}, containing all the
+\texttt{mode\_def}s you will be using. In the unlikely event that
+\File{local.mf} doesn't already exist, Karl Berry's collection of
+modes (\File{modes.mf}) is a good starting point
+(it can be used as a `\File{local.mf}' without modification in a
+modern implementation of \MF{}).
+Settings for new output devices are added to \File{modes.mf} as they
+become available.
+
+Now create
+a \texttt{plain} base file using \ProgName{mf} (in ``initialisation''
+mode), \texttt{plain.mf}, and \texttt{local.mf}:
+\begin{quote}
+\begin{verbatim}
+% mf -ini
+This is METAFONT...
+**plain # you type plain
+(output)
+*input local # you type this
+(output)
+*dump # you type this
+Beginning to dump on file plain...
+(output)
+\end{verbatim}
+\end{quote}
+This will create a base file named \File{plain.base} (or something
+similar; for example, it will be \File{PLAIN.BAS} on \MSDOS{}
+systems). Move the file to the directory containing the base files on
+your system, and run \ProgName{texhash} as necessary.
+
+Now you need to make sure \MF{} loads this new base when it starts up. If
+\MF{} loads the \texttt{plain} base by default on your system, then you're
+ready to go. Under Unix (using the default \texlive{} (and earlier)
+distributions this does indeed happen, but we could for instance
+define a command \ProgName{plainmf}%
+\begin{footnoteenv}
+ On the grounds that a command \ProgName{plain} could be misconstrued
+ as a reference to \plaintex{}
+\end{footnoteenv}
+which executes `\texttt{mf -base=plain}' (or, in more traditional
+style `\texttt{mf \&plain}') which loads the \texttt{plain} base
+file.
+
+The usual way to create a font with \MF{} (with an appropriate base
+file loaded) is to start \MF{}'s input with the
+\begin{narrowversion}
+ lines
+ \begin{quote}
+ \csx{mode}\texttt{=<mode name>;}\\
+ \texttt{mag=<magnification>;}\\
+ \texttt{input <font file name>}
+ \end{quote}
+\end{narrowversion}
+\begin{wideversion}
+line
+\begin{quote}
+\begin{verbatim}
+\mode=<mode name>; mag=<magnification>; input <font file name>
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+in response to the `\texttt{**}' prompt or on the \MF{} command line. (If
+\texttt{<mode name>} is unknown or omitted, the mode defaults to
+`proof' mode and \MF{} will produce an output file called % ! line break
+\File{<font file name>.2602gf})
+The \texttt{<magnification>} is a floating point number or a
+`magstep' (magsteps define sizes by stating how many times you need to
+multiply a base size by \texttt{1.2}, so for a base size of
+\texttt{10}, \texttt{magstep 1} is \texttt{12}, \texttt{magstep 2} is
+\texttt{14.4}
+If \texttt{mag=<magnification>} is omitted, then the default
+is \texttt{1}~(\texttt{magstep 0}). For example, to generate
+\FontName{cmr10} at \texttt{12pt} for an Epson,
+printer you might type
+\begin{quote}
+\begin{verbatim}
+mf \mode=epson; mag=magstep 1; input cmr10
+\end{verbatim}
+\end{quote}
+Note that under Unix the \texttt{\textbackslash } and \texttt{;}
+characters must usually be quoted or escaped, so this would typically
+look something like
+\begin{quote}
+\begin{verbatim}
+ mf '\mode=epson; mag=magstep 1; input cmr10'
+\end{verbatim}
+\end{quote}
+If you need a special mode that isn't in the base, you can put its
+commands in a file (\emph{e.g.}, \File{ln03.mf}) and invoke it on the
+fly with the \csx{smode} command. For example, to create
+\File{cmr10.300gf} for an \acro{LN}03 printer, using the file
+\begin{quote}
+\begin{verbatim}
+% This is ln03.mf as of 1990/02/27
+% mode_def courtesy of John Sauter
+proofing:=0;
+fontmaking:=1;
+tracingtitles:=0;
+pixels_per_inch:=300;
+blacker:=0.65;
+fillin:=-0.1;
+o_correction:=.5;
+\end{verbatim}
+\end{quote}
+(note the absence of the \texttt{mode\_def} and \texttt{enddef}
+commands), you would type
+\begin{quote}
+\begin{verbatim}
+mf \smode="ln03"; input cmr10
+\end{verbatim}
+\end{quote}
+This technique isn't one you should regularly use, but it may
+prove useful if you acquire a new printer and want to experiment with
+parameters, or for some other reason are regularly editing the
+parameters you're using. Once you've settled on an appropriate set of
+parameters, you should use them to rebuild the base file that you use.
+
+Other sources of help are discussed in our list of % ! line break
+\Qref*{\MF{} and \MP{} Tutorials}{Q-mfptutorials}.
+\begin{ctanrefs}
+\item[modes.mf]\CTANref{modes-file}
+\end{ctanrefs}
+\LastEdit{2011-09-04}
+
+\Question[Q-keepfonts]{Which font files should be kept}
+
+\MF{} produces from its run three files, a metrics (\acro{TFM}) file, a
+generic font (\acro{GF}) file, and a log file; all of these files have the
+same base name as does the input (\emph{e.g.}, if the input file was
+\File{cmr10.mf}, the outputs will be \File{cmr10.tfm},
+\File{cmr10.nnngf} (the file name may be mangled if you are using an
+operating system which doesn't permit long file names)
+and \File{cmr10.log}).
+
+For \TeX{} to use the font, you need a \acro{TFM} file, so you need
+to keep that. However, you are likely to generate the same font
+at more than one magnification, and each time you do so you'll
+(incidentally) generate another \acro{TFM} file; these files are
+all the same, so you only need to keep one of them.
+
+To preview or to produce printed output, the \acro{DVI} processor will need a
+font raster file; this is what the \acro{GF} file provides. However, while
+there used (once upon a time) to be \acro{DVI} processors that could use
+\acro{GF} files, modern processors use
+packed raster (\acro{PK}) files (incidentally, \pdftex{} also uses
+\acro{PK} files if nothing ``better'' is available, but
+see \Qref[]{fuzzy fonts in \acro{PDF}}{Q-fuzzy-type3}).
+Therefore, you need to generate a \acro{PK} file from the \acro{GF} file; the
+program \ProgName{gftopk} does this for you, and once you've done that you
+may throw the \acro{GF} file away.
+
+The log file should never be needed again, unless there was some sort
+of problem in the \MF{} run, and need not therefore be kept.
+\LastEdit{2011-09-04}
+
+\Question[Q-getbitmap]{Acquiring bitmap fonts}
+
+When \acro{CTAN} was young, most people would start using \TeX{}
+with a 300 dots-per-inch (dpi) laser printer, and sets of Computer
+Modern bitmap fonts for this resolution are available on \acro{CTAN}.
+(There are separate sets for write-black and write-white printers, as
+well as sets at 120~dpi and 240~dpi.)
+
+There used to regular requests that \acro{CTAN} should hold
+a wider range of resolutions, but they were resisted for two reasons:
+\begin{itemize}
+\item The need to decide which printers to generate fonts for. The
+ broad-brush approach taken for 300~dpi printers was (more or less)
+ justified back then, given the dominance of certain printer
+ `engines', but nowadays one could not make any such assumption.
+\item Given the above, it has been near-impossible to justify the
+ space that would be required by a huge array of bitmap fonts.
+\end{itemize}
+Fortunately, \AllTeX{} distribution technology has put a stop to these
+arguments: most (if not all) current distributions generate bitmap
+fonts as needed, and cache them for later re-use. The impatient
+user, who is determined that all bitmap fonts should be created once
+and for all, may be supported by scripts such as \ProgName{allcm}
+(distributed with \texlive{}, at least; otherwise such a
+person should consult ``\Qref*{the use of \MF{}}{Q-useMF})''.
+
+If your output is to a \PS{}-capable device, or if your output is
+destined to be converted to \acro{PDF}, you should switch to
+using Type~1 versions of the \acro{CM} fonts. Two free
+sets are available; the older (\Package{bakoma}) is
+somewhat less well produced than the \Package{bluesky} fonts, which were
+originally professionally produced and sold, but were then released
+for general public use by their originators \YandY{} and Bluesky Research,
+in association with the \acro{AMS} and other scientific publishers
+(they are nowadays available under the SIL's Open Fonts Licence). The
+two sets contain slightly different ranges of fonts, but you are
+advised to use the \Package{bluesky} set except when \Package{bakoma}
+is for some reason absolutely unavoidable. In recent years, several
+other `\MF{}' fonts have been converted to Type~1 format; it's
+uncommon ever to need to generate bitmap fonts for any purpose other
+than previewing~--- see % ! line wrap
+\Qref*{``previewing documents with Type~1 fonts''}{Q-PSpreview}~---
+if even then.
+
+More modern fonts may be used in place of the Computer Modern set. The
+\Qref*{\acro{EC} fonts}{Q-ECfonts} and the % ! line break
+\Qref*{Latin Modern fonts}{Q-uselmfonts} are both close relatives with
+wider ranges of glyphs to offer.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}BaKoMa fonts]\CTANref{bakoma}
+\item[\nothtml{\rmfamily}Bluesky fonts]Distributed as part of
+ \CTANref{amsfonts}
+\item[\nothtml{\rmfamily}CM fonts (write-black printers)]\CTANref{pk300}
+\item[\nothtml{\rmfamily}CM fonts (write-white printers)]\CTANref{pk300w}
+\item[\nothtml{\rmfamily}EC fonts (Type 1 format)]\CTANref{cm-super}
+\item[\nothtml{\rmfamily}Latin Modern fonts]\CTANref{lm}
+\end{ctanrefs}
+\LastEdit{2011-09-4}
diff --git a/obsolete/help/texfaq/faq-getit.tex b/obsolete/help/texfaq/faq-getit.tex
new file mode 100644
index 0000000000..8cdd9ccc5b
--- /dev/null
+++ b/obsolete/help/texfaq/faq-getit.tex
@@ -0,0 +1,361 @@
+% $Id: faq-getit.tex,v 1.11 2014/01/22 17:29:03 rf10 Exp $
+
+\section{Acquiring the Software}
+
+\Question[Q-archives]{Repositories of \TeX{} material}
+
+To aid the archiving and retrieval of of \TeX{}-related files, a
+\acro{TUG} working group developed the Comprehensive \TeX{} Archive
+Network (\acro{CTAN}). Each \acro{CTAN} site has identical material,
+and maintains authoritative versions of its material. These
+collections are extensive; in particular, almost everything mentioned
+in this \acro{FAQ}
+is archived at the \acro{CTAN} sites (see the lists of software at the
+end of each answer).
+
+There are two main \acro{CTAN} sites (in Germany and the \acro{UK}),
+but users should ordinarily collect material via the % ! line break
+\href{http://mirror.ctan.org/}{\acro{CTAN} mirror redirector}
+(which connects you to a mirror that is in some sense ``near'' to
+you).
+
+To access a particular thing through the \texttt{mirror.ctan.org}
+mechanism, simply place the \acro{CTAN} path after the base
+\acro{URL}; so
+\URL{http://mirror.ctan.org/macros/latex/contrib/footmisc/} will
+connect you to the \Package{footmisc} directory at some \acro{CTAN}
+mirror.
+
+For details of how to find files at \acro{CTAN} sites, see
+``\Qref*{finding \AllTeX{} files}{Q-findfiles}''.
+
+The \TeX{} user who has no access to any sort of
+network may buy a copy of the archive as part of the
+\Qref*{\texlive{} distribution}{Q-CD}; the disc is, necessarily, out
+of date, but it is likely to be better than what (if anything) came
+with your operating system.
+\LastEdit{2012-12-14}
+
+\Question[Q-tds-zip]{Ready-built installation files on the archive}
+
+The \Qref*{\acro{TDS}}{Q-tds} is a simple structure, and almost all
+files can be installed simply by putting them in the ``right'' place,
+and updating a single index. (Note, this simple idea typically
+doesn't work for fonts, unless they're distributed as \MF{} source.)
+
+The CTAN network is therefore acquiring ``\acro{TDS}-\acro{ZIP}'' files,
+which have a built-in directory structure that matches the \acro{TDS}.
+These files have to be built, and the \acro{CTAN} team has asked that
+package authors supply them (the team will advise, of course, if the
+author has trouble). The \acro{CTAN} team hopes that the extra work
+involved will contribute to happier lives for package users, which in
+turn must surely help keep the TeX community lively and active.
+
+At the time of writing, there are rather few \extension{tds.zip}
+files (by comparison with the huge number of packages that are
+available). As packages are updated, the number of files is
+steadily increasing, but it will be a long time before the whole set
+is covered.
+
+Use of the files is discussed in % ! line break
+``\Qref*{installing using ready-built \acro{ZIP} files}{Q-inst-tds-zip}''.
+
+\Question[Q-nonfree]{What was the \acro{CTAN} \texttt{nonfree} tree?}
+
+When \acro{CTAN} was founded, in the 1990s, it was unusual to publish
+the terms under which a \TeX{}-related package was distributed (or, at
+any rate, to publish those terms formally).
+
+With the advent of the \TeX{} \emph{distributions}, however, people
+started to realise the need for such information, to protect those who
+create, distribute or sell the discs that hold the packages, etc.
+With the licence information available, the distributors can decide
+which packages may be distributed.
+
+The \acro{CTAN} team decided that it would be useful for users (and
+distributors, not to say package authors) to separate packages that
+were candidates for distribution, and those that were in some sense
+``not free''. Thus was the \texttt{nonfree} tree born.
+
+From the start, the \texttt{nonfree} tree was controversial: the terms
+under which a package would be placed on the tree were hotly
+contested, and the \acro{CTAN} team were only able slowly to populate
+the tree. It became obvious to the team that the project would never
+have been completed.
+
+The \acro{CTAN} catalogue now records the nature of the licences of a
+good proportion of the packages it describes (though there remain
+several for which the licence is unknown, which is as good, for the
+distributors, as a licence forbidding distribution). Since the
+catalogue's coverage of \acro{CTAN} is good (and slowly improving),
+the general rule for distributors has become
+\begin{quote}
+``if the package is listed in the catalogue, check there to see
+whether you should distribute; if the package is not listed in the
+catalogue, don't think of distributing it''.
+\end{quote}
+(The catalogue only has a modest % ! line break
+\CTANhref{cat-licences}{list of licences}, but it covers the set used
+by packages on \acro{CTAN}, with a wild-card ``\texttt{other-free}''
+which covers packages that the \acro{CTAN} administrators believe to
+be free even though the authors haven't used a standard licence.)
+
+There is a corollary to the `general rule': if you notice something
+that ought to be in the distributions, for which there is no catalogue
+entry, please let the \acro{CTAN} team (\mailto{ctan@dante.de}) know.
+It may well be that the package has simply been missed, but some aren't
+catalogued because there's no documentation and the team just doesn't
+understand the package.
+
+In the light of the above, the \texttt{nonfree} tree is being
+dismantled, and its contents moved (or moved \emph{back}) to the main
+\acro{CTAN} tree. So the answer to the question is, now, ``the
+nonfree tree was a part of \acro{CTAN}, whose contents are now in
+the main tree''.
+
+\Question[Q-uploads]{Contributing a file to the archives}
+
+You have something to submit to the archive~--- good news!
+
+Before we even start, here's a check-list of things to sort out:
+\begin{enumerate}
+\item Licence: in the spirit of \TeX{}, we hope for free software; in
+ the spirit of today's lawyer-enthralled society, \acro{CTAN}
+ provides a % ! line break
+ \href{http://mirror.ctan.org/help/Catalogue/licenses.html}{list of ``standard'' licence statements}.
+ Make sure that there's a formal statement of the licence of your
+ package, somewhere in the files you upload; beyond the \acro{CTAN}
+ installation, your package is a candidate for inclusion in \AllTeX{}
+ distributions~\dots{} and thereafter, also in operating system
+ distributions~\dots{} and the people who bundle all these things up
+ need a clear statement of your intent.
+\item Documentation: it's good for users to be able to browse
+ documentation before downloading a package. You need at least a
+ plain text \File{README} file (exactly that name, upper case and no
+ \extension{txt} extension); in addition a
+ \acro{PDF} file of the package documentation, prepared for screen
+ reading, is highly desirable.
+\item Name: endless confusion is caused by name clashes. If your
+ package has the same name as one already on \acro{CTAN}, or if your
+ package installation generates files of the same name as something
+ in a ``normal'' distribution, the \acro{CTAN} team will delay
+ installation while they check that you're doing the right thing:
+ they may nag you to change the name, or to negotiate a take-over
+ with the author of the original package. % beware line break
+ \Qref*{Browse the archive}{Q-findfiles} to ensure uniqueness.
+
+ The name you choose should also (as far as possible) be somewhat
+ descriptive of what your submission actually \emph{does}; while
+ ``descriptiveness'' is to some extent in the eye of the beholder,
+ it's clear that names such as \File{mypackage} or \File{jiffy}
+ aren't suitable.
+\end{enumerate}
+You upload via the
+\begin{flatversion}
+ CTAN upload redirector: \URL{http://www.ctan.org/upload}
+\end{flatversion}
+\begin{hyperversion}
+ \href{http://www.ctan.org/upload}{CTAN upload redirector}
+\end{hyperversion}
+(the archive's main page has a link). The upload page shows what it
+needs to know, and allows you to enter the information. The mechanism
+can only accept one file per upload: if you had intended to upload
+lots of files, you need to bundle them into an `archive' file of some
+sort; acceptable formats are \extension{zip} and \extension{tar.gz}
+(most uploads are packed in \extension{zip} format). Once you have
+completed your upload, the redirector assigns it to a member of the
+team for processing.
+
+If you can't use this method, or if you find something confusing, ask
+advice of the
+\begin{flatversion}
+ \acro{CTAN} management team (\mailto{ctan@dante.de}).
+\end{flatversion}
+\begin{hyperversion}
+ \href{mailto:ctan@dante.de}{\acro{CTAN} management team}
+\end{hyperversion}
+
+If your package is large, or regularly updated, it may be appropriate
+to `mirror' your contribution direct into \acro{CTAN}.
+Mirroring is only practical using \texttt{ftp} or \texttt{rsync}, so
+this facility is limited to packages offered by a server that uses one
+of those protocols.
+\begin{ctanrefs}
+\item[README.uploads]\CTANref{CTAN-uploads}
+\end{ctanrefs}
+\LastEdit{2013-01-31}
+
+\Question[Q-findfiles]{Finding \AllTeX{} files}
+
+Modern \TeX{} distributions contain a huge array of various sorts of
+files, but sooner or later most people need to find something that's
+not in their present system (if nothing else, because they've heard
+that something has been updated).
+
+But how to find the files?
+
+Modern distributions (\texlive{} and \miktex{}, at least) provide the
+means to update your system ``over the net''. This is the minimum
+effort route to getting a new file: `simply' find which of the
+distribution's `packages' holds the file in question, and ask the
+distribution to update itself. The mechanisms are different (the two
+distributions exhibit the signs of evolutionary divergence in their
+different niches), but neither is difficult~--- see % ! line break
+``\Qref*{using \miktex{} for installing}{Q-inst-miktex*}'' and % ! line break
+``\Qref*{using \texlive{} for installing}{Q-inst-texlive}''.
+
+There are packages, though, that aren't in the distribution you use
+(or for which the distribution hasn't yet been updated to offer the
+version you need).
+
+Some sources, such as these \acro{FAQ} answers, provide links to
+files: so if you've learnt about a package here, you should be able to
+retrieve it without too much fuss.
+
+Otherwise, \acro{CTAN} provides a full-text search, at its
+\href{http://www.ctan.org/}{`central database'} site, as well as
+topic- and author-based indexes and a link to browse the archive
+itself.
+
+% Two search mechanisms are offered: the simpler search, locating files
+% by name, simply scans a list of files (\File{FILES.byname}~--- see
+% below) and returns a list of matches, arranged neatly as a series of
+% links to directories and to individual files.
+
+% The more sophisticated search looks at the contents of each catalogue
+% entry, and returns a list of catalogue entries that mention the
+% keywords you ask for.
+
+An alternative way to scan the catalogue is to use the catalogue's
+% ! line break
+\href{http://mirrors.ctan.org/help/Catalogue/bytopic.html}{``by topic'' index};
+this is an older mechanism than the topic-based search (above), but is
+well presented (even though its data has not been updated for some time).
+
+In fact, \ProgName{Google}, and other search engines, can be useful
+tools. Enter your search keywords, and you may pick up a package that
+the author hasn't bothered to submit to \acro{CTAN}.
+
+A user of \ProgName{Google} can restrict the search to
+\acro{CTAN} by entering
+\begin{quote}
+ \texttt{site:ctan.org tex-archive \meta{search term(s)}}
+\end{quote}
+in \ProgName{Google}'s ``search box''. You can also enforce the
+restriction using \ProgName{Google}'s ``advanced search'' mechanism;
+other search engines (presumably) have similar facilities.
+
+Many people avoid the need to go over the network at all, for their
+searches, by downloading the file list that the archives' web
+file searches use. This file, \File{FILES.byname},
+presents a unified listing of the archive (omitting directory names and
+cross-links). Its companion \File{FILES.last07days} is also useful, to
+keep an eye on the changes on the archive. Since these files are
+updated only once a day, a nightly automatic download (using
+\ProgName{rsync}) makes good sense.
+\begin{ctanrefs}
+\item[FILES.byname]\CTANref{f-byname}
+\item[FILES.last07days]\CTANref{f-last7}
+\LastEdit{2014-03-19}
+\end{ctanrefs}
+
+\Question[Q-findfont]{Finding new fonts}
+
+Nowadays, new fonts are seldom developed by industrious people using
+\mf{}, but if such do appear, they will nowadays be distributed in
+the same way as any other part of \alltex{} collections. (An
+historical review of Metafont fonts available is held on \acro{CTAN}
+as ``\mf{} font list''.)
+
+Nowadays, most new fonts that appear are only available in some
+scalable outline form, and a large proportion is distributed under
+commercial terms. Such fonts will only make their way to the free
+distributions (at least \texlive{} and \miktex{}) if their licensing
+is such that the distributions can accept them. Commercial fonts
+(those you have to pay for) do not get to distributions, though
+support for some of them is held by \acro{CTAN}.
+
+Arranging for a new font to be usable by \alltex{} is very different,
+depending on which type of font it is, and which \tex{}-alike engine
+you are using; roughly speaking:
+\begin{itemize}
+\item MetaFont fonts will work without much fuss (provided their
+ sources are in the correct place in the installation's tree);
+ \tex{}-with-\ProgName{dvips}, and \pdftex{} are ``happy'' with them.
+ While a new font will need `generating' (by running \mf{}, etc.),
+ distributions are set up to do that ``on the fly'' and to save the
+ results (for next time).
+\item Adobe Type 1 fonts can be made to work, after \extension{tfm}
+ and (usually) \extension{vf} files have been created from their
+ metric (\extension{afm}) files; \extension{map} files also need to
+ be created. Such fonts will work with \pdftex{}, and with the
+ (`vanilla')\alltex{} and \ProgName{dvips} combination.
+\item TrueType fonts can be made to work with \pdftex{}~--- see
+% ! line break
+\href{http://www.radamir.com/tex/ttf-tex.htm}{Using TrueType fonts with \tex{}\dots{}}
+ (a rather dated document, dicsussing use with \miktex{}~1.11).
+\item TrueType and OpenType fonts are the usual sort used by \xetex{}
+ and \luatex{}; while straightforward use is pretty easy, one is
+ well-advised to use a package such as \Package{fontspec} to gain
+ access to the full range of a font's capabilities.
+\end{itemize}
+
+The answer ``\Qref*{choice of scalable fonts}{Q-psfchoice}'' discusses
+fonts that are configured for general (both textual and mathematical)
+use with \AllTeX{}. The list of such fonts is sufficiently short that
+they \emph{can} all be discussed in one answer.
+\begin{ctanrefs}
+\item[fontspec.sty]\CTANref{fontspec}
+\item[\nothtml{\rmfamily}\MF{} font list]\CTANref{mf-list}
+\end{ctanrefs}
+\LastEdit{2014-01-21}
+
+\Question[Q-CD]{The \TeX{} collection}
+
+If you don't have access to the Internet, there are obvious
+attractions to \TeX{} collections on a disc. Even those with net
+access will find large quantities of \TeX{}-related files to hand a
+great convenience.
+
+The \TeX{} collection provides this, together with
+ready-to-run \TeX{} systems for various architectures. The collection
+is distributed on \acro{DVD}, and contains:
+\begin{itemize}
+\item The \texlive{} distribution, including the programs themselves
+ compiled for a variety of architectures; \texlive{} may be
+ run from the \acro{DVD} or installed on hard disc.
+\item Mac\TeX{}: an easy to install \TeX{} system for MacOS/X, based
+ on \texlive{}; this distribution includes a native Mac installer,
+ % ! line break
+ \href{http://www.uoregon.edu/~koch/texshop/}{the \TeX{}Shop front-end}
+ and other Mac-specific tools;
+\item Pro\TeX{}t: an easy to install \TeX{} system for Windows, based
+ on \miktex{}, based on an `active' document that guides
+ installation; and
+\item A snapshot of \acro{CTAN}.
+\end{itemize}
+A fair number of national \TeX{} User Groups, as well as \acro{TUG},
+distribute copies to their members at no extra charge. Some user
+groups are also able to sell additional copies:
+contact your local user group or \Qref*{\acro{TUG}}{Q-TUG*}.
+
+You may also download disc images from \acro{CTAN}; the installation
+disc, Pro\TeX{}t and Mac\TeX{} are all separately available. Beware:
+they are all pretty large downloads. \texlive{}, once installed, may
+be updated online.
+
+More details of the collection are available from
+\begin{hyperversion}
+ \href{http://www.tug.org/texcollection/}{its own web page}
+ on the \acro{TUG} site.
+\end{hyperversion}
+\begin{flatversion}
+ its own web page on the
+ \acro{TUG} site \URL{http://www.tug.org/texcollection/}
+\end{flatversion}
+\begin{ctanrefs}
+\item[Mac\TeX{}]\CTANref{mactex}
+\item[Pro\TeX{}t]\CTANref{protext}
+\item[\texlive{} install image]\CTANref{texlive}
+\end{ctanrefs}
+
diff --git a/obsolete/help/texfaq/faq-graphics.tex b/obsolete/help/texfaq/faq-graphics.tex
new file mode 100644
index 0000000000..bd90cc183c
--- /dev/null
+++ b/obsolete/help/texfaq/faq-graphics.tex
@@ -0,0 +1,1035 @@
+% $Id: faq-graphics.tex,v 1.27 2014/01/22 17:29:03 rf10 Exp $
+
+\section{Graphics}
+
+\Question[Q-impgraph]{Importing graphics into \AllTeX{} documents}
+
+Knuth, when designing the current version of \TeX{} back in the early
+1980s, could discern no ``standard'' way of expressing graphics in
+documents. He reasoned that this state could not persist for ever,
+but that it would be foolish for him to define \TeX{} primitives that
+allowed the import of graphical image definitions. He therefore
+deferred the specification of the use of graphics to the writers of
+\acro{DVI} drivers; \TeX{} documents would control the drivers by
+means of \nothtml{\csx{special} commands (}% beware line breaks
+\Qref{\csx{special} commands}{Q-specials}\nothtml{)}.
+
+There is therefore a straightforward way for anyone to import graphics
+into their document: read the specification of the \csx{special}
+commands your driver uses, and `just' code them. This is the
+hair-shirt approach: it definitely works, but it's not for everyone.
+
+Over the years, therefore, ``graphics inclusion'' packages have sprung
+up; most were designed for inclusion of
+\nothtml{Encapsulated \PS{} graphics (}% beware line break
+\Qref{Encapsulated \PS{} graphics}{Q-eps}\nothtml{)}\nobreakspace---
+which has become the \emph{lingua franca} of graphics inclusion over
+the last decade or so.
+
+Notable examples are the \Package{epsf} package (distributed with
+\ProgName{dvips}) and the \Package{psfig} package. (Both of these
+packages were designed to work well with both \plaintex{} and
+\LaTeXo{}; they are both still available.) All such packages were
+tied to a particular \acro{DVI} driver (\ProgName{dvips}, in
+the above two cases), but their code could be configured for others.
+
+The obvious next step was to make the code configurable dynamically.
+The \LaTeX{} standard \Package{graphics} package and its derivatives
+made this step: it is strongly preferred for all current work.
+
+Users of \plaintex{} have two options allowing them to use
+\Package{graphicx}: the \Package{miniltx} ``\LaTeX{} emulator'' and
+the \Package{graphicx.tex} front-end allow you to load
+\Package{graphicx}, and \Qref*{\Eplain}{Q-eplain} allows you to load
+it (using the full \LaTeX{} syntax) direct.
+
+The \Package{graphics} package takes a variety of ``driver
+options''~--- package options that select code to generate the
+commands appropriate to the \acro{DVI} driver in use. In most cases,
+your \AllTeX{} distribution will provide a \File{graphics.cfg} file
+that will select the correct driver for what you're doing (for
+example, a distribution that provides both \LaTeX{} and \PDFLaTeX{}
+will usually provide a configuration file that determines whether
+\PDFLaTeX{} is running, and selects the definitions for it if so).
+
+The \Package{graphics} package provides a toolkit of commands (insert
+graphics, scale a box, rotate a box), which may be composed to provide
+most facilities you need; the basic command, \csx{includegraphics},
+takes one optional argument, which specifies the bounding box of the
+graphics to be included.
+
+The \Package{graphicx} package uses the facilities of of
+\Package{graphics} behind a rather more sophisticated command syntax
+to provide a very powerful version of the \csx{includegraphics}
+command. \Package{graphicx}'s version can combine scaling and
+rotation, viewporting and clipping, and many other things. While this
+is all a convenience (at some cost of syntax), it is also capable of
+producing noticeably more efficient \PS{}, and some of its
+combinations are simply not possible with the \Package{graphics}
+package version.
+
+The \Package{epsfig} package provides the same facilities as
+\Package{graphicx}, but via a \csx{psfig} command (also known as
+\csx{epsfig}), capable of emulating
+the behaviour (if not the bugs) the old \Package{psfig} package.
+\Package{Epsfig} also supplies homely support for former users of the
+\Package{epsf} package. However, there's a support issue: if you
+declare you're using \Package{epsfig}, any potential mailing list or
+usenet helper has to clear out of the equation the possibility that
+you're using ``old'' \Package{epsfig}, so that support is slower
+coming than it would otherwise be.
+
+There is no rational reason to stick with the old packages, which have
+never been entirely satisfactory in the \LaTeX{} context. (One
+irrational reason to leave them behind is that their replacement's
+name tends not to imply that it's exclusively related to \PS{}
+graphics. The reasoning also excludes \Package{epsfig}, of course.)
+
+A wide variety of detailed techniques and tricks have been developed
+over the years, and Keith Reckdahl's \Package{epslatex} outlines them
+in compendious detail: this highly recommendable document is available
+from \acro{CTAN}. An invaluable review of the practicalities of
+exchanging graphics between sites,
+% beware multiple line break problems
+\begin{wideversion} % hyperversion
+``\href{http://silas.psfc.mit.edu/elec_fig/elec_figures.pdf}{Graphics for Inclusion in Electronic Documents}''
+\end{wideversion}
+\begin{narrowversion} % non-hyper
+\href{http://silas.psfc.mit.edu/elec_fig/elec_figures.pdf}%
+ {``Graphics for Inclusion in Electronic Documents''}
+\end{narrowversion}
+has been written by Ian Hutchinson; the document isn't on \acro{CTAN},
+but may also be
+% beware line breaks
+\href{http://silas.psfc.mit.edu/elec_fig/}{browsed on the Web}.
+\begin{ctanrefs}
+\item[epsf.tex]\CTANref{epsf}
+\item[epsfig.sty]Part of the \CTANref{graphics} bundle
+\item[epslatex.pdf]\CTANref{epslatex}
+\item[graphics.sty]\CTANref{graphics}
+\item[graphicx.sty]Part of the \CTANref{graphics} bundle
+\item[miniltx.tex]\CTANref{graphics-plain}
+\item[psfig.sty]\CTANref{psfig}
+\end{ctanrefs}
+
+\Question[Q-dvipsgraphics]{Imported graphics in \ProgName{dvips}}
+
+\ProgName{Dvips}, as originally conceived, can only import a single
+graphics format: \nothtml{encapsulated \PS{} (\extension{eps} files, }%
+\Qref{encapsulated \PS{}}{Q-eps}\htmlonly{ (\extension{eps} files}).
+\ProgName{Dvips} also deals with the slightly eccentric \acro{EPS} that is
+created by \Qref*{\MP{}}{Q-MP}.
+
+Apart from the fact that a depressing proportion of drawing
+applications produce corrupt \acro{EPS} when asked for such output,
+this is pretty satisfactory for vector graphics work.
+
+To include bitmap graphics, you need some means of converting them to
+\PS{}; in fact many standard image manipulators (such as
+\ProgName{ImageMagick}'s \ProgName{convert}) make a good job of
+creating \acro{EPS} files (but be sure to ask for output at \PS{}
+level~2 or higher). (\ProgName{Unix} users should beware of
+\ProgName{xv}'s claims: it has a tendency to downsample your bitmap to
+your screen resolution.)
+
+Special purpose applications \ProgName{jpeg2ps} (which converts
+\acro{JPEG} files using \PS{} level 2 functionality),
+\ProgName{bmeps} (which converts both \acro{JPEG} and \acro{PNG}
+files) and \ProgName{a2ping}/\ProgName{sam2p} (which convert a
+bewildering array of bitmap formats to \acro{EPS} or \acro{PDF} files;
+\ProgName{sam2p} is one of the engines that \ProgName{a2ping} uses)
+are also considered ``good bets''.
+
+\ProgName{Bmeps} comes with patches to produce your own version of
+\ProgName{dvips} that can cope with \acro{JPEG} and \acro{PNG} direct,
+using \ProgName{bmeps}'s conversion library. \ProgName{Dvips}, as
+distributed by \miktex{}, comes with those patches built-in, but
+assuming that capability destroys portability, and is only
+recommendable if you are sure you will never want to share your
+document.
+\begin{ctanrefs}
+\item[a2ping]\CTANref{a2ping}
+\item[bmeps]Distributed as part of \CTANref{dktools}[bmeps]
+\item[jpeg2ps]\CTANref{jpeg2ps}
+\item[sam2p]\CTANref{sam2p}
+\end{ctanrefs}
+
+\Question[Q-pdftexgraphics]{Imported graphics in \PDFLaTeX{}}
+
+\PDFTeX{} itself has a rather wide range of formats that it can
+``natively'' incorporate into its output \acro{PDF} stream:
+\acro{JPEG} (\extension{jpg} files) for photographs and similar images,
+\acro{PNG} files for artificial bitmap images, and \acro{PDF} for
+vector drawings. Old versions of \PDFTeX{} (prior to version~1.10a)
+supported \acro{TIFF} (\extension{tif} files) format as an alternative
+to \acro{PNG} files; don't rely on this facility, even if you
+\emph{are} running an old enough version of \PDFTeX{}\dots{}
+
+In addition to the `native' formats, the standard \PDFLaTeX{}
+\Package{graphics} package setup causes Hans Hagen's \File{supp-pdf}
+macros to be loaded: these macros are capable of translating the
+output of \MP{} to \acro{PDF} ``on the fly''; thus \MP{} output
+(\extension{mps} files) may also be included in \PDFLaTeX{} documents.
+
+The commonest problem users encounter, when switching from \TeX{}, is
+that there is no straightforward way to include \acro{EPS} files:
+since \PDFTeX{} is its own ``driver'', and since it contains no means
+of converting \PS{} to \acro{PDF}, there's no direct way the job can
+be done.
+
+The simple solution is to convert the \acro{EPS} to an appropriate
+\acro{PDF} file. The \ProgName{epstopdf} program will do this: it's
+available either as a Windows executable or as a \ProgName{Perl}
+script to run on Unix and other similar systems. A \LaTeX{} package,
+\Package{epstopdf}, can be used to generate the requisite \acro{PDF}
+files ``on the fly''; this is convenient, but requires that you
+suppress one of \TeX{}'s security checks: don't allow its use in files
+from sources you don't entirely trust.
+
+The package \Package{pst-pdf} permits other things than `mere'
+graphics files in its argument. \Package{Pst-pdf} operates (the
+authors suggest) ``like \BibTeX{}''~--- you process your file using
+\PDFLaTeX{}, then use \LaTeX{}, \ProgName{dvips} and \ProgName{ps2pdf}
+in succession, to produce a secondary file to input to your next
+\PDFLaTeX{} run. (Scripts are provided to ease the production of the
+secondary file.)
+
+A further extension is \Package{auto-pst-pdf}, which generates
+\acro{PDF} (essentially) transparently, by spawning a job to process
+output such as \Package{pst-pdf} uses. If your \pdflatex{}
+installation doesn't automatically allow it~--- see % ! line break
+\Qref*{spawning a process}{Q-spawnprog}~--- then you need to start
+\pdflatex{} with:
+\begin{quote}
+\begin{verbatim}
+pdflatex -shell-escape <file>
+\end{verbatim}
+\end{quote}
+for complete `automation'.
+
+An alternative solution is to use \ProgName{purifyeps}, a
+\ProgName{Perl} script which uses the good offices of
+\ProgName{pstoedit} and of \MP{} to convert your Encapsulated \PS{} to
+``Something that looks like the encapsulated \PS{} that comes out of
+\MP{}'', and can therefore be included directly. Sadly,
+\ProgName{purifyeps} doesn't work for all \extension{eps} files.
+
+Good coverage of the problem is to be found in Herbert Vo\ss {}'s
+\href{http://pstricks.tug.org/main.cgi?file=pdf/pdfoutput}{\acro{PDF} support page},
+which is targeted at the use of \Package{pstricks} in
+\PDFLaTeX{}, and also covers the \Package{pstricks}-specific package
+\Package{pdftricks}. A recent alternative (not covered in % ! line break
+Herbert Vo\ss {}'s page) is \Package{pdftricks2}, which offers similar
+facilities to \Package{pdftricks}, but with some useful variations.
+\begin{ctanrefs}
+\item[auto-pst-pdf.sty]\CTANref{auto-pst-pdf}
+\item[epstopdf]Browse \CTANref{epstopdf}
+\item[epstopdf.sty]Distributed with Heiko Oberdiek's packages
+ \CTANref{oberdiek}
+\item[pdftricks.sty]\CTANref{pdftricks}
+\item[pdftricks2.sty]\CTANref{pdftricks2}
+\item[pst-pdf.sty]\CTANref{pst-pdf}
+\item[pstoedit]\CTANref{pstoedit}
+\item[purifyeps]\CTANref{purifyeps}
+\end{ctanrefs}
+\LastEdit{2012-11-20}
+
+\Question[Q-dvipdfmgraphics]{Imported graphics in \ProgName{dvipdfm}}
+
+\ProgName{Dvipdfm} (and \ProgName{dvipdfmx}) translates direct from
+\acro{DVI} to \acro{PDF} (all other available routes produce \PS{}
+output using \ProgName{dvips} and then convert that to \acro{PDF} with
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}}
+or \ProgName{Acrobat}'s \ProgName{Distiller}).
+
+\ProgName{Dvipdfm}/\ProgName{Dvipdfmx} are particularly flexible
+applications. They permit the inclusion of bitmap and \acro{PDF}
+graphics (as does \Qref*{\PDFTeX{}}{Q-pdftexgraphics}), but are also
+capable of employing
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}} ``on the
+fly'' to permit the inclusion of encapsulated \PS{} (\extension{eps})
+files by translating them to \acro{PDF}. In this way, they combine the good
+qualities of \ProgName{dvips} and of \PDFTeX{} as a means of
+processing illustrated documents.
+
+Unfortunately, ``ordinary'' \LaTeX{} can't deduce the bounding box of
+a binary bitmap file (such as \acro{JPEG} or \acro{PNG}), so you have
+to specify the bounding box. This may be done explicitly, in the
+document:
+\begin{quote}
+\begin{verbatim}
+\usepackage[dvipdfm]{graphicx}
+...
+\includegraphics[bb=0 0 540 405]{photo.jpg}
+\end{verbatim}
+\end{quote}
+It's usually not obvious what values to give the ``\texttt{bb}'' key,
+but the program \ProgName{ebb} will generate a file
+containing the information; the above numbers came from an
+\ProgName{ebb} output file \File{photo.bb}:
+\begin{quote}
+\begin{verbatim}
+%%Title: /home/gsm10/photo.jpg
+%%Creator: ebb Version 0.5.2
+%%BoundingBox: 0 0 540 405
+%%CreationDate: Mon Mar 8 15:17:47 2004
+\end{verbatim}
+\end{quote}
+If such a file is available, you may abbreviate the inclusion
+code, above, to read:
+\begin{quote}
+\begin{verbatim}
+\usepackage[dvipdfm]{graphicx}
+...
+\includegraphics{photo}
+\end{verbatim}
+\end{quote}
+which makes the operation feel as simple as does including
+\extension{eps} images in a \LaTeX{} file for processing with
+\ProgName{dvips}; the \Package{graphicx} package knows to look for a
+\extension{bb} file if no bounding box is provided in the
+\csx{includegraphics} command.
+
+The one place where usage isn't quite so simple is the need to quote
+\ProgName{dvipdfm} explicitly, as an option when loading the
+\Package{graphicx} package: if you are using \ProgName{dvips}, you
+don't ordinarily need to specify the fact, since the default graphics
+configuration file (of most distributions) ``guesses'' the
+\texttt{dvips} option if you're using \TeX{}.
+\begin{ctanrefs}
+\item[dvipdfm]\CTANref{dvipdfm}
+\item[dvipdfmx]\CTANref{dvipdfmx}
+\item[ebb]Distributed as part of \CTANref{dvipdfm}
+\end{ctanrefs}
+\LastEdit{2013-06-03}
+
+\Question[Q-grffilenames]{``Modern'' graphics file names}
+
+\TeX{} was designed in a world where file names were very simple
+indeed, typically strictly limited both in character set and length.
+In modern systems, such restrictions have largely disappeared, which
+leaves \TeX{} rather at odds with its environment. Particular
+problems arise with spaces in file names, but things like multiple
+period characters can seriously confuse the \Package{graphics}
+package.
+
+The specification of \TeX{} leaves some leeway for distributions to
+adopt file access appropriate to their operating system, but this
+hasn't got us very far. Many modern distributions allow you to
+specify a file name as \texttt{"file name.tex"} (for example), which
+helps somewhat, but while this allows us to say
+\begin{quote}
+\begin{verbatim}
+\input "foo bar.tex"
+\end{verbatim}
+\end{quote}
+the analogous usage
+\begin{quote}
+\begin{verbatim}
+\includegraphics{"gappy graphics.eps"}
+\end{verbatim}
+\end{quote}
+using ``ordinary'' \LaTeX{} causes confusion in \ProgName{xdvi} and
+\ProgName{dvips}, even though it works at compilation time. Sadly,
+even within such quotes, multiple dots give \csx{includegraphics}
+difficulties. Note that
+\begin{quote}
+\begin{verbatim}
+\includegraphics{"gappy graphics.pdf"}
+\end{verbatim}
+\end{quote}
+works in a similar version of \PDFTeX{}.
+
+If you're using the \Package{graphics} package, the \Package{grffile}
+package will help. The package offers several options, the simplest
+of which are \pkgoption{multidot} (allowing more than one dot in a
+file name) and \pkgoption{space} (allowing space in a file name). The
+\pkgoption{space} option requires that you're running on a
+sufficiently recent version of \PDFTeX{}, in \acro{PDF} mode~--- and
+even then it won't work for \MP{} files, which are read as \TeX{}
+input, and therefore use the standard input mechanism).
+\begin{ctanrefs}
+\item[grffile.sty]Distributed as part of \CTANref{oberdiek}[grffile]
+\end{ctanrefs}
+
+\Question[Q-graphicspath]{Importing graphics from ``somewhere else''}
+
+By default, graphics commands like \csx{includegraphics} look
+``wherever \TeX{} files are found'' for the graphic file they're being
+asked to use. This can reduce your flexibility if you choose to hold
+your graphics files in a common directory, away from your \AllTeX{}
+sources.
+
+The simplest solution is to patch \TeX{}'s path, by changing the
+default path. On most systems, the default path is taken from the
+environment variable \texttt{TEXINPUTS}, if it's present; you can adapt that
+to take in the path it already has, by setting the variable to
+\begin{quote}
+\begin{verbatim}
+TEXINPUTS=.:<graphics path(s)>:
+\end{verbatim}
+\end{quote}
+on a Unix system; on a Windows system the separator will be ``\texttt{;}''
+rather than ``\texttt{:}''. The ``\texttt{.}'' is there to ensure
+that the current directory is searched first; the trailing
+``\texttt{:}'' says ``patch in the value of \texttt{TEXINPUTS} from
+your configuration file, here''.
+
+This method has the merit of efficiency (\AllTeX{} does \emph{all} of
+the searches, which is quick), but it's always clumsy and may prove
+inconvenient to use in Windows setups (at least).
+
+The alternative is to use the \Package{graphics} package command
+\csx{graphicspath}; this command is of course also available to users
+of the \Package{graphicx} and the \Package{epsfig} packages. The
+syntax of \csx{graphicspath}'s one argument is slightly odd: it's a
+sequence of paths (typically relative paths), each of which is
+enclosed in braces. A slightly odd example (slightly modified from one
+given in the \Package{graphics} bundle documentation) is:
+\begin{quote}
+\begin{verbatim}
+\graphicspath{{eps/}{png/}}
+\end{verbatim}
+\end{quote}
+which will search for graphics files in subdirectories \File{eps} and
+\File{png} of the directory in which \latex{} is running. (Note that
+the trailing ``\texttt{/}'' \emph{is} required.)
+
+(Note that some \AllTeX{} systems will only allow you to use files in
+the current directory and its sub-directories, for security reasons.
+However, \csx{graphicspath} imposes no such restriction: as far as
+\emph{it} is concerned, you can access files anywhere.)
+
+Be aware that \csx{graphicspath} does not affect the operations of
+graphics macros other than those from the graphics bundle~--- in
+particular, those of the outdated \Package{epsf} and
+\Package{psfig} packages are immune.
+
+The slight disadvantage of the \csx{graphicspath} method is
+inefficiency. The package will call \AllTeX{} once for each entry in
+the list to look for a file, which of course slows things. Further,
+\AllTeX{} remembers the name of any file it's asked to look up, thus
+effectively losing memory, so that in the limit a document that uses a
+huge number of graphical inputs could be embarrassed by lack of
+memory. (Such ``memory starvation'' is pretty unlikely with any
+ordinary document in a reasonably modern \AllTeX{} system, but it
+should be borne in mind.)
+
+If your document is split into a variety of directories, and each
+directory has its associated graphics, the \Package{import} package
+may well be the thing for you; see the discussion % beware line break
+\latexhtml{of ``bits of document in other directories'' (}{in the question ``}%
+\Qref{bits of document in other directories}{Q-docotherdir}%
+\latexhtml{)}{''}.
+\begin{ctanrefs}
+\item[graphics \nothtml{\rmfamily}bundle]\CTANref{graphics}
+\item[import.sty]\CTANref{import}
+\end{ctanrefs}
+
+\Question[Q-graph-pspdf]{Portable imported graphics}
+
+A regular need is a document to be distributed in more than
+one format: commonly both \PS{} and \acro{PDF}. The
+following advice is based on a post by one with much experience of
+dealing with the problem of dealing with \acro{EPS} graphics in this
+case.
+\begin{itemize}
+\item Don't specify a driver when loading loading whichever version of
+ the \Package{graphics} package you use. The scheme relies on the
+ distribution's ability to decide which driver is going to be used:
+ the choice is between \ProgName{dvips} and \PDFTeX{}, in this case.
+ Be sure to exclude options \pkgoption{dvips}, \pkgoption{pdftex} and
+ \pkgoption{dvipdfm} (\ProgName{dvipdfm} is not used in this scheme,
+ but the aspirant \acro{PDF}-maker may be using it for his output,
+ before switching to the scheme).
+\item Use \cmdinvoke{includegraphics}[...]{filename} without
+ specifying the extension (i.e., neither \extension{eps} nor
+ \extension{pdf}).
+\item For every \extension{eps} file you will be including, produce a
+ \extension{pdf} version, as described in % beware line break
+ \Qref[question]{Graphics in \PDFLaTeX{}}{Q-pdftexgraphics}. Having
+ done this, you will have two copies of each graphic (a \extension{eps}
+ and a \extension{pdf} file) in your directory.
+\item Use \PDFLaTeX{} (rather than
+ \LaTeX{}--\ProgName{dvips}--distillation or
+ \LaTeX{}--\ProgName{dvipdfm}) to produce your \acro{PDF} output.
+\end{itemize}
+\ProgName{Dvipdfm}'s charms are less than attractive here: the
+document itself needs to be altered from its default
+(\ProgName{dvips}) state, before \ProgName{dvipdfm} will process it.
+
+\Question[Q-repeatgrf]{Repeated graphics in a document}
+
+A logo or ``watermark'' image, or any other image that is repeated in
+your document, has the potential to make the processed version of the
+document unmanageably large. The problem is, that the default
+mechanisms of graphics usage add the image at every point it's to be
+used, and when processed, the image appears in the output file at each
+such point.
+
+Huge \PS{} files are embarrassing; explaining \emph{why} such a file
+is huge, is more embarrassing still.
+
+The \Qref*{\File{epslatex} graphics tutorial}{Q-tutbitslatex}
+describes a technique for avoiding the problem: basically, one
+converts the image that's to be repeated into a \PS{} subroutine, and
+load that as a \ProgName{dvips} prologue file. In place of the image,
+you load a file (with the same bounding box as the image) containing
+no more than an invocation of the subroutine defined in the prologue.
+
+The \File{epslatex} technique is tricky, but does the job. Trickier
+still is the neat scheme of converting the figure to a one-character
+Adobe Type~3 outline font. While this technique is for the ``real
+experts'' only (the author of this answer has never even tried it), it has
+potential for the same sort of space saving as the \File{epslatex}
+technique, with greater flexibility in actual use.
+
+More practical is Hendri Adriaens' \Package{graphicx-psmin}; you load
+this \emph{in place} of \Package{graphicx}, so rather than:
+\begin{quote}
+\begin{verbatim}
+\usepackage[<options>]{graphicx}
+\end{verbatim}
+\end{quote}
+you will write:
+\begin{quote}
+\begin{verbatim}
+\usepackage[<options>]{graphicx-psmin}
+\end{verbatim}
+\end{quote}
+and at the start of your document, you write:
+\begin{quote}
+\begin{verbatim}
+\loadgraphics[<bb>]{<list of graphics>}
+\end{verbatim}
+\end{quote}
+and each of the graphics in the list is converted to an ``object'' for
+use within the resulting \PS{} output. (This is, in essence, an
+automated version of the \File{epslatex} technique described above.)
+
+Having loaded the package as above, whenever you use
+\csx{includegraphics}, the command checks if the file you've asked for
+is one of the graphics in \csx{loadgraphics}' list. If so, the
+operation is converted into a call to the ``object'' rather than a new
+copy of the file; the resulting \PS{} can of course be \emph{much} smaller.
+
+Note that the package requires a recent \ProgName{dvips}, version
+5.95b (this version isn't~--- yet~--- widely distributed).
+
+If your \PS{} is destined for conversion to \acro{PDF}, either by a
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}}-based
+mechanism such as \ProgName{ps2pdf} or by
+(for example) \ProgName{Acrobat} \ProgName{Distiller}, the issue isn't
+so pressing, since the distillation mechanism will amalgamate graphics
+objects whether or not the \PS{} has them amalgamated. \PDFTeX{} does
+the same job with graphics, automatically converting multiple uses
+into references to graphics objects.
+\begin{ctanrefs}
+\item[graphicx-psmin.sty]\CTANref{graphicx-psmin}
+\end{ctanrefs}
+\LastEdit{2013-06-03}
+
+\Question[Q-grmaxwidth]{Limit the width of imported graphics}
+
+Suppose you have graphics which may or may not be able to fit within
+the width of the page; if they will fit, you want to set them at their
+natural size, but otherwise you want to scale the whole picture so
+that it fits within the page width.
+
+You do this by delving into the innards of the graphics package (which
+of course needs a little \LaTeX{} internals programming):
+\begin{quote}
+\begin{verbatim}
+\makeatletter
+\def\maxwidth{%
+ \ifdim\Gin@nat@width>\linewidth
+ \linewidth
+ \else
+ \Gin@nat@width
+ \fi
+}
+\makeatother
+\end{verbatim}
+\end{quote}
+This defines a ``variable'' width which has the properties you want.
+Replace \csx{linewidth} if you have a different constraint on the width
+of the graphic.
+
+Use the command as follows:
+\begin{quote}
+\begin{verbatim}
+\includegraphics[width=\maxwidth]{figure}
+\end{verbatim}
+\end{quote}
+
+\Question[Q-topgraph]{Top-aligning imported graphics}
+
+When \TeX{} sets a line of anything, it ensures that the base-line of
+each object in the line is at the same level as the base-line of the
+final object. (Apart, of course, from \csx{raisebox} commands\dots{})
+
+Most imported graphics have their base-line set at the bottom of the
+picture. When using packages such as \Package{subfig}, one often
+wants to align figures by their tops. The following odd little bit of
+code does this:
+\begin{quote}
+\begin{verbatim}
+\vtop{%
+ \vskip0pt
+ \hbox{%
+ \includegraphics{figure}%
+ }%
+}
+\end{verbatim}
+\end{quote}
+The \csx{vtop} primitive sets the base-line of the resulting object to
+that of the first ``line'' in it; the \csx{vskip} creates the illusion
+of an empty line, so \csx{vtop} makes the very top of the box into the
+base-line.
+
+In cases where the graphics are to be aligned with text, there is a
+case for making the base-line one ex-height below the top of the box,
+as in:
+\begin{quote}
+\begin{verbatim}
+\vtop{%
+ \vskip-1ex
+ \hbox{%
+ \includegraphics{figure}%
+ }%
+}
+\end{verbatim}
+\end{quote}
+A more \LaTeX{}-y way of doing the job (somewhat inefficiently) uses
+the \Package{calc} package:
+\begin{quote}
+\begin{verbatim}
+\usepackage{calc}
+...
+\raisebox{1ex-\height}{\includegraphics{figure}}
+\end{verbatim}
+\end{quote}
+(this has the same effect as the text-align version, above).
+
+The fact is, \emph{you} may choose where the base-line ends up. This
+answer merely shows you sensible choices you might make.
+
+\Question[Q-mpprologues]{Displaying \MP{} output in \ProgName{ghostscript}}
+
+\MP{} ordinarily expects its output to be included in some context
+where the `standard' \MF{} fonts (that you've specified) are already
+defined~--- for example, as a figure in \TeX{} document. If you're
+debugging your \MP{} code, you may want to view it in a
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}}-based (or some
+other \PS{}) previewer, but note that viewers (even
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}})
+\emph{don't} ordinarily have the fonts loaded, and you'll experience
+an error such as
+\begin{quote}
+\begin{verbatim}
+Error: /undefined in cmmi10
+\end{verbatim}
+\end{quote}
+There is provision in \MP{} for avoiding this problem: issue the
+command \texttt{prologues := 2;} at the start of the \extension{mp} file.
+
+Unfortunately, the \PS{} that \MP{} inserts in its output,
+following this command, is incompatible with ordinary use of the
+\PS{} in inclusions into \AllTeX{} documents, so it's best to
+make the \texttt{prologues} command optional. Furthermore, \MP{} takes a
+very simple-minded approach to font encoding: since \TeX{} font
+encodings are anything but simple, encoding of text in diagrams are
+another source of problems. If you're suffering such problems (the
+symptom is that
+characters disappear, or are wrongly presented) the solution is
+to view the `original' \MP{} output after processing through
+\LaTeX{} and \ProgName{dvips}.
+
+Conditional compilation may be done either
+by inputting \File{MyFigure.mp} indirectly from a simple wrapper
+\File{MyFigureDisplay.mp}:
+\begin{quote}
+\begin{verbatim}
+prologues := 2;
+input MyFigure
+\end{verbatim}
+\end{quote}
+or by issuing a shell command such as
+\begin{quote}
+\begin{verbatim}
+mp '\prologues:=2; input MyFigure'
+\end{verbatim}
+\end{quote}
+(which will work without the quote marks if you're not using a Unix
+shell).
+
+A suitable \LaTeX{} route would involve processing
+\File{MyFigure.tex}, which contains:
+\begin{quote}
+\begin{verbatim}
+\documentclass{article}
+\usepackage{graphicx}
+\begin{document}
+\thispagestyle{empty}
+\includegraphics{MyFigure.1}
+\end{document}
+\end{verbatim}
+\end{quote}
+Processing the resulting \acro{DVI} file with the \ProgName{dvips}
+command
+\begin{quote}
+\begin{verbatim}
+dvips -E -o MyFigure.eps MyFigure
+\end{verbatim}
+\end{quote}
+would then give a satisfactory Encapsulated \PS{} file. This
+procedure may be automated using the \ProgName{Perl} script
+\ProgName{mps2eps}, thus saving a certain amount of tedium.
+
+The \plaintex{} user may use an adaptation, by
+Dan Luecking, of a jiffy of Knuth's. Dan's version
+\Package{mpsproof.tex} will work under
+\TeX{} to produce a \acro{DVI} file for use with \ProgName{dvips}, or
+under \PDFTeX{} to produce a \acro{PDF} file, direct. The output is
+set up to look like a proof sheet.
+
+A script application, \ProgName{mptopdf}, is available in recent
+\AllTeX{} distributions: it seems fairly reliably to produce
+\acro{PDF} from \MP{}, so may reasonably be considered an answer to
+the question\dots{}
+\begin{ctanrefs}
+\item[mps2eps]\CTANref{mps2eps}
+\item[mpsproof.tex]Distributed as part of the \MP{} distribution \CTANref{metapost}
+\item[mptopdf]Part of \CTANref{pdftex-graphics}
+\end{ctanrefs}
+\LastEdit{2013-04-23}
+
+\Question[Q-drawing]{Drawing with \TeX{}}
+
+There are many packages to do pictures in \AllTeX{} itself (rather than
+importing graphics created externally), ranging from simple use of
+\LaTeX{} \environment{picture} environment, through enhancements like
+\ProgName{eepic}, to
+sophisticated (but slow) drawing with \pictex{}. Depending on your type
+of drawing, and setup, here are a few systems you may consider:
+\begin{itemize}
+\item The \environment{picture} environment provides rather primitive
+ drawing capabilities (anything requiring more than linear
+ calculations is excluded, unless a font can come to your help). The
+ environment's tedious insistence on its own \csx{unitlength}, as the
+ basic measurement in a diagram, may be avoided by use of the
+ \Package{picture} package, which detects whether a length is quoted
+ as a number or as a length, and acts accordingly.
+\item \Package{epic} was designed to make use of the \LaTeX{}
+ \environment{picture} environment somewhat less agonising;
+ \Package{eepic} extends it, and is capable of using \ProgName{tpic}
+ \csx{special} commands to improve printing performance. (If the
+ \csx{special}s aren't available, the \Package{eepicemu} will do the
+ business, far less efficiently.
+\item \Package{pict2e}; this was advertised in % !line break
+ \Qref*{the \LaTeX{} manual}{Q-latex-books}, but didn't appear for nearly
+ ten years after publication of the book! It removes all the petty
+ restrictions that surround the use of the \environment{picture}
+ environment. It therefore suffers \emph{only} from the rather
+ eccentric drawing language of the environment, and is a far more
+ useful tool than the original environment has ever been. (Note that
+ \Package{pict2e} supersedes David Carlisle's stop-gap
+ \Package{pspicture}.)
+\item \pictex{} is a venerable, and very powerful, system, that draws
+ by placing dots on the page to give the effect of a line or curve. While
+ this has the potential of great power, it is (of course) much slower
+ than any of the other established packages. What's more, there
+ are problems with its \Qref*{documentation}{Q-docpictex}.
+\item \Package{PSTricks} gives you access to the (considerable) power of
+ \PS{} via a set of \tex{} macros, which talk to \PS{} using
+ \Qref*{\csx{special} commands}{Q-specials}. Since \PS{} is itself a
+ pretty powerful programming language, many astounding things can in
+ principle be achieved using \Package{PSTricks} (a wide range of
+ contributed packages, ranging from world mapping to lens design
+ diagrams, is available).
+ \Package{Pstricks}' \csx{special}s are
+ by default specific to \ProgName{dvips}, but there is
+ a \Package{Pstricks} `driver' that allow \Package{Pstricks} to
+ operate under \xetex{}. \PDFTeX{} users may use \Package{pst-pdf},
+ which (like \Package{epstopdf}~--- see % ! line break
+ \Qref[question]{\PDFLaTeX{} graphics}{Q-pdftexgraphics}) generates
+ \acro{PDF} files using an auxiliary program, from \Package{PSTricks}
+ commands (\Package{pst-pdf} also requires a recent installation of
+ the \Package{preview} package).
+
+ There is a \Package{PSTricks} mailing list
+ (\mailto{pstricks@tug.org}) which you may
+ \href{http://tug.org/mailman/listinfo/pstricks}{join}, or you may
+ just browse the % ! line break
+ \href{http://tug.org/pipermail/pstricks/}{list archives}.
+\item \Package{pgf}: while \Package{pstricks} is very powerful and
+ convenient from `traditional' \tex{}, using it with \PDFLaTeX{} is
+ pretty tiresome: if you
+ simply want the graphical capabilities, \Package{pgf}, together with
+ its ``user-oriented'' interface \Package{tikz}, may be a good
+ bet for you. While \acro{PDF} has (in essence) the same graphical
+ capabilities as \PS{}, it isn't programmable; \Package{pgf} provides
+ \LaTeX{} commands that will utilise the graphical capabilities of
+ both \PS{} and \acro{PDF} equally. \Package{Pgf} has extensive
+ mathematical support, which allows it to rival \Package{PSTricks}'
+ use of the computation engine within \PS{}.
+ The \Package{pgf} manual is enormous, but a simple introduction which
+ allows the user to get a feel for the capabilities of the system, is
+ available at \url{http://cremeronline.com/LaTeX/minimaltikz.pdf}
+\item \MP{}; you liked \MF{}, but never got to grips with font files?
+ Try \Qref*{\MP{}}{Q-MP}~---
+ all the power of \MF{}, but it generates \PS{} figures; \MP{}
+ is nowadays part of most serious \AllTeX{} distributions. Knuth
+ uses it for all his work\dots{}
+
+ Note that you can % ! line break
+ \Qref*{``embed'' \MP{} source in your document}{Q-inlgrphapp} (i.e.,
+ keep it in-line with your \latex{} code).
+\item You liked \MF{} (or \MP{}), but find the language difficult?
+ \ProgName{Mfpic} makes up \MF{} or \MP{} code for you using
+ familiar-looking \AllTeX{} macros. Not \emph{quite} the full power
+ of \MF{} or \MP{}, but a friendlier interface, and with \MP{} output
+ the results can be used equally well in either \LaTeX{} or \PDFLaTeX{}.
+\item You liked \pictex{} but don't have enough memory or time? Look
+ at the late Eitan Gurari's \Package{dratex}: it is just as powerful,
+ but is an entirely new implementation which is not as hard on
+ memory, is much more readable and is (admittedly sparsely) documented at
+ \url{http://www.cse.ohio-state.edu/~gurari/tpf/html/README.html},
+ as well as in the author's book ``TeX and LATeX: Drawing and
+ Literate Programming'', which remains available from on-line
+ booksellers.
+\end{itemize}
+
+In addition, there are several means of generating code for your
+graphics application (\ProgName{asymptote}, \ProgName{gnuplot} and
+\MP{}, at least) in-line in your document, and then have them
+processed in a command spawned from your \AllTeX{} run. For details,
+see \Qref{question}{Q-inlgrphapp}.
+\begin{ctanrefs}
+\item[dratex.sty]\CTANref{dratex}
+\item[epic.sty]\CTANref{epic}
+\item[eepic.sty]\CTANref{eepic}
+\item[eepicemu.sty]\CTANref{eepic}
+\item[mfpic]\CTANref{mfpic}
+\item[preview.sty]\CTANref{preview}
+\item[pspicture.sty]\CTANref{pspicture}
+\item[pst-pdf.sty]\CTANref{pst-pdf}
+\item[pgf.sty]\CTANref{pgf}
+\item[pict2e.sty]\CTANref{pict2e}
+\item[pictex.sty]\CTANref{pictex}
+\item[picture.sty]Distributed as part of \CTANref{oberdiek}[picture]
+\item[pstricks]\CTANref{pstricks}
+\item[tikz.sty]Distributed as part of \CTANref{pgf}
+\end{ctanrefs}
+\LastEdit{2012-10-19}
+
+\Question[Q-inlgrphapp]{In-line source for graphics applications}
+
+Some of the free-standing graphics applications may also be used
+(effectively) in-line in \latex{} documents; examples are
+\begin{booklist}
+\item[asymptote]The package \Package{asymptote} (provided in the
+ \ProgName{asymptote} distribution) defines an environment
+ \environment{asy} which arranges that its contents are available for
+ processing, and will therefore be typeset (after ``enough'' runs, in
+ the `usual' \latex{} way).
+
+ Basically, you write
+ \begin{quote}
+ \cmdinvoke{begin}{asy}\\
+ \latexhtml{\hspace*{1em}}{~~}\texttt{\meta{asymptote code}}\\
+ \cmdinvoke{end}{asy}
+ \end{quote}
+ and then execute
+\begin{quote}
+\begin{verbatim}
+latex document
+asy document-*.asy
+latex document
+\end{verbatim}
+\end{quote}
+\item[egplot]Allows you to incorporate \ProgName{GNUplot}
+ instructions in your document, for processing outside of \latex{}.
+ The package provides commands that enable the user to do calculation
+ in \ProgName{GNUplot}, feeding the results into the diagram
+ to be drawn.
+\item[gmp]Allows you to include the source of MetaPost diagrams, with
+ parameters of the diagram passed from the environment call.
+\item[emp]An earlier package providing facilities similar to those of
+ \Package{gmp} (\Package{gmp}'s author hopes that his package will
+ support the facilities \Package{emp}, which he believes is in need
+ of update.)
+\item[mpgraphics]Again, allows you to program parameters of \MP{}
+ diagrams from your \latex{} document, including the preamble details
+ of the \latex{} code in any recursive call from \MP{}.
+\end{booklist}
+In all cases (other than \Package{asymptote}), these packages require
+that you can % ! line break
+\Qref*{run external programs from within your document}{Q-spawnprog}.
+\begin{ctanrefs}
+\item[asymptote.sty]\CTANref{asymptote}
+\item[egplot.sty]\CTANref{egplot}
+\item[emp.sty]\CTANref{emp}
+\item[gmp.sty]\CTANref{gmp}
+\item[mpgraphics.sty]\CTANref{mpgraphics}
+\end{ctanrefs}
+\LastEdit*{2011-03-16}
+
+\Question[Q-drawFeyn]{Drawing Feynman diagrams in \LaTeX{}}
+
+Michael Levine's \Package{feynman} bundle for drawing the diagrams in
+\LaTeXo{} is still available.
+
+Thorsten Ohl's \Package{feynmf} is designed for use with current
+\LaTeX{}, and works in
+combination with \MF{} (or, in its \Package{feynmp} incarnation, with
+\MP{}). The \ProgName{feynmf} or
+\ProgName{feynmp} package reads a description of the diagram written
+in \TeX{}, and writes out code. \MF{} (or \MP{}) can then produce a
+font (or \PS{} file) for use in a subsequent \LaTeX{} run. For
+new users, who have access to \MP{}, the \PS{} version is
+probably the better route, for document portability and other reasons.
+% checked rf 2001/03/22
+
+Jos Vermaseren's \Package{axodraw} is mentioned as an alternative in
+the documentation of \Package{feynmf}, but it is written entirely in
+terms of \ProgName{dvips} \csx{special} commands, and is thus rather
+imperfectly portable.
+
+An alternative approach is implemented by Norman Gray's \Package{feyn}
+package. Rather than creating complete diagrams as postscript images,
+\Package{feyn} provides a font (in a variety of sizes) containing
+fragments, which you can compose to produce complete diagrams. It
+offers fairly simple diagrams which look good in equations, rather
+than complicated ones more suitable for display in figures.
+\begin{ctanrefs}
+\item[axodraw]\CTANref{axodraw}
+\item[feyn \nothtml{\rmfamily}font bundle]\CTANref{feyn}
+\item[feynman bundle]\CTANref{feynman}
+\item[feynmf/feynmp bundle]\CTANref{feynmf}
+\end{ctanrefs}
+
+\Question[Q-labelfig]{Labelling graphics}
+
+``Technical'' graphics (such as graphs and diagrams) are often
+labelled with quite complex mathematical expressions: there are few
+drawing or graphing tools that can do such things (the honourable
+exception being \MP{}, which allows you to program the labels, in
+\AllTeX{}, in the middle of specifying your graphic).
+
+Placing `labels' on graphics produced by all those \emph{other} tools is
+what we discuss here. (Note that the term ``label'' should be
+liberally interpreted; many of the techniques \emph{were} designed for
+use when applying labels to figures, but they may be used equally well
+to draw funny faces on a figure \dots{} or anything.
+
+The time-honoured \Package{psfrag} package can help, if your image is
+included as an (encapsulated) \PS{} file. Place an unique
+text in your graphic, using the normal text features of your tool, and
+you can ask \Package{psfrag} to replace the text with arbitrary
+\AllTeX{} material. \Package{Psfrag}'s ``operative'' command is
+\cmdinvoke{psfrag}{\emph{Orig text}}{\emph{Repl text}}, which
+instructs the system to replace the original (``unique'') text with
+the \TeX{}-typeset replacement text. Optional arguments permit
+adjustment of position, scale and rotation; full details may be found
+in \File{pfgguide} in the distribution.
+
+Since \Package{psfrag} works in terms of (encapsulated) \PS{} files,
+it needs extra work for use with \PDFLaTeX{}. Two techniques are
+available, using \Qref*{\Package{pst-pdf} package}{Q-pdftexgraphics}
+in a mode designed to do this work; and using \Package{pdfrack}.
+
+The \Qref*{\Package{Pst-pdf} package}{Q-pdftexgraphics} can support
+this ``extra work'' usage. In fact, the \Package{pst-pdf} support
+package \Package{auto-pst-pdf} offers a configuration setting
+precisely for use with \Package{psfrag}.
+
+If you have the `right' environment (see below), you could try the
+\Package{pdfrack} script bundle. The script aims to cut each figure
+out of your source, using it to produce a small \latex{} file with
+nothing but the figure inclusion commands. Each of these figure files
+is then processed to \PS{}, compiled using the \csx{psfrag} commands,
+and the resulting output converted to \acro{PDF} again.
+
+\Package{Pdfrack} is written to use the Unix Bourne shell (or
+equivalent); thus your environment needs to be a Unix-based system, or
+some equivalent such as \ProgName{cygwin} under windows. (What is
+more, \Package{pdfrack}'s author is rather disparaging about his
+package; the present author has never tried it.)
+
+The \Package{psfragx} package goes one step further than
+\Package{psfrag}: it provides a means whereby you can put the
+\Package{psfrag} commands into the preamble of your \acro{EPS} file
+itself. \Package{Psfrag} has such a command itself, but deprecates
+it; \Package{psfragx} has cleaned up the facility, and provides a
+script \ProgName{laprint} for use with \ProgName{Matlab} to produce
+appropriately tagged output. (In principle, other graphics
+applications could provide a similar facility, but apparently none does.)
+
+\ProgName{Emacs} users may find the embedded editor \ProgName{iTe} a
+useful tool for placing labels: it's a \AllTeX{}-oriented graphical
+editor written in \ProgName{Emacs Lisp}. You create
+\environment{iteblock} environments containing graphics and text, and
+may then invoke \ProgName{iTe} to arrange the elements relative to one
+another.
+
+Another useful approach is \Package{overpic}, which overlays a
+\environment{picture} environment on a graphic included by use of
+\csx{includegraphics}. This treatment lends itself to ready placement
+of texts and the like on top of a graphic. The package can draw a
+grid for planning your ``attack''; the distribution comes with simple
+examples.
+
+The \Package{lpic} package is somewhat similar to \Package{overpic};
+it defines an environment \environment{lpic} (which places your
+graphic for you): within the environment you may use the command
+\csx{lbl} to position \latex{} material at appropriate places over the
+graphic.
+
+\Package{Pinlabel} is another package whose author thought in the same
+sort of way as that of \Package{overpic}; the documentation explains
+in detail how to plan your `labelling attack'~--- in this case by
+loading your figure into a viewer and taking measurements from it.
+(The package discusses direct use of
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}} as well as
+customised viewers such as
+\href{http://www.ghostgum.com.au/}{\ProgName{gsview}} or
+\ProgName{gv}.)
+
+\Package{Pstricks} can of course do everything
+that \Package{overpic}, \Package{lpic} or \Package{pinlabel}
+can, with all the flexibility of \PS{} programming that it offers.
+This capability is exemplified by the \Package{pst-layout} package,
+which seems to be a superset of both \Package{overpic} and
+\Package{lpic}.
+
+Similarly, \Package{pgf/TikZ} has all the power needed, but no
+explicit package has been released.
+
+The \Package{pstricks} web site has a page with several % ! line break
+\href{http://pstricks.tug.org/main.cgi?file=Examples/overlay}{examples of labelling}
+which will get you started; if \Package{pstricks} is % ! line break
+\Qref*{an option for you}{Q-drawing}, this route is worth a try.
+
+The confident user may, of course, do the whole job in a picture
+environment which itself includes the graphic. I would recommend
+\Package{overpic} or the \Package{pstricks} approach, but such things
+are plainly little more than a convenience over what is achievable
+with the do-it-yourself approach.
+\begin{ctanrefs}
+\item[auto-pst-pdf.sty]\CTANref{auto-pst-pdf}
+\item[gv]\CTANref{gv}
+\item[iTe]\CTANref{ite}
+\item[laprint]Distributed with \CTANref{psfragx}
+\item[lpic.sty]\CTANref{lpic}
+\item[overpic.sty]\CTANref{overpic}
+\item[pdfrack]\CTANref{pdfrack}
+\item[pinlabel.sty]\CTANref{pinlabel}
+\item[pgf.sty]\CTANref{pgf}
+\item[psfrag.sty]\CTANref{psfrag}
+\item[psfragx.sty]\CTANref{psfragx}
+\item[pstricks.sty]\CTANref{pstricks}
+\item[pst-layout.sty]\CTANref{pst-layout}
+\item[pst-pdf.sty]\CTANref{pst-pdf}
+\end{ctanrefs}
+\LastEdit{2013-06-03}
diff --git a/obsolete/help/texfaq/faq-how-do-i.tex b/obsolete/help/texfaq/faq-how-do-i.tex
new file mode 100644
index 0000000000..ac61e60ef2
--- /dev/null
+++ b/obsolete/help/texfaq/faq-how-do-i.tex
@@ -0,0 +1,4134 @@
+% $Id: faq-how-do-i.tex,v 1.47 2014/01/28 18:17:23 rf10 Exp $
+
+\section{How do I do\dots{}?}
+
+\subsection{Mathematics}
+
+\Question[Q-proof]{Proof environment}
+
+It was long thought impossible to make a \environment{proof}
+environment which automatically includes an `end-of-proof' symbol.
+Some proofs end in displayed maths; others do not. If the input file
+contains % ! line break
+\texttt{...\csx{]} }\cmdinvoke{end}{proof} then \LaTeX{} finishes off
+the displayed maths and gets ready for a new line before it reads any
+instructions connected with ending the proof, so the code is very
+tricky. You \emph{can} insert the symbol by hand, but the
+(apparently) original `automatic' solution came with Paul Taylor's
+\Package{QED}.
+
+Nowadays, the \Package{ntheorem} package now solves the problem for
+\LaTeX{} users: it provides an automatic way of signalling
+the end of a proof.
+
+The \AMSLaTeX{} package \Package{amsthm} also provides a
+\environment{proof} environment that does the job; though you need to
+insert a \csx{qedhere} command if the proof ends with a displayed
+equation:
+\begin{quote}
+\begin{verbatim}
+\begin{proof}
+ text...
+ \begin{equation*}
+ maths... \tag*{\qedhere}
+ \end{equation*}
+\end{proof}
+\end{verbatim}
+\end{quote}
+The \cmdinvoke{tag*}{\csx{qedhere}} construction may be used in any of
+\AMSLaTeX{}'s numbering environments.
+\begin{ctanrefs}
+\item[amsthm.sty]Distributed as part of the \AMSLaTeX{} bundle
+ \CTANref{amslatex}[amsthm]
+\item[ntheorem.sty]\CTANref{ntheorem}
+\end{ctanrefs}
+\LastEdit{2011-03-09}
+
+\Question[Q-theoremfmt]{Theorem bodies printed in a roman font}
+
+If you want to take advantage of the powerful \csx{newtheorem} command
+without the constraint that the contents of the theorem is in a sloped
+font (for example, you may want to use it to create remarks, examples, proofs,
+\dots{}) then you can use the \AMSLaTeX{} \Package{amsthm} package
+(which now supersedes the \Package{theorem} package previously
+recommended in these answers).
+Alternatively, the following sets up an environment
+\environment{remark} whose content is in the default roman font.
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\newtheorem{preremark}{Remark}
+\newenvironment{remark}%
+ {\begin{preremark}\upshape}%
+ {\end{preremark}}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\newtheorem{preremark}{Remark}
+\newenvironment{remark}%
+ {\begin{preremark}\upshape}{\end{preremark}}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+The \Package{ntheorem} package provides control of the fonts used by
+theorems, directly.
+\begin{ctanrefs}
+\item[amsthm.sty]Distributed as part of \CTANref{amslatex}[amsthm]
+\item[ntheorem.sty]\CTANref{ntheorem}
+\item[theorem.sty]Distributed as part of \CTANref{2etools}[theorem]
+\end{ctanrefs}
+
+\Question[Q-newfunction]{Defining a new log-like function in \LaTeX{}}
+
+Use the \csx{mathop} command, as in:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\diag}{\mathop{\mathrm{diag}}}
+\end{verbatim}
+\end{quote}
+
+Subscripts and superscripts on \csx{diag} will be placed below and
+above the function name, as they are on
+\csx{lim}. If you want your subscripts and superscripts always placed
+to the right, do:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\newcommand{\diag}%
+ {\mathop{\mathrm{diag}}\nolimits}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\newcommand{\diag}{\mathop{\mathrm{diag}}\nolimits}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+
+\AMSLaTeX{} (in its \Package{amsopn} package, which is automatically
+loaded by \Package{amsmath}) provides a command
+\csx{DeclareMathOperator} that takes does the same job as the first
+definition above. To create our original \csx{diag} command, one would
+say:
+\begin{quote}
+\begin{verbatim}
+\DeclareMathOperator{\diag}{diag}
+\end{verbatim}
+\end{quote}
+\csx{DeclareMathOperator*} declares the operator always to have its
+sub- and superscripts in the % ! line break
+``\Qref*{\csx{limits} position}{Q-limits}''.
+
+The \Package{amsopn} command \csx{operatorname} allows you to
+introduce \emph{ad hoc} operators into your mathematics, so
+\begin{quote}
+ \csx{[} \cmdinvoke{operatorname}{foo}\texttt{(bar)} \csx{]}
+\end{quote}
+typesets the same as
+\begin{quote}
+\begin{verbatim}
+\DeclareMathOperator{\foo}{foo}
+...
+\[ \foo(bar) \]
+\end{verbatim}
+\end{quote}
+As with \csx{DeclareMathOperator} there's a starred version
+\csx{operatorname*} for sub- and superscripts in the limits position.
+
+(It should be noted that ``log-like'' was reportedly a \emph{joke} on
+Lamport's part; it is of course clear what was meant.)
+\begin{ctanrefs}
+\item[amsopn.sty]Distributed as part of the \AMSLaTeX{} distribution
+ \CTANref{amslatex}[amsopn]
+\end{ctanrefs}
+
+\Question[Q-braket]{Set specifications and Dirac brackets}
+
+One of the few glaring omissions from \TeX{}'s mathematical
+typesetting capabilities is a means of setting separators in the
+middle of mathematical expressions. \TeX{} provides primitives called
+\csx{left} and \csx{right}, which can be used to modify brackets (of
+whatever sort) around a mathematical expression, as in:
+% beware line wrap
+\csx{left(}\texttt{ <expression> }\csx{right)}~--- the size of the
+parentheses is matched to the vertical extent of the expression.
+
+However, in all sorts of mathematical enterprises one may find oneself
+needing a \csx{middle} command, to be used in expressions like
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\left\{ x \in \mathbb{N} \middle| x \mbox{ even} \right\}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\left\{ x\in \mathbb{N} \middle|
+ x \mbox{ even} \right\}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+to specify the set of even natural numbers. The % ! line break
+\Qref*{\eTeX{} system}{Q-etex}
+defines just such a command, but users of Knuth's original need some
+support. Donald Arseneau's \Package{braket} package provides commands
+for set specifications (as above) and for Dirac brackets (and bras and
+kets). The package uses the \eTeX{} built-in command if it finds
+itself running under \eTeX{}.
+\begin{ctanrefs}
+\item[braket.sty]\CTANref{braket}
+\end{ctanrefs}
+
+\Question[Q-cancellation]{Cancelling terms in maths expressions}
+
+A technique used when explaining the behaviour of expressions or
+equations (often for pedagogical purposes). The \Package{cancel}
+package provides several variants of cancellation marks
+(``\texttt{\textbackslash }'', ``\texttt{/}'' and ``\texttt{X}''), and
+a means of cancelling `to' a particular value.
+
+Documentation of \Package{cancel} is in the package file.
+\begin{ctanrefs}
+\item[cancel.sty]\CTANref{cancel}
+\end{ctanrefs}
+
+\Question[Q-mathsize]{Adjusting maths font sizes}
+
+In \plaintex{}, when you introduce a new font size you must also
+declare what size fonts are to be used in mathematics with it. This
+is done by declaring \csx{textfont}, \csx{scriptfont} and
+\csx{scriptscriptfont} for the maths families you're using; all such
+things are described in chapter~17 of the % line wrap!
+\Qref*{\TeX{}book}{Q-tex-books} and in other books and
+\Qref*{tutorials}{Q-man-tex} that discuss \plaintex{} in sufficient
+detail.
+
+In \LaTeX{}, of course, all this stuff is automated: there is a scheme
+that, for each (text) font size, determines what maths font sizes are
+to be used. The scheme first checks a set of ``known'' text sizes,
+for each of which maths sizes are declared in advance. If the text
+size isn't ``known'', the script- and scriptscriptfont sizes are
+calculated as fixed ratios of the tex font size. (The values used are
+\csx{defaultscriptratio}\ensuremath{=}0.7, and
+\csx{defaultscriptscriptratio}\ensuremath{=}0.5.)
+
+The fixed-ratio formula is capable of producing inconvenient results
+(particularly if you are using fonts which \LaTeX{} believes are only
+available in a fixed set of sizes). You may also want to replace
+\LaTeX{}'s ideas altogether, for example by setting maths noticeably
+larger or smaller than its surrounding text. For this purpose, the
+\LaTeX{} command
+\cmdinvoke{DeclareMathSizes}{\meta{tfs}}{\meta{ts}}{\meta{ss}}{\meta{sss}}
+may be used (this is the same command that \LaTeX{} itself uses to
+define its own set of sizes). This establishes (or re-establishes)
+the maths font sizes to be used when the surrounding text font size is
+\texttt{\meta{tfs}}; (\texttt{\meta{ts}} being the size used for
+\csx{textfont}, \texttt{\meta{ss}} for \csx{scriptfont} and
+\texttt{\meta{sss}} for \csx{scriptscriptfont}).
+
+For example, you might want to use a font with a smaller body height
+than Computer Modern, but still prefer \acro{CM} math to any of the
+alternatives. In this case, you might use:
+\begin{quote}
+\begin{verbatim}
+\DeclareMathSizes{10}{9}{7}{5}
+\end{verbatim}
+\end{quote}
+to get 9pt maths when the surrounding body text is (nominal) 10pt.
+
+\csx{DeclareMathSizes} may only be used in the preamble of the
+document: only one association is available for each text font size
+for the whole document. The default settings are specified in
+\File{fontdef.dtx} in the latex distribution, and are compiled into
+\File{fontmath.ltx}; the arguments to the command are just numbers
+(`\texttt{pt}' is assumed), but some of them are written using
+\Qref*{\LaTeX{} abbreviations}{Q-ltxabbrv} for standard font sizes.
+Beware simply copying (parts of) the \LaTeX{} definitions~--- since
+they contain those internal abbreviations, they need to be treated as
+\Qref{internal commands}{Q-atsigns}.
+\begin{ctanrefs}
+\item[fontdef.dtx]\CTANref{fontdef}
+\item[fontmath.ltx]\CTANref{fontmath}
+\end{ctanrefs}
+\LastEdit{2011-06-01}
+
+\Question[Q-mathlips]{Ellipses}
+\keywords{\csx{dots} \csx{cdots} \csx{vdots} \csx{ddots}}
+
+Ellipses are commonly required, and \LaTeX{} natively supplies a fair
+range (\csx{dots}, \csx{cdots}, \csx{vdots} and \csx{ddots}). By using
+the \Package{graphics} package, one can change the slope of the
+\csx{ddots} command, as in
+\begin{quote}
+\begin{verbatim}
+$ ... \reflectbox{$\ddots$} ... $
+\end{verbatim}
+\end{quote}
+While this works, it is not a recommended way of achieving the desired
+result (see below). Moreover, \LaTeX{}'s range is not adequate to
+everyone's requirements, and at least three packages provide
+extensions to the set.
+
+The \AMSLaTeX{} bundle provides a range of ``semantically-named''
+ellipses, for use in different situations: \csx{dotsb} for use between
+pairs of binary operators, \csx{dotsc} for use between pairs of commas,
+and so on.
+
+The \Package{yhmath} package defines an \csx{adots} command, which is
+the analogue of \csx{ddots}, sloping forwards rather than backwards.
+The \Package{yhmath} package comes with a rather interesting font that
+extends the standard \Package{cmex}; details are in the documentation.
+
+The \Package{mathdots} package (besides fixing up the behaviour of
+\AllTeX{} \csx{ddots} and \csx{vdots} when the font size changes)
+provides an ``inverse diagonal'' ellipsis \csx{iddots} (doing the same
+job as \Package{yhmath}'s \csx{adots}, but better).
+
+Documentation of \Package{yhmath} appears, processed, in the
+distribution (thus saving you the bother of installing the package
+before being able to read the documentation). Documentation of
+\Package{mathdots} appears at the end the package file itself.
+\begin{ctanrefs}
+\item[amslatex]\CTANref{amslatex}
+\item[graphics.sty]Part of the \CTANref{graphics} bundle
+\item[mathdots.sty]\CTANref{mathdots}
+\item[yhmath]\CTANref{yhmath}
+\end{ctanrefs}
+\LastEdit{2013-08-21}
+
+\Question[Q-limits]{Sub- and superscript positioning for operators}
+
+The commonest hand-written style for expressions is to place the limit
+expressions on operators such as \csx{sum} and \csx{int} physically
+above and below the operator. In \AllTeX{}, we write these limit
+expressions using sub- and superscripts applied to the operator, but
+they don't always appear in the ``handwritten'' way in \TeX{}'s
+output.
+
+The reason is, that when an expression appears in non-display maths,
+in running text (and is therefore in \TeX{} \csx{textstyle}), placing
+the limits thus could lead to ragged line spacing (and hence
+difficult-to-read text). It is therefore common (in \csx{textstyle})
+to place the limits as one would sub- and superscripts of variables.
+
+This is not universally satisfactory, so the primitive \csx{limits} is
+provided:
+\begin{quote}
+\begin{verbatim}
+$\sum\limits_{n=1}^{m} ...$
+\end{verbatim}
+\end{quote}
+which will place the limits right above and below the symbol (and be
+blowed to the typography\dots{}).
+
+Contrariwise, you may wish to change the arrangement of the limits
+when in \csx{displaystyle}. For this purpose, there's a corresponding
+\csx{nolimits}:
+\begin{quote}
+\begin{verbatim}
+\[\sum\nolimits_{n=1}^{m} ...\]
+\end{verbatim}
+\end{quote}
+which will place the limits as they would be in \csx{textstyle}.
+
+Alternatively, one can manipulate the
+\csx{textstyle}/\csx{displaystyle} state of the mathematics. To get
+``\csx{limits} placement'' in inline maths,
+\begin{quote}
+\begin{verbatim}
+$\displaystyle\sum_{n=1}^{m} ...$
+\end{verbatim}
+\end{quote}
+and for ``\csx{nolimits} placement'' in display maths,
+\csx{nolimits}:
+\begin{quote}
+\begin{verbatim}
+\[\textstyle\sum_{n=1}^{m} ...\]
+\end{verbatim}
+\end{quote}
+will serve. Either of these forms may have effects other than on the
+operator you're considering, but there are still those who prefer this
+formulation.
+
+Remember, if you're % ! line break
+\Qref*{declaring a special operator of your own}{Q-newfunction}, the
+\AMSLaTeX{} functions (that you ought to be using) allow you to choose
+how limits are displayed, at definition time.
+
+(Note that the macro \csx{int} normally has \csx{nolimits} built in to
+its definition. There is an example in the \TeX{}book to show how odd
+\csx{int}\csx{limits} looks when typeset.)
+
+\Question[Q-mathstext]{Text inside maths}
+
+When we type maths in \AllTeX{}, the letters from which we make up
+ordinary text assume a special significance: they all become
+single-letter variable names. The letters appear in italics, but it's
+not the same sort of italics that you see when you're typing ordinary
+text: a run of maths letters (for example ``here'') looks oddly
+``lumpy'' when compared with the word written in italic text. The
+difference is that the italic text is kerned to make the letters fit
+well together, whereas the maths is set to look as if you're
+multiplying \emph{h} by \emph{e} by \emph{r} by \emph{e}. The other
+way things are odd in \TeX{} maths typing is that spaces are ignored:
+at best we can write single words in this oddly lumpy font.
+
+So, if we're going to have good-looking text in amongst maths we're
+writing, we have to take special precautions. If you're using
+\LaTeX{}, the following should help.
+
+The simplest is to use \csx{mbox} or \csx{textrm}:
+\begin{quote}
+\begin{verbatim}
+$e = mc^2 \mbox{here we go again}$
+\end{verbatim}
+\end{quote}
+The problem is that, with either, the size of the text remains firmly
+at the surrounding text size, so that
+\begin{quote}
+\begin{verbatim}
+$z = a_{\mbox{other end}}$
+\end{verbatim}
+\end{quote}
+can look quite painfully wrong.
+
+The other simple technique, \csx{textrm}, is no more promising:
+\begin{quote}
+\begin{verbatim}
+$z = a_{\textrm{other end}}$
+\end{verbatim}
+\end{quote}
+does the same as \csx{mbox}, by default.
+
+(The maths-mode instance of your roman font (\csx{mathrm}) gets the
+size right, but since it's intended for use in maths, its spaces get
+ignored~--- use \csx{mathrm} for upright roman alphabetic variable
+names, but not otherwise.)
+
+You can correct these problems with size selectors in the text, as:
+\begin{quote}
+\begin{verbatim}
+$z = a_{\mbox{\scriptsize other end}}$
+\end{verbatim}
+\end{quote}
+which works if your surrounding text is at default document size, but
+gives you the wrong size otherwise.
+
+The \csx{mbox} short cut is (just about) \acro{OK} for ``occasional''
+use, but serious mathematics calls for a technique that
+relieves the typist of the sort of thought required. As usual, the
+\AMSLaTeX{} system provides what's necessary~--- the \csx{text}
+command. (The command is actually provided by the \Package{amstext}
+package, but the ``global'' \Package{amsmath} package loads it.) Thus
+anyone using \AMSLaTeX{} proper has the command available, so even
+this author can write:
+\begin{quote}
+\begin{verbatim}
+\usepackage{amsmath}
+...
+$z = a_{\text{other end}}$
+\end{verbatim}
+\end{quote}
+and the text will be at the right size, and in the same font as
+surrounding text. (The \Package{amstext} package also puts
+\csx{textrm} to rights~--- but \csx{text} is easier to type than
+\csx{textrm}!)
+
+\AMSLaTeX{} also makes provision for interpolated comments in the
+middle of one of its multi-line display structures, through the
+\csx{intertext} command. For example:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\begin{align}
+ A_1&=N_0(\lambda;\Omega')-
+ \phi(\lambda;\Omega'),\\
+ A_2&=\phi(\lambda;\Omega')-
+ \phi(\lambda;\Omega),\\
+\intertext{and}
+ A_3&=\mathcal{N}(\lambda;\omega).
+\end{align}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\begin{align}
+ A_1&=N_0(\lambda;\Omega')-\phi(\lambda;\Omega'),\\
+ A_2&=\phi(\lambda;\Omega')-\phi(\lambda;\Omega),\\
+ \intertext{and} A_3&=\mathcal{N}(\lambda;\omega).
+\end{align}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+places the text ``and'' on a separate line before the last line of the
+display. If the interjected text is short, or the equations
+themselves are light-weight, you may find that \csx{intertext} leaves
+too much space. Slightly more modest is the \csx{shortintertext}
+command from the \Package{mathtools} package:
+\begin{quote}
+\begin{verbatim}
+\begin{align}
+ a =& b
+ \shortintertext{or}
+ c =& b
+\end{align}
+\end{verbatim}
+\end{quote}
+To have the text on the same line as the second equation, one can use
+the \environment{flalign} environment (from \Package{amsmath})
+with lots of dummy equations (represented by the double \texttt{\&}
+signs):
+\begin{quote}
+\begin{verbatim}
+\begin{flalign}
+ && a =& b && \\
+ \text{or} && c =& b &&
+\end{flalign}
+\end{verbatim}
+\end{quote}
+\begin{ctanrefs}
+\item[amsmath.sty]Distributed as part of \AMSLaTeX{}
+ \CTANref{amslatex}[amsmath]
+\item[amstext.sty]Distributed as part of \AMSLaTeX{}
+ \CTANref{amslatex}[amstext]
+\item[mathtools.sty]Distributed as part of the \Package{mh} bundle
+ \CTANref{mh}[mathtools]
+\end{ctanrefs}
+
+\Question[Q-reuseq]{Re-using an equation}
+
+To repeat an existing equation, one wants not only to have the same
+mathematics in it, one also wants to re-use the original label it had.
+The \Package{amsmath} package comes to our help, here:
+\begin{quote}
+\begin{verbatim}
+\usepackage{amsmath}
+...
+\begin{equation}
+ a=b
+ \label{eq1}
+\end{equation}
+...
+Remember that
+\begin{equation}
+ a=b
+ \tag{\ref{eq1}}
+\end{equation}
+\end{verbatim}
+\end{quote}
+Here, the second instance of \ensuremath{a=b} will be
+typeset with a copy, made by the \csx{tag} command, of the label of the
+first instance.
+\begin{ctanrefs}
+\item[amsmath.sty]Distributed as part of \AMSLaTeX{}
+ \CTANref{amslatex}[amsmath]
+\end{ctanrefs}
+
+\Question[Q-brkinline]{Line-breaking in in-line maths}
+
+\TeX{}, by default, allows you to split a mathematical expression at
+the end of the line; it allows breaks at relational operators (like
+``='', ``\textless'', etc.) and at binary operators (like ``+'',
+``-'', etc.). In the case of large expressions, this can sometimes be
+a life-saver.
+
+However, in the case of simple expressions like \ensuremath{a=b+c}, a
+break can be really disturbing to the reader, and one would like to
+avoid it.
+
+Fortunately, these breaks are controllable: there are ``penalties''
+associated with each type of operator: the penalty
+ says how
+undesirable a break at each point is. Default values are:
+\begin{quote}
+\begin{verbatim}
+\relpenalty = 500
+\binoppenalty = 700
+\end{verbatim}
+\end{quote}
+You make the break progressively less attractive by increasing these
+values. You can actually forbid all breaks, everywhere, by:
+\begin{quote}
+\begin{verbatim}
+\relpenalty = 10000
+\binoppenalty = 10000
+\end{verbatim}
+\end{quote}
+If you want just to prevent breaks in a single expression, write:
+\begin{quote}
+\begin{verbatim}
+{%
+ \relpenalty = 10000
+ \binoppenalty = 10000
+ $a=b+c$
+}
+\end{verbatim}
+\end{quote}
+and the original values will remain undisturbed outside the braces.
+This is tedious: there is often value in an alternative approach,
+in which you say which parts of the expression may not break whatever
+happens, and fortunately this is surprisingly easy. Suppose we want
+to defer a break until after the equality, we could write:
+\begin{quote}
+\begin{verbatim}
+${a+b+c+d} = z+y+x+w$
+\end{verbatim}
+\end{quote}
+The braces say ``treat this subformula as one atom'' and (in \TeX{} at
+least) atoms don't get split: not a \csx{binoppenalty} change in sight.
+
+\Question[Q-mathonlyref]{Numbers for referenced equations only}
+
+There are those who consider that papers look untidy with numbers on
+every equation; there is also a school of thought that claims that
+there should be numbers everywhere, in case some reader wants to make
+reference an equation to which the author made no cross-reference.
+
+If you hold to the ``only cross-referenced'' school of thought, you
+can (using the \csx{nonumber} command on the relevant equations, or by
+using the \AMSLaTeX{} unnumbered environments such as
+\environment{equation*}) mark those of your equations to which you
+make no reference. In a long or complex paper, this procedure could
+well become deeply tedious.
+
+Fortunately, help is at hand: the \Package{mh} bundle's
+\Package{mathtools} package offers a `\pkgoption{showonlyrefs}'
+switch through its \csx{mathtoolsset} command; when that's in
+operation, only those equations to which you make reference will be
+numbered in the final output. See the package's documentation for
+details of how to make references when the switch is in effect.
+\begin{ctanrefs}
+\item[mathtools.sty]Distributed as part of \CTANref{mh}[mathtools]
+\end{ctanrefs}
+
+\Question[Q-subheight]{Even subscript height}
+
+Other things being equal, \TeX{} will aim to position subscripts and
+superscripts in places that ``look good''. Unfortunately, it only
+does this for the sub- and superscripts of each atom at a time, so if
+you have
+\begin{quote}
+\begin{verbatim}
+$ X^{1}_{2} X_{2} $
+\end{verbatim}
+\end{quote}
+the second subscript will appear higher, since the first has moved
+down to avoid the superscript;
+the effect can be noticeably distracting:
+\begin{quote}
+\begin{typesetversion}
+ $ X^{1}_{2} X_{2} $
+\end{typesetversion}
+\begin{htmlversion}
+ \includegraphics{faq-images1.png}
+\end{htmlversion}
+\end{quote}
+
+You can avoid the problem, for a single instance, by
+\begin{quote}
+\begin{verbatim}
+$ X^{1}_{2} X^{}_{2} $
+\end{verbatim}
+\end{quote}
+here, the dummy superscript has the requisite ``pushing down'' effect:
+\begin{quote}
+\begin{typesetversion}
+ $ X^{1}_{2} X^{}_{2} $
+\end{typesetversion}
+\begin{htmlversion}
+ \includegraphics{faq-images2.png}
+\end{htmlversion}
+\end{quote}
+
+While this technique does what is necessary, it is tedious and
+potentially error-prone. So, for more than one or two equations
+in a document, the \LaTeX{} user is advised to use the
+\Package{subdepth} package, which forces the lower position for all
+subscripts.
+\begin{ctanrefs}
+\item[subdepth.sty]\CTANref{subdepth}
+\end{ctanrefs}
+
+\subsection{Lists}
+
+\Question[Q-enumerate]{Fancy enumeration lists}
+
+The \Package{enumerate} package allows you to control the display of
+the enumeration counter. The package adds an optional parameter to
+the \environment{enumerate} environment, which is used to specify the
+layout of the labels. The layout parameter contains an enumeration
+type (`\texttt{1}' for arabic numerals, `\texttt{a}' or `\texttt{A}'
+for alphabetic enumeration, and `\texttt{i}' or `\texttt{I}' for Roman
+numerals), and things to act as decoration of the enumeration. So,
+for example
+\begin{quote}
+\begin{verbatim}
+\usepackage{enumerate}
+...
+\begin{enumerate}[(a)]
+\item ... ...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+starts a list whose labels run (a), (b), (c), \dots{}; while
+\begin{quote}
+\begin{verbatim}
+\usepackage{enumerate}
+...
+\begin{enumerate}[I/]
+\item ... ...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+starts a list whose labels run I/, II/, III/, \dots{}
+
+The \Package{paralist} package, whose primary purpose is % beware line break
+\Qref*{compaction of lists}{Q-complist}, provides the same facilities
+for its \environment{enumerate}-like environments.
+
+If you need non-stereotyped designs, the \Package{enumitem} package
+gives you most of the flexibility you might want to design your own.
+The silly roman example above could be achieved by:
+\begin{quote}
+\begin{verbatim}
+\usepackage{enumitem}
+...
+\begin{enumerate}[label=\Roman{*}/]
+\item ... ...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+Note that the `\texttt{*}' in the key value stands for the list
+counter at this level. You can also manipulate the format of
+references to list item labels:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\usepackage{enumitem}
+...
+\begin{enumerate}[label=\Roman{*}/,
+ ref=(\roman{*})]
+\item ... ...
+\end{enumerate}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\usepackage{enumitem}
+...
+\begin{enumerate}[label=\Roman{*}/, ref=(\roman{*})]
+\item ... ...
+\end{enumerate}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+to make references to the list items format appear as (i), (ii),
+(iii), etc.
+
+The \Class{memoir} class includes functions that match those in the
+\Package{enumerate} package, and has similar functionality for
+\environment{itemize} lists.
+%% It is possible (if not particularly convenient) to do the same thing
+%% yourself. Suppose you want your top-level \environment{enumerate}s to
+%% be labelled I/, II/, III/, \dots{}, then give these commands:
+%% \begin{verbatim}
+%% \renewcommand{\theenumi}{\Roman{enumi}}
+%% \renewcommand{\labelenumi}{\theenumi/}
+%% \end{verbatim}
+%% The possible styles of numbering are given in Section~6.3 of Lamport's
+%% book (see \Qref[question]{\TeX{}-related books}{Q-book-lists}). Both
+%% \csx{theenumi} and \csx{labelenumi} must be changed, since
+%% \csx{theenumi} is used in cross-references to the list.
+%%
+%% For lower level \environment{enumerate}s, replace |enumi| by |enumii|,
+%% |enumiii| or |enumiv|, according to the level. If your label is much
+%% larger than the default, you should also change \csx{leftmargini},
+%% \csx{leftmarginii}, \emph{etc}.
+\begin{ctanrefs}
+\item[enumerate.sty]Distributed as part of \CTANref{2etools}[enumerate]
+\item[enumitem.sty]\CTANref{enumitem}
+\item[memoir.cls]\CTANref{memoir}
+\item[paralist.sty]\CTANref{paralist}
+\end{ctanrefs}
+
+\Question[Q-complist]{How to adjust list spacing}
+
+\Qref*{Lamport's book}{Q-latex-books} lists various
+parameters for the layout of list (things like \csx{topsep},
+\csx{itemsep} and \csx{parsep}), but fails to mention that they're set
+automatically within the standard (\latex{}-defined) lists. This
+happens because each list
+executes a command \csx{@list}\texttt{\meta{depth}} (the depth
+appearing as a lower-case roman numeral); what's more, the top-level
+\csx{@listi} is usually reset when the font size is changed. As a
+result, it's rather tricky for
+the user to control list spacing. Of course, the real answer is to use
+a document class designed with more modest list spacing, but we all
+know such things are hard to come by. The \Class{memoir} class doesn't
+provide more compact lists, but offers the user control over the list
+spacing using \csx{firmlist} and \csx{tightlist} (and \texttt{*}-ed
+versions of them); see section~8.6 of the memoir manual.
+
+There are packages that provide some control of list spacing, but they
+seldom address the separation from surrounding text (defined by
+\csx{topsep}). The \Package{expdlist} package, among its many controls
+of the appearance of \environment{description} lists, offers a
+compaction parameter (see the documentation); the \Package{mdwlist}
+package offers a \csx{makecompactlist} command for users' own list
+definitions, and uses it to define compact lists
+\environment{itemize*}, \environment{enumerate*} and
+\environment{description*}. In fact, you can write lists such as
+these commands define pretty straightforwardly~--- for example:
+\begin{quote}
+\begin{verbatim}
+\newenvironment{itemize*}%
+ {\begin{itemize}%
+ \setlength{\itemsep}{0pt}%
+ \setlength{\parskip}{0pt}}%
+ {\end{itemize}}
+\end{verbatim}
+\end{quote}
+The \Package{paralist} package provides several approaches to list
+compaction:
+\begin{itemize}
+\item its \environment{asparaenum} environment formats each item as if
+ it were a paragraph introduced by the enumeration label (which saves
+ space if the item texts are long);
+\item its \environment{compactenum} environment is the same sort of
+ compact list as is provided in \Package{expdlist} and
+ \Package{mdwlist}; and
+\item its \environment{inparaenum} environment produces a list ``in
+ the paragraph'', i.e., with no line break between items, which is a
+ great space-saver if the list item texts are short.
+\end{itemize}
+The package will manipulate its \environment{enumerate} environment
+labels just like the \Qref*{\Package{enumerate} package}{Q-enumerate}
+does.
+
+\Package{Paralist} also provides \environment{itemize} equivalents
+(\environment{asparaitem}, etc.), and \environment{description}
+equivalents (\environment{asparadesc}, etc.).
+
+The \Package{multenum} package offers a more regular form of
+\Package{paralist}'s \environment{inparaenum}; you define a notional
+grid on which list entries are to appear, and list items will always
+appear at positions on that grid. The effect is somewhat like that of
+the `tab' keys on traditional typewriters; the package was designed
+for example sheets, or lists of answers in the appendices of a book.
+
+The \Package{expdlist}, \Package{mdwlist} and \Package{paralist}
+packages all offer other facilities for list configuration: you should
+probably not try the ``do-it-yourself'' approaches outlined below if
+you need one of the packages for some other list configuration
+purpose.
+
+For ultimate flexibility (including manipulation of \csx{topsep}), the
+\Package{enumitem} package permits adjustment of list parameters using
+a ``\emph{key}\latexhtml{\ensuremath{=}}{=}\meta{value}'' format.
+For example, one might write
+\begin{quote}
+\begin{verbatim}
+\usepackage{enumitem}
+...
+\begin{enumerate}[topsep=0pt, partopsep=0pt]
+\item ...
+\item ...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+to suppress all spacing above and below your list, or
+\begin{quote}
+\begin{verbatim}
+\usepackage{enumitem}
+...
+\begin{enumerate}[itemsep=2pt,parsep=2pt]
+\item ...
+\item ...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+to set spacing between items and between paragraphs within items.
+\Package{Enumitem} also permits manipulation of the label format in a
+more ``basic'' (and therefore more flexible) manner than the % ! line break
+\Qref*{\Package{enumerate} package}{Q-enumerate} does.
+
+The ultimate in compaction (of every sort) is offered by the
+\Package{savetrees} package; compaction of lists is included. The
+package's prime purpose is to save space at every touch and turn:
+don't use it if you're under any design constraint whatever!
+\begin{ctanrefs}
+\item[enumerate.sty]Distributed as part of \CTANref{2etools}[enumitem]
+\item[enumitem.sty]\CTANref{enumitem}
+\item[expdlist.sty]\CTANref{expdlist}
+\item[memoir.cls]\CTANref{memoir}
+\item[memoir \nothtml{\rmfamily}manual]\CTANref{memoir-man}
+\item[mdwlist.sty]Distributed as part of \CTANref{mdwtools}[mdwlist]
+\item[multenum.sty]\CTANref{multenum}
+\item[paralist.sty]\CTANref{paralist}
+\item[savetrees.sty]\CTANref{savetrees}
+\end{ctanrefs}
+\LastEdit{2012-10-30}
+
+\Question[Q-interruptlist]{Interrupting enumerated lists}
+
+It's often convenient to have commentary text, `outside' the list,
+between successive entries of a list. In the case of
+\environment{itemize} lists this is no problem, since there's never
+anything to distinguish successive items, while in the case of
+\environment{description} lists, the item labels are under the user's
+control so there's no automatic issue of continuity.
+
+For \environment{enumerate} lists, the labels are generated
+automatically, and are context-sensitive, so the context (in this
+case, the state of the enumeration counter) needs to be preserved.
+
+The belt-and-braces approach is to remember the state of the
+enumeration in your own counter variable, and then restore it when
+restarting enumerate:
+\begin{quote}
+\begin{verbatim}
+\newcounter{saveenum}
+ ...
+\begin{enumerate}
+ ...
+ \setcounter{saveenum}{\value{enumi}}
+\end{enumerate}
+<Commentary text>
+\begin{enumerate}
+ \setcounter{enumi}{\value{saveenum}}
+ ...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+
+This is reasonable, in small doses\dots{} Problems (apart from sheer
+verbosity) are getting the level right (``should I use counter
+\texttt{enumi}, \texttt{enumii}, \dots{}'') and remembering not to
+nest the interruptions (i.e., not to have a separate list, that is
+itself interrupted) in the ``commentary text'').
+
+The \Package{mdwlist} package defines commands \csx{suspend} and
+\csx{resume} that simplify the process:
+\begin{quote}
+\begin{verbatim}
+\begin{enumerate}
+ ...
+\suspend{enumerate}
+<Commentary text>
+\resume{enumerate}
+ ...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+The package allows an optional name (as in
+\cmdinvoke{suspend}[id]{enumerate}) to allow you to identify a
+particular suspension, and hence provide a handle for manipulating
+nested suspensions.
+
+If you're suspending a \Qref*{fancy-enumeration list}{Q-enumerate},
+you need to
+re-supply the optional ``item label layout'' parameters required by
+the \Package{enumerate} package when resuming the list, whether by the
+belt-and-braces approach, or by the \Package{mdwlist}
+\cmdinvoke{resume}{enumerate} technique. The task is a little tedious
+in the \Package{mdwlist} case, since the optional argument has to be
+encapsulated, whole, inside an optional argument to \csx{resume},
+which requires use of extra braces:
+\begin{quote}
+\begin{verbatim}
+\begin{enumerate}[\textbf{Item} i]
+ ...
+\suspend{enumerate}
+<comment>
+\resume{enumerate}[{[\textbf{Item} i]}]
+...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+\nothtml{\noindent}The \Package{enumitem} package, in its most recent
+release, will also allow you to resume lists:
+\begin{quote}
+\begin{verbatim}
+\begin{enumerate}
+...
+\end{enumerate}
+<comment>
+\begin{enumerate}[resume]
+...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+which feels just as ``natural'' as the \Package{mdwtools} facility,
+and has the advantage of playing well with the other excellent
+facilities of \Package{enumitem}.
+
+\Package{Expdlist} has a neat way of providing for comments, with its
+\csx{listpart} command. The command's argument becomes a comment
+between items of the list:
+\begin{quote}
+\begin{verbatim}
+\begin{enumerate}
+\item item 1
+\item item 2
+ \listpart{interpolated comment}
+\item item 3
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+This, you will realise, means it doesn't even have to think about
+suspending or resuming the list, and of course it works equally well
+in any of the list environments (thought it's not actually
+\emph{necessary} for any but \environment{enumerate}).
+
+\Package{Enumitem} also allows multi-level suspension and resumption
+of lists:
+\begin{quote}
+\begin{verbatim}
+\begin{enumerate}
+\item outer item 1
+\end{enumerate}
+<comment>
+\begin{enumerate}[resume]
+\item outer item 2
+% nested enumerate
+\begin{enumerate}
+\item inner item 1
+\end{enumerate}
+<nested comment>
+% resume nested enumerate
+\begin{enumerate}[resume]
+\item inner item 2
+\end{enumerate}
+\item outer item 3
+% end outer enumerate
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+However, the `nested comment' interpolated in the nested enumeration
+appears as if it were a second paragraph to ``outer item 2'', which is
+hardly satisfactory.
+\begin{ctanrefs}
+\item[enumerate.sty]Distributed as part of \CTANref{2etools}[enumerate]
+\item[enumitem.sty]\CTANref{enumitem}
+\item[expdlist.sty]\CTANref{expdlist}
+\item[mdwlist.sty]Distributed as part of \CTANref{mdwtools}[mdwlist]
+\end{ctanrefs}
+
+\subsection{Tables, figures and diagrams}
+
+\Question[Q-destable]{The design of tables}
+
+In recent years, several authors have argued that the examples, set
+out by Lamport in his \Qref*{\LaTeX{} manual}{Q-latex-books}, have cramped
+authors' style and have led to extremely poor table design. It is in
+fact difficult even to work out what many of the examples in Lamport's
+book ``mean''.
+
+The criticism focuses on the excessive use of rules (both horizontal
+and vertical) and on the poor vertical spacing that Lamport's macros
+offer.
+
+The problem of vertical spacing is plain for all to see, and is
+addressed in several packages~--- see % beware line breaks
+``\Qref*[question]{spacing of lines in tables}{Q-struttab}''.
+
+The argument about rules is presented in the excellent essay that
+prefaces the documentation of Simon Fear's \Package{booktabs} package,
+which (of course) implements Fear's scheme for `comfortable' rules.
+(The same rule commands are implemented in the \Class{memoir} class.)
+
+Lamport's \LaTeX{} was also inflexibly wrong in ``insisting'' that
+captions should come at the bottom of a table. Since a table may
+extend over several pages, traditional typography places the caption
+at the top of a table float. The \csx{caption} command will get its
+position wrong (by \texttt{10pt}) if you simply write:
+\begin{quote}
+\begin{verbatim}
+\begin{table}
+ \caption{Example table}
+ \begin{tabular}{...}
+ ...
+ \end{tabular}
+\end{table}
+\end{verbatim}
+\end{quote}
+The \Package{topcapt} package solves this problem:
+\begin{quote}
+\begin{verbatim}
+\usepackage{topcapt}
+...
+\begin{table}
+ \topcaption{Example table}
+ \begin{tabular}{...}
+ ...
+ \end{tabular}
+\end{table}
+\end{verbatim}
+\end{quote}
+The \Class{KOMA-script} classes provide a similar command
+\csx{captionabove}; they also have a class option
+\pkgoption{tablecaptionabove} which arranges that \csx{caption}
+\emph{means} \csx{captionabove}, in table environments. The
+\Package{caption} package may be loaded
+with an option that has the same effect:
+\begin{quote}
+\begin{verbatim}
+\usepackage[tableposition=top]{caption}
+\end{verbatim}
+\end{quote}
+or the effect may be established after the package has been loaded:
+\begin{quote}
+\begin{verbatim}
+\usepackage{caption}
+\captionsetup[table]{position=above}
+\end{verbatim}
+\end{quote}
+(Note that the two ``position'' options are different: actually,
+``above'' and ``top'' in these contexts mean the same thing.)
+
+Doing the job yourself is pretty easy: \Package{topcapt} switches the
+values of the \LaTeXe{} parameters \csx{abovecaptionskip} (default
+value \texttt{10pt}) and \csx{belowcaptionskip} (default value
+\texttt{0pt}), so:
+\begin{quote}
+\begin{verbatim}
+\begin{table}
+ \setlength{\abovecaptionskip}{0pt}
+ \setlength{\belowcaptionskip}{10pt}
+ \caption{Example table}
+ \begin{tabular}{...}
+ ...
+ \end{tabular}
+\end{table}
+\end{verbatim}
+\end{quote}
+does the job (if the length values are right; the package and classes
+are more careful!).
+\begin{ctanrefs}
+\item[booktabs.sty]\CTANref{booktabs}
+\item[caption.sty]\CTANref{caption}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\item[topcapt.sty]\CTANref{topcapt}
+\end{ctanrefs}
+\LastEdit{2011-08-19}
+
+\Question[Q-fixwidtab]{Fixed-width tables}
+
+There are two basic techniques for making fixed-width tables in
+\LaTeX{}: you can make the gaps between the columns stretch, or you
+can stretch particular cells in the table.
+
+Basic \LaTeX{} can make the gaps stretch: the \environment{tabular*}
+environment takes an extra argument (before the \texttt{clpr} layout one)
+which takes a length specification: you can say things like ``\texttt{15cm}''
+or ``\csx{columnwidth}'' here. You must also have an \csx{extracolsep}
+command in the \texttt{clpr} layout argument, inside an \texttt{@\{\}}
+directive. So, for example, one might have
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\begin{tabular*}{\columnwidth}{@{\extracolsep{\fill}}lllr}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\begin{tabular*}{\columnwidth}%
+ {@{\extracolsep{\fill}}lllr}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+The \csx{extracolsep} applies to all inter-column gaps to its right as
+well; if you don't want all gaps stretched, add
+\cmdinvoke{extracolsep}{0pt} to cancel the original.
+
+The \Package{tabularx} package defines an extra \texttt{clpr} column
+specification, \texttt{X}; \texttt{X} columns behave as \texttt{p}
+columns which expand to fill the space available. If there's more
+than one \texttt{X} column in a table, the spare space is distributed
+between them.
+
+The \Package{tabulary} package (by the same author) provides a way of
+``balancing'' the space taken by the columns of a table. The package
+defines column specifications \texttt{C}, \texttt{L}, \texttt{R} and
+\texttt{J}, giving, respectively, centred, left, right and
+fully-justified versions of space-sharing columns. The package
+examines how long each column would be ``naturally'' (i.e., on a piece of paper of unlimited width), and
+allocates space to each column accordingly. There are ``sanity
+checks'' so that really large entries don't cause everything else to
+collapse into nothingness (there's a ``maximum width'' that any column
+can exert), and so that tiny entries can't get smaller than a
+specified minimum. Of course, all this work means that the package
+has to typeset each row several times, so things that leave
+``side-effects'' (for example, a counter used to produce a row-number
+somewhere) are inevitably unreliable, and should not even be tried.
+
+The \Package{ltxtable} package combines the features of the
+\Package{longtable} and \Package{tabularx} packages. It's important
+to read the documentation, since usage is distinctly odd; the
+distribution contains no more than a file \File{ltxtable.tex}, which you
+should process using \LaTeX{}. Processing will give you a \File{.sty}
+file as well as the \File{.dvi} or \File{.pdf} output containing the
+documentation.
+\begin{ctanrefs}
+\item[ltxtable.sty]Distributed as part of \CTANref{carlisle}[ltxtable]
+\item[tabularx.sty]Distributed as part of \CTANref{2etools}[tabularx]
+\item[tabulary.sty]\CTANref{tabulary}
+\end{ctanrefs}
+
+\Question[Q-varwidcol]{Variable-width columns in tables}
+
+This is a slightly different take on the problem addressed in
+``\Qref*[question]{fixed-width tables}{Q-fixwidtab}''~--- here we have
+a column whose size we can't absolutely predict when we design the
+document.
+
+While the basic techniques (the \Package{tabularx}, \Package{tabulary}
+and \Package{ltxtable} packages) are the same for this problem as for the
+fixed-width \emph{table} problem, there's one extra tool that we can
+call to our aid, which may be preferable in some situations.
+
+Suppose we have data in one column which we read from an external
+source, and the source itself isn't entirely predictable. The data in
+the column may end up pretty narrow in every row of the table, or it
+may be wide enough that the table would run over the edge of the page;
+however, we don't want to make the column as wide as possible ``just
+in case'', by defining a fixed size for the table. We would like the
+column to be as small as possible, but have the possibility to spread
+to a maximum width and (if even that width is exceeded) turn into a
+\texttt{p}-style column.
+
+The \Package{varwidth} package, discussed in % ! line break
+``\Qref*[question]{automatic sizing of minipages}{Q-varwidth}'', provides
+a solution. If you load it together with the \LaTeX{} ``required''
+\Package{array} package, i.e.:
+\begin{quote}
+\begin{verbatim}
+\usepackage{array}
+\usepackage{varwidth}
+\end{verbatim}
+\end{quote}
+\Package{varwidth} defines a new column-type ``\texttt{V}'', which you
+can use as follows:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{l V{3.5cm} r}
+ foo & blah & bar \\
+ foo & blah blah & bar \\
+\end{tabular}
+\end{verbatim}
+\end{quote}
+when the second column ends up less than 3.5cm wide;
+or you can use it as follows:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{l V{3.5cm} r}
+ foo & blah & bar \\
+ foo & blah blah & bar \\
+ foo & blah blah blah blah blah blah
+ & bar \\
+\end{tabular}
+\end{verbatim}
+\end{quote}
+where the second column will end up noticeably wider, and will wrap to
+a second line in the third row.
+\begin{ctanrefs}
+\item[array.sty]Distributed as part of \CTANref{2etools}[array]
+\item[varwidth.sty]\CTANref{varwidth}
+\end{ctanrefs}
+
+\Question[Q-struttab]{Spacing lines in tables}
+
+\AllTeX{} mechanisms for maintaining the space between lines (the
+``\emph{leading}'') rely on \TeX{}'s paragraph builder, which compares
+the shape of consecutive lines and adjusts the space between them.
+
+These mechanisms can't work in exactly the same way when \AllTeX{} is
+building a table, because the paragraph builder doesn't get to see the
+lines themselves. As a result, tables sometimes typeset with lines
+uncomfortably close together (or occasionally ridiculously far apart).
+
+Traditional (moving metal type) typographers would adjust the spacing
+between lines of a table by use of a ``\emph{strut}'' (a metal
+spacer). A \TeX{} user can do exactly the same thing: most macro
+packages define a \csx{strut} command, that defines a space appropriate
+to the current size of the text; placing a \csx{strut} command at the
+end of a troublesome row is the simplest solution to the problem~---
+if it works. Other solutions below are \LaTeX{}-specific, but some
+may be simply translated to \plaintex{} commands.
+
+If your table exhibits a systematic problem (i.e., every row is wrong
+by the same amount) use \csx{extrarowheight}, which is defined by the
+\Package{array} package:
+\begin{quote}
+\begin{verbatim}
+\usepackage{array}% in the preamble
+...
+\setlength{\extrarowheight}{length}
+\begin{tabular}{....}
+\end{verbatim}
+\end{quote}
+
+To correct a single row whose maladjustment isn't corrected by a
+\csx{strut} command, you can define your own, using
+\cmdinvoke{rule}{0pt}{length}~--- which is a near approximation to the
+command that goes inside a \csx{strut}. The \Package{bigstrut} package
+defines a strut command that you can use for this purpose:
+\csx{bigstrut} on its own opens up both above and below the current
+line; \cmdinvoke{bigstrut}[t] opens up above the line,
+\cmdinvoke{bigstrut}[b] opens up below the line.
+
+General solutions are available, however. The \Package{tabls} package
+automatically generates an appropriately-sized strut at the end of
+each row. Its disadvantages are that it's really rather slow in
+operation (since it gets in the way of everything within tables) and
+its (lack of) compatibility with other packages.
+
+The \Package{makecell} package provides a command \csx{gape} that may
+be used to apply strut expansion for a single cell of a table:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{lll}
+ ... & \gape{cell contents} & ... \\
+ ...
+\end{tabular}
+\end{verbatim}
+\end{quote}
+The package's similar \csx{Gape} command provides the same function,
+but with optional arguments that allow you to adjust the top and
+bottom adjustment.
+
+To adjust every cell in whole tables, the
+\cmdinvoke{setcellgapes}{\meta{value}} sets the adjustment value (an
+optional argument of ``\texttt{t}'' or ``\texttt{b}'' restricts
+adjustment to the top or bottom of each cell, respectively). Having
+issued \csx{setcellgapes}, the command \csx{makegapedcells} switches
+cell expansion on, and \csx{nomakegapedcells} switches it off again.
+
+The \Package{cellspace} package does a (possibly inferior) job by
+defining a new table/array column type ``S'', which you apply to each
+column specification. So, for example,
+\begin{quote}
+\cmdinvoke{begin}{tabular}{l l l p{3cm}}
+\end{quote}
+would become
+\begin{quote}
+\cmdinvoke{begin}{tabular}{Sl Sl Sl Sp{3cm}}
+\end{quote}
+and so on. This technique shows
+promise of not interfering so much with other packages, but this
+author has heard of no reports from the field.
+
+The \Package{booktabs} package comes with a thought-provoking essay
+about how tables should be designed. Since table row-spacing problems
+most often appear in collisions with rules, the author's thesis,
+that \LaTeX{} users tend too often to rule their tables, is
+interesting. The package provides rule commands to support the
+author's scheme, but deals with inter-row spacing too. The most
+recent release of \Package{booktabs} sports compatibility with
+packages such as \Package{longtable}.
+\begin{ctanrefs}
+\item[array.sty]Distributed as part of \CTANref{2etools}[array]
+\item[bigstrut.sty]\CTANref{bigstrut}
+\item[booktabs.sty]\CTANref{booktabs}
+\item[cellspace.sty]\CTANref{cellspace}
+\item[makecell.sty]\CTANref{makecell}
+\item[tabls.sty]\CTANref{tabls}
+\end{ctanrefs}
+\LastEdit{2011-05-02}
+
+\Question[Q-longtab]{Tables longer than a single page}
+
+Tables are, by default, set entirely in boxes of their own: as a
+result, they won't split over a page boundary. Sadly, the world keeps
+turning up tables longer than a single page that we need to typeset.
+
+For simple tables (whose shape is highly regular), the simplest
+solution may well be to use the \environment{tabbing} environment,
+which is slightly tedious to set up, but which doesn't force the whole alignment
+onto a single page.
+
+The \Package{longtable} package builds the whole table (in chunks), in
+a first pass, and then uses information it has written to the \extension{aux}
+file during later passes to get the setting ``right'' (the package
+ordinarily manages to set tables in just two passes). Since the
+package has overview of the whole table at the time it's doing
+``final'' setting, the table is set ``uniformly'' over its entire
+length, with columns matching on consecutive pages.
+\Package{longtable} has a reputation for failing to interwork with
+other packages, but it does work with \Package{colortbl}, and its
+author has provided the \Package{ltxtable} package to provide (most
+of) the facilities of \Package{tabularx} (see
+% beware line wrap
+\Qref[question]{fixed-width tables}{Q-fixwidtab}) for long tables:
+beware of its rather curious usage constraints~--- each long table
+should be in a file of its own, and included by
+\cmdinvoke*{LTXtable}{width}{file}. Since \Package{longtable}'s
+multiple-page tables can't possibly live inside floats, the package
+provides for captions within the \environment{longtable} environment
+itself.
+
+A seeming alternative to \Package{ltxtable} is \Package{ltablex}; but
+it is outdated and not fully functional. Its worst problem is its
+strictly limited memory capacity (\Package{longtable} is not so
+limited, at the cost of much complication in its code);
+\Package{ltablex} can only deal with relatively small tables, it doesn't seem
+likely that support is available; but its user interface is much
+simpler than \Package{ltxtable}, so if its restrictions aren't a
+problem for you, it may be worth a try.
+
+The \Package{supertabular} package starts and stops a
+\environment{tabular} environment for each page of the table. As a
+result, each `page worth' of the table is compiled independently, and
+the widths of corresponding columns may differ on successive pages.
+However, if the correspondence doesn't matter, or if your columns are
+fixed-width, \Package{supertabular} has the great advantage of doing
+its job in a single run.
+
+Both \Package{longtable} and \Package{supertabular} allow definition
+of head- and footlines for the table; \Package{longtable} allows
+distinction of the first and last head and foot.
+
+The \Package{xtab} package fixes some infelicities of
+\Package{supertabular}, and also provides a ``last head'' facility
+(though this, of course, destroys \Package{supertabular}'s advantage
+of operating in a single run).
+
+The \Package{stabular} package provides a simple-to-use ``extension to
+\environment{tabular}'' that allows it to typeset tables that run over
+the end of a page; it also has usability extensions, but doesn't have
+the head- and footline capabilities of the major packages.
+
+Documentation of \Package{ltablex} is to be found in the package file.
+\begin{ctanrefs}
+\item[longtable.sty]Distributed as part of \CTANref{2etools}[longtable]
+\item[ltablex.sty]\CTANref{ltablex}
+\item[ltxtable.sty]Generate by running \CTANref{ltxtable}
+\item[stabular.sty]Distributed as part of \CTANref{sttools}[stabular]
+\item[supertabular.sty]\CTANref{supertabular}
+\item[xtab.sty]\CTANref{xtab}
+\end{ctanrefs}
+
+\Question[Q-tabcellalign]{How to alter the alignment of tabular cells}
+
+One often needs to alter the alignment of a tabular \texttt{p} (`paragraph')
+cell, but problems at the end of a table row are common. With a
+\texttt{p} cell that looks like:
+\begin{quote}
+\begin{verbatim}
+... & \centering blah ... \\
+\end{verbatim}
+\end{quote}
+one is liable to encounter errors that complain about a ``misplaced
+\csx{noalign}'' or ``\Qref*{extra alignment tab}{Q-altabcr}'', or the like.
+The problem is that the command \texttt{\bsbs } means different things in
+different circumstances: the \environment{tabular} environment
+switches the meaning to a value for use in the table, and
+\csx{centering}, \csx{raggedright} and \csx{raggedleft} all change the
+meaning to something incompatible. Note that the problem only
+arises in the last cell of a row: since each cell is set into a box,
+its settings are lost at the \texttt{\&} (or \texttt{\bsbs }) that
+terminates it.
+
+In the old days, the actual value of \texttt{\bsbs } that the
+\environment{tabular} environment uses was only available as an
+internal command. Nowadays, the value is a public command, and you
+can in principle use it explicitly:
+\begin{quote}
+\begin{verbatim}
+... & \centering blah ... \tabularnewline
+\end{verbatim}
+\end{quote}
+(but that's a rather verbose way of doing things).
+
+The \Package{array} package provides a command \csx{arraybackslash}
+which restores \texttt{\bsbs } to its correct (within table) meaning;
+the command may be used in \Package{array}'s ``field format'' preamble
+specifications:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\begin{tabular}{...%
+ >{\centering\arraybackslash}%
+ p{50mm}}
+...
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\begin{tabular}{... >{\centering\arraybackslash}p{50mm}}
+...
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+
+The \csx{tabularnewline} and \csx{arraybackslash} commands are
+(somewhat) modern additions to \LaTeX{} and the \Package{array}
+package, respectively. In the unlikely event that neither is
+available, the user may try the (old) solution which preserves the
+meaning of \texttt{\bsbs }:
+\begin{quote}
+\begin{verbatim}
+\newcommand\PBS[1]{\let\temp=\\%
+ #1%
+ \let\\=\temp
+}
+\end{verbatim}
+\end{quote}
+which one uses within a table as:
+\begin{quote}
+\begin{verbatim}
+... & \PBS\centering blah ... \\
+\end{verbatim}
+\end{quote}
+or in the preamble as:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{...>{\PBS\centering}p{5cm}}
+\end{verbatim}
+\end{quote}
+\begin{ctanrefs}
+\item[array.sty]Distributed as part of \CTANref{2etools}[array]
+\end{ctanrefs}
+\nothtml{\vskip 0pt plus 4ex}
+
+\Question[Q-rulethk]{The thickness of rules in \LaTeX{} tables}
+
+The rules in a \LaTeX{} table are by default \texttt{0.4pt} thick;
+this is in fact a default built in at the lowest level, and applies to
+all rules (including those separating blocks of running text).
+
+Sometimes, however, we look at a table and find we want the rules to
+stand out~--- perhaps to separate the text from the rest of the body
+text, or to make the sections of the table stand out from one another.
+However, a quick review of any \LaTeX{} manual will reveal no
+technique for making any one rule stand out, and a little
+experimentation shows that it is indeed pretty difficult to prevent
+a change ``bleeding'' out to affect other rules in the same table.
+
+If you look at what we have to say on the % ! line break
+\Qref*{design of tables}{Q-destable}, elsewhere
+among these \acro{FAQ}s, and you may sense that the design of \LaTeX{}
+simply skipped the issues surrounding table design: \emph{that's}
+presumably why there's no facilities to help you.
+
+Specifically, the length \csx{arrayrulewidth} affects the thickness of
+the rules (both horizontal and vertical) within both
+\environment{tabular} and \environment{array} environments. If you
+change from the default (see above) only as far as
+\begin{quote}
+\begin{verbatim}
+\setlength{\arrayrulewidth}{1pt}
+\end{verbatim}
+\end{quote}
+the change is remarkably striking. However, really quite subtle user
+level programming proves incapable of changing just \emph{one} rule:
+it's necessary to delve into the (rather tricky) code of \csx{hline}
+and \csx{cline} themselves.
+
+Fortunately, this job has already been done for the community: the
+\Package{booktabs} package defines three different classes of rule
+(\csx{toprule}, \csx{midrule} and \csx{bottomrule}), and the package
+documentation offers hints on how to use them. You are
+\emph{strongly} advised to read the documentation pretty carefully.
+
+The \Class{memoir} class includes the \Package{booktabs} package, and
+repeats the documentation in its compendious manual.
+
+Note that none of the above mentions the issue of the weight of
+vertical rules (except in passing). For the reasons, see the
+documentation of the \Package{booktabs} package (again); vertical
+rules in tables are in any case even more trickily coded than are
+horizontal rules, and if their lack of configurability makes them
+still less attractive, so much the better for the design of your
+document.
+\begin{ctanrefs}
+\item[booktabs.sty]\CTANref{booktabs}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-textflow]{Flowing text around figures}
+
+There are several \LaTeX{} packages that purport to do this, but they
+all have their limitations because the \TeX{} machine isn't really
+designed to solve this sort of problem. Piet van Oostrum has
+conducted a survey of the available packages; he recommends:
+\begin{description}
+\item[\texttt{floatflt}] \Package{floatflt} is an improved version
+ (for \LaTeXe{}) of \File{floatfig.sty}, and its syntax is:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+\begin{floatingfigure}[options]{width of figure}
+ figure contents
+\end{floatingfigure}
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+ \begin{quote}
+ \cmdinvoke{begin}{floatingfigure}[\emph{options}]{\emph{figure width}}\\
+ \mbox{}\qquad\emph{figure contents}\\
+ \cmdinvoke{end}{floatingfigure}
+ \end{quote}
+\end{narrowversion}
+There is a (more or less similar) \environment{floatingtable}
+environment.
+
+The tables or figures can be set left or right, or alternating on
+even/odd pages in a double-sided document.
+
+The package works with the \texttt{multicol} package, but doesn't work well
+in the neighbourhood of list environments (unless you change your
+\LaTeX{} document).
+\item[\texttt{wrapfig}] \Package{wrapfig} has syntax:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+\begin{wrapfigure}[height of figure in lines]{l,r,...}[overhang]{width}
+ figure, caption, etc.
+\end{wrapfigure}
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+ \begin{quote}
+ \cmdinvoke{begin}{wrapfigure}\texttt{\%}\\
+ \mbox{}%
+ \qquad\qquad\texttt{[\emph{figure height in lines}]\%}\\
+ \mbox{}%
+ \qquad\qquad\texttt{\{l,r,\emph{etc}\}[\emph{overhang}]\{\emph{width}\}}\\
+ \mbox{}\qquad\emph{figure, caption, etc.}\\
+ \cmdinvoke{end}{wrapfigure}
+ \end{quote}
+\end{narrowversion}
+ The syntax of the \environment{wraptable} environment is similar.
+
+ The \emph{\texttt{height}} may be omitted, in which case it will
+ be calculated from the size of the figure; the package will use
+ the greater of the specified and the
+ actual width. The \texttt{\{l,r,\emph{etc}.\}} parameter may
+ also be specified as \texttt{i}\emph{(nside)} or
+ \texttt{o}\emph{(utside)} for two-sided documents, and uppercase
+ may be used to indicate that the picture should float. The
+ overhang allows the figure to be
+ moved into the margin. The figure or table will entered into the
+ list of figures or tables if you use the \csx{caption} command.
+
+ The environments do not work within list environments that end
+ before the figure or table has finished, but can be used in a
+ parbox or minipage, and in twocolumn format.
+ \item[\texttt{picins}] \Package{Picins} is part of a large bundle
+ that allows inclusion of pictures (e.g., with shadow boxes,
+ various \MSDOS{} formats, etc.). The command for inserting a
+ picture at the start of a paragraph is:
+\begin{wideversion}
+ \begin{quote}
+ \csx{parpic}\texttt{(width,height)(x-off,y-off)[Options][Position]\{Picture\}}\\
+ \emph{Paragraph text}
+ \end{quote}
+\end{wideversion}
+\begin{narrowversion}
+ \begin{quote}
+ \cmdinvoke*{picins}(width,height)(x-off,y-off)\texttt{\%}\\
+ \mbox{\qquad\qquad}\texttt{[\emph{options}][\emph{position}]\%}\\
+ \mbox{\qquad\qquad}\texttt{\{\emph{Picture}\}}\\
+ \emph{Paragraph text}
+ \end{quote}
+\end{narrowversion}
+ All parameters except the \emph{Picture} are optional. The picture
+ can be positioned left or right, boxed with a rectangle, oval,
+ shadowbox, dashed box, and a caption can be given which will be
+ included in the list of figures.
+
+ Unfortunately (for those of us whose understanding of German is not
+ good), the documentation is in German. Piet van Oostrum has written
+ a summary in English.
+\end{description}
+All of the above deal insertions at one or other margin; they are able
+to take advantage of the \tex{} \csx{parshape} primitive that allows
+you to adjust the margins of the text of a paragraph, by line (Knuth
+provides an example of such use, with text typeset in a circle,
+half-overlapping the margin, in chapter~14 of the \tex{}book). To
+place insertions in the middle of a paragraph requires effort of an
+entirely different sort; the \Package{cutwin} package does this for
+you. It requires a set of ``part line widths'' (two per line), and
+typesets the ``cutout'' section of the paragraph line by line. The
+examples in the package documentation look enticing.
+
+\plaintex{} users only have one option: \Package{figflow} (which
+doesn't work in \LaTeX{}). \Package{Figflow} only offers flowed
+figures at the start of the paragraph, but it seems perfectly
+functional. Syntax is
+\begin{quote}
+ \cmdinvoke*{figflow}{\meta{width}}{\meta{height}}{\meta{figure}}
+\end{quote}
+(the user is responsible for having the dimensions correct, and for
+ensuring the figure fits on the page).
+\begin{ctanrefs}
+\item[cutwin.sty]\CTANref{cutwin}
+\item[figflow.tex]\CTANref{figflow}
+\item[floatflt.sty]\CTANref{floatflt}
+\item[picins.sty]\CTANref{picins}
+\item[picins \nothtml{\rmfamily}documentation summary]\CTANref{picins-summary}
+\item[wrapfig.sty]\CTANref{wrapfig}
+\end{ctanrefs}
+\LastEdit{2009-06-11}
+
+\Question[Q-slashbox]{Diagonal separation in corner cells of tables}
+\keywords{tabular}
+
+You want to label both the top or bottom row and the left- or
+rightmost column, somewhere at the corner of the table where the row
+and column meet. A simple way to achieve the result is to construct
+the table with an arrangement of rules (and possibly \csx{multicolumn}
+entries), to look like:
+\begin{quote}
+\begin{verbatim}
+-----------------
+x y
+ --------------
+ 1 2 3 4 5
+-----------------
+1
+2
+3
+4
+5
+-----------------
+\end{verbatim}
+\end{quote}
+However, this doesn't satisfy everyone: many want the labelling in a
+single cell at the top left of the table. It sounds a simple enough
+requirement, yet it calls for some slightly tricky \LaTeX{} coding.
+The \Package{diagbox} package does this job for you: it defines a
+command \csx{diagbox} whose two arguments provide the texts to be
+used; an optional argument may be used for fine tuning of the result.
+It draws a picture with the two labels on either side of a slanting
+line; the command (and hence the picture) may be placed in the corner
+cell, where the labelled row and column meet.
+
+The \Package{diagbox} package supersedes \Package{slashbox}; the older
+package's commands \csx{slashbox} and \csx{backslashbox} are provided
+in a compatible way in the newer package, to ease transition.
+\begin{ctanrefs}
+\item[diagbox.sty]\CTANref{diagbox}
+\item[slashbox.sty]\CTANref{slashbox}
+\end{ctanrefs}
+\LastEdit{2010-11-22}
+
+\Question[Q-wholerow]{How to change a whole row of a table}
+
+Each cell of a table is set in a box, so that a change of font style
+(or whatever) only lasts to the end of the cell. If one has a
+many-celled table, or a long one which needs lots of rows emphasising,
+putting a font style change command in every cell will be impossibly
+tedious.
+
+With the \Package{array} package, you can define column modifiers
+which will change the font style for a whole \emph{column}. However,
+with a bit of subtlety, one can make such modifiers affect rows rather
+than columns. So, we set things up by:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\usepackage{array}
+\newcolumntype{$}{>{%
+ \global\let\currentrowstyle\relax}%
+}
+\newcolumntype{^}{>{\currentrowstyle}}
+\newcommand{\rowstyle}[1]{%
+ \gdef\currentrowstyle{#1}%
+ #1\ignorespaces
+}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\usepackage{array}
+\newcolumntype{$}{>{\global\let\currentrowstyle\relax}}
+\newcolumntype{^}{>{\currentrowstyle}}
+\newcommand{\rowstyle}[1]{\gdef\currentrowstyle{#1}%
+ #1\ignorespaces
+}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+Now, we put `\texttt{\$}' before the first column specifier; and we
+put `\texttt{\textasciicircum }'
+before the modifiers of subsequent ones. We then use \csx{rowstyle} at
+the start of each row we want to modify:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{|$l|^l|^l|} \hline
+ \rowstyle{\bfseries}
+ Heading & Big and & Bold \\ \hline
+ Meek & mild & entry \\
+ Meek & mild & entry \\
+ \rowstyle{\itshape}
+ Strange & and & italic \\
+ Meek & mild & entry \\ \hline
+\end{tabular}
+\end{verbatim}
+\end{quote}
+The \Package{array} package works with several other
+\environment{tabular}-like environments from other packages (for
+example \environment{longtable}), but unfortunately this trick won't
+always work.
+\begin{ctanrefs}
+\item[array.sty]Distributed as part of \CTANref{2etools}[array]
+\end{ctanrefs}
+
+\Question[Q-multirow]{Merging cells in a column of a table}
+
+It's easy to come up with a table design that requires a cell that
+spans several rows. An example is something where the left-most
+column labels the rest of the table; this can be done (in simple
+cases) by using % beware line break
+\Qref*{diagonal separation in corner cells}{Q-slashbox}, but that
+technique rather strictly limits what can be used as the content of
+the cell.
+
+The \Package{multirow} package enables you to construct such multi-row
+cells, in a very simple manner. For the simplest possible use, one
+might write:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{|c|c|}
+\hline
+\multirow{4}{*}{Common g text}
+ & Column g2a\\
+ & Column g2b \\
+ & Column g2c \\
+ & Column g2d \\
+\hline
+\end{tabular}
+\end{verbatim}
+\end{quote}
+and \Package{multirow} will position ``Common g text'' at the vertical
+centre of the space defined by the other rows. Note that the rows
+that don't contain the ``multi-row'' specification must have empty
+cells where the multi-row is going to appear.
+
+The ``\texttt{*}'' may be replaced by a column width specification. In this
+case, the argument may contain forced line-breaks:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{|c|c|}
+\hline
+\multirow{4}{25mm}{Common\\g text}
+ & Column g2a\\
+ & Column g2b \\
+ & Column g2c \\
+ & Column g2d \\
+\hline
+\end{tabular}
+\end{verbatim}
+\end{quote}
+A similar effect (with the possibility of a little more
+sophistication) may be achieved by putting a smaller table that lines
+up the text into a \texttt{*}-declared \csx{multirow}.
+
+The \csx{multirow} command may also used to write labels vertically
+down one or other side of a table (with the help of the
+\Package{graphics} or \Package{graphicx} package, which provide the
+\csx{rotatebox} command):
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{|l|l|}
+\hline
+\multirow{4}{*}{\rotatebox{90}{hi there}}
+ & Column g2a\\
+ & Column g2b \\
+ & Column g2c \\
+ & Column g2d \\
+\hline
+\end{tabular}
+\end{verbatim}
+\end{quote}
+(which gives text going upwards; use angle \texttt{-90} for text going
+downwards, of course).
+
+To make a \csx{multicolumn} multi-row ``cell'' in a table, you have to
+enclose a \csx{multirow} inside a \csx{multicolumn}~--- the other way
+around does not work, so:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\begin{tabular}{|c|c|c|}\hline
+\multicolumn{2}{|c|}{\multirow{2}{*}{combined cells}}
+ &top right\\ \cline{3-3}
+\multicolumn{2}{|c|}{}
+ &middle right\\ \hline
+bottom left
+ &bottom center
+ &bottom right\\ \hline
+\end{tabular}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\begin{tabular}{|c|c|c|}\hline
+\multicolumn{2}{|c|}{\multirow{2}{*}%
+ {combined cells}}
+ &top right\\ \cline{3-3}
+\multicolumn{2}{|c|}{}
+ &middle right\\ \hline
+bottom left
+ &bottom center
+ &bottom right\\ \hline
+\end{tabular}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+\Package{Multirow} is set up to interact with the \Package{bigstrut}
+package (which is also discussed in the answer to % beware line break
+\Qref[question]{spacing lines in tables}{Q-struttab}). You use an
+optional argument to the \csx{multirow} command to say how many of the
+rows in the multi-row have been opened up with \csx{bigstrut}.
+
+The documentation of both \Package{multirow} and \Package{bigstrut} is
+to be found, as comments, in the package files themselves.
+\begin{ctanrefs}
+\item[bigstrut.sty]\CTANref{bigstrut}
+\item[multirow.sty]\CTANref{multirow}
+\end{ctanrefs}
+
+\subsection{Floating tables, figures, etc.}
+
+\Question[Q-floatpages]{Floats on their own on float pages}
+
+It's sometimes necessary to force a float to live on a page by itself.
+(It's sometimes even necessary for \emph{every} float to live on a
+page by itself.) When the float fails to `set', and waits for the end
+of a chapter or of the document, the natural thing to do is to declare
+the float as
+\begin{quote}
+ \cmdinvoke{begin}{figure}[p!]
+\end{quote}
+but the overriding \texttt{!} modifier has no effect on float page floats; so
+you have to make the float satisfy the parameters.
+\Qref[Question]{Moving tables and figures}{Q-floats} offers some
+suggestions, but doesn't solve the one-float-per-page question.
+
+The `obvious' solution, using the counter \texttt{totalnumber}
+(``total number of floats per page'') doesn't work:
+\texttt{totalnumber} only applies to floats on `text' pages (pages
+containing text as well as one or more float). So, to allow any
+size float to take a whole page, set \csx{floatpagefraction} really
+small, and to ensure that no more than one float occupies a page, make
+the separation between floats really big:
+\begin{quote}
+\begin{verbatim}
+\renewcommand\floatpagefraction{.001}
+\makeatletter
+\setlength\@fpsep{\textheight}
+\makeatother
+\end{verbatim}
+\end{quote}
+
+\Question[Q-wideflt]{Centring a very wide figure or table}
+
+The normal means of centring a figure or table object is to include
+\csx{centering} at the top of the float. This doesn't help if the
+object is wider than \csx{textwidth}~--- the object starts at the left
+margin and juts out into the right margin (which is actually doubly
+unsatisfactory, since as well as looking bad, the float won't be
+placed until the next \csx{clearpage} or the like.)
+
+You can avoid the problem by rescaling the figure or table to fit, but
+this is often not satisfactory, for several reasons.
+
+Otherwise, if the object is wider than the printable area of the page,
+you've no choice other than to \Qref*{rotate it}{Q-landscape}. If,
+however, the object is \emph{just} wider than the text block, you can
+make it pretend to be the right size by:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\begin{figure}
+ \noindent
+ \makebox[\textwidth]{\includegraphics{my-wide-figure}}%
+ \caption{This figure juts out into both margins}
+\end{figure}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\begin{figure}
+ \noindent
+ \makebox[\textwidth]{%
+ \includegraphics{my-wide-figure}%
+ }%
+ \caption{This figure juts out into both margins}
+\end{figure}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+Note the \csx{noindent}: the \csx{makebox} starts a paragraph, and you
+really don't want that indented by \csx{parindent}.
+
+\Question[Q-2colfloat]{Placing two-column floats at bottom of page}
+
+You specified placement `\texttt{[htbp]}' for your full-width figure or
+table, but they always get placed at the top of the page\dots{} Well,
+it \emph{is} what the documentation says: \LaTeX{}, unadorned, only
+allows full-width floats at the top of a page, or occupying (part of) a
+float page.
+
+The \Package{stfloats} package ameliorates the situation somewhat, and
+makes \LaTeX{} honour `[b]' placement as well; the
+\Package{dblfloatfix} package combines a tidied version of the changes
+made in \Package{stfloats} with the
+\begin{narrowversion} % non-hyper
+ float ordering corrections defined in \Package{fixltx2e}
+ (\Qref{}{Q-2colfltorder}).
+\end{narrowversion}
+\begin{wideversion} % hyper
+ \Qref{float ordering corrections}{Q-2colfltorder} defined in
+ \Package{fixltx2e}.
+\end{wideversion}
+
+A particular problem with \Package{stfloats} and \Package{dblfloatfix}
+is that the float will appear, at its earliest, on the page after it
+is specified. This has two undesirable side-effects: first, there may
+be no bottom float on the first page of a document, and second, float
+numbers may become ``entangled'' (particularly if you're using
+\Package{dblfloatfix} that ensures that the early-specified bottom
+float is set \emph{before} any single column floats).
+
+(The \acro{FAQ} team doesn't know of any package that will make
+\LaTeX{} honour `[h]' placement of double-column floats, but the
+\Package{midfloat} package can be pressed into service to provide
+something approximating the effect it would have.)
+\begin{ctanrefs}
+\item[dblfloatfix.sty]\CTANref{dblfloatfix}
+\item[midfloat.sty]Distributed as part of \CTANref{sttools}[midfloat]
+\item[stfloats.sty]Distributed as part of \CTANref{sttools}[stfloats]
+\end{ctanrefs}
+
+\Question[Q-mcfloat]{Floats in multicolumn setting}
+
+If you use
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ ...
+\end{figure}
+\end{verbatim}
+\end{quote}
+in a \environment{multicols} environment, the figure won't appear. If
+instead you use
+\begin{quote}
+\begin{verbatim}
+\begin{figure*}
+ ...
+\end{figure*}
+\end{verbatim}
+\end{quote}
+the figure will stretch right across the page (just the same as a
+\environment{figure*} in standard \LaTeX{}'s \pkgoption{twocolumn} option).
+
+It's possible to have single-column figures and tables with captions,
+using the `\texttt{[H]}' placement option introduced by the \Package{float}
+package but you might have to fiddle with the placement because they
+won't `float', and exhibit other strange behaviours (such as silently
+running off the end of the column at the end of the
+\environment{multicols} environment).
+\begin{ctanrefs}
+\item[float.sty]\CTANref{float}
+\item[multicol.sty]Distributed as part of \CTANref{2etools}[multicol]
+\end{ctanrefs}
+
+\Question[Q-dpfloat]{Facing floats on 2-page spread}
+
+If a pair of floats need to be forced to form a 2-page spread (in a
+book, or whatever), the first must lie on the left side of the spread,
+on an even-numbered page. The \Package{dpfloat} package provides for
+this: the construction to use is:
+\begin{quote}
+\begin{verbatim}
+\begin{figure}[p]
+ \begin{leftfullpage}
+ <left side figure>
+ \end{leftfullpage}
+\end{figure}
+\begin{figure}[p]
+ \begin{fullpage}
+ <right side figure>
+ \end{fullpage}
+\end{figure}
+\end{verbatim}
+\end{quote}
+The construction has no effect on documents with class option
+\pkgoption{oneside} (\pkgoption{twoside} is the default for
+\Class{book} class).
+
+A special case of this requirement places the caption for a float on
+the next page. (This is useful if you have a float that ``only just''
+fits the page.) You can (with a certain amount of twiddling) make
+this work with \Package{dpfloat}, but the \Package{fltpage} package is
+specially designed for the job:
+\begin{quote}
+\begin{verbatim}
+\documentclass[twoside]{article}
+\usepackage[leftFloats]{fltpage}
+\begin{document}
+...
+\begin{FPfigure}
+ \includegraphics{my-huge-figure}
+ \caption{Whew! That was a big one!}
+\end{FPfigure}
+...
+\end{document}
+\end{verbatim}
+\end{quote}
+That example should produce a caption
+\begin{quote}
+ Figure \meta{n} \emph{(facing page)}: Whew! \dots{}
+\end{quote}
+(Note, however, that the package is an old one, and declares itself to
+be a beta release, and contains no valid licence statement so that it
+is not in \texlive{}. It seems to work, but\dots{})
+
+A alternative route is the ``continued'' mechanism of the
+\Package{caption} package. The \csx{ContinuedFloat} macro makes a
+small tweak to the next \csx{caption} command, so that the command
+makes no increment to the caption number. This does not (of course)
+have any effect on actual placement of the float, but it makes the
+caption texts read `sensibly':
+\begin{quote}
+\begin{verbatim}
+\begin{table}
+ \caption{A table}
+ ...
+\end{table}
+...
+\begin{table}\ContinuedFloat
+ \caption{A table (cont.)}
+ ...
+\end{table}
+\end{verbatim}
+\end{quote}
+which would produce:
+\begin{quote}
+ Table 3: A table
+ \dots
+ Table 3: A table (cont.)
+\end{quote}
+\begin{ctanrefs}
+\item[caption.sty]\CTANref{caption}
+\item[dpfloat.sty]\CTANref{dpfloat}
+\item[fltpage.sty]\CTANref{fltpage}
+\end{ctanrefs}
+\LastEdit{2013-02-01}
+
+\Question[Q-vertposfp]{Vertical layout of float pages}
+
+By default, \LaTeX{} vertically centres the floats on a float page;
+the present author is not alone in not liking this arrangement.
+Unfortunately, the control of the positioning is ``buried'' in
+\LaTeX{}-internal commands, so some care is needed to change the
+layout.
+
+Float pages use three \LaTeX{} lengths (i.e., \TeX{} skips) to define
+their layout:
+\begin{description}
+\item[\nothtml{\normalfont}\csx{@fptop}] defines the distance from the
+ top of the page to the top of the first float,
+\item[\nothtml{\normalfont}\csx{@fpsep}] defines the separation between
+ floats, and
+\item[\nothtml{\normalfont}\csx{@fpbot}] defines the distance from the
+ bottom of the last float on the page to the bottom of the page.
+\end{description}
+(In fact, the output routine places a skip of \csx{@fpsep} above each float, so
+the \csx{@fptop} skip is always followed by a correction for that.)
+
+
+The \LaTeX{} defaults are:
+\begin{quote}
+ \csx{@fptop} = \texttt{0pt + 1fil}\\
+ \csx{@fpsep} = \texttt{8pt + 2fil}\\
+ \csx{@fpbot} = \texttt{0pt + 1fil}\\
+\end{quote}
+so that the gaps expand to fill the space not occupied by floats, but
+if there is more than one float on the page, the gap between them will
+expand to twice the space at top and bottom.
+
+Those who understand this stuff will be able to play elaborate games,
+but the commonest requirement, that the floats start at the top of the
+page, is a simple thing to do:
+\begin{quote}
+\begin{verbatim}
+\makeatletter
+\setlength{\@fptop}{0pt}
+\makeatother
+\end{verbatim}
+\end{quote}
+Surprisingly, you may find this setting leaves your floats too high on
+the page. One can justify a value of \texttt{5pt} (in place of
+\texttt{0pt})~--- it's roughly the difference between \csx{topskip}
+and the height of normal (\texttt{10pt}) text.
+
+Note that this is a ``global'' setting (best established in a class
+file, or at worst in the document preamble); making the change for a
+single float page is likely (at the least) to be rather tricky.
+
+\Question[Q-figurehere]{Figure (or table) \emph{exactly} where I want it}
+
+This is of course a contradiction: \environment{figure} and
+\environment{table} are \emph{designed} to float, and will always have
+the potential to appear away from where you asked for them. Therefore
+you need something that behaves like a \environment{figure} or
+\environment{table} environment, except that it doesn't allow the
+figure or table to float.
+
+The most straightforward way is to use of the \Package{float} package;
+it gives you a \texttt{[H]} float placement option that prevents
+floating:
+\begin{quote}
+\begin{verbatim}
+\begin{figure}[H]
+ \centering
+ \includegraphics{foo}
+ \caption{caption text}
+ \label{fig:nonfloat}
+\end{figure}
+\end{verbatim}
+\end{quote}
+As the example suggests, such a `\texttt{[H]}' figure (or
+corresponding table) offers all you need to cross-reference as well
+as typeset. (The package \Package{here} provides the same function,
+but is no longer recommended.)
+
+However, you don't actually \emph{have} to use \Package{float} (or
+\Package{here}) since it is, in fact, doing rather little for you.
+You can place your figure as you please, with a sequence like
+\begin{quote}
+\begin{verbatim}
+\begin{center}
+ \includegraphics{foo}
+ \captionof{figure}{caption text}
+ \label{fig:nonfloat}
+\end{center}
+\end{verbatim}
+\end{quote}
+which relies on the \csx{captionof} command to place a caption without
+benefit of an enclosing float. That command may be had from the extremely
+simple-minded package \Package{capt-of} or from the highly
+sophisticated \Package{caption} package.
+
+Using either method, you have to deal with the possibility of the
+figure or table being too large for the page. (Floating objects will
+float away in this circumstance; ``doing it by hand'', like this, you
+take upon yourself the responsibility for avoiding % ! line break
+`\textit{Overfull \csx{vbox}}' errors.
+
+A further problem is the possibility that such ``fixed floats'' will
+overtake ``real floats'', so that the numbers of figures will be out
+of order: figure 6 could be on page 12, while figure 5 had floated to
+page 13. It's best, therefore, either to stay with floating figures
+throughout a document, or to use fixed figures throughout.
+
+If it's really impossible to follow that counsel of perfection, you
+can use the \Package{perpage} package's command \csx{MakeSorted}
+command:
+\begin{quote}
+\begin{verbatim}
+...
+\usepackage{float}
+\usepackage{perpage}
+\MakeSorted{figure}
+\MakeSorted{table}
+...
+\end{verbatim}
+\end{quote}
+and the sequence of float numbers is all correct.
+\begin{ctanrefs}
+\item[capt-of.sty]\CTANref{capt-of}
+\item[caption.sty]\CTANref{caption}
+\item[float.sty]\CTANref{float}
+\item[here.sty]\CTANref{here}
+\item[perpage.sty]Distributed as part of \CTANref{bigfoot}[perpage]
+\end{ctanrefs}
+
+\subsection{Footnotes}
+
+\Question[Q-footintab]{Footnotes in tables}
+
+The standard \LaTeX{} \csx{footnote} command doesn't work in tables;
+the tabular environment (and its ``relations'') traps footnotes, and
+they can't escape to the bottom of the page. As a result, you get
+footnote marks in the table, and nothing else.
+
+This accords with common typographic advice: footnotes and tables are
+reckoned not to mix.
+
+The solution, if you accept the advice, is to use ``table notes''.
+The package \Package{threeparttable} provides table notes, and
+\Package{threeparttablex} additionally supports them in
+\environment{longtable}s. \Package{Threeparttable} works happily in
+ordinary text, or within a \environment{table} float.
+
+The \Package{ctable} package extends the model of
+\Package{threeparttable}, and also uses the ideas of the
+\Package{booktabs} package. The \csx{ctable} command does the complete
+job of setting the table, placing the caption, and defining the
+notes. The ``table'' may consist of diagrams, and a parameter in
+\csx{ctable}'s optional argument makes the float that is created a
+``figure'' rather than a ``table''.
+
+If you really want ``real'' footnotes in tables, despite the expert
+advice, you can:
+\begin{itemize}
+\item Use \csx{footnotemark} to position the little marker
+ appropriately, and then put in \csx{footnotetext} commands to fill in
+ the text once you've closed the \environment{tabular} environment.
+ This is described in Lamport's book, but it gets messy if there's
+ more than one footnote.
+\item Stick the \environment{tabular} environment in a
+ \environment{minipage}. Footnotes in the
+ table then ``work'', in the \environment{minipage}'s style, with no
+ extra effort. (This is, in effect, somewhat like table notes, but
+ the typeset appearance isn't designed for the job.)
+\item Use \Package{tabularx} or \Package{longtable} from the \LaTeX{}
+ tools distribution; they're noticeably less efficient than the
+ standard \environment{tabular} environment, but they do allow
+ footnotes.
+\item Use \Package{tablefootnote}; it provides a command \csx{tablefootnote},
+ which does the job without fuss.
+\item Use \Package{footnote}, which provides an
+ \environment{savenotes} which collects all footnotes and emits them
+ at the end of the environment; thus if you put your
+ \environment{tabular} environment inside a \environment{savenotes}
+ environment, the footnotes will appear as needed. Alternatively,
+ you may use \cmdinvoke{makesavenoteenv}{tabular} in the preamble of your
+ document, and tables will all behave as if they were inside a
+ \environment{savenotes} environment.
+\item Use \Package{mdwtab} from the same bundle; it will handle
+ footnotes as you might expect, and has other facilities to increase
+ the beauty of your tables. Unfortunately, it may be incompatible
+ with other table-related packages, though not those in the standard `tools'
+ bundle.
+\end{itemize}
+All the techniques listed will work, to some extent, whether in a float or
+in ordinary text. The author of this \acro{FAQ} answer doesn't actually
+recommend any of them, believing that table notes are the way to go\dots{}
+\begin{ctanrefs}
+\item[ctable.sty]\CTANref{ctable}
+\item[footnote.sty]Distributed as part of \CTANref{mdwtools}[footnote]
+\item[longtable.sty]Distributed as part of \CTANref{2etools}[longtable]
+\item[mdwtab.sty]Distributed as part of \CTANref{mdwtools}[mdwtab]
+\item[tablefootnote.sty]\CTANref{tablefootnote}
+\item[threeparttable.sty]\CTANref{threeparttable}
+\item[threeparttablex.sty]\CTANref{threeparttablex}
+\item[tabularx.sty]Distributed as part of \CTANref{2etools}[tabularx]
+\end{ctanrefs}
+\LastEdit{2013-03-11}
+
+\Question[Q-ftnsect]{Footnotes in \LaTeX{} section headings}
+
+The \csx{footnote} command is fragile, so that simply placing the
+command in \csx{section}'s arguments isn't satisfactory. Using
+\csx{protect}\csx{footnote} isn't a good idea either: the arguments of a
+section command are used in the table of contents and (more
+dangerously) potentially also in page headers. While footnotes will
+work in the table of contents, it's generally not thought a ``good
+thing'' to have them there; in the page header, footnotes will simply
+fail. Whatever the desirability of the matter, there's no mechanism
+to suppress the footnote in the page header while allowing it in the table
+of contents, so the footnote may only appear in the section heading itself.
+
+To suppress the footnote in headings and table of contents:
+\begin{itemize}
+\item Take advantage of the fact that the mandatory argument doesn't
+ `move' if the optional argument is present:
+
+ \cmdinvoke{section}[title]%
+ \texttt{\{title}\cmdinvoke{footnote}{title ftnt}\texttt{\}}
+\item Use the \Package{footmisc} package, with package option
+ \texttt{stable}~--- this modifies footnotes so that they softly and
+ silently vanish away if used in a moving argument. With this, you
+ simply need:
+\begin{verbatim}
+% in the document preamble
+\usepackage[stable]{footmisc}
+...
+% in the body of the document
+\section{title\footnote{title ftnt}}
+\end{verbatim}
+\end{itemize}
+\begin{ctanrefs}
+\item[footmisc.sty]\CTANref{footmisc}
+\end{ctanrefs}
+
+\Question[Q-ftncapt]{Footnotes in captions}
+
+Footnotes in captions are especially tricky: they present problems of
+their own, on top of the problems one experiences with
+\Qref*{footnotes in section titles}{Q-ftnsect} (footnotes migrating to
+to the list of figures or tables, or % ! line break
+\Qref{apparently random errors}{Q-extrabrace} because
+\csx{footnote} is a fragile command), and with % ! line break
+\Qref*{footnotes in tables}{Q-footintab} (typically, the footnote
+simply disappears). Fortunately, the requirement for footnotes in
+captions is extremely rare: if you are experiencing problems, it is
+worth reviewing what you are trying to say by placing this footnote:
+other options are to place text at the bottom of the float, or to
+place a footnote at the point where you refer to the float.
+
+Note that the \Package{threeparttable} scheme (see, again, % ! line break
+\Qref[question]{footnotes in tables}{Q-footintab}) also applies
+to notes in captions, and may very well be preferable to whatever you
+were thinking of.
+
+If you \emph{are} going to proceed:
+\begin{itemize}
+\item use an optional argument in your \csx{caption} command, that
+ doesn't have the footnote in it; this prevents the footnote
+ appearing in the ``List of \dots{}'', and
+\item put your whole float in a \environment{minipage} so as to keep
+ the footnotes with the float.
+\end{itemize}
+so we have:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\begin{figure}
+ \begin{minipage}{\textwidth}
+ ...
+ \caption[Compact Routing Example]%
+ {Compact Routing\footnote{something} Example}
+ \end{minipage}
+\end{figure}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\begin{figure}
+ \begin{minipage}{\textwidth}
+ ...
+ \caption[Compact Routing Example]%
+ {Compact Routing\footnote{something}
+ Example}
+ \end{minipage}
+\end{figure}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+So, we make an entry for the List of Figures, which doesn't hold
+troublesome commands, such as \csx{footnote}.
+
+However, \emph{as well as} all of the above, one \emph{also} has to
+deal with the tendency of the \csx{caption} command to produce the
+footnote's text twice. For this last problem, there is no tidy
+solution this author is aware of.
+
+If you're suffering the problem, a well-constructed \csx{caption}
+command in a \environment{minipage} environment within a float (as
+in the example above) can produce \emph{two} copies of the footnote
+body ``something''. (In fact, the effect only occurs with captions that are
+long enough to require two lines to be typeset, and so wouldn't appear
+with such a short caption as that in the example above.)
+
+The documentation of the \Package{ccaption} package describes a really
+rather awful work-around for this problem.
+\begin{ctanrefs}
+\item[ccaption.sty]\CTANref{ccaption}
+\item[threeparttable.sty]\CTANref{threeparttable}
+\end{ctanrefs}
+\LastEdit{2012-04-12}
+
+\Question[Q-repfootnote]{Footnotes whose texts are identical}
+
+If the \emph{same} footnote turns up at several places within a
+document, it's often inappropriate to repeat the footnote in its
+entirety over and over again. We can avoid repetition by
+semi-automatic means, or by simply labelling footnotes that we know
+we're going to repeat and then referencing the result. There is no
+completely automatic solution (that detects and suppresses repeats)
+available.
+
+If you know you only have one footnote, which you want to repeat, the
+solution is simple: merely use the optional argument of
+\csx{footnotemark} to signify the repeats:
+\begin{quote}
+\begin{verbatim}
+...\footnote{Repeating note}
+...
+...\footnotemark[1]
+\end{verbatim}
+\end{quote}
+\dots{}\@ which is very easy, since we know there will only ever be a
+footnote number 1. A similar technique can be used once the footnotes
+are stable, reusing the number that \LaTeX{} has allocated. This can
+be tiresome, though, as any change of typesetting could change the
+relationships of footnote and repeat: labelling is inevitably better.
+
+Simple hand-labelling of footnotes is possible, using a counter dedicated
+to the job:
+\begin{quote}
+\begin{verbatim}
+\newcounter{fnnumber}
+...
+...\footnote{Text to repeat}%
+\setcounter{fnnumber}{\thefootnote}%
+...
+...\footnotemark[\thefnnumber]
+\end{verbatim}
+\end{quote}
+but this is somewhat tedious. \LaTeX{}'s labelling mechanism can be
+summoned to our aid, but there are ugly error messages before the
+\csx{ref} is resolved on a second run through \LaTeX{}:
+\begin{quote}
+\begin{verbatim}
+...\footnote{Text to repeat\label{fn:repeat}}
+...
+...\footnotemark[\ref{fn:repeat}]
+\end{verbatim}
+\end{quote}
+Alternatively, one may use the \csx{footref} command, which has the
+advantage of working even when the footnote mark isn't expressed as a
+number. The command is defined in the \Package{footmisc} package and
+in the \Class{memoir} class (at least); \csx{footref} reduces the above
+example to:
+\begin{quote}
+\begin{verbatim}
+...\footnote{Text to repeat\label{fn:repeat}}
+...
+...\footref{fn:repeat}
+\end{verbatim}
+\end{quote}
+This is the cleanest simple way of doing the job. Note that the
+\csx{label} command \emph{must} be inside the argument of
+\csx{footnote}.
+
+The \Package{fixfoot} package takes away some of the pain of the
+matter: you declare footnotes you're going to reuse, typically in the
+preamble of your document, using a \csx{DeclareFixedFoot} command, and
+then use the command you've `declared' in the body of the document:
+\begin{quote}
+\begin{verbatim}
+\DeclareFixedFootnote{\rep}{Text to repeat}
+...
+...\rep{}
+...\rep{}
+\end{verbatim}
+\end{quote}
+The package ensures that the repeated text appears at most once per
+page: it will usually take more than one run of \LaTeX{} to get rid of
+the repeats.
+\begin{ctanrefs}
+\item[fixfoot.sty]\CTANref{fixfoot}
+\item[footmisc.sty]\CTANref{footmisc}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-multfoot]{More than one sequence of footnotes}
+
+The need for more than one series of footnotes is common in critical
+editions (and other literary criticism), but occasionally arises in
+other areas.
+
+Of course, the canonical critical edition package, \Package{edmac},
+offers the facility, as does its \LaTeX{} port, the \Package{ledmac}
+package.
+
+Multiple ranges of footnotes are offered to \LaTeX{} users by the
+\Package{manyfoot} package. The package provides a fair array of
+presentation options, as well. Another critical edition
+\Package{ednotes} package is built upon a basis that includes
+\Package{manyfoot}, as its mechanism for multiple sets of footnotes.
+
+The \Package{bigfoot} package also uses \Package{manyfoot} as part of
+its highly sophisticated structure of footnote facilities, which was
+also designed to support typesetting critical editions.
+\begin{ctanrefs}
+\item[bigfoot]\CTANref{bigfoot}
+\item[edmac]\CTANref{edmac}
+\item[ednotes]\CTANref{ednotes}
+\item[ledmac]\CTANref{ledmac}
+\item[manyfoot.sty]Distributed as part of \CTANref{ncctools}[manyfoot]
+\end{ctanrefs}
+
+\Question[Q-footnpp]{Footnotes numbered ``per page''}
+
+The obvious solution is to make the footnote number reset whenever the
+page number is stepped, using the % ! line break
+\Qref*{\LaTeX{} internal mechanism}{Q-addtoreset}. Sadly, the place
+in the document where the page number is stepped is unpredictable, not
+(``tidily'') at the end of the printed page; so changing the footnote
+number only ever works by `luck'.
+
+As a result, resetting footnotes is inevitably a complicated process,
+using labels of some sort. It's nevertheless important, given the
+common requirement for footnotes marked by symbols (with painfully
+small symbol sets). There are four packages that manage it, one way
+or another.
+
+The \Package{perpage} and \Package{zref-perpage} packages provide a
+general mechanism for resetting counters per page, so can obviously be
+used for this task. The interface is pretty simple:
+\cmdinvoke{MakePerPage}{footnote} (in \Package{perpage}) or
+\cmdinvoke{zmakeperpage}{footnote} (in \Package{zref-perpage}). If
+you want to restart the counter at something other than~1 (for example
+to avoid something in the \LaTeX{} footnote symbol list), you can use:
+\cmdinvoke{MakePerPage}[2]{footnote} (in \Package{perpage}) or
+\cmdinvoke{zmakeperpage}[2]{footnote} (in \Package{zref-perpage}).
+Note that you can also load \Package{zref-perpage}
+
+\Package{Perpage} is a compact and efficient package;
+\Package{zref-perpage}, being a \Package{zref} ``module'', comes with
+\Package{zref}'s general mechanism for extending the the
+\csx{label}---\csx{[page]ref} of \latex{}, which can offer many other
+useful facilities.
+
+The \Package{footmisc} package provides a variety of means of
+controlling footnote appearance, among them a package option
+\pkgoption{perpage} that adjusts the numbering per page; if you're
+doing something else odd about footnotes, it means you may only need
+the one package to achieve your ends.
+
+The \Package{footnpag} package also does per-page footnotes (and
+nothing else). With the competition from \Package{perpage}, it's
+probably not particularly useful any more.
+\begin{ctanrefs}
+\item[footmisc.sty]\CTANref{footmisc}
+\item[footnpag.sty]\CTANref{footnpag}
+\item[perpage.sty]Distributed as part \CTANref{bigfoot}[perpage]
+%\item[zref.sty]Distributed as part of \CTANref{oberdiek}[zref]
+\item[zref-perpage.sty]Distributed as part of \Package{zref} in
+ \CTANref{oberdiek}[zref]
+\end{ctanrefs}
+
+\Question[Q-run-fn-nos]{Not resetting footnote numbers per chapter}
+
+Some classes (for example, \Class{book} and \Class{report}) set up a
+different set of footnotes per chapter, by resetting the footnote
+number at the start of the chapter. This is essentially the same
+action as that of % ! line break
+\Qref*{equation, figure and table numbers}{Q-running-nos},
+except that footnote numbers don't get ``decorated'' with the chapter
+number, as happens with those other numbers.
+
+The solution is the same: use the \Package{chngcntr} package; since the
+numbers aren't ``decorated'' you can use the \csx{counterwithout*}
+variant; the code:
+\begin{quote}
+\begin{verbatim}
+\counterwithout*{footnote}{chapter}
+\end{verbatim}
+\end{quote}
+is all you need
+\begin{ctanrefs}
+\item[chngcntr.sty]\CTANref{chngcntr}
+\end{ctanrefs}
+
+\subsection{Document management}
+
+\Question[Q-filename]{What's the name of this file}
+
+One might want this so as to automatically generate a page header or
+footer recording what file is being processed. It's not easy\dots{}
+
+\TeX{} retains what it considers the name of the \emph{job}, only, in
+the primitive \csx{jobname}; this is the name of the file first
+handed to \TeX{}, stripped of its directory name and of any extension
+(such as \extension{tex}). If no file was passed (i.e., you're using
+\TeX{} interactively), \csx{jobname} has the value \texttt{texput}
+(the name that's given to \extension{log} files in this case).
+
+This is fine, for the case of a small document, held in a single file;
+most significant documents will be held in a bunch of files, and
+\TeX{} makes no attempt to keep track of files input to the
+\emph{job}. So the user has to keep track, himself~--- the only way
+is to patch the input commands and cause them to retain details of the
+file name. This is particularly difficult in the case of \plaintex{},
+since the syntax of the \csx{input} command is so peculiar.
+
+In the case of \LaTeX{}, the input commands have pretty regular
+syntax, and the simplest \Qref*{patching techniques}{Q-patch} can be
+used on them. (Note that latex{}'s \csx{input} command is itself a
+patch on top of the \plaintex{} command. Our patches apply to the
+\latex{} version of the command, which is used as \cmdinvoke*{input}{file})
+
+%% If you only have one level of input (you never input things from a
+%% file that was itself input), the job is almost trivial:
+%% \begin{quote}
+%% \begin{verbatim}
+%% \def\ThisFile{\jobname}
+%% \let\OldInput\input
+%% \renewcommand{\input}[1]{%
+%% \renewcommand{\ThisFile}{#1}%
+%% \OldInput#1%
+%% }
+%% \end{verbatim}
+%% \end{quote}
+%% With that, the macro \csx{ThisFile} always contains the last thing
+%% input: it starts pointing at the base file of your document
+%% (\csx{jobname}), and thereafter changes every time you use
+%% \cmdinvoke*{input}{file}. Note that this is not satisfactory if your
+%% document contains things \emph{other} than \csx{input} commands. For
+%% example, in:
+%% \begin{quote}
+%% \begin{verbatim}
+%% \documentclass{article}
+%% ... (macros above)
+%% \begin{document}
+%% \input{preamble}
+%% <body of document>
+%% \input{postamble}
+%% \end{document}
+%% \end{verbatim}
+%% \end{quote}
+%% \csx{ThisFile} contains ``\texttt{preamble}'' throughout the % !line break
+%% \meta{body of document}.
+
+%% Most ordinary users will quickly become irritated with the simplicity
+%% of of the \csx{ThisFile} mechanism above. The following code is more
+%% cunning: it maintains details of the files you've `come through' to
+%% get to where you are, and it restores \csx{ThisFile} to what the
+%% previous file was before returning.
+%% \begin{quote}
+%% \begin{verbatim}
+%% \def\ThisFile{\jobname}
+%% \newcounter{FileStack}
+%% \let\OrigInput\input
+%% \renewcommand{\input}[1]{%
+%% \stackinput{#1}{\OrigInput}%
+%% }
+%% \newcommand{\stackinput}[2]{%
+%% \stepcounter{FileStack}%
+%% \expandafter\let
+%% \csname NameStack\theFileStack\endcsname
+%% \ThisFile
+%% \def\ThisFile{#1}%
+%% #2#1%
+%% \expandafter\let\expandafter
+%% \ThisFile
+%% \csname NameStack\theFileStack\endcsname
+%% \addtocounter{FileStack}{-1}%
+%% }
+%% \end{verbatim}
+%% \end{quote}
+%% To do the same for \csx{include}, we need the simple addition:
+%% \begin{quote}
+%% \begin{verbatim}
+%% \let\OrigInclude\include
+%% \renewcommand{\include}[1]{%
+%% \stackinput{#1}{\OrigInclude}%
+%% }
+%% \end{verbatim}
+%% \end{quote}
+%% Remember, both examples of patching \csx{input} assume you always use
+%% \LaTeX{} syntax, i.e., always use braces around the argument.
+
+It is possible to keep track of the name of the file currently being
+processed, but it's surprisingly difficult (these \acro{FAQ}s offered
+code, for a long time, that just didn't work in many cases).
+
+The \Package{currfile} package provides a regular means of keeping
+track of the details of the current file (its name in
+\csx{currfilename}, directory in \csx{currfiledir}, as well as the
+file `base' name (less its extension) and its extension).
+\Package{Currfile} does this with the help of a second package,
+\Package{filehook}, which spots file operations that use \csx{input},
+\csx{InputIfFileExists} and \csx{include}, as well as package and
+class loading.
+
+The \Package{FiNK} (``File Name Keeper'') package keeps track of the
+file name and extension, in a macro \csx{finkfile}. \Package{FiNK} is
+now deprecated, in favour of \Package{currfile}, but remains available
+for use in old documents.
+%
+%% If you need the
+%% unadorned file name (without its `\extension{tex}'), use the commands:
+%% \begin{quote}
+%% \begin{verbatim}
+%% \def\striptexext#1.tex{#1}
+%% ...
+%% \edef\ThisFile{\expandafter\stripext\finkfile}
+%% \end{verbatim}
+%% \end{quote}
+%
+The \Package{FiNK} bundle includes a \File{fink.el} that provides
+support under \ProgName{emacs} with \acro{AUC}-\TeX{}.
+\begin{ctanrefs}
+\item[currfile.sty]\CTANref{currfile}
+\item[filehook.sty]\CTANref{filehook}
+\item[fink.sty]\CTANref{fink}
+\end{ctanrefs}
+
+\Question[Q-filesused]{All the files used by this document}
+
+When you're sharing a document with someone else (perhaps as part of a
+co-development cycle) it's as well to arrange that both correspondents
+have the same set of auxiliary files, as well as the document in
+question. Your correspondent obviously needs the same set of files
+(if you use the \Package{url} package, she has to have \Package{url}
+too, for example). But suppose you have a bug-free version of the
+\Package{shinynew} package but her copy is still the unstable
+original; until you both realise what is happening, such a situation
+can be very confusing.
+
+The simplest solution is the \LaTeX{} \csx{listfiles} command. This
+places a list of the files used and their version numbers in the log
+file. If you extract that list and transmit it with your file, it can
+be used as a check-list in case that problems arise.
+
+Note that \csx{listfiles} only registers things that are input by the
+``standard'' \LaTeX{} mechanisms (\csx{documentclass}, \csx{usepackage},
+\csx{include}, \csx{includegraphics} and so on).
+The \csx{input} command, as modified by \LaTeX{} and used, with
+\LaTeX{} syntax, as:
+\begin{verbatim}
+ \input{mymacros}
+\end{verbatim}
+records file details for \File{mymacros.tex}, but if you use \TeX{}
+primitive syntax for \csx{input}, as:
+\begin{verbatim}
+ \input mymacros
+\end{verbatim}
+\File{mymacros.tex} \emph{won't} be recorded, and so won't listed by
+\csx{listfiles}~--- you've bypassed the mechanism that records its use.
+
+The \Package{snapshot} package helps the owner of a \LaTeX{} document
+obtain a list of the external dependencies of the document, in a form
+that can be embedded at the top of the document. The intended use of
+the package is the creation of archival copies of documents, but it
+has application in document exchange situations too.
+
+The \ProgName{bundledoc} system uses the \Package{snapshot} to produce an
+archive (e.g., \extension{tar.gz} or \extension{zip}) of the files needed by your
+document; it comes with configuration files for use with
+\texlive{}-\ProgName{Unix} and \ProgName{\miktex{}}. It's plainly useful when
+you're sending the first copy of a document.
+
+The \ProgName{mkjobtexmf} finds which files are used in a `job',
+either via the \texttt{-recorder} option of \tex{}, or by using the
+(Unix) command \ProgName{strace} to keep an eye on what \tex{} is
+doing. The files thus found are copied (or linked) to a directory
+which may then be saved for transmission or archiving.
+\begin{ctanrefs}
+\item[bundledoc]\CTANref{bundledoc}
+\item[mkjobtexmf]\CTANref{mkjobtexmf}
+\item[snapshot.sty]\CTANref{snapshot}
+\end{ctanrefs}
+\LastEdit{2014-01-26}
+
+\Question[Q-changebars]{Marking changed parts of your document}
+
+One often needs clear indications of how a document has changed, but
+the commonest technique, ``change bars'' (also known as ``revision
+bars''), requires surprisingly much
+trickery of the programmer. The problem is that \TeX{} `proper'
+doesn't provide the programmer with any information about the
+``current position'' from which a putative start- or end-point of a
+bar might be calculated. \PDFTeX{} \emph{does} provide that
+information, but no \PDFTeX{}-based changebar package has been
+published, that takes advantage of that.
+
+The simplest package that offers change bars is Peter Schmitt's
+\Package{backgrnd.tex}; this was written as a \plaintex{} application
+that patches the output routine, but it appears to work at least on
+simple \LaTeX{} documents. Wise \LaTeX{} users will be alerted by the
+information that \Package{backgrnd} patches their output routine, and
+will watch its behaviour very carefully (patching the \LaTeX{} output
+routine is not something to undertake lightly\dots{}).
+
+The longest-established \LaTeX{}-specific solution is the
+\Package{changebar} package,
+which uses \csx{special} commands supplied by the driver you're using.
+You need therefore to tell the package which driver to you're using
+(in the same way that you need to tell the \Package{graphics}
+package); the list of available drivers is pretty
+wide, but does not include \ProgName{dvipdfm}. The package comes with
+a shell script \ProgName{chbar.sh} (for use on Unix machines) that
+will compare two documents and generate a third which is marked-up
+with \Package{changebar} macros to highlight changes.
+
+The shareware \ProgName{WinEDT} editor has a macro that will generate
+\Package{changebar} (or other) macros to show differences from an
+earlier version of your file, stored in an \ProgName{RCS}-controlled
+repository~--- see
+\URL{http://www.winedt.org/Macros/LaTeX/RCSdiff.php}
+
+The \Package{vertbars} package uses the techniques of the
+\Package{lineno} package (which it loads, so the \Package{lineno}
+itself must be installed); it's thus the smallest of the packages for
+change bar marking, since it leaves all the trickery to another
+package. \Package{Vertbars} defines a \environment{vertbar}
+environment to create changebars.
+
+The \Package{framed} package is
+another that provides bars as a side-effect of other desirable
+functionality: its \environment{leftbar} environment is simply a
+stripped-down frame (note, though, that the environment makes a
+separate paragraph of its contents, so it is best used when the
+convention is to mark a whole changed paragraph.
+
+Finally, the \Class{memoir} class allows marginal editorial comments,
+which you can obviously use to delimit areas of changed text.
+
+An even more comprehensive way to keep track of changes is employed by
+some word-processors~--- to produce a document that embodies both
+``old'' and ``new'' versions.
+
+To this end, the package \Package{changes} allows the user to manually
+markup changes of text, such as additions, deletions, or replacements.
+Changed text is shown in a different colour; deleted text is crossed
+out. The package allows you to define additional authors and their
+associated colour; it also allows you to define a markup for authors
+or annotations. The documentation (very clearly) demonstrates how the
+various functions work.
+
+The \ProgName{Perl} script \ProgName{latexdiff} may also be used to
+generate such markup for \LaTeX{} documents; you feed it the two
+documents, and it produces a new \LaTeX{} document in which the
+changes are very visible. An example of the output is embedded in the
+documentation,
+\begin{narrowversion} % actually non-hyperversion
+ \File{latexdiff-man.pdf}, in the distribution.
+\end{narrowversion}
+\begin{wideversion} % actually hyperversion
+ \href{http://mirrors.ctan.org/support/latexdiff/latexdiff-man.pdf}{latexdiff-man.pdf}
+ (part of the distribution).
+\end{wideversion}
+A rudimentary revision facility is provided by another
+\ProgName{Perl} script, \ProgName{latexrevise}, which accepts or rejects
+all changes. Manual editing of the difference file can be used to
+accept or reject selected changes only.
+\begin{ctanrefs}
+\item[backgrnd.tex]\CTANref{backgrnd}
+\item[changebar.sty]\CTANref{changebar}
+\item[changes.sty]\CTANref{changes}
+\item[framed.sty]\CTANref{framed}
+\item[latexdiff, latexrevise]\CTANref{latexdiff}
+\item[lineno.sty]\CTANref{lineno}
+\item[memoir.cls]\CTANref{memoir}
+\item[vertbars.sty]\CTANref{vertbars}
+\item[winedt]\CTANref{winedt}
+\end{ctanrefs}
+
+\Question[Q-conditional]{Conditional compilation and ``comments''}
+
+While \LaTeX{} (or any other \TeX{}-derived package) isn't really like a
+compiler, people regularly want to do compiler-like things using it.
+Common requirements are conditional `compilation' and `block
+comments', and several \LaTeX{}-specific means to this end are available.
+
+The simple \cmdinvoke{newcommand}{\csx{gobble}}[1]\texttt{\{\}}
+and \csx{iffalse}\texttt{ ... }\csx{fi} aren't really satisfactory (as
+a general solution) for comments, since the matter being skipped is
+nevertheless scanned by \TeX{}, not always as you would expect. The
+scanning imposes restrictions on what you're allowed to skip; this may
+not be a problem in \emph{today's} job, but could return to bite you
+tomorrow. For an example of surprises that may come to bite you,
+consider the following example (derived from real user experience):
+\begin{quote}
+\begin{verbatim}
+\iffalse % ignoring this bit
+consider what happens if we
+use \verb+\iftrue+ -- a surprise
+\fi
+\end{verbatim}
+\end{quote}
+The \csx{iftrue} is spotted by \TeX{} as it scans, ignoring the
+\csx{verb} command; so the \csx{iffalse} isn't terminated by the
+following \csx{fi}. Also, \csx{gobble} is pretty inefficient at
+consuming anything non-trivial, since all the matter to be skipped is
+copied to the argument stack before being ignored.
+
+If your requirement is for a document from which whole chapters (or
+the like) are missing, consider the \LaTeX{}
+\csx{include}/\csx{includeonly} system. If you `\csx{include}' your
+files (rather than \csx{input} them~--- see % line wrap!
+\Qref[question]{What's going on in my \csx{include} commands?}{Q-include}),
+\LaTeX{} writes macro traces of what's going on at the end of each
+chapter to the \extension{aux} file; by using \csx{includeonly}, you can give
+\LaTeX{} an exhaustive list of the files that are needed. Files that
+don't get \csx{include}d are skipped entirely, but the document
+processing continues as if they \emph{were} there, and page, footnote,
+and other numbers are not disturbed. Note that you can choose which
+sections you want included interactively, using the
+\Package{askinclude} package.
+
+A variant on the \csx{includeonly} mechanism is offered by the
+\Package{stampinclude} package, which takes advantage of the \pdftex{}
+\csx{pdffilemoddate} command. When an \csx{include}d file is
+processed in a \latex{} document, an \extension{aux} file is created
+holding data such as page-number ranges and chapter/section numbers.
+When \csx{stampinclude} is included in a document, it compares the
+file system modification times for each file and its corresponding
+\extension{aux} file; the file is only compiled in ``this run'' of the
+document if the file is newer than its corresponding \extension{aux}
+file. The package requires a current \pdftex{}, and will also run on
+\luatex{} if the \Package{pdftexcmds} package is available
+(\Package{pdftexcmds} emulates the requisite \pdftex{} commands using
+\texttt{lua}. Apart from this requirement, \Package{stampinclude} is
+a low-maintenace object; include it in your document and it silently
+does its job. When you want a final version of your document, delete
+all the \extension{aux} files, and and \Package{stampinclude} won't
+interfere.)
+
+The inverse can be done using the \Package{excludeonly} package: this
+allows you to exclude a (list of) \csx{include}d files from your
+document, by means of an \csx{excludeonly} command.
+
+If you want to select particular pages of your document, use Heiko
+Oberdiek's \Package{pagesel} or the \Package{selectp} packages. You
+can do something similar with an existing \acro{PDF} document (which
+you may have compiled using \ProgName{pdflatex} in the first place),
+using the \Package{pdfpages} package. The job is then done with a
+document looking like:
+\begin{quote}
+\begin{verbatim}
+\documentclass{article}
+\usepackage[final]{pdfpages}
+\begin{document}
+\includepdf[pages=30-40]{yoursource.pdf}
+\end{document}
+\end{verbatim}
+\end{quote}
+(To include all of the document, you write
+\begin{quote}
+\begin{verbatim}
+\includepdf[pages=-]{yoursource.pdf}
+\end{verbatim}
+\end{quote}
+omitting the start and end pages in the optional argument.)
+
+If you want flexible facilities for including or excluding small
+portions of a file, consider the \Package{comment}, \Package{version} or
+\Package{optional} packages.
+
+The \Package{comment} package allows you to declare areas of a document to be
+included or excluded; you make these declarations in the preamble of
+your file. The command \cmdinvoke*{includecomment}{version-name}
+declares an environment \environment{version-name} whose content will
+be included in your document, while
+\cmdinvoke*{excludecomment}{version-name} defines an environment whose
+content will be excluded from the document. The package uses a method
+for exclusion that is pretty robust, and can cope with ill-formed
+bunches of text (e.g., with unbalanced braces or \csx{if} commands).
+
+(These FAQs employ the \Package{comment} package to alter layout
+between the printed (two-column) version and the \acro{PDF} version
+for browsing; there are \environment{narrowversion} and
+\environment{wideversion} for the two versions of the file.)
+
+\Package{version} offers similar facilities to \File{comment.sty}
+(i.e., \csx{includeversion} and \csx{excludeversion} commands);
+it's far ``lighter weight'', but is less robust (and in particular,
+cannot deal with very large areas of text being included/excluded).
+
+A significant development of \Package{version}, confusingly called
+\Package{versions} (i.e., merely a plural of the old package name).
+\Package{Versions} adds a command
+\cmdinvoke*{markversion}{version-name} which defines an environment
+that prints the included text, with a clear printed mark around it.
+
+\Package{optional} defines a command \csx{opt}; its first argument is
+an `inclusion flag', and its second is text to be included or
+excluded. Text to be included or excluded must be well-formed
+(nothing mismatched), and should not be too big~--- if a large body of
+text is needed, \csx{input} should be used in the argument.
+The documentation (in the package file itself) tells you
+how to declare which sections are to be included: this can be done in
+the document preamble, but the documentation also suggests ways in
+which it can be done on the command line that invokes \LaTeX{}, or
+interactively.
+
+And, not least of this style of conditional compilation,
+\Package{verbatim} (which should be available in any distribution)
+defines a \environment{comment} environment, which enables the
+dedicated user of the source text editor to suppress bits of a
+\LaTeX{} source file. The \Class{memoir} class offers the same
+environment.
+
+An interesting variation is the \Package{xcomment} package. This
+defines an environment whose body is all excluded, apart from
+environments named in its argument. So, for example:
+\begin{quote}
+\begin{verbatim}
+\begin{xcomment}{figure,table}
+ This text is not included
+ \begin{figure}
+ This figure is included
+ \end{figure}
+ This is not included, either
+ \begin{table}
+ This table also included
+ \end{table}
+ ...
+\end{xcomment}
+\end{verbatim}
+\end{quote}
+
+The \Package{tagging} package offers another neat set of syntax, which
+allow the user to apply ``tags'' to chunks of text, and to include and
+exclude tagged text, according to the tags. For example, the user may
+`use' text marked with some tags, and to `drop' marked with others:
+\begin{quote}
+\begin{verbatim}
+\usetag{<tag list>}
+\droptag{<tag list>}
+\end{verbatim}
+\end{quote}
+(the tag lists consist of comma-separated single words).
+
+There are then commands
+\begin{quote}
+\begin{verbatim}
+\tagged{<tag list>}{<text>}
+\end{verbatim}
+\end{quote}
+which reproduces the text only if the \meta{tag list} contains at
+least one tag listed in the \csx{usetag} comand, and
+\begin{quote}
+\begin{verbatim}
+\untagged{<tag list>}{<text>}
+\end{verbatim}
+\end{quote}
+which only reproduces the text unless the \meta{tag list} contains
+none of the tags mention in the \csx{droptag} command.
+
+Further commands offer an if-then-else setup, and specify
+\environment{taggedblock} and \environment{untaggedblock} environments
+that.
+
+Another valuable aspect of the problem is covered by the
+\Package{extract} package. The package allows you to produce a
+``partial copy'' of an existing document:
+the package was developed to permit production of a ``book of
+examples'' from a set of lecture notes. The package documentation
+shows the following usage:
+\begin{quote}
+\begin{verbatim}
+\usepackage[
+ active,
+ generate=foobar,
+ extract-env={figure,table},
+ extract-cmd={chapter,section}
+]{extract}
+\end{verbatim}
+\end{quote}
+which will cause the package to produce a file \File{foobar.tex}
+containing all the \environment{figure} and \environment{table}
+environments, and the \csx{chapter} and \csx{section} commands, from
+the document being processed. The new file \File{foobar.tex} is
+generated in the course of an otherwise ordinary run on the `master'
+document. The package provides a good number of other facilities,
+including (numeric or labelled) ranges of environments to extract, and
+an \environment{extract} environment which you can use to create complete
+ready-to-run \LaTeX{} documents with stuff you've extracted.
+\begin{ctanrefs}
+\item[askinclude.sty]Distributed as part of \CTANref{oberdiek}[askinclude]
+\item[comment.sty]\CTANref{comment}
+\item[excludeonly.sty]\CTANref{excludeonly}
+\item[extract.sty]\CTANref{extract}
+\item[memoir.cls]\CTANref{memoir}
+\item[optional.sty]\CTANref{optional}
+\item[pagesel.sty]Distributed as part of \CTANref{oberdiek}[pagesel]
+\item[pdfpages.sty]\CTANref{pdfpages}
+\item[selectp.sty]\CTANref{selectp}
+\item[stampinclude.sty]Distributed as part of \CTANref{oberdiek}[stampinclude]
+\item[tagging.sty]\CTANref{tagging}
+\item[verbatim.sty]Distributed as part of \CTANref{2etools}[verbatim]
+\item[version.sty]\CTANref{version}
+\item[versions.sty]\CTANref{versions}
+\item[xcomment.sty]\CTANref{xcomment}
+\end{ctanrefs}
+\LastEdit{2014-06-09}
+
+\Question[Q-docotherdir]{Bits of document from other directories}
+
+A common way of constructing a large document is to break it into a
+set of files (for example, one per chapter) and to keep everything
+related to each of these subsidiary files in a subdirectory.
+
+Unfortunately, \TeX{} doesn't have a changeable ``current directory'',
+so that all files you refer to have to be specified relative to the
+same directory as the main file. Most people find this
+counter-intuitive.
+
+It may be appropriate to use the ``path extension'' technique
+% beware line break
+\Qref[of question]{used in temporary installations}{Q-tempinst} to deal with
+this problem. However, if there several files with the same name in
+your document, such as \File{chapter1/fig1.eps} and
+\File{chapter2/fig1.eps}, you're not giving \TeX{} any hint as to
+which you're referring to when in the main chapter file you say
+\cmdinvoke{input}{sect1}; while this is readily soluble in the case of
+human-prepared files (just don't name them all the same),
+automatically produced files have a way of having repetitious names,
+and changing \emph{them} is a procedure prone to error.
+
+The \Package{import} package comes to your help here: it defines an
+\csx{import} command that accepts a full path name and the name of a
+file in that directory, and arranges things to ``work properly''.
+So, for example, if \File{/home/friend/results.tex} contains
+\begin{quote}
+\begin{verbatim}
+Graph: \includegraphics{picture}
+\input{explanation}
+\end{verbatim}
+\end{quote}
+then \cmdinvoke{import}{/home/friend/}{results} will include both
+graph and explanation as one might hope. A \csx{subimport} command
+does the same sort of thing for a subdirectory (a relative path rather
+than an absolute one), and there are corresponding \csx{includefrom}
+and \csx{subincludefrom} commands.
+
+The \Package{chapterfolder} package provides commands to deal with its
+(fixed) model of file inclusion in a document. It provides commands
+\csx{cfpart}, \csx{cfchapter}, \csx{cfsection} and \csx{cfsubsection},
+each of which takes directory and file arguments, e.g.:
+\begin{quote}
+\begin{verbatim}
+\cfpart[pt 1]{Part One}{part1}{part}
+\end{verbatim}
+\end{quote}
+which command will issue a `normal' command % ! line break
+\cmdinvoke{part}[pt 1]{Part One} and then input the file
+\File{part1/part.tex}, remembering that \File{part1/} is now the
+``current folder''. There are also commands of the form
+\csx{cfpartstar} (which corresponds to a \csx{part*} command).
+
+Once you're ``in'' a \Package{chapterfolder}-included document, you
+may use \csx{cfinput} to input something relative to the ``current
+folder'', or you may use \csx{input}, using \csx{cfcurrentfolder} to
+provide a path to the file. (There are also
+\csx{cfcurrentfolderfigure} for a \path{figure/} subdirectory and
+\csx{cfcurrentfolderlistings} for a \path{listings/} subdirectory.)
+
+Documentation of \Package{chapterfolder} is in French, but the
+\File{README} in the directory is in English.
+\begin{ctanrefs}
+\item[chapterfolder.sty]\CTANref{chapterfolder}
+\item[import.sty]\CTANref{import}
+\end{ctanrefs}
+
+\Question[Q-RCS]{Version control using \acro{RCS}, \acro{CVS} or the like}
+
+If you use \acro{RCS}, \acro{CVS}, \ProgName{Subversion},
+\ProgName{Bazaar} or \ProgName{Git} to maintain
+your \AllTeX{} documents under version control, you may need some
+mechanism for including the version details in your document, in such
+a way that they can be typeset (that is, rather than just hiding them
+inside a comment).
+
+The most complete solution for \acro{RCS} and \acro{CVS} is to use the
+(\LaTeX{}) package \Package{rcs}, which allows you to parse and
+display the contents of \acro{RCS} keyword fields in an extremely
+flexible way. The package \Package{rcsinfo} is simpler, but does most
+of what you want, and some people prefer it; it is explicitly
+compatible with \ProgName{LaTeX2HTML}.
+
+If, however, you need a solution which works without using external
+packages, or which will work in \plaintex{}, then you can use the
+following minimal solution:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\def\RCS$#1: #2 ${\expandafter\def\csname RCS#1\endcsname{#2}}
+\RCS$Revision: 1.47 $ % or any RCS keyword
+\RCS$Date: 2014/01/28 18:17:23 $
+...
+\date{Revision \RCSRevision, \RCSDate}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\def\RCS$#1: #2 ${\expandafter
+ \def\csname RCS#1\endcsname{#2}%
+}
+\RCS$Revision: 1.47 $ % or any RCS keyword
+\RCS$Date: 2014/01/28 18:17:23 $
+...
+\date{Revision \RCSRevision, \RCSDate}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+
+If you are a user of \ProgName{Subversion}, the package \Package{svn}
+may be for you. It has explicit cleverness about dealing with dates:
+\begin{quote}
+\csx{documentclass}\texttt{\{\meta{foo}\}}\\
+\texttt{...}\\
+\cmdinvoke{usepackage}{svn}\\
+\csx{SVNdate}\texttt{ \$Date\$}\\
+\cmdinvoke{author}{...}\\
+\cmdinvoke{title}{...}\\
+\texttt{...}\\
+\cmdinvoke{begin}{document}\\
+\csx{maketitle}\\
+\texttt{...}\\
+\cmdinvoke{end}{document}
+\end{quote}
+will (once \ProgName{subversion} has committed a copy of the document)
+cause \csx{maketitle} use the date that has been written into the
+\texttt{\$Date\$} keyword.
+
+Another alternative for \ProgName{Subversion} users is the
+\Package{svninfo} package, which has much the same mechanisms as does
+\Package{svn} but with a rather different focus. \Package{Svninfo}
+does the date trick that \Package{svn} performs (controlled by a
+package option), and can set up page foot-lines using % ! line break
+\Qref*{package \Package{fancyhdr}}{Q-fancyhdr}. There isn't much to
+choose between the two packages: you should read the packages'
+documentation to see which suits you best.
+
+An alternative script-based approach to version control has been taken
+by the \Package{vc} bundle, that in certain situations might work more
+reliably than any of the packages mentioned above. The \Package{vc}
+bundle supports \ProgName{Bazaar}, \ProgName{Git} and
+\ProgName{Subversion} usage and works with both \LaTeX{} and
+\plaintex{}. Note that \Package{vc} is the only option that
+currently claims to support \ProgName{Bazaar}-controlled repositories.
+
+Finally, for now, the \Package{gitinfo} package supports
+\ProgName{Git}-controlled documents.
+\begin{ctanrefs}
+\item[gitinfo.sty]\CTANref{gitinfo}
+\item[rcs.sty]\CTANref{rcs}
+\item[rcsinfo.sty]\CTANref{rcsinfo}
+\item[svn.sty]\CTANref{svn}
+\item[svninfo.sty]\CTANref{svninfo}
+\item[vc]\CTANref{vc}
+\end{ctanrefs}
+\LastEdit{2011-08-31}
+
+\Question[Q-make]{Makefiles for \LaTeX{} documents}
+
+\LaTeX{} documents are tricky beasts for building using
+(\ProgName{Uni*x}) \ProgName{make} on: the need to
+instruct \LaTeX{} to run several times for essentially different
+reasons (for example, ``get the table of contents stable'', ``get the
+labels stable'', ``add the bibliography'', ``add the index'') is
+actually rather difficult to express in the `ordinary' sort of
+dependency graph that one constructs for \ProgName{make}.
+
+The \ProgName{latex-make} package offers help with this task (far more
+sophisticated techniques than in the script that builds these \acro{FAQ}s); it
+looks good, but reports of its use (other than by its author) are scarce.
+
+For a long time, the only \ProgName{make}-like package on \acro{CTAN}
+was \ProgName{latexmk}, which is a \ProgName{Perl}
+script that analyses your \LaTeX{} source for its dependencies, runs
+\BibTeX{} or \ProgName{makeindex} as and when it notices that those
+programs' input (parts of the \extension{aux} file, or the
+\extension{idx} file, respectively) has changed, and so on.
+\ProgName{Latexmk} is a fine
+solution (and was used in generating printable versions of these
+\acro{FAQ}s for some time); it has recently been upgraded and has
+many bells and whistles that allow it to operate as if it were a poor
+man's \WYSIWYG{} system.
+
+A recent strong contender is \ProgName{arara}, written in
+\ProgName{Java}. It is (the documentation says) based on ``rules''
+and ``directives''; its aim is to determine what to do from explicit
+instructions in the document's source code, rather than secondary
+sources such as log file analysis. \ProgName{Arara} is relatively new
+on CTAN, and comes with recommendations from many of the great and
+good of the \latex{} world.
+
+Newer still is the Python script \ProgName{try}, which has a similar
+structure to \ProgName{arara}~--- it, too, reads instructions in the
+document source.
+
+Apparently along the same lines, is Auto\LaTeX{}. The \File{README}
+of the distribution is actual a Unix-type man-page output, and shows
+great attention to the details of the document production process.
+
+The (Ruby) script \ProgName{mk} (also, apparently, known as
+\ProgName{latex_maker}) works well with another of the author's
+scripts script called \ProgName{vpp} (View and Print
+\PS{}/\acro{PDF}).
+
+Windows users of the \miktex{} system may use that system's
+\ProgName{texify} application. \ProgName{Texify} deals with basic
+\LaTeX{} features, including generating a bibliography and an index;
+it makes no claim to deal with other things (such as multiple
+bibliographies or indexes, or lists of terminology, etc.), which
+Auto\LaTeX{} can be configured to process.
+
+The \Qref*{\Package{texinfo} system}{Q-texinfo} comes with a similar
+utility called \ProgName{texi2dvi}, which is capable of ``converting''
+either \LaTeX{} or \Package{texinfo} files into \acro{DVI} (or into
+\acro{PDF}, using \PDFTeX{}).
+
+A later contribution is the bundle \Package{latexmake}, which
+offers a set of \ProgName{make} rules that invoke \ProgName{texi2dvi}
+as necessary.
+
+The curious may examine the rules employed to run the present
+\acro{FAQ} through \LaTeX{}: we don't present them as a complete
+solution, but some of the tricks employed are surely re-usable.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}arara]\CTANref{arara}
+\item[\nothtml{\rmfamily}AutoLaTeX]\CTANref{autolatex}
+\item[\nothtml{\rmfamily}\acro{FAQ} distribution]\CTANref{faq}
+\item[\nothtml{\rmfamily}latexmake]\CTANref{latexmake}
+\item[latex-make]\CTANref{latex-make}
+\item[latex\_make]\CTANref{latex_maker}
+\item[latexmk]\CTANref{latexmk}
+\item[texi2dvi]Distributed as part of \CTANref{texinfo}
+\item[try]\CTANref{try}
+\item[vpp]\CTANref{vpp}
+\end{ctanrefs}
+\LastEdit{2013-05-13}
+
+\Question[Q-howmanypp]{How many pages are there in my document?}
+
+Simple documents (those that start at page 1, and don't have any
+breaks in their page numbering until their last page) present no
+problem to the seeker after this truth. The number of pages is
+reported by the \Package{lastpage} package in its \texttt{LastPage} label.
+
+For more complicated documents (most obviously, books with frontmatter
+in a different series of page numbers) this simple approach will not
+do.
+
+The \Package{count1to} package defines a label \texttt{TotalPages}; this is
+the value of its copy of \csx{count1} (a reserved \TeX{} count
+register) at the end of the document.
+
+Package \Package{totpages} defines a label \texttt{TotPages}, but it also
+makes the register it uses available as a \LaTeX{} counter,
+\texttt{TotPages}, which you can also reference via \csx{theTotPages}. Of
+course, the counter |TotPages| is asynchronous in the same way that
+page numbers are, but snapshots may safely be taken in the output
+routine.
+
+The \Class{memoir} class defines two counters \texttt{lastpage} and
+\texttt{lastsheet}, which are set (after the first run of a document)
+to the equivalent of the \texttt{LastPage} label and the
+\texttt{TotalPages} labels.
+
+Both \Package{count1to} and \Package{totpages} need the support of
+the \Package{everyshi} package.
+\begin{ctanrefs}
+\item[count1to.sty]Distributed as part of \CTANref{ms}[count1to]
+\item[everyshi.sty]Distributed as part of \CTANref{ms}[everyshi]
+\item[lastpage.sty]\CTANref{lastpage}
+\item[memoir.cls]\CTANref{memoir}
+\item[totpages.sty]\CTANref{totpages}
+\end{ctanrefs}
+
+\Question[Q-inclplain]{Including \plaintex{} files in \LaTeX{}}
+
+\LaTeX{}, though originally \Qref*{based on \plaintex{}}{Q-LaTeXandPlain}, does not
+contain all of \plaintex{}'s commands. Worse, some \plaintex{}
+command names appear in \LaTeX{}, with different semantics. As a
+result, special measures need to be taken to allow general \plaintex{}
+documents (or parts of documents) to be typeset within \LaTeX{}.
+
+The truly reliable way is to translate the \plaintex{} commands, to
+produce an equivalent of the original's semantics. However, this is
+not practical in many circumstances, and for those occasions, the
+\Package{plain} package will often come to your aid. The package
+defines a \environment{plain} environment, in which a \plaintex{}
+document may be processed:
+\begin{quote}
+\begin{verbatim}
+\begin{plain}
+ \input{plain-doc}
+\end{plain}
+\end{verbatim}
+\end{quote}
+The package is known to fail, for example, with documents that use
+\AMSTeX{}; no doubt it would also fail if asked to load \Eplain{}.
+All these things can be overcome (although it's not often easy), but
+the environment saves a lot of work on many occasions.
+\begin{ctanrefs}
+\item[plain.sty]Distributed as part of \CTANref{carlisle}[plain-ltx]
+\end{ctanrefs}
+
+\subsection{Hyphenation}
+
+\Question[Q-nohyph]{My words aren't being hyphenated}
+
+Let's assume you've selected the right \TeX{} `language'~--- as
+explained in \Qref[question]{``how hyphenation works''}{Q-hyphen},
+you're not likely to get the correct results typesetting one language
+using the hyphenation rules of another. (Select the proper language,
+using \Package{babel} if you're a \LaTeX{} user. This may reveal that
+you need another set of hyphenation patterns; see
+% beware line wrap
+\Qref[question]{``using a new language''}{Q-newlang} for advice on how
+to install it.)
+
+So what else can go wrong?
+\begin{itemize}
+\item Since \TeX{} version~3.0, the limits on how near to either end
+ of a word hyphenation may take place have been programmable (see
+ \Qref[question]{``weird hyphenation''}{Q-weirdhyphen}), and for some
+ reason the values in question may have been corrupted in some macros
+ you are using. \TeX{} won't hyphenate less than \csx{lefthyphenmin}
+ characters after the start of a word, nor less than
+ \csx{righthyphenmin} before the end of a word; thus it won't
+ hyphenate a word shorter than the sum of the two minima, at all.
+ For example, since the minima are 2 and 3 for English, \TeX{} won't
+ hyphenate a word shorter than 5 letters long, if it believes the
+ word to be English.
+\item \TeX{} won't hyphenate a word that's already been hyphenated.
+ For example, the (caricature) English surname Smyth-Postlethwaite
+ wouldn't hyphenate, which could be troublesome. This is correct
+ English typesetting style (it may not be correct for other
+ languages), but if needs must, you can replace the hyphen in the
+ name with a \csx{hyph} command, defined
+\begin{quote}
+\begin{verbatim}
+\def\hyph{-\penalty0\hskip0pt\relax}
+\end{verbatim}
+\end{quote}
+ This is \emph{not} the sort of thing this \acro{FAQ} would
+ ordinarily recommend\dots{} The \Package{hyphenat} package defines a
+ bundle of such commands (for introducing hyphenation points at
+ various punctuation characters).
+\item There may be accent commands in the word. The causes of and
+ remedies for this effect are discussed in % !line break
+ \Qref[question]{accents and hyphens}{Q-hyphenaccents}.
+\item The hyphenation may simply not have been spotted; while \TeX{}'s
+ algorithm is good, it's not infallible, and it does miss perfectly
+ good hyphenations in some languages. When this happens, you need to
+ give \TeX{} \emph{explicit} instructions on how to hyphenate.
+\end{itemize}
+The \csx{hyphenation} command allows you to give explicit instructions.
+Provided that the word will hyphenate at all (that is, it is not
+prevented from hyphenating by any of the other restrictions above),
+the command will override anything the hyphenation patterns might
+dictate. The command takes one or more hyphenated words as
+argument~--- \cmdinvoke{hyphenation}{ana-lysis pot-able}; note that
+(as here, for analysis) you can use the command to overrule \TeX{}'s
+choice of hyphenation (ana-lysis is the British etymological
+hyphenation; some feel the American hyphenation feels
+`unfortunate'\dots{}).
+\begin{ctanrefs}
+\item[hyphenat.sty]\CTANref{hyphenat}
+\end{ctanrefs}
+\LastEdit{2013-09-20}
+
+\Question[Q-weirdhyphen]{Weird hyphenation of words}
+
+If your words are being h-yphenated, like this, with jus-t single
+letters at the
+beginning or the end of the word, you may have a version mismatch
+problem. \TeX{}'s hyphenation system changed between version~2.9
+and~3.0, and macros written for use with version~2.9 can have this
+effect with a version~3.0 system. If you are using \plaintex{}, make
+sure your \File{plain.tex} file has a version number which is at
+least~3.0, and rebuild your format. If you are using \LaTeXo{} your
+best plan is to upgrade to \LaTeXe{}. If for some reason you can't,
+the last version of \LaTeXo{} (released on 25 March 1992) is still
+available (for the time being at least) and ought to solve this
+problem.
+
+If you're using \LaTeXe{}, the problem probably arises from your
+|hyphen.cfg| file, which has to be created if you're using a
+multi-lingual version.
+
+A further source of oddity can derive from the 1995 release of
+\Qref*{Cork-encoded fonts}{Q-ECfonts},
+which introduced an alternative hyphen character. The \LaTeXe{}
+configuration files in the font release specified use of the
+alternative hyphen, and this could produce odd effects with words
+containing an explicit hyphen. The font configuration files in the
+December 1995 release of \LaTeXe{} do \emph{not} use the alternative
+hyphen character, and therefore removed this source of problems; the
+solution, again, is to upgrade your \LaTeX{}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\LaTeXo{}]\CTANref{latex209-base}
+\item[plain.tex]\CTANref{plain}
+\end{ctanrefs}
+
+\Question[Q-oddhyphen]{(Merely) peculiar hyphenation}
+
+You may have found that \TeX{}'s famed automatic word-division does
+not produce the break-points recommended by your dictionary. This may be
+because \TeX{} is set up for American English, whose rules for word
+division (as specified, for example, in Webster's Dictionary) are
+completely different from the British ones (as specified, for example,
+in the Oxford Dictionaries). This problem is being addressed by the \acro{UK}
+\TeX{} User community (see \BV{}, issue~4.4) but an entirely
+satisfactory solution will take time; the current status is to be
+found on \acro{CTAN} (see
+% beware line-wrap
+\Qref[question]{``using a new language''}{Q-newlang} for instructions
+on adding this new ``language'').
+\begin{ctanrefs}
+\item[UK patterns]\CTANref{ukhyph}
+\end{ctanrefs}
+
+\Question[Q-hyphenaccents]{Accented words aren't hyphenated}
+
+\TeX{}'s algorithm for hyphenation gives up when it encounters an
+\csx{accent} command; there are good reasons for this, but it means
+that quality typesetting in non-English languages can be difficult.
+
+For \TeX{} macro packages, you can avoiding the effect by using an
+appropriately encoded font (for example, a Cork-encoded font~--- see
+\Qref[question]{the \acro{EC} fonts}{Q-ECfonts}) which contains accented
+letters as single glyphs. \LaTeX{} users can achieve this end simply
+by adding the command
+\begin{verbatim}
+ \usepackage[T1]{fontenc}
+\end{verbatim}
+to the preamble of their document. Other encodings (notably
+\acro{LY}1, once promoted by \YandY{} inc) may be used
+in place of \acro{T}1. Indeed, most current 8-bit \TeX{} font
+encodings will `work' with the relevant sets of hyphenation patterns.
+
+With the advance of \xetex{} and \luatex{} to the mainstream, a new
+regime for generating hyphenation tables is in place. For each
+language, a table is written in Unicode, and ``8-bit'' versions are
+generated for use with various \latex{} font encodings. Original sets
+of patterns remain on \acro{CTAN}, for use when an older environment
+is needed.
+
+\Question[Q-newlang]{Using a new language with Babel}
+
+\Package{Babel} is capable of working with a large range of
+languages, and a new user often wants to use a language that her
+\TeX{} installation is not set up to employ. Simply asking Babel to
+use the language, with the command
+\begin{verbatim}
+ \usepackage[catalan]{babel}
+\end{verbatim}
+provokes the warning message
+\begin{wideversion}
+\begin{verbatim}
+Package babel Warning: No hyphenation patterns were loaded for
+(babel) the language `Catalan'
+(babel) I will use the patterns loaded for \language=0 instead.
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+Package babel Warning: No hyphenation patterns
+ were loaded for
+(babel) the language `Catalan'
+(babel) I will use the patterns
+ loaded for \language=0 instead.
+\end{verbatim}
+(The first and third lines above have been wrapped to fit in the
+column.)
+\end{narrowversion}
+
+The problem is that your \TeX{} system doesn't know how to hyphenate
+Catalan text: you need to tell it how before Babel can do its work
+properly. To do this, for \LaTeX{} installations, one needs to change
+\File{language.dat} (which is part of the Babel installation); it will
+contain a line
+\begin{verbatim}
+%catalan cahyphen.tex
+\end{verbatim}
+which, if you remove the comment marker, is supposed to instruct
+\LaTeX{} to load Catalan hyphenation patterns when you tell it to build
+a new format.
+
+Unfortunately, in many Babel distributions, the line just isn't
+right~--- you need to check the name of the file containing the
+patterns you're going to use. As you can see, in the author's system,
+the name is supposed to be \File{cahyphen.tex}; however the file
+actually present on the system is \File{cahyph.tex}~--- fortunately,
+the error should prove little more than an inconvenience (most of the
+files are in better distributions anyway, but an elusive one
+may be found on \acro{CTAN}; if you have to retrieve
+a new file, ensure that it's correctly installed, for which see
+\Qref[question]{installing a new package}{Q-inst-wlcf}).
+
+Finally, you need to regenerate the formats used (in fact, most users
+of Babel are using it in their \LaTeX{} documents, so regenerating the
+\LaTeX{}-related formats will ordinarily be enough; however, the
+author always generates the lot, regardless).
+\begin{description}
+\item[te\TeX{}]It's possible to do the whole operation in one go, by
+ using the \ProgName{texconfig} command:
+\begin{verbatim}
+texconfig hyphen latex
+\end{verbatim}
+ which first enters an editor for you to edit \File{language.dat},
+ and then regenerates the format you specify (\ProgName{latex} in
+ this case).
+
+ Otherwise, to regenerate all formats, do: \\
+ \texttt{fmtutil -\relax-all}
+
+ If you're willing to think through what you're doing (this is
+ \emph{not} for the faint-hearted), you can select a sequence of
+ formats and for each one, run: \\
+ \texttt{fmtutil -\relax-byfmt \meta{formatname}}\\
+ where \emph{\texttt{formatname}} is something like `\texttt{latex}',
+ or: \\
+ \texttt{fmtutil -\relax-byhyphen \meta{hyphenfile}}\\
+ where \emph{\texttt{hyphenfile}} is the file specifying hyphenation
+ to the format~--- usually \texttt{language.dat}
+\item[\miktex{}] On a \Package{\miktex{}} distribution earlier than v2.0, do: \\
+ \texttt{Start}\arrowhyph{}%
+ \texttt{Programs}\arrowhyph{}%
+ \texttt{\miktex{}}\arrowhyph{}%
+ \texttt{Maintenance}\arrowhyph{}%
+ \texttt{Create all format files}
+% this sequence suggested for miktex 1.20e, 2000/12/22, by Giuseppe Bilotta
+
+ or get a DOS window and run:\\
+ \texttt{initexmf -\relax-dump}
+
+ On a \Package{\miktex{}} distribution v2.0 or later, the whole
+ procedure can be done via the \acro{GUI}. To select the new
+ language, do:\\
+ \texttt{Start}\arrowhyph{}%
+ \texttt{Programs}\arrowhyph{}%
+ \texttt{\miktex{} 2}\arrowhyph{}%
+ \texttt{\miktex{} Options}, and select the \texttt{Languages} tab.
+ Select your language from the list, press the \texttt{Apply} button,
+ and then the \texttt{OK} button. Then select the \texttt{General}
+ tab and press the \texttt{Update Now} button.
+
+ Otherwise, edit the \File{language.dat} file (as outlined above),
+ and then run:\\
+ \texttt{initexmf -\relax-dump}\\
+ just as for a pre-v2.0 system.
+\end{description}
+
+\nothtml{\noindent}\textbf{\emph{Caveat}:} It is (just) possible that
+your \TeX{} system may run out of ``pattern memory'' while generating
+the new format. Most \TeX{} implementations have fixed-size arrays
+for storing the details of hyphenation patterns, but although their
+size is adjustable in most modern distributions, actually changing the
+size is a fiddle. If you \emph{do} find you've run out of memory,
+it may be worth scanning the list of languages in your
+\File{language.dat} to see whether any could reasonably be removed.
+\begin{ctanrefs}
+\item[babel]\CTANref{babel}
+\item[hyphenation patterns]\CTANref{hyphenation}
+\end{ctanrefs}
+
+\Question[Q-hyphoff]{Stopping all hyphenation}
+
+It may seem an odd thing to want to do (after all, one of \TeX{}'s
+great advertised virtues is the quality of its hyphenation) but it's
+sometimes necessary. The real problem is, that the quality of
+\TeX{}'s output is by default largely dependent on the presence of
+hyphenation; if you want to abandon hyphenation, something has to
+give.
+
+\TeX{} (slightly confusingly) offers four possible mechanisms for
+suppressing hyphenation (there were only two prior to the extensions
+that arrived with \TeX{} version~3).
+
+First, one can set the hyphenation penalties \csx{hyphenpenalty} and
+\csx{exhyphenpenalty} to an `infinite' value (that is to say, 10000).
+This means that all hyphenations will sufficiently penalise the line
+that would contain them, that the hyphenation won't happen. The
+disadvantage of this method is that \TeX{} will re-evaluate any
+paragraph for which hyphenations might help, which will slow \TeX{}
+down.
+
+Second, one can select a language for which no hyphenation patterns
+exist. Some distributions create a language \texttt{nohyphenation},
+and the \Package{hyphenat} package uses this technique for its
+\csx{nohyphens} command which sets its argument without any
+hyphenation. You can load \Package{hyphenat} with the command
+\begin{quote}
+ \cmdinvoke{usepackage}[none]{hyphenat}
+\end{quote}
+to prevent any hyphenation in a single-language document. The
+technique cannot work in a document in which \Package{babel} controls
+language selection, since \Package{babel} incorporates hyphenation
+change into its language change facilities.
+
+Third, one can set \csx{left-} and/or \csx{righthyphenmin} to a
+sufficiently large value that no hyphenation could possibly succeed,
+since the minimum is larger than the length of the longest word
+\TeX{} is willing to hyphenate (the appropriate value is 62).
+
+Fourth, one can suppress hyphenation for all text using the current
+font by the command
+\begin{quote}
+\begin{verbatim}
+\hyphenchar\font=-1
+\end{verbatim}
+\end{quote}
+This isn't a particularly practical way for users to suppress
+hyphenation~--- the command has to be issued for every font the
+document uses~--- but it's how \LaTeX{} itself suppresses hyphenation
+in \texttt{tt} and other fixed-width fonts.
+
+Which of the techniques you should use depends on what you actually
+want to do. If the text whose hyphenation is to be suppressed runs
+for less than a paragraph, your only choice is the no-hyphens
+language: the language value is preserved along with the text (in the
+same way that the current font is); the values for penalties and
+hyphen minima active at the end of a paragraph are used when
+hyphenation is calculated.
+
+Contrariwise, if you are writing a multilanguage document using the
+\Package{babel} package, you \emph{cannot} suppress hyphenation
+throughout using either the no-hyphens language or the hyphen minima:
+all those values get changed at a \Package{babel} language switch: use
+the penalties instead.
+
+If you simply switch off hyphenation for a good bit of text, the
+output will have a jagged edge (with many lines seriously overfull),
+and your \AllTeX{} run will bombard you with warnings about overfull
+and underfull boxes (that is, really, lines). To avoid this you have
+two options.
+
+The simplest route is to use \csx{sloppy} (or its environment version
+\environment{sloppypar}), and have \TeX{} stretch what would otherwise
+be underfull lines to fill the space offered, while prematurely
+wrapping overfull lines and stretching the remainder.
+
+The better bet is to set the text \Qref*{ragged right}{Q-ragright},
+and at least get rid of the overfull lines; this technique is
+`traditional' (in the sense that typists have always done it) and may
+be expected to
+appeal to the specifiers of eccentric document layouts (such as those
+for dissertations), but for once their sense conforms with typographic
+style. (Or at least, style constrained in this curious way.)
+\begin{ctanrefs}
+\item[hyphenat.sty]\CTANref{hyphenat}
+\end{ctanrefs}
+\LastEdit{2013-09-20}
+
+\Question[Q-wdnohyph]{Preventing hyphenation of a particular word}
+
+It's quite possible for (\emph{any}) hyphenation of a particular word
+to seem ``completely wrong'', so that you want to prevent it being
+hyphenated.
+
+If the word occurs in just one place, put it in a box:
+\begin{quote}
+\begin{verbatim}
+\mbox{oddword}
+\end{verbatim}
+\end{quote}
+(\plaintex{} users should use \csx{hbox}, and take care at the start
+of paragraphs.) However, boxing the word is not really advisable
+unless you are sure it only occurs once.
+
+If the word occurs commonly, the best choice is to assert an
+hyphenation exception for it:
+\begin{quote}
+\begin{verbatim}
+\hyphenation{oddword}
+\end{verbatim}
+\end{quote}
+This hyphenation exception (with no break points) will be used in
+preference to what \TeX{}'s hyphenation algorithm may come up with.
+
+In a multilingual document, repeat the exception specification for
+each language the word may appear in. So:
+\begin{quote}
+\begin{verbatim}
+\usepackage[french,english]{babel}
+\selectlanguage{english}
+\hyphenation{oddword}
+\selectlanguage{french}
+\hyphenation{oddword}
+\end{verbatim}
+\end{quote}
+(note that \Package{babel} will select the default language for the
+document~--- English, in this case~--- at \cmdinvoke{begin}{document}.)
+
+A particular instance of this requirement is avoiding the hyphenation
+of acronyms; a general rule for those that concoct acronyms seems to
+be to make the capital-letter sequence read as near as is possible
+like a ``real'' word, but hyphenating an acronym often looks silly.
+The \TeX{} control \csx{uchyph} is designed for suppressing such
+behaviour:
+\begin{quote}
+\begin{verbatim}
+\uchyph=0
+\end{verbatim}
+\end{quote}
+will stop hyphenation of upper-case words. (Note that \plaintex{}
+syntax is needed here: there's no \LaTeX{} alternative for setting
+this value.)
+
+\Question[Q-hyphexcept]{Hyphenation exceptions}
+
+While \TeX{}'s hyphenation rules are good, they're not infallible: you
+will occasionally find words \TeX{} just gets \emph{wrong}. So for
+example, \TeX{}'s default hyphenation rules (for American English) don't
+know the word ``\emph{manuscript}'', and since it's a long word you
+may find you need to hyphenate it. You \emph{can} ``write the
+hyphenation out'' each time you use the word:
+\begin{quote}
+\begin{verbatim}
+... man\-u\-script ...
+\end{verbatim}
+\end{quote}
+Here, each of the \csx{-} commands is converted to a hyphenated break,
+if (\emph{and only if}) necessary.
+
+That technique can rapidly become tedious: you'll probably only accept
+it if there are no more than one or two wrongly-hyphenated words in
+your document. The alternative is to set up hyphenations in the
+document preamble. To do that, for the hyphenation above, you would
+write:
+\begin{quote}
+\begin{verbatim}
+\hyphenation{man-u-script}
+\end{verbatim}
+\end{quote}
+and the hyphenation would be set for the whole document. Barbara
+Beeton publishes articles containing lists of these ``hyphenation
+exceptions'', in \textsl{TUGboat}; the hyphenation `man-u-script'
+comes from one of those articles.
+
+What if you have more than one language in your document? Simple:
+select the appropriate language, and do the same as above:
+\begin{quote}
+\begin{verbatim}
+\usepackage[french]{babel}
+\selectlanguage{french}
+\hyphenation{re-cher-cher}
+\end{verbatim}
+\end{quote}
+(nothing clever here: this is the ``correct'' hyphenation of the word,
+in the current tables). However, there's a problem here: just as
+words with accent macros in them won't break, so an \csx{hyphenation}
+commands with accent macros in its argument will produce an error:
+\begin{quote}
+\begin{verbatim}
+\usepackage[french]{babel}
+\selectlanguage{french}
+\hyphenation{r\'e-f\'e-rence}
+\end{verbatim}
+\end{quote}
+tells us that the hyphenation is ``improper'', and that it will be ``flushed''.
+But, just as hyphenation of words is enabled by selecting an 8-bit
+font encoding, so \csx{hyphenation} commands are rendered proper again
+by selecting that same 8-bit font encoding. For the hyphenation
+patterns provided for `legacy', the encoding is
+\Qref*{Cork}{Q-ECfonts}, so the complete sequence is:
+\begin{quote}
+\begin{verbatim}
+\usepackage[T1]{fontenc}
+\usepackage[french]{babel}
+\selectlanguage{french}
+\hyphenation{r\'e-f\'e-rence}
+\end{verbatim}
+\end{quote}
+The same sort of performance goes for any language for which 8-bit
+fonts and corresponding hyphenation patterns are available. Since you
+have to select both the language and the font encoding to have your
+document typeset correctly, it should not be a great imposition to do
+the selections before setting up hyphenation exceptions.
+
+Modern TeX variants (principally \xetex{} and \luatex{}) use unicode,
+internally, and distributions that offer them also offer
+\acro{UTF}-8-encoded patterns; since the hyphenation team do all the
+work ``behind the scenes'', the use of Unicode hyphenation is
+deceptively similar to what we are used to.
+\LastEdit{2013-09-20}
+
+\subsection{Odds and ends}
+
+\Question[Q-logos]{Typesetting all those \TeX{}-related logos}
+
+Knuth was making a particular point about the capabilities of \TeX{}
+when he defined the logo. Unfortunately (in some people's opinion) he thereby
+opened floodgates to give the world a whole range of rather silly
+`bumpy road' logos for \TeX{} entities such as \AMSTeX{}, \pictex{},
+\BibTeX{}, and so on, produced in a flurry of different fonts, sizes,
+and baselines~--- indeed, everything one might hope to cause them to
+obstruct the reading process. In particular, Lamport invented
+\LaTeX{} (silly enough in itself, with a raised small `A' and a
+lowered `E') and marketing input from Addison-Wesley led to the even
+stranger current logo for \LaTeXe{}, which appends a lowered % !line break
+\latexhtml{\ensuremath{\varepsilon}}{single-stroke Greek letter &epsilon;}.
+
+Sensible users don't have to follow this stuff wherever it goes,
+but, for those who insist, a large collection of logos is defined in
+the \Package{texnames} package (but note that this set of macros isn't
+entirely reliable in \LaTeXe{}).
+The \MF{} and \MP{} logos can be set in fonts that \LaTeXe{}
+knows about (so that they scale with the surrounding text) using the
+\Package{mflogo} package; but be aware that booby-traps surround the
+use of the Knuthian font for \MP{} (you might get
+\begin{typesetversion}
+ \textlogo{META\hphantom{P}O\hphantom{S}T}).
+\end{typesetversion}
+% the following htmlversion stuff seems to do roughly what's required,
+% which is nice, given the feebleness of representing all these silly
+% logos in html otherwise...
+\begin{htmlversion}
+ something like `META\&nbsp;\&nbsp;O\&nbsp;\&nbsp;T').
+\end{htmlversion}
+You needn't despair, however~--- most versions of the logo font
+distributed nowadays contain the missing letters, and the author
+himself uses just `MetaPost'.
+
+A well-designed set of macros is provided by package \Package{hologo},
+which defines a command \csx{hologo}, which one uses as (for example)
+\cmdinvoke{hologo}{pdfLaTeX} for what you might get by typing
+``\texttt{pdf}\csx{LaTeX}'', as well as a capitalised version
+\cmdinvoke{Hologo}{pdfLaTeX} for ``\texttt{Pdf}\csx{LaTeX}''.
+
+The package \Package{metalogo} deals with a problem of these myriad
+logos, that's often ignored nowadays: the geometry of characters from
+different fonts is (obviously) different, and they naturally fit
+together differently. The package makes it possible for you to adjust
+the spacing between the the letters of one of these odd logos (even
+the especially weird mirrored ``E'' in \xetex{}).
+
+For those who don't wish to acquire the `proper' logos, the canonical
+thing to do is to say \texttt{AMS-}\cmdinvoke{TeX}{}
+for \AMSTeX{}, \texttt{Pic}\cmdinvoke{TeX}{}
+for \pictex{}, \texttt{Bib}\cmdinvoke{TeX}{}
+for \BibTeX{}, and so on.
+\begin{ctanrefs}
+\item[hologo.sty]Distributed as part of \CTANref{oberdiek}[hologo]
+\item[metalogo.sty]\CTANref{metalogo}
+\item[mflogo.sty]\CTANref{mflogo}
+\item[texnames.sty]\CTANref{texnames}
+\end{ctanrefs}
+\LastEdit{2010-03-24}
+
+\Question[Q-bold-extras]{How to do bold-tt or bold-sc}
+
+\LaTeX{}, as delivered, offers no means of handling bold ``teletype''
+or small-caps fonts. There's a practical reason for this (Knuth never
+designed such fonts), but there are typographical considerations too
+(the ``medium weight'' \texttt{cmtt} font is already pretty bold (by
+comparison with other fixed-width fonts), and bold small-caps is not
+popular with many professional typographers).
+
+There's a set of ``extra'' \MF{} files on \acro{CTAN} that provide bold
+versions of both \texttt{cmtt} and \texttt{cmcsc} (the small caps font). With
+modern \TeX{} distributions, one may bring these fonts into use simply
+by placing them in an % ! line break
+\Qref*{appropriate place in the \emph{texmf} tree}{Q-install-where}
+(these are \AllTeX{}-specific files, so the ``\emph{public}'' supplier
+would be an appropriate place). Once you've % ! line break, again
+\Qref*{rebuilt the file indexes as necessary}{Q-inst-wlcf},
+\TeX{} (and friends) will automatically build whatever font files they
+need when you first make reference to them. There's a jiffy package
+\Package{bold-extra} that builds the necessary font data structures
+so that you can use the fonts within \LaTeX{}.
+
+Another alternative is to use the \Qref*{\acro{EC} fonts}{Q-ECfonts},
+which come with bold variants of the small-caps fonts.
+
+If you need to use Type~1 fonts, you can't proceed with Knuth-style
+fonts, since there are no Type~1 versions of the \Package{mf-extra}
+set. There are, however, Type~1 distributions of the EC~fonts, so you
+can switch to EC and use them; alternatives are discussed in
+\Qref[question]{8-bit Type~1 fonts}{Q-type1T1}.
+
+Of course, commercial fixed-width fonts (even the default
+\FontName{Courier}) almost always come with a bold variant, so that's
+not a problem. Furthermore \Qref*{\acro{PSNFSS}}{Q-usepsfont}
+will usually provide ``faked'' small caps fonts, and has no
+compunctions about providing them in a bold form. \FontName{Courier}
+is (as we all know, to our cost) freely available; a far more
+presentable monospace font is \FontName{LuxiMono}, which is also
+freely available (monospace text in the typeset version of this
+\acro{FAQ} uses \FontName{LuxiMono}, with the metrics and \LaTeX{}
+support available on the archive.
+\begin{ctanrefs}
+\item[bold-extra.sty]\CTANref{bold-extra}
+\item[bold tt and small caps fonts]\CTANref{bold}
+\item[\nothtml{\rmfamily}LuxiMono fonts]\CTANref{luximono}
+\end{ctanrefs}
+
+\Question[Q-varwidth]{Automatic sizing of \environment{minipage}}
+
+The \environment{minipage} environment requires you to specify the
+width of the ``page'' you're going to create. This is sometimes
+inconvenient: you would like to occupy less space, if possible, but
+\environment{minipage} sets a box that is exactly the width you
+specified.
+
+The \Package{pbox} package defines a \csx{pbox} whose width is exactly
+that of the longest enclosed line, subject to a maximum width that you
+give it. So while \cmdinvoke{parbox}{2cm}{Hello\bsbs world!} produces a
+box of width exactly \texttt{2cm},
+\cmdinvoke{pbox}{2cm}{Hello\bsbs world!} produces one whose width is
+\texttt{1.79cm} (if one's using the default \FontName{cmr} font for the
+text, at least). The package also provides a
+\cmdinvoke*{settominwidth}[min]{length}{text} (which looks (almost)
+like the standard \csx{settowidth} command), and a \csx{widthofpbox}
+function analogous to the \csx{widthof} command for use with the
+\Package{calc} package.
+
+The \Package{eqparbox} package extends \Package{pbox}'s idea, by
+allowing you to set a series of boxes, all with the same (minimised)
+width. (Note that it doesn't accept a limiting maximum width
+parameter.) The package documentation shows the following example
+drawn from a joke \emph{curriculum vitae}:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\noindent%
+\eqparbox{place}%
+ {\textbf{Widgets, Inc.}}
+ \hfill
+\eqparbox{title}%
+ {\textbf{Senior Widget Designer}}
+ \hfill
+\eqparbox{dates}{\textbf{1/95--present}}
+
+...
+
+\noindent%
+\eqparbox{place}%
+ {\textbf{Thingamabobs, Ltd.}}
+ \hfill
+\eqparbox{title}%
+ {\textbf{Lead Engineer}}
+ \hfill
+\eqparbox{dates}{\textbf{9/92--12/94}}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\noindent%
+\eqparbox{place}{\textbf{Widgets, Inc.}} \hfill
+\eqparbox{title}{\textbf{Senior Widget Designer}} \hfill
+\eqparbox{dates}{\textbf{1/95--present}}
+
+...
+
+\noindent%
+\eqparbox{place}{\textbf{Thingamabobs, Ltd.}} \hfill
+\eqparbox{title}{\textbf{Lead Engineer}} \hfill
+\eqparbox{dates}{\textbf{9/92--12/94}}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+The code makes the three items on each of the heading lines have
+exactly the same width, so that the lines as a whole produce a regular
+pattern down the page. A command \csx{eqboxwidth} allows you to use
+the measured width of a group: the documentation shows how the command
+may be used to produce sensible-looking columns that mix \texttt{c}-,
+\texttt{r}- or \texttt{l}-rows, with the equivalent of a |p{...}|
+entry, by making the fixed-width rows an \Package{eqparbox} group, and
+making the last from a \csx{parbox} using the width that's been
+measured for the group.
+
+The \Package{varwidth} package defines a \environment{varwidth}
+environment which sets the content of the box to match a ``narrower
+natural width'' if it finds one. (You give it the same parameters as
+you would give \environment{minipage}: in effect, it is a `drop-in'
+replacement.) \Package{Varwidth} provides its own ragged text command:
+\csx{narrowragged}, which aims to make narrower lines and to put more
+text in the last line of the paragraph (thus producing lines with more
+nearly equal lengths than typically happens with \csx{raggedright}
+itself).
+
+The documentation (in the package file) lists various restrictions and
+things still to be done, but the package is already proving useful for
+a variety of jobs.
+\begin{ctanrefs}
+\item[eqparbox.sty]\CTANref{eqparbox}
+\item[pbox.sty]\CTANref{pbox}
+\item[varwidth.sty]\CTANref{varwidth}
+\end{ctanrefs}
+
diff --git a/obsolete/help/texfaq/faq-hyp+pdf.tex b/obsolete/help/texfaq/faq-hyp+pdf.tex
new file mode 100644
index 0000000000..aa670393d9
--- /dev/null
+++ b/obsolete/help/texfaq/faq-hyp+pdf.tex
@@ -0,0 +1,636 @@
+% $Id: faq-hyp+pdf.tex,v 1.8 2014/02/16 21:23:58 rf10 Exp $
+
+\section{Hypertext and \acro{PDF}}
+
+\Question[Q-acrobat]{Making \acro{PDF} documents from \AllTeX{}}
+
+There are three general routes to \acro{PDF} output: Adobe's original
+`distillation' route (via \PS{} output), direct conversion of a
+\acro{DVI} file, and the use of a direct \tex{}-like \acro{PDF}
+generator such as \Qref*{\PDFTeX{}}{Q-whatpdftex}.
+
+For simple documents (with no hyper-references), you can either
+\begin{itemize}
+\item process the document in the normal way, produce \PS{}
+ output and distill it;
+\item (on a Windows or Macintosh machine with appropriate
+ tools installed) pass the output through a \acro{PDF}writer in place
+ of a printer driver. This route is only appropriate for simple
+ documents: \acro{PDF} writers cannot create hyperlinks;
+\item process the document with ``vanilla'' \latex{} and generate \acro{PDF}
+ direct from the \acro{DVI} using \ProgName{dvipdfm}/\ProgName{dvipdfmx}; or
+\item process the document direct to \acro{PDF} with \PDFTeX{},
+ \Qref{\luatex{}}{Q-luatex}, or \Qref{\xetex{}}{Q-xetex}.
+\end{itemize}
+
+To translate all the \LaTeX{} cross-referencing into Acrobat
+links, you need a \LaTeX{} package to redefine
+the internal commands. There are two of these for \LaTeX{}, both
+capable of conforming to the
+\Qref{Hyper\TeX{} specification}{Q-hyper}:
+Heiko Oberdiek's \Package{hyperref}, and Michael Mehlich's
+\Package{hyper}. (In practice, almost everyone uses
+\Package{hyperref}; \Package{hyper} hasn't been updated since 2000.)
+\Package{Hyperref} can often determine how it should generate
+hypertext from its environment, but there is a wide set of
+configuration options you can give via \csx{usepackage}. The package
+can operate using \PDFTeX{} primitives, the hyper\TeX{}
+\csx{special}s, or \acro{DVI} driver-specific \csx{special} commands.
+Both \ProgName{dvips} and \YandY{}'s \acro{\ProgName{DVIPSONE}} can
+translate the \acro{DVI} with these \csx{special} commands into
+\PS{} acceptable to Distiller, and
+\ProgName{dvipdfm} and \ProgName{dvipdfmx} have \csx{special} commands of
+their own.
+
+If you use \plaintex{}, the \Qref*{\Eplain{} macros}{Q-eplain} can
+help you create \acro{PDF} documents with hyper-references.
+It can operate using \PDFTeX{} primitives, or \csx{special} commands
+for the \ProgName{dvipdfm}/\ProgName{dvipdfmx} \acro{DVI} drivers.
+
+While there is no free implementation of all of \ProgName{Adobe}
+\ProgName{Distiller}'s
+functionality, any but the implausibly old versions of
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}}
+provide pretty reliable distillation (but beware of the problems with
+\Qref*{\ProgName{dvips} output for distillation}{Q-dvips-pdf}).
+
+For viewing (and printing) the resulting files, Adobe's
+\ProgName{Acrobat} \ProgName{Reader} is available for a fair range of
+platforms; for those for which Adobe's reader is unavailable, remotely
+current versions of \href{http://www.ghostscript.com/}{\ProgName{ghostscript}}
+combined with \ProgName{gv} or
+\href{http://www.ghostgum.com.au/}{\ProgName{gsview}} can display and
+print \acro{PDF} files, as can \ProgName{xpdf}.
+
+In some circumstances, a
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}}-based viewer
+application is actually preferable to Acrobat Reader. For example, on
+Windows Acrobat Reader locks the \extension{pdf} file it's displaying: this
+makes the traditional (and highly effective) \AllTeX{} development
+cycle of ``Edit\arrowhyph{}Process\arrowhyph{}Preview'' become
+rather clumsy~--- \href{http://www.ghostgum.com.au/}{\ProgName{gsview}}
+doesn't make the same <mistake.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Acrobat Reader]download from \URL{http://get.adobe.com/reader}
+\item[dvipdfm]\CTANref{dvipdfm}
+\item[dvipdfmx]\CTANref{dvipdfmx}
+\item[gv]Browse \CTANref{gv}
+\item[hyper.sty]\CTANref{hyper}
+\item[hyperref.sty]\CTANref{hyperref}
+\end{ctanrefs}
+\LastEdit{2014-01-22}
+
+\Question[Q-hyper]{Making hypertext documents from \TeX{}}
+
+If you want on-line hypertext with a \AllTeX{} source, probably on the
+World Wide Web, there are four technologies to consider:
+\begin{itemize}
+\item start from \alltex{}, and use one of a number of techniques to
+ translate (more or less) directly to
+ \Qref{\acro{HTML}}{Q-LaTeX2HTML};
+% beware line break
+\item Start from \Qref*{\Package{texinfo}}{Q-texinfo} source,
+ and use the \ProgName{info} viewer, or convert the \Package{texinfo}
+ source to \acro{HTML} using \ProgName{texi2html};
+\item Start from \alltex{}; use \pdftex{}, \xetex{} or \luatex{} to
+ produce \acro{PDF}, using \Package{hyperref} to construct
+ hyperlinks.
+\item Start from (unconventional) \alltex{} which use the % ! line break
+ \Qref*{hyper\TeX{} conventions}{Q-hypertex}.
+\end{itemize}
+\begin{ctanrefs}
+\item[texinfo]\CTANref{texinfo}
+\end{ctanrefs}
+\LastEdit{2013-05-30}
+
+\Question[Q-hypertex]{The \emph{hyper\tex{}} project}
+
+The \emph{hyper\tex{}} project extended the functionality of all the
+\LaTeX{} cross-referencing commands (including the table of contents)
+to produce \csx{special} commands which are parsed by \acro{DVI} processors
+conforming to the Hyper\TeX{} guidelines;
+it provides general hypertext links, including those
+to external documents.
+
+The Hyper\TeX{} specification says that conformant viewers/translators
+must recognize the following set of \csx{special} commands:
+\begin{description}
+\item[href:] |html:<a href = "href_string">|
+\item[name:] |html:<a name = "name_string">|
+\item[end:] |html:</a>|
+\item[image:] |html:<img src = "href_string">|
+\item[base\_name:] |html:<base href = "href_string">|
+\end{description}
+
+The \emph{href}, \emph{name} and \emph{end} commands are used to do
+the basic hypertext operations of establishing links between sections
+of documents.
+
+Further details are available on \URL{http://arXiv.org/hypertex/}; there
+are two commonly-used implementations of the specification, a
+modified \ProgName{xdvi} and (recent releases of)
+\ProgName{dvips}. Output from the latter may be used in recent
+releases of \href{http://www.ghostscript.com/}{\ProgName{ghostscript}}
+or Acrobat Distiller.
+
+\Question[Q-dvips-pdf]{Quality of \acro{PDF} from \PS{}}
+\keywords{blurry fuzzy crippled}
+
+Any reasonable \PS{}, including any output of \ProgName{dvips}, may be
+converted to \acro{PDF}, using (for example) a sufficiently recent
+version of \href{http://www.ghostscript.com/}{\ProgName{ghostscript}},
+Frank Siegert's (shareware)
+\href{http://www.pstill.com/}{\ProgName{PStill}}, or Adobe's (commercial)
+\ProgName{Distiller}.
+
+But, although the job may (almost always) be done, the results are
+often not acceptable: the most frequent problem is bad presentation of
+the character glyphs that make up the document. The following answers
+offer solutions to this (and other) problems of bad presentation.
+Issues covered are:
+\begin{itemize}
+\item \Qref*{Wrong type of fonts used}{Q-fuzzy-type3}, which is
+ the commonest cause of fuzzy text.
+\item \Qref*{\ProgName{Ghostscript} too old}{Q-fuzzy-gs},
+ which can also result in fuzzy text.
+% beware line breaks
+\item \Qref*{Switching to font encoding \acro{T}1 encoding}{Q-fuzzy-T1},
+ which is yet another possible cause of fuzzy text.
+\item Another problem~--- missing characters~--- arises from an
+ % beware line breaks
+ \Qref*{aged version of \ProgName{Adobe}~\ProgName{Distiller}}{Q-distill-prob}.
+\item Finally, there's the common confusion that arises from using the
+ \ProgName{dvips} configuration file \texttt{-Ppdf}, the % ! line br
+ \Qref*{weird characters}{Q-charshift}.
+\end{itemize}
+It should be noted that \ProgName{Adobe} % \ProgName{Acrobat} no longer
+ % part of the name
+\ProgName{Reader}~6 (released in mid-2003, and later versions) does
+not exhibit the ``fuzziness'' that so many of the answers below
+address. This is of course good news: however, it will inevitably be
+a long time before every user in the world has this (or later)
+versions, so the remedies below are going to remain for some time to
+come.
+
+The problems are also discussed, with practical examples, in Mike
+Shell's \Package{testflow} package, which these FAQs recommend as a
+``\Qref*{specialised tutorial}{Q-tutbitslatex}.
+\begin{ctanrefs}
+\item[testflow]\CTANref{testflow}
+\end{ctanrefs}
+
+
+\Question[Q-fuzzy-type3]{The wrong type of fonts in \acro{PDF}}
+\keywords{crippled blurry}
+
+This is far the commonest problem: the symptom is that text in the
+document looks ``fuzzy''.
+
+Most people use \ProgName{Adobe} \ProgName{Acrobat} \ProgName{Reader}
+to view their \acro{PDF}: \ProgName{Reader} is distributed free of
+charge, and is widely available, for all its faults. One of those
+faults is its failure to deal with bitmap fonts (at least, in all
+versions earlier than version~6, all of which copies are pretty old,
+now~\dots{} but some are occasionally found).
+
+So we don't want bitmap fonts in our \PS{}: with them, characters show
+up in \ProgName{Reader}'s display as blurred blobs which are often not
+even recognisable as the original letter, and are often not properly placed
+on the line. Nevertheless, even now, most \TeX{} systems have
+\ProgName{dvips} configured to use
+\Qref*{\extension{pk} files}{Q-pk} in its output. Even
+\PDFTeX{} will use \extension{pk} files if it can see no alternative for
+a font in the document it is processing.
+
+Our remedy is to use
+``\Qref*{Adobe Type~1}{Q-adobetypen}''
+versions of the fonts we need. Since Adobe are in the
+business of selling Type~1 fonts, \ProgName{Reader} was of course made
+to deal with them really rather well, from the very beginning.
+
+Of course, if your document uses nothing but fonts that came from
+Adobe in the first place~--- fonts such as \FontName{Times} that
+appear in pretty much every \PS{} printer, or such as Adobe
+\FontName{Sabon} that you pay extra for~--- then there's no problem.
+
+But most people use \FontName{Computer} \FontName{Modern} to start
+with, and even those relative sophisticates who use something as
+exotic as \ProgName{Sabon} often find themselves using odd characters
+from \acro{CM} without really intending to do so. Fortunately, rather
+good versions of the \acro{CM} fonts are available from the \acro{AMS}
+(who have them courtesy of % ! line break
+\Qref{Blue Sky Research}{Q-commercial} and \YandY{}).
+
+Most modern systems have the fonts installed ready to use; and any
+system installed less than 3~years ago has a \ProgName{dvips}
+configuration file `\texttt{pdf}' that signals the use of the
+\acro{CM} fonts, and also sets a few other parameters to improve
+\ProgName{dvips}' output. Use this configuration as:
+\begin{quote}
+\begin{verbatim}
+dvips -Ppdf myfile -o myfile.ps
+\end{verbatim}
+\end{quote}
+This may produce a warning message about failing to find the
+configuration file:
+\begin{quote}
+\begin{verbatim}
+dvips: warning: no config file for `pdf'
+\end{verbatim}
+\end{quote}
+or something similar, or about failing to find a font file:
+\begin{quote}
+\begin{verbatim}
+dvips: ! Couldn't find header file cmr10.pfb
+\end{verbatim}
+\end{quote}
+Either of these failures signals that your
+system doesn't have the fonts in the first place.
+
+A way of using the fonts that doesn't involve the sophistication of
+the \texttt{-Ppdf} mechanism is simply to load maps:
+\begin{quote}
+\begin{verbatim}
+dvips -Pcmz -Pamz myfile -o myfile.ps
+\end{verbatim}
+\end{quote}
+You may encounter the same warning messages as listed above.
+
+If your system does not have the fonts, it won't have the
+configuration file either; however, it might have the configuration
+file without the fonts. In either case, you need to
+\Qref*{install the fonts}{Q-inst1cm}.
+
+
+\Question[Q-fuzzy-gs]{Fuzzy fonts because \ProgName{Ghostscript} too old}
+\keywords{crippled blurry}
+
+So you've done everything the \acro{FAQ} has told you that you need,
+correct fonts properly installed and appearing in the \ProgName{dvips}
+output, but \emph{still} you get fuzzy character output after
+distilling with \href{http://www.ghostscript.com/}{\ProgName{ghostscript}}.
+
+The problem could arise from too old a version of
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}}, which you
+may be using directly, or via a
+script such as \ProgName{ps2pdf} (distributed with
+\ProgName{ghostscript} itself), \ProgName{dvipdf}, or similar.
+Though \ProgName{ghostscript} was capable of distillation from
+version~5.50, that version could only produce bitmap Type~3 output of
+any font other than the fundamental 35~fonts (\FontName{Times},
+\FontName{Helvetica}, etc.). Later versions added `complete'
+distillation, but it wasn't until version~6.50 that one could rely on
+it for everyday work.
+
+So, if your \acro{PDF} output still looks fuzzy in \ProgName{Acrobat}
+\ProgName{Reader}, upgrade \ProgName{ghostscript}. The new version
+should be at least version~6.50, of course, but it's usually good
+policy to go to the most recent version (version~8.12 at the time of
+writing~--- 2003).
+
+\Question[Q-fuzzy-T1]{Fonts go fuzzy when you switch to \acro{T}1}
+\keywords{crippled blurry}
+
+You've been having problems with hyphenation, and someone has
+suggested that you should use ``\cmdinvoke{usepackage}[T1]{fontenc}''
+to help sort them out. Suddenly you find that your final \acro{PDF}
+has become fuzzy. The problem may arise whether you are using \PS{}
+output and then distilling it, or you are using \PDFTeX{} for the
+whole job.
+
+In fact, this is the same problem as most others about the
+\Qref*{quality of \acro{PDF}}{Q-dvips-pdf}: you've abandoned
+your previous setup using Type~1 versions of the \acro{CM} fonts, and
+\ProgName{dvips} has inserted Type~3 versions of the \acro{EC} fonts
+into your document output. (See % beware line break
+``\Qref*{Adobe font types}{Q-adobetypen}
+for details of these font types; also, note that the font
+\emph{encoding}~\acro{T}1
+has nothing directly to do with the font \emph{format}~Type~1).
+
+However, as noted in % beware line break
+\htmlonly{``}\Qref[question]{8-bit Type~1 fonts}{Q-type1T1}\htmlonly{''},
+Type~1 versions of \acro{CM}-like fonts in \acro{T}1 (or equivalent) encoding
+are now available, both as ``real'' fonts, and as virtual font sets.
+One solution, therefore, is to use one of these alternatives.
+
+The alternative is to switch font family altogether, to something like
+\FontName{Times} (as a no-thought default) or one of the many more pleasing
+Adobe-encoded fonts. The default action of \Package{fontinst}, when
+creating metrics for such a font, is to create settings for both \acro{OT}1
+and \acro{T}1 encodings, so there's little change in what goes on (at the
+user level) even if you have switched to \acro{T}1~encoding when using the
+fonts.
+
+\Question[Q-distill-prob]{Characters missing from \acro{PDF} output}
+
+If you're using \ProgName{Acrobat} \ProgName{Distiller} to create your
+\acro{PDF} output, you may find
+characters missing. This may manifest
+itself as messed-up maths equations (missing
+``\latexhtml{\ensuremath{-}}{-}'' signs, for example), or bits missing
+from large symbols. Early versions of \ProgName{Distiller} used to
+ignore character positions 0--31 and 128--159 of every font: Adobe's
+fonts never use such positions, so why should \ProgName{Distiller}?
+
+Well, the answer to this question is ``because Adobe don't produce all
+the world's fonts''~--- fonts like \FontName{Computer}
+\FontName{Modern} were around before Adobe came on the scene, and
+\emph{they} use positions 0--31. Adobe don't react to complaints like
+that in the previous sentence, but they do release new versions of
+their programs; and \ProgName{Distiller}, since at least version~4.0,
+\emph{has} recognised the font positions it used to shun.
+
+Meanwhile, \TeX{} users with old versions of \ProgName{Distiller} need
+to deal with their fonts. \ProgName{Dvips} comes to our aid: the
+switch \texttt{-G1} (``remap characters''), which moves the offending
+characters out of the way. The \acro{PDF} configuration file
+(\texttt{-Ppdf}), recommended % beware line break
+\latexhtml{above}{in ``\Qref{the wrong type of fonts}{Q-fuzzy-type3}''},
+includes the switch.
+
+The switch is not without its problems; pre-2003 versions of
+\ProgName{dvips} will apply it to Adobe fonts as well, causing
+\Qref*{havoc}{Q-charshift}, but fortunately
+that problem is usually soluble. However, a document using both
+\acro{CM} and Adobe-specified fonts is stuck. The only real solution
+is either to upgrade \ProgName{dvips}, or to spend money to upgrade
+\ProgName{Distiller}.
+
+\Question[Q-type1T1]{Finding `8-bit' Type~1 fonts}
+\keywords{eight}
+
+Elsewhere, answers to these \acro{FAQ}s recommend that you use an
+`8-bit' font to permit % line break!!
+\Qref*{accentuation of inflected languages}{Q-hyphenaccents},
+and also recommend the use of Type~1 fonts to ensure that
+you get \Qref*{good quality \acro{PDF}}{Q-fuzzy-type3}. These
+recommendations used to be contradictory: one could not just
+``switch'' from the free \acro{CM} fonts to free Cork- (or similarly)
+encoded Type~1 fonts. The first approach that started to alleviate
+these problems, was the development of virtual fonts that make
+a good approach to the Cork encoding (see below). Now, however, we
+have ``true'' Type~1 fonts available: as always, we have an
+embarrassment of riches with three free alternatives, and one
+commercial and one shareware version.
+
+\Package{CM-super} is an
+auto-traced set which encompasses all of the \acro{T}1 and \acro{TS}1
+encodings as well as the \acro{T}2* series (the family of encodings
+that cover languages based on Cyrillic alphabets). These fonts are
+pretty easy to install (the installation instructions are clear), but
+they are huge: don't try to install them if you're short of disc
+space.
+
+\Package{CM-LGC} is a similar ``super-font'' set, but of much more
+modest size; it covers \acro{T}1, \acro{TS}1 and \acro{T}2{A}
+encodings (as does \Package{CM-super}, and also covers the \acro{LGR}
+encoding (for typesetting Greek, based on Claudio Beccari's \MF{}
+sources). \Package{CM-LGC} manages to be small by going to the
+opposite extreme from \Package{CM-super}, which includes fonts at all
+the sizes supported by the original \acro{EC} (a huge range);
+\Package{CM-LGC} has one font per font shape, getting other sizes by
+scaling. There is an inevitable loss of quality inherent in this
+approach, but for the disc-space-challenged machine, \Package{CM-LGC}
+is an obvious choice.
+
+\Package{Tt2001} is a simple scan of the \acro{EC} and \acro{TC}
+fonts, and has some virtues~--- it's noticeably smaller than
+\Package{CM-super} while being less stark than \Package{CM-LGC}.
+
+\Package{Latin} \Package{Modern} is produced using the
+program \Qref*{\ProgName{MetaType1}}{Q-textrace}. The
+\Package{Latin} \Package{Modern} set comes with \acro{T}1, \acro{TS}1
+\acro{LY}1 encoded variants (as well as a variant using the Polish
+\acro{QX} encoding); for the glyph set it covers, its outlines seem
+rather cleaner than those of \Package{CM-super}. \Package{Latin}
+\Package{Modern} is more modest in its disc space demands than is
+\Package{CM-super}, while not being nearly as stark in its range of
+design sizes as is \Package{CM-LGC}~--- \Package{Latin}
+\Package{Modern}'s fonts are offered in the same set of sizes as the
+original \Package{CM} fonts. It's hard to argue with the choice:
+Knuth's range of sizes has stood the test of time, and is one of the
+bases on which the excellence of the \TeX{} system rests.
+
+\Qref*{Virtual fonts}{Q-virtualfonts} help us deal with the problem,
+since they allow us to map ``bits of \acro{DVI} file'' to single
+characters in the virtual font; so we can create an ``\'e'' character
+by recreating the \acro{DVI} commands that would result from the code
+``\csx{'}\texttt{e}''. However, since this involves two characters being
+selected from a font, the arrangement is sufficient to fool
+\ProgName{Acrobat} \ProgName{Reader}: you can't use the program's
+facilities for searching for text that contains inflected characters,
+and if you \emph{cut} text from a window that contains such a
+character, you'll find something unexpected (typically the accent and
+the `base' characters separated by a space) when you \ProgName{paste}
+the result. However, if you can live with this difficulty, virtual
+fonts are a useful and straightforward solution to the problem.
+
+There are two virtual-font offerings of \acro{CM}-based 8-bit
+fonts~--- the \Package{ae} (``almost \acro{EC}'') and
+\Package{zefonts} sets; the \Package{zefonts} set has wider coverage
+(though the \Package{ae} set may be extended to offer guillemets by
+use of the \Package{aeguill} package). Neither offers characters such
+as \texttt{eth} and \texttt{thorn} (used in, for example, in
+Icelandic), but the \Package{aecompl} package works with the
+\Package{ae} fonts to provide the missing characters from the
+\acro{EC} fonts (i.e., as bitmaps).
+
+The sole remaining commercial \acro{CM}-like 8-bit font comes from
+Micropress, who offer the complete \acro{EC} set
+in Type~1 format, as part of their range of outline versions of fonts
+that were originally distributed in \MF{} format. See
+\Qref[question]{``commercial distributions''}{Q-commercial}.
+
+The shareware % ! line break
+\Qref*{BaKoMa \TeX{} distribution}{Q-TeXsystems} offers a
+set of Type~1 \acro{EC} fonts, as an extra shareware option. (As far
+as the present author can tell, these fonts are \emph{only} available
+to users of BaKoMa \TeX{}: they are stored in an archive format that
+seems not to be publicly available.)
+
+Finally, you can use one of the myriad text fonts available in Type~1
+format (with appropriate \acro{PSNFSS} metrics for \acro{T}1 encoding,
+or metrics for some other 8-bit encoding such as \acro{LY}1). However,
+if you use someone else's text font (even something as simple as
+Adobe's Times family) you have to find a matching family of
+mathematical fonts, which is a non-trivial undertaking~---
+\htmlonly{see }\Qref{``choice of scalable fonts''}{Q-psfchoice}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}ae fonts]\CTANref{ae}
+\item[aecompl.sty]Distributed with \CTANref{ae}
+\item[aeguill.sty]\CTANref{aeguill}
+\item[\nothtml{\rmfamily}BaKoMa fonts]Browse \CTANref{bakoma-texfonts}
+\item[\nothtml{\rmfamily}CM-LGC fonts]\CTANref{cm-lgc}
+\item[\nothtml{\rmfamily}CM-super fonts]\CTANref{cm-super} (beware:
+ very large download)
+\item[\nothtml{\rmfamily}Latin Modern fonts]\CTANref{lm}
+\item[\nothtml{\rmfamily}tt2001 fonts]\CTANref{tt2001}
+\item[\nothtml{\rmfamily}zefonts]\CTANref{zefonts}
+\end{ctanrefs}
+
+\Question[Q-pkfix]{Replacing Type 3 fonts in \PS{}}
+
+One often comes across a \PS{} file generated by
+\ProgName{dvips} which contains embedded \acro{PK} fonts; if you try
+to generate \acro{PDF} from such a file, the quality will be poor.
+
+Of course, the proper solution is to regenerate the \PS{} file,
+but if neither the sources nor the \acro{DVI} file are available, one
+must needs resort to some sort of patching to replace the bitmap fonts
+in the file by outline fonts.
+
+The program \ProgName{pkfix} (by Heiko Oberdiek) will do this
+patching, for files created by ``not too old versions'' of
+\ProgName{dvips}: it finds the fonts to be replaced by examining the
+\PS{} comments \ProgName{dvips} has put in the file. For each
+font, \ProgName{pkfix} puts appropriate \TeX{} commands in a file,
+which it then processes and runs through \ProgName{dvips} (with switch
+\texttt{-Ppdf}) to acquire an appropriate copy of the font; these copies are
+then patched back into the original file.
+
+If your source file is older than \ProgName{pkfix} can deal with,
+there's still a modicum of hope: \ProgName{pkfix-helper} examines the
+bitmap fonts in a document, compares them with the metric
+(\extension{tfm}) fonts on your system and comes to a view of which
+font might be which. The program reports on ``poor'' matches, and
+there are options for confirming, or replacing, its guesses. The
+technique (which sounds implausible) is successful enough to be worth
+a try.
+
+A further option is Frank Siegert's (shareware)
+\href{http://www.pstill.com}{PStill}, which is capable of processing
+the \PS{} it is distilling, and one option is to replace bitmap fonts
+in the file with Type~1 versions.
+\begin{ctanrefs}
+\item[pkfix]\CTANref{pkfix}
+\item[pkfix-helper]\CTANref{pkfix-helper}
+\end{ctanrefs}
+
+\Question[Q-pdfpagelabels]{\Package{Hyperref} and repeated page numbers}
+
+The \Class{book} class (and its friends and relations) automatically
+changes the display of page numbers in the frontmatter of the document
+to lower-case roman. This is fine for human readers, but if
+\Package{hyperref} has been misconfigured, the existence of pages have
+the same page number can cause problems. Fortunately, the
+configuration options to make \Package{hyperref} ``do the right
+thing'' are (by default) set up to avoid problems.
+
+The two options in question are:
+\begin{description}
+\item[\pkgoption{plainpages=false}] Make page anchors using the
+ formatted form of the page number. With this option,
+ \Package{hyperref} writes different anchors for pages `ii' and `2'.
+ (This is the default value for the option, which is a % ! line break
+ \emph{good thing}\dots{})
+ If the option is set `\texttt{true}' \Package{hyperref} writes page
+ anchors as the arabic form of the page number, rather than the
+ formatted form that gets printed; this is not usually appropriate.
+\item[\pkgoption{pdfpagelabels}] Set \acro{PDF} page labels; i.e.,
+ write the value of \csx{thepage} to the \acro{PDF} file so that
+ \Package{Acrobat Reader} can display the page number as (say) `ii (4
+ of 40)' rather than simply `4 of 40'.
+\end{description}
+The two should be used whenever page numbering is not just
+`1\texttt{..}\ensuremath{n}'; they may be used independently, but
+usually are not.
+
+The recipe isn't perfect: it relies on \csx{thepage} being different
+for every page in the document. A common problem arises when there is
+an unnumbered title page, after which page numbers are reset: the
+\PDFTeX{} warning of ``\Qref*{duplicate destinations}{Q-hyperdupdest}''
+will happen in this case, regardless of the options.
+\begin{ctanrefs}
+\item[hyperref.sty]\CTANref{hyperref}
+\end{ctanrefs}
+
+\Question[Q-cpy-srchpdf]{Copy-paste-able/searchable \acro{PDF} files}
+
+\acro{PDF} files generated from \tex{} (and friends), will by default
+hold their text in the encoding of the original \tex{} font used by
+the document.
+
+When \acro{PDF} readers, etc., offer copy-paste or searching
+functions, the operations take place on the glyph codes used for the
+fonts selected by the document. This is fine, for the simplest
+documents (in English, at least); the problem comes when you're using
+an inflected language (with accented letters, or composite glyphs
+such as `\ae{}')~--- \tex{} will typically use a non-standard
+encoding, and there are likely be problems, since \acro{PDF} readers
+assume the text is presented in Unicode.
+
+For \acro{PDF} generated from \latex{} (the \acro{DVI} being
+converted, by whatever means), or from \pdflatex{}, the character
+codes used in the \acro{PDF} file are in fact those of the document's
+\Qref*{font encoding}{Q-whatenc}; if you're using \acro{OT}1 or
+\acro{T}1, your document will be \acro{OK} for almost all \acro{ASCII}
+characters, but it's likely that anything ``out of the ordinary'' will
+not be represented properly. (Of course, \acro{PDF} generated from
+\xetex{}- or \luatex{}-based formats is going to be \acro{OK}, since
+those engines work in Unicode througout.)
+
+The solution comes from the character-mapping facilities in the
+\acro{PDF} specification: the file may specify a table of translations
+of characters present in the coding used in the file, to a Unicode
+version of the characters.
+
+Packages \Package{cmap} and \Package{mmap} both offer means of
+generating such tables (\Package{mmap} has wider coverage, including
+the various maths encodings); both work with \pdftex{} and no other
+engine. Thus your document becomes something like:
+\begin{quote}
+\begin{verbatim}
+\documentclass{article}
+\usepackage{mmap} % (or cmap)
+\usepackage[T1]{fontenc}
+... % your other packages
+\begin{document}
+... % your actual text
+\end{verbatim}
+\end{quote}
+
+Unfortunately, the packages only work with fonts that are directly
+encoded, such as the default (Computer Modern, i.e., \FontName{cm}
+fonts, and things such as \FontName{cm-super} or the \FontName{Latin}
+\FontName{Modern} sets. Fonts like Adobe
+Times Roman (which are encoded for \AllTeX{} use via virtual fonts)
+are not amenable to this treatment.
+\begin{ctanrefs}
+\item[cmap.sty]\CTANref{cmap}
+\item[cm-super \nothtml{\rmfamily}fonts]\CTANref{cm-super}
+\item[\nothtml{\rmfamily}Latin Modern fonts]\CTANref{lm}
+\item[mmap.sty]\CTANref{mmap}
+\end{ctanrefs}
+\LastEdit{2013-08-21}
+
+% \Question[Q-hypertex]{The Hyper\tex{} project}
+%
+% The Hyper\TeX{} project extended the functionality of all the
+% \LaTeX{} cross-referencing commands (including the table of contents)
+% to produce \csx{special} commands which are parsed by \acro{DVI} processors
+% conforming to the Hyper\TeX{} guidelines;
+% it provides general hypertext links, including those
+% to external documents.
+%
+% The Hyper\TeX{} specification says that conformant viewers/translators
+% must recognize the following set of \csx{special} commands:
+% \begin{description}
+% \item[href:] |html:<a href = "href_string">|
+% \item[name:] |html:<a name = "name_string">|
+% \item[end:] |html:</a>|
+% \item[image:] |html:<img src = "href_string">|
+% \item[base\_name:] |html:<base href = "href_string">|
+% \end{description}
+%
+% The \emph{href}, \emph{name} and \emph{end} commands are used to do
+% the basic hypertext operations of establishing links between sections
+% of documents.
+%
+% Further details are available on \URL{http://arXiv.org/hypertex/}; there
+% are two commonly-used implementations of the specification, a
+% modified \ProgName{xdvi} and (recent releases of)
+% \ProgName{dvips}. Output from the latter may be used in recent
+% releases of \ProgName{ghostscript} or Acrobat Distiller.
+
+
diff --git a/obsolete/help/texfaq/faq-images.tex b/obsolete/help/texfaq/faq-images.tex
new file mode 100644
index 0000000000..714c628f0a
--- /dev/null
+++ b/obsolete/help/texfaq/faq-images.tex
@@ -0,0 +1,25 @@
+\documentclass[a4paper,12pt]{article}
+\usepackage[active,tightpage]{preview}
+\begin{document}
+\large
+
+% image 1: wobbly subscript
+\begin{preview}
+ $ X^{1}_{2} X_{2} $
+\end{preview}
+
+% image 2: even subscript pushed down by null superscript
+\begin{preview}
+ $ X^{1}_{2} X^{}_{2} $
+\end{preview}
+
+% image 3: simple use of maths:
+\begin{preview}
+ \texttt{fi}\ensuremath\Rightarrow``fi''
+\end{preview}
+\end{document}
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: t
+%%% End:
diff --git a/obsolete/help/texfaq/faq-install.tex b/obsolete/help/texfaq/faq-install.tex
new file mode 100644
index 0000000000..7c01b80fcf
--- /dev/null
+++ b/obsolete/help/texfaq/faq-install.tex
@@ -0,0 +1,1021 @@
+% $Id: faq-install.tex,v 1.17 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{Installing \AllTeX{} files}
+
+\Question[Q-installthings]{Installing things on a \AllTeX{} system}
+\AliasQuestion{Q-instpackages}
+
+Installing (or replacing) things on your \AllTeX{} system has the
+potential to be rather complicated; the following questions attempt to
+provide a step-by-step approach, starting from the point where you've
+decided what it is that you want to install:
+\begin{itemize}
+\item You must \Qref*{find the file you need}{Q-install-find};
+\item If you are going to install a \LaTeX{} package, you may need to
+ \Qref*{unpack the distributed files}{Q-install-unpack};
+\item It may be necessary to % ! line break
+ \Qref*{generate some documentation to read}{Q-install-doc};
+\item You need to % ! line break
+ \Qref*{decide where to install the files}{Q-install-where};
+\item You must now \Qref*{install the files}{Q-inst-wlcf}; and
+ finally
+\item You may need to \Qref*{tidy up}{Q-inst-tidy} after the installation.
+\end{itemize}
+
+\Question[Q-install-find]{Finding packages to install}
+
+How did you learn about the package?
+
+If the information came from these \acro{FAQ}s, you should already
+have a link to the file (there are lists of packages at the end of
+each answer).
+\begin{narrowversion}
+ Make a browser link from \URL{http://mirror.ctan.org/} and the text
+ in the package list; if the link returns a directory listing, you can
+ generally retrieve the whole directory by appending the link with
+ \extension{zip}~--- so, for example
+ \URL{http://mirror.ctan.org/macros/latex/doc.zip} for the \latex{}
+ documentation directory.
+\end{narrowversion}
+\begin{wideversion}
+ Click on one of the links associated with the package, and you can
+ get the package (which may be one file or several).
+% need separate wording for pdfversion and htmlversion, here
+\end{wideversion}
+
+If you heard about the file somewhere else, it's possible that the
+source told you where to look; if not, try the \acro{CTAN} searching
+facilities, such as \URL{http://www.tex.ac.uk/search/}. That (rather
+simple) search engine can return data from a search of the CTAN
+catalogue (which covers most useful packages), or data from a search
+of the names of files on the archive.
+
+Packages come in a variety of different styles of distribution; the
+very simplest will actually offer just \File{package.sty}~--- in this
+case, just download the file and % ! line break
+\Qref*{get on with installation}{Q-inst-wlcf}.
+
+You will regularly find that the file you want (e.g., \File{foo.sty})
+is distributed in a \LaTeX{} documented source file \File{foo.dtx};
+thus you should search just for \emph{foo}~--- \File{foo.sty} won't be
+visible anywhere on the archive or in the catalogue.
+
+Since most packages are distributed in this
+\extension{dtx}/\extension{ins} way, they usually occupy their own
+directory on the archive. Even if that directory contains other
+packages, you should download everything in the directory: as often as
+not, packages grouped in this way depend on each other, so that you
+really \emph{need} the other ones.
+
+Having acquired the package distribution, % ! line break
+``\Qref*{unpacking \LaTeX{} packages}{Q-install-unpack}'' outlines
+your next step.
+
+\Question[Q-install-unpack]{Unpacking \LaTeX{} packages}
+
+As discussed \Qref*{elsewhere}{Q-dtx}, the `ordinary' way to
+distribute a \LaTeX{} package is as a pair of files \File{package.dtx}
+and \File{package.ins}. If you've acquired such a pair, you simply
+process \File{package.ins} with \LaTeX{}, and the files will appear,
+ready for installation.
+
+Other sorts of provision should ordinarily be accompanied by a
+\File{README} file, telling you what to do; we list a few example
+configurations.
+
+Sometimes, a directory comes with a bunch of \extension{dtx} files, but
+fewer (often only one) \extension{ins} files (\LaTeX{} itself comes
+looking like this). If there is more than one \extension{ins} file,
+and in the absence of any instruction in the \File{README} file, simply
+process the \extension{ins} file(s) one by one.
+
+If you're missing the \File{package.ins} altogether, you need to play
+around until something works. Some \extension{dtx} files are
+``self-extracting''~--- they do without an \extension{ins} file, and once
+you've processed the \File{package.dtx}, \File{package.sty} has
+automagically appeared. Various other oddities may appear, but the
+archivists aim to have \File{README} file in every package, which
+should document anything out of the ordinary with the distribution.
+
+\Question[Q-install-doc]{Generating package documentation}
+
+We are faced with a range of ``normal'' provision, as well as several
+oddities. One should note that documentation of many packages is
+available on \acro{CTAN}, without the need of any further effort by
+the user~--- such documentation can usually be browsed \emph{in situ}.
+
+However, if you find a package that does not offer documentation on
+the archive, or if you need the documentation in some other format
+than the archive offers, you can usually generate the documentation
+yourself from what you download from the archive.
+
+The standard mechanism, for \LaTeX{} packages, is simply to run
+\LaTeX{} on the \File{package.dtx} file, as you would any ordinary
+\LaTeX{} file (i.e., repeatedly until the warnings go away).
+
+A variant is that the unpacking process provides a file
+\File{package.drv}; if such a thing appears, process it in preference
+to the \File{package.dtx} (it seems that when the documented \LaTeX{}
+source mechanism was first discussed, the \File{.drv} mechanism was
+suggested, but it's not widely used nowadays).
+
+Sometimes, the \LaTeX{} run will complain that it can't find
+\File{package.ind} (the code line index) and/or \File{package.gls}
+(the list of change records, not as you might imagine, a glossary).
+Both types of file are processed with special \ProgName{makeindex}
+style files; appropriate commands are:
+\begin{quote}
+\begin{verbatim}
+makeindex -s gind package
+makeindex -s gglo -o package.gls package.glo
+\end{verbatim}
+\end{quote}
+This author finds that the second (the change record) is generally of
+limited utility when reading package documentation; it is, however,
+valuable if you're part of the package development team. If you don't
+feel you need it, just leave out that step
+
+Another common (and reasonable) trick performed by package authors is
+to provide a separate file \File{package-doc.tex} or even simply
+\File{manual.tex}; if the file \File{package.dtx} doesn't help, simply
+look around for such alternatives. The files are treated in the same
+way as any ``ordinary'' \LaTeX{} file.
+
+\Question[Q-inst-wlcf]{Installing files ``where \AllTeX{} can find them''}
+\AliasQuestion{Q-wherefiles}
+
+In the past, package documentation used always to tell you to put your
+files ``where \LaTeX{} can find them''; this was always unhelpful~---
+if you knew where that \emph{was}, you didn't need telling, but if you
+\emph{didn't} know, you were completely stuck.
+
+It was from this issue that the whole idea of the \acro{TDS} sprang;
+``where to put'' questions now come down to ``where's the \acro{TDS}
+tree?''.
+
+We therefore answer the question by considering:
+\begin{itemize}
+\item \Qref*{what tree to use}{Q-what-TDS}, and
+\item \Qref*{where in the tree to put the files}{Q-install-where}.
+\end{itemize}
+
+Once we know the answer to both questions, and we've created any
+directories that are needed, we simply copy files to their rightful
+location.
+
+This has done what the old requirement specified: \LaTeX{} (or
+whatever) \emph{can} (in principle) find the files. However, in order
+that the software \emph{will} find the files, we need to update an
+index file.
+
+On a \miktex{} system, open the window
+ \texttt{Start}\arrowhyph{}%
+ \texttt{All Programs}\arrowhyph{}%
+ \texttt{\miktex{} \meta{version}}\arrowhyph{}%
+ \texttt{Settings},
+and click on \texttt{Refresh FNDB}.
+The job may also be done in a command window, using the command:
+\begin{quote}
+\begin{verbatim}
+initexmf --update-fndb
+\end{verbatim}
+\end{quote}
+The % ! line break
+\href{http://docs.miktex.org/manual/initexmf.html}{\miktex{} documentation}
+gives further details about \texttt{initexmf}.
+
+On a \texlive{}-based system (or its predecessor te\TeX{}, use the command
+\texttt{texhash} (or if that's not available, \texttt{mktexlsr}~---
+they ought to be different names for the same program).
+
+Having done all this, the new package will be available for use.
+
+\Question[Q-what-TDS]{Which tree to use}
+
+In almost all cases, new material that you install should go into the
+``local'' tree of your \AllTeX{} installation. (A discussion of
+reasons \emph{not} to use the local tree appears below.)
+
+On a Unix(-alike) system, using \texlive{} or te\TeX{}, the root
+directory will be named something like \path{/usr/share/texmf-local/}
+or \path{/usr/local/share/texmf/}
+You can ask such a system where it believes a local tree should be:
+\begin{quote}
+\begin{verbatim}
+kpsewhich -var-value TEXMFLOCAL
+\end{verbatim}
+\end{quote}
+the output being the actual path, for example (on the workstation this
+author is using today):
+\begin{quote}
+\begin{verbatim}
+/usr/local/share/texmf
+\end{verbatim}
+\end{quote}
+
+In a \miktex{} installation, the location will in fact typically be
+something you specified yourself when you installed \miktex{} in the
+first place, but you may find you need to create one. The \miktex{}
+``Settings'' window (%
+ \texttt{Start}\arrowhyph{}%
+ \texttt{Programs}\arrowhyph{}%
+ \texttt{\miktex{}}\arrowhyph{}%
+ \texttt{Settings})
+has a tab ``\texttt{Roots}''; that tab gives a list of current
+\acro{TDS} roots (they're typically not called
+\texttt{texmf}-anything). If there's not one there with
+``\texttt{local}'' in its name, create an appropriate one (see below),
+and register it using the window's
+``\texttt{Add}'' button.
+
+The % ! line break
+\href{http://docs.miktex.org/faq/maintenance.html}{\miktex{} \acro{FAQ}}
+suggests that you should create % ! line break
+``\texttt{C:\textbackslash Local TeX Files}'', which is good if you
+manage your own machine, but often not even possible in corporate, or
+similar, environments~--- in such situations, the user may have no
+control over the hard disc of the computer, at all.
+
+So the real criterion is that your local tree should be somewhere that
+\emph{you}, rather than the system, control. Restrictive systems often
+provide a ``home directory'' for each user, mounted as a network
+drive; this is a natural home for the user's local tree. Other (often
+academic) environments assume the user is going to provide a memory
+stick, and will assign it a defined drive letter~--- another good
+candidate location. Note that the semantics of such a tree are
+indistinguishable from those of a % ! line break
+\Qref*{``home'' \acro{TEXMF} tree}{Q-privinst}.
+
+You might not wish to use the `local' tree:
+\begin{itemize}
+\item if the package, or whatever, is ``personal'' (for example,
+ something commercial that has been licensed to you alone, or
+ something you're developing yourself), it should go in your
+ \Qref*{``home'' \acro{TEXMF} tree}{Q-privinst};
+\item if you \emph{know} that the package you are installing is a
+ replacement for the copy on the \acro{TEXMF} tree of your \AllTeX{}
+ distribution; in this case it is reasonable to replace the existing
+ copy in the \acro{TEXMF} tree.
+\end{itemize}
+If the system is upgraded (or otherwise re-installed), a copy made in
+the \acro{TEXMF} tree will probably be overwritten or deleted. This
+may be what you want, but otherwise it's a powerful incentive to use a
+tree that is \emph{not} ``part of the installed system''.
+
+The reason one might place upgrades the distribution's main tree is to
+avoid confusion. Suppose you were to place the file on the local
+tree, and then install a new version of the distribution~--- you might
+have an effect like:
+\begin{itemize}
+\item distribution comes with package version \ensuremath{n};
+\item you install package version \ensuremath{n+1} on the local tree; and
+\item the updated distribution provides package version \ensuremath{n+2}.
+\end{itemize}
+In such a situation, you could find yourself using version
+\ensuremath{n+1} (from the local tree) \emph{after} the new
+distribution has been installed.
+
+If you install in the local tree, the only way to avoid such problems
+is to carefully purge the local tree when installing a new
+distribution. This is tedious, if you're maintaining a large
+installation.
+
+\Question[Q-install-where]{Where to install packages}
+
+We assume here that you have decided what tree to put your files in,
+after reading % ! line break
+``\Qref*{choosing a \acro{TDS} tree}{Q-what-TDS}''. We will therefore
+write \texttt{\$TEXMF} for it, and you need to substitute the tree
+you decided on.
+
+The basic idea is to imitate the directory structure in your
+existing tree(s). Here are some examples of where various sorts of
+files should go:
+\begin{verbatim}
+.sty, .cls or .fd: $TEXMF/tex/<format>/<package>/
+.mf: $TEXMF/fonts/source/<supplier>/<font>/
+.tfm: $TEXMF/fonts/tfm/<supplier>/<font>/
+.vf: $TEXMF/fonts/vf/<supplier>/<font>/
+.afm: $TEXMF/fonts/afm/<supplier>/<font>/
+.pfb: $TEXMF/fonts/type1/<supplier>/<font>/
+.ttf: $TEXMF/fonts/truetype/<supplier>/<font>/
+.otf: $TEXMF/fonts/opentype/<supplier>/<font>/
+.pool, .fmt, .base or .mem: $TEXMF/web2c
+\end{verbatim}
+and for modern systems (those distributed in 2005 or later, using \acro{TDS}
+v1.1 layouts):
+\begin{verbatim}
+.map: $TEXMF/fonts/map/<syntax>/<bundle>/
+.enc: $TEXMF/fonts/enc/<syntax>/<bundle>/
+\end{verbatim}
+(Map and encoding files went to directories under
+\File{$TEXMF/dvips/}, %$
+in earlier distributions.)
+
+In the lists above \meta{format} identifies the format the macros
+are designed for~--- it can be things such as \texttt{plain},
+\texttt{generic} (i.e., any format), \texttt{latex} or
+\texttt{context} (or several less common formats).
+
+For fonts, \meta{font} refers to the font family (such as \texttt{cm}
+for Knuth's Computer Modern, \texttt{times} for Adobe's Times Roman).
+The supplier is usually obvious~--- the supplier
+``public'' is commonly used for free fonts.
+
+The \meta{syntax} (for \extension{map} and \extension{enc} files) is a
+categorisation based on the way the files are written; candidates are
+names of programs such as \ProgName{dvips} or \ProgName{pdftex}.
+
+``Straight'' \AllTeX{} input can take other forms than the
+\extension{sty}, \extension{cls} or \extension{fd} listed above, too
+(apart from the `obvious' \extension{tex}). Examples are (the
+obvious) \extension{tex}, \extension{lfd} for \Package{babel} language
+definitions, \extension{sto} and \extension{clo} for package and class
+options, \extension{cfg} for configuration information,
+\extension{def} for variants (such as the types of devices
+\Package{graphics} drives). The \File{README} of the package should
+tell you of any others, though sometimes that information is printed
+when the package's \Qref*{comments are stripped}{Q-install-unpack}.
+All of these files should live together with the main package files.
+
+Note that \meta{font} may stand for a single font or an entire family:
+for example, files for all of Knuth's Computer Modern fonts are to be
+found in \texttt{.../public/cm}, with various prefixes as appropriate.
+
+The font ``supplier'' \emph{public} is a sort of hold-all for
+``free fonts produced for use with \AllTeX{}'': as well as Knuth's
+fonts, \emph{public}'s directory holds fonts designed by others
+(originally, but no longer exclusively, in \MF{}).
+
+Documentation for each package should all go, undifferentiated, into a
+directory on the \path{doc/} subtree of the \acro{TDS}. The layout of
+the subtree is slightly different: \path{doc/latex} hosts all
+\LaTeX{} documentation directories, but more fundamental things are
+covered, e.g., by \path{doc/etex} or \path{doc/xetex}.
+
+\Question[Q-inst-tidy]{Tidying up after installation}
+
+There's not usually a lot to do after you've completed the steps
+above~--- indeed, if you're merely installed files direct from the
+archive, or whatever, there will be precisely nothing left, by way of
+debris.
+
+Things you might care to clean up are:
+\begin{itemize}
+\item the archive file, if you retrieved your data from the archive
+ as a \extension{zip} file, or the like;
+\item the \extension{dtx} and \extension{ins} files, if you chose not
+ to install them with the documentation; and
+\item the \extension{aux}, \extension{log}, \extension{idx}, etc.,
+ from building the documentation.
+\end{itemize}
+A simple way of achieving all this is to download to a working
+directory that was created for the purpose, and then to delete that
+directory and all its contents after you've finished installing.
+
+\Question[Q-inst-scut]{Shortcuts to installing files}
+
+There are circumstances in which most of the fuss of installation can
+be bypassed:
+\begin{itemize}
+\item If you are a \miktex{} user, the
+\begin{hyperversion}
+ \Qref{\miktex{} package management system}{Q-inst-miktex*}
+ can usually help;
+\end{hyperversion}
+\begin{flatversion}
+ \miktex{} package management system can usually help
+ (\Qref{}{Q-inst-miktex*});
+\end{flatversion}
+\item Similarly, if you are a \texlive{} user, the
+\begin{hyperversion}
+ \Qref{\texlive{} manager}{Q-inst-texlive}
+ can usually help;
+\end{hyperversion}
+\begin{flatversion}
+ \texlive{} package management system can usually help
+ (\Qref{}{Q-inst-texlive});
+\end{flatversion}
+\item The package you want may already exist as a \acro{ZIP} file
+\begin{wideversion}
+ formatted for \Qref{direct installation}{Q-inst-tds-zip}.
+\end{wideversion}
+\begin{narrowversion}
+ formatted for direct installation (\Qref{}{Q-inst-tds-zip}).
+\end{narrowversion}
+\end{itemize}
+
+\Question[Q-inst-miktex*]{Installation using \miktex{} package manager}
+\AliasQuestion{Q-inst-miktex}
+
+Packages for use with \miktex{} are maintained very efficiently by the
+project managers (new packages and updates on \acro{CTAN} ordinarily
+make their way to the \miktex{} package repository within a week).
+Thus it makes sense for the \miktex{} user to take advantage of the
+system rather than grinding through the steps of installation.
+
+\miktex{} maintains a database of packages it ``knows about'',
+together with (coded) installation instructions that enable it to
+install the packages with minimal user intervention; you can update
+the database over the internet.
+
+If \miktex{} does know about a package you need installed, it's worth
+using the system:
+first, open the \miktex{} packages window: click on
+ \texttt{Start}\arrowhyph{}%
+ \texttt{Programs}\arrowhyph{}%
+ \texttt{MiKTeX}\arrowhyph{}%
+ \texttt{MiKTeX Options}, and select the
+ \texttt{Packages} tab.
+
+On the tab, there is an Explorer-style display of packages.
+Right-click on the root of the tree, ``\texttt{MiKTeX Packages}'',
+and select ``\texttt{Search}'': enter the name of the package you're
+interested in, and press the ``\texttt{Search}'' button. If
+\miktex{} knows about your package, it will open up the tree to show
+you a tick box for your package: check that box.
+
+If you prefer a command-line utility, there's \ProgName{mpm}. Open a
+command shell, and type:
+\begin{quote}
+\begin{verbatim}
+mpm --install=<package>
+\end{verbatim}
+\end{quote}
+(which of course assumes you know the name by which \miktex{} refers to
+your package).
+
+\Question[Q-inst-texlive]{Installation using \texlive{} manager}
+
+\texlive{} manager (\ProgName{tlmgr}) is, by default, a shell (or
+Windows terminal window) command. There is voluminous documentation
+about it from the command
+\begin{quote}
+ \texttt{tldoc tlmgr}
+\end{quote}
+but basic operation is pretty straightforward. The manager needs to
+know where to download stuff from; the canonical setup is
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+tlmgr option repository \
+ http://mirror.ctan.org/systems/texlive/tlnet
+\end{verbatim}
+(line wrapped to fit in the narrow column)
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+which passes the decision to the mirror selector. You can (of course)
+specify a particular archive or mirror that you ``trust'', or even a
+local disc copy that you keep up-to-date (disc space and bandwidth are
+so cheap nowadays, that a ``home mirror'' of \acro{CTAN} is a feasible
+proposition).
+
+To update a single package, use:
+\begin{quote}
+\begin{verbatim}
+tlmgr update <package>
+\end{verbatim}
+\end{quote}
+
+To update everything you already have in your installation, use:
+\begin{quote}
+\begin{verbatim}
+tlmgr update --all
+\end{verbatim}
+\end{quote}
+
+\Question[Q-inst-tds-zip]{Installing using ready-built \acro{ZIP} files}
+
+Installing packages, as they (``traditionally'') appear on
+\acro{CTAN}, involves:
+\begin{itemize}
+\item identifying where to put the various files on an \acro{TDS}
+ tree,
+\item installing them, and
+\item a few housekeeping operations.
+\end{itemize}
+Most people, for most packages, find the first two steps onerous, the
+last being easy (unless it is forgotten!).
+
+Ready-built \acro{ZIP} files~--- also known as % ! line break
+\Qref*{\acro{TDS}-\acro{ZIP} files}{Q-tds-zip}~--- are designed to lighten
+the load of performing the first two steps of installation: they
+contain all the files that are to be installed for a given
+package, in their ``correct'' locations in a % ! line break
+\Qref*{\acro{TDS} tree}{Q-tds}.
+
+To install such a file on a Unix system (we assume that you'll install
+into the local \acro{TEXMF} tree, at \texttt{\$TEXMFLOCAL}):
+\begin{quote}
+\begin{verbatim}
+cd $TEXMFLOCAL
+unzip $package.tds.zip
+\end{verbatim}
+\end{quote}
+
+On a Windows system that is modern enough that it has a built-in
+\acro{ZIP} unpacker, simply double-click on the file, and browse to
+where it's to be unpacked. (We trust that those using earlier
+versions of Windows will already have experience of using
+\ProgName{WinZIP} or the like.)
+
+Having unpacked the \extension{zip} archive, in most cases the only
+remaining chore is to update the file indexes~--- as in % ! line break
+\Qref*{normal installation instructions}{Q-inst-wlcf}. However, if
+the package provides a font, you also need to enable the font's map,
+which is discussed in % ! line break
+``\Qref*{Installing a Type~1 font}{Q-instt1font}''
+\LastEdit{2012-02-08}
+
+\Question[Q-tempinst]{``Temporary'' installation of \AllTeX{} files}
+
+Operating systems and applications need to know where to find files:
+many files that they need are ``just named''~--- the user doesn't
+necessarily know \emph{where} they are, but knows to ask for them.
+The commonest case, of course, is the commands whose names you type to
+a shell (yes, even Windows' ``\MSDOS{} prompt'') are using a shell to read what
+you type: many of the commands simply involve loading and executing a
+file, and the \texttt{PATH} variable tells the shell where to find those files.
+
+Modern \TeX{} implementations come with a bunch of search paths
+built in to them. In most circumstances these paths are adequate, but
+one sometimes needs to extend them to pick up files in strange
+places: for example, we may wish to try a new bundle of packages
+before \Qref*{installing them `properly'}{Q-installthings}. To do
+this, we need to change the relevant path as \TeX{} perceives it.
+However, we don't want to throw away \TeX{}'s built-in path (all of a
+sudden, \TeX{} won't know how to deal with all sorts of things).
+
+To \emph{extend} a \TeX{} path, we define an operating system
+environment variable in `path format', but leaving a gap which \TeX{}
+will fill with its built-in value for the path. The commonest case is
+that we want to place our extension in front of the path, so that our
+new things will be chosen in preference, so we leave our `gap to be
+filled' at the end of the environment variable. The syntax is simple
+(though it depends which shell you're actually using): so on a
+Unix-like system, using the \ProgName{bash} shell, the job might be
+done like:
+\begin{quote}
+\begin{verbatim}
+export TEXINPUTS=/tmp:
+\end{verbatim}
+\end{quote}
+while in a Windows system, within a \MSDOS{} window, it would be:
+\begin{quote}
+\begin{verbatim}
+set TEXINPUTS=C:/temp;
+\end{verbatim}
+\end{quote}
+In either case, we're asking \TeX{} to load files from the root disc
+temporary files directory; in the Unix case, the ``empty slot'' is
+designated by putting the path separator `|:|' on its own at the end
+of the line, while in the Windows case, the technique is the same, but
+the path separator is `|;|'.
+
+Note that in either sort of system, the change will only affect
+instances of \TeX{} that are started from the shell where the
+environment variable was set. If you run \TeX{} from another window,
+it will use the original input path. To make a change of input path
+that will ``stick'' for all windows, set the environment variable in
+your login script or profile (or whatever) in a Unix system and log
+out and in again, or in \File{autoexec.bat} in a Windows system, and
+reboot the system.
+
+While all of the above has talked about where \TeX{} finds its macro
+files, it's applicable to pretty much any sort of file any
+\TeX{}-related program reads~--- there are lots of these paths, and of
+their corresponding environment variables. In a
+\ProgName{web2c}-based system, the copious annotations in the
+\File{texmf.cnf} system configuration file help you to learn which
+path names correspond to which type of file.
+
+\Question[Q-privinst]{``Private'' installations of files}
+
+It sometimes happens that you need a new version of some macro package
+or font, but that the machine you use is maintained by someone who's
+unwilling to update and won't give you privileges to do the job
+yourself. A \Qref*{``temporary'' installation}{Q-tempinst} is
+sometimes the correct approach, but if there's the slightest chance
+that the installation will be needed on more than one project,
+temporary installations aren't right.
+
+In circumstances where you have plenty of quota on backed-up media, or
+adequate local scratch space, the correct approach is to create a
+private installation of \AllTeX{} which includes the new stuff you
+need; this is the ideal, but is not generally possible.
+
+So, since you can't install into the public \texttt{texmf} tree, you
+have to install into a \File{texmf} tree of your own; fortunately, the
+\acro{TDS} standard allows for this, and modern distributions allow
+you to do it. The most modern distributions refer to the tree as
+\texttt{\$TEXMFHOME}, but it used to be called \texttt{\$HOMETEXMF};
+so to check that your \TeX{} system does indeed support the mechanism
+you should start with
+\begin{quote}
+\begin{verbatim}
+kpsewhich -var-value TEXMFHOME
+\end{verbatim}
+\end{quote}
+(for example). This will almost invariably return a pointer to a
+subdirectory \File{texmf} of your home directory; the commonest
+exception is Macintoshes, using Mac\TeX{}, where the diretory is
+conventionally \File{Library/texmf} in your home directory.
+
+If you can confirm that the technique does indeed work, install your
+new package (or whatever) in the \Qref*{correct place}{Q-install-where}
+in a tree based on \File{$HOME/texmf}, %$
+and generate an index of that tree
+\begin{quote}
+\begin{verbatim}
+texhash $HOME/texmf
+\end{verbatim}
+\end{quote}
+(the argument specifies which tree you are indexing: it's necessary
+since you don't, by hypothesis, have access to the main tree, and
+\ProgName{texhash} without the argument would try to write the main
+tree.
+
+There are two wrinkles to this simple formula: first, the installation
+you're using may \emph{not} define a home TEXMF directory, and second,
+there may be some obstruction to using \File{$HOME/texmf} %$
+as the
+default name. In either case, a good solution is to have your own
+\File{texmf.cnf}~--- an idea that sounds more frightening that it
+actually is. The installation's existing file may be located with the
+command:
+\begin{quote}
+\begin{verbatim}
+kpsewhich texmf.cnf
+\end{verbatim}
+\end{quote}
+Take a copy of the file and put it into a directory of your own; this
+could be any directory, but an obvious choice is the \File{web2c}
+directory of the tree you want to create, i.e.,
+\File{$HOME/texmf/web2c} %$
+or the like. Make an environment variable to
+point to this directory:
+\begin{quote}
+\begin{verbatim}
+TEXMFCNF=$HOME/texmf/web2c
+export TEXMFCNF
+\end{verbatim}
+\end{quote}
+(for a Bourne shell style system), or
+\begin{quote}
+\begin{verbatim}
+setenv TEXMFCNF $HOME/texmf/web2c
+\end{verbatim}
+\end{quote}
+(for a C-shell style system). Now edit the copy of \File{texmf.cnf}
+
+There will be a line in the existing file that defines the tree where
+everything searches; the simplest form of the line is:
+\begin{quote}
+\begin{verbatim}
+TEXMF = !!$TEXMFMAIN
+\end{verbatim}
+\end{quote}
+but, there are likely to be several alternative settings behind
+comment markers (``\texttt{\textpercent{}}''), and the person who
+installed your system may have left them there. Whatever, you need to
+modify the line that's in effect: change the above to three lines:
+\begin{quote}
+\begin{verbatim}
+HOMETEXMF = $HOME/texmf
+TEXMF = {$HOMETEXMF,!!$TEXMFMAIN}
+% TEXMF = !!$TEXMFMAIN
+\end{verbatim}
+\end{quote}
+the important point being that \texttt{\$HOMETEXMF} must come before
+whatever was there before, inside the braces. For example, if the
+original was
+\begin{quote}
+\begin{verbatim}
+TEXMF = {!!$LOCALTEXMF,!!$TEXMFMAIN}
+\end{verbatim}
+\end{quote}
+it should be converted to:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+HOMETEXMF = $HOME/texmf
+TEXMF = {$HOMETEXMF,!!$LOCALTEXMF,
+ !!$TEXMFMAIN}
+% TEXMF = {!!$LOCALTEXMF,!!$TEXMFMAIN}
+\end{verbatim}
+{\small Note that the \texttt{TEXMF} line is only wrapped to make it
+ fit in the column; there should be no line break or space between
+ the final comma on the line and the \texttt{!!} on the next line.\par
+}%
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+HOMETEXMF = $HOME/texmf
+TEXMF = {$HOMETEXMF,!!$LOCALTEXMF,!!$TEXMFMAIN}
+% TEXMF = {!!$LOCALTEXMF,!!$TEXMFMAIN}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+(retaining the original, as a comment, is merely an aide-memoir in
+case you need to make another change, later). The \texttt{!!} signs
+tell the file-searching library that it should insist on a
+\ProgName{texhash}-ed directory tree; if you can count on yourself
+remembering to run \ProgName{texhash} on your new tree every time you
+change it, then it's worth adding the marks to your tree:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+TEXMF = {!!$HOMETEXMF,!!$LOCALTEXMF,
+ !!$TEXMFMAIN}
+\end{verbatim}
+{\small Note that the line is only wrapped to make it
+ fit in the column; there should be no line break or space between
+ the final comma on the line and the \texttt{!!} on the next line.\par
+}%
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+TEXMF = {!!$HOMETEXMF,!!$LOCALTEXMF,!!$TEXMFMAIN}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+as this will make \AllTeX{} find its files marginally faster.
+
+Having made all these changes, \AllTeX{} should ``just use'' files in
+your new tree, in preference to anything in the main tree~--- you can
+use it for updates to packages in the main tree, as well as for
+installing new versions of things.
+\LastEdit{2011-04-13}
+
+\Question[Q-instfont]{Installing a new font}
+
+Fonts are really ``just another package'', and so should be installed
+in the same sort of way as packages. However, fonts tend to be more
+complicated than the average package, and as a result it's sometimes
+difficult to see the overall structure.
+
+Font files may appear in any of a large number of different formats;
+each format has a different function in a \TeX{} system, and each is
+stored in a directory its own sub-tree in the installation's
+\acro{TDS} tree; all these sub-trees have the directory
+\File{$TEXMF/fonts} %$
+as their root. A sequence of answers\nothtml{, below,} describes the
+installation of fonts\latexhtml{.}{:}
+\begin{htmlversion}
+follow the list through the ``next question'' links at the bottom of
+this answer to view them all.
+\end{htmlversion}
+Other answers discuss specific font families~--- for example,
+% ! line break
+``\Qref*{using the concrete fonts}{Q-concrete}''.
+
+\Question[Q-instmffont]{Installing a font provided as \MF{} source}
+
+Installing Metafont fonts is (by comparison with other sorts of font) rather
+pleasingly simple. Nowadays, they are mostly distributed just as the
+\MF{} source, since modern \TeX{} distributions are able to produce
+everything the user needs ``on the fly''; however, if the distribution
+\emph{does} include \acro{TFM} files, install them too, since they
+save a little time and don't occupy much disc space. Always distrust
+distributions of \acro{PK} font bitmap files: there's no way of
+learning from them what printer they were generated for, and naming
+schemes under different operating systems are another source of
+confusion.
+
+``\Qref*{Where to install files}{Q-install-where}''
+specifies where the files should go.
+
+Further confusion is introduced by font families whose authors devise rules
+for automatic generation of \MF{} sources for generating fonts at
+particular sizes; the installation has to know about the rules, as
+otherwise it cannot generate font files. No general advice is
+available, but most such font families are now obsolescent.
+
+\Question[Q-instprinterfont]{`Installing' a \PS{} printer built-in font}
+
+There is a ``standard'' set of fonts that has appeared in every \PS{}
+printer since the second generation of the type. These fonts
+(8~families of four text fonts each, and three special-purpose fonts)
+are of course widely used, because of their simple availability. The
+set consists of:
+\begin{itemize}
+\item \FontName{Times} family (4 fonts)
+\item \FontName{Palatino} family (4 fonts)
+\item \FontName{New} \FontName{Century} \FontName{Schoolbook} family (4 fonts)
+\item \FontName{Bookman} family (4 fonts)
+\item \FontName{Helvetica} family (4 fonts)
+\item \FontName{Avant} \FontName{Garde} (4 fonts)
+\item \FontName{Courier} family (4 fonts)
+\item \FontName{Utopia} family (4 fonts)
+\item Zapf \FontName{Chancery} (1 font)
+\item Zapf \FontName{Dingbats} (1 font)
+\item \FontName{Symbol} (1 font)
+\end{itemize}
+All these fonts are supported, for \LaTeX{} users, by the
+\Package{psnfss} set of metrics and support files in the file
+\File{lw35nfss.zip} on \acro{CTAN}. Almost any remotely modern \TeX{}
+system will have some version of \Package{psnfss} installed, but
+users should note that the most recent version has much improved
+coverage of maths with \FontName{Times} (see package
+\Package{mathptmx}) and with \FontName{Palatino} (see package
+\Package{mathpazo}, as well as a more reliable set of font metrics.
+
+The archive \File{lw35nfss.zip} is laid out according to the
+\acro{TDS}, so in principle, installation consists simply of
+``unzipping'' the file at the root of a \path{texmf} tree.
+
+Documentation of the \Package{psnfss} bundle is provided in
+\File{psnfss2e.pdf} in the distribution.
+\begin{ctanrefs}
+\item[mathpazo.sty]Part of the \Package{psnfss} bundle
+\item[mathptmx.sty]Part of the \Package{psnfss} bundle
+\item[psnfss \nothtml{\rmfamily}bundle]\CTANref{psnfss}
+\end{ctanrefs}
+
+\Question[Q-prept1font]{Preparing a Type~1 font}
+
+The process of installing a Type~1 font set is rather convoluted, and
+we will deal with it in two chunks: first (in the present answer)
+preparing the font for installation, and second % ! line break
+\Qref*{installing a Type~1 font}{Q-instt1font}).
+
+Many fonts are supplied in \AllTeX{} ready form: such fonts need no
+preparation, and may be installed immediately.
+
+However, if you purchase a font from a Type foundry (either direct or
+via one of the web stores), you are likely to need to `prepare' it for
+use with \AllTeX{}. The rest of this answer discusses this preparation.
+\begin{itemize}
+\item Acquire the font. A very small set of Type~1 fonts is installed
+ in most \PS{} printers you will encounter. For those few (whose use
+ is covered by the basic \acro{PSNFSS} package), you don't need the
+ Type~1 font itself, to be able to print using the font.
+
+ For all the myriad other Type~1 fonts, to be able to print using
+ the font you need the Type~1 file itself. Some of these are
+ available for free (they've either been donated to the public
+ domain, or were developed as part of a free software project), but
+ the vast majority are commercial products, requiring you to spend
+ real money.
+\item Acquire the fonts' \acro{AFM} files. \acro{AFM} files contain
+ information from the font foundry, about the sizes of the characters
+ in the font, and how they fit together. One measure of the quality
+ of a font-supplier is that they provide the \acro{AFM} files by
+ default: if the files are not available, you are unlikely to be able
+ to use the font with \AllTeX{}.
+\item Rename the \acro{AFM} files and the Type~1 files to match the
+ \Qref*{Berry font naming scheme}{Q-fontname}.
+\item Generate \TeX{} metric files from the \acro{AFM} files. The
+ commonest tool for this task is \Package{fontinst}; the package
+ documentation helps, but other guides are available (see below).
+ The simplest possible script to pass to \Package{fontinst} is:
+ \begin{quote}
+\begin{verbatim}
+\latinfamily{xyz}{}
+\bye
+\end{verbatim}
+ \end{quote}
+ where \texttt{xyz} is the Berry name of the font family. This
+ simple script is adequate for most purposes: its output covers the
+ font family in both \acro{T}1 and \acro{OT}1 font encodings. Nevertheless,
+ with fancier fonts, more elaborate things are possible with
+ \Package{fontinst}: see its documentation for details.
+
+ \Package{Fontinst} also generates map files, and \LaTeX{} font
+ definition (\extension{fd}) files.
+\end{itemize}
+Having traversed this list, you have a set of font files ready for
+installation.
+\begin{ctanrefs}
+\item[fontinst.sty]\CTANref{fontinst}
+\item[\nothtml{\rmfamily}Type 1 installation guide]\CTANref{T1instguide}
+\end{ctanrefs}
+
+
+\Question[Q-instt1font]{Installing a Type~1 font}
+
+Once you have a prepared Type~1 font, either direct from \acro{CTAN}
+or the like, or having \Qref*{`prepared' it yourself}{Q-prept1font},
+you can get on with installation.
+
+The procedure is merely an extension of that for packages, etc., so
+much of what follows will be familiar:
+\begin{itemize}
+\item Install the files, in your local \texttt{texmf} tree (the advice
+ about installing non-standard things applies here, too). The
+ following list gives reasonable destinations for the various files
+ related to a font family \meta{fname}:
+\begin{narrowversion}
+\begin{verbatim}
+.pfb,
+.pfa .../fonts/type1/<foundry>/<fname>
+.tfm .../fonts/tfm/<foundry>/<fname>
+.vf .../fonts/vf/<foundry>/<fname>
+.sty,
+.fd .../tex/latex/<fname>
+.map .../fonts/map/dvips/<foundry>
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+.pfb,
+.pfa .../fonts/type1/<foundry>/<fname>
+.tfm .../fonts/tfm/<foundry>/<fname>
+.vf .../fonts/vf/<foundry>/<fname>
+.sty,
+.fd .../tex/latex/<fname>
+.map .../fonts/map/dvips/<foundry>
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+ but if you are lucky, you will be starting from a distribution from
+ \acro{CTAN} and there is a corresponding \extension{tds.zip} file:
+ using this \acro{TDS}-file saves the bother of deciding where to put
+ your files in the \acro{TDS} tree.
+\item Regenerate the file indexes (as described in
+ \Qref[question]{package installation}{Q-inst-wlcf}).
+\item Update the \ProgName{dvips}, \PDFTeX{} and other maps:
+ \begin{itemize}
+ \item On any current \texlive{}-based system, or a te\TeX{} v3.0
+ system, execute the command
+\begin{quote}
+\begin{verbatim}
+updmap-sys --enable Map <fname>.map
+\end{verbatim}
+\end{quote}
+ as root. (If you \emph{can} use \ProgName{updmap-sys}~--- do; if
+ not~--- presumably because your \alltex{} system was set up by
+ someone else~--- you have to fall back on plain \ProgName{updmap},
+ but be aware that it's a potent source of confusion, setting up
+ map sets that might be changed behind your back.)
+ \item On a current \miktex{} system, update the system file
+ \File{updmap.cfg}, using the shell command
+\begin{quote}
+\begin{verbatim}
+initexmf --edit-config-file updmap
+\end{verbatim}
+\end{quote}
+ adding a line at the end:
+\begin{quote}
+\begin{verbatim}
+Map <fname>.map
+\end{verbatim}
+\end{quote}
+ for each font family \meta{fname} you are adding to the system.
+ Now generate revised maps with the shell command
+\begin{quote}
+\begin{verbatim}
+initexmf --mkmaps
+\end{verbatim}
+\end{quote}
+ This, and other matters, are described in \miktex{} % beware line break
+ \href{http://docs.miktex.org/manual/advanced.html}{``advanced'' documentation}.
+ \end{itemize}
+\end{itemize}
+Both processes (preparing and installing a font) are very well (and
+thoroughly) described in Philipp Lehman's guide to font installation,
+which may be found on \acro{CTAN}.
+\begin{ctanrefs}
+\item[fontinst.sty]\CTANref{fontinst}
+\item[\nothtml{\rmfamily}Type 1 installation guide]\CTANref{T1instguide}
+\end{ctanrefs}
+
+\Question[Q-inst1cm]{Installing the Type~1 versions of the CM~fonts}
+
+This is a specialised case of \Qref*{installing a font}{Q-instfont},
+but it is almost never necessary~--- it's inconceivable that any (even
+remotely) recent system will \emph{not} have the fonts already
+installed. You can confirm this (near-inevitable) fact by trying the
+fonts. On a system that uses \ProgName{dvips} (almost all do), try
+the sequence:
+\begin{quote}
+\begin{verbatim}
+latex sample2e
+dvips -o sample2e.ps sample2e
+\end{verbatim}
+\end{quote}
+at a ``command prompt'' (\ProgName{shell}, in a Unix-style system,
+``\acro{DOS} box'' in a Windows system).
+
+If the command works at all, the console output of the command will
+include a sequence of Type~1 font file names, listed as
+\texttt{<\emph{path}/cmr10.pfb>} and so on; this is \ProgName{dvips}
+telling you it's copying information from the Type~1 font, and you
+need do no more.
+
+If the test has failed, you need to install your own set of the fonts;
+the distribution (including all the fonts the \acro{AMS} designed and
+produced themselves) is now described as \Package{amsfonts}. The
+bundle contains metric and map files~--- all you need to
+\Qref*{install the fonts}{Q-instt1font}.
+\begin{ctanrefs}
+\item[AMS and CM fonts, in Type 1 format]\CTANref{amsfonts}
+\end{ctanrefs}
+
+
diff --git a/obsolete/help/texfaq/faq-intro.tex b/obsolete/help/texfaq/faq-intro.tex
new file mode 100644
index 0000000000..6d82072690
--- /dev/null
+++ b/obsolete/help/texfaq/faq-intro.tex
@@ -0,0 +1,203 @@
+% $Id: faq-intro.tex,v 1.31 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+% this environment is for the benefit of new-style file generation
+\begin{introduction}
+% suppress section numbers until end environment
+\nothtml{\csname c@secnumdepth\endcsname=-1 }
+\section{Introduction}
+
+This is a set of Frequently Asked Questions (\acro{FAQ}) for
+English-speaking users of \TeX{}.
+
+The questions answered here cover a wide range of topics, but
+typesetting issues are mostly covered from the viewpoint of a \LaTeX{}
+user. Some of the questions answered have little relevance to today's
+users; this is inevitable~--- it's easier to add information than it
+is to decide that information is no longer needed. The set of
+answered questions is therefore in a state of slow flux: new questions
+are answered, while old questions are deleted~\dots{}~but the whole
+process depends on the time available for \acro{FAQ} maintenance.
+
+\nothtml{\noindent} You may use the \acro{FAQ}
+\begin{itemize}
+\item by reading a printed document,
+\item by viewing a \acro{PDF} file, with hyperlinks to assist
+ browsing: copies are available formatted so that they could be
+ printed on \CTANhref{faq-a4}{A4 paper} or on % ! line break
+ \CTANhref{faq-letter}{North American ``letter'' paper}, \htmlonly{or}
+\begin{typesetversion}
+\item by using the \acro{FAQ}'s web interface (base \acro{URL}:
+ \URL{http://www.tex.ac.uk/faq}); this version provides simple
+ search capabilities, as well as a link to Google for a more
+ sophisticated search restricted to the \acro{FAQ} itself, or
+\end{typesetversion}
+\item via Scott Pakin's \CTANhref{visualFAQ}{Visual FAQ}, which shows
+ \LaTeX{} constructions with links to \acro{FAQ} explanations of how
+ they may be created.
+\end{itemize}
+
+\subsection{Licence of the \acro{FAQ}}
+
+The source of the \acro{FAQ}, available in the % ! line break
+\CTANhref{faq}{\acro{FAQ}'s \ctan{} directory}, and its derived
+representations (currently, the \acro{HTML} found at
+\url{http://www.tex.ac.uk/faq} and \acro{PDF} copies, also in the
+% ! line break
+\CTANhref{faq}{\acro{FAQ}'s \ctan{} directory}) are all placed in the
+public domain.
+
+\subsection{Finding the Files}
+\begin{typesetversion}
+Unless otherwise specified, all files mentioned in this \acro{FAQ}
+are available from a \ctan{} archive, or from a mirror of
+\ctan{}~--- see \Qref[question]{later discussion}{Q-archives}% ! space
+\narrowonly{, which gives details} of the \ctan{}
+archives\wideonly{ and}\narrowonly{, including} how to retrieve files
+from them.
+
+The reader should also note that the first directory name of the path
+name of every file on \ctan{} is omitted from what follows, for
+the simple reason that, while it's always the same
+(\path{tex-archive/}) on the main sites, mirror sites often choose
+something else.
+
+To avoid confusion, we also omit the full stop from the end of any
+sentence whose last item is a path name (such sentences are rare, and
+only occur at the end of paragraphs). Though the path names are set
+in a different font from running text, it's not easy to distinguish
+the font of a single dot!
+\end{typesetversion}
+\begin{htmlversion}
+Almost all files suggested in any answer in these \acro{FAQ}s are
+available from \Qref{\ctan{} archives}{Q-archives}, and may be
+reached via links in the file list at the end of the answer. In
+particular, documentation (when available) is linked from the
+\ctan{} Catalogue entry, which is also listed in the file list.
+
+Unless doing so is unavoidable, the answers do not mention things that
+are not on the \ctan{} archives. An obvious exception is web
+resources such as supplementary documents, etc.
+\end{htmlversion}
+
+\begin{typesetversion}
+ \subsection*{Origins}
+\end{typesetversion}
+\begin{htmlversion}
+ \textbf{Origins}
+\end{htmlversion}
+The \acro{FAQ} was originated by the Committee of the \acro{UK}
+\TeX{} Users' Group (\acro{UK}~\acro{TUG}), in 1994, as a development of a
+regular posting to the \emph{Usenet} newsgroup
+\Newsgroup{comp.text.tex} that was maintained for some time by Bobby
+Bodenheimer. The first \acro{UK} version was much re-arranged and
+corrected from the original, and little of Bodenheimer's work now
+remains.
+
+\htmlignore
+The following people (at least~--- there are almost certainly others
+whose names weren't correctly recorded) have contributed help or
+advice on the development of the \acro{FAQ}:
+William Adams, % spotting dead url
+Donald Arseneau, % indefatigable
+Rosemary Bailey, % lots of initial set of maths answers
+Barbara Beeton, % one of first reviewers outside cttee
+Karl Berry, % often provides comments & suggestions
+Giuseppe Bilotta,
+Charles Cameron,
+Fran\c{c}ois Charette, % update of q-xetex
+Damian Cugley,
+Martin Garrod, % two consecutive "report" in clsvpkg
+Michael Dewey,
+Michael Downes, % (RIP) on (ams)maths stuff
+Jean-Pierre Drucbert, % (RIP) corrected my interpretation of minitoc
+David Epstein, % comment on q-algorithms, suggestion of tex-sx
+Michael Ernst, % alert on confusing colloquialism
+Thomas Esser,
+Ulrike Fischer, % spotted boondoggle in q-tabcellalign
+ % args like \section improvement; general typos
+Bruno Le Floch, % alert to mess in q-latex3
+Anthony Goreham,
+Norman Gray,
+Enrico Gregorio, % new definition for q-seccntfmt
+Werner Grundlingh, % xparse for *-commands
+Eitan Gurari, % (RIP) comparative html translators
+William Hammond, % lots of work on xml-related answers
+John Hammond, % corrections to q-protect
+John Harper, % patient help with q-robust ;-)
+Gernot Hassenpflug, % impetus and suggestions for q-printvar
+Troy Henderson, % metapost tutorials update
+Hartmut Henkel,
+Stephan Hennig, % text about vc in Q-RCS
+John Hobby,
+Morten H\textoslash gholm, % eagle eyes in search for problems
+Berthold Horn, % lots of stuff on fonts
+Ian Hutchinson, % comparative html translators
+Werner Icking, % (RIP) answer on tex-music
+William Ingram, % extension of transcinit
+David Jansen, % error in errmissitem example code
+Alan Jeffrey, % another founding father
+Regnor Jernsletten,
+David Kastrup, % inter alia, suggested mention of lilypond
+Oleg Katsitadze, % revision of q-eplain
+Isaac Khabaza, % kindersley book
+Ulrich Klauer, % pointed out twaddle in TeXpronounce
+Markus Kohm, % help with functionality of Koma-script
+Stefan Kottwitz % picked up text of q-wideflt
+David Kraus, % help with tocbibind (spotted embarrassing typo :-} )
+Ryszard Kubiak, % comment about q-driver
+Simon Law,
+Uwe L\"uck, % correction of typo
+Daniel Luecking, % typos
+Aditya Mahajan, % rewrite of q-context
+Sanjoy Mahajan,
+Diego Andres Alvarez Marin, % suggestion of lacheck
+Andreas Matthias, % most recently q-isitanum
+Steve Mayer, % proof reading
+Javier Mora, % bug in q-cmdstar
+Brooks Moses, % editorial suggestion
+Peter Moulder, % improvement of q-widows
+Iain Murray, % alternative solution in q-hyperdupdest
+Vilar Camara Neto, % explain breakurl pkg, suggest use of numprint
+Dick Nickalls,
+Ted Nieland,
+Hans Nordhaug,
+Pat Rau,
+Heiko Oberdiek,
+Piet van Oostrum,
+Scott Pakin, % bug reports (at least)
+Oren Patashnik,
+Manuel P\'egouri\'e-Gonnard, % improvement of q-luatex
+Steve Peter, % comprehensive review, lots of typos etc
+Sebastian Rahtz, % without whom there would be no...
+Philip Ratcliffe, % help with a bibtex oddity, editorial comment
+Chris Rowley, % founding father
+Jos\'e Carlos Santos, % assiduous reader of new versions
+Walter Schmidt,
+Hans-Peter Schr\"ocker,
+Joachim Schrod,
+Uwe Siart, % correction for manymathalph
+Maarten Sneep, % summary of c.t.t thread for outszwrng, inter alia
+Axel Sommerfeldt, % suggested rewrite of q-hyperdupdest
+Philipp Stephani, % xlation of komascript keyval stuff
+James Szinger, % who responded on c.t.t to request for answer
+Nicola Talbot, % correction of link
+Bob Tennent, % urw classico + sansmath
+Tomek Trzeciak, % suggested docmute and standalone together
+Ulrik Vieth,
+Mike Vulis, % details of micropress offerings
+Chris Walker, % revtex alert, ite suggestion (q-labelfig)
+Peter Wilson, % several, incl functionality of memoir
+Joseph Wright, % help with keyval, l3keys, etc.
+Rick Zaccone,
+Gregor Zattler % typo spotted
+and
+Reinhard Zierke.
+
+That list does \emph{not} cover the many people whose ideas were
+encountered on various mailing lists, in newsgroups, or (more
+recently!) in web forums. Many
+such people have helped, even if simply to highlight an area in which
+\acro{FAQ} work would be useful.
+\endhtmlignore
+% \LastEdit{2013-08-20} % not to be typeset or converted to html...
+\end{introduction}
diff --git a/obsolete/help/texfaq/faq-jot-err.tex b/obsolete/help/texfaq/faq-jot-err.tex
new file mode 100644
index 0000000000..3281e54a18
--- /dev/null
+++ b/obsolete/help/texfaq/faq-jot-err.tex
@@ -0,0 +1,2467 @@
+% $Id: faq-jot-err.tex,v 1.25 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{The joy of \TeX{} errors}
+
+\Question[Q-erroradvice]{How to approach errors}
+
+Since \TeX{} is a macroprocessor, its error messages are often
+difficult to understand; this is a (seemingly invariant) property of
+macroprocessors. Knuth makes light of the problem in the \TeX{}book,
+suggesting that you acquire the sleuthing skills of a latter-day
+Sherlock Holmes; while this approach has a certain romantic charm to
+it, it's not good for the `production' user of \AllTeX{}. This
+answer (derived, in part, from an article by Sebastian Rahtz in
+\TUGboat{} 16(4)) offers some general guidance in dealing with \TeX{}
+error reports, and other answers in this section deal with common (but
+perplexing) errors that you may encounter. There's a long list of
+``hints'' in Sebastian's article, including the following:
+\begin{itemize}
+\item Look at \TeX{} errors; those messages may seem cryptic at first,
+ but they often contain a straightforward clue to the problem. See
+ \Qref[question]{the structure of errors}{Q-errstruct} for further
+ details.
+\item Read the \extension{log} file; it contains hints to things you may
+ not understand, often things that have not even presented as error
+ messages.
+\item Be aware of the amount of context that \TeX{} gives you. The
+ error messages gives you some bits of \TeX{} code (or of the
+ document itself), that show where the error ``actually happened'';
+ it's possible to control how much of this `context' \TeX{} actually
+ gives you. \LaTeX{} (nowadays) instructs \TeX{} only to give you
+ one line of context, but you may tell it otherwise by saying
+\begin{quote}
+\begin{verbatim}
+\setcounter{errorcontextlines}{999}
+\end{verbatim}
+\end{quote}
+ in the preamble of your document. (If you're not a confident macro
+ programmer, don't be ashamed of cutting that 999 down a bit; some
+ errors will go on and \emph{on}, and spotting the differences
+ between those lines can be a significant challenge.)
+\item As a last resort, tracing can be a useful tool; reading a full
+ \AllTeX{} trace takes a strong constitution, but once you know how,
+ the trace can lead you quickly to the source of a problem. You need
+ to have read the \TeX{}book (see
+% beware line break
+ \Qref[question]{books about \TeX{}}{Q-tex-books}) in some detail, fully
+ to understand the trace.
+
+ The command \csx{tracingall} sets up maximum tracing; it also sets
+ the output to come to the interactive terminal, which is somewhat of
+ a mixed blessing (since the output tends to be so vast~--- all but
+ the simplest traces are best examined in a text editor after the event).
+
+ The \LaTeX{} \Package{trace} package (first distributed with the
+ 2001 release of \LaTeX{}) provides more manageable tracing. Its
+ \csx{traceon} command gives you what \csx{tracingall} offers, but
+ suppresses tracing around some of the truly verbose parts of
+ \LaTeX{} itself. The package also provides a \csx{traceoff}
+ command (there's no ``off'' command for \csx{tracingall}), and a
+ package option (|logonly|) allows you to suppress output to the
+ terminal.
+\end{itemize}
+The best advice to those faced with \TeX{} errors is not to panic:
+most of the common errors are plain to the eye when you go back to the
+source line that \TeX{} tells you of. If that approach doesn't work,
+the remaining answers in this section deal with some of the odder
+error messages you may encounter. You should not ordinarily need to
+appeal to the \Qref*[question]{wider public}{Q-gethelp}
+for assistance, but if you do, be sure to
+report full backtraces (see |errorcontextlines| above) and so on.
+\begin{ctanrefs}
+\item[trace.sty]Distributed as part of \CTANref{2etools}[trace]
+\end{ctanrefs}
+\LastEdit{2011-06-01}
+
+\Question[Q-errstruct]{The structure of \TeX{} error messages}
+
+\TeX{}'s error messages are reminiscent of the time when \TeX{} itself
+was conceived (the 1970s): they're not terribly user-friendly, though
+they do contain all the information that \TeX{} can offer, usually in
+a pretty concise way.
+
+\TeX{}'s error reports all have the same structure:
+\begin{itemize}
+\item An error message
+\item Some `context'
+\item An error prompt
+\end{itemize}
+The error message will relate to the \emph{\TeX{}} condition that is
+causing a problem. Sadly, in the case of complex macro packages such
+as \LaTeX{}, the underlying \TeX{} problem may be superficially
+difficult to relate to the actual problem in the ``higher-level''
+macros. Many \LaTeX{}-detected problems manifest themselves as
+`generic' errors, with error text provided by \LaTeX{} itself (or by a
+\LaTeX{} class or package).
+
+The context of the error is a stylised representation of what \TeX{}
+was doing at the point that it detected the error. As noted in
+\Qref[question]{approaching errors}{Q-erroradvice}, a macro package
+can tell \TeX{} how much context to display, and the user may need to
+undo what the package has done. Each line of context is split at the
+point of the error; if the error \emph{actually} occurred in a macro
+called from the present line, the break is at the point of the call.
+(If the called object is defined with arguments, the ``point of call''
+is after all the arguments have been scanned.) For example:
+\begin{verbatim}
+\blah and so on
+\end{verbatim}
+produces the error report
+\begin{verbatim}
+! Undefined control sequence.
+l.4 \blah
+ and so on
+\end{verbatim}
+while:
+\begin{verbatim}
+\newcommand{\blah}[1]{\bleah #1}
+\blah{to you}, folks
+\end{verbatim}
+produces the error report
+\begin{verbatim}
+! Undefined control sequence.
+\blah #1->\bleah
+ #1
+l.5 \blah{to you}
+ , folks
+\end{verbatim}
+If the argument itself is in error, we will see things such as
+\begin{verbatim}
+\newcommand{\blah}[1]{#1 to you}
+\blah{\bleah}, folks
+\end{verbatim}
+producing
+\begin{verbatim}
+! Undefined control sequence.
+<argument> \bleah
+
+l.5 \blah{\bleah}
+ , folks
+\end{verbatim}
+
+The prompt accepts single-character commands: the list of what's
+available may be had by typing |?|\@. One immediately valuable
+command is |h|, which gives you an expansion of \TeX{}s original
+pr\'ecis message, sometimes accompanied by a hint on what to do to
+work round the problem in the short term. If you simply type `return'
+(or whatever else your system uses to signal the end of a line) at the
+prompt, \TeX{} will attempt to carry on (often with rather little
+success).
+
+\Question[Q-extrabrace]{An extra `\texttt{\cbracesymbol{}}'??}
+\keywords{caption heading}
+
+You've looked at your \LaTeX{} source and there's no sign of a misplaced
+\texttt{\cbracesymbol{}} on the line in question.
+
+Well, no: this is \TeX{}'s cryptic way of hinting that you've put a
+\begin{wideversion} % hyper
+\Qref{fragile command}{Q-protect} in a moving argument.
+\end{wideversion}
+\begin{narrowversion}
+fragile command in a moving argument (\Qref{}{Q-protect}).
+\end{narrowversion}
+
+For example, \csx{footnote} is fragile, and if we put that in the
+moving argument of a \csx{section} command, as
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\section{Mumble\footnote{%
+ I couldn't think of anything better}}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\section{Mumble\footnote{I couldn't think of anything better}}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+we get told
+\begin{quote}
+\begin{verbatim}
+! Argument of \@sect has an extra }.
+\end{verbatim}
+\end{quote}
+The same happens with captions (the following is a simplification of a
+\Newsgroup{comp.text.tex} post):
+\begin{quote}
+\begin{verbatim}
+\caption{Energy: \[e=mc^2\]}
+\end{verbatim}
+\end{quote}
+giving us the error message
+\begin{quote}
+\begin{verbatim}
+! Argument of \@caption has an extra }.
+\end{verbatim}
+\end{quote}
+The similar (but more sensible):
+\begin{quote}
+\begin{verbatim}
+\caption{Energy: \(e=mc^2\)}
+\end{verbatim}
+\end{quote}
+is more tiresome, still: there's no error when you first run the
+job~\dots{} but there is on the second pass, when the list of figures
+(or tables) is generated, giving:
+\begin{quote}
+\begin{verbatim}
+! LaTeX Error: Bad math environment delimiter.
+\end{verbatim}
+\end{quote}
+in the \csx{listoffigures} processing.
+
+The solution is usually to use a robust command in place of the one
+you are using, or to force your command to be robust by prefixing it
+with \csx{protect}, which in the \csx{section} case would show as
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\section{Mumble\protect\footnote{%
+ I couldn't think of anything better}}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\section{Mumble\protect\footnote{I couldn't think of anything better}}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+However, in both the \csx{section} case and the \csx{caption} case,
+you can separate the moving argument, as in
+\cmdinvoke*{section}[moving]{static}; this gives us another standard
+route~--- simply to omit (or otherwise sanitise) the fragile command
+in the moving argument. So, one might rewrite the \csx{caption}
+example as:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\caption[Energy: (Einstein's equation)]%
+ {Energy: \(E=mc^2\)}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\caption[Energy: (Einstein's equation)]{Energy: \(E=mc^2\)}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+In practice, inserting mathematics in a moving argument has already
+been addressed in \latexe{} by the robust command \csx{ensuremath}:
+\begin{quote}
+\begin{verbatim}
+\caption{Energy: \ensuremath{E=mc^2}}
+\end{verbatim}
+\end{quote}
+So: always look for alternatives to the \csx{protect} route.
+
+Footnotes can be even more complex; % ! line break
+``\Qref*[question]{footnotes in \LaTeX{} section headings}{Q-ftnsect}''
+deals specifically with that issue.
+\LastEdit{2012-02-09}
+
+\Question[Q-semanticnest]{Capacity exceeded [semantic nest\,\dots{}]}
+
+\begin{narrowversion}
+\begin{verbatim}
+! TeX capacity exceeded, sorry [semantic nest
+ size=100].
+...
+If you really absolutely need more capacity,
+you can ask a wizard to enlarge me.
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+! TeX capacity exceeded, sorry [semantic nest size=100].
+...
+If you really absolutely need more capacity,
+you can ask a wizard to enlarge me.
+\end{verbatim}
+\end{wideversion}
+Even though \TeX{} suggests (as always) that enlargement by a wizard
+may help, this message usually results from a broken macro or bad
+parameters to an otherwise working macro.
+
+The ``semantic nest'' \TeX{} talks about is the nesting
+of boxes within boxes. A stupid macro can provoke the error pretty
+easily:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\def\silly{\hbox{here's \silly
+ being executed}}
+\silly
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\def\silly{\hbox{here's \silly being executed}}
+\silly
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+The extended traceback
+% beware of filling this line...
+(see \Qref{\emph{general advice} on errors}{Q-erroradvice})
+\emph{does} help, though it does rather run on. In the case above,
+the traceback consists of
+\begin{verbatim}
+\silly ->\hbox {
+ here's \silly being executed}
+\end{verbatim}
+followed by 100 instances of
+\begin{verbatim}
+\silly ->\hbox {here's \silly
+ being executed}
+\end{verbatim}
+The repeated lines are broken at exactly the offending macro; of
+course the loop need not be as simple as this~--- if \csx{silly} calls
+\csx{dopy} which boxes \csx{silly}, the effect is just the same and
+alternate lines in the traceback are broken at alternate positions.
+
+There are in fact two items being consumed when you nest boxes: the
+other is the grouping level. Whether you exhaust your % !line wrap
+\emph{semantic nest} or your permitted \emph{grouping levels} first is
+controlled entirely by the relative size of the two different sets of
+buffers in your \AllTeX{} executable.
+
+\Question[Q-noroom]{No room for a new `\emph{thing}'}
+
+The technology available to Knuth at the time \TeX{} was written is
+said to have been particularly poor at managing dynamic storage; as a
+result much of the storage used within \TeX{} is allocated as fixed
+arrays, in the reference implementations. Many of these fixed arrays
+are expandable in modern \TeX{} implementations, but size of the
+arrays of ``registers'' is written into the specification as being 256
+(usually); this number may not be changed if you still wish to call
+the result \TeX{}
+%% beware line wrap
+(see \Qref[question]{testing \TeX{} implementations}{Q-triptrap}).
+
+If you fill up one of these register arrays, you get a \TeX{} error
+message saying
+\begin{quote}
+\begin{verbatim}
+! No room for a new \<thing>.
+\end{verbatim}
+\end{quote}
+The \csx{thing}s in question may be \csx{count} (the object underlying
+\LaTeX{}'s \csx{newcounter} command), \csx{skip} (the object underlying
+\LaTeX{}'s \csx{newlength} command), \csx{box} (the object underlying
+\LaTeX{}'s \csx{newsavebox} command), or \csx{dimen}, \csx{muskip},
+\csx{toks}, \csx{read}, \csx{write} or \csx{language} (all types of object
+whose use is ``hidden'' in \LaTeX{}; the limit on the number of
+\csx{read} or \csx{write} objects is just 16).
+
+There is nothing that can directly be done about this error, as you can't
+extend the number of available registers without extending \TeX{}
+itself.
+\begin{htmlversion}
+ Of course, \Qref{\eTeX{}}{Q-etex}, \Qref{Omega}{Q-omegaleph} and
+ \Qref{\LuaTeX{}}{Q-luatex}
+\end{htmlversion}
+\htmlignore
+% beware line wrap here
+ Of course \Qref[question]{\etex{}}{Q-etex},
+ \Qref[question]{\ensuremath{\Omega}}{Q-omegaleph} and
+ \Qref[question]{\LuaTeX{}}{Q-luatex}
+\endhtmlignore
+all do this, as does \Qref*{MicroPress Inc's V\TeX{}}{Q-commercial}.
+
+The commonest way to encounter one of these error messages is to have
+broken macros of some sort, or incorrect usage of macros (an example
+is discussed in \Qref[question]{epsf problems}{Q-epsf}).
+
+However, sometimes one just \emph{needs} more than \TeX{} can offer,
+and when this happens, you've just got to work out a different way of
+doing things. An example is the % beware line wrap
+\Qref*{difficulty of loading \PiCTeX{} with \LaTeX{}}{Q-usepictex}.
+The more modern drawing package, \Package{pgf} with its higher-level
+interface \Package{TikZ} is also a common source of such problems.
+
+In such cases, it is usually possible to use the
+\Qref*{\eTeX{}}{Q-etex} extensions (all modern distributions provide
+them). The \LaTeX{} package \Package{etex} modifies the register allocation
+mechanism to make use of \eTeX{}'s extended register sets.
+\Package{Etex} is a
+derivative of the \plaintex{} macro file \Package{etex.src}, which is
+used in building the \eTeX{} Plain format; both files are part of the
+\eTeX{} distribution and are available in current distributions.
+
+It is possible that, even with \Package{etex} loaded, you still find
+yourself running out of things. Problems can be caused by packages
+that use large numbers of ``inserts'' (inserts are combinations of
+counter, box, dimension and skip registers, used for storing floats
+and footnotes). \Package{Morefloats} does this, of course (naturally enough,
+allocating new floats), and footnote packages such as
+\Package{manyfoot} and \Package{bigfoot} (which uses \Package{manyfoot})
+can also give problems. The \Package{etex} extensions allow you to deal with
+these things: the command \cmdinvoke*{reserveinserts}{n} ensures there
+is room for \meta{n} more inserts. Hint: by default
+\Package{morefloats} adds 18 inserts (though it can be instructed to
+use more), and \Package{manyfoot} seems to be happy with 10 reserved,
+but there are `hard' limits that we cannot program around~--- the
+discussion of \Qref*{running out of floats}{Q-tmupfl} has more about this.
+It is essential that you load \Package{etex} before any other
+packages, and reserve any extra inserts immediately:
+\begin{quote}
+\begin{verbatim}
+\documentclass[...]{...}
+\usepackage{etex}
+\reserveinserts{28}
+\end{verbatim}
+\end{quote}
+
+The \eTeX{} extensions don't help with \csx{read} or \csx{write}
+objects (and neither will the \Package{etex} package), but the
+\Package{morewrites} package can provide the \emph{illusion} of large
+numbers of \csx{write} objects.
+\begin{ctanrefs}
+\item[morewrites.sty]\CTANref{morewrites}
+\end{ctanrefs}
+
+\Question[Q-epsf]{\texttt{epsf} gives up after a bit}
+
+Some copies of the documentation of \File{epsf.tex} seemed once to
+suggest that the command
+\begin{verbatim}
+ \input epsf
+\end{verbatim}
+is needed for every figure included. If you follow this suggestion
+too literally, you get an error
+\begin{verbatim}
+ ! No room for a new \read .
+\end{verbatim}
+after a while; this is because each time \File{epsf.tex} is loaded, it
+allocates itself a \emph{new} file-reading handle to check the figure
+for its bounding box, and there just aren't enough of these things
+(see \Qref[question]{no room for a new thing}{Q-noroom}).
+
+The solution is simple~--- this is in fact an example of misuse of
+macros; one only need read \File{epsf.tex} once, so change
+\begin{verbatim}
+ ...
+ \input epsf
+ \epsffile{...}
+ ...
+ \input epsf
+ \epsffile{...}
+\end{verbatim}
+(and so on) with a single
+\begin{verbatim}
+ \input epsf
+\end{verbatim}
+somewhere near the start of your document, and then decorate your
+\csx{epsffile} statements with no more than adjustments of
+\csx{epsfxsize} and so on.
+
+\Question[Q-badhyph]{Improper \csx{hyphenation} will be flushed}
+
+For example
+\begin{verbatim}
+! Improper \hyphenation will be flushed.
+\'#1->{
+ \accent 19 #1}
+<*> \hyphenation{Ji-m\'e
+ -nez}
+\end{verbatim}
+(in \plaintex{}) or
+\begin{verbatim}
+! Improper \hyphenation will be flushed.
+\leavevmode ->\unhbox
+ \voidb@x
+<*> \hyphenation{Ji-m\'e
+ -nez}
+\end{verbatim}
+in \LaTeX{}.
+
+As mentioned in
+\begin{flatversion}
+ \Qref[question]{hyphenation failures}{Q-nohyph},
+\end{flatversion}
+\begin{hyperversion}
+ ``\Qref[question]{hyphenation failures}{Q-nohyph}'',
+\end{hyperversion}
+``words'' containing \csx{accent} commands may not be hyphenated. As
+a result, any such word is deemed improper in a \csx{hyphenation}
+command.
+
+Hyphenation happens as paragraphs are laid out; by this time, \tex{}
+knows what font is used for each glyph; thus it knows the encoding
+being used. So the solution to the problem is to use a font that
+contains the accented character; doing this this ``hides'' the accent
+from the hyphenation mechanisms.
+
+For \LaTeX{} users, this is quite an easy task; they select an 8-bit
+font with the package, as in \cmdinvoke{usepackage}[T1]{fontenc}, and
+accented-letter commands such as the \csx{'}\texttt{e} in
+\cmdinvoke{hyphenation}{Ji-m\csx{'}e-nez} automatically become the
+single accented character by the time the hyphenation gets to look at
+it.
+
+
+\Question[Q-optionclash]{Option clash for package}
+
+So you've innocently added:
+\begin{quote}
+\cmdinvoke{usepackage}[draft]{foo}
+\end{quote}
+to your document, and \LaTeX{} responds with
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+! LaTeX Error: Option clash for package foo.
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+! LaTeX Error: Option clash for package foo.
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+
+The error is a complaint about loading a package % ! line break
+\emph{with options}, more than once. \LaTeX{} complains because it
+has no means of examining the options, rather than because it
+\emph{knows} there is a problem. (You may load a package any number
+of times in a document's preamble, with no options, and \LaTeX{} will
+ignore every loading request after the first; but you may only supply
+options when you first load the package.)
+
+So perhaps you weren't entirely innocent~--- the error would have
+occurred on the second line of:
+\begin{quote}
+\cmdinvoke{usepackage}[dvips]{graphics}\\
+\cmdinvoke{usepackage}[draft]{graphics}
+\end{quote}
+which could quite reasonably (and indeed correctly) have been typed:
+\begin{quote}
+\cmdinvoke{usepackage}[dvips,draft]{graphics}
+\end{quote}
+
+But if you've not made that mistake (even with several lines
+separating the \csx{usepackage} commands, it's pretty easy to spot),
+the problem could arise from something else loading the package for
+you. How do you find the culprit? The "\texttt{h}" response to the
+error message tells you which options were loaded each time.
+Otherwise, it's down to the log analysis games discussed in % ! line break
+``\Qref*{How to approach errors}{Q-erroradvice}''; the trick to remember
+is that that the process of loading each file is parenthesised in the
+log; so if package \Package{foo} loads \Package{graphics}, the log
+will contain something like:
+\begin{quote}
+\begin{verbatim}
+(<path>/foo.sty ...
+...
+(<path>/graphics.sty ...
+...)
+...
+)
+\end{verbatim}
+\end{quote}
+(the parentheses for \Package{graphics} are completely enclosed in
+those for \Package{foo}; the same is of course true if your class
+\Class{bar} is the culprit, except that the line will start with the
+path to \texttt{bar.cls}).
+
+If we're dealing with a package that loads the package you are
+interested in, you need to ask \LaTeX{} to slip in options when
+\Package{foo} loads it. Instead of:
+\begin{quote}
+\cmdinvoke{usepackage}{foo}\\
+\cmdinvoke{usepackage}[draft]{graphics}
+\end{quote}
+you would write:
+\begin{quote}
+\cmdinvoke{PassOptionsToPackage}{draft}{graphics}\\
+\cmdinvoke{usepackage}{foo}
+\end{quote}
+The command \csx{PassOptionsToPackage} tells \LaTeX{} to behave as if
+its options were passed, when it finally loads a package. As you would
+expect from its name, \csx{PassOptionsToPackage} can deal with a list
+of options, just as you would have in the the options brackets of
+\csx{usepackage}.
+
+The problem is more tricky if your document class loads a package you
+want options for. In this case, instead of:
+\begin{quote}
+\cmdinvoke{documentclass}[...]{bar}\\
+\cmdinvoke{usepackage}[draft]{graphics}
+\end{quote}
+you would write:
+\begin{quote}
+\cmdinvoke{PassOptionsToPackage}{draft}{graphics}\\
+\cmdinvoke{documentclass}[...]{bar}
+\end{quote}
+with \csx{PassOptionsToPackage} \emph{before} the \csx{documentclass}
+command.
+
+However, if the \Package{foo} package or the \Class{bar} class loads
+\Package{graphics} with an option of its own that clashes with
+what you need in some way, you're stymied. For example:
+\begin{quote}
+\cmdinvoke{PassOptionsToPackage}{draft}{graphics}
+\end{quote}
+where the package or class does:
+\begin{quote}
+\cmdinvoke{usepackage}[final]{graphics}
+\end{quote}
+sets \pkgoption{final} \emph{after} it's dealt with option you passed to
+it, so your \pkgoption{draft} will get forgotten. In extreme cases,
+the package might generate an error here (\Package{graphics} doesn't
+go in for that kind of thing, and there's no indication that
+\pkgoption{draft} has been forgotten).
+
+In such a case, you have to modify the package or class itself
+(subject to the terms of its licence). It may prove useful to contact
+the author: she may have a useful alternative to suggest.
+
+\Question[Q-optclash]{Option clash for package}
+
+The error message
+\begin{quote}
+\begin{verbatim}
+! LaTeX Error: Option clash for package footmisc
+\end{verbatim}
+\end{quote}
+means what it says~--- your document contains a (potentially) clashing
+pair of options; sadly, it is not always obvious how the error has
+arisen.
+
+If you simply write:
+\begin{quote}
+\begin{verbatim}
+\usepackage[a]{foo}
+...
+\usepackage{foo}
+\end{verbatim}
+\end{quote}
+\latex{} is happy, as it is with:
+\begin{quote}
+\begin{verbatim}
+\usepackage[a]{foo}
+...
+\usepackage[a]{foo}
+\end{verbatim}
+\end{quote}
+since \latex{} can see there's no conflict (in fact, the second load
+does nothing).
+
+Similarly,
+\begin{quote}
+\begin{verbatim}
+\usepackage[a,b]{foo}
+...
+\usepackage[a]{foo}
+\end{verbatim}
+\end{quote}
+produces no error and does nothing for the second load.
+
+However
+\begin{quote}
+\begin{verbatim}
+\usepackage[a]{foo}
+...
+\usepackage[b]{foo}
+\end{verbatim}
+\end{quote}
+produces the error; even if option `\pkgoption{b}' is an alias for
+option `\pkgoption{a}'~--- \latex{} doesn't ``look inside'' the package
+to check anything like that.
+
+The general rule is: the first load of a package defines a set of
+options; if a further \csx{usepackage} or \csx{RequirePackage} also
+calls for the package, the options on that call may not extend the set
+on the first load.
+
+Fortunately, the error (in that sort of case) is easily curable
+once you've examined the preamble of your document.
+
+Now, suppose package \Package{foo} loads \Package{bar} with option
+\pkgoption{b}, and your document says:
+\begin{quote}
+\begin{verbatim}
+\usepackage{foo}
+...
+\usepackage[a]{bar}
+\end{verbatim}
+\end{quote}
+or
+\begin{quote}
+\begin{verbatim}
+\usepackage[a]{bar}
+...
+\usepackage{foo}
+\end{verbatim}
+\end{quote}
+the error will be detected, even though you have only explicitly
+loaded \Package{bar} once. Debugging such errors is tricky: it may
+involve reading the logs (to spot which packages were called), or the
+documentation of package \Package{foo}.
+
+\Question[Q-tmupfl]{``Too many unprocessed floats''}
+
+If \LaTeX{} responds to a \cmdinvoke{begin}{figure} or
+\cmdinvoke{begin}{table} command with the error message
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+! LaTeX Error: Too many unprocessed floats.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+! LaTeX Error: Too many unprocessed floats.
+
+See the LaTeX manual or LaTeX Companion
+... for explanation.
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+your figures (or tables) are not being placed properly. \LaTeX{}
+has a limited amount of storage for `floats' (figures, tables, or
+floats you've defined yourself with the \Package{float} package); if
+something you have done has prevented \latex{} from typesetting
+floats, it will run out of storage space.
+
+This failure usually occurs in extreme cases of % ! line break
+\Qref*{floats moving ``wrongly''}{Q-floats};
+\LaTeX{} has found it can't place a float, and floats of the same type
+have piled up behind it.
+
+How does this happen?~--- \LaTeX{} guarantees that caption numbers are
+sequential in the document, but the caption number is allocated when
+the figure (or whatever) is created, and can't be changed. Thus, if
+floats are placed out of order, their caption numbers would also
+appear out of order in the body of the document (and in the list of
+figures, or whatever). As a result, enforcement of the guarantee
+means that simple failure to place a float means that no subsequent
+float can be placed; and hence (eventually) the error.
+
+Techniques for solving the problem are discussed in the % ! line break
+\Qref*{floats question}{Q-floats} already referenced.
+
+An alternative \emph{may} be to use the \Package{morefloats} package.
+The package will allocate more ``float skeletons'' than \latex{}
+does by default; each such skeleton may then be used to store a
+float. Beware that even with \Package{morefloats}, the number you can
+allocate is limited; even with the \Package{etex} package (which makes
+available many more registers, etc., than \latex{} does by default;
+\etex{} can create lots more registers, but none of those ``beyond
+the original \TeX{} default'' may be used in float skeletons). Thus,
+\Package{etex} may offer some relief, but it can \emph{not} be
+regarded as a panacea
+
+The error also occurs in a long sequence of float environments, with
+no intervening text. Unless the environments will fit ``here'' (and
+you've allowed them to go ``here''), there will never be a page break,
+and so there will never be an opportunity for \LaTeX{} to reconsider
+placement. (Of course, the floats can't all fit ``here'' if the
+sequence is sufficiently prolonged: once the page fills, \LaTeX{}
+won't place any more floats, leading to the error.
+
+Techniques for resolution may involve redefining the floats using the
+\Package{float} package's \texttt{[H]} float qualifier, but you are unlikely
+to get away without using \csx{clearpage} from time to time.
+\begin{ctanrefs}
+\item[float.sty]\CTANref{float}
+\item[morefloats.sty]\CTANref{morefloats}
+\end{ctanrefs}
+
+\Question[Q-atvert]{\csx{spacefactor} complaints}
+
+The errors
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+! You can't use `\spacefactor' in
+... vertical mode.
+\@->\spacefactor
+ \@m
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+! You can't use `\spacefactor' in vertical mode.
+\@->\spacefactor
+ \@m
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+or
+\begin{quote}
+\begin{verbatim}
+! You can't use `\spacefactor' in math mode.
+\@->\spacefactor
+ \@m
+\end{verbatim}
+\end{quote}
+or simply
+\begin{quote}
+\begin{verbatim}
+! Improper \spacefactor.
+...
+\end{verbatim}
+\end{quote}
+bite the \LaTeX{} programmer who uses an internal command without
+taking ``precautions''. An internal-style command such as \csx{@foo}
+has been defined or used in a private macro, and it is interpreted as
+\csx{@}, followed by the `text' \texttt{foo}. (\csx{@} is used, for
+real, to set up end-of-sentence space in some circumstances; it uses
+\csx{spacefactor} to do that.)
+
+The problem is discussed in detail in
+% beware line wrap
+``\Qref*[question]{\texttt{@} in macro names}{Q-atsigns}'',
+together with solutions.
+
+\Question[Q-endingroup]{\csx{end} occurred inside a group}
+
+The actual error we observe is:
+
+\nothtml{\noindent}%
+|(\end occurred inside a group at level <|\texttt{\emph{n}}|>)|
+
+\nothtml{\noindent}%
+and it tells us that something we started in the document never got
+finished before we ended the document itself. The things involved
+(`groups') are what \TeX{} uses for restricting the scope of things:
+you see them, for example, in the ``traditional'' font selection
+commands: |{\it stuff\/}|~--- if the closing brace is left off such a
+construct, the effect of \csx{it} will last to the end of the document,
+and you'll get the diagnostic.
+
+\TeX{} itself doesn't tell you where your problem is, but you can
+often spot it by looking at the typeset output in a previewer.
+Otherwise, you can usually find mismatched braces using an intelligent
+editor (at least \ProgName{emacs} and \ProgName{winedt} offer this facility).
+However, groups are not \emph{only} created by matching
+\texttt{\obracesymbol{}} with \texttt{\cbracesymbol{}}:
+other grouping commands are discussed elsewhere in these \acro{FAQ}s,
+and are also a potential source of unclosed group.
+
+\cmdinvoke{begin}{\meta{environment}} encloses the environment's body
+in a group, and establishes its own diagnostic mechanism. If you end
+the document before closing some other environment, you get the
+`usual' \LaTeX{} diagnostic
+\htmlignore
+\begin{dviversion}
+\begin{verbatim}
+! LaTeX Error: \begin{blah} on input line 6
+ ended by \end{document}.
+\end{verbatim}
+\end{dviversion}
+\begin{pdfversion}
+\begin{verbatim}
+! LaTeX Error: \begin{blah} on input line 6 ended by \end{document}.
+\end{verbatim}
+\end{pdfversion}
+\endhtmlignore
+\begin{htmlversion}
+\begin{verbatim}
+! LaTeX Error: \begin{blah} on input line 6 ended by \end{document}.
+\end{verbatim}
+\end{htmlversion}
+which (though it doesn't tell you which \emph{file} the
+\cmdinvoke{begin}{blah} was in) is usually enough to locate the
+immediate problem. If you press on past the \LaTeX{} error, you get
+one or more repetitions of the ``occurred inside a group'' message
+before \LaTeX{} finally exits. The \Package{checkend} package
+recognises other unclosed \cmdinvoke{begin}{blob} commands, and
+generates an ``ended by'' error message for each one, rather than
+producing the ``occurred inside a group'' message, which is sometimes
+useful (if you remember to load the package).
+
+In the absence of such information from \LaTeX{}, you need to use
+``traditional'' binary search to find the offending group. Separate
+the preamble from the body of your file, and process each half on its
+own with the preamble; this tells you which half of the file is at
+fault. Divide again and repeat. The process needs to be conducted
+with care (it's obviously possible to split a correctly-written group
+by chopping in the wrong place), but it will usually find the problem
+fairly quickly.
+
+\eTeX{} (and \elatex{}~--- \LaTeX{} run on \eTeX{}) gives you
+further diagnostics after the traditional infuriating \TeX{} one~--- it
+actually keeps the information in a similar way to \LaTeX{}:
+\htmlignore
+\begin{dviversion}
+\begin{verbatim}
+(\end occurred inside a group at level 3)
+
+### semi simple group (level 3) entered
+ at line 6 (\begingroup)
+### simple group (level 2) entered at line 5 ({)
+### simple group (level 1) entered at line 4 ({)
+### bottom level
+\end{verbatim}
+\end{dviversion}
+\begin{pdfversion}
+\begin{verbatim}
+(\end occurred inside a group at level 3)
+
+### semi simple group (level 3) entered at line 6 (\begingroup)
+### simple group (level 2) entered at line 5 ({)
+### simple group (level 1) entered at line 4 ({)
+### bottom level
+\end{verbatim}
+\end{pdfversion}
+\endhtmlignore
+\begin{htmlversion}
+\begin{verbatim}
+(\end occurred inside a group at level 3)
+
+### semi simple group (level 3) entered at line 6 (\begingroup)
+### simple group (level 2) entered at line 5 ({)
+### simple group (level 1) entered at line 4 ({)
+### bottom level
+\end{verbatim}
+\end{htmlversion}
+The diagnostic not only tells us where the group started, but also the
+\emph{way} it started: \csx{begingroup} or |{| (which is an alias of
+\csx{bgroup}, and the two are not distinguishable at the \TeX{}-engine
+level).
+\begin{ctanrefs}
+\item[checkend.sty]Distributed as part of \CTANref{bezos}[checkend]
+\end{ctanrefs}
+
+\Question[Q-nonum]{``Missing number, treated as zero''}
+
+In general, this means you've tried to assign something to a count,
+dimension or skip register that isn't (in \TeX{}'s view of things) a
+number. Usually the problem will become clear using the
+\Qref*{ordinary techniques of examining errors}{Q-erroradvice}.
+
+Two \LaTeX{}-specific errors are commonly aired on the newsgroups.
+
+The commonest arises from attempting to use an example from the
+\Qref*{\emph{The \LaTeX{} Companion} (first edition)}{Q-latex-books}, and is
+exemplified by the following error text:
+\begin{verbatim}
+! Missing number, treated as zero.
+<to be read again>
+ \relax
+l.21 \begin{Ventry}{Return values}
+\end{verbatim}
+The problem arises because, in its first edition, the
+\emph{Companion}'s examples always assumed that the \Package{calc}
+package is loaded: this fact is mentioned in the book, but often not
+noticed. The remedy is to load the \Package{calc} package in any
+document using such examples from the \emph{Companion}. (The problem
+does not really arise with the second edition; copies of all the
+examples are available on the accompanying \CDROM{}, or on
+\acro{CTAN}.)
+
+The other problem, which is increasingly rare nowadays, arises from
+misconfiguration of a system that has been upgraded from \LaTeXo{}:
+the document uses the \Package{times} package, and the error appears
+at \cmdinvoke{begin}{document}. The file search paths are wrongly set
+up, and your \cmdinvoke{usepackage}{times} has picked up a \LaTeXo{}
+version of the package, which in its turn has invoked another which
+has no equivalent in \LaTeXe{}. The obvious solution is to rewrite
+the paths so that \LaTeXo{} packages are chosen only as a last resort
+so that the startlingly simple \LaTeXe{} \Package{times} package will
+be picked up. Better still is to replace the whole thing with
+something more modern still; current \Package{psnfss} doesn't provide
+a \Package{times} package~--- the alternative \Package{mathptmx}
+incorporates \FontName{Times}-like mathematics, and a sans-serif face
+based on \FontName{Helvetica}, but scaled to match \FontName{Times}
+text rather better.
+\begin{ctanrefs}
+\item[calc.sty]Distributed as part of \CTANref{2etools}[calc]
+\item[\nothtml{\rmfamily}Examples for \nothtml{\upshape}\LaTeX{} Companion]\CTANref{tlc2}
+\item[The psnfss bundle]\CTANref{psnfss}
+\end{ctanrefs}
+\LastEdit{2011-06-01}
+
+\Question[Q-typend]{``Please type a command or say \csx{end}''}
+
+Sometimes, when you are running \AllTeX{}, it will abruptly stop and
+present you with a prompt (by default, just a |*| character). Many
+people (including this author) will reflexively hit the `return'
+key, pretty much immediately, and of course this is no help at all~---
+\TeX{} just says:
+\begin{verbatim}
+(Please type a command or say `\end')
+\end{verbatim}
+and prompts you again.
+
+What's happened is that your \AllTeX{} file has finished prematurely,
+and \TeX{} has fallen back to a supposed including file, from the
+terminal. This could have happened simply because you've omitted
+the \csx{bye} (\plaintex{}), \cmdinvoke{end}{document} (\LaTeX{}), or
+whatever. Other common errors are failure to close the braces round a
+command's argument, or (in \LaTeX{}) failure to close a verbatim
+environment: in such cases you've already read and accepted an
+error message about encountering end of file while scanning something.
+
+If the error is indeed because you've forgotten to end your document,
+you can insert the missing text: if you're running \plaintex{}, the
+advice, to ``say \csx{end}'' is good enough: it will kill the run; if
+you're running \LaTeX{}, the argument will be necessary:
+\cmdinvoke{end}{document}.
+
+However, as often as not this isn't the problem, and (short of
+debugging the source of the document before ending) brute force is
+probably necessary. Excessive force (killing the job that's
+running \TeX{}) is to be avoided: there may well be evidence in the
+\extension{log} file that will be useful in determining what the
+problem is~--- so the aim is to persuade \TeX{} to shut itself down
+and hence flush all log output to file.
+
+If you can persuade \TeX{} to read it, an end-of-file indication
+(control-|D| under Unix, control-|Z| under Windows) will provoke
+\TeX{} to report an error and exit immediately. Otherwise you should
+attempt to provoke an error dialogue, from which you can exit (using
+the |x| `command'). An accessible error could well be inserting an
+illegal character: what it is will depend on what macros you are
+running. If you can't make that work, try a silly command name or
+two.
+
+\Question[Q-unkgrfextn]{``Unknown graphics extension''}
+
+The \LaTeX{} graphics package deals with several different types of
+\acro{DVI} (or other) output drivers; each one of them has a potential
+to deal with a different selection of graphics formats. The package
+therefore has to be told what graphics file types its output driver
+knows about; this is usually done in the \meta{driver}\extension{def} file
+corresponding to the output driver you're using.
+
+The error message arises, then, if you have a graphics file whose
+extension doesn't correspond with one your driver knows about. Most
+often, this is because you're being optimistic: asking
+\ProgName{dvips} to deal with a \extension{png} file, or \PDFTeX{} to deal with
+a \extension{eps} file: the solution in this case is to transform the graphics
+file to a format your driver knows about.
+
+If you happen to \emph{know} that your device driver deals with the
+format of your file, you are probably falling foul of a limitation of
+the file name parsing code that the graphics package uses. Suppose
+you want to include a graphics file \File{home.bedroom.eps} using the
+\ProgName{dvips} driver; the package will conclude that your file's
+extension is \extension{bedroom.eps}, and will complain.
+
+The \Package{grffile} package deals with the last problem (and
+others~--- see the package documentation); using the package, you may
+write:
+\begin{quote}
+\begin{verbatim}
+\usepackage{graphicx}
+\usepackage{grffile}
+...
+\includegraphics{home.bedroom.eps}
+\end{verbatim}
+\end{quote}
+or you may even write
+\begin{quote}
+\begin{verbatim}
+\includegraphics{home.bedroom}
+\end{verbatim}
+\end{quote}
+and \Package{graphicx} will find a \extension{eps} or \extension{pdf}
+(or whatever) version, according to what version of \AllTeX{} you're
+running.
+
+If for some reason you can't use \Package{grffile}, you have three
+unsatisfactory alternatives:
+\begin{itemize}
+\item Rename the file~--- for example \File{home.bedroom.eps}\arrowhyph{}%
+ \File{home-bedroom.eps}
+\item Mask the first dot in the file name:
+\begin{verbatim}
+\newcommand*{\DOT}{.}
+\includegraphics{home\DOT bedroom.eps}
+\end{verbatim}
+\item Tell the graphics package what the file is, by means of options
+ to the \csx{includegraphics} command:
+\begin{narrowversion}
+\begin{verbatim}
+\includegraphics[type=eps,ext=.eps,
+ read=.eps]{home.bedroom}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\includegraphics[type=eps,ext=.eps,read=.eps]{home.bedroom}
+\end{verbatim}
+\end{wideversion}
+\end{itemize}
+\begin{ctanrefs}
+\item[grffile.sty]Distributed as part of the Oberdiek collection
+ \CTANref{oberdiek}[grffile]
+\end{ctanrefs}
+
+\Question[Q-nodollar]{``Missing \texttt{\$} inserted''}
+
+There are certain things that \emph{only} work in maths mode. If your
+document is not in maths mode and you have an |_| or a |^| character,
+\TeX{} (and by inheritance, \LaTeX{} too) will say
+\begin{verbatim}
+! Missing $ inserted
+\end{verbatim}
+as if you couldn't possibly have misunderstood the import of what you
+were typing, and the only possible interpretation is that you had
+committed a typo in failing to enter maths mode. \TeX{}, therefore,
+tries to patch things up by inserting the \texttt{\$} you `forgot', so that
+the maths-only object will work; as often as not this will land you in
+further confusion.
+
+It's not just the single-character maths sub- and superscript
+operators: anything that's built in or declared as a maths operation,
+from the simplest lower-case \csx{alpha} through the inscrutable
+\csx{mathchoice} primitive, and beyond, will provoke the error if
+misused in text mode.
+
+\LaTeX{} offers a command \csx{ensuremath}, which will put you in maths
+mode for the execution of its argument, if necessary: so if you want
+an \csx{alpha} in your running text, say
+\cmdinvoke{ensuremath}{\csx{alpha}}; if the bit of running text somehow
+transmutes into a bit of mathematics, the \csx{ensuremath} will become
+a no-op, so it's pretty much always safe.
+
+\Question[Q-fontunavail]{Warning: ``Font shape \dots{}\ not available''}
+
+\LaTeX{}'s font selection scheme maintains tables of the font families
+it has been told about. These tables list the font families that
+\LaTeX{} knows about, and the shapes and series in which those font
+families are available. In addition, in some cases, the tables list
+the sizes at which \LaTeX{} is willing to load fonts from the family.
+
+When you specify a font, using one of the \LaTeX{} font selection
+commands, \LaTeX{} looks for the font (that is, a font that matches
+the encoding, family, shape, series and size that you want) in its
+tables. If the font isn't there at the size you want, you will see a
+message like:
+\htmlignore
+\begin{dviversion}
+\begin{verbatim}
+LaTeX Font Warning: Font shape `OT1/cmr/m/n' in
+... size <11.5> not available
+(Font) size <12> substituted on
+... input line ...
+\end{verbatim}
+(All the message texts in this answer have been wrapped so that they
+will fit in the narrow columns of this version of the \acro{FAQ}. The
+continuation marker is |...| at the start of the broken-off portion of
+the line.)
+
+\end{dviversion}
+\begin{pdfversion}
+\begin{verbatim}
+LaTeX Font Warning: Font shape `OT1/cmr/m/n' in size <11.5> not available
+(Font) size <12> substituted on input line ...
+\end{verbatim}
+\end{pdfversion}
+\endhtmlignore
+\begin{htmlversion}
+\begin{verbatim}
+LaTeX Font Warning: Font shape `OT1/cmr/m/n' in size <11.5> not available
+(Font) size <12> substituted on input line ...
+\end{verbatim}
+\end{htmlversion}
+There will also be a warning like:
+\htmlignore
+\begin{dviversion}
+\begin{verbatim}
+LaTeX Font Warning: Size substitutions with
+... differences
+(Font) up to 0.5pt have occurred.
+\end{verbatim}
+\end{dviversion}
+\begin{pdfversion}
+\begin{verbatim}
+LaTeX Font Warning: Size substitutions with differences
+(Font) up to 0.5pt have occurred.
+\end{verbatim}
+\end{pdfversion}
+\endhtmlignore
+\begin{htmlversion}
+\begin{verbatim}
+LaTeX Font Warning: Size substitutions with differences
+(Font) up to 0.5pt have occurred.
+\end{verbatim}
+\end{htmlversion}
+after \LaTeX{} has encountered \cmdinvoke{end}{document}.
+
+The message tells you that you've chosen a font size that is not in
+\LaTeX{}'s list of ``allowed'' sizes for this font; \LaTeX{} has
+chosen the nearest font size it knows is allowed. In fact, you can
+tell \LaTeX{} to allow \emph{any} size: the restrictions come from the
+days when only bitmap fonts were available, and they have never
+applied to fonts that come in scaleable form in the first place.
+Nowadays, most of the fonts that were once bitmap-only are also
+available in scaleable (Adobe Type~1) form. If your installation uses
+scaleable versions of the Computer Modern or European Computer Modern
+(\acro{EC}) fonts, you can tell \LaTeX{} to remove the restrictions;
+use the \Package{type1cm} or \Package{type1ec} package as appropriate.
+
+If the combination of font shape and series isn't available, \LaTeX{}
+will usually have been told of a fall-back combination that may be
+used, and will select that:
+\htmlignore
+\begin{dviversion}
+\begin{verbatim}
+LaTeX Font Warning: Font shape `OT1/cmr/bx/sc'
+... undefined
+(Font) using `OT1/cmr/bx/n'
+... instead on input line 0.
+\end{verbatim}
+\end{dviversion}
+\begin{pdfversion}
+\begin{verbatim}
+LaTeX Font Warning: Font shape `OT1/cmr/bx/sc' undefined
+(Font) using `OT1/cmr/bx/n' instead on input line 0.
+\end{verbatim}
+\end{pdfversion}
+\endhtmlignore
+\begin{htmlversion}
+\begin{verbatim}
+LaTeX Font Warning: Font shape `OT1/cmr/bx/sc' undefined
+(Font) using `OT1/cmr/bx/n' instead on input line 0.
+\end{verbatim}
+\end{htmlversion}
+
+Substitutions may also be ``silent''; in this case, there is no more
+than an ``information'' message in the log file. For example, if you
+specify an encoding for which there is no version in the current font
+family, the `default family for the encoding' is selected. This
+happens, for example, if you use command \csx{textbullet}, which is
+normally taken from the maths symbols font, which is in |OMS|
+encoding. My test log contained:
+\htmlignore
+\begin{dviversion}
+\begin{verbatim}
+LaTeX Font Info: Font shape `OMS/cmr/m/n' in
+... size <10> not available
+(Font) Font shape `OMS/cmsy/m/n'
+... tried instead on input
+... line ...
+\end{verbatim}
+\end{dviversion}
+\begin{pdfversion}
+\begin{verbatim}
+LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10> not available
+(Font) Font shape `OMS/cmsy/m/n' tried instead on input line ...
+\end{verbatim}
+\end{pdfversion}
+\endhtmlignore
+\begin{htmlversion}
+\begin{verbatim}
+LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10> not available
+(Font) Font shape `OMS/cmsy/m/n' tried instead on input line ...
+\end{verbatim}
+\end{htmlversion}
+
+In summary, these messages are not so much error messages, as
+information messages, that tell you what \LaTeX{} has made of your
+text. You should check what the messages say, but you will ordinarily
+not be surprised at their content.
+\begin{ctanrefs}
+\item[type1cm.sty]\CTANref{type1cm}
+\item[type1ec.sty]\CTANref{type1ec}
+\end{ctanrefs}
+
+\Question[Q-buffovl]{Unable to read an entire line}
+
+\TeX{} belongs to the generation of applications written for
+environments that didn't offer the sophisticated string and i/o
+manipulation we nowadays take for granted (\TeX{} was written in
+Pascal, and the original Pascal standard made no mention of i/o, so
+that anything but the most trivial operations were likely to be
+unportable).
+
+When you overwhelm \TeX{}'s input mechanism, you get told:
+\begin{verbatim}
+! Unable to read an entire line---bufsize=3000.
+ Please ask a wizard to enlarge me.
+\end{verbatim}
+(for some value of `3000'~--- the quote was from a
+\Newsgroup{comp.text.tex} posting by a someone who was presumably
+using an old \TeX{}).
+
+As the message implies, there's (what \TeX{} thinks of as a) line in
+your input that's ``too long'' (to \TeX{}'s way of thinking). Since
+modern distributions tend to have tens of thousands of bytes of input
+buffer, it's somewhat rare that these messages occur ``for real''.
+Probable culprits are:
+\begin{itemize}
+\item A file transferred from another system, without translating
+ record endings. With the decline of fixed-format records (on
+ mainframe operating systems) and the increased intelligence of
+ \TeX{} distributions at recognising other systems' explicit
+ record-ending characters, this is nowadays rather a rare cause of
+ the problem.
+\item A graphics input file, which a package is examining for its
+ bounding box, contains a binary preview section. Again,
+ sufficiently clever \TeX{} distributions recognise this situation,
+ and ignore the previews (which are only of interest, if at all, to a
+ \TeX{} previewer).
+\end{itemize}
+
+The usual advice is to ignore what \TeX{} says (i.e., anything about
+enlarging), and to put the problem right in the source.
+
+If the real problem is over-long text lines, most self-respecting text
+editors will be pleased to automatically split long lines (while
+preserving the ``word'' structure) so that they are nowhere any longer
+than a given length; so the solution is just to edit the file.
+
+If the problem is a ridiculous preview section, try using
+\href{http://www.ghostscript.com/}{\ProgName{ghostscript}}
+to reprocess the file, outputting a ``plain
+\extension{eps}'' file. (\ProgName{Ghostscript}'s distribution
+includes a script \ProgName{ps2epsi} which will regenerate the preview
+if necessary.) Users of the shareware program % ! line break
+\href{http://www.ghostgum.com.au/}{\ProgName{gsview}}
+will find buttons to perform the required transformation of the file
+being displayed.
+\LastEdit{2013-06-03}
+
+\Question[Q-formatstymy]{``Fatal format file error; I'm stymied''}
+
+\AllTeX{} applications often fail with this error when you've been
+playing with the configuration, or have just installed a new version.
+
+The format file contains the macros that define the system you want to
+use: anything from the simplest (\plaintex{}) all the way to the most
+complicated, such as \LaTeX{} or \CONTeXT{}. From the command you
+issue, \TeX{} knows which format you want.
+
+The error message
+\begin{verbatim}
+ Fatal format file error; I'm stymied
+\end{verbatim}
+means that \TeX{} itself can't understand the format you want.
+Obviously, this could happen if the format file had got corrupted, but
+it usually doesn't. The commonest cause of the message, is that a new
+binary has been installed in the system: no two \TeX{} binaries on the
+same machine can
+understand each other's formats. So the new version of \TeX{} you
+have just installed, won't understand the format generated by the one
+you installed last year.
+
+Resolve the problem by regenerating the format; of course, this
+depends on which system you are using.
+\begin{itemize}
+\item On a te\TeX{}-based system, run
+\begin{verbatim}
+ fmtutil --all
+\end{verbatim}
+ or
+\begin{verbatim}
+ fmtutil --byfmt=<format name>
+\end{verbatim}
+ to build only the format that you are interested in.
+\item On a \miktex{} system, click \texttt{Start}\arrowhyph{}%
+\texttt{Programs}\arrowhyph{}%
+\texttt{\miktex{} \emph{version}}\arrowhyph{}%
+\texttt{\miktex{} Options}, and in the options window, click
+ \texttt{Update now}.
+\end{itemize}
+
+\Question[Q-nonpdfsp]{Non-\acro{PDF} special ignored!}
+
+This is a \PDFTeX{} error: \PDFTeX{} is running in \acro{PDF} output
+% beware line break at end line
+mode, and it has encountered a \nothtml{\csx{special} command (}%
+\Qref{\csx{special}}{Q-specials}\latexhtml{)}{ command}. \PDFTeX{} is
+able to generate its own output, and in this mode of operation has no
+need of \csx{special} commands (which allow the user to pass
+information to the driver being used to generate output).
+
+Why does this happen? \LaTeX{} users, nowadays, hardly ever use
+\csx{special} commands on their own~--- they employ packages to do the
+job for them. Some packages will generate \csx{special} commands
+however they are invoked: \Package{pstricks} is an example (it's very
+raison d'\^etre is to emit \PS{} code in a sequence of \csx{special}
+commands). \Package{Pstricks} may be dealt with by other means (the
+\Package{pdftricks} package offers a usable technique).
+
+More amenable to correction, but more confusing, are packages (such as
+\Package{color}, \Package{graphics} and \Package{hyperref}) that
+specify a ``driver''. These packages have plug-in modules that
+determine what \csx{special} (or other commands) are needed to generate
+any given effect: the \texttt{pdftex} driver for such packages knows not to
+generate \csx{special} commands. In most circumstances, you can let
+the system itself choose which driver you need; in this case
+everything will act properly when you switch to using \PDFLaTeX{}. If
+you've been using \ProgName{dvips} (and specifying the |dvips| driver)
+or \ProgName{dvipdfm} (for which you have to specify the driver), and
+decide to try \PDFLaTeX{}, you \emph{must} remove the |dvips| or
+|dvipdfm| driver specification from the package options, and let the
+system recognise which driver is needed.
+\begin{ctanrefs}
+\item[pdftricks.sty]\CTANref{pdftricks}
+\item[pstricks.sty]\CTANref{pstricks}
+\end{ctanrefs}
+
+\Question[Q-8000]{Mismatched mode ljfour and resolution 8000}
+
+You're running \ProgName{dvips}, and you encounter a stream of error
+messages, starting with ``\texttt{Mismatched mode}''. The mode is the
+default used in your installation~--- it's set in the \ProgName{dvips}
+configuration file, and \texttt{ljfour} is commonest (since it's the
+default in most distributions), but not invariable.
+
+The problem is that \ProgName{dvips} has encountered a font for which
+it must generate a bitmap (since it can't find it in Type~1 format),
+and there is no proforma available to provide instructions to give to
+\MF{}.
+
+So what to do? The number 8000 comes from the `\texttt{-Ppdf}' option
+to \ProgName{dvips}, which you might have found from the answer
+\nothtml{``wrong type of fonts'' (}% beware % beware line breaks
+\Qref{``wrong type of fonts''}{Q-fuzzy-type3}\nothtml{)}. The obvious
+solution is to switch to the trivial substitute `\texttt{-Pwww}',
+which selects the necessary type~1 fonts for \acro{PDF} generation,
+but nothing else: however, this will leave you with undesirable bitmap
+fonts in your \acro{PDF} file. The ``proper'' solution is to find a
+way of expressing what you want to do, using type~1 fonts.
+
+\Question[Q-toodeep]{``Too deeply nested''}
+
+This error appears when you start a \LaTeX{} list.
+
+\LaTeX{} keeps track of the nesting of one list inside another. There
+is a set of list formatting parameters built-in for application to
+each of the list nesting levels; the parameters determine indentation,
+item separation, and so on. The \environment{list} environment (the
+basis for list environments like \environment{itemize} and
+\environment{enumerate}) ``knows'' there are only 6 of these sets.
+
+There are also different label definitions for the
+\environment{enumerate} and \environment{itemize} environments at
+their own private levels of nesting. Consider this example:
+\begin{quote}
+\begin{verbatim}
+\begin{enumerate}
+\item first item of first enumerate
+ \begin{itemize}
+ \item first item of first itemize
+ \begin{enumerate}
+ \item first item of second enumerate
+ ...
+ \end{enumerate}
+ ...
+ \end{itemize}
+...
+\end{enumerate}
+\end{verbatim}
+\end{quote}
+In the example,
+\begin{itemize}
+\item the first \environment{enumerate} has labels as for a
+ first-level \environment{enumerate}, and is indented as for a
+ first-level list;
+\item the first \environment{itemize} has labels as for a first level
+ \environment{itemize}, and is indented as for a second-level list;
+ and
+\item the second \environment{enumerate} has labels as for a
+ second-level \environment{enumerate}, and is indented as for a
+ third-level list.
+\end{itemize}
+Now, as well as \LaTeX{} \emph{knowing} that there are 6~sets of
+parameters for indentation, it also \emph{knows} that there are only
+4~types of labels each, for the environments \environment{enumerate}
+and \environment{itemize} (this ``knowledge'' spells out a requirement
+for class writers, since the class supplies the sets of parameters).
+
+From the above, we can deduce that there are several ways we can run
+out of space: we can have 6~lists (of any sort) nested, and try to
+start a new one; we can have 4~\environment{enumerate} environments
+somewhere among the set of nested lists, and try to add another one;
+and we can have 4~\environment{itemize} environments somewhere among
+the set of nested lists, and try to add another one.
+
+What can be done about the problem? Not much, short of rewriting
+\LaTeX{}~--- you really need to rewrite your document in a slightly
+less labyrinthine way.
+
+\Question[Q-inputlev]{Capacity exceeded~--- input levels}
+
+The error
+\begin{wideversion}
+\begin{verbatim}
+! TeX capacity exceeded, sorry [text input levels=15].
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+! TeX capacity exceeded, sorry
+ [text input levels=15].
+\end{verbatim}
+\end{narrowversion}
+is caused by nesting your input too deeply. You can provoke it with
+the trivial (\plaintex{}) file \File{input.tex}, which contains
+nothing but:
+\begin{verbatim}
+\input input
+\end{verbatim}
+In the real world, you are unlikely to encounter the error with a
+modern \TeX{} distribution. Te\TeX{} (used to produce the error
+message above) allows 15 files open for \TeX{} input at any one time,
+which is improbably huge for a document generated by real human
+beings.
+
+However, for those improbable (or machine-generated) situations,
+some distributions offer the opportunity to adjust the parameter
+|max_in_open| in a configuration file.
+
+\Question[Q-hyperdupdest]{\PDFTeX{} destination \dots{}\ ignored}
+
+The warning:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+! pdfTeX warning (ext4): destination with the same identifier
+(name{page.1}) has been already used, duplicate ignored
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+! pdfTeX warning (ext4): destination with
+ the same identifier (name{page.1}) has
+ been already used, duplicate ignored
+\end{verbatim}
+{\small NB: message text wrapped to fit in the column\par}
+\end{narrowversion}
+\end{quote}
+arises because of duplicate page numbers in your document. The
+problem is usually soluble: see % beware line break
+\Qref*[question]{\acro{PDF} page destinations}{Q-pdfpagelabels}~--- which
+answer also describes the problem in more detail.
+
+If the identifier in the message is different, for example
+\texttt{name\{figure.1.1\}}, the problem is (often) due to a problem of
+package interaction. The \File{README} in the \Package{hyperref}
+distribution mentions some of these issues~--- for example,
+\environment{equation} and \environment{eqnarray} as supplied by the
+\Package{amsmath} package; means of working around the problem are
+typically supplied there.
+
+Some packages are simply incompatible with
+\Package{hyperref}, but most work simply by ignoring it. In most
+cases, therefore, you should load your package before you load
+\Package{hyperref}, and \Package{hyperref} will patch things up so
+that they work, so you can utilise your (patched) package \emph{after}
+loading both:
+\begin{quote}
+ \cmdinvoke{usepackage}{\emph{your package}}\\
+ \texttt{...}\\
+ \cmdinvoke{usepackage}[\emph{opts}]{hyperref}\\
+ \texttt{...}\\
+ \meta{code that uses your package}
+\end{quote}
+\begin{wideversion}
+For example:
+\begin{quote}
+\begin{verbatim}
+\usepackage{float} % defines \newfloat
+...
+\usepackage[...]{hyperref} % patches \newfloat
+...
+\newfloat{...}{...}{...}
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+So, if we need \csx{newfloat}:
+\begin{quote}
+\cmdinvoke{usepackage}{float}
+\end{quote}
+will define the command,
+\begin{quote}
+\cmdinvoke{usepackage}[\emph{opts}]{hyperref}
+\end{quote}
+will patch it, and now:
+\begin{quote}
+\cmdinvoke{newfloat}{...}{...}{...}
+\end{quote}
+will use the command, patched to create `proper' hyperreferences.
+\end{narrowversion}
+You should load packages in this order as a matter of course, unless
+the documentation of a package says you \emph{must} load it after
+\Package{hyperref}. (There are few packages that require to be
+loaded after hyperref: one such is \Class{memoir}'s
+``\Package{hyperref} fixup'' package \Package{memhfixc}.)
+
+If loading your packages in the (seemingly) ``correct'' order doesn't
+solve the problem, you need to \Qref*{seek further help}{Q-gethelp}.
+
+\Question[Q-altabcr]{Alignment tab changed to \csx{cr}}
+
+This is an error you may encounter in \LaTeX{} when a tabular
+environment is being processed. ``Alignment tabs'' are the
+\texttt{\&} signs that separate the columns of a \environment{tabular}
+(or \environment{array} or matrix) environment; so the error message
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+! Extra alignment tab has been
+ changed to \cr
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+! Extra alignment tab has been changed to \cr
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+could arise from a simple typo, such as:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{ll}
+ hello & there & jim \\
+ goodbye & now
+\end{tabular}
+\end{verbatim}
+\end{quote}
+where the second \texttt{\&} in the first line of the table is more than the
+two-column \texttt{ll} column specification can cope with. In this
+case, an extra ``\texttt{l}'' in that solves the problem. (If you
+continue from the error in this case, ``\texttt{jim}'' will be moved
+to a row of his own.) Another simple typo that can provoke the error
+is:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{ll}
+ hello & there
+ goodbye & now
+\end{tabular}
+\end{verbatim}
+\end{quote}
+where the `\texttt{\bsbs }' has been missed from the first line of the table.
+In this case, if you continue from the error, you will find that
+\LaTeX{} has made a table equivalent to:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{ll}
+ hello & there goodbye\\
+ now
+\end{tabular}
+\end{verbatim}
+\end{quote}
+(with the second line of the table having only one cell).
+
+Rather more difficult to spot is the occurrence of the error when
+you're using alignment instructions in a ``\texttt{p}'' column:
+\begin{quote}
+\begin{verbatim}
+\usepackage{array}
+...
+\begin{tabular}{l>{\raggedright}p{2in}}
+here & we are again \\
+happy & as can be
+\end{tabular}
+\end{verbatim}
+\end{quote}
+the problem here (as explained in % ! line break
+\Qref[question]{tabular cell alignment}{Q-tabcellalign}) is that the
+\csx{raggedright} command in the column specification has overwritten
+\environment{tabular}'s definition of \texttt{\bsbs }, so that
+``\texttt{happy}'' appears in a new line of the second column, and the
+following \texttt{\&} appears to \LaTeX{} just like the second
+\texttt{\&} in the first example above.
+
+Get rid of the error in the way described in % ! linebreak
+\Qref[question]{tabular cell alignment}{Q-tabcellalign}~--- either use
+\csx{tabularnewline} explicitly, or use the \csx{RBS} trick described
+there.
+
+The \Package{amsmath} package adds a further twist; when typesetting
+a matrix (the package provides many matrix environments), it has a
+fixed maximum number of columns in a matrix~--- exceed that maximum,
+and the error will appear. By default, the maximum is set to 10, but
+the value is stored in counter \texttt{MaxMatrixCols} and may be
+changed (in the same way as any counter):
+\begin{quote}
+\begin{verbatim}
+\setcounter{MaxMatrixCols}{20}
+\end{verbatim}
+\end{quote}
+\begin{ctanrefs}
+\item[array.sty]Distributed as part of \CTANref{2etools}[array]
+\end{ctanrefs}
+\LastEdit{2011-07-06}
+
+\Question[Q-divzero]{Graphics division by zero}
+
+While the error
+\begin{quote}
+\begin{verbatim}
+! Package graphics Error: Division by 0.
+\end{verbatim}
+\end{quote}
+can actually be caused by offering the package a figure which claims
+to have a zero dimension, it's more commonly caused by rotation.
+
+Objects in \TeX{} may have both height (the height above the baseline)
+and depth (the distance the object goes below the baseline). If you
+rotate an object by 180\,degrees, you convert its height into depth,
+and vice versa; if the object started with zero depth, you've
+converted it to a zero-height object.
+
+Suppose you're including your graphic with a command like:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\includegraphics[angle=180,height=5cm]{myfig.eps}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\includegraphics[angle=180,%
+ height=5cm]{myfig.eps}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+In the case that \File{myfig.eps} has no depth to start with, the
+scaling calculations will produce the division-by-zero error.
+
+Fortunately, the \Package{graphicx} package has a keyword
+\pkgoption{totalheight}, which allows you to specify the size of the
+image relative to the sum of the object's \pkgoption{height} and
+\pkgoption{depth}, so
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\includegraphics[angle=180,totalheight=5cm]{myfig.eps}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\includegraphics[angle=180,%
+ totalheight=5cm]{myfig.eps}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+will resolve the error, and will behave as you might hope.
+
+If you're using the simpler \Package{graphics} package, use the
+\texttt{*} form of the \csx{resizebox} command to specify the use of
+\pkgoption{totalheight}:
+\begin{quote}
+\begin{verbatim}
+\resizebox*{!}{5cm}{%
+ \rotatebox{180}{%
+ \includegraphics{myfig.eps}%
+ }%
+}
+\end{verbatim}
+\end{quote}
+\begin{ctanrefs}
+\item[graphics.sty,graphicx.sty]Both parts of the \CTANref{graphics} bundle
+\end{ctanrefs}
+
+\Question[Q-missbegdoc]{Missing \csx{begin}\marg{document}}
+
+The \emph{preamble} of your document is the stuff before
+\cmdinvoke{begin}{document}; you put \csx{usepackage} commands and
+your own macro definitions in there. \latex{} doesn't like
+\emph{typesetting} anything in the preamble, so if you have:
+\begin{itemize}
+\item typed the odd grumble,
+\item created a box with \csx{newsavebox} and put something in it
+ using \csx{sbox} (or the like),
+\item forgotten to put \cmdinvoke{begin}{document} into the document,
+ at all, or even
+\item gave it the wrong file
+\end{itemize}
+the error is inevitable and the solution is simple~--- judicious use
+of comment markers (`\texttt{\textpercent{}}') at the beginning of a
+line, moving things around, providing something that was
+missing~\dots{} or switching to the correct file.
+
+The error may also occur while reading the \extension{aux} file from an
+earlier processing run on the document; if so, delete the
+\extension{aux} file and start again from scratch. If the error
+recurs, it could well be due to a buggy class or package.
+
+However, it may be that none of the above solves the problem.
+
+If so, remember that things that appear before \csx{documentclass} are
+also problematical: they are inevitably before
+\cmdinvoke{begin}{document}!
+
+Unfortunately, modern editors are capable of putting things there, and
+preventing you from seeing them. This can happen when your document
+is being `written' in \Qref*{Unicode}{Q-unicode}. The Unicode
+standard defines ``Byte Order Marks'' (\acro{BOM}), that reassure a
+program (that reads the document) of the way the Unicode codes are
+laid out. Sadly ordinary \latex{} or \pdflatex{} choke on
+\acro{BOM}s, and consider them typesetting requests. The error
+message you see will look like:
+\begin{quote}
+\begin{verbatim}
+! LaTeX Error: Missing \begin{document}.
+...
+l.1 <?>
+ <?><?>\documentclass{article}
+\end{verbatim}
+\end{quote}
+(Those \texttt{<?>}s are your operating system's representation of an
+unknown character; on the author's system it's a reverse video
+`\texttt{?}' sign.)
+
+You can spot the \acro{BOM} by examining the bytes; for example, the
+Unix \ProgName{hexdump} application can help:
+\begin{quote}
+\begin{verbatim}
+$ hexdump -C <file>
+00000000 ef bb bf 5c 64 6f 63 75 ...
+\end{verbatim}
+\end{quote}
+The \texttt{5c 64 6f 63 75} are the ``\csx{docu}'' at the start of
+(the `real' part of) your document; the three bytes before it form the
+\acro{BOM}.
+
+How to stop your editor from doing this to you depends, of course, on
+the editor you use; if you are using \acro{GNU E}macs, you have to
+change the encoding from \texttt{utf-8-with-signature} to `plain'
+\texttt{utf-8}; instructions for that are found on
+% ! line break
+\href{http://stackoverflow.com/questions/3859274/}{the ``stack overflow'' site}
+
+(So far, all instances of this problem that the author has seen have
+afflicted \acro{GNU E}macs users.)
+
+Fortunately \xetex{} and \luatex{} know about \acro{BOM}s and what to
+do with them, so \latex{} using them is ``safe''.
+
+\Question[Q-normalszmiss]{\csx{normalsize} not defined}
+
+The \LaTeX{} error:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+The font size command \normalsize is not
+ defined: there is probably something
+ wrong with the class file.
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+The font size command \normalsize is not defined:
+there is probably something wrong with the class file.
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+reports something pretty fundamental (document base font size has not
+been set, something the document class does for you). It \emph{can},
+in principle, be a problem with the document class, but is more often
+caused by the user forgetting to start their document with a
+\csx{documentclass} command.
+\LastEdit{2013-11-20}
+
+\Question[Q-manymathalph]{Too many math alphabets}
+
+\TeX{} mathematics is one of its most impressive features, yet the
+internal structure of the mechanism that produces it is painfully
+complicated and (in some senses) pathetically limited. One area of
+limitation is that one is only allowed 16~''maths alphabets''
+
+\LaTeX{} offers the user quite a lot of flexibility with allocating
+maths alphabets, but few people use the flexibility directly.
+Nevertheless, there are many packages that provide symbols, or that
+manipulate them, which allocate themselves one or more maths alphabet.
+
+If you can't afford to drop any of these packages, you might be able
+to consider switching to use of \Qref*{\xetex{}}{Q-xetex} or
+\Qref{\luatex{}}{Q-luatex}, which both have 65536 alphabet slots
+available. (Such a change is best not done when under pressure to
+complete a document; other issues, such as font availability) could
+make a change impractical.)
+
+Even if switching is not possible, there's still hope if you're using
+the \Package{bm} package to support \Qref*{bold maths}{Q-boldgreek}:
+\Package{bm} is capable of gobbling alphabets as if there is no
+tomorrow. The package defines two limiter commands: \csx{bmmax} (for
+\emph{bold} symbols; default~4) and \csx{hmmax} (for \emph{heavy}
+symbols, if you have them; default~3), which control the number of
+alphabets to be used.
+
+Any reduction of the \csx{\emph{xx}max} variables will slow
+\Package{bm} down~--- but that's surely better than the document not
+running at all. So unless you're using maths fonts (such as
+\FontName{Mathtime Plus}) that feature a heavy symbol weight, suppress all
+use of heavy families by
+\begin{quote}
+\begin{verbatim}
+ \newcommand{\hmmax}{0}
+\end{verbatim}
+\end{quote}
+(before loading \Package{bm}), and then steadily reduce the bold
+families, starting with
+\begin{quote}
+\begin{verbatim}
+ \newcommand{\bmmax}{3}
+\end{verbatim}
+\end{quote}
+(again before loading \Package{bm}), until (with a bit of luck) the
+error goes away.
+\begin{ctanrefs}
+\item[bm.sty]Distributed as part of \CTANref{2etools}[bm]
+\end{ctanrefs}
+
+\Question[Q-ouparmd]{Not in outer par mode}
+
+The error:
+\begin{quote}
+\begin{verbatim}
+! LaTeX Error: Not in outer par mode.
+\end{verbatim}
+\end{quote}
+comes when some ``main'' document feature is shut up somewhere it
+doesn't like.
+
+The commonest occurrence is when the user wants a figure somewhere
+inside a table:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{|l|}
+ \hline
+ \begin{figure}
+ \includegraphics{foo}
+ \end{figure}
+ \hline
+\end{tabular}
+\end{verbatim}
+\end{quote}
+a construction that was supposed to put a frame around the diagram,
+but doesn't work, any more than:
+\begin{quote}
+\begin{verbatim}
+\framebox{\begin{figure}
+ \includegraphics{foo}
+ \end{figure}%
+}
+\end{verbatim}
+\end{quote}
+The problem is, that the \environment{tabular} environment, and the
+\csx{framebox} command restrain the \environment{figure} environment
+from its natural m\'etier, which is to float around the document.
+
+The solution is simply not to use the \environment{figure} environment
+here:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{|l|}
+ \hline
+ \includegraphics{foo}
+ \hline
+\end{tabular}
+\end{verbatim}
+\end{quote}
+What was the float for?~--- as written in the first two examples, it
+serves no useful purpose; but perhaps you actually wanted a diagram
+and its caption framed, in a float.
+
+It's simple to achieve this~--- just reverse the order of the
+environments (or of the \environment{figure} environment and the
+command):
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ \begin{tabular}{|l|}
+ \hline
+ \includegraphics{foo}
+ \caption{A foo}
+ \hline
+ \end{tabular}
+\end{figure}
+\end{verbatim}
+\end{quote}
+The same goes for \environment{table} environments (or any other sort
+of float you've defined for yourself) inside tabulars or box commands;
+you \emph{must} get the float environment out from inside, one way or
+another.
+
+\Question[Q-errmissitem]{Perhaps a missing \csx{item}?}
+
+Sometimes, the error
+\begin{quote}
+\begin{verbatim}
+Something's wrong--perhaps a missing \item
+\end{verbatim}
+\end{quote}
+actually means what it says:
+\begin{quote}
+\begin{verbatim}
+\begin{itemize}
+ boo!
+\end{itemize}
+\end{verbatim}
+\end{quote}
+produces the error, and is plainly in need of an \csx{item} command.
+
+You can also have the error appear when at first sight things are
+correct:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{l}
+ \begin{enumerate}
+ \item foo\\
+ \item bar
+ \end{enumerate}
+\end{tabular}
+\end{verbatim}
+\end{quote}
+produces the error at the \texttt{\bsbs }. This usage is just wrong; if you
+want to number the cells in a table, you have to do it ``by hand'':
+\begin{quote}
+\begin{verbatim}
+\newcounter{tablecell}
+...
+\begin{tabular}{l}
+ \stepcounter{tablecell}
+ \thetablecell. foo\\
+ \stepcounter{tablecell}
+ \thetablecell. bar
+\end{tabular}
+\end{verbatim}
+\end{quote}
+This is obviously untidy; a command \csx{numbercell} defined as:
+\begin{quote}
+\begin{verbatim}
+\newcounter{tablecell}
+...
+\newcommand*{\numbercell}{%
+ \stepcounter{tablecell}%
+ \thetablecell. % **
+}
+\end{verbatim}
+\end{quote}
+could make life easier:
+\begin{quote}
+\begin{verbatim}
+\begin{tabular}{l}
+ \numbercell foo\\
+ \numbercell bar
+\end{tabular}
+\end{verbatim}
+\end{quote}
+Note the deliberate introduction of a space as part of the command,
+marked with asterisks. Omitted above, the code needs to set the
+counter \ltxcounter{tablecell} to zero
+(\cmdinvoke{setcounter}{tablecell}{0}) before each tabular that uses it.
+
+The error also regularly appears when you would never have thought
+that a \csx{item} command might be appropriate. For example, the
+seemingly innocent:
+\begin{quote}
+\begin{verbatim}
+\fbox{%
+ \begin{alltt}
+ boo!
+ \end{alltt}%
+}
+\end{verbatim}
+\end{quote}
+produces the error (the same happens with \csx{mbox} in place of
+\csx{fbox}, or with either of their ``big brothers'', \csx{framebox} and
+\csx{makebox}). This is because the \environment{alltt} environment
+uses a ``trivial'' list, hidden inside its definition. (The
+\environment{itemize} environment also has this construct inside
+itself, in fact, so \cmdinvoke{begin}{itemize} won't work inside an
+\csx{fbox}, either.) The list construct wants to happen between
+paragraphs, so it makes a new paragraph of its own. Inside the
+\csx{fbox} command, that doesn't work, and subsequent macros convince
+themselves that there's a missing \csx{item} command.
+
+To solve this rather cryptic error, one must put the
+\environment{alltt} inside a paragraph-style box. The following
+modification of the above \emph{does} work:
+\begin{quote}
+\begin{verbatim}
+\fbox{%
+ \begin{minipage}{0.75\textwidth}
+ \begin{alltt}
+ hi, there!
+ \end{alltt}
+ \end{minipage}
+}
+\end{verbatim}
+\end{quote}
+The code above produces a box that's far too wide for the text. One
+may want to use something that allows % ! line break
+\Qref*{variable size boxes}{Q-varwidth} in place of the
+\environment{minipage} environment.
+
+Oddly, although the \environment{verbatim} environment wouldn't work
+inside a \csx{fbox} command argument (see % ! line break
+\Qref[question]{verbatim in command arguments}{Q-verbwithin}), you
+get an error that complains about \csx{item}: the environment's
+internal list bites you before \environment{verbatim} has even had a
+chance to create its own sort of chaos.
+
+Another (seemingly) obvious use of \csx{fbox} also falls foul of this
+error:
+\begin{quote}
+\begin{verbatim}
+\fbox{\section{Boxy section}}
+\end{verbatim}
+\end{quote}
+This is a case where you've simply got to be more subtle; you should
+either write your own macros to replace the insides of \LaTeX{}'s
+sectioning macros, or look for some alternative in the packages
+discussed in % ! line break
+``\Qref*[question]{The style of section headings}{Q-secthead}''.
+
+\Question[Q-errparnum]{Illegal parameter number in definition}
+
+The error message means what it says. In the simple case, you've
+attempted a definition like:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\abc}{joy, oh #1!}
+\end{verbatim}
+\end{quote}
+or (using \TeX{} primitive definitions):
+\begin{quote}
+\begin{verbatim}
+\def\abc{joy, oh #1!}
+\end{verbatim}
+\end{quote}
+In either of the above, the definition uses an argument, but the
+programmer did not tell \AllTeX{}, in advance, that she was going to.
+The fix is simple~--- \cmdinvoke{newcommand}{\csx{abc}}[1], in the
+\LaTeX{} case, |\def\abc#1| in the basic \TeX{} case.
+
+The more complicated case is exemplified by the attempted definition:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\abc}{joy, oh joy!%
+ \newcommand{\ghi}[1]{gloom, oh #1!}%
+}
+\end{verbatim}
+\end{quote}
+will also produce this error, as will its \TeX{} primitive equivalent:
+\begin{quote}
+\begin{verbatim}
+\def\abc{joy, oh joy!%
+ \def\ghi#1{gloom, oh #1!}%
+}
+\end{verbatim}
+\end{quote}
+This is because special care is needed when defining one macro within
+the code of another macro. This is explained elsewhere, separately
+for \Qref*[question]{\LaTeX{} definitions}{Q-ltxhash} and for
+\Qref*[question]{\TeX{} primitive definitions}{Q-hash}
+
+\Question[Q-fllost]{Float(s) lost}
+
+The error
+\begin{quote}
+\begin{verbatim}
+! LaTeX Error: Float(s) lost.
+\end{verbatim}
+\end{quote}
+seldom occurs, but always seems deeply cryptic when it \emph{does}
+appear.
+
+The message means what it says: one or more figures, tables, etc., or
+marginpars has not been typeset. (Marginpars are treated internally
+as floats, which is how they come to be lumped into this error
+message.)
+
+The most likely reason is that you placed a float or a \csx{marginpar}
+command inside another float or marginpar, or inside a
+\environment{minipage} environment, a \csx{parbox} or \csx{footnote}.
+Note that the error may be detected a long way from the problematic
+command(s), so the techniques of % ! line break
+\Qref*{tracking down elusive errors}{Q-erroradvice} all need to be
+called into play.
+
+This author has also encountered the error when developing macros that
+used the \LaTeX{} internal float mechanisms. Most people doing that
+sort of thing are expected to be able to work out their own problems\dots{}
+
+\Question[Q-parmoderr]{Not in outer par mode}
+
+For example:
+\begin{quote}
+\begin{verbatim}
+*\mbox{\marginpar{foo}}
+
+! LaTeX Error: Not in outer par mode.
+\end{verbatim}
+\end{quote}
+The error comes when you try to build something movable inside a box.
+Movable things, in this context, are floating environments
+(\environment{figure} and \environment{table}, for example), and
+\csx{marginpar}s. \latex{} simply doesn't have the mechanisms for
+floating out of boxes. In fact, floats and \csx{marginpar}s
+themselves are built out of boxes, so that they can't be nested.
+
+If your error arises from \csx{marginpar}, you simply have to think of
+an alternative way of placing the command; there is no slick solution.
+
+If a floating environment is the culprit, it may be possible to use
+the ``\texttt{H}'' placement option, provided (for example) by the
+\Package{float} package:
+\begin{quote}
+\begin{verbatim}
+\parbox{25cm}{%
+ \begin{figure}[H]
+ ...
+ \caption{Apparently floating...}
+ \end{figure}%
+}
+\end{verbatim}
+\end{quote}
+This example makes little sense as it stands; however, it is
+conceivable that sane uses could be found (for example, using a
+package such as \Package{algorithm2e} to place two algorithms
+side-by-side).
+\begin{ctanrefs}
+\item[algorithm2e.sty]\CTANref{algorithm2e}
+\item[float.sty]\CTANref{float}
+\end{ctanrefs}
+\LastEdit{2013-09-09}
+
+\Question[Q-texorpdf]{Token not allowed in PDFDocEncoded string}
+
+The package \Package{hyperref} produces this error when it doesn't
+know how to make something into a ``character'' that will go into one
+of its \acro{PDF} entries. For example, the (unlikely) sequence
+\begin{quote}
+\begin{verbatim}
+\newcommand{\filled}[2]{%
+ #1%
+ \hfil
+ #2%
+}
+\section{\filled{foo}{bar}}
+\end{verbatim}
+\end{quote}
+provokes the error. \Package{Hyperref} goes on to tell you:
+\begin{quote}
+\begin{verbatim}
+removing `\hfil' on input line ...
+\end{verbatim}
+\end{quote}
+It's not surprising: how would \emph{you} put the
+typesetting instruction \csx{hfil} into a \acro{PDF} bookmark?
+
+\Package{Hyperref} allows you to define an alternative for such
+things: the command \csx{texorpdfstring}, which takes two
+arguments~--- the first is what is typeset, the second is what is put
+into the bookmark. For example, what you would probably like in this
+case is just a single space in the bookmark; if so, the erroneous
+example above would become:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\filled}[2]{%
+ #1%
+ \texorpdfstring{\hfil}{\space}%
+ #2%
+}
+\section{\filled{foo}{bar}}
+\end{verbatim}
+\end{quote}
+and with that definition, the example will compile succesfully
+(\Package{hyperref} knows about the macro \csx{space}).
+\LastEdit*{2009-05-29}
+
+\Question[Q-checksum]{Checksum mismatch in font}
+
+When \MF{} generates a font it includes a checksum in the font bitmap
+file, and in the font metrics file (\acro{TFM}). \AllTeX{} includes
+the checksum from the \acro{TFM} file in the \acro{DVI} file.
+
+When \ProgName{dvips} (or other \acro{DVI} drivers) process a
+\acro{DVI} file, they compare checksums in the \acro{DVI} file to
+those in the bitmap fonts being used for character images. If the
+checksums don't match, it means the font metric file used by \AllTeX{}
+was not generated from the same \MF{} program that generated the
+font.
+
+This commonly occurs when you're processing someone else's \acro{DVI}
+file.
+
+The fonts on your system may also be at fault: possibilities are that
+the new \acro{TFM} was not installed, or installed in a path after an
+old \acro{TFM} file, or that you have a personal cache of bitmaps from
+an old version of the font.
+
+In any case, look at the output -- the chances are that it's perfectly
+\acro{OK}, since metrics tend not to change, even when the bitmaps are
+improved. (Indeed, many font designers~--- Knuth included~---
+maintain the metrics come what may.)
+
+If the output \emph{does} look bad, your only chance is to regenerate
+things from scratch. Options include: flushing your bitmap cache,
+rebuild the \acro{TFM} file locally, and so on.
+
+\Question[Q-entercompmode]{Entering compatibility mode}
+
+You run your \LaTeX{} job, and it starts by saying
+\begin{quote}
+\begin{verbatim}
+Entering LaTeX 2.09 COMPATIBILITY MODE
+\end{verbatim}
+\end{quote}
+followed by lines of asterisks and \texttt{!!WARNING!!}.
+
+This means that the document is not written in ``current'' \LaTeX{}
+syntax, and that there is no guarantee that all parts of the document
+will be formatted correctly.
+
+If the document is someone else's, and you want no more than a copy to
+read, ignore the error. The document may fail elsewhere, but as often
+as not it will provide a \extension{dvi} or \extension{pdf} that's
+adequate for most purposes.
+
+If it's a new document you have just started working on, you have been
+misled by someone. You have written something like:
+\begin{quote}
+ \cmdinvoke{documentstyle}{article}
+\end{quote}
+or, more generally:
+\begin{quote}
+ \cmdinvoke*{documentstyle}[options]{class}
+\end{quote}
+These forms are (as the warning says) \LaTeXo{} syntax, and to get rid
+of the warning, you must change the command.
+
+The simple form is easy to deal with:
+\begin{quote}
+ \cmdinvoke{documentstyle}{article}
+\end{quote}
+should become:
+\begin{quote}
+ \cmdinvoke{documentclass}{article}
+\end{quote}
+The complex form is more difficult, since \LaTeXo{} ``options''
+conflate two sorts of things~--- options for the class (such as
+\pkgoption{11pt}, \pkgoption{fleqn}), and packages to be loaded.
+So:
+\begin{quote}
+ \cmdinvoke{documentstyle}[11pt,verbatim]{article}
+\end{quote}
+should become:
+\begin{quote}
+ \cmdinvoke{documentclass}[11pt]{article}\\
+ \cmdinvoke{usepackage}{verbatim}
+\end{quote}
+because \pkgoption{11pt} happens to be a class option, while
+\Package{verbatim} is a package.
+
+There's no simple way to work out what are class options under
+\LaTeXo{}; for \Class{article}, the list includes \pkgoption{10pt},
+\pkgoption{11pt}, \pkgoption{12pt}, \pkgoption{draft},
+\pkgoption{fleqn}, \pkgoption{leqno}, \pkgoption{twocolumn} and
+\pkgoption{twoside}~--- anything else must be a package.
+
+Your document may well ``just work'' after changes like those above;
+if not, you should think through what you're trying to do, and consult
+documentation on how to do it~--- there are lots of % ! line break
+\Qref*{free tutorials}{Q-tutorials*} to help you on your way, if you
+don't have access to a \LaTeX{} manual of any sort.
+
+\Question[Q-includeother]{\latex{} won't include from other directories}
+
+You wanted to \cmdinvoke{include}{../bar/xyz.tex}, but \latex{} says:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+latex: Not writing to ../bar/xyz.aux (openout_any = p).
+! I can't write on file `../bar/xyz.aux'.
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+LaTeX: Not writing to ../bar/xyz.aux
+ (openout_any = p).
+! I can't write on file `../bar/xyz.aux'.
+\end{verbatim}
+(The first line of that message is wrapped, here.)
+\end{narrowversion}
+\end{quote}
+The error comes from \tex{}'s protection against writing to
+directories that aren't descendents of the one where your document
+resides. (The restriction protects against problems arising from
+\latex{}ing someone else's malicious, or merely broken, document. If
+such a document overwrites something you wanted kept, there is obvious
+potential for havoc.)
+
+Document directory structures that can lead to this problem will look
+like the fictional \File{mybook}:
+\begin{quote}
+\begin{verbatim}
+./base/mybook.tex
+./preface/Preface.tex
+./preface/***
+./chapter1/Intro.tex
+...
+\end{verbatim}
+\end{quote}
+With such a structure, any document directory (other than the one
+where \File{mybook.tex} lives), seems ``up'' the tree from the
+base directory. (References to such files will look like
+\cmdinvoke{include}{../preface/Preface}: the ``\texttt{..}'' is the
+hint.)
+
+But why did it want to write at all?~--- % ! line break
+``\Qref*{what's going in in my \csx{include}}{Q-include}'' explains
+how \csx{include} works, among other things by writing an
+\extension{aux} file for every \csx{includ}ed file.
+
+Solutions to the problem tend to be drastic:
+\begin{enumerate}
+\item Restructure the directories that hold your document so that the
+ master file is at the root of the tree:
+ \begin{quote}
+\begin{verbatim}
+./mybook.tex
+./mybook/preface/Preface.tex
+./mybook/preface/***
+./mybook/chapter1/Intro.tex
+...
+\end{verbatim}
+ \end{quote}
+ and so on.
+\item Did you actually \emph{need} \csx{include}?~--- if not, you can
+ replace \csx{include} by \csx{input} throughout. (This only works
+ if you don't need \csx{includeonly}.)
+\item You \emph{could} patch your system's \File{texmf.cnf}~--- if you
+ know what you're doing, the error message should be enough of a
+ hint; this action is definitely not recommended, and is left to
+ those who can ``help themselves'' in this respect.
+\end{enumerate}
+\LastEdit*{2012-02-13}
+
+\Question[Q-expl3-old]{Support package \Package{expl3} too old}
+
+Some (rather modern) packages are written using the % ! line break
+\Qref*{\latex{}3 programming environment}{Q-LaTeX3}. Since \latex{}3
+is still under development, the author cannot reliably guess what
+version of \latex{}3 the user has installed, and whether that version
+is adequate for the current package. Thus the package's code often
+checks the user's installation, and complains if it's older than the
+author's installation at time of testing. The error message is:
+\begin{quote}
+\begin{verbatim}
+! Support package expl3 too old.
+\end{verbatim}
+\end{quote}
+The ``additional help'' tells you the solution: update your \latex{}3
+installation. The relevant things are \Package{l3kernel} (the
+programming environment, which contains the \Package{expl3} mentioned
+in the error message) and \Package{l3packages} (\latex{}3 constructs
+such as command definitions).
+
+While this sounds a drastic remedy, it is no longer the major
+undertaking it once was~--- if you are using a modern \tex{}
+distribution that you installed yourself, ask it to update over the
+internet; if that choice is not available, install from the
+\extension{tds.zip} files available for both packages on \ctan{}.
+\begin{ctanrefs}
+\item[l3kernel \nothtml{\rmfamily}bundle]\CTANref{l3kernel}
+\item[l3packages \nothtml{\rmfamily}bundle]\CTANref{l3packages}
+\end{ctanrefs}
+\LastEdit*{2013-02-20}
diff --git a/obsolete/help/texfaq/faq-lab-ref.tex b/obsolete/help/texfaq/faq-lab-ref.tex
new file mode 100644
index 0000000000..d1629fd7b7
--- /dev/null
+++ b/obsolete/help/texfaq/faq-lab-ref.tex
@@ -0,0 +1,182 @@
+% $Id: faq-lab-ref.tex,v 1.4 2011/05/08 10:16:43 rf10 Exp $
+
+\subsection{Labels and references}
+
+\Question[Q-nameref]{Referring to things by their name}
+
+\LaTeX{}'s labelling mechanism is designed for the impersonal world of
+the academic publication, in which everything has a number: an
+extension is necessary if we are to record the \emph{name} of things
+we've labelled. The two packages available extend the \LaTeX{}
+sectioning commands to provide reference by the name of the section.
+
+The \Package{titleref} package is a simple extension which provides
+the command \csx{titleref}; it is a stand-alone package~--- don't use it
+in a document in which you also need to use \Package{hyperref}.
+
+The \Package{byname} package is part of the \Package{smartref} bundle
+and works well with \Package{smartref}, and works (to an extent) with
+\Package{hyperref}, but the links it defines are not hyperlinks.
+
+The \Class{memoir} class incorporates the functionality of
+\Package{titleref}, but doesn't work with \Package{byname} (though a
+search of \Newsgroup{comp.text.tex} on \URL{groups.google.com} will
+find a patch to \Package{byname} to remedy the problem).
+
+The \Package{hyperref} bundle includes a package \Package{nameref},
+which will work standing alone (i.e., without \Package{hyperref}: of
+course, in this mode its references are not hyperlinked). If you load
+\Package{hyperref} itself, \Package{nameref} is automatically loaded.
+\Class{Memoir} requires the \Package{memhfixc} when running with
+\Package{hyperref}; following the sequence:
+\begin{quote}
+\begin{verbatim}
+\documentclass[...]{memoir}
+...
+\usepackage[...]{hyperref}
+\usepackage{memhfixc}
+\end{verbatim}
+\end{quote}
+\Package{nameref} commands may be used in a \Class{memoir} document.
+
+\Package{Zref} defines a proposed replacement for all of the \LaTeX{}
+reference mechanisms, and among other things provides
+name-referencing mechanisms:
+\begin{quote}
+\begin{verbatim}
+\usepackage[user,titleref]{zref}
+...
+\section{hello}\zlabel{sec:one}
+The section name is: \ztitleref{sec:one}.
+\end{verbatim}
+\end{quote}
+(One might hope that something of this sort would be the ``way of the
+future'', but things move slowly in the \LaTeX{} world: don't hold
+your breath.)
+
+Each of \Package{titleref}, \Package{byname} and \Package{nameref}
+defines a reference command with the same name as the package:
+\csx{titleref}, \csx{byname} and \csx{nameref}. The \Package{nameref}
+package also defines a command \csx{byshortnameref}, which uses the
+optional `short' title argument to the chapter and section commands.
+(Although it comes from the same author, \Package{zref} \emph{doesn't}
+define a short-name variant.)
+\begin{ctanrefs}
+\item[byname.sty]Distributed with \CTANref{smartref}
+\item[hyperref.sty]\CTANref{hyperref}
+\item[memoir.cls]\CTANref{memoir}
+\item[nameref.sty]Distributed with \CTANref{hyperref}
+\item[smartref.sty]\CTANref{smartref}
+\item[titleref.sty]\CTANref{titleref}
+\item[zref.sty]Distributed as part of \CTANref{oberdiek}[zref]
+\end{ctanrefs}
+
+\Question[Q-extref]{Referring to labels in other documents}
+
+When producing a set of inter-related documents, you'll often want to
+refer to labels in another document of the set; but \LaTeX{}, of its
+own accord, doesn't permit this.
+
+So the package \Package{xr} was written: if you say
+\begin{quote}
+\begin{verbatim}
+\usepackage{xr}
+\externaldocument{volume1}
+\end{verbatim}
+\end{quote}
+will load all the references from \File{volume1} into your present
+document.
+
+But what if the documents both have a section labelled
+``\environment{introduction}'' (likely enough, after all)? The
+package provides a means to transform all the imported labels, so you
+don't have to change label names in either document. For example:
+\begin{quote}
+\begin{verbatim}
+\usepackage{xr}
+\externaldocument[V1-]{volume1}
+\end{verbatim}
+\end{quote}
+loads the references from \File{volume1}, but prefixes every one with
+the string \texttt{V1-}. So you would refer to the introduction to volume~1
+as:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\usepackage{xr}
+\externaldocument[V1-]{volume1}
+...
+... the introduction to volume1
+ (\ref{V1-introduction})...
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\usepackage{xr}
+\externaldocument[V1-]{volume1}
+...
+... the introduction to volume1 (\ref{V1-introduction})...
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+To have the facilities of \Package{xr} working with
+\Package{hyperref}, you need \Package{xr-hyper}. For simple
+hyper-cross-referencing (i.e., to a local \acro{PDF} file you've just
+compiled), write:
+\begin{quote}
+\begin{verbatim}
+\usepackage{xr-hyper}
+\usepackage{hyperref}
+\externaldocument[V1-]{volume1}
+...
+... the \nameref{V1-introduction})...
+\end{verbatim}
+\end{quote}
+and the name reference will appear as an active link to the
+``introduction'' chapter of \File{volume1.pdf}.
+
+To link to a \acro{PDF} document on the Web, for which you happen to
+have the .aux file, write:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\usepackage{xr-hyper}
+\usepackage{hyperref}
+\externaldocument[V1-]{volume1}[http://mybook.com/volume1.pdf]
+...
+... the \nameref{V1-introduction})...
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\usepackage{xr-hyper}
+\usepackage{hyperref}
+\externaldocument[V1-]{volume1}%
+ [http://mybook.com/volume1.pdf]
+...
+... the \nameref{V1-introduction})...
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+Heiko Oberdiek's experimental \Package{zref} bundle includes a
+hyper-crossreferencing mechanism using its \Package{zref-xr} module.
+Usage is closely modelled on \Package{xr} and \Package{xr-hyper}; a
+trivial example (from a \Newsgroup{comp.text.tex} posting) is
+\begin{quote}
+\begin{verbatim}
+\usepackage{zref-xr,zref-user}
+\zexternaldocument*{xr02}
+...
+\zref{foo}
+\end{verbatim}
+\end{quote}
+The module provides all the facilities of the older packages, and can
+deal both with ``traditional'' \LaTeX{} labels and with
+\Package{zref}'s style of labels.
+\begin{ctanrefs}
+\item[xr.sty]Distributed as part of \CTANref{2etools}[xr]
+\item[xr-hyper.sty]Distributed with \CTANref{hyperref}[xr-hyper]
+\item[zref \nothtml{\rmfamily\itshape}bundle]Distributed as part of
+ \CTANref{oberdiek}[zref]
+\end{ctanrefs}
+
diff --git a/obsolete/help/texfaq/faq-litprog.tex b/obsolete/help/texfaq/faq-litprog.tex
new file mode 100644
index 0000000000..e5ba9eb671
--- /dev/null
+++ b/obsolete/help/texfaq/faq-litprog.tex
@@ -0,0 +1,81 @@
+% $Id: faq-litprog.tex,v 1.3 2012/11/24 10:56:03 rf10 Exp $
+
+\section{Literate programming}
+
+\Question[Q-lit]{What is Literate Programming?}
+
+Literate programming is the combination of documentation and source
+together in a fashion suited for reading by human beings.
+In general, literate programs combine source
+and documentation in a single file. Literate programming tools then
+parse the file to produce either readable documentation or compilable
+source. The \acro{WEB} style of literate programming was created by
+D.~E.~Knuth during the development of \TeX{}.
+
+\htmlignore
+The ``\Qref*{documented \LaTeX{}}{Q-dtx}'' style of programming
+\endhtmlignore
+\begin{htmlversion}
+ The ``\Qref{documented \LaTeX{}}{Q-dtx}'' style of programming
+\end{htmlversion}
+is regarded by some as a form of literate programming, though it only
+contains a subset of the constructs Knuth used.
+
+Discussion of literate programming is conducted in the newsgroup
+\Newsgroup{comp.programming.literate}, whose \acro{FAQ} is stored on
+\acro{CTAN}. Another good source of information is
+\URL{http://www.literateprogramming.com/}
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Literate Programming \acro{FAQ}]%
+ \CTANref{LitProg-FAQ}
+\end{ctanrefs}
+\LastEdit{2012-11-16}
+
+\Question[Q-webpkgs]{\acro{WEB} systems for various languages}
+
+\TeX{} is written in the programming language \acro{WEB}; \acro{WEB}
+is a tool to implement the concept of ``literate programming''.
+Knuth's original implementation will be in any respectable
+distribution of \TeX{}, but the sources of the two tools
+(\ProgName{tangle} and \ProgName{weave}), together with a manual
+outlining the programming techniques, may be had from \acro{CTAN}.
+
+\acro{\ProgName{CWEB}}, by Silvio Levy, is a \acro{WEB} for \acro{C} programs.
+
+\acro{\ProgName{FWEB}}, by John Krommes, is a version for Fortran,
+Ratfor,\acro{C}, \acro{C}++, working with \latex{}; it was derived
+from \ProgName{CWEB}.
+
+Spidery \acro{WEB}, by Norman Ramsey, supports many
+languages including Ada, \texttt{awk}, and \acro{C}
+and, while not in the public domain, is usable without charge. It is
+now superseded by \ProgName{noweb} (also by Norman Ramsay) which
+incorporates the lessons learned in implementing spidery \acro{WEB},
+and which is a simpler, equally powerful, tool.
+
+\ProgName{Scheme}\acro{\ProgName{WEB}}, by John Ramsdell, is a Unix filter that
+translates Scheme\acro{WEB} into \LaTeX{} source or Scheme source.
+
+\acro{\ProgName{APLWEB}} is a version of \acro{WEB} for \acro{APL}.
+
+\ProgName{FunnelWeb} is a version of \acro{WEB} that is language independent.
+
+Other language independent versions of \acro{WEB} are \ProgName{nuweb} (which
+is written in \acro{ANSI} \acro{C}).
+
+\ProgName{Tweb} is a \acro{WEB} for \plaintex{} macro files, using
+\ProgName{noweb}.
+\begin{ctanrefs}
+\item[aplweb]\CTANref{aplweb}
+\item[cweb]\CTANref{cweb}
+\item[funnelweb]\CTANref{funnelweb}
+\item[fweb]\CTANref{fweb}
+\item[noweb]\CTANref{noweb}
+\item[nuweb]\CTANref{nuweb}
+\item[schemeweb]\CTANref{schemeweb}
+\item[spiderweb]\CTANref{spiderweb}
+\item[tangle]\CTANref{web}
+\item[tweb]\CTANref{tweb}
+\item[weave]\CTANref{web}
+\end{ctanrefs}
+
diff --git a/obsolete/help/texfaq/faq-mac-prog.tex b/obsolete/help/texfaq/faq-mac-prog.tex
new file mode 100644
index 0000000000..e9a881ba2a
--- /dev/null
+++ b/obsolete/help/texfaq/faq-mac-prog.tex
@@ -0,0 +1,3724 @@
+% $Id: faq-mac-prog.tex,v 1.35 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{Macro programming}
+
+\subsection{``Generic'' macros and techniques}
+
+\Question[Q-linmacnames]{Non-letters in macro names}
+
+New \LaTeX{} users are often suprised that macro definitions
+containing non-letters, such as
+\begin{quote}
+\begin{verbatim}
+\newcommand{\cul8r}{Goodbye!}
+\end{verbatim}
+\end{quote}
+fail to compile. The reason is that the \TeX{} macro language, unlike
+most programming languages, allows % ! loin break (twatbili)
+\Qref*{nothing but letters in macro names}{Q-whatmacros}.
+
+There are a number of techniques for defining a macro with a name like
+\csx{cul8r}. Unfortunately, none of the techniques is particularly
+good:
+\begin{enumerate}
+\item Use \csx{csname}\dots\csx{endcsname} to define and invoke the
+ macro:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\expandafter\newcommand
+ \csname cul8r\endcsname{Goodbye!}
+I said, ``\csname cul8r\endcsname''.
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\expandafter\newcommand\csname cul8r\endcsname{Goodbye!}
+I said, ``\csname cul8r\endcsname''.
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+ \begin{description}
+ \item[Pro:] No unexpected side effects
+ \item[Con:] So verbose as to be unusable
+ \end{description}
+\item Define a ``special-command generator'', and use the resulting
+ commands:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\newcommand{\DefineRemark}[2]{%
+ \expandafter\newcommand
+ \csname rmk-#1\endcsname{#2}%
+}
+\newcommand{\Remark}[1]{%
+ \csname rmk-#1\endcsname%
+}
+...
+\DefineRemark{cul8r}{Goodbye!}
+...
+I said, ``\Remark{cul8r}''.
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\newcommand{\DefineRemark}[2]{%
+ \expandafter\newcommand\csname rmk-#1\endcsname{#2}%
+}
+\newcommand{\Remark}[1]{\csname rmk-#1\endcsname}
+...
+\DefineRemark{cul8r}{Goodbye!}
+...
+\Remark{cul8r}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+ \begin{description}
+ \item[Pro:] Straightforward to use, not too untidy
+ \item[Con:] It's hardly doing what we set out to do (experts will
+ see that you are defining a macro, but others likely won't)
+ \end{description}
+\item Convince \TeX{} that ``\texttt{8}'' is a letter:
+\begin{quote}
+\begin{verbatim}
+\catcode`8 = 11
+\newcommand{\cul8r}{Goodbye!}
+I said, ``\cul8r''.
+\end{verbatim}
+\end{quote}
+ \begin{description}
+ \item[Pro:] \csx{cul8r} can be used directly
+ \item[Con:] Likely to break other uses of ``\texttt{8}'' (such as
+ numbers or dimensions; so
+ \cmdinvoke{setlength}{\csx{paperwidth}}{8in} tells us:
+\begin{quote}
+\begin{verbatim}
+! Missing number, treated as zero.
+<to be read again>
+ 8
+\end{verbatim}
+\end{quote}
+ \end{description}
+ As a general rule, changing category codes is something to use
+ \emph{in extremis}, after detailed examination of options. It is
+ conceivable that such drastic action could be useful for you, but
+ most ordinary users are well advised not even to try such a
+ technique.
+\item Define a macro \csx{cul} which must always be followed by
+ ``\texttt{8r}'':
+\begin{quote}
+\begin{verbatim}
+\def\cul8r{Goodbye!}
+I said, ``\cul8r''.
+\end{verbatim}
+\end{quote}
+ \begin{description}
+ \item[Pro:] \csx{cul8r} can be used directly
+ \item[Con~\#1:] Breaks if \csx{cul} is followed by anything other
+ than ``\texttt{8r}'', with a confusing diagnostic~---
+ \csx{cul99} produces:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+! Use of \cul doesn't match its definition.
+<*> \cul9
+ 9
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+! Use of \cul doesn't match its
+ definition.
+<*> \cul9
+ 9
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+ (which would confuse someone who hadn't even realised there
+ \emph{was} a definition of \csx{cul} in the document).
+ \item[Con~\#2:] Silently redefines existing \csx{cul}, if any;
+ as a result, the technique cannot be used to define both a
+ \csx{cul8r} and, say, a \csx{cul123} macro in the same
+ document.
+ \end{description}
+\end{enumerate}
+Technique~3 is in fact commonly used~--- in a limited form~--- within
+most \LaTeX{} packages and within \LaTeX{} itself. The convention is to
+use ``\texttt{@}'' within the names of internal macros to hide them
+from the user and thereby prevent naming conflicts. To this end,
+\LaTeX{} automatically treats ``\texttt{@}'' as a letter while
+processing classes and packages and as a non-letter while processing
+the user's document. The key to this technique is the separation:
+internally a non-letter is used for macro names, and the user doesn't
+see anything of it, while the status remains ``frozen'' in all the
+definitions created within the class or package. See % ! line break
+\Qref[question]{\csx{@} and \texttt{@} in macro names}{Q-atsigns} for
+more information.
+
+Note that analogous use of technique~3 in this example would give us
+\begin{quote}
+\begin{verbatim}
+\begingroup
+ \catcode`8 = 11
+ \gdef\cul8r{Goodbye!}
+ \gdef\later{\cul8r}
+\endgroup
+I said, ``\later''.
+\end{verbatim}
+\end{quote}
+which works, but rather defeats the object of the exercise.
+(\csx{later} has the ``frozen'' catcode for `8', even though the value
+has reverted to normal by the time it's used; note, also, the use of
+the primitive command \csx{gdef}, since \csx{newcommand} can't make a
+macro that's available outside the group.)
+
+\emph{Recommendation}: Either choose another mechanism (such as
+\csx{DefineRemark} above), or choose another name for your macro, one
+that contains only ordinary letters. A common approach is to use
+roman numerals in place of arabic ones:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\culVIIIr}{Goodbye!}
+\end{verbatim}
+\end{quote}
+which rather spoils the intent of the joke implicit in the example
+\csx{cul8r}!
+\LastEdit*{2009-06-03}
+
+\Question[Q-repeat-num]{Repeating a command \emph{n} times}
+
+\tex{} was \emph{not} designed as a programming language, but there
+are occasions when you want to repeat some part of your document, just
+as parts of programs need to run several times. An obvious
+example is \tex{}-based drawing: \latex{}'s \environment{picture}
+environment and \Package{pgf} (at least) provide repeat facilities~---
+they are useful for drawing repeating patterns. As a result,
+``common'' programming techniques often have to be emulated using
+obscure macro \tex{}niques.
+
+This answer deals with repeating an operation a given number of times;
+repeating operations once for each of a set of objects is dealt with
+in the answer \Qref*{repeating ``over a set''}{Q-repeat-set}.
+
+Plain \tex{} itself provides a \csx{loop} \dots{} \csx{repeat}
+contruct, which enables you to repeat a command (or set of commands).
+The syntax is simple enough, but it use of \tex{} conditionals is
+different enough that many people find it confusing.
+\begin{quote}
+\begin{verbatim}
+\newcount\foo
+\foo=10
+\loop
+ \message{\the\foo}
+ \advance \foo -1
+\ifnum \foo>0
+\repeat
+\end{verbatim}
+\end{quote}
+In this slightly tricky code, \csx{loop} starts the construct ended by
+\csx{repeat}, but \csx{repeat} also ``serves as'' the \csx{fi} to the
+\csx{ifnum}. The loop above prints the numbers from 10 down to 1 via
+\tex{} \csx{message} (i.e., on the console output).
+
+The \Package{multido} package is also `generic' (usable both in
+\plaintex{} and latex{}); it defines a command \csx{multido} with
+three arguments:
+\begin{quote}
+ % ! line break
+ \cmdinvoke{multido}{\meta{variables}}{\meta{repetitions}}{\meta{stuff to repeat}}
+\end{quote}
+When the macro is executing, the \meta{stuff to repeat} gets executed
+\meta{repetitions} times; the \meta{variables} gives a list of
+variables that can be used in \meta{stuff}. Each variable is a
+composite of a command sequence and how it varies; so a variable
+``\csx{iz}\texttt{=2+4}'' sets \csx{iz} to \texttt{2} first time
+around, then \texttt{6} and \texttt{10} in the next two iterations,
+and so on. (The variable \csx{iz} is an integer; variables with other
+initial letters represent different data types.)
+
+% [do these things matter?]
+% The \latexe{} kernel has commands \csx{@for} and \csx{@tfor}.
+%
+% The \latex{}3 kernel includes the command |\prg_replicate:nn|; this
+% information isn't much use unless you're a \latex{}3 user.
+Both current \latex{} and (experimental) \latex{}3 have iteration
+commands for internal use and for package writers; their use is
+probably not recommendable.
+
+The \latex{} distribution package \Package{ifthen} offers the macro
+\csx{whiledo}:
+\begin{quote}
+\begin{verbatim}
+\newcounter{ct}
+...
+\setcounter{ct}{1}
+\whiledo {\value{ct} < 5}%
+{%
+ \thect\
+ \stepcounter {ct}%
+}
+\end{verbatim}
+\end{quote}
+
+The \Package{forloop} package provides nothing but \csx{forloop}:
+\begin{quote}
+\begin{verbatim}
+\newcounter{ct}
+...
+\forloop{ct}{1}{\value{ct} < 5}%
+{%
+ \thect\
+}
+\end{verbatim}
+\end{quote}
+as you can see, the arguments are counter, starting value and
+termination condition; an optional argument supplies a step value
+(default step is 1).
+
+The \latex{} \environment{picture} environment has a simple command
+for repeated drawing:
+\begin{quote}
+\begin{verbatim}
+\multiput(x,y)(xstep,ystep){n}{obj}
+\end{verbatim}
+\end{quote}
+which places \meta{obj} (intended to be a bit of picture)
+\meta{n} times at positions (\meta{x}, \meta{y}),
+(\meta{x}+\meta{xstep}, \meta{y}+\meta{ystep}),
+(\meta{x}+2\meta{xstep}, \meta{y}+2\meta{ystep}) and so on, adding the
+displacement again each time. The command was designed for use in
+\environment{picture}, but it makes no check, and may even be used to
+provide eccentric typesetting in a ``regular'' sentence, such as:
+\begin{quote}
+\begin{verbatim}
+Here \multiput(0,0)(1,1){3}{we} are again.
+\end{verbatim}
+\end{quote}
+with predictable (if not actually desirable) effect. It may be used
+with nothing but an iterative calculation in the braced argument, in
+which case its graphical capabilities have no effect.
+
+The \Package{pgffor} package, which is part of the % ! line break
+\Qref*{\Package{pgf} distribution}{Q-drawing}, also
+provides iterations to support the needs of graphics. Its syntax is
+in the style of common programming languages:
+\begin{quote}
+\begin{verbatim}
+\usepackage{pgffor}
+\newcommand{\cmd}{-x-}
+...
+\foreach \n in {1,...,4}{\cmd{}}
+\end{verbatim}
+\end{quote}
+typesets ``\texttt{-x-\relax-x-\relax-x-\relax-x-}''
+
+The \csx{foreach} command has the potential drawback that its repeated
+unit is executed in a group, so that any calculations done within the
+loop are lost (unless their result is made \csx{global}); however, it
+does not `build in' its graphical origins (as \csx{multiput} does) so
+its potential outside its own graphics environment ``home'' is more
+clear.
+%
+%% can't convince myself that \naturalloop helps with anything
+% The \Package{etextools} package provides \csx{naturalloop}, which
+% repeats material according to a count argument that you give it.
+%
+%% this stuff removed, following the observation that the package's use
+%% of \repeat is inconsistent with both plain tex and latex; pity --
+%% it's a nice package apart from being totally unusable :-(
+%
+% The \Package{repeat} package provides a \csx{for} command that
+% encompasses a lot of the above; for example:
+% \begin{quote}
+% \begin{verbatim}
+% \input repeat
+% \newcount\foo
+% \repeat
+% \for{foo} \from{1} \to{10} \do{x*}
+% \end{verbatim}
+% \end{quote}
+% which will typeset \texttt{x*} ten times (the count \csx{foo} will
+% end up with value 11).
+%
+% Note the \plaintex{} usage: \Package{repeat} is ``generic'' and
+% defines commands that are comfortable to \plaintex{} users, while
+% remaining usable by \latex{} users.
+%
+% The complete syntax is given in the meta-expression:
+% \begin{quote}
+% \begin{verbatim}
+% \repeat
+% \for{var}
+% \from{<start>} \by{<step>} \to{<end>}
+% \downto{<end>} \until{<cond>} \while{<cond>}
+% \do{<operate on something>}
+% \end{verbatim}
+% \end{quote}
+% You must choose a consistent set of \csx{from}, \csx{by}, \csx{to},
+% \csx{downto}, \csx{until} and \csx{while} (none is actually required,
+% but of course any loop has to have \emph{some}).
+
+% In summary, while it is certainly possible to write this sort of code as
+% a private project (for example, using the \etex{} \csx{numexpr}
+% primitive), one cannot deny that plenty of choice for the task is
+% readily available.
+%
+% (the above ignore Pic\tex{}, which almost certainly has similar
+% functions, but in the absence of a manual\dots{})
+\begin{ctanrefs}
+%\item[etextools.sty]\CTANref{etextools}
+\item[forarray.sty]\CTANref{forarray}
+\item[forloop.sty]\CTANref{forloop}
+\item[ifthen.sty]Distributed as part of \CTANref{latex}
+\item[multido.sty]\CTANref{multido}
+\item[pgffor.sty]Distributed as part of \CTANref{pgf}
+%\item[repeat.tex]\CTANref{repeat}
+\end{ctanrefs}
+\LastEdit{2013-03-01}
+
+\Question[Q-repeat-set]{Repeating something for each `thing' in a set}
+
+As another question % line break!
+(\Qref*{repeating something a given number of times}{Q-repeat-num})
+explains, \tex{} is not explicitly designed for `regular' programming
+operations. As a result, we must resort to arcane tricks to do the
+seemingly simple task of repeating an operation. This answer deals
+with repeating an operation for each of a given set of objects.
+
+The \Package{etoolbox} package provides iteration over a
+comma-separated list of items, in its \csx{docsvlist} and
+\csx{forcsvlist} commands; they are well-described in the package
+documentation. The \Package{datatool} package manages ``databases''
+(of its own definition) and you may iterate over entries in such a
+database using the command \csx{DTLforeach}.
+
+The \Package{forarray} package defines its own ``list'' and ``array''
+structures, together with commands \csx{ForEach} and \csx{ForArray}
+which enable a command to be executed for each element in a list or
+array, respectively.
+
+The \Package{dowith} defines a pair of macros \csx{DoWith} and
+\csx{StopDoing} that process each ``thing'' between them; a trivial
+example of use is:
+\begin{quote}
+\begin{verbatim}
+\usepackage{dowith}
+...
+\begin{document}
+\newcommand{\foo}[1]{\message{#1+}
+\DoWith\foo a{BBB}c\StopDoing
+\end{verbatim}
+\end{quote}
+which produces terminal output:
+\begin{quote}
+\begin{verbatim}
+a+ BBB+ c+
+\end{verbatim}
+\end{quote}
+so, the macros have found 3 ``things'', including one with braces
+around it. (The interpolated spaces come from the primitive
+\csx{message} command.)
+
+The only constraint is that all commands in the enclosed stuff are
+``expandable'' (which means, for example, that you may not use
+commands with optional arguments).
+
+From the same stable (as \Package{dowith}) comes the package
+\Package{commado}, that provides commands \csx{DoWithCSL} (apply a
+command to each element of a comma-separated-variable list) and
+\csx{DoWithBasesExts} (apply a command to each of a set of files,
+defined by base name and ``extension''). Use of these \csx{DoWith*}
+macros is also expandable (if the command applied to the list elements
+is itself expandable).
+\begin{ctanrefs}
+\item[commado.sty]\CTANref{commado}
+\item[datatool.sty]\CTANref{datatool}
+\item[dowith.sty]\CTANref{dowith}
+\item[etoolbox.sty]\CTANref{etoolbox}
+\item[filesdo.sty]Distributed with \CTANref{commado}
+\end{ctanrefs}
+\LastEdit{2013-02-20}
+
+%See \url{http://tex.stackexchange.com/questions/16189/repeat-command-n-times}
+%for details (do i need this any more?)
+
+\Question[Q-findwidth]{Finding the width of a letter, word, or phrase}
+
+Put the word in a box, and measure the width of the box. For example,
+\begin{quote}
+\begin{verbatim}
+\newdimen\stringwidth
+\setbox0=\hbox{hi}
+\stringwidth=\wd0
+\end{verbatim}
+\end{quote}
+Note that if the quantity in the \csx{hbox} is a phrase, the actual
+measurement only approximates the width that the phrase will occupy in
+running text, since the inter-word glue can be adjusted in paragraph
+mode.
+
+The same sort of thing is expressed in \LaTeX{} by:
+\begin{quote}
+\begin{verbatim}
+\newlength{\gnat}
+\settowidth{\gnat}{\textbf{small}}
+\end{verbatim}
+\end{quote}
+This sets the value of the length command |\gnat| to the width of ``small''
+in bold-face text.
+
+\Question[Q-patch]{Patching existing commands}
+
+In the general case (possibly sticking something in the middle of an
+existing command) this is difficult. However, the common requirement,
+to add some code at the beginning or the end of an existing command,
+is conceptually quite easy. Suppose we want to define a version of a
+command that does some small extension of its original definition: we
+would naturally write:
+\begin{quote}
+\begin{verbatim}
+\renewcommand{\splat}{\mumble\splat}
+\end{verbatim}
+\end{quote}
+However, this would not work: a call to \csx{splat} would execute
+\csx{mumble}, and then call the redefined \csx{splat} again; this is an
+`unterminated recursion', that will quickly exhaust \TeX{}'s memory.
+
+Fortunately, the \TeX{} primitive \csx{let} command comes to our
+rescue; it allows us to take a ``snapshot'' of the current state of a
+command, which we can then use in the redefinition of the command.
+So:
+\begin{quote}
+\begin{verbatim}
+\let\OldSmooth\smooth
+\renewcommand{\smooth}{\mumble\OldSmooth}
+\end{verbatim}
+\end{quote}
+effects the required patch, safely. Adding things at the end of a
+command works similarly.
+
+If \csx{smooth} takes arguments, one must pass them on:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\let\OldSmooth\smooth
+\renewcommand{\smooth}[2]{\mumble\OldSmooth{#1}{#2}}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\let\OldSmooth\smooth
+\renewcommand{\smooth}[2]%
+ {\mumble\OldSmooth{#1}{#2}}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+
+The situation is more difficult still if \csx{smooth} takes an
+optional argument; the structure of the command is so complex that the
+simple \csx{let} command does not retain the necessary detail. In
+this case, we need the \Package{letltxmacro} package which knows about all
+sorts of \latex{} commands and how to replicate them. Suppose we have
+a command defined as:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\rough}[1][\default]{...}
+\end{verbatim}
+\end{quote}
+with an optional argument (substituted with \csx{default} if it's not
+present) as well as an ordinary one. In this case we copy it using
+\begin{quote}
+\begin{verbatim}
+\LetLtxMacro{\NewRough}{\rough}
+\end{verbatim}
+\end{quote}
+and then repeat the technique we had above, with one extension:
+\begin{quote}
+\begin{verbatim}
+\renewcommand{\rough}[1][\newdef]%
+ {\mumble\OldRough[{#1}]{#2}}
+\end{verbatim}
+\end{quote}
+We see here that (for tedious argument-matching reasons) it is
+necessary to provide braces arround the optional argument that is
+being passed on.
+
+The general case may be achieved in two ways. First, one can use the
+\LaTeX{} command \csx{CheckCommand}; this compares an existing command
+with the definition you give it, and issues a warning if two don't
+match. Use is therefore:
+\begin{quote}
+ |\CheckCommand{\complex}{|\meta{original definition}|}|\\
+ |\renewcommand{\complex}{|\meta{new definition}|}|
+\end{quote}
+This technique is obviously somewhat laborious, but if the original
+command comes from a source that's liable to change under the control
+of someone else, it does at least warn you that your patch is in
+danger of going wrong.
+
+Otherwise, \LaTeX{} users may use one of the \Package{patchcmd},
+\Package{ted} or \Package{etoolbox} packages.
+
+The \Package{patchcmd} package addresses a slightly simpler task, by
+restricting the set of commands that you may patch; you mayn't patch
+any command that has an optional argument, though it does deal with
+the case of commands defined with \csx{DeclareRobustCommand}. The
+package defines a \csx{patchcommand} command, that takes three
+arguments: the command to patch, stuff to stick at the front of its
+definition, and stuff to stick on the end of its definition. So,
+after
+\begin{quote}
+\begin{verbatim}
+\def\b{b}
+\patchcmd\b{a}{c}
+\end{verbatim}
+\end{quote}
+we will have a new version of \csx{b} defined as ``\texttt{abc}''.
+
+The \Package{ted} package is a `token list editor', and provides a
+command \csx{substitute} which will patch the
+contents of a macro, putting the result in a token-list, or
+(in the form \csx{Substitute*}) using the result to (re)define a
+macro. The following example defines a simple macro, and then changes
+its definition:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\myfont}%
+ {\Large\sffamily\selectfont}
+\Substitute*[\renewcommand{\myfont}]{\myfont}%
+ {\Large\sffamily}{\huge\itshape}
+\end{verbatim}
+\end{quote}
+The macro's definition is now:
+\begin{quote}
+\begin{verbatim}
+\huge\itshape\selectfont
+\end{verbatim}
+\end{quote}
+
+The package also offers a command \csx{ShowTokens}, which shows the
+content of its argument, one token to a line, with details of the
+token's category code, etc. This is recommended as a debugging tool.
+
+The \Package{etoolbox} package (which provides user access to \eTeX{}'s
+programming facilities) provides a command \csx{patchcmd} which is
+very similar to \csx{Substitute}, except that it only replaces a
+single instance of the token(s) in its search pattern. Since not all
+commands may be patched in this way, \csx{patchcmd} takes extra
+arguments for \emph{success} and \emph{failure} cases. The
+package also provides commands that prepend (\csx{pretocmd}) or append
+(\csx{apptocmd}) to the definition of a command. Not all commands may
+be patched in this way; the package provides a command
+\csx{ifpatchable} which checks the prerequisites, and checks that the
+target command's body does indeed include the patch string you propose
+to use. (The command \csx{ifpatchable*} omits the test on the patch
+string.)
+
+The \Package{regexpatch} package deals with cases that are
+inaccessible with \Package{etoolbox}; it uses the regular expression
+(pattern-matching) package \Package{l3regex} from the \latex{}3
+distribution to find the code you need to patch. The package also
+``knows about'' robust commands and about
+\Qref*{\Package{biblatex}}{Q-biblatex}.
+
+Finally, we'll briefly consider a package that is (just about)
+usable, but not really recommendable. \Package{Patch} gives you an
+ingenious (and difficult to understand) mechanism, and comes as an
+old-style \LaTeX{} documented macro file, which can no longer be
+processed to \Qref*{produce formatted documentation, etc.\@}{Q-install-doc}.
+Fortunately, the file (\File{patch.doc}) may be input directly, and
+``documentation'' may found by reading the source of the package.
+Roughly speaking, one gives the command a set of instructions
+analogous to \ProgName{sed} substitutions, and it regenerates the
+command thus amended. Unless you can't do your job any other way,
+\Package{patch} is best avoided.
+\begin{ctanrefs}
+\item[etoolbox.sty]\CTANref{etoolbox}
+\item[l3regex.sty]Distributed as part of \CTANref{l3experimental}[l3regex]
+\item[letltxmacro.sty]Distributed as part of \CTANref{oberdiek}[letltxmacro]
+\item[patch.doc]\CTANref{patch}
+\item[patchcommand.sty]\CTANref{patchcmd}
+\item[regexpatch.sty]\CTANref{regexpatch}
+\item[ted.sty]\CTANref{ted}
+\end{ctanrefs}
+\LastEdit{2012-12-21}
+
+\Question[Q-compjobnam]{Comparing the ``job name''}
+
+The token \csx{jobname} amusingly produces a sequence of characters
+whose category code is 12 (`other'), regardless of what the characters
+actually are. Since one inevitably has to compare a macro with the
+contents of another macro (using \csx{ifx}, somewhere) one needs to
+create a macro whose expansion looks the same as the expansion of
+\csx{jobname}. We find we can do this with \csx{meaning}, if we strip
+the ``\csx{show} command'' prefix.
+
+The full command looks like:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\def\StripPrefix#1>{}
+\def\jobis#1{FF\fi
+ \def\predicate{#1}%
+ \edef\predicate{\expandafter\StripPrefix\meaning\predicate}%
+ \edef\job{\jobname}%
+ \ifx\job\predicate
+}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\def\StripPrefix#1>{}
+\def\jobis#1{FF\fi
+ \def\predicate{#1}%
+ \edef\predicate{\expandafter\StripPrefix
+ \meaning\predicate}%
+ \edef\job{\jobname}%
+ \ifx\job\predicate
+}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+And it's used as:
+\begin{quote}
+\begin{verbatim}
+\if\jobis{mainfile}%
+ \message{YES}%
+\else
+ \message{NO}%
+\fi
+\end{verbatim}
+\end{quote}
+Note that the command \csx{StripPrefix} need not be defined if you're
+using \LaTeX{}~--- there's already an % line break!
+\Qref*{internal command}{Q-atsigns} \csx{strip@prefix} that you can
+use.
+
+\Question[Q-isitanum]{Is the argument a number?}
+
+\TeX{}'s own lexical analysis doesn't offer the macro programmer
+terribly much support: while category codes will distinguish letters
+(or what \TeX{} currently thinks of as letters) from everything else,
+there's no support for analysing numbers.
+
+The simple-minded solution is to compare numeric characters with the
+characters of the argument, one by one, by a sequence of direct tests,
+and to declare the argument ``not a number'' if any character fails
+all comparisons:
+\begin{quote}
+\begin{verbatim}
+\ifx1#1
+\else\ifx2#1
+...
+\else\ifx9#1
+\else\isanumfalse
+\fi\fi...\fi
+\end{verbatim}
+\end{quote}
+which one would then use in a tail-recursing macro to gobble an
+argument. One could do slightly better by assuming (pretty safely)
+that the digits' character codes are consecutive:
+\begin{quote}
+\begin{verbatim}
+\ifnum`#1<`0 \isanumfalse
+\else\ifnum`#1>`9 \isanumfalse
+ \fi
+\fi
+\end{verbatim}
+\end{quote}
+again used in tail-recursion. However, these forms aren't very
+satisfactory: getting the recursion ``right'' is troublesome (it has a
+tendency to gobble spaces in the argument), and in any case \TeX{}
+itself has mechanisms for reading numbers, and it would be nice to use
+them.
+
+Donald Arseneau's \Package{cite} package offers the following test
+for an argument being a strictly positive integer:
+\begin{quote}
+\begin{verbatim}
+\def\IsPositive#1{%
+ TT\fi
+ \ifcat_\ifnum0<0#1 _\else A\fi
+}
+\end{verbatim}
+\end{quote}
+which can be adapted to a test for a non-negative integer thus:
+\begin{quote}
+\begin{verbatim}
+\def\IsNonNegative{%
+ \ifcat_\ifnum9<1#1 _\else A\fi
+}
+\end{verbatim}
+\end{quote}
+or a test for any integer:
+\begin{quote}
+\begin{verbatim}
+\def\gobbleminus#1{\ifx-#1\else#1\fi}
+\def\IsInteger#1{%
+ TT\fi
+ \ifcat_\ifnum9<1\gobbleminus#1 _\else A\fi
+}
+\end{verbatim}
+\end{quote}
+but this surely stretches the technique further than is reasonable.
+
+If we don't care about the sign, we can use \TeX{} to remove the
+entire number (sign and all) from the input stream, and then look at
+what's left:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\def\testnum#1{\afterassignment\testresult
+ \count255=0#1 \end}
+\def\testresult#1\end{\ifx\end#1\end}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\def\testnum#1{\afterassignment\testresult\count255=0#1 \end}
+\def\testresult#1\end{\ifx\end#1\end\isanumtrue\else\isanumfalse\fi}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+(which technique is due to David Kastrup; the trick for avoiding the
+errors, noted in an earlier version of this answer, was suggested by
+Andreas Matthias).
+In a later thread on the same topic, Michael Downes offered:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\def\IsInteger#1{%
+ TT\fi
+ \begingroup \lccode`\-=`\0 \lccode`+=`\0
+ \lccode`\1=`\0 \lccode`\2=`\0 \lccode`\3=`\0
+ \lccode`\4=`\0 \lccode`\5=`\0 \lccode`\6=`\0
+ \lccode`\7=`\0 \lccode`\8=`\0 \lccode`\9=`\0
+ \lowercase{\endgroup
+ \expandafter\ifx\expandafter\delimiter
+ \romannumeral0\string#1}\delimiter
+}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\def\IsInteger#1{%
+ TT\fi
+ \begingroup \lccode`\-=`\0 \lccode`+=`\0
+ \lccode`\1=`\0 \lccode`\2=`\0
+ \lccode`\3=`\0 \lccode`\4=`\0
+ \lccode`\5=`\0 \lccode`\6=`\0
+ \lccode`\7=`\0 \lccode`\8=`\0
+ \lccode`\9=`\0
+ \lowercase{\endgroup
+ \expandafter\ifx\expandafter\delimiter
+ \romannumeral0\string#1}\delimiter
+}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+which relies on \csx{romannumeral} producing an empty result if its
+argument is zero. Sadly, this technique has the unfortunate property
+that it accepts simple expressions such as `\texttt{1+2-3}'; this
+could be solved by an initial \csx{gobbleminus}-like construction.
+
+All the complete functions above are designed to be used in \TeX{}
+conditionals written ``naturally''~--- for example:
+\begin{quote}
+\begin{verbatim}
+\if\IsInteger{<subject of test>}%
+ <deal with integer>%
+\else
+ <deal with non-integer>%
+\fi
+\end{verbatim}
+\end{quote}
+The \LaTeX{} \Class{memoir} class has an internal command of its own,
+\cmdinvoke*{checkifinteger}{num}, that sets the conditional command
+\csx{ifinteger} according to whether the argument was an integer.
+
+Of course, all this kerfuffle would be (essentially) void if there was
+a simple means of ``catching'' \TeX{} errors. Imagining an
+error-catching primitive \csx{ifnoerror}, one might write:
+\begin{quote}
+\begin{verbatim}
+\def\IsInteger#1{%
+ TT%
+ \ifnoerror
+ \tempcount=#1\relax
+% carries on if no error
+ \expandafter\iftrue
+ \else
+% here if there was an error
+ \expandafter\iffalse
+ \fi
+}
+\end{verbatim}
+\end{quote}
+thus using \TeX{}'s own integer-parsing code to do the check. It's a
+pity that such a mechanism was never defined (it could be that it's
+impossible to program within \TeX{}!).
+\begin{ctanrefs}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-hash]{Defining macros within macros}
+
+The way to think of this is that |##| gets replaced by |#| in just the
+same way that |#1| gets replaced by `whatever is the first argument'.
+
+So if you define a macro:
+\begin{quote}
+\begin{verbatim}
+\newcommand\a[1]{+#1+#1+#1+}
+\end{verbatim}
+\end{quote}
+or (using the \tex{} primitive \csx{def}):
+\begin{quote}
+\begin{verbatim}
+\def\a#1{+#1+#1+#1+}
+\end{verbatim}
+\end{quote}
+and use it as \cmdinvoke{a}{b},
+the macro expansion produces `+b+b+b+',
+as most people would expect.
+
+However, if we now replace part of the macro:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\newcommand\a[1]{+#1+%
+ \newcommand\x[1]{xxx#1}}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\newcommand\a[1]{+#1+\newcommand\x[1]{xxx#1}}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+then \cmdinvoke{a}{b} will give us the rather odd
+\begin{quote}
+ +b+\cmdinvoke{newcommand}{x}[1]{xxxb}
+\end{quote}
+so that the new \csx{x} ignores its argument.
+
+If we use the \tex{} primitive:
+\begin{quote}
+\begin{verbatim}
+\def\a#1{+#1+\def\x #1{xxx#1}}
+\end{verbatim}
+\end{quote}
+\cmdinvoke{a}{b} will expand to `+b+|\def\x b{xxxb}|'. This
+defines \csx{x} to be a macro \emph{delimited} by |b|, and taking no
+arguments, which is surely not what was intended!
+
+Actually, to define \csx{x} to take an argument, we need
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\newcommand\a[1]{+#1+%
+ \newcommand\x[1]{xxx##1}}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\newcommand\a[1]{+#1+\newcommand\x[1]{xxx##1}}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+or, using the \tex{} primitive definition:
+\begin{quote}
+\begin{verbatim}
+\def\a#1{+#1+\def\x ##1{xxx##1}}
+\end{verbatim}
+\end{quote}
+and \cmdinvoke{a}{b} will expand to
+\begin{quote}
+ +b+|\def\x #1{xxx#1}|
+\end{quote}
+because |#1| gets replaced by `b'
+and |##| gets replaced by |#|.
+
+To nest a definition inside a definition inside a definition then you
+need |####1|, doubling the number of |#| signs; and at the next level
+you need 8~|#|s each time, and so on.
+
+\Question[Q-spinmacro]{Spaces in macros}
+
+It's very easy to write macros that produce space in the typeset
+output where it's neither desired nor expected. Spaces introduced by
+macros are particularly insidious because they don't amalgamate with
+spaces around the macro (unlike consecutive spaces that you
+type), so your output can have a single bloated space that proves
+to be made up of two or even more spaces that haven't amalgamated.
+And of course, your output can also have a space where none was wanted
+at all.
+
+Spaces are produced, inside a macro as elsewhere, by space or tab
+characters, or by end-of-line characters. There are two basic rules
+to remember when writing a macro: first, the rules for ignoring spaces
+when you're typing macros are just the same as the rules that apply
+when you're typing ordinary text, and second, rules for ignoring
+spaces do \emph{not} apply to spaces produced while a macro is being
+obeyed (``expanded'').
+
+Spaces are ignored in vertical mode (between paragraphs), at the
+beginning of a line, and after a command name. Since sequences of
+spaces are collapsed into one, it `feels as if' spaces are ignored if
+they follow another space. Space can have syntactic meaning after
+certain sorts of non-braced arguments (e.g., \emph{count} and
+\emph{dimen} variable assignments in \plaintex{}) and after certain
+control words (e.g., in \csx{hbox} |to|, so again we have instances
+where it `feels as if' spaces are being ignored when they're merely
+working quietly for their living.
+
+Consider the following macro, fairly faithfully adapted from one that
+appeared on \Newsgroup{comp.text.tex}:
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+\newcommand{\stline}[1]
+ { \bigskip \makebox[2cm]{ \textbf{#1} } }
+\end{verbatim}
+\end{quote}
+(the original appeared on a single line: it's wrapped here to fit in
+the printed \acro{FAQ}'s narrow columns).
+
+\nothtml{\noindent}
+\end{narrowversion}
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+\newcommand{\stline}[1]{ \bigskip \makebox[2cm]{ \textbf{#1} } }
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+The macro definition contains five spaces:
+\begin{itemize}
+\item after the opening |{| of the macro body; this space will be
+ ignored, not because ``because the macro appears at the start of a
+ line'', but rather because the macro was designed to operate between
+ paragraphs
+\item after \csx{bigskip}; this space will be ignored (while the macro
+ is being defined) because it follows a command name
+\item after the |{| of the mandatory argument of \csx{makebox}; even
+ though this space will inevitably appear at the start of an output
+ line, it will \emph{not} be ignored
+\item after the |}| closing the argument of \csx{textbf}; this space
+ will not be ignored, but may be overlooked if the argument is well
+ within the |2cm| allowed for it
+\item after the |}| closing the mandatory argument of \csx{makebox};
+ this space will not be ignored
+\end{itemize}
+The original author of the macro had been concerned that the starts of
+his lines with this macro in them were not at the left margin, and
+that the text appearing after the macro wasn't always properly
+aligned. These problems arose from the space at the start of the
+mandatory argument of \csx{makebox} and the space immediately after the
+same argument. He had written his macro in that way to emphasise the
+meaning of its various parts; unfortunately the meaning was rather
+lost in the problems the macro caused.
+
+The principal technique for suppressing spaces is the use of
+\texttt{\textpercent{}} characters: everything after a
+\texttt{\textpercent{}} is ignored, even the end of line itself (so
+that not even the end of line can contribute an unwanted space). The
+secondary technique is to ensure that the end of line is preceded by a
+command name (since the end of line behaves like a space, it will be
+ignored following a command name). Thus the above command would be
+written (by an experienced programmer with a similar eye to
+emphasising the structure):
+\begin{quote}
+\begin{verbatim}
+\newcommand{\stline}[1]{%
+ \bigskip
+ \makebox[2cm]{%
+ \textbf{#1}\relax
+ }%
+}
+\end{verbatim}
+\end{quote}
+Care has been taken to ensure that every space in the revised
+definition is ignored, so none appears in the output. The revised
+definition takes the ``belt and braces'' approach, explicitly dealing
+with every line ending (although, as noted above, a space introduced
+at the end of the first line of the macro would have been ignored in
+actual use of the macro. This is the best technique, in fact~--- it's
+easier to blindly suppress spaces than to analyse at every point
+whether you actually need to. Three techniques were used to suppress
+spaces:
+\begin{itemize}
+\item placing a \texttt{\textpercent{}} character at the end of a line
+ (as in the 1st, 3rd and 5th lines),
+\item ending a line `naturally' with a control sequence, as in line 2,
+ and
+\item ending a line with an `artificial' control sequence, as in line
+ 4; the control sequence in this case (\csx{relax}) is a no-op in many
+ circumstances (as here), but this usage is deprecated~--- a
+ \texttt{\textpercent{}} character would have been better.
+\end{itemize}
+Beware of the (common) temptation to place a space \emph{before} a
+\texttt{\textpercent{}} character: if you do this you might as well omit
+the \texttt{\textpercent{}} altogether.
+
+In ``real life'', of course, the spaces that appear in macros are far
+more cryptic than those in the example above. The most common spaces
+arise from unprotected line ends, and this is an error that
+occasionally appears even in macros written by the most accomplished
+programmers.
+
+\Question[Q-moren9]{How to break the 9-argument limit}
+
+If you think about it, you will realise that Knuth's command
+definition syntax:
+\begin{quote}
+\begin{verbatim}
+\def\blah#1#2 ... #9{<macro body>}
+\end{verbatim}
+\end{quote}
+is intrinsically limited to just 9 arguments. There's no direct way
+round this: how would you express a 10th argument?~--- and ensure that
+the syntax didn't gobble some other valid usage?
+
+If you really must have more than 9 arguments, the way to go is:
+\begin{quote}
+\begin{verbatim}
+\def\blah#1#2 ... #9{%
+ \def\ArgI{{#1}}%
+ \def\ArgII{{#2}}%
+ ...
+ \def\ArgIX{{#9}}%
+ \BlahRelay
+}
+\def\BlahRelay#1#2#3{%
+ % arguments 1-9 are now in
+ % \ArgI-\ArgIX
+ % arguments 10-12 are in
+ % #1-#3
+ <macro body>%
+}
+\end{verbatim}
+\end{quote}
+This technique is easily extendible by concert pianists of the \TeX{}
+keyboard, but is really hard to recommend.
+
+\LaTeX{} users have the small convenience of merely giving a number of
+arguments in the \csx{newcommand} that defines each part of the
+relaying mechanism: Knuth's restriction applies to \csx{newcommand}
+just as it does to \csx{def}. However, \LaTeX{} users also have the
+way out of such barbarous command syntax: the \Package{keyval}
+package. With \Package{keyval}, and a bit of programming, one can
+write really quite sophisticated commands, whose invocation might look
+like:
+\begin{quote}
+\begin{verbatim}
+\flowerinstance{species=Primula veris,
+ family=Primulaceae,
+ location=Coldham's Common,
+ locationtype=Common grazing land,
+ date=1995/04/24,
+ numplants=50,
+ soiltype=alkaline
+}
+\end{verbatim}
+\end{quote}
+The merit of such verbosity is that it is self-explanatory: the typist
+doesn't have to remember that argument twelve is |soiltype|, and so
+on: the commands may be copied from field notes quickly and
+accurately.
+\begin{ctanrefs}
+\item[keyval.sty]Distributed as part of \CTANref{graphics}[keyval]
+\end{ctanrefs}
+
+ * faq-mac-prog.tex (q-keyval): tweak words about getoptk
+
+\Question[Q-keyval]{Key-value input for macros and package options}
+
+When we discussed % !line break
+\Qref*{extending the number of arguments to a macro}{Q-moren9}, we
+suggested that large numbers of arguments, distinguished only by their
+position, aren't very kind to the user, and that a package such as
+\Package{keyval} offers a more attractive user interface. We now
+consider the packages that the macro programmer might use, to create
+such a user interface.
+
+The simplest key-value processor (for \latex{}, at least) remains
+\Package{keyval}; it has a command \csx{define@key} to declare a key
+and a \emph{handler} to process it, and a macro \csx{setkeys} to offer
+values to the handler of one or more keys. Thus:
+\begin{quote}
+\begin{verbatim}
+\define@key{my}{foo}{Foo is #1\par}
+\define@key{my}{bar}[99]{Bar is #1\par}
+...
+\setkeys{my}{foo=3,bar}
+\end{verbatim}
+\end{quote}
+will produce output saying:
+\begin{quote}
+ Foo is 3\par{}
+ Bar is 99
+\end{quote}
+This has defined two keys `\texttt{foo}' and `\texttt{bar}' in family
+`\texttt{my}', and then executed them, the first with argument
+`\texttt{3}' and the second with no argument, so that the default
+value of `\texttt{99}' is picked up. In effect, the two calls to
+\csx{define@key} are simply defining commands, as (for example):
+\begin{quote}
+\begin{verbatim}
+\newcommand{\KV@my@foo}[1]{Foo is #1}
+\end{verbatim}
+\end{quote}
+(the definition of \csx{KV@my@bar} is similar, but trickier). The
+command \csx{setkeys} knows how to find those commands when it needs to
+process each key~--- it is easy to regurgitate the structure of the
+command name, with family name (`\texttt{my}', here) after the first
+`\texttt{@}', and the key name after the second `\texttt{@}'. (The
+`\texttt{KV}' part is fixed, in \Package{keyval}.)
+
+These simple commands are enough, in fact, to process the botanical
+example offered as replacement for multi-argument commands in % ! line break
+\Qref[question]{the question mentioned above}{Q-moren9}, or the
+optional arguments of the \csx{includegraphics} command of the
+\Package{graphicx} package. (The last is, in fact, what
+\Package{keyval} was designed to do.)
+
+However, we need more if we're to to have package options in
+`key-value' form. Packages like \Package{hyperref} have enormously
+complicated package options which need key-value processing at
+\csx{ProcessOptions} time: \Package{keyval} can't do that on its own.
+
+Heiko Oberdiek's \Package{kvoptions} package comes to our help: it
+enables the programmer to declare class or package options that
+operate as key and value pairs. The package defines commands
+\csx{DeclareBoolOption} for options whose value should be either
+\emph{true} or \emph{false}, and \csx{DeclareStringOption} for all
+other options that have a value. Keys are declared using
+\Package{keyval} and may remain available for use within the document,
+or may be `cancelled' to avoid confusion. If you have loaded
+\Package{kvoptions}, the \LaTeX{} kernel's \csx{DeclareOption} becomes
+\csx{DeclareVoidOption} (it's an option with no value), and
+\csx{DeclareOption*} becomes \csx{DeclareDefaultOption}.
+
+Heiko also provides \Package{kvsetkeys} which is a more robust version
+of \Package{setkeys}, with some of the rough edges made smoother.
+
+Hendri Adriaens' \Package{xkeyval} offers more flexibility than
+the original \Package{keyval} and is more robust than the original,
+too. Like \Package{kvoptions}, the package also has mechanisms to
+allow class and package options in key-value form (macros
+\csx{DeclareOptionX}, \csx{ExecuteOptionsX} and \csx{ProcessOptionsX}.
+\Package{Pstricks} bundle packages use a \Package{xkeyval} derivative
+called \Package{pst-xkey} for their own key-value manipulation.
+% xkvview? (i think we can ignore xkvltxp for these purposes)
+
+The (widely-respected) \Package{pgf} graphics package has its own
+key-value package called \Package{pgfkeys}. The documentation of the
+package (part of the huge \Package{pgf} manual, in part 5,
+``utilities'') contains a useful comparison with other key-value
+systems; some notable differences are:
+\begin{itemize}
+\item key organisation: \Package{pgfkeys} uses a tree structure, while
+ \Package{keyval} and \Package{xkeyval} both associate keys with a family;
+\item \Package{pgfkeys} supports multi-argument key code; and
+\item \Package{pgfkeys} can support call-backs when an unknown key
+ appears (these things are called \emph{handlers}.
+\end{itemize}
+Keys are organized in a tree that is reminiscent of the Unix fille
+tree. A typical key might be, \File{/tikz/coordinate system/x} or
+just \File{/x}. When you specify keys you can provide the complete
+path of the key, but you usually just provide the name of the key
+(corresponding to the file name without any path) and the path is
+added automatically. So a \csx{pgfkeys} command might be:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+\pgfkeys{/my key=hello,/your keys/main key=something\strange,
+ key name without path=something else}
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+\pgfkeys{/my key=hello,
+ /your keys/main key=something\strange,
+ key name without path=something else}
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+and for each key mentioned, the associated code will be executed.
+\dots{} and that code is also set up using \csx{pgfkeys}:
+\begin{quote}
+\begin{verbatim}
+\pgfkeys{/my key/.code=The value is '#1'.}
+\end{verbatim}
+\end{quote}
+after which
+\begin{quote}
+\begin{verbatim}
+\pgfkeys{/my key=hi!}
+\end{verbatim}
+\end{quote}
+will produce just
+\begin{quote}
+ The value is 'hi!'.
+\end{quote}
+The manual goes on, showing how to define a key with two arguments,
+how to provide default value for a key, and how to define aliases for
+particular key sequences (which are called ``styles''). All in all,
+it seems a well thought-out system, offering a lot of flexibility that
+isn't available with the other keys packages. However, there seems to
+be no mechanism for using \Package{pgfkeys} keys as part of the
+options of another package, in the way that \Package{kvoptions} does.
+
+The \Package{l3kernel} programming layer for \Qref*{\LaTeX{}3}{Q-LaTeX3}
+includes the \Package{l3keys} module. Inspired by \Package{pgfkeys},
+it provides a keyval-based method for the programmer to create keys.
+As with keyval and derivatives, \Package{l3keys} uses separate macros
+for defining and setting keys. The package \Package{l3keys2e} makes
+it possible for \latexe{} class and package
+options to be processed using \Package{l3keys}. \Package{L3kernel}
+code can be used within existing LaTeX2e documents, so
+\Package{l3keys} is also available to the \latexe{} programmer `direct'.
+
+Another key-value system that's part of larger set of macros is
+\Package{scrbase}, which uses the facilities of \Package{keyval} to
+build a larger set of facilities, originally for use within the
+\Class{KOMA-script} bundle. For English-speaking authors, there are
+difficulties from the German-only documentation; however, from a
+partial translation available to the author of this answer, a summary
+is possible. The package may build on the facilities either of
+\Package{kyeval} or of \Package{xkeyval}, and builds its functionality
+on the structure of the `key family'. The user may define family
+`members' and keys are defined relative to the members. (For example,
+the package \Package{scrbase} is part of the \Class{KOMA-script}
+bundle; so its keys are all members of the \Package{scrbase.sty}
+family within the \Package{KOMA} family. The function
+\csx{FamilyProcessOptions} allows the programmer to decode the options
+of the package in terms of the package's key family. Note that there
+is no special provision made for ``traditional'' package options, as
+in the \Package{kvoptions} package.
+
+This brief summary was guided by input from two sources: a draft article
+for \textsl{TUGboat} by Joseph Wright, and the partial translation of the
+documentation of package \Package{scrbase} prepared by Philipp
+Stephani.
+
+All the above are (at least) aimed at \latex{} programming; there is
+one package, \Package{getoptk}, aimed at the \plaintex{} programmer.
+\Package{Getoptk} uses syntax inspired by that offered by \tex{}
+primitives such as \csx{hrule} and \csx{hbox}, so we are offered
+syntax such as:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+\begindisplay file {chapter1} literal offset 20pt
+\end{verbatim}
+\end{quote}
+(taken from the package manual).
+\end{wideversion}
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+\begindisplay file {chapter1} %
+ literal offset 20pt
+\end{verbatim}
+\end{quote}
+(taken from the package manual, but wrapped to fit into narrow
+columns).
+\end{narrowversion}
+
+There are (we know) people who would swear that such syntax is
+wonderful (the present author wouldn't), but the package earns its
+place as the only stand-alone key-value macros that will work in \plaintex{}.
+\begin{ctanrefs}
+\item[getoptk.tex]\CTANref{getoptk}
+\item[keyval.sty]Distributed as part of \CTANref{graphics}[keyval]
+\item[kvoptions.sty]Distributed as part of \CTANref{oberdiek}[kvoptions]
+\item[kvsetkeys.sty]Distributed as part of \CTANref{oberdiek}[kvsetkeys]
+\item[l3keys.sty]Distributed as part of \CTANref{l3kernel}
+\item[l3keys2e.sty]Distributed as part of \CTANref{l3packages}
+\item[pgfkeys.sty]Distributed as part of \CTANref{pgf}
+\item[scrbase.sty]Distributed as part of \CTANref{koma-script}
+\item[xkeyval.sty]\CTANref{xkeyval}
+\end{ctanrefs}
+\LastEdit{2011-09-06}
+
+\Question[Q-activechars]{Defining characters as macros}
+
+Single characters can act as macros (defined commands), and both
+\plaintex{} and \LaTeX{} define the character
+``\texttt{\textasciitilde}'' as a ``non-breakable space''. A
+character is made definable, or ``active'', by setting its
+\emph{category code} (catcode) to be \csx{active} (13):
+\begin{quote}
+\begin{verbatim}
+\catcode`\_=\active
+\end{verbatim}
+\end{quote}
+Any character could, in principle, be activated this way and defined
+as a macro:
+\begin{quote}
+\begin{verbatim}
+\def_{\_}
+\end{verbatim}
+\end{quote}
+which could be characterised as an over-simple answer to % ! line break
+\Qref[question]{using underscores}{Q-underscore}. However, you must be
+wary: whereas people expect an active tilde, other active characters
+may be unexpected and interact badly with other macros. Furthermore,
+by defining an active character, you preclude the character's use for
+other purposes, and there are few characters ``free'' to be subverted
+in this way.
+
+To define the character ``\texttt{z}'' as a command, one would say something
+like:
+\begin{quote}
+\begin{verbatim}
+\catcode`\z=\active
+\def z{Yawn, I'm tired}%
+\end{verbatim}
+\end{quote}
+and each subsequent ``\texttt{z}'' in the text would become a
+yawn. This would be an astoundingly bad idea for most documents, but
+might have special applications. (Note that, in ``\csx{def}\texttt{
+ z}'', ``\texttt{z}'' is no longer interpreted as a letter; the space
+is therefore not necessary~--- ``\csx{defz}'' would do; we choose to
+retain the space, for what little clarity we can manage.)
+Some \LaTeX{} packages facilitate such definitions. For example, the
+\Package{shortvrb} package with its \csx{MakeShortVerb} command.
+
+\TeX{} uses category codes to interpret characters as they are read
+from the input.
+% beware line break
+\emph{Changing a catcode value will not affect characters that have already been read}.
+Therefore, it is best if characters have fixed category codes for the
+duration of a document. If catcodes are changed for particular
+purposes (the \csx{verb} command does this), then the altered
+characters will not be interpreted properly when they appear in the
+argument to another command (as, for example, in
+% beware line-break
+\htmlonly{``}\Qref[question]{\csx{verb} in command arguments}{Q-verbwithin}\htmlonly{''}).
+An exemplary case is the \Package{doc} package, which processes .dtx
+files using the \Package{shortvrb} package to define
+\texttt{\textbar\dots{}\textbar} as a shorthand for
+\csx{verb}\texttt{\textbar\dots{}\textbar}. But \texttt{\textbar} is
+also used in the preambles of tabular environments, so that tables in
+\extension{dtx} files can only have vertical line separation between
+columns by employing special measures of some sort.
+
+Another consequence is that catcode assignments made
+in macros often don't work as expected % beware linebreak
+(\htmlonly{see ``}\Qref{Active characters in command arguments}{Q-actinarg}\htmlonly{''}).
+For example, the definition
+\begin{quote}
+\begin{verbatim}
+\def\mistake{%
+\catcode`_=\active
+\def_{\textunderscore\-}%
+}
+\end{verbatim}
+\end{quote}
+does not work because it attempts to define an ordinary \texttt{\_} character:
+When the macro is used, the category change does not apply to the
+underscore character already in the macro definition. Instead, one may
+use:
+\begin{quote}
+\begin{verbatim}
+\begingroup
+\catcode`_=\active
+\gdef\works{% note the global \gdef
+ \catcode`_=\active
+ \def_{\textunderscore\-}%
+}
+\endgroup
+\end{verbatim}
+\end{quote}
+The alternative (``tricksy'') way of creating such an isolated
+definition depends on the curious properties of \csx{lowercase}, which
+changes characters without altering their catcodes. Since there is
+always \emph{one} active character (``\texttt{\textasciitilde}''), we
+can fool \csx{lowercase} into patching up a definition without ever
+explicitly changing a catcode:
+\begin{quote}
+\begin{verbatim}
+\begingroup
+ \lccode`\~=`\_
+ \lowercase{\endgroup
+ \def~{\textunderscore\-}%
+ }%
+\end{verbatim}
+\end{quote}
+The two definitions have the same overall effect (the character is
+defined as a command, but the character does not remain active),
+except that the first defines a \csx{global} command.
+
+For active characters to be used only in maths mode, it is much better
+to leave the character having its ordinary catcode, but assign it a
+special active \emph{maths code}, as with
+\begin{quote}
+\begin{verbatim}
+\begingroup
+ \lccode`~=`x
+ \lowercase{\endgroup
+ \def~{\times}%
+ }%
+\mathcode`x="8000
+\end{verbatim}
+\end{quote}
+The special character does not need to be redefined whenever it is
+made active~--- the definition of the command persists even if the
+character's catcode reverts to its original value; the definition
+becomes accessible again if the character once again becomes active.
+\begin{ctanrefs}
+\item[doc.sty]Part of the \LaTeX{} distribution \CTANref{latex}[doc]
+\item[shortvrb.sty]Part of the \LaTeX{} distribution \CTANref{latex}[shortvrb]
+\end{ctanrefs}
+
+
+\Question[Q-actinarg]{Active characters in command arguments}
+
+Occasionally, it's nice to make one or two characters active in the
+argument of a command, to make it easier for authors to code the
+arguments.
+
+Active characters \emph{can} be used safely in such situations; but
+care is needed.
+
+An example arose while this answer was being considered: an aspirant
+macro writer posted to \Newsgroup{comp.text.tex} asking for help to
+make |#| and |b| produce musical sharp and flat signs, respectively,
+in a macro for specifying chords.
+
+The first problem is that both |#| and |b| have rather important uses
+elsewhere in \TeX{} (to say the least!), so that the characters can
+only be made active while the command is executing.
+
+Using the techniques discussed in % beware line break, next line
+\htmlonly{``}\Qref[question]{characters as commands}{Q-activechars}\htmlonly{''},
+we can define:
+\begin{quote}
+\begin{verbatim}
+\begingroup
+ \catcode`\#=\active
+ \gdef#{$\sharp$}
+\endgroup
+\end{verbatim}
+\end{quote}
+and:
+\begin{quote}
+\begin{verbatim}
+\begingroup
+ \lccode`\~=`\b
+ \lowercase{\endgroup
+ \def~{$\flat$}%
+ }
+\end{verbatim}
+\end{quote}
+The second problem is one of timing: the command has to make each
+character active \emph{before} its arguments are read: this means that
+the command can't actually ``have'' arguments itself, but must be
+split in two. So we write:
+\begin{quote}
+\begin{verbatim}
+\def\chord{%
+ \begingroup
+ \catcode`\#=\active
+ \catcode`\b=\active
+ \Xchord
+}
+\def\Xchord#1{%
+ \chordfont#1%
+ \endgroup
+}
+\end{verbatim}
+\end{quote}
+and we can use the command as \cmdinvoke{chord}{F\#} or
+\cmdinvoke{chord}{Bb minor}.
+
+Two features of the coding are important:
+\begin{itemize}
+\item \csx{begingroup} in \csx{chord} opens a group that is closed by
+ \csx{endgroup} in \csx{Xchord}; this group limits the change of
+ category codes, which is the \emph{raison d'\^etre} of the whole
+ exercise.
+\item Although |#| is active while \csx{Xchord} is executed, it's
+ \emph{not} active when it's being defined, so that the use of |#1|
+ doesn't require any special attention.
+\end{itemize}
+
+Note that the technique used in such macros as \csx{chord}, here, is
+analogous to that used in such commands as \csx{verb}; and, in just the
+same way as \csx{verb} (see
+% beware breaking long line
+\htmlonly{``}\Qref[question]{\csx{verb} doesn't work in arguments}{Q-verbwithin}\htmlonly{''}),
+\csx{chord} won't work inside the argument of another command (the
+error messages, if they appear at all, will probably be rather odd).
+
+
+\Question[Q-csname]{Defining a macro from an argument}
+
+It's common to want a command to create another command: often one
+wants the new command's name to derive from an argument. \LaTeX{}
+does this all the time: for example, \csx{newenvironment} creates
+start- and end-environment commands whose names are derived from the
+name of the environment command.
+
+The (seemingly) obvious approach:
+\begin{quote}
+\begin{verbatim}
+\def\relay#1#2{\def\#1{#2}}
+\end{verbatim}
+\end{quote}
+doesn't work (the \TeX{} engine interprets it
+as a rather strange redefinition of |\#|). The trick is to use
+\csx{csname}, which is a \TeX{} primitive for generating command names
+from random text, together with \csx{expandafter}. The definition
+above should read:
+\begin{quote}
+\begin{verbatim}
+\def\relay#1#2{%
+ \expandafter\def\csname #1\endcsname{#2}%
+}
+\end{verbatim}
+\end{quote}
+With this definition, \cmdinvoke{relay}{blah}{bleah} is equivalent to
+\csx{def}\cmdinvoke{blah}{bleah}.
+
+Note that the definition of \csx{relay} omits the braces round the
+`command name' in the \csx{newcommand} it executes. This is
+because they're not necessary (in fact they seldom are), and in this
+circumstance they make the macro code slightly more tedious.
+
+The name created need not (of course) be \emph{just} the argument:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\def\newrace#1#2#3{\expandafter\def
+ \csname start#1\endcsname{%
+ #2%
+ }%
+ \expandafter\def
+ \csname finish#1\endcsname{%
+ #3%
+ }%
+}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\def\newrace#1#2#3{%
+ \expandafter\def\csname start#1\endcsname{%
+ #2%
+ }%
+ \expandafter\def\csname finish#1\endcsname{%
+ #3%
+ }%
+}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+With commands
+\begin{quote}
+\begin{verbatim}
+\def\start#1{\csname start#1\endcsname}
+\def\finish#1{\csname finish#1\endcsname}
+\end{verbatim}
+\end{quote}
+these `races' could behave a bit like \LaTeX{} environments.
+
+\Question[Q-cvtlatex]{Transcribing \LaTeX{} command definitions}
+
+At several places in this \acro{FAQ}, questions are answered in terms
+of how to program a \LaTeX{} macro. Sometimes, these macros might
+also help users of \plaintex{} or other packages; this answer
+attempts to provide a rough-and-ready guide to transcribing such macro
+definitions for use in other packages.
+
+The reason \LaTeX{} has commands that replace \csx{def}, is that
+there's a general philosophy within \LaTeX{} that the user should be
+protected from himself: the user has different commands according to
+whether the command to be defined exists (\csx{renewcommand}) or not
+(\csx{newcommand}), and if its status proves not as the user expected,
+an error is reported. A third definition command,
+\csx{providecommand}, only defines if the target is not already
+defined; \LaTeX{} has no direct equivalent of \csx{def}, which ignores
+the present state of the command. The final command of this sort is
+\csx{DeclareRobustCommand}, which creates a command which is ``robust''
+(i.e., will not expand if subjected to \LaTeX{} ``protected
+expansion''); from the \plaintex{} user's point of view,
+\csx{DeclareRobustCommand} should be treated as a non-checking version
+of \csx{newcommand}.
+
+\LaTeX{} commands are, by default, defined \csx{long}; an optional \texttt{*}
+between the \csx{newcommand} and its (other) arguments specifies that
+the command is \emph{not} to be defined \csx{long}. The \texttt{*} is
+detected by a command \csx{@ifstar} which uses \csx{futurelet} to switch
+between two branches, and gobbles the \texttt{*}: \LaTeX{} users are
+encouraged to think of the \texttt{*} as part of the command name.
+
+\LaTeX{}'s checks for unknown command are done by \csx{ifx} comparison
+of a \csx{csname} construction with \csx{relax}; since the command name
+argument is the desired control sequence name, this proves a little
+long-winded. Since \texttt{\#1} is the requisite argument, we have:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\expandafter\ifx
+ \csname
+ \expandafter\@gobble\string#1%
+ \endcsname
+ \relax
+ ...
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\expandafter\ifx
+ \csname\expandafter\@gobble\string#1\endcsname
+ \relax
+ ...
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+(\csx{@gobble} simply throws away its argument).
+
+The arguments of a \LaTeX{} command are specified by two optional
+arguments to the defining command: a count of arguments (0--9: if the
+count is 0, the optional count argument may be omitted), and a default
+value for the first argument, if the defined command's first argument
+is to be optional. So:
+\begin{quote}
+\begin{verbatim}
+\newcommand\foo{...}
+\newcommand\foo[0]{...}
+\newcommand\foo[1]{...#1...}
+\newcommand\foo[2][boo]{...#1...#2...}
+\end{verbatim}
+\end{quote}
+In the last case, \csx{foo} may be called as \cmdinvoke{foo}{goodbye},
+which is equivalent to \cmdinvoke{foo}[boo]{goodbye} (employing the
+default value given for the first argument), or as
+\cmdinvoke{foo}[hello]{goodbye} (with an explicit first argument).
+
+Coding of commands with optional arguments is exemplified by the
+coding of the last \csx{foo} above:
+\begin{quote}
+\begin{verbatim}
+\def\foo{\futurelet\next\@r@foo}
+\def\@r@foo{\ifx\next[%
+ \let\next\@x@foo
+ \else
+ \def\next{\@x@foo[boo]}%
+ \fi
+ \next
+}
+\def\@x@foo[#1]#2{...#1...#2...}
+\end{verbatim}
+\end{quote}
+
+\Question[Q-empty]{Detecting that something is empty}
+
+Suppose you need to know that the argument of your command is empty:
+that is, to distinguish between \cmdinvoke{cmd}{\relax} % \relax doesn't print
+and \cmdinvoke{cmd}{blah}. This is pretty simple:
+\begin{quote}
+\begin{verbatim}
+\def\cmd#1{%
+ \def\tempa{}%
+ \def\tempb{#1}%
+ \ifx\tempa\tempb
+ <empty case>
+ \else
+ <non-empty case>
+ \fi
+}
+\end{verbatim}
+\end{quote}
+The case where you want to ignore an argument that consists of nothing
+but spaces, rather than something completely empty, is more tricky.
+It's solved in the code fragment \Package{ifmtarg}, which defines
+commands \csx{@ifmtarg} and \csx{@ifnotmtarg}, which examine their
+first argument, and select (in opposite directions) their second or
+third argument. The package's code also appears in the \LaTeX{}
+\Class{memoir} class.
+
+\Package{Ifmtarg} makes challenging reading; there's also a discussion of the
+issue in number two of the ``around the bend'' articles by the late
+lamented Mike Downes.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Around the bend series]\CTANref{aro-bend}
+\item[ifmtarg.sty]\CTANref{ifmtarg}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-whatengine]{Am I using \pdftex{}, \xetex{} or \luatex{}?}
+\AliasQuestion{Q-ifpdf}
+
+You often need to know what ``engine'' your macros are running on (the
+engine is the \tex{}-derivative or \tex{}-alike processor that
+typesets your document). The reason that you need to know is that the
+set of functions available in each engine is different. Thus, for
+\tex{} macros to run on any engine, they need to ``know'' what they
+can and cannot do, which depends on the engine in use. Getting the
+right answer is surprisingly tricky (see below for an elaboration of
+one apparently simple test).
+
+There is now a comprehensive set of packages that answer the question
+for you. They all create a \tex{} conditional command:
+\begin{itemize}
+\item \Package{ifpdf} creates a command \csx{ifpdf},
+\item \Package{ifxetex} creates a command \csx{ifxetex} and
+\item \Package{ifluatex} creates a command \csx{ifluatex}.
+\end{itemize}
+These \tex{} commands may be used within the \latex{} conditional
+framework, as (for example):
+\begin{quote}
+ \csx{ifthenelse}\texttt{\obracesymbol{}}\cmdinvoke{boolean}{pdf}\texttt{\cbracesymbol{}}\texttt{\obracesymbol{}}\meta{if pdf}\texttt{\cbracesymbol{}}\texttt{\obracesymbol{}}\meta{if not pdf}\texttt{\cbracesymbol{}}
+\end{quote}
+
+The \Package{ifxetex} package also provides a command
+\csx{RequireXeTeX} which creates an error if the code is not running
+under \xetex{}; while the other packages don't provide such a command,
+it's not really difficult to write one for yourself.
+
+% khalighi's iftex package, too -- \require's for all engines, but i'm
+% not entirely sure of the conditionals, so "for later" if at all
+
+Now for those who want to do the job for themselves: here's a
+discussion of doing the job for \pdftex{} and \csx{ifpdf}~--- the
+eager programmer can regenerate \csx{ifxetex} or \csx{ifluatex} in the
+same fashion. It's not recommended\dots
+
+Suppose you need to test whether your output will be \acro{PDF} or
+\acro{DVI}. The natural thing is to check whether you have access to
+some \PDFTeX{}-only primitive; a good one to try (not least because it
+was present in the very first releases of \PDFTeX{}) is
+\csx{pdfoutput}. So you try
+\begin{quote}
+\begin{verbatim}
+\ifx\pdfoutput\undefined
+ ... % not running PDFTeX
+\else
+ ... % running PDFTeX
+\fi
+\end{verbatim}
+\end{quote}
+Except that neither branch of this conditional is rock-solid. The
+first branch can be misleading, since the ``awkward'' user could have
+written:
+\begin{quote}
+\begin{verbatim}
+\let\pdfoutput\undefined
+\end{verbatim}
+\end{quote}
+so that your test will falsely choose the first alternative. While
+this is a theoretical problem, it is unlikely to be a major one.
+
+More important is the user who loads a package that uses
+\LaTeX{}-style testing for the command name's existence (for example,
+the \LaTeX{} \Package{graphics} package, which is useful even to the
+\plaintex{} user). Such a package may have gone ahead of you, so the
+test may need to be elaborated:
+\begin{quote}
+\begin{verbatim}
+\ifx\pdfoutput\undefined
+ ... % not running PDFTeX
+\else
+ \ifx\pdfoutput\relax
+ ... % not running PDFTeX
+ \else
+ ... % running PDFTeX
+ \fi
+\fi
+\end{verbatim}
+\end{quote}
+If you only want to know whether some \PDFTeX{} extension (such as
+marginal kerning) is present, you can stop at this point: you know as
+much as you need.
+
+However, if you need to know whether you're creating \acro{PDF}
+output, you also need to know about the value of \csx{pdfoutput}:
+\begin{quote}
+\begin{verbatim}
+\ifx\pdfoutput\undefined
+ ... % not running PDFTeX
+\else
+ \ifx\pdfoutput\relax
+ ... % not running PDFTeX
+ \else
+ % running PDFTeX, with...
+ \ifnum\pdfoutput>0
+ ... % PDF output
+ \else
+ ... % DVI output
+ \fi
+ \fi
+\fi
+\end{verbatim}
+\end{quote}
+\begin{ctanrefs}
+\item[ifpdf.sty]Distributed as part Heiko Oberdiek's bundle
+ \CTANref{oberdiek}[ifpdf]
+\item[ifluatex.sty]Distributed as part of Heiko Oberdiek's bundle
+ \CTANref{oberdiek}[ifluatex]
+\item[ifxetex.sty]\CTANref{ifxetex}
+\end{ctanrefs}
+\LastEdit{2012-02-13}
+
+\Question[Q-subverttoks]{Subverting a token register}
+
+A common requirement is to ``subvert'' a token register that other
+macros may use. The requirement arises when you want to add something
+to a system token register (\csx{output} or \csx{every*}), but know
+that other macros use the token register, too. (A common requirement
+is to work on \csx{everypar}, but \LaTeX{} changes \csx{everypar} at
+every touch and turn.)
+
+The following technique, due to David Kastrup, does what you need, and
+allows an independent package to play the exact same game:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\let\mypkg@@everypar\everypar
+\newtoks\mypkg@everypar
+\mypkg@everypar\expandafter{\the\everypar}
+\mypkg@@everypar{\mypkgs@ownstuff\the\mypkg@everypar}
+\def\mypkgs@ownstuff{%
+ <stuff to do at the start of the token register>%
+}
+\let\everypar\mypkg@everypar
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\let\mypkg@@everypar\everypar
+\newtoks\mypkg@everypar
+\mypkg@everypar\expandafter{\the\everypar}
+\mypkg@@everypar{\mypkgs@ownstuff
+ \the\mypkg@everypar}
+\def\mypkgs@ownstuff{%
+ <stuff to do at the start of
+ the token register>%
+}
+\let\everypar\mypkg@everypar
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+As you can see, the package (\Package{mypkg})
+\begin{itemize}
+\item creates an alias for the existing ``system'' \csx{everypar}
+ (which is frozen into any surrounding environment, which will carry
+ on using the original);
+\item creates a token register to subvert \csx{everypar} and
+ initialises it with the current contents of \csx{everypar};
+\item sets the ``old'' \csx{everypar} to execute its own extra code,
+ as well as the contents of its own token register;
+\item defines the macro for the extra code; and
+\item points the token \csx{everypar} at the new token register.
+\end{itemize}
+and away we go.
+
+The form \csx{mypkg@...} is (sort of) blessed for \LaTeX{} package
+internal names, which is why this example uses macros of that form.
+
+\Question[Q-isdef]{Is this command defined?}
+
+Macro sets from the earliest days of \TeX{} programming may be
+observed to test whether commands exist by using
+\begin{quote}
+\csx{ifx} \csx{}\texttt{\emph{command}} \csx{undefined} \meta{stuff} \dots{}
+\end{quote}
+(which of course actually tests that the command \emph{doesn't}
+exist). \LaTeX{} programmers can make use of the internal command
+\begin{quote}
+ \cmdinvoke*{@ifundefined}{cmd name}{action1}{action2}
+\end{quote}
+which executes \texttt{action1} if the command is undefined, and
+\texttt{action2} if it is defined
+(\emph{cmd name} is the command name only, omitting the `|\|' character).
+
+The \csx{@ifundefined} command is based on the sequence
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\expandafter
+ \ifx\csname cmd name\endcsname\relax
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\expandafter \ifx \csname cmd name\endcsname \relax
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+which relies on the way \csx{csname} works: if the command doesn't
+exist, it simply creates it as an alias for \csx{relax}.
+
+So: what is wrong with these techniques?
+
+Using \csx{undefined} blithely assumes that the command is indeed not
+defined. This isn't entirely safe; one could make the name more
+improbable, but that may simply make it more difficult to spot a
+problem when things go wrong. \LaTeX{} programmers who use the
+technique will typically employ \csx{@undefined}, adding a single
+level of obscurity.
+
+The \csx{@ifundefined} mechanism has the unfortunate property of
+polluting the name space: each test that turns out undefined adds a
+name to the set \TeX{} is holding, and often all those ``\csx{relax}''
+names serve no purpose whatever. Even so (sadly) there are places in
+the code of \LaTeX{} where the existence of the \csx{relax} is relied
+upon, after the test, so we can't get away from \csx{@ifundefined}
+altogether.
+
+David Kastrup offers the (rather tricky)
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+{\expandafter}\expandafter\ifx \csname cmd name\endcsname\relax ...
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+{\expandafter}\expandafter
+ \ifx \csname cmd name\endcsname \relax ...
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+which ``creates'' the \csx{relax}-command inside the group of the first
+\csx{expandafter}, therefore forgets it again once the test is done.
+The test is about as good as you can do with macros.
+
+The \Qref*{\eTeX{} system}{Q-etex} system comes to our help here: it
+defines two new primitives:
+\begin{itemize}
+\item \csx{ifdefined}, which tests whether a thing is defined (the
+ negative of comparing with \csx{undefined}, as it were), and
+\item \csx{ifcsname} \texttt{cmd name}\csx{endcsname}, which does the
+ negative of \csx{@ifundefined} without the \csx{relax}-command
+ side-effect.
+\end{itemize}
+So, in an \eTeX{}-based system, the following two conditional clauses do
+the same thing:
+\begin{quote}
+\begin{verbatim}
+\ifdefined\foo
+ \message{\string\foo\space is defined}%
+\else
+ \message{no command \string\foo}%
+\fi
+%
+\ifcsname foo\endcsname
+ \message{\string\foo\space is defined}%
+\else
+ \message{no command \string\foo}%
+\fi
+\end{verbatim}
+\end{quote}
+However, after using the \LaTeX{}
+\cmdinvoke{@ifundefined}{foo}\dots{}, the conditionals will detect the
+command as ``existing'' (since it has been \csx{let} to \csx{relax});
+so it is important not to mix mechanisms for detecting the state of a
+command.
+
+Since most distributions nowadays use \eTeX{} as their base executable
+for most packages, these two primitives may be expected appear widely
+in new macro packages.
+
+\subsection{\LaTeX{} macro tools and techniques}
+
+\Question[Q-plninltx*]{Using Plain or primitive commands in \LaTeX{}}
+
+It's well-known that \LaTeX{} commands tend to be more complex, and to
+run more slowly than, any \plaintex{} (or primitive) command that they
+replace. There is therefore great temptation not to use \LaTeX{}
+commands when macro programming. Nevertheless, the general rule is
+that you should use \LaTeX{} commands, if there are seeming
+equivalents. The exception is when you are sure you know the
+differences between the two commands and you know that you need the
+\plaintex{} version. So, for example, use \csx{mbox} in place of \csx{hbox}
+unless you know that the extras that \LaTeX{} provides in \csx{mbox}
+would cause trouble in your application. Similarly, use
+\csx{newcommand} (or one of its relatives) unless you need one of the
+constructs that cannot be achieved without the use of \csx{def} (or friends).
+
+As a general rule, any \LaTeX{} text command will start a new
+paragraph if necessary; this isn't the case with \plaintex{}
+commands, a fact which has a potential to confuse.
+
+The commands \csx{smallskip}, \csx{medskip} and \csx{bigskip} exist both
+in \plaintex{} and \LaTeX{}, but behave slightly differently: in
+\plaintex{} they terminate the current paragraph, but in \LaTeX{} they
+don't. The command \csx{line} is part of picture mode in \LaTeX{},
+whereas it's defined as ``\csx{hbox}\texttt{ to }\csx{hsize}'' in
+\plaintex{}. (There's no equivalent for users of the \plaintex{} command in
+\LaTeX{}: an equivalent appears as the internal command \csx{@@line}).
+
+Maths setting shows a case where the \LaTeX{} version \emph{is}
+essentially equivalent to the \TeX{} primitive commands: the \LaTeX{}
+\csx{(}\texttt{\ ...\ }\csx{)} does essentially no different to the
+primitive \texttt{\$\ ...\ \$}; except for checking that you're not
+attempting to open a maths environment when you're already in one, or
+attempting to close one when you're not.
+However, \csx{[}\texttt{\ ...\ }\csx{]} has a more significant
+difference from \texttt{\$\$\ ...\ \$\$}: the primitive version, used
+in \LaTeX{}, can miss the effect of the class option \pkgoption{fleqn}.
+
+Font handling is, of course, wildly different in \plaintex{} and
+\LaTeX{}. \plaintex{}'s font loading command
+(\csx{font}\csx{foo=}\meta{fontname}) and its \LaTeX{} equivalent
+(\csx{newfont}) should be avoided wherever possible. They are only
+safe in the most trivial contexts, and are potential sources of great
+confusion in many circumstances. Further discussion of this issue
+may be found in ``\Qref*{What's wrong with \csx{newfont}?}{Q-newfont*}''.
+\LastEdit{2013-09-27}
+
+\Question[Q-atsigns]{\csx{@} and \texttt{@} in macro names}
+
+Macro names containing \texttt{@} are \emph{internal} to \LaTeX{}, and
+without special treatment just don't work in ordinary use. A nice
+example of the problems caused is discussed in % ! beware line break
+\Qref*{\csx{@} in vertical mode}{Q-atvert}''.
+
+The problems users see are caused by copying bits of a class
+(\extension{cls} file) or
+package (\extension{sty} file) into a document, or by including a class or
+package file into a \LaTeX{} document by some means other than
+\csx{documentclass} or \csx{usepackage}. \LaTeX{} defines internal
+commands whose names contain the character \texttt{@} to
+avoid clashes between its internal names and names that we would
+normally use in our documents. In order that these commands may work
+at all, \csx{documentclass} and \csx{usepackage} play around with the
+meaning of \texttt{@}.
+
+If you've included a file some other way (for example, using
+\csx{input}), you can probably solve the problem by using the correct
+command.
+
+If you're using a fragment of a package or class, you may well feel
+confused: books such as the first edition of the % ! line break
+\Qref*{The \LaTeX{} Companion}{Q-latex-books}
+are full of fragments of packages as examples for you to employ.
+The second edition of the \emph{Companion} makes clearer how you
+should use these fragments, and in addition, the code of
+all the examples is now available on \acro{CTAN}.
+To see the technique in practice, look at the example below, from file
+\File{2-2-7.ltx} in the \emph{Companion} examples directory:
+\begin{quote}
+\begin{verbatim}
+\makeatletter
+\renewcommand\subsection{\@startsection
+ {subsection}{2}{0mm}%name, level, indent
+ {-\baselineskip}% beforeskip
+ {0.5\baselineskip}% afterskip
+ {\normalfont\normalsize\itshape}}% style
+\makeatother
+\end{verbatim}
+\end{quote}
+(That example appears on page 29 of \emph{The \LaTeX{} Companion},
+second edition.)
+
+The alternative is to treat all these fragments as a package proper,
+bundling them up into a \extension{sty} file and including them with
+\csx{usepackage}; this way you hide your \LaTeX{} internal code somewhere
+that \LaTeX{} internal code is expected, which often looks `tidier'.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Examples from the Companion]\CTANref{tlc2}
+\end{ctanrefs}
+\LastEdit{2011-06-01}
+
+\Question[Q-protect]{What's the reason for `protection'?}
+
+Sometimes \LaTeX{} saves data it will reread later. These data are
+often the argument of some command; they are the so-called moving
+arguments. (`Moving' because data are moved around.) Candidates
+are all arguments that may go into table of contents, list of figures,
+\emph{etc}.; namely, data that are written to an auxiliary file and
+read in later. Other places are those data that might appear in head-
+or footlines. Section headings and figure captions are the most
+prominent examples; there's a complete list in Lamport's book
+(see \Qref[question]{\TeX{}-related books}{Q-latex-books}).
+
+What's going on really, behind the scenes? The commands in moving
+arguments are normally expanded to their internal structure during the
+process of saving. Sometimes this expansion results in invalid \TeX{}
+code, which shows either during expansion or when the code is
+processed again. Protecting a command, using
+``\csx{protect}\csx{cmd}'' tells \LaTeX{} to save \csx{cmd} as
+\csx{cmd}, without expanding it at all.
+
+So, what is a `fragile command'?~--- it's a command that expands into
+illegal \TeX{} code during the save process.
+
+What is a `robust command'?~--- it's a command that expands into legal
+\TeX{} code during the save process.
+
+Lamport's book says in its description of every LaTeX command whether
+it is `robust' or `fragile'; it also says that every command with an
+optional argument is fragile. The list isn't reliable, and neither
+is the assertion about optional arguments; the statements may have
+been true in early versions of \LaTeXe{} but are not any longer
+necessarily so:
+\begin{itemize}
+\item Some fragile commands, such as \csx{cite}, have been made robust
+ in later revisions of \LaTeX{}.
+\item Some commands, such as \csx{end} and \csx{nocite}, are fragile
+ even though they have no optional arguments.
+\item The ``user's way'' of creating a command with an optional
+ argument (using \csx{newcommand} or \csx{newcommand*}) now always
+ creates a robust command (though macros without optional arguments
+ may still be fragile if they do things that are themselves fragile).
+\item There is no reason that a package author should not also make
+ robust commands with optional arguments as part of the package.
+\item Some robust commands are redefined by certain packages to be
+ fragile (the \csx{cite} command commonly suffers this treatment).
+\end{itemize}
+Further, simply ``hiding'' a fragile command in another command, has
+no effect on fragility. So, if \csx{fred} is fragile, and you write:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\jim}{\fred}
+\end{verbatim}
+\end{quote}
+then \csx{jim} is fragile too. There is, however, the
+\csx{newcommand}-replacement \csx{DeclareRobustCommand}, which
+\emph{always} creates a robust command (whether or not it has optional
+arguments). The syntax of \csx{DeclareRobustCommand} is substantially
+identical to that of \csx{newcommand}, and if you do the wrapping
+trick above as:
+\begin{quote}
+\begin{verbatim}
+\DeclareRobustCommand{\jim}{\fred}
+\end{verbatim}
+\end{quote}
+then \csx{jim} is robust.
+
+Finally, we have the \Package{makerobust} package, which defines
+\csx{MakeRobustCommand} to convert a command to be robust. With the
+package, the ``wrapping'' above can simply be replaced by:
+\begin{quote}
+\begin{verbatim}
+\MakeRobustCommand\fred
+\end{verbatim}
+\end{quote}
+Whereafter, \csx{fred} is robust. Using the package may be reasonable
+if you have lots of fragile commands that you need to use in moving
+arguments.
+
+In short, the situation is confusing. No-one believes this is
+satisfactory; the \LaTeX{} team have removed the need for
+protection of some things, but the techniques available in
+current \LaTeX{} mean that this is an expensive exercise. It remains
+a long-term aim of the team to remove all need for \csx{protect}ion.
+\begin{ctanrefs}
+\item[makerobust.sty]Distributed as part of Heiko Oberdiek's bundle
+ \CTANref{oberdiek}[makerobust]
+\end{ctanrefs}
+\LastEdit{2011-06-01}
+
+\Question[Q-edef]{\csx{edef} does not work with \csx{protect}}
+
+Robust \LaTeX{} commands are either ``naturally robust''~--- meaning that
+they never need \csx{protect}, or ``self-protected''~--- meaning that
+they have \csx{protect} built in to their definition in some
+way. Self-protected commands, and fragile commands with
+\csx{protect}ion are only robust in a context where the \csx{protect}
+mechanism is properly handled. The body of an \csx{edef} definition
+doesn't handle \csx{protect} properly, since \csx{edef} is a \TeX{}
+primitive rather than a \LaTeX{} command.
+
+This problem is resolved by a \LaTeX{} internal command
+\csx{protected@edef}, which does the job of \csx{edef} while keeping the
+\csx{protect} mechanism working. There's a corresponding
+\csx{protected@xdef} which does the job of \csx{xdef}.
+
+Of course, these commands need to be tended carefully, since they're
+% beware line break on next line
+internal: see \Qref[question]{'@' in control sequence names}{Q-atsigns}.
+
+\Question[Q-ltxcmds]{The definitions of \LaTeX{} commands}
+
+There are several reasons to want to know the definitions of \LaTeX{}
+commands: from the simplest ``idle curiosity'', to the pressing need
+to patch something to make it ``work the way you want it''. None of
+these are \emph{pure} motives, but knowledge and expertise seldom
+arrive through the purest of motives.
+
+Using a \tex{} executable of some sort, the simple answer is to try
+\csx{show}, in a run that is taking commands from the terminal:
+\begin{quote}
+\begin{verbatim}
+*\makeatletter
+*\show\protected@edef
+> \protected@edef=macro:
+->\let \@@protect \protect
+ \let \protect \@unexpandable@protect
+ \afterassignment \restore@protect \edef .
+\end{verbatim}
+\end{quote}
+(I've rearranged the output there, from the rather confused version
+\TeX{} itself produces.)
+
+So, what about \csx{@unexpandable@protect}?:
+\begin{quote}
+\begin{verbatim}
+*\show\@unexpandable@protect
+> \@unexpandable@protect=macro:
+->\noexpand \protect \noexpand .
+\end{verbatim}
+\end{quote}
+and we're starting to see how one part of the \csx{protect}ion
+mechanism works (one can probably fairly safely guess what
+\csx{restore@protect} does).
+
+Many kernel commands are declared robust:
+\begin{quote}
+\begin{verbatim}
+*\show\texttt
+> \texttt=macro:
+->\protect \texttt .
+\end{verbatim}
+\end{quote}
+so that \csx{show} isn't much help. Define a command \csx{pshow} as
+shown below, and simply execute the command to find its definition:
+\begin{quote}
+\begin{verbatim}
+*\def\pshow#1{{\let\protect\show #1}}
+*\pshow\texttt
+> \texttt =\long macro:
+#1->\ifmmode \nfss@text {\ttfamily #1}%
+ \else \hmode@bgroup \text@command {#1}%
+ \ttfamily \check@icl #1\check@icr
+ \expandafter \egroup \fi .
+\end{verbatim}
+\end{quote}
+Note that the command name that is protected is the `base' command,
+with a space appended. This is cryptically visible, in a couple of
+places above. (Again, the output has been sanitised.)
+% Similar provisions are made in the package \Package{show2e} but i
+% don't understand them yet...
+
+The command \ProgName{texdef} (or \ProgName{latexdef}~--- the same
+command with a different name) will do all that for you and return the
+results slightly more tidily than \latex{} itself manages. For
+example:
+\begin{quote}
+\begin{verbatim}
+$ latexdef texttt
+\end{verbatim}
+\end{quote}
+gives:
+\begin{quote}
+\begin{verbatim}
+macro:->\protect \texttt
+
+\texttt :
+#1->\ifmmode \nfss@text {\ttfamily #1}%
+ \else \hmode@bgroup \text@command {#1}%
+ \ttfamily \check@icl #1\check@icr
+ \expandafter \egroup \fi .
+\end{verbatim}
+\end{quote}
+(again, the output has been sanitised~--- but we see that
+\ProgName{latexdef} has useful `intelligence' in it, as it has spotted
+and dealt with the \csx{protect}.)
+
+With the \texttt{-s} switch, \ProgName{latexdef} will give you a
+source location:
+\begin{quote}
+\begin{verbatim}
+$ latexdef -s texttt
+% latex.ltx, line 3736:
+\DeclareTextFontCommand{\texttt}{\ttfamily}
+\end{verbatim}
+\end{quote}
+though one should note that it doesn't give you the detail of the
+actual coding, merely the definition's location.
+
+Environments also surrender their details to \ProgName{latexdef}:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+$ latexdef -E itemize
+
+\itemize:
+macro:->\ifnum \@itemdepth >\thr@@ \@toodeep
+ \else \advance \@itemdepth \@ne
+ \edef \@itemitem {labelitem\romannumeral \the \@itemdepth}%
+ \expandafter \list \csname \@itemitem \endcsname
+ {\def \makelabel ##1{\hss \llap {##1}}}%
+ \fi
+
+\enditemize:
+macro:->\global \advance \@listdepth \m@ne \endtrivlist
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+$ latexdef -E itemize
+
+\itemize:
+macro:->\ifnum \@itemdepth >\thr@@ \@toodeep
+ \else \advance \@itemdepth \@ne
+ \edef \@itemitem {labelitem\romannumeral
+ \the \@itemdepth}%
+ \expandafter \list
+ \csname \@itemitem \endcsname
+ {\def \makelabel ##1{\hss \llap {##1}}}%
+ \fi
+
+\enditemize:
+macro:->\global \advance \@listdepth \m@ne
+ \endtrivlist
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+(Yet again, this is a sanitised version of the macro definition
+output, which appears as a single very wide line for each definition.)
+
+If one has a malleable text editor, the same investigation may be
+conducted by examining the file \File{latex.ltx} (which is usually to
+be found, in a \acro{TDS} system, in directory \path{tex/latex/base}).
+
+In fact, \File{latex.ltx} is the product of a \ProgName{docstrip}
+process on a large number of \Qref*{\extension{dtx} files}{Q-dtx}, and
+you can refer to those instead. The \LaTeX{} distribution includes a file
+\File{source2e.tex}, and most systems retain it, again in
+\path{tex/latex/base}. \File{Source2e.tex} may be processed to
+provide a complete source listing of the \LaTeX{} kernel (in fact the
+process isn't entirely straightforward, but the file produces messages
+advising you what to do). The result is a huge document, with a
+line-number index of control sequences the entire kernel and a
+separate index of changes recorded in each of the files since the
+\LaTeX{} team took over.
+
+The printed kernel is a nice thing to have, but it's unwieldy and sits
+on my shelves, seldom used. One problem is that the comments are
+patchy: the different modules range from well and lucidly documented,
+through modules documented only through an automatic process that
+converted the documentation of the source of \LaTeXo{}, to modules
+that hardly had any useful documentation even in the \LaTeXo{} original.
+
+In fact, each kernel module \extension{dtx} file will process separately
+through \LaTeX{}, so you don't have to work with the whole of
+\File{source2e}. You can easily determine which module defines the
+macro you're interested in: use your ``malleable text editor'' to find
+the definition in \File{latex.ltx}; then search backwards from that
+point for a line that starts % ! line break
+\texttt{\textpercent{}\textpercent{}\textpercent{}\ From File:}~--- that line
+tells you which \extension{dtx} file contains the definition you are interested
+in. Doing this for \csx{protected@edef}, we find:
+\begin{quote}
+\begin{verbatim}
+%%% From File: ltdefns.dtx
+\end{verbatim}
+\end{quote}
+When we come to look at it, \File{ltdefns.dtx} proves to contain
+quite a dissertation on the methods of handling \csx{protect}ion; it
+also contains some automatically-converted \LaTeXo{} documentation.
+
+And of course, the kernel isn't all of \LaTeX{}: your command may be
+defined in one of \LaTeX{}'s class or package files. For example, we
+find a definition of \csx{thebibliography} in \Class{article}, but
+there's no \File{article.dtx}. Some such files are generated from
+parts of the kernel, some from other files in the distribution. You
+find which by looking at the start of the file: in \File{article.cls},
+we find:
+\begin{quote}
+\begin{verbatim}
+%% This is file `article.cls',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% classes.dtx (with options: `article')
+\end{verbatim}
+\end{quote}
+so we need to format \File{classes.dtx} to see the definition in
+context.
+
+All these .dtx files are on \acro{CTAN} as part of the main \LaTeX{}
+distribution.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\LaTeX{} distribution]\CTANref{latex}
+\item[texdef,\nothtml{\rmfamily aka} latexdef]\CTANref{texdef}
+\end{ctanrefs}
+\LastEdit{2013-09-27}
+
+\Question[Q-oarglikesect]{Optional arguments like \csx{section}}
+
+Optional arguments, in macros defined using \csx{newcommand}, don't
+quite work like the optional argument to \csx{section}. The default
+value of \csx{section}'s optional argument is the value of the
+mandatory argument, but \csx{newcommand} requires that you `know' the
+value of the default beforehand.
+
+The requisite trick is to use a macro in the optional argument:
+\begin{quote}
+\begin{verbatim}
+\documentclass{article}
+\newcommand\thing[2][\DefaultOpt]{%
+ \def\DefaultOpt{#2}%
+ optional arg: #1, mandatory arg: #2%
+}
+\begin{document}
+\thing{manda}% #1=#2
+
+\thing[opti]{manda}% #1="opti"
+\end{document}
+\end{verbatim}
+\end{quote}
+\LaTeX{} itself has a trickier (but less readily understandable)
+method, using a macro \csx{@dblarg}; inside \LaTeX{}, the example
+above would have been programmed:
+\begin{quote}
+\begin{verbatim}
+\newcommand\thing{\@dblarg\@thing}
+\newcommand\@thing[2][\@error]{%
+ optional arg: #1, mandatory arg: #2%
+}
+\end{verbatim}
+\end{quote}
+In that code, \csx{@thing} is only ever called with an optional and a
+mandatory argument; if the default from the \csx{newcommand} is
+invoked, a bug in user code has bitten\dots{}
+
+\Question[Q-twooptarg]{More than one optional argument}
+
+If you've already read % ! line break
+``\Qref*[question]{breaking the 9-argument limit}{Q-moren9}''.
+you can probably guess the ``simple'' solution to this problem:
+command relaying.
+
+\LaTeX{} allows commands with a single optional argument thus:
+\begin{quote}
+\begin{verbatim}
+ \newcommand{\blah}[1][Default]{...}
+\end{verbatim}
+\end{quote}
+
+You may legally call such a command either with its optional argument
+present, as
+\cmdinvoke{blah}[nonDefault] or without, as \csx{blah}; in the latter
+case, the code of \csx{blah} will have an argument of |Default|.
+
+To define a command with two optional arguments, we use the relaying
+technique, as follows:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\blah}[1][Default1]{%
+ \def\ArgI{{#1}}%
+ \BlahRelay
+}
+\newcommand\BlahRelay[1][Default2]{%
+ % the first optional argument is now in
+ % \ArgI
+ % the second is in #1
+ ...%
+}
+\end{verbatim}
+\end{quote}
+Of course, \csx{BlahRelay} may have as many mandatory arguments as are
+allowed, after allowance for the one taken up with its own
+optional argument~--- that is, 8.
+
+Variants of \csx{newcommand} (and friends), with names like
+\csx{newcommandtwoopt}, are available in the \Package{twoopt} package.
+However, if you can, it's probably better to learn to write the commands
+yourself, just to see why they're not even a good idea from the
+programming point of view.
+
+A command with two optional arguments strains the limit of what's
+sensible: obviously you can extend the technique to provide as many
+optional arguments as your fevered imagination can summon. However,
+see the comments on the use of the \Package{keyval} package, in
+``\Qref*[question]{breaking the 9-argument limit}{Q-moren9}'',
+which offers an alternative way forward.
+
+If you must, however, consider the \Package{optparams} or
+\Package{xargs} packages. \Package{Optparams}
+provides a \csx{optparams} command that you use as an intermediate in
+defining commands with up to nine optional arguments. The
+documentation shows examples of commands with four optional arguments
+(and this from an author who has his own key-value package!).
+
+The \Package{xargs} package uses a key-value package
+(\Package{xkeyval}) to \emph{define} the layout of the optional
+arguments. Thus
+\begin{quote}
+\begin{verbatim}
+\usepackage{xargs}
+...
+\newcommandx{\foo}[3][1=1, 3=n]{...}
+\end{verbatim}
+\end{quote}
+defines a command \csx{foo} that has an optional first argument
+(default 1), a mandatory second argument, and an optional third
+argument (default n).
+
+An alternative approach is offered by Scott Pakin's
+\ProgName{newcommand} program, which takes a command name and a
+definition of a set of command arguments (in a fairly
+readily-understood language), and emits \AllTeX{} macros which enable
+the command to be defined. The command requires that a
+\ProgName{Python} interpreter (etc.\@) be installed on your computer.
+\begin{ctanrefs}
+\item[newcommand.py]\CTANref{newcommand}
+\item[optparams.sty]Distributed as part of \CTANref{sauerj}[optparams]
+\item[twoopt.sty]Distributed as part of \CTANref{oberdiek}[twoopt]
+\item[xargs.sty]\CTANref{xargs}
+\item[xkeyval.sty]\CTANref{xkeyval}
+\end{ctanrefs}
+
+\Question[Q-cmdstar]{Commands defined with * options}
+
+\LaTeX{} commands commonly have ``versions'' defined with an asterisk
+tagged onto their name: for example \csx{newcommand} and
+\csx{newcommand*} (the former defines a \csx{long} version of the
+command).
+
+The simple-minded way for a user to write such a command involves use
+of the \Package{ifthen} package:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+\newcommand{\mycommand}[1]{\ifthenelse{\equal{#1}{*}}%
+ {\mycommandStar}%
+ {\mycommandNoStar{#1}}%
+}
+\newcommand{\mycommandStar}{starred version}
+\newcommand{\mycommandNoStar}[1]{normal version}
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+\newcommand{\mycommand}[1]{%
+ \ifthenelse{\equal{#1}{*}}%
+ {\mycommandStar}%
+ {\mycommandNoStar{#1}}%
+}
+\newcommand{\mycommandStar}%
+ {starred version}
+\newcommand{\mycommandNoStar}[1]%
+ {normal version}
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+This does the trick, for sufficiently simple commands, but it has
+various tiresome failure modes, and it requires \csx{mycommandnostar}
+to take an argument.
+
+The \LaTeX{} kernel does a lot of this, and has its own command,
+\csx{@ifstar} (which needs `internal command protection', cf.
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\makeatletter
+\newcommand{\mycommand}{%
+ \@ifstar
+ \mycommandStar%
+ \mycommandNoStar%
+\makeatother
+}
+\newcommand{\mycommandStar}{starred version}
+\newcommand{\mycommandNoStar}{normal version}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\makeatletter
+\newcommand{\mycommand}{\@ifstar
+ \mycommandStar%
+ \mycommandNoStar%
+}
+\makeatother
+\newcommand{\mycommandStar}{starred version}
+\newcommand{\mycommandNoStar}{normal version}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+(Note that arguments to \csx{mycommandStar} and \csx{mycommandNoStar}
+are independent~--- either can have their own arguments, unconstrained
+by the technique we're using, unlike the trick described above.)
+The \csx{@ifstar} trick is all very well, is fast and efficient, but
+it requires that the definition be % ! line break
+\Qref*{\csx{makeatletter} protected}{Q-atsigns}.
+
+A pleasing alternative is the \Package{suffix} package. This elegant
+piece of code allows you to define variants of your commands:
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+\newcommand\mycommand{normal version}
+\WithSuffix\newcommand\mycommand*%
+ {starred version}
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+\newcommand\mycommand{normal version}
+\WithSuffix\newcommand\mycommand*{starred version}
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+The package needs \Qref*{\elatex{}}{Q-etex}, but any new enough
+distribution defines \LaTeX{} as \elatex{} by default. Command
+arguments may be specified in the normal way, in both command
+definitions (after the ``\texttt{*}'' in the \csx{WithSuffix}
+version). You can also use the \TeX{} primitive commands, creating a
+definition like:
+\begin{quote}
+\begin{verbatim}
+\WithSuffix\gdef\mycommand*{starred version}
+\end{verbatim}
+\end{quote}
+
+For those of an adventurous disposition, a further option is to use
+the \Package{xparse} package from the \Package{l3packages}
+distribution. The package defines a bunch of commands (such as
+\csx{NewDocumentCommand}) which are somewhat analagous to
+\csx{newcommand} and the like, in \latexe{}. The big difference is
+the specification of command arguments; for each argument, you have a
+set of choices in the command specification. So, to create a
+*-command (in \latexe{} style), one might write:
+\begin{quote}
+\begin{verbatim}
+\NewDocumentCommand \foo { s m } {%
+ % #1 is the star indicator
+ % #2 is a mandatory argument
+ ...
+}
+\end{verbatim}
+\end{quote}
+The ``star indicator'' (\texttt{s}) argument appears as \texttt{\#1}
+and will take values \csx{BooleanTrue} (if there was a star) or
+\csx{BooleanFalse} (otherwise); the other (\texttt{m}) argument is a
+normal \tex{}-style mandatory argument, and appears as \texttt{\#2}.
+
+While \Package{xparse} provides pleasing command argument
+specifications, it \emph{is} part of the % ! line break
+\Qref*{\latex{}~3 experimental harness}{Q-LaTeX3}.
+Simply loading the package to provide \csx{DeclareDocumentCommand}
+``pulls in'' all of the \latex{}3 kernel (a large bunch of packages)
+via the \Package{expl3} package.
+\begin{ctanrefs}
+\item[ifthen.sty]Part of the \LaTeX{} distribution
+\item[suffix.sty]Distributed as part of \CTANref{bigfoot}[suffix]
+\item[xparse.sty]Distributed as part of \CTANref{l3packages}[xparse]
+\item[expl3.sty]Distributed as part of \CTANref{l3kernel}[expl3]
+\end{ctanrefs}
+\LastEdit{2014-04-04}
+
+\nothtml{\hrule height 0pt \nobreak\vskip0pt plus2.5in\vskip 0pt\relax}
+\Question[Q-ltxabbrv]{\LaTeX{} internal ``abbreviations'', etc.}
+
+In the deeps of time, when \TeX{} first happened, computers had
+extremely limited memory, and were (by today's standards) painfully
+slow. When \LaTeX{} came along, things weren't much better, and even
+when \LaTeXe{} appeared, there was a strong imperative to save memory
+space (and to a lesser extent) \acro{CPU} time.
+
+From the very earliest days, Knuth used shortcut macros to speed
+things up. \LaTeX{}, over the years, has extended Knuth's list by a
+substantial amount. An interesting feature of the ``abbreviations'' is
+that on paper, they may look longer than the thing they stand for;
+however, to \AllTeX{} they \emph{feel} smaller\dots{}
+
+The table at the end of this answer lists the commonest of these
+``abbreviations''. It is not complete; as always, if the table
+doesn't help, try the \LaTeX{} source. The table lists each
+abbreviation's \emph{name} and its \emph{value}, which provide most of
+what a user needs to know. The table also lists the abbreviation's
+\emph{type}, which is a trickier concept: if you need to know, the
+only real confusion is that the abbreviations labelled `defn' are
+defined using an \csx{\emph{xxxx}def} command.
+
+\begin{tabular}{lll}
+Name \tbamp Type \tbamp Value \tbeol
+\tbhline
+\csx{m@ne} \tbamp count \tbamp \ensuremath{-1} \tbeol
+\csx{p@} \tbamp dimen \tbamp 1pt \tbeol
+\csx{z@} \tbamp dimen \tbamp 0pt \tbeol
+\csx{z@skip} \tbamp skip \tbamp 0pt plus 0pt minus 0pt \tbeol
+\tbhline
+\csx{@ne} \tbamp defn \tbamp 1 \tbeol
+\csx{tw@} \tbamp defn \tbamp 2\tbeol
+\csx{thr@@} \tbamp defn \tbamp 3 \tbeol
+\csx{sixt@@n} \tbamp defn \tbamp 16 \tbeol
+\csx{@cclv} \tbamp defn \tbamp 255 \tbeol
+\csx{@cclvi} \tbamp defn \tbamp 256 \tbeol
+\csx{@m} \tbamp defn \tbamp 1000 \tbeol
+\csx{@M} \tbamp defn \tbamp 10000 \tbeol
+\csx{@MM} \tbamp defn \tbamp 20000 \tbeol
+\tbhline
+\csx{@vpt} \tbamp macro \tbamp 5 \tbeol
+\csx{@vipt} \tbamp macro \tbamp 6 \tbeol
+\csx{@viipt} \tbamp macro \tbamp 7 \tbeol
+\csx{@viiipt} \tbamp macro \tbamp 8 \tbeol
+\csx{@ixpt} \tbamp macro \tbamp 9 \tbeol
+\csx{@xpt} \tbamp macro \tbamp 10 \tbeol
+\csx{@xipt} \tbamp macro \tbamp 10.95 \tbeol
+\csx{@xiipt} \tbamp macro \tbamp 12 \tbeol
+\csx{@xivpt} \tbamp macro \tbamp 14.4 \tbeol
+\csx{@xviipt} \tbamp macro \tbamp 17.28 \tbeol
+\csx{@xxpt} \tbamp macro \tbamp 20.74 \tbeol
+\csx{@xxvpt} \tbamp macro \tbamp 24.88 \tbeol
+\tbhline
+\csx{@plus} \tbamp macro \tbamp ``\texttt{plus}'' \tbeol
+\csx{@minus} \tbamp macro \tbamp ``\texttt{minus}'' \tbeol
+%\csx{hb@xt@} \tbamp macro \tbamp ``\csx{hbox} \texttt{to}''
+\end{tabular}
+
+\Question[Q-ltxhash]{Defining \LaTeX{} commands within other commands}
+
+\LaTeX{} command definition is significantly different from the \TeX{}
+primitive form discussed in an % ! line break
+\Qref*[\htmlonly]{earlier question}{Q-hash} about definitions within
+macros.
+
+In most ways, the \LaTeX{} situation is simpler (at least in part
+because it imposes more restrictions on the user); however, defining a
+command within a command still requires some care.
+
+The earlier question said you have to double the |#| signs in command
+definitions: in fact, the same rule holds, except that \LaTeX{}
+already takes care of some of the issues, by generating argument lists
+for you.
+
+The basic problem is that:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\abc}[1]{joy, oh #1!%
+ \newcommand{\ghi}[1]{gloom, oh #1!}%
+}
+\end{verbatim}
+\end{quote}
+followed by a call:
+\begin{quote}
+\begin{verbatim}
+\cmdinvoke{abc}{joy}
+\end{verbatim}
+\end{quote}
+typesets ``joy, oh joy!'', but defines a command \csx{ghi} that takes
+one parameter, which it ignores; \cmdinvoke{ghi}{gloom} will expand to
+``gloom, oh joy!'', which is presumably not what was expected.
+
+And (as you will probably guess, if you've read the earlier question)
+the definition:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\abc}[1]{joy, oh #1!%
+ \newcommand{\ghi}[1]{gloom, oh ##1!}%
+}
+\end{verbatim}
+\end{quote}
+does what is required, and \cmdinvoke{ghi}{gloom} will expand to
+``gloom, oh gloom!'', whatever the argument to \csx{abc}.
+
+The doubling is needed whether or not the enclosing command has an
+argument, so:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\abc}{joy, oh joy!%
+ \newcommand{\ghi}[1]{gloom, oh ##1!}%
+}
+\end{verbatim}
+\end{quote}
+is needed to produce a replica of the \csx{ghi} we defined earlier.
+
+\Question[Q-printvar]{How to print contents of variables?}
+\keywords{typeout, print variables, showthe}
+
+It is often useful to print out the values of variables in the log
+file or on the terminal. Three possible ways to print out the
+contents of \csx{textheight} variable are:
+\begin{enumerate}
+\item \csx{showthe}\csx{textheight}
+\item \cmdinvoke{message}{The text height is \csx{the}\csx{textheight}}
+\item \cmdinvoke{typeout}{The text height is \csx{the}\csx{textheight}}
+\end{enumerate}
+These techniques use the \TeX{} primitives \csx{the} (which provides
+the value of a variable), \csx{showthe} (print a variable to the
+terminal and the log, on a line of its own), and \csx{message}, which
+interpolates something into the log. The command \csx{typeout} is
+\LaTeX{}'s general message output mechanism.
+
+In each case, the variable's value is printed as a number of points.
+
+To typeset the value of \csx{textheight}, just
+\csx{the}\csx{textheight} is enough, but a more flexible alternative is
+to use the \Package{printlen} package. \Package{Printlen} allows you
+to choose the units in which you print a variable; this is useful,
+given that the most ordinary people don't think in points
+(particularly Knuth's points, of which there are 72.27 to the inch).
+
+So, using \Package{printlen}, we could say:
+\begin{quote}
+\begin{verbatim}
+\newlength{\foo}
+\setlength{\foo}{12pt}
+\verb|\foo| is \printlength{\foo}
+\end{verbatim}
+\end{quote}
+and get:
+\begin{quote}
+\csx{foo} is 12pt
+\end{quote}
+while, if we say:
+\begin{quote}
+\begin{verbatim}
+\newlength{\foo}
+\setlength{\foo}{12pt}
+\uselengthunit{mm}
+\verb|foo| is \printlength{\foo}
+\end{verbatim}
+\end{quote}
+we get:
+\begin{quote}
+\csx{foo} is 4.21747mm
+\end{quote}
+\begin{ctanrefs}
+\item[printlen.sty]\CTANref{printlen}
+\end{ctanrefs}
+\LastEdit{2012-03-16}
+
+\Question[Q-labelcount]{Using labels as counter values}
+
+Labels are tempting sources of `numbers'~--- their most common use,
+after all, is simply to typeset a number. However, their seeming
+simplicity is deceptive; the packages \Package{babel} and
+\Package{hyperref}, at least, fiddle with the definition of
+\csx{ref} and \csx{pageref} in ways that make
+\begin{quote}
+\begin{verbatim}
+\setcounter{foo}{\ref{bar}}
+\end{verbatim}
+\end{quote}
+(etc.\@) not work; thus the technique may not be relied upon.
+
+The solution is to use the \Package{refcount} package (incidentally,
+by the author of \Package{hyperref}). The package provides four
+commands, all similar to:
+\begin{quote}
+\begin{verbatim}
+\usepackage{refcount}
+...
+\label{bar}
+...
+\setcounterref{foo}{bar}
+\end{verbatim}
+\end{quote}
+(the other three are \csx{addtocounterref}, \csx{setcounterpageref}
+and \csx{addtocounterpageref}).
+
+The package also provides a command
+\cmdinvoke*{getrefnumber}{label-name} that may be used where a
+`number' value is needed. For example:
+\begin{quote}
+\begin{verbatim}
+... \footnote{foo bar ...\label{foofoot}}
+...
+\footnotemark[\getrefnumber{foofoot}]
+\end{verbatim}
+\end{quote}
+which gives you a second footnote mark reference the the footnote.
+(There is also a command \csx{getpagerefnumber}, of course).
+
+The commands could be used by one determined not to use
+\Package{changepage} to determine whether % ! line break
+\Qref*{the current page is odd}{Q-oddpage}, but it's probably no more
+trouble to use the fully-developed tool in this case.
+\begin{ctanrefs}
+\item[refount.sty]Distributed as part of \CTANref{oberdiek}
+\end{ctanrefs}
+\LastEdit*{2011-09-08}
+
+\subsection{\LaTeX{} macro programming}
+
+\Question[Q-fixnam]{How to change \LaTeX{}'s ``fixed names''}
+
+\LaTeX{} document classes define several typographic operations that
+need `canned text' (text not supplied by the user). In the earliest
+days of \LaTeXo{} these bits of text were built in to the body of
+\LaTeX{}'s macros and were rather difficult to change, but ``fixed
+name'' macros were introduced for the benefit of those wishing to use
+\LaTeX{} in languages other than English.
+For example, the special section produced by the \csx{tableofcontents}
+command is always called \csx{contentsname} (or rather, what
+\csx{contentsname} is defined to mean).
+Changing the canned text is now one of the easiest customisations a
+user can do to \LaTeX{}.
+
+The canned text macros are all of the form
+\csx{\meta{thing}name}, and changing them is simplicity
+itself. Put:
+\begin{quote}
+\cmdinvoke{renewcommand}{\csx{\meta{thing}name}}{Res minor}
+\end{quote}
+in the preamble of your document, and the job is done.
+(However, beware of the \Package{babel} package, which requires you to
+use a different mechanism: be sure to check
+% beware line wrap
+\Qref[question]{changing \Package{babel} names}{Q-latexwords} if
+you're using it.)
+
+The names that are defined in the standard \LaTeX{} classes (and the
+\Package{makeidx} package) are listed
+below. Some of the names are only defined in a subset of the classes
+(and the \Class{letter} class has a set of names all of its own);
+the list shows the specialisation of each name, where appropriate.
+
+\nothtml{\noindent}\begin{tabular}{@{}ll}
+\csx{abstractname} \tbamp Abstract\tbeol
+\csx{alsoname} \tbamp see also (\Package{makeidx} package)\tbeol
+\csx{appendixname} \tbamp Appendix\tbeol
+\csx{bibname} \tbamp Bibliography (\Class{report},\Class{book})\tbeol
+\csx{ccname} \tbamp cc (\Class{letter})\tbeol
+\csx{chaptername} \tbamp Chapter (\Class{report},\Class{book})\tbeol
+\csx{contentsname} \tbamp Contents\tbeol
+\csx{enclname} \tbamp encl (\Class{letter})\tbeol
+\csx{figurename} \tbamp Figure (for captions)\tbeol
+\csx{headtoname} \tbamp To (\Class{letter})\tbeol
+\csx{indexname} \tbamp Index\tbeol
+\csx{listfigurename} \tbamp List of Figures\tbeol
+\csx{listtablename} \tbamp List of Tables\tbeol
+\csx{pagename} \tbamp Page (\Class{letter})\tbeol
+\csx{partname} \tbamp Part\tbeol
+\csx{refname} \tbamp References (\Class{article})\tbeol
+\csx{seename} \tbamp see (\Package{makeidx} package)\tbeol
+\csx{tablename} \tbamp Table (for caption)
+\end{tabular}
+
+\Question[Q-latexwords]{Changing the words \Package{babel} uses}
+
+\LaTeX{} uses symbolic names for many of the automatically-generated
+text it produces (special-purpose section headings, captions, etc.).
+As noted in \Qref[question]{``\LaTeX{} fixed names''}{Q-fixnam} (which
+includes a list of the names themselves),
+this enables the user to change the
+names used by the standard classes, which is particularly useful if
+the document is being prepared in some language other than \LaTeX{}'s
+default English. So, for example, a Danish author may wish that her
+table of contents was called ``Indholdsfortegnelse'', and so
+would expect to place a command
+\begin{verbatim}
+\renewcommand{\contentsname}%
+ {Indholdsfortegnelse}
+\end{verbatim}
+in the preamble of her document.
+
+However, it's natural for a user of a non-English language to use
+\Package{babel}, because it offers many conveniences and typesetting
+niceties for those preparing documents in those languages. In
+particular, when \Package{babel} is selecting a new language, it
+ensures that \LaTeX{}'s symbolic names are translated appropriately
+for the language in question. Unfortunately, \Package{babel}'s choice
+of names isn't always to everyone's choice, and there is still a need
+for a mechanism to replace the `standard' names.
+
+Whenever a new language is selected, \Package{babel} resets all the
+names to the settings for that language. In particular,
+\Package{babel} selects the document's main language when
+\cmdinvoke{begin}{document} is executed, which immediately destroys
+any changes to these symbolic names made in the prologue of a document
+that uses \Package{babel}.
+
+Therefore, babel defines a command to enable users to change the
+definitions of the symbolic names, on a per-language basis:
+\csx{addto}\csx{captions}\texttt{\meta{language}} is the thing
+(\texttt{\meta{language}} being the language option you gave to
+\Package{babel} in the first place). For example:
+\begin{verbatim}
+\addto\captionsdanish{%
+ \renewcommand{\contentsname}%
+ {Indholdsfortegnelse}%
+}
+\end{verbatim}
+
+\Question[Q-running-nos]{Running equation, figure and table numbering}
+
+Many \LaTeX{} classes (including the standard \Class{book} class)
+number things per chapter; so figures in chapter 1 are numbered 1.1,
+1.2, and so on. Sometimes this is not appropriate for the user's
+needs.
+
+Short of rewriting the whole class, one may use the \Package{chngcntr}
+package, which provides commands \csx{counterwithin} (which
+establishes this nested numbering relationship) and
+\csx{counterwithout} (which undoes it).
+
+So if you have figures numbered by chapter as 1.1, 1.2, 2.1, \dots{},
+the command
+\begin{quote}
+\begin{verbatim}
+\counterwithout{figure}{chapter}
+\end{verbatim}
+\end{quote}
+will convert them to figures 1, 2, 3, \dots{}. (Note that the command
+has also removed the chapter number from the counter's definition.)
+
+More elaborate use could change things numbered per section to things
+numbered per chapter:
+\begin{quote}
+\begin{verbatim}
+\counterwithout{equation}{section}
+\counterwithin{equation}{chapter}
+\end{verbatim}
+\end{quote}
+(assuming there was a class that did such a thing in the first place...)
+
+The \Package{chngcntr} approach doesn't involve much programming, and
+the enthusiastic \LaTeX{} programmer might choose to try the technique
+that we had to use before the advent of \Package{chngcntr}. Each of
+the packages \Package{removefr} and \Package{remreset} defines a
+\csx{@removefromreset} command, and having included the package one
+writes something like:
+\begin{quote}
+\begin{verbatim}
+\makeatletter
+\@removefromreset{figure}{chapter}
+\makeatother
+\end{verbatim}
+\end{quote}
+and the automatic renumbering stops. You may then need to redefine the
+way in which the figure number (in this case) is printed:
+\begin{quote}
+\begin{verbatim}
+\makeatletter
+\renewcommand{\thefigure}{\@arabic\c@figure}
+\makeatother
+\end{verbatim}
+\end{quote}
+(remember to do the whole job, for every counter you want to
+manipulate, within \csx{makeatletter} \dots{}\@ \csx{makeatother}).
+
+This technique, too, may be used to change where in a multilevel
+structure a counter is reset. Suppose your class numbers figures as
+\meta{chapter}.\meta{section}.\meta{figure}, and you want figures
+numbered per chapter, try:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\makeatletter
+\@removefromreset{figure}{section}
+\@addtoreset{figure}{chapter}
+\renewcommand{\thefigure}{\thechapter.\@arabic\c@figure}
+\makeatother
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\makeatletter
+\@removefromreset{figure}{section}
+\@addtoreset{figure}{chapter}
+\renewcommand{\thefigure}%
+ {\thechapter.\@arabic\c@figure}
+\makeatother
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+(the command \csx{@addtoreset} is a part of \LaTeX{} itself).
+\begin{ctanrefs}
+\item[chngcntr.sty]\CTANref{chngcntr}
+\item[memoir.cls]\CTANref{memoir}
+\item[removefr.tex]\CTANref{removefr} (note, this is constructed as a
+ ``fragment'' for use within other packages: load by
+ \cmdinvoke{input}{removefr})
+\item[remreset.sty]Distributed as part of \CTANref{carlisle}[remreset]
+\end{ctanrefs}
+
+\Question[Q-labelctr]{Making labels from a counter}
+
+Suppose we have a \LaTeX{} counter, which we've defined with
+\cmdinvoke{newcounter}{foo}. We can increment the value of the counter
+by \cmdinvoke{addtocounter}{foo}{1}, but that's pretty clunky for an
+operation that happens so often \dots{}~so there's a command
+\cmdinvoke{stepcounter}{foo} that does this special case of
+increasing-by-one.
+
+There's an internal \LaTeX{} variable, the ``current label'', that
+remembers the last `labellable' thing that \LaTeX{} has processed.
+You could (if you were to insist) set that value by the relevant
+\TeX{} command (having taken the necessary precautions to ensure that
+the internal command worked)~--- but it's not necessary. If, instead
+of either of the stepping methods above, you say
+\cmdinvoke{refstepcounter}{foo}, the internal variable is set to the
+new value, and (until something else comes along), \csx{label} will
+refer to the counter.
+
+\Question[Q-oddpage]{Finding if you're on an odd or an even page}
+
+\Qref[Question]{Another question}{Q-marginparside} discusses the issue
+of getting \csx{marginpar} commands to put their output in the correct
+margin of two-sided documents. This is an example of the general
+problem of knowing where a particular bit of text lies: the output
+routine is asynchronous, and \AllTeX{} will usually process quite a
+bit of the ``next'' page before deciding to output any page. As a
+result, the |page| counter (known internally in \LaTeX{} as
+\csx{c@page}) is normally only reliable when you're actually \emph{in}
+the output routine.
+
+The solution is to use some version of the \csx{label} mechanism to
+determine which side of the page you're on; the value of the page
+counter that appears in a \csx{pageref} command has been inserted in
+the course of the output routine, and is therefore safe.
+
+However, \csx{pageref} itself isn't reliable: one might hope that
+\begin{quote}
+\begin{verbatim}
+\ifthenelse{\isodd{\pageref{foo}}}{odd}{even}
+\end{verbatim}
+\end{quote}
+would do the necessary, but both the \Package{babel} and
+\Package{hyperref} packages have been known to interfere with the
+output of \csx{pageref}; be careful!
+
+The \Package{changepage} package needs to provide this functionality
+for its own use, and therefore provides a command \csx{checkoddpage};
+this sets a private-use `label', and the page reference part of that
+label is then examined (in a \Package{hyperref}-safe way) to set a
+conditional \csx{ifoddpage} true if the command was issued on an odd
+page. (The \Class{memoir} class has the same command.) \latex{}
+users who are unfamiliar with \tex{}'s \csx{if...} commands may use
+the \Package{ifthen} package:
+\begin{wideversion}
+\begin{quote}
+\begin{verbatim}
+\usepackage{ifthen,changepage}
+...
+\checkoddpage
+\ifthenelse{\boolean{oddpage}}{<odd page stuff>}{<even page stuff>}
+\end{verbatim}
+\end{quote}
+\end{wideversion}
+\begin{narrowversion}
+\begin{quote}
+\begin{verbatim}
+\usepackage{ifthen,changepage}
+...
+\checkoddpage
+\ifthenelse{\boolean{oddpage}}%
+ {<odd page stuff>}%
+ {<even page stuff>}
+\end{verbatim}
+\end{quote}
+\end{narrowversion}
+
+Of course, the `label' contributes to \LaTeX{}'s ``Rerun to get
+cross-references right'' error messages\dots{}
+
+The Koma-Script classes have an \environment{addmargin*} environment
+that also provides the sorts of facilities that the \Package{changepage}
+offers. Koma-Script's supporting command:
+\begin{quote}
+\cmdinvoke{ifthispageodd}{<true>}{<false>}
+\end{quote}
+executes different things depending on the page number.
+
+The package \Package{ifoddpage} is designed to provide the same
+facility; crucially, it can behave ``sensibly'' even if you are
+typesetting for one-side printing only; like the \Package{changepage}
+it uses a `check' command \csx{checkoddpage}. The conditional `side'
+flags are set using (Plain) \TeX{} conditionals; they are defined
+locally, so that you can minimise their use of \tex{} workspace~---
+see the package documentation for the somewhat tricky sequence
+involved. In addition the package provides a command
+\csx{ifoddpageoroneside}, which is true on odd pages of a two-side
+document, or on all pages of a one-side document. Usage is:
+\begin{quote}
+\begin{verbatim}
+\checkoddpage
+\ifoddpage
+ odd-side text
+\else
+ even-side text
+\fi
+\end{verbatim}
+\end{quote}
+The author's recommended usage (trickily) includes the whole operation
+in a box; this has the advantage that your test will always work, but
+the usual disadvantage that boxes may not split. In common uses, the
+whole work will be done inside a box (as, for example, in the case of
+a float), so the elaborate work proposed by the author is not
+necessary.
+\begin{ctanrefs}
+\item[changepage.sty]\CTANref{changepage}
+\item[ifoddpage.sty]\CTANref{ifoddpage}
+\item[ifthen.sty]Part of the \latex{} distribution: \CTANref{latex}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\item[memoir.cls]\CTANref{memoir}
+\end{ctanrefs}
+
+\Question[Q-labelformat]{How to change the format of labels}
+
+By default, when a label is created, it takes on the appearance of the
+counter labelled, so the label appears as
+\csx{the}\texttt{\meta{counter}}~--- what would be used if you
+asked to typeset the counter in your text. This isn't always what you
+need: for example, if you have nested enumerated lists with the outer
+numbered and the inner labelled with letters, one might expect to want
+to refer to items in the inner list as ``2(c)''. (Remember, you can
+\nothtml{change the structure of list items~--- }%
+\Qref{change the structure of list items}{Q-enumerate}.)
+The change is of course
+possible by explicit labelling of the parent and using that label to
+construct the typeset result~--- something like
+\begin{quote}
+\begin{verbatim}
+\ref{parent-item}(\ref{child-item})
+\end{verbatim}
+\end{quote}
+which would be both tedious and error-prone. What's more, it would be
+undesirable, since you would be constructing a visual representation
+which is inflexible (you couldn't change all the references to elements
+of a list at one fell swoop).
+
+\LaTeX{} in fact has a label-formatting command built into every label
+definition; by default it's null, but it's available for the user to
+program. For any label \meta{counter} there's a \LaTeX{} internal
+command \csx{p@}\meta{\texttt{counter}}; for example, a label definition
+on an inner list item is supposedly done using the command
+\cmdinvoke{p@enumii}{\csx{theenumii}}. Unfortunately, the internal
+workings of this aren't quite right, and you need to patch the
+\csx{refstepcounter} command:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\renewcommand*\refstepcounter[1]{%
+ \stepcounter{#1}%
+ \protected@edef\@currentlabel{%
+ \csname p@#1\expandafter\endcsname
+ \csname the#1\endcsname
+ }%
+}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\renewcommand*\refstepcounter[1]{\stepcounter{#1}%
+ \protected@edef\@currentlabel{%
+ \csname p@#1\expandafter\endcsname
+ \csname the#1\endcsname
+ }%
+}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+With the patch in place you can now, for example, change the labels on
+all inner lists by adding the following code in your preamble:
+\begin{quote}
+\begin{verbatim}
+\makeatletter
+\renewcommand{\p@enumii}[1]{\theenumi(#1)}
+\makeatother
+\end{verbatim}
+\end{quote}
+This would make the labels for second-level enumerated lists appear as
+``1(a)'' (and so on). The analogous change works for any counter that
+gets used in a \csx{label} command.
+
+In fact, the \Package{fncylab} package does all the above (including
+the patch to \LaTeX{} itself). With the package, the code above is
+(actually quite efficiently) rendered by the command:
+\begin{quote}
+\begin{verbatim}
+\labelformat{enumii}{\theenumi(#1)}
+\end{verbatim}
+\end{quote}
+In fact, the above example, which we can do in several different ways,
+has been rendered obsolete by the appearance of the \Package{enumitem}
+package, which is discussed in the answer about % ! line break
+\Qref*{decorating enumeration lists}{Q-enumerate}.
+\begin{ctanrefs}
+\item[enumitem.sty]\CTANref{enumitem}
+\item[fncylab.sty]\CTANref{fncylab}
+\end{ctanrefs}
+
+\Question[Q-seccntfmt]{Adjusting the presentation of section numbers}
+
+The general issues of adjusting the appearance of section headings are
+pretty complex, and are covered in % beware line breaks (2 lines)
+\latexhtml{question}{the question on}
+\Qref[\htmlonly]{the style of section headings}{Q-secthead}.
+
+However, people regularly want merely to change the way the section
+number appears in the heading, and some such people don't mind writing
+out a few macros. This answer is for \emph{them}.
+
+The section number is typeset using the
+\begin{dviversion}
+ \LaTeX{} internal
+\end{dviversion}
+\begin{hyperversion}
+ \Qref{\LaTeX{} internal}{Q-atsigns}
+\end{hyperversion}
+\csx{@seccntformat} command, which is given the ``name'' (section,
+subsection, \dots{}) of the heading, as argument. Ordinarily,
+\csx{@seccntformat}
+merely outputs the section number, and then a \csx{quad} of space:
+\begin{quote}
+\begin{verbatim}
+\renewcommand*{\@seccntformat}[1]{%
+ \csname the#1\endcsname\quad
+}
+\end{verbatim}
+\end{quote}
+Suppose you want to put a stop after every section (subsection,
+subsubsection, \dots{}) number, a trivial change may be implemented by
+simple modification of the command:
+\begin{quote}
+\begin{verbatim}
+\renewcommand*{\@seccntformat}[1]{%
+ \csname the#1\endcsname.\quad
+}
+\end{verbatim}
+\end{quote}
+However, many people want to modify section numbers, but not
+subsection numbers, or any of the others. To do this, one must make
+\csx{@seccntformat} switch according to its argument. The following
+technique for doing the job is slightly wasteful, but is efficient
+enough for a relatively rare operation:
+\begin{quote}
+\begin{verbatim}
+\renewcommand*{\@seccntformat}[1]{%
+ \csname the#1\endcsname
+ \csname adddot@#1\endcsname\quad
+}
+\end{verbatim}
+\end{quote}
+which uses a second-level command to provide the dot, if it has been
+defined; otherwise it merely appends \csx{relax} (which does nothing
+in this context). The definition of the second-level command (the
+version for the \texttt{section}, here) specifies what to put after a
+section number, but it could be used to put anything after it:
+\begin{quote}
+\begin{verbatim}
+\newcommand*{\adddot@section}{.}
+\end{verbatim}
+\end{quote}
+Note that all the command definitions above are dealing in
+\Qref*{\LaTeX{} internal commands}{Q-atsigns}, so the above
+code should be in a package file, for preference.
+
+The \Class{Koma-script} classes have different commands for specifying
+changes to section number presentation: \csx{partformat},
+\csx{chapterformat} and \csx{othersectionlevelsformat}, but otherwise
+their facilities are similar to those of ``raw'' \LaTeX{}.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}KOMA script bundle]\CTANref{koma-script}
+\end{ctanrefs}
+
+\Question[Q-spaftend]{There's a space added after my environment}
+
+You've written your own environment \environment{env}, and it works
+except that a space appears at the start of the first line of typeset
+text after \cmdinvoke{end}{env}. This doesn't happen with similar
+\LaTeX{}-supplied environments.
+
+You could impose the restriction that your users always put a
+``\texttt{\textpercent{}}'' sign after the environment~\dots{}\nothtml{\@} but
+\LaTeX{} environments don't require that, either.
+
+The \LaTeX{} environments' ``secret'' is an internal flag which causes
+the unwanted spaces to be ignored. Fortunately, you don't have to use
+the internal form: since 1996, \LaTeX{} has had a user command
+\csx{ignorespacesafterend}, which sets the internal flag.
+
+\Question[Q-labundef]{Finding if a label is undefined}
+
+People seem to want to know (at run time) if a label is undefined (I
+don't actually understand \emph{why}, particularly: it's a transient
+state, and \LaTeX{} deals with it quite well).
+
+A resolved label is simply a command:
+\csx{r@}\texttt{\meta{label-name}}; determining if the label is set is
+then simply a matter of detecting if the command exists. The usual
+\LaTeX{} internal way of doing this is to use the command
+\csx{@ifundefined}:
+\begin{quote}
+ \cmdinvoke*{@ifundefined}{\textup{r@}label-name}{undef-cmds}{def-cmds}
+\end{quote}
+In which, \meta{label-name} is exactly what you would use in
+a \csx{label} command, and the remaining two arguments are command
+sequences to be used if the label is undefined
+(\meta{undef-cmds}) or if it is defined
+(\meta{def-cmds}).
+
+Note that any command that incorporates \csx{@ifundefined} is naturally
+fragile, so remember to create it with \csx{DeclareRobustCommand} or to
+use it with \csx{protect} in a moving argument.
+
+If you're into this game, you may well not care about \LaTeX{}'s
+warning about undefined labels at the end of the document; however,
+if you are, include the command \csx{G@refundefinedtrue} in
+\meta{\texttt{undef-cmds}}.
+
+And of course, remember you're dealing in internal commands, and pay
+attention to the \Qref*{at-signs}{Q-atsigns}.
+
+All the above can be avoided by using the \Package{labelcas} package:
+it provides commands that enable you to switch according to the state
+of a single label, or the states of a list of labels. The package's
+definition is a bit complicated, but the package itself is pretty
+powerful.
+\begin{ctanrefs}
+\item[labelcas.sty]\CTANref{labelcas}
+\end{ctanrefs}
+
+\Question[Q-addtoreset]{Master and slave counters}
+
+It's common to have things numbered ``per chapter'' (for example, in
+the standard \Class{book} and \Class{report} classes, figures, tables
+and footnotes are all numbered thus). The process of resetting is
+done automatically, when the ``master'' counter is stepped (when the
+\csx{chapter} command that starts chapter \meta{n} happens, the
+\texttt{chapter} counter is stepped, and all the dependent counters are set
+to zero).
+
+How would you do that for yourself? You might want to number
+algorithms per section, or corollaries per theorem, for example. If
+you're defining these things by hand, you declare the relationship
+when you define the counter in the first place:
+\begin{quote}
+\cmdinvoke*{newcounter}{new-name}[master]
+\end{quote}
+says that every time counter \meta{master} is stepped, counter
+\meta{new-name} will be reset.
+
+But what if you have an uncooperative package, that defines the
+objects for you, but doesn't provide a programmer interface to make
+the counters behave as you want?
+
+The \csx{newcounter} command uses a \LaTeX{} internal command, and you
+can also use it:
+\begin{quote}
+\cmdinvoke*{@addtoreset}{new-name}{master}
+\end{quote}
+(but remember that it needs to be between \csx{makeatletter} and
+\csx{makeatother}, or in a package of your own).
+
+The \Package{chngcntr} package encapsulates the \csx{@addtoreset}
+command into a command \csx{counterwithin}. So:
+\begin{quote}
+\begin{verbatim}
+\counterwithin*{corrollary}{theorem}
+\end{verbatim}
+\end{quote}
+will make the corollary counter slave to theorem counters. The
+command without its asterisk:
+\begin{quote}
+\begin{verbatim}
+\counterwithin{corrollary}{theorem}
+\end{verbatim}
+\end{quote}
+will do the same, and also redefine \csx{thecorollary} as % line brk!
+\meta{theorem number}.\meta{corollary number}, which is a good scheme
+if you ever want to refer to the corollaries~--- there are potentially
+many ``corollary~1'' in any document, so it's as well to tie its number
+to the counter of the theorem it belongs to. This is true of pretty
+much any such counter-within-another; if you're not using the
+\Package{chngcntr}, refer to the answer to % line break!
+\Qref*{redefining counters' \csx{the-}commands}{Q-the-commands} for
+the necessary techniques.
+
+Note that the technique doesn't work if the master counter is |page|,
+the number of the current page. The |page| counter is stepped deep
+inside the output routine, which usually gets called some time after
+the text for the new page has started to appear: so special
+techniques are required to deal with that. One special case is dealt
+with elsewhere: \Qref*{footnotes numbered per page}{Q-footnpp}. One
+of the techniques described there, using package \Package{perpage},
+may be applied to any counter. The command:
+\begin{quote}
+\cmdinvoke*{MakePerPage}{counter}
+\end{quote}
+will cause \meta{counter} to be reset for each page. The package uses
+a label-like mechanism, and may require more than one run of \LaTeX{}
+to stabilise counter values~--- \LaTeX{} will generate the usual
+warnings about labels changing.
+\begin{ctanrefs}
+\item[chngcntr.sty]\CTANref{chngcntr}
+\item[perpage.sty]Distributed as part \CTANref{bigfoot}[perpage]
+\end{ctanrefs}
+
+\Question[Q-fontsize]{Fonts at arbitrary sizes}
+
+Almost all fonts, nowadays, are provided with \LaTeX{} control
+(\extension{fd}) files, so the temptation to risk the
+\Qref*{problems of \csx{newfont}}{Q-newfont*} is usually easy to
+resist.
+
+However, one temptation remains, arising from the way that \LaTeX{}
+restricts the sizes of fonts. In fact, the restriction only
+significantly applies to the default (Computer Modern) and the
+Cork-encoded (\acro{T}1) EC fonts, but it is widely considered to be
+anomalous, nowadays. In recognition of this problem, there is a
+package \Package{fix-cm} which will allow you to use the fonts, within
+\LaTeX{}, at any size you choose. If you're not using scaleable
+versions of the fonts, most modern distributions will just generate an
+appropriate bitmap for you.
+
+So, suppose you want to produce a heading in Computer Modern Roman at
+30 points, you might be tempted to write:
+\begin{quote}
+\begin{verbatim}
+\newfont{\bigfont}{cmr10 at 30pt}
+\begin{center}
+ \bigfont Huge text
+\end{center}
+\end{verbatim}
+\end{quote}
+which will indeed work, but will actually produce a worse result than
+\begin{quote}
+\begin{verbatim}
+\usepackage{fix-cm}
+...
+\begin{center}
+ \fontsize{30}{36}\selectfont
+ Huge text
+\end{center}
+\end{verbatim}
+\end{quote}
+Note that the \Package{fix-cm} package was not distributed until the
+December 2003 edition of \LaTeX{}; if you have an older distribution,
+the packages \Package{type1cm} (for \acro{CM} fonts) and
+\Package{type1ec} (for \acro{EC} fonts) are available.
+
+\Package{Fix-cm} doesn't has one or two omissions~--- fonts the \latex{}
+team did not consider useful, or something; the CM dunhill fonts (as
+CM, but with stretched ascenders) and the CM fibonacci font (which is only
+available in 8-point design size) are certainly missing. If
+\Package{fix-cm} doesn't do the job, try the \Package{type1xx}
+packages, or the \Package{anyfontsize} package.
+
+A further alternative might be to switch to the
+\Qref*{\FontName{Latin} \FontName{Modern} fonts}{Q-uselmfonts} (which
+provide a close simulacrum of the \FontName{Computer}
+\FontName{Modern} set); these fonts were scaleable from their first
+distribution, and don't therefore need any such trick as the above.
+\begin{ctanrefs}
+\item[anyfontsize.sty]\CTANref{anyfontsize}
+\item[fix-cm.sty]Distributed as part of \CTANref{latex}[fix-cm] (an unpacked
+ version is available at \CTANref{fix-cm})
+\item[\nothtml{\rmfamily}\FontName{Latin} \FontName{Modern} fonts]\CTANref{lm}
+\item[type1cm.sty]\CTANref{type1cm}
+\item[type1ec.sty]\CTANref{type1ec} (the package is actually part of
+ the \CTANref{cm-super} distribution, but it works happily in
+ the absence of the scaled fonts)
+\end{ctanrefs}
+\LastEdit{2013-06-04}
+
+\Question[Q-latexqual]{The quality of your \LaTeX{}}
+
+The \Package{l2tabu} tutorial (mentioned in % ! line break
+\Qref[question]{online introductions}{Q-man-latex}) is undoubtedly a
+good read.
+
+However, it's always difficult to remember the things you should
+\emph{not} do, when there are so many things to remember that you
+really must do: some automation is useful\dots{}.
+
+The nicely-named \Package{nag} allows you to apply a configurable set
+of checks to your document, as you run it through \LaTeX{}; you get
+messages like:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+Package nag Warning: Command \bf is an old LaTeX 2.09 command.
+(nag) Use \bfseries or \textbf instead on input line 30.
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+Package nag Warning: Command \bf is an old
+ LaTeX 2.09 command.
+(nag) Use \bfseries or \textbf
+ instead on input line 30.
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+\begin{wideversion}
+ (the package provides a demo file which contains most of the sorts
+ of errors you might make~--- the example is one of them).
+\end{wideversion}
+\begin{narrowversion}
+ (the error lines above represent two lines which have been wrapped;
+ the package provides a demo file which contains most of the sorts of
+ errors you might make~--- the example is one of them).
+\end{narrowversion}
+While \Package{l2tabu} and \Package{nag} alert you to \emph{possible}
+programming errors, you should not forget that they are merely
+commenting on \emph{style}; don't assume that a \Package{nag} error is
+going to damn your code~--- rather, note the issue and try to train
+your fingers not to do the same ``next time''.
+
+The \ProgName{lacheck} program analyses your source and comments on
+it; its view of what is ``bad'' is \emph{very} subjective (the
+documentation says), but it can be useful.
+
+There's also a web site
+\href{http://www.kohm.name/markus/texidate.html}{TeXidate}
+which will do a static analysis of your document (unfortunately, you
+have to paste your document source into a text window). The site
+doesn't seem as comprehensive as \Package{nag}, but it allows you to
+download its script, which you can then juggle with to make it more
+draconian.
+\begin{ctanrefs}
+\item[l2tabu]Browse \CTANref{l2tabu} for a copy of the document in a
+ language that is convenient for you
+\item[lacheck]\CTANref{lacheck}
+\item[nag.sty]\CTANref{nag}
+\end{ctanrefs}
+\LastEdit{2012-10-09}
+
+\Question[Q-ltx-csv]{Process a \acro{CSV} file in \latex{}}
+
+Comma-separated-variable (\acro{CSV}) files are a common means of
+interchanging simple data between applications; for example, most
+spreadsheet applications can provide files containing tables of
+numbers with commas between them. One can envisage these tables as
+``\latex{} tables'', and the packages to process them all provide
+table generation, one way or another.
+
+For rather a long time, the canonical tools for dealing with such
+files have been those provided in the \Package{datatool} bundle;
+packages in the bundle allow the user to write procedures to process
+numbers, currency amounts, names, etc., and to display them in tables
+(including pie charts).
+
+The \Package{csvsimple} does similar tasks. Its processing is
+controlled by keys established via the \Package{pgfkeys} package,
+which define how each row of the \acro{CSV} file is to be processed.
+
+For usage ``nearer to the bone'', one might consider the commands
+\csx{docsvlist} and \csx{forcsvlist} (from the \Package{etoolbox}
+package). The first uses the time-honoured \latex{} technique of
+changing the definition of a \csx{do} command; it runs through the
+list, and processes every item of the list as the argument of the
+\csx{do} command; so:
+\begin{quote}
+\begin{verbatim}
+\begin{itemize}
+\renewcommand*{\do}[1]{\item #1}
+\docsvlist{item1, item2, {item3a, item3b}, item4}
+\end{itemize}
+\end{verbatim}
+\end{quote}
+will convert the elements of a \acro{CSV} list into an itemised list.
+
+The macro \csx{forcsvlist} applies a function to each element of a
+\acro{CSV} list; this can of course be used to implement
+\csx{docsvlist}, at the cost of a little clarity.
+\begin{ctanrefs}
+\item[csvsimple.sty]\CTANref{csvsimple}
+\item[datatool \nothtml{\rmfamily}bundle]\CTANref{datatool}
+\item[etoolbox.sty]\CTANref{etoolbox}
+\item[pgfkeys.sty]Distributed as part of \CTANref{pgf}
+\end{ctanrefs}
+\LastEdit*{2013-09-10}
diff --git a/obsolete/help/texfaq/faq-projects.tex b/obsolete/help/texfaq/faq-projects.tex
new file mode 100644
index 0000000000..e7a616ace8
--- /dev/null
+++ b/obsolete/help/texfaq/faq-projects.tex
@@ -0,0 +1,644 @@
+% $Id: faq-projects.tex,v 1.29 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{Current \TeX{}-related projects}
+
+\Question[Q-LaTeX3]{The \LaTeX{} project}
+
+The \LaTeX{} project team (see \URL{http://www.latex-project.org/latex3.html})
+is a small group of volunteers whose aim is
+to produce a major new document processing system based on the
+principles pioneered by Leslie Lamport in the current \LaTeX{}. The
+new system is (provisionally) called \LaTeX{}3; it
+will remain freely available and it will be fully documented at
+all levels.
+
+The \LaTeX{} team's first product (\LaTeXe{}) was delivered in 1994
+(it's now properly called ``\LaTeX{}'', since no other version is current).
+
+\LaTeXe{} was intended as a consolidation exercise, unifying several
+sub-variants of \LaTeX{} while changing nothing whose change wasn't
+absolutely necessary. This has permitted the team to support a single
+version of \LaTeX{}, in parallel with development of \LaTeX{}3.
+
+Some of the older discussion papers about directions for \LaTeX{}3 are
+to be found on \acro{CTAN}; other (published) articles are to be found
+on the project web site (\URL{http://www.latex-project.org/papers/}).
+
+Some of the project's experimental code is visible on the net:
+\begin{itemize}
+\item via \URL{http://www.latex-project.org/code.html}, which points
+ to the project's \acro{SVN} repository;
+\item via the project's
+ \href{https://github.com/latex3/svn-mirror}{\emph{GitHub} mirror};
+\item from \acro{CTAN}: snapshots of two major collections from the
+ code, \Package{l3kernel} (supporting \LaTeX{}3 coding conventions in
+ a \LaTeXe{} environment), \Package{l3packages} (a first cut of a
+ ``document designer's interface'') as well as
+ \Package{l3experimental} (new stuff that's still under
+ development).
+\end{itemize}
+The packages \Package{l3kernel} and \Package{l3packages} provide an
+``experimental harness'' that may be used as a testbed for \latex{}3
+work.
+
+Note that \Package{l3kernel} introduces a coding structure quite
+different from earlier \latex{} code; a few hardy authors, who are not
+members of the project, are nevertheless using it in their development
+work.
+
+Anyone may participate in discussions of the future of \LaTeX{}
+through the mailing list \texttt{latex-l}; some development work
+(outside the project) is discussed on the list. Subscribe to the list
+by sending a message `\texttt{subscribe latex-l <\emph{your name}>}'
+to \mailto{listserv@urz.Uni-Heidelberg.de}
+\begin{ctanrefs}
+\item[l3experimental \nothtml{\rmfamily}bundle]\CTANref{l3experimental}
+\item[l3kernel \nothtml{\rmfamily}bundle]\CTANref{l3kernel}
+\item[\nothtml{\rmfamily}\LaTeX{} project publications]\CTANref{ltx3pub}
+\item[l3packages \nothtml{\rmfamily}bundle]\CTANref{l3packages}
+\end{ctanrefs}
+\LastEdit{2012-02-07}
+
+\Question[Q-mathml]{Future \acro{WWW} technologies and \AllTeX{}}
+
+An earlier answer % ! line break
+(\Qref[number]{``converting to \acro{HTML}''}{Q-LaTeX2HTML})
+addresses the issue of converting existing \AllTeX{} documents for
+viewing on the Web as \acro{HTML}. All the present techniques are
+somewhat flawed: the answer explains why.
+
+However, things are changing, with
+better font availability, cunning \acro{HTML} programming and the
+support for new Web standards.
+\begin{description}
+\item[Font technologies] Direct representation of mathematics in
+ browsers has been hampered up to now by the limited range of symbols
+ in the fonts whose availability designers can count on. Some existing
+ \AllTeX{} to \acro{HTML} converters provide maths symbols by
+ hitching them to alternate font face specifications for standard
+ code points in a non-standard way. This does nothing for the
+ universality of the \acro{HTML} so generated.
+
+ Now, however, free Unicode-encoded OpenType fonts, with coverage of
+ mathematical symbols, are starting to appear. The much-heralded
+ \href{http://www.stixfonts.org/}{\FontName{STIX} fonts} are now
+ available on \acro{CTAN}, and a tweaked version
+ (\FontName{XITS}) and \FontName{Asana Math} are also
+ available. The \acro{STIX} project has still not released macros
+ for using the fonts, but the \Package{unicode-math} package will do
+ what is necessary under \xetex{} and \luatex{}, and the fonts can of
+ course be used in browsers.
+%% In the near future, we can expect rather wide availability of
+%% Unicode fonts with good coverage of symbols, which should make life
+%% easier for those who need to represent mathematics.
+\item[\acro{XML}] The core of the range of new standards is
+ \acro{XML}, which provides a framework for better structured markup;
+ limited support for it has already appeared in some browsers.
+
+ Conversion of \AllTeX{} source to \acro{XML} is already available
+ (through \TeX{}4ht at least), and work continues in that arena. The
+ alternative, authoring in \acro{XML} (thus producing documents that
+ are immediately Web-friendly, if not ready) and using \AllTeX{} to
+ typeset is also well advanced. One useful technique is
+ \Qref*{\emph{transforming} the \acro{XML} to \LaTeX{}}{Q-SGML2TeX},
+ using an \acro{XSLT} stylesheet or code for an \acro{XML} library,
+ and then simply using \LaTeX{}; alternatively, one may
+ \Qref*{typeset direct from the \acro{XML} source}{Q-readML}.
+\item[Direct representation of mathematics]
+ Math\acro{ML} is a standard for representing maths on the Web; its
+ original version was distinctly limited, but version 2 of Math\acro{ML}
+ has had major browser support since 2002 with richness of mathematical
+ content for online purposes approaching that of \TeX{} for print.
+ Browser support for Math\acro{ML} is provided by \ProgName{amaya}, the
+ `Open Source' browser \ProgName{mozilla} (and its derivatives
+ including \ProgName{NetScape}, \ProgName{Firefox} and \ProgName{Galeon}) and
+ \ProgName{Internet Explorer} when equipped with a suitable plug-in
+ such as \ProgName{MathPlayer}.
+ There's evidence that \AllTeX{} users are starting to use such
+ browsers. Some believe that \acro{XHTML}+Math\acro{ML} now provides
+ better online viewing than \acro{PDF}.
+ Work to produce \acro{XHTML}+Math\acro{ML} is well advanced in both the
+ \TeX{}4ht and \ProgName{TtH} projects for \AllTeX{} conversion.
+%% Such conversion, however, has limits of soundness unless one
+%% is very much aware of the needs of one's conversion program
+%% and adapts one's usage of \AllTeX{} accordingly.
+
+ The \href{http://www.mathjax.org}{\ProgName{MathJax}} engine will process the
+ content of \latex{} \csx{[} \dots{}~\csx{]} and \csx{(} \dots{}~\csx{)}
+ `environments' in an \acro{HTML} document, to produce mathematical
+ output that may (for example) be cut-and-pasted into other programs.
+
+ Incorporation into your document can be
+\begin{wideversion}
+ as simple as incorporating:
+\begin{verbatim}
+<script type="text/javascript"
+ src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
+</script>
+\end{verbatim}
+ into the header of your \acro{HTML} document,
+\end{wideversion}
+\begin{narrowversion}
+ incorporating the script~---
+ \url{http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML}
+ ---~as the \texttt{src} tab of a \texttt{script type="text/javascript"}
+ element in the header of your \acro{HTML} document,
+\end{narrowversion}
+ though the \href{http://www.mathjax.org/}{MathJax project's site}
+ also allows you to download your own copy and install it on one of
+ \emph{your} servers. \ProgName{MathJax} is open source software, so
+ you could, in principle, extend it to do even more eccentric tasks.
+
+ An approach different from \AllTeX{} conversion is taken by
+ the \href{http://www.albany.edu/~hammond/gellmu/}{\emph{GELLMU} Project}.
+ Its \emph{article} \acro{XML} document type, which has a markup vocabulary
+ close to \LaTeX{} that can be edited using \LaTeX{}-like markup
+ (even though it is not \LaTeX{}~--- so far), comes with translators
+ that make both \acro{PDF} (via \emph{pdflatex}) and
+ \acro{XHTML}+Math\acro{ML}. Such an approach avoids the inherent
+ limitations of the ``traditional'' \AllTeX{} translation processes,
+ which have traps that can be sprung by unfettered use of \AllTeX{}
+ markup.
+\item[Graphics]
+ \acro{SVG} is a standard for graphics representation on the web.
+ While the natural use is for converting existing figures,
+ representations of formulas are also possible, in place of the separate
+ bitmaps that have been used in the past (and while we wait for the
+ wider deployment of Math\acro{ML}).
+
+ Browser plug-ins, that deal with \acro{SVG} are already available
+ (Adobe offer one, for example). More recently, the open source
+ graphics editor \href{http://www.inkscape.org/}{\ProgName{Inkscape}}
+ has appeared, and has been reported to be useful for
+ \acro{SVG}-related work in at least one \TeX{}-related project. Be
+ aware that the developers of \ProgName{Inkscape} have no illusions
+ about being able to replace commercial software, yet\dots{}
+\item[Direct use of \TeX{} markup]
+ Some time back, \acro{IBM} developed a browser plug-in called
+ TechExplorer, which would display \AllTeX{} documents direct in a
+ browser. Over the years, it developed into a Math\acro{ML} browser
+ plug-in, while still retaining its \AllTeX{} abilities, but it's now
+ distributed (free for Linux and Windows platforms) by
+ \href{http://www.integretechpub.com/}{Integre Technical Publishing}.
+
+ The disadvantage of the TechExplorer approach is that it places the
+ onus on the browser user; and however technically proficient
+ \emph{you} are, it's never safe to assume too much of your readers.
+ An interesting alternative is
+ \href{http://www.forkosh.com/mathtex.html}{Math\TeX{}}, which sits
+ on your server as a \acro{CGI} script, and you use it to include
+ your \TeX{}, in your \acro{HTML}, as if it were an image:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+<img src="/cgi-bin/mathtex.cgi?f(x)=\int\limits_{-\infty}^xe^{-t^2}dt">
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+<img src="/cgi-bin/mathtex.cgi?f(x)=
+ \int\limits_{-\infty}^xe^{-t^2}dt">
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+(\Package{Mathtex} supersedes the author's earlier \Package{mimetex}.)
+\end{description}
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Asana Math fonts]\CTANref{asana-math}
+\item[GELLMU]\CTANref{gellmu}
+\item[MathTeX]\CTANref{MathTeX}
+\item[MimeTeX]\CTANref{MimeTeX}
+\item[\nothtml{\rmfamily}STIX fonts]\CTANref{stix}
+\item[tex4ht]\CTANref{tex4ht} (but see \url{http://tug.org/tex4ht/})
+\item[unicode-math.sty]\CTANref{unicode-math}
+\item[\nothtml{\rmfamily}XITS fonts]\CTANref{xits}
+\end{ctanrefs}
+\LastEdit{2011-10-17}
+
+\Question[Q-textrace]{Making outline fonts from \MF{}}
+
+\ProgName{TeXtrace}, originally developed by P\'eter Szab\'o, is a
+bundle of Unix scripts that use Martin Weber's freeware boundary
+tracing package
+\href{http://autotrace.sourceforge.net}{\ProgName{autotrace}} to
+generate Type~1 outline fonts from \MF{} bitmap
+font outputs. The result is unlikely ever to be of the quality of
+the commercially-produced Type~1 font, but there's always the
+\href{http://fontforge.sourceforge.net/}{\ProgName{FontForge}} font
+editor to tidy things. Whatever, there
+remain fonts which many people find useful and which fail to attract
+the paid experts, and auto-tracing is providing a useful service here.
+Notable sets of
+fonts generated using \ProgName{TeXtrace} are P\'eter Szab\'o's own
+\acro{EC}/\acro{TC} font set \FontName{tt2001} and Vladimir Volovich's
+\acro{CM}-Super set, which covers the \acro{EC}, \acro{TC}, and the
+Cyrillic \acro{LH} font sets (for details of both of which sets, see
+\Qref[answer]{``8-bit'' type 1 fonts}{Q-type1T1}).
+
+Another system, which arrived slightly later, is
+\href{http://www.cs.uu.nl/~hanwen/mftrace/}{\ProgName{mftrace}}:
+this is a small \ProgName{Python} program that does the same job.
+\ProgName{Mftrace} may use either \ProgName{autotrace} (like
+\ProgName{TeXtrace}) or Peter Selinger's
+\href{http://potrace.sourceforge.net}{\ProgName{potrace}} to produce
+the initial outlines to process. \ProgName{Mftrace} is said to be
+more flexible, and easier to use, than is \ProgName{TeXtrace}, but both systems
+are increasingly being used to provide Type~1 fonts to the public domain.
+
+The \ProgName{MetaType1} system aims to use \MF{} font sources, by way
+of \MP{} and a bunch of scripts and so on, to produce high-quality
+Type~1 fonts. The first results, the % ! line break
+\Qref*{\Package{Latin Modern} fonts}{Q-type1T1}, are now
+well-established, and a bunch of existing designs have been reworked
+in MetaType1 format.
+
+\Package{Mf2pt1} is another translator of \MF{} font sources by way of
+\MP{}; in addition,
+available, \Package{mf2pt1} will use
+\href{http://fontforge.sourceforge.net/}{\ProgName{fontforge}} (if it's
+available) to auto-hint the result of its conversion.
+(\Package{Mf2pt1} is also written in \ProgName{perl}.)
+\begin{ctanrefs}
+\item[MetaType1]\CTANref{metatype1}
+\item[mf2pt1]\CTANref{mf2pt1}
+\end{ctanrefs}
+
+\Question[Q-WYGexpts]{The \TeX{} document preparation environment}
+
+``\Qref*{Why \TeX{} is not \WYSIWYG{}}{Q-notWYSIWYG}''
+outlines the reasons (or excuses) for the huge disparity of user
+interface between ``typical'' \TeX{} environments and commercial word
+processors.
+
+Nowadays, at last, there is a range of tools available that try either
+to bridge or to close the gap. One range modestly focuses on
+providing the user with a legible source document. At the other
+extreme we have \href{http://www.texmacs.org}{\ProgName{TeXmacs}},
+a~document processor using
+\TeX{}'s algorithms and fonts for both editor display and printing.
+\ProgName{TeXmacs} does not use the \TeX{}
+language itself (though among other formats, \LaTeX{} may be exported
+and imported). A bit closer to \LaTeX{} is
+\href{http://www.lyx.org/}{LyX}, which has its own
+editor display and file formats as well, but does its print output by
+exporting to \LaTeX{}. The editor display merely resembles the
+printed output, but you have the possibility of entering arbitrary
+\LaTeX{} code. If you use constructs that LyX does not
+understand, it will just display them as source text marked red, but
+will properly export them.
+
+Since a lot of work is needed to create an editor from scratch that
+actually is good at editing (as well as catering for \TeX{}), it is
+perhaps no accident that several approaches have been implemented
+using the extensible \ProgName{emacs} editor. The low end of the
+prettifying range is occupied by syntax highlighting: marking \TeX{}
+tokens, comments and other stuff with special colours.
+Many free editors (including \ProgName{emacs}) can cater for \TeX{} in
+this way. Under Windows, one of the more popular editors with such
+support is the
+Shareware product \href{http://www.winedt.com/}{\ProgName{winedt}}.
+Continuing the range of
+tools prettifying your input, we have the \ProgName{emacs} package
+\href{http://x-symbol.sourceforge.net}{\Package{x-symbol}}, which does
+the \WYSIWYG{} part of its work by replacing single \TeX{} tokens and
+accented letter sequences with appropriate-looking characters on the
+screen.
+
+A different type of tool focuses on making update and access to
+previews of the typeset document more immediate. A recent addition
+in several viewers, editors and \TeX{} executables are so-called
+`source specials' for cross-navigation. When \TeX{} compiles a
+document, it will upon request insert special markers for every input
+line into the typeset output. The markers are interpreted by the \acro{DVI}
+previewer which can be made to let its display track the page
+corresponding to the editor input position, or to let the editor jump
+to a source line corresponding to a click in the preview window.
+
+An \ProgName{emacs} package that combines this sort of editor movement
+tracking with automatic fast recompilations (through the use of dumped
+formats) is
+\href{http://pauillac.inria.fr/whizzytex/}{\Package{WhizzyTeX}}
+ which is best used with a previewer by the
+same author.
+
+Another \ProgName{emacs} package called
+\href{http://preview-latex.sourceforge.net}{\Package{preview-latex}}
+tries to solve
+the problem of visual correlation between source and previews in a
+more direct way: it uses a \LaTeX{} package to chop the document source
+into interesting fragments (like figures, text or display math) which
+it runs through \LaTeX{} and replaces the source text of those
+fragments with the corresponding rendered output images. Since it
+does not know about the structure of the images, at the actual cursor
+position the source text is displayed while editing rather than the
+preview. This approach is more or less a hybrid of the source
+prettifying and fast preview approaches since it works in the source
+buffer but uses actual previews rendered by \LaTeX{}.
+
+A more ambitious contender is called \TeX{}lite. This
+system is only available on request from its author;
+it continuously updates its screen with the help of a special version
+of \TeX{} dumping its state in a compressed format at each page and
+using hooks into \TeX{}'s line breaking mechanism for reformatting
+paragraphs on the fly. That way, it can render the output from the
+edited \TeX{} code with interactive speed on-screen, and it offers the
+possibility of editing directly in the preview window.
+
+That many of these systems occupy slightly different niches can be
+seen by comparing the range of the
+\ProgName{emacs}-based solutions ranging from syntax highlighting to instant
+previewing: all of them can be activated at the same time without
+actually interfering in their respective tasks.
+
+The different approaches offer various choices differing in the
+immediacy of their response, the screen area they work on (source or
+separate window), degree of correspondence of the display to the final
+output, and the balance they strike between visual aid and visual
+distraction.
+\begin{ctanrefs}
+\item[preview-latex]Distributed as part of \CTANref{auctex}[preview-latex]
+\item[texmacs]Browse \CTANref{texmacs}
+\end{ctanrefs}
+
+\Question[Q-omegaleph]{Omega and Aleph}
+
+Omega\nothtml{ (\ensuremath{\Omega})} was developed as an extension of
+\TeX{}, to use with multilingual texts, expressed in a variety of
+input encodings. Omega uses 16-bit, Unicode-encoded, characters. It
+provides many innovative concepts, notably including the ``translation
+process'' that takes a character stream and transforms it according to
+various processes that may be internally specified, or be a separate
+program.
+
+While Omega showed a lot of promise at its mid-1990s announcement,
+progress was slow, and development was essentially dead by the time
+that one of the original developers withdrew (taking with him a bunch
+of research students).
+
+Before that distressing event, a separate thread of development had
+started, to produce a program % !avoid space between Aleph and comma
+called Aleph\nothtml{ (\ensuremath{\aleph})}, which merged the facilities of
+\Qref*{\eTeX{}}{Q-etex} into a stable Omega codebase and added other
+extensions. Aleph also proved an attractive platform for many people;
+but its development, too, has dried up.
+
+A presentation at Euro\TeX{} 2006 claimed that development of Omega
+was picking up again, in parallel with research into what the (new)
+developers consider a rational scheme for supporting \TeX{}-style
+typesetting. The new system was to be known as Omega-2
+(\latexhtml{\ensuremath{\Omega_2}}{Omega subscript 2}), and was to be
+designed in a modular fashion so that support of new facilities (such
+as use of advanced OpenType fonts) could be added in a relatively
+straightforward fashion. A quick web search leads to a recommendation
+that potential users consider \Qref*{\luatex{}}{Q-luatex} instead;
+fortunately, lessons learned in Aleph project have been carried
+forward in the development of \luatex{}.
+
+\Question[Q-xetex]{\xetex{}}
+
+\href{http://scripts.sil.org/xetex}{\xetex{}}, by Jonathan Kew, is a
+successor to the shareware TeX/GX program for Macintoshes. It was
+developed as a \acro{WEB} `change file' applied to the original source
+of \tex{}; the main changes include:
+\begin{description}
+\item[The input stage] \xetex{} by default reads Unicode (UTF-8, for
+ instance), although it's also capable of interpreting differently
+ encoded files (for backwards compatibility). Multibyte characters
+ are reduced to a single internal character upon reading, so they are
+ considered as a unique entity when tokenization is performed. (So,
+ for example, you can have command names in cyrillic, if you must,
+ but such a practice is not recommended.)
+\item[The font management] a substantial revision has added support
+ for OpenType and TrueType fonts, delegating some parts to
+ third-party libraries.
+\item[The maths font set up] \xetex{} introduces new primitives for
+ extending the \csx{mathcode} and \csx{mathchardef} commands in TeX,
+ allowing the user to specify characters in the whole Unicode set and
+ in 256 `math families' (\tex{} only has 16, which limits some maths
+ coding techniques).
+\item[``Post-processing'' features (A)] \xetex{} links to the
+ \ProgName{teckit} library so it can apply a \extension{map} file
+ that allows transformation of characters in already formed token
+ lists, before they are processed in the ``stomach'' for typesetting.
+ In this way, a declaration ``\texttt{Ligatures=TeX}'' is provided,
+ which attaches a map directive to the font that transforms the
+ character combinations (familiar to \tex{} users) into a single
+ character; for instance \texttt{-{}-{}-} is transformed into
+ ``\textemdash''.
+\item[``Post-processing'' features (B)] Characters can be assigned to
+ an ``interchar token class'' and it is possible to specify tokens to
+ be added when there is a transition from one class to another. The
+ packages \Package{polyglossia}, \Package{xeCJK} and
+ \Package{ucharclasses} exploit this feature.
+\end{description}
+Otherwise, the process of typesetting is essentially the same as
+\tex{}'s. (However some changes have also been made in the
+hyphenation stage that may give slightly different results if the same
+document is compiled with \pdftex{} or \xetex{}.)
+\begin{ctanrefs}
+\item[polyglossia.sty]\CTANref{polyglossia}
+\item[xeCJK.sty]\CTANref{xecjk}
+\item[ucharclasses.sty]\CTANref{ucharclasses}
+\end{ctanrefs}
+\LastEdit{2013-02-21}
+
+
+\Question[Q-luatex]{\PDFTeX{} and \LuaTeX{}}
+
+Elsewhere in these \acro{FAQ}s, we learn that development of
+\Qref*{\PDFTeX{}}{Q-whatpdftex} is ``in essence'' complete~--- no new
+facilities are being developed at the time of writing. The \PDFTeX{}
+team has announced that they have frozen \PDFTeX{}'s specification in
+its current state (version 1.40.11), and that nothing but bug
+corrections will be provided up to the time of the final release,
+\PDFTeX{} 1.50.0. (The interpretation of the statement seems to allow
+sensible changes that are beyond any reasonable definition of
+\emph{bug}\dots{})
+
+As \PDFTeX{} development ran down,
+development of a new system, \LuaTeX{} was started.
+\href{http://www.lua.org/}{\ProgName{Lua}} is a interpreter designed
+to be incorporated into other applications. \LuaTeX{} consists of a
+\TeX{}-like engine with a \ProgName{lua} interpreter `embedded' in it;
+the \ProgName{lua} interpreter has access to many of the data
+structures used for typesetting, so that the programmer may also
+interpolate chunks of \ProgName{lua} code into their \AllTeX{} macros,
+or as `call-backs' for use when the \TeX{}-like engine does certain
+operations.
+
+This arrangement offers the prospect of a ``semi-soft'' typesetting
+engine: it will have its basic behaviour, but the user gets to
+redefine functionality if an idea occurs~--- there will be no need to
+persuade the world first, and then find a willing developer to work on
+the sources of of the distribution.
+
+The \href{http://www.luatex.org/}{\LuaTeX{} project} is (with monetary
+support from various sources) pursuing avenues that many of the other
+current projects have in their sights, notably Unicode character
+representations and support for OpenType fonts. The intention is
+to integrate the extensions pioneered by \Qref*{Aleph}{Q-omegaleph}.
+Users may also care to view the % ! line break
+\href{http://www.luatex.org/documentation.html}{\luatex{} documentation page}
+or the \href{http://wiki.luatex.org}{\luatex{} \acro{WIKI}}
+
+\texlive{} (2013) holds version 0.76.0 of \luatex{}. This version
+demonstrates the ``final functionality'', though the project
+remains a \ensuremath{\beta}-release. Functional stability was first
+declared for version 0.50.0, released near the end of December 2009.
+
+\CONTeXT{} `Mark 4' can already make use of \LuaTeX{}; much of its
+code already appears in two forms~--- a \TeX{}-based version
+(\extension{mkii}) and a `\extension{mkiv}' version (new functionality
+typically \emph{only} appears in `\extension{mkiv}' form), which uses
+\luatex{} extensions (including \ProgName{lua} scripting). \LaTeX{}
+packages that support its use are appearing (some of them providing
+re-implementations of existing \context{} code).
+
+\latex{} running over \luatex{} (commonly known as Lua\latex{}) is not
+an ``official'' entity (yet), but useful packages are
+appearing (i.e., the \ctan{} path \path{macros/luatex/latex} holds
+several items).
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\luatex{} snapshot]\CTANref{luatex}
+\item[\nothtml{\rmfamily}\pdftex{} distribution]\CTANref{pdftex}
+\end{ctanrefs}
+\LastEdit{2013-05-21}
+
+\Question[Q-ant]{The \textsf{ANT} typesetting system}
+
+Achim Blumensath's \href{http://ant.berlios.de}{\textsf{ANT}} project
+aims not to replicate \TeX{} with a different implementation
+technique, but rather to provide a replacement for \TeX{} which uses
+\TeX{}-like typesetting algorithms in a very different programming
+environment. \textsf{ANT} remains under development, but it is now
+approaching the status of a usable typesetting system.
+
+\textsf{ANT}'s markup language is immediately recognisable to the
+\AllTeX{} user, but the scheme of implementing design in
+\textsf{ANT}'s own implementation language (presently
+\ProgName{OCaml}) comes as a pleasant surprise to the jaded \acro{FAQ}
+writer. This architecture holds the promise of a system that avoids a
+set of serious problems with \TeX{}'s user interface: those that
+derive from the design language being the same as the markup language.
+\begin{ctanrefs}
+\item[\textsf{ANT}]\CTANref{ant}
+\end{ctanrefs}
+
+\Question[Q-extex]{The \ExTeX{} project}
+
+\href{http://www.extex.org/}{The \ExTeX{} project} is
+building on the experience of the many existing \TeX{} development and
+extension projects, to develop a new \TeX{}-like system. The system
+is to be developed in Java (like the ill-fated \NTS{} project).
+
+While \ExTeX{} will implement all of \TeX{}'s primitives, some may be
+marked as obsolete, and ``modern'' alternatives provided (an obvious
+example is the primitive \csx{input} command, whose syntax inevitably
+makes life difficult for users of modern operating system file
+paths). Desirable extensions from \Qref*{\eTeX{}}{Q-etex},
+\Qref*{\PDFTeX{}}{Q-whatpdftex} and \Qref*{\ensuremath{\Omega}}{Q-omegaleph}
+have been identified.
+
+Usability will be another focus of the work: debugging support and log
+filtering mechanisms will please those who have long struggled with
+\TeX{} macros.
+
+\ExTeX{} will accept Unicode input, from the start. In the longer
+term, drawing primitives are to be considered.
+
+\Question[Q-biblatex]{Replacing the \BibTeX{}--\LaTeX{} mechanism}
+
+Producing a successor to \BibTeX{} has long been a favoured activity
+among a certain class of \TeX{}-users; the author has seen reports of
+progress (on several projects), over the years, but few that claim to
+be ready for ``real-world'' use.
+
+Few would deny that \BibTeX{} is ripe for renewal: as originally
+conceived, it was a program for creating bibliographies for technical
+documents, in English. People have contributed mechanisms for a
+degree of multilingual use (whose techniques are arcane, and quite
+likely inextensible), while an extension (\ProgName{bibtex8}) allows
+use with 8-bit character codes, thus providing some multilingual
+capabilities. In addition, specialist \BibTeX{} style files are
+available for use in non-technical papers.
+
+\BibTeX{} uses a style language whose mechanisms are unfamiliar to
+most current programmers: it's difficult to learn, but since there are
+few opportunities to write the language, it's also difficult to become
+fluent (in the way that so many people fluently write the equally
+arcane \TeX{} macro language).
+
+Oren Patashnik (the author of \BibTeX{}) summarises the issues as he
+sees them, in a % !line break
+\href{http://tug.org/TUGboat/Articles/tb24-1/patashnik.pdf}{\acro{TUG} conference paper from 2003}
+that seems to suggest that we might expect a
+\BibTeX{}~1.0 \dots{} which hasn't (yet) appeared.
+
+In the absence of \BibTeX{}~1.0, what do we need from the bibliography
+system of the future?~--- simple: a superset of what \BibTeX{} does
+(or can be made to do), preferably implementing a simpler style
+language, and with coherent multilingual capabilities.
+
+There are two parts to a bibliography system; processing the database
+of citations, and typesetting the results. The existing \bibtex{}
+system provides a means of processing the database, and there are
+macros built into \latex{}, as well as many \latex{} packages, that
+process the results.
+
+Of the direct \BibTeX{} replacements, only two have been submitted to
+\acro{CTAN}: Cross\TeX{} and \ProgName{biber}.
+
+Cross\TeX{}'s language feels familiar to the existing user of
+\BibTeX{}, but it's redesigned in an object-oriented style, and looks
+(to a non-user) as if it may well be adequately flexible. It is said
+to operate as a \bibtex{} replacement.
+
+Cross\TeX{}'s team respond to queries, and seem well aware of the
+need for multilingual support, though it isn't currently offered.
+
+\ProgName{Biber} is intimately associated with the \latex{} package
+\Package{biblatex}; it is logically a \bibtex{} replacement, but is also
+capable of using bibliography databases in its own
+\ProgName{biblatexml} (\acro{XML}-based) format. \Package{Biblatex}
+can also use \bibtex{}, but \ProgName{biber} opens up a far wider
+range of possibilities, including full Unicode support.
+
+\Package{Biblatex} is a processor for the output of an application
+such as \ProgName{biber} or \bibtex{}; the style of citations and of
+the bibliography itself (in your document) is determined by the way
+your \Package{biblatex} style has been set up, not on some
+\bibtex{}-\latex{} package combination. \Package{Biblatex}'s
+structure thus eliminates the collections of \BibTeX{} styles, at a
+stroke; it comes with a basic set of styles, and details are
+determined by options, set at package loading time. The author,
+Philipp Lehman, evaluated the whole field of bibliography software
+before starting, and as a result the package provides answers to
+many of the questions asked in the bibliography sections of these
+\acro{FAQ}s.
+
+\Package{Biblatex} was released as experimental software, but it's
+clear that many users are already using it happily; Lehman is
+responsive to problem reports, at the moment, but a \emph{de facto}
+set of expert users is already establishing itself. A set of
+contributed styles has appeared, which cover some of the trickier
+bibliography styles. The road map of the project shows that we are
+now working on the final \emph{beta} releases before the ``stable''
+\Package{biblatex}~1.0.
+
+Finally, \Package{Amsrefs} uses a transformed \extension{bib} file,
+which is expressed as \LaTeX{} macros. (The package provides a
+\BibTeX{} style that performs the transformation, so that a \LaTeX{}
+source containing a \cmdinvoke{nocite}{*} command enables \BibTeX{} to
+produce a usable \Package{amsrefs} bibliography database.)
+
+\Package{Amsrefs} is maintained by the AMS as part of its author
+support programme,
+\begin{ctanrefs}
+\item[amsrefs.sty]\CTANref{amsrefs}
+\item[biber]\CTANref{biber}
+\item[biblatex.sty]\CTANref{biblatex}
+\item[bibtex8]\CTANref{bibtex8}
+\item[\nothtml{\rmfamily}biblatex contributions]\CTANref{biblatex-contrib}
+\item[\nothtml{\rmfamily}CrossTeX]\CTANref{crosstex}
+\end{ctanrefs}
+
diff --git a/obsolete/help/texfaq/faq-support.tex b/obsolete/help/texfaq/faq-support.tex
new file mode 100644
index 0000000000..1a08d1865c
--- /dev/null
+++ b/obsolete/help/texfaq/faq-support.tex
@@ -0,0 +1,188 @@
+% $Id: faq-support.tex,v 1.9 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{Support Packages for \TeX{}}
+
+\Question[Q-xfigetc]{\AllTeX{}-friendly drawing packages}
+\AliasQuestion{Q-xfig}
+\AliasQuestion{Q-figetc}
+
+\ProgName{(X)Fig} is a menu driven tool that allows you to
+draw objects on the screen of an \acro{X} workstation; \ProgName{transfig}
+is a set of tools which translate the code \ProgName{fig}. The list
+of export formats is very long, and includes \MF{} and \MP{},
+Encapsulated \PS{} and \acro{PDF}, as well as combinations that wrap
+a graphics format in a \LaTeX{} import file, which may include
+\LaTeX{} commands to place text (compiled by \LaTeX{} itself) as
+labels, etc., in the figures.
+
+There's no explicit port of \ProgName{xfig} to windows (although it is
+believed to work under \ProgName{cygwin} with its X-windows system).
+However, the program % ! line break
+\href{http://tams-www.informatik.uni-hamburg.de/applets/jfig/}{\ProgName{jfig}}
+is thought by many to be an acceptable substitute, written in Java.
+
+\ProgName{Asymptote} is a widely-praised development of the \MP{}
+language, which can draw 2D or 3D diagrams, and can also label
+diagrams with \LaTeX{} text; copious documentation is available via
+\href{http://asymptote.sourceforge.net}{\ProgName{asymptote}'s web site}.
+\begin{ctanrefs}
+\item[asymptote]\CTANref{asymptote}
+\item[xfig]\CTANref{xfig}
+\item[transfig]\CTANref{transfig}
+\end{ctanrefs}
+\LastEdit{2011-05-02}
+
+\Question[Q-texcad]{\TeX{}\acro{CAD}, a drawing package for \LaTeX{}}
+
+\TeX{}\acro{CAD} is a program for the \acro{PC} which enables the user to draw diagrams
+on screen using a mouse or arrow keys, with an on-screen menu of available
+picture-elements. Its output is code for the \LaTeX{}
+\environment{picture} environment.
+Optionally, it can be set to include lines at all angles using
+the em\TeX{} driver-family
+\htmlignore
+(\Qref*{\csx{special}s}{Q-specials}).
+\endhtmlignore
+\begin{htmlversion}
+\Qref{\csx{special}s}{Q-specials}.
+\end{htmlversion}
+\TeX{}\acro{CAD} is part of the em\TeX{} distribution.
+
+A Unix port of the program (\ProgName{xtexcad}) has been made.
+\begin{ctanrefs}
+\item[emtex]\CTANref{emtex}
+\item[xtexcad]\CTANref{xtexcad}
+\end{ctanrefs}
+
+\Question[Q-spell]{Spelling checkers for work with \TeX{}}
+
+`Traditional' approaches to the problem (of checking your spelling) were
+designed to work with a plain text file; in our case, we have an \alltex{}
+source. For the user, this is a simple-to-understand way to do the
+job; but for the spell-checker programmer, it requires heuristic (and
+hence fallible) analysis of \alltex{} macros and so on. The
+alternative, of viewing the text \emph{after} \alltex{} has processed
+the results, is covered below.
+
+The user of an \Qref*{shell/editor}{Q-editors} will usually find it
+embeds a spelling checker. For command-line use, there are several
+choices, depending on the system you're using.
+
+For Unix, \ProgName{ispell} was long the program of choice; it is well
+integrated with \ProgName{emacs}, and deals with some \TeX{} syntax.
+However, it has more-or-less been replaced everywhere, by
+\ProgName{aspell}, which was designed as a successor, and certainly
+performs better on most metrics; there remains some question as to its
+performance with \AllTeX{} sources. The most recent offering (which
+is widely used in other open-source software projects) is
+\begin{hyperversion}
+ \href{http://hunspell.sourceforge.net/}{\ProgName{Hunspell}}.
+\end{hyperversion}
+\begin{flatversion}
+ Hunspell~(see \URL{http://hunspell.sourceforge.net/}).
+\end{flatversion}
+\ProgName{Hunspell} is available for other architectures, too; a web
+search shows versions available for Windows, at least.
+
+For the Macintosh, \ProgName{Excalibur} has long been used; its
+distribution comes with dictionaries for several languages.
+\ProgName{Hunspell} (see above) is actually part of OS X from version 10.6.
+
+The \acro{VMS} Pascal program \ProgName{spell} makes special cases of
+some important features of \LaTeX{} syntax.
+
+For \MSDOS{}, there are several programs. \ProgName{Amspell} can be
+called from within an editor, and \ProgName{jspell} is an extended
+version of \ProgName{ispell}.
+
+An alternative approach takes \alltex{} output, and checks that. A
+straightforward approach is to produce \acro{PDF} output, and process
+it with \ProgName{pdftotext}, using any plain text checker on the
+result (the checkers listed above all work in this r\^ole). For this
+to work reasonably well, the user should disable hyphenation before
+making the \acro{PDF} output.
+
+The (experimental) \luatex{}/\latex{} package \Package{spelling} goes
+one step further: it uses \ProgName{lua} code to extract words
+\emph{while typesetting is going on}, but before hyphenation is
+applied. Each word is looked up in a list of known bad spellings, and
+the word highlighted if it appears there. In parallel, a text file is
+created, which can be processed by a `normal' spelling checker to
+produce a revised ``bad spelling'' list. (The package documentation
+shows the end result; it includes words such as `spellling', which are
+duly highlighted.)
+\begin{ctanrefs}
+\item[4spell]\CTANref{4spell}
+\item[amspell]\CTANref{amspell}
+\item[aspell]Browse \CTANref{aspell}~--- choose just those language
+ dictionaries (under subdirectory \File{dict/}) that you need.
+\item[excalibur]\CTANref{Excalibur}
+\item[ispell]\CTANref{ispell}
+\item[jspell]\CTANref{jspell}
+\item[spelling.sty]\CTANref{spelling}
+\item[\nothtml{\bgroup\rmfamily}\acro{VMS}\nothtml{\egroup} spell]%
+ \CTANref{vmspell}
+\item[winedt]\CTANref{winedt}
+\end{ctanrefs}
+\LastEdit{2013-10-02}
+
+\Question[Q-wordcount]{How many words have you written?}
+
+One often has to submit a document (e.g., a paper or a dissertation)
+under some sort of constraint about its size. Sensible people set a
+constraint in terms of numbers of pages, but there are some that
+persist in limiting the numbers of words you type.
+
+A simple solution to the requirement can be achieved following a
+simple observation: the powers that be are unlikely to count all the
+words of a document submitted to them. Therefore, a statistical
+method can be employed: find how many words there are on a full page;
+find how many full pages there are in the document (allowing for
+displays of various sorts, this number will probably not be an
+integer); multiply the two. However, if the document to be submitted
+is to determine the success of the rest of one's life, it takes a
+brave person to thumb their nose at authority quite so
+comprehensively\dots{}
+
+The simplest method is to strip out the \AllTeX{} markup, and to count
+what's left. On a Unix-like system, this may be done using
+\ProgName{detex} and the built-in \ProgName{wc}:
+\begin{quote}
+\begin{verbatim}
+detex <filename> | wc -w
+\end{verbatim}
+\end{quote}
+The technique is beguilingly simple, but it's not terribly accurate
+
+The \ProgName{latexcount} script does the same sort of job, in one
+``step''; being a \ProgName{perl} script, it is in principle rather
+easily configured (see documentation inside the script).
+Several \Qref*{editors and shells}{Q-editors} offer something similar.
+
+\ProgName{TeXcount} goes a long way with heuristics for counting,
+starting from a \LaTeX{} file; the documentation is comprehensive, and
+you may try the script on-line via the % ! line break
+\begin{hyperversion}
+ \href{http://folk.uio.no/einarro/Comp/texwordcount.html}{package home page}.
+\end{hyperversion}
+\begin{flatversion}
+ package home page~(see
+ \URL{http://folk.uio.no/einarro/Comp/texwordcount.html}).
+\end{flatversion}
+
+However, even quite sophisticated stripping of \AllTeX{} markup can
+never be entirely reliable: markup itself may contribute typeset
+words, or even consume words that appear in the text.
+
+The \Package{wordcount} package
+contains a Bourne shell (i.e., typically Unix) script for running a
+\LaTeX{} file with a special piece of supporting \TeX{} code, and then
+counting word indications in the log file. This is probably as
+accurate automatic counting as you can get, if it works for you.
+\begin{ctanrefs}
+\item[detex]\CTANref{detex}
+\item[latexcount.pl]\CTANref{latexcount}
+\item[TeXcount]\CTANref{texcount}
+\item[wordcount]\CTANref{wordcount}
+\end{ctanrefs}
+
diff --git a/obsolete/help/texfaq/faq-symbols.tex b/obsolete/help/texfaq/faq-symbols.tex
new file mode 100644
index 0000000000..07050510f3
--- /dev/null
+++ b/obsolete/help/texfaq/faq-symbols.tex
@@ -0,0 +1,613 @@
+% $Id: faq-symbols.tex,v 1.15 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{Symbols, etc.}
+
+\Question[Q-usesymb]{Using symbols}
+
+Most symbol font sets come with a package that defines commands for
+every symbol in the font. While this is convenient, it can lead to
+difficulties, particularly with name clashes when you load packages
+that cover fonts which duplicate symbols~--- an issue which is
+discussed in
+\begin{narrowversion}
+ \Qref[question]{}{Q-alreadydef}.
+\end{narrowversion}
+\begin{wideversion}
+ ``\Qref{symbol already defined}{Q-alreadydef}''.
+\end{wideversion}
+Some font sets (for example the related set: \FontName{FdSymbol},
+\FontName{MdSymbol} and \FontName{MnSymbol}) are huge, and the
+accompanying macros cover so many symbols that name clashes are surely
+a serious problem.
+
+The \Package{pifont} package (originally designed to use the Adobe
+\FontName{Zapf Dingbats} font) avoids this sort of problem: it requires
+you to know the font position of any symbol you want to use (the
+documentation provides font tables). The basic command is
+\cmdinvoke*{ding}{number} for a single symbol; there are commands for
+other fancier uses. \Package{Pifont} also allows you to select other
+fonts, for similar use.
+
+The \Package{yagusylo} describes itself as ``an extended version of
+\Package{pifont}, gone technicolor''. It provides all the facilities
+of \Package{pifont}, but allows you to create your own mnemonic names
+for symbols. Thus, while you can say % ! line break
+\cmdinvoke*{yagding}[family]{symbol number}[colour], you can also
+define symbol names with \csx{defdingname}, and then use them
+with \cmdinvoke*{yagding*}{symbol name} (the defined name carries the
+font family and colour specified in the arguments of
+\csx{defdingname}).
+
+\Package{Yagusylo} is somewhat complicated, but its documentation is
+clear; it is probably the best tool to use for picking and choosing
+symbols from a variety of font families.
+\begin{ctanrefs}
+\item[FdSymbol \nothtml{\rmfamily}fonts]\CTANref{fdsymbol}
+\item[MdSymbol \nothtml{\rmfamily}fonts]\CTANref{mdsymbol}
+\item[MnSymbol \nothtml{\rmfamily}fonts]\CTANref{mnsymbol}
+\item[pifont.sty]Distributed as part of \CTANref{psnfss}
+\item[yagusylo.sty]\CTANref{yagusylo}
+\end{ctanrefs}
+
+\Question[Q-numbersets]{Symbols for the number sets}
+
+Mathematicians commonly use special lettering for the real numbers and
+other standard number sets. Traditionally these were typeset in bold.
+In the ordinary course of events, but mathematicians do not have
+access to bold chalk, so they invented special symbols that are now
+often used for the number sets. Such symbols are known as
+``blackboard bold'' (or double-stroked) letters; in place of the heavier
+strokes of a bold font, (some) strokes of the letters are doubled.
+The minimum useful set is upper-case letters `I', `N', `R', `Q' and
+`Z'; some fonts offer a figure `1' (for a unit matrix~--- not a number
+set at all).
+
+A set of blackboard bold capitals is available in the \acro{AMS}
+\FontName{msbm} fonts (\FontName{msbm} is available at a range of
+design sizes, with names such as \FontName{msbm10}). The \acro{AMS}
+actually provides a pair of font
+families (the other is called \FontName{msam}), which offer a large number of
+mathematical symbols to supplement those provided in Knuth's fonts.
+The fonts are available in Type~1 format in
+modern distributions. Support for using the fonts under
+\LaTeX{} is available in packages \Package{amssymb} and
+\Package{amsfonts}. The font shape is a rather
+austere sans, which many people don't like (though it captures the
+essence of quickly-chalked writing rather well).
+
+The \FontName{bbold} family is set of blackboard bold fonts written in
+\MF{}. This set offers blackboard bold forms of lower-case letters;
+the font source directory also contains sources for a \LaTeX{} package
+that enables use of the fonts. The fonts are not available in Type~1 format.
+
+The \FontName{bbm} family claims to provide
+`blackboard' versions of most of the \FontName{cm} fonts~\dots{} including
+the bold and bold-extended series. Again, the fonts are designed in
+\MF{} and are not available in Type~1 format. \LaTeX{} macro support
+comes from a package by Torsten Hilbrich.
+
+The \FontName{doublestroke} family comes in just roman
+and sans shapes, at a single weight, and is available both as \MF{}
+sources and as Type~1; the font covers the uppercase latin letters,
+lowercase `h' and 'k', and the digit `1'.
+
+A document that shows the \FontName{bbm}, \FontName{bbold},
+\FontName{doublestroke} and \FontName{msbm} fonts, so that you can get
+a feel for their appearance, is available (\acro{CTAN} package
+\Package{blackboard}).
+
+The \Package{boondox} font set consists of Type~1 versions of the
+\acro{STIX} mathematics set (the originals are distributed in
+\acro{OTF} format). The set contains a font
+`BOONDOXDoubleStruck-Regular' (blackboard bold) (as well as a `bold'
+version of that.
+
+An alternative source of Type~1 fonts with blackboard bold characters
+may be found in the steadily increasing set of complete families, both
+commercial and free, that have been prepared for use with \AllTeX{}
+(see % beware line break
+\htmlonly{``}\Qref[question]{choice of outline fonts}{Q-psfchoice}\htmlonly{''}).
+Of the free sets, the \FontName{txfonts} and \FontName{pxfonts} families
+both come with replicas of \FontName{msam} and \FontName{msbm}, but
+(as noted elsewhere, there are other reasons not to use these fonts);
+revised versions of the fonts, \FontName{newtx} and \FontName{newpx}
+are better adjusted. The \FontName{mathpazo} family includes a
+``mathematically significant'' choice of blackboard bold characters, and the
+\FontName{fourier} fonts contain blackboard bold upper-case letters,
+the digit `1', and lower-case `k'.
+
+The ``lazy person's'' blackboard bold macros:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\R}{{\textsf{R}\hspace*{-0.9ex}%
+ \rule{0.15ex}{1.5ex}\hspace*{0.9ex}}}
+\newcommand{\N}{{\textsf{N}\hspace*{-1.0ex}%
+ \rule{0.15ex}{1.3ex}\hspace*{1.0ex}}}
+\newcommand{\Q}{{\textsf{Q}\hspace*{-1.1ex}%
+ \rule{0.15ex}{1.5ex}\hspace*{1.1ex}}}
+\newcommand{\C}{{\textsf{C}\hspace*{-0.9ex}%
+ \rule{0.15ex}{1.3ex}\hspace*{0.9ex}}}
+\end{verbatim}
+\end{quote}
+are almost acceptable at normal size if the surrounding text is
+\FontName{cmr10} (the position of the vertical bar can be affected by
+the surrounding font). However, they are not part of a proper maths font,
+and do not work in sub- and superscripts. As we've seen, there are
+plenty of alternatives: that mythical ``lazy'' person can inevitably
+do better than the macros, or anything similar using capital `I'
+(which looks even worse!). Voluntary \AllTeX{} effort has redefined
+the meaning of laziness (in this respect!).
+\begin{ctanrefs}
+\item[AMS support files]Distributed as part of \CTANref{amsfonts}
+\item[AMS symbol fonts]Distributed as part of \CTANref{amsfonts}
+\item[bbm fonts]\CTANref{bbm}
+\item[bbm macros]\CTANref{bbm-macros}
+\item[bbold fonts]\CTANref{bbold}
+\item[blackboard \nothtml{\rmfamily}evaluation set]\CTANref{blackboard}
+\item[doublestroke fonts]\CTANref{doublestroke}
+\item[fourier fonts]\CTANref{fourier}
+\item[mathpazo fonts]\CTANref{mathpazo}
+\item[newpx]\CTANref{newpx}
+\item[newtx]\CTANref{newtx}
+\item[pxfonts]\CTANref{pxfonts}
+\item[txfonts]\CTANref{txfonts}
+\end{ctanrefs}
+\LastEdit{2013-12-04}
+
+\Question[Q-scriptfonts]{Better script fonts for maths}
+
+The font selected by \csx{mathcal} is the only script font `built
+in'. However, there are other useful calligraphic fonts included with
+modern \TeX{} distributions.
+\begin{description}
+\item[Euler] The \Package{eucal} package (part of most sensible \TeX{}
+ distributions; the fonts are part of the \acro{AMS} font set) gives
+ a slightly curlier font than the default. The package changes the
+ font that is selected by \csx{mathcal}.
+
+ Type 1 versions of the fonts are available in the \acro{AMS} fonts
+ distribution.
+\item[mathabx] The \FontName{mathabx} bundle provides calligraphic
+ letters (in both upper and lower case); the fonts were developed in
+ MetaFont, but a version in Adobe Type 1 format is available. The
+ bundle's documentation offers a series of comparisons of its
+ calligraphic set with Computer Modern's (both regular mathematical
+ and calligraphic letters); the difference are not large.
+\item[mnsymbol] The \FontName{mnsymbol} bundle provides (among many
+ other symbols) a set of calligraphic letters, though (again) they're
+ rather similar to the default Computer Modern set.
+\item[RSFS] The \Package{mathrsfs} package uses a really fancy script
+ font (the name stands for ``Ralph Smith's Formal Script'') which is
+ already part of most modern \TeX{} distributions (Type~1 versions of
+ the font are also provided, courtesy of Taco Hoekwater). The package
+ creates a new command \csx{mathscr}.
+\item[RSFSO] The bundle \Package{rsfso} provides a less dramatically
+ oblique version of the \acro{RSFS} fonts; the result proves quite
+ pleasing~--- similar to the effect of the the (commercial) script
+ font in the Adobe Mathematical Pi collection.
+\item[Zapf Chancery] is the standard \PS{} calligraphic font. There
+ is no package but you can easily make it available by means of the
+ command
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\DeclareMathAlphabet{\mathscr}{OT1}{pzc}%
+ {m}{it}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\DeclareMathAlphabet{\mathscr}{OT1}{pzc}{m}{it}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+ in your preamble. You may find the font rather too big; if so, you
+ can use a scaled version of it like this:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\DeclareFontFamily{OT1}{pzc}{}
+\DeclareFontShape{OT1}{pzc}{m}{it}%
+ {<-> s * [0.900] pzcmi7t}{}
+\DeclareMathAlphabet{\mathscr}{OT1}{pzc}%
+ {m}{it}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\DeclareFontFamily{OT1}{pzc}{}
+\DeclareFontShape{OT1}{pzc}{m}{it}{<-> s * [0.900] pzcmi7t}{}
+\DeclareMathAlphabet{\mathscr}{OT1}{pzc}{m}{it}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+ Adobe Zapf Chancery (which the above examples use) is distributed in
+ any but the most basic \PS{} printers. A substantially identical
+ font (to the extent that the same metrics may be used) is
+ available from \acro{URW}, called URW Chancery L: it is distributed
+ as part of the ``URW base35'' bundle; the
+ \Package{urwchancal} package (which includes virtual fonts to tweak
+ appearance) provides for its use as a calligraphic font.
+
+ The TeX Gyre font family also includes a Chancery replacement,
+ \FontName{Chorus}; use it with \Package{tgchorus} (and ignore the
+ complaints about needing to change font shape).
+\end{description}
+Examples of the available styles are linked from the packages'
+catalogue entries.
+\begin{ctanrefs}
+\item[eucal.sty]Distributed as part of \CTANref{amsfonts}
+\item[euler fonts]Distributed as part of \CTANref{amsfonts}
+\item[mathabx \nothtml{\rmfamily}as \MF{}]\CTANref{mathabx}
+\item[mathabx \nothtml{\rmfamily}in Type 1 format]\CTANref{mathabx-type1}
+\item[mathrsfs.sty]Distributed as part of \CTANref{jknappen-macros}[mathrsfs]
+\item[mnsymbol \nothtml{\rmfamily}fonts]\CTANref{mnsymbol}
+\item[rsfs \nothtml{\rmfamily}fonts]\CTANref{rsfs}
+\item[rsfso \nothtml{\rmfamily}fonts]\CTANref{rsfso}
+\item[Script font examples]\CTANref{mathscript}
+\item[TeX Gyre Chorus font family]Distributed as part of \CTANref{tex-gyre}[tex-gyre-chorus]
+\item[urwchancal]\CTANref{urwchancal}[urwchancal]
+\item[URW Chancery L]Distributed as part of \CTANref{urw-base35}
+\end{ctanrefs}
+\LastEdit{2011-08-17}
+
+\Question[Q-boldgreek]{Setting bold Greek letters in \LaTeX{} maths}
+
+The issue here is complicated by the fact that \csx{mathbf} (the
+command for setting bold \emph{text} in \TeX{} maths) affects a select
+few mathematical `symbols' (the uppercase Greek letters).
+
+In the default configuration, lower-case Greek letters behave
+differently from upper-case Greek letters (the lower-case greek
+letters are in the maths fonts, while the upper-case letters are in
+the original (OT1-encoded) text fonts).
+
+The \plaintex{} solution \emph{does} work, in a limited way; you set a
+maths \emph{style}, before you start an equation; thus
+\begin{quote}
+\begin{verbatim}
+{\boldmath$\theta$}
+\end{verbatim}
+\end{quote}
+does the job, but \csx{boldmath} may not be used in maths mode. As a
+result, this solution requires that you embed single bold characters
+in a text box:
+\begin{quote}
+\begin{verbatim}
+$... \mbox{\boldmath$\theta$} ...$
+\end{verbatim}
+\end{quote}
+which then causes problems in superscripts, etc. With
+\Package{amsmath} loaded,
+\begin{quote}
+\begin{verbatim}
+$... \text{\boldmath$\theta$} ...$
+\end{verbatim}
+\end{quote}
+does the trick (and is less bad in regard to superscripts, etc), but
+is an unsatisfactory solution, too.
+
+These problems may be addressed by using a bold mathematics package.
+\begin{itemize}
+\item The \Package{bm} package, which is part of the \LaTeX{} tools
+ distribution, defines a command \csx{bm} which may be used anywhere
+ in maths mode.
+\item The \Package{amsbsy} package (which is part of \AMSLaTeX{})
+ defines a command \csx{boldsymbol}, which (though slightly less
+ comprehensive than \csx{bm}) covers almost all common cases.
+\end{itemize}
+
+All these solutions apply to all mathematical symbols, not merely
+Greek letters.
+\begin{ctanrefs}
+\item[bm.sty]Distributed as part of \CTANref{2etools}[bm]
+\item[amsbsy.sty]Distributed as part of \AMSLaTeX{} \CTANref{amslatex}[amsbsy]
+\item[amsmath.sty]Distributed as part of \AMSLaTeX{}
+ \CTANref{amslatex}[amsmath]
+\end{ctanrefs}
+\LastEdit{2013-06-12}
+
+\Question[Q-prinvalint]{The Principal Value Integral symbol}
+
+This symbol (an integral sign, `crossed') does not appear in any of
+the fonts ordinarily available to \AllTeX{} users, but it can be
+created by use of the following macros:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\def\Xint#1{\mathchoice
+ {\XXint\displaystyle\textstyle{#1}}%
+ {\XXint\textstyle\scriptstyle{#1}}%
+ {\XXint\scriptstyle\scriptscriptstyle{#1}}%
+ {\XXint\scriptscriptstyle\scriptscriptstyle{#1}}%
+ \!\int}
+\def\XXint#1#2#3{{\setbox0=\hbox{$#1{#2#3}{\int}$}
+ \vcenter{\hbox{$#2#3$}}\kern-.5\wd0}}
+\def\ddashint{\Xint=}
+\def\dashint{\Xint-}
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\def\Xint#1{\mathchoice
+ {\XXint\displaystyle\textstyle{#1}}%
+ {\XXint\textstyle\scriptstyle{#1}}%
+ {\XXint\scriptstyle\scriptscriptstyle{#1}}%
+ {\XXint\scriptscriptstyle
+ \scriptscriptstyle{#1}}%
+ \!\int}
+\def\XXint#1#2#3{{%
+ \setbox0=\hbox{$#1{#2#3}{\int}$}
+ \vcenter{\hbox{$#2#3$}}\kern-.5\wd0}}
+\def\ddashint{\Xint=}
+\def\dashint{\Xint-}
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+\csx{dashint} gives a single-dashed integral sign, \csx{ddashint} a
+double-dashed one.
+
+\Question[Q-underscore]{How to typeset an underscore character}
+
+The underscore character `\texttt{\_}' is ordinarily used in \TeX{} to
+indicate a subscript in maths mode; if you type \texttt{\_}, on its
+own, in the course of ordinary text, \TeX{} will complain. The
+``proper'' \latex{} command for underscore is \csx{textunderscore},
+but the \latexo{} command \csx{\_} is an established alias. Even so,
+if you're writing a document which will contain a large number of
+underscore characters, the prospect of typing \csx{\_} for every one
+of them will daunt most ordinary people.
+
+Moderately skilled macro programmers can readily generate a quick hack
+to permit typing `\texttt{\_}' to mean `text underscore' (the answer in
+\begin{hyperversion}
+ ``\Qref{defining characters as macros}{Q-activechars}''
+\end{hyperversion}
+\begin{flatversion}
+ \Qref[question]{}{Q-activechars}
+\end{flatversion}
+uses this example to illustrate its techniques).
+However, the code \emph{is} somewhat tricky, and more importantly
+there are significant points where it's easy to get it wrong. There
+is therefore a package \Package{underscore} which provides a general
+solution to this requirement.
+
+There is a problem, though: \acro{OT}1 text fonts don't contain an
+underscore character, unless they're in the typewriter version of the
+encoding (used by fixed-width fonts such as \texttt{cmtt}). In place
+of such a character, \latex{} (in \acro{OT}1 encoding) uses a short rule
+for the command \csx{textunderscore}, but this poses problems
+for systems that interpret \acro{PDF}~--- for example those
+\acro{PDF}-to-voice systems used by those who find reading difficult.
+
+So either you must ensure that your underscore characters only occur
+in text set in a typewriter font, or you must use a more modern
+encoding, such as \acro{T}1, which has the same layout for every font,
+and thus an underscore in every font.
+
+A stable procedure to achieve this is:
+\begin{quote}
+\begin{verbatim}
+% (1) choose a font that is available as T1
+% for example:
+\usepackage{lmodern}
+
+% (2) specify encoding
+\usepackage[T1]{fontenc}
+
+% (3) load symbol definitions
+\usepackage{textcomp}
+\end{verbatim}
+\end{quote}
+which will provide a command \csx{textunderscore} which robustly
+selects the right character. The \Package{underscore} package,
+mentioned above, will use this command.
+\begin{ctanrefs}
+\item[underscore.sty]\CTANref{underscore}
+\end{ctanrefs}
+\LastEdit{2011-08-17}
+
+\Question[Q-atsign]{How to type an `@' sign?}
+
+Long ago, some packages used to use the `@' sign as a special
+character, so that special measures were needed to type it. While
+those packages are still in principle available, few people use them,
+and those that do use them have ready access to rather good
+documentation.
+
+Ordinary people (such as the author of this \acro{FAQ}) need only type
+`@'.
+\LastEdit{2011-08-16}
+
+\Question[Q-euro]{Typesetting the Euro sign}
+
+The European currency ``Euro'' (\texteuro {}) is represented by a symbol
+of somewhat dubious design, but it's an important currency and
+\AllTeX{} users need to typeset it. When the currency first appeared,
+typesetting it was a serious problem for \AllTeX{} users; things are
+easier now (most fonts have some way of providing a Euro sign), but
+this answer provides a summary of methods ``just in case''.
+
+Note that the Commission of the European Community at first deemed
+that the Euro symbol should always be set in a sans-serif font;
+fortunately, this eccentric ruling has now been rescinded, and one may
+apply best typesetting efforts to making it appear at least slightly
+``respectable'' (typographically).
+
+The \acro{TS}1-encoded \acro{TC} fonts provided as part of the \acro{EC} font
+distribution provide Euro glyphs. The fonts are called Text Companion
+(\acro{TC}) fonts, and offer the same range
+of faces as do the \acro{EC} fonts themselves. The
+\Package{textcomp} package provides a \csx{texteuro} command for
+accessing the symbol, which selects a symbol to match the surrounding
+text. The design of the symbol in the \acro{TC} fonts is not
+universally loved\dots{}
+Nevertheless, use the \acro{TC} font version of the symbol if you are
+producing documents using Knuth's Computer Modern Fonts.
+
+The each of the \Package{latin9} and \Package{latin10} input encoding
+definitions for the \Package{inputenc} package has a euro character
+defined (character position 164, occupied in other \acro{ISO} Latin
+character sets by the ``currency symbol'' \textcurrency {}, which
+ordinary people seldom see except in character-set listings\dots{}).
+The \acro{TC} encoding file offers the command \csx{texteuro} for the
+character; that command is (probably) \emph{only} available from the
+\Package{textcomp} package.
+
+Use of the \acro{TC} encoding character may therefore made via
+\csx{texteuro} or via the Latin-9 or Latin-10 character in ordinary
+text.
+
+Note that there is a Microsoft code page position (128), too, and that has
+been added to \Package{inputenc} tables for \acro{CP}1252 and
+\acro{CP}1257. (There's another position in \acro{CP}858, which has
+it in place of ``dotless i'' in \acro{CP850}; the standardisation of
+these things remains within Microsoft, so one can never tell what will
+come next\dots{})
+
+Outline fonts which contain nothing but Euro symbols are available
+(free) from
+\href{ftp://ftp.adobe.com/pub/adobe/type/win/all/eurofont.exe}{Adobe}\nobreakspace---
+the file is packaged as a \ProgName{Windows} self-extracting
+executable, but it may be decoded as a \extension{zip} format archive
+on other operating systems.
+The \Package{euro} bundle contains metrics, \ProgName{dvips} map
+files, and macros (for \plaintex{} and \LaTeX{}), for using these
+fonts in documents. \LaTeX{} users will find two packages in the
+bundle: \Package{eurosans} only offers the sans-serif version (to
+conform with the obsolete ruling about sans-serif-only symbols; the
+package provides the
+command \csx{euro}), whereas \Package{europs} matches the Euro symbol
+with the surrounding text (providing the command \csx{EUR}). To use
+either package
+with the \Package{latin9} encoding, you need to define \csx{texteuro}
+as an alias for the euro command the package defines.
+
+The Adobe fonts are probably the best bet for use in non-Computer
+Modern environments. They are apparently designed to fit with Adobe
+Times, Helvetica and Courier, but can probably fit with a wider range
+of modern fonts.
+
+The \Package{eurofont} package provides a compendious analysis of the
+``problem of the euro symbol'' in its documentation, and offers macros
+for configuring the source of the glyphs to be used; however, it seems
+rather large for everyday use.
+
+The \Package{euro-ce} bundle is a rather pleasing \MF{}-only design
+providing Euro symbols in a number of shapes. The file
+\File{euro-ce.tex}, in the distribution, offers hints as to how a
+\plaintex{} user might make use of the fonts.
+
+Euro symbols are found in several other places, which we list here for
+completeness.
+
+The \Package{marvosym} font contains a Euro symbol (in a number of
+typographic styles), among many other good things; the font is
+available in both Adobe Type 1 and TrueType formats.
+
+Other \MF{}-based bundles containing Euro symbols are to be found in
+\Package{china2e} (whose primary aim is Chinese dates and suchlike
+matters) and the \Package{eurosym} fonts.
+\begin{ctanrefs}
+\item[china2e bundle]\CTANref{china2e}
+\item[EC fonts]\CTANref{ec}
+\item[euro fonts]\CTANref{euro-fonts}
+\item[euro-ce fonts]\CTANref{euro-ce}
+\item[eurofont.sty]\CTANref{eurofont}
+\item[eurosym fonts]\CTANref{eurosym}
+\item[marvosym fonts]\CTANref{marvosym-fonts}
+\item[textcomp.sty]Part of the \LaTeX{} distribution.
+\end{ctanrefs}
+\LastEdit{2011-11-21}
+
+\Question[Q-tradesyms]{How to get copyright, trademark, etc.}
+
+The ``\nothtml{Comprehensive symbol list'' (}% beware line break
+\Qref{Comprehensive symbol list}{Q-symbols}\latexhtml{)}{''}, lists
+the symbol commands \csx{textcopyright},
+\csx{textregistered} and \csx{texttrademark}, which are available in
+\acro{TS}1-encoded fonts, and which are enabled using the
+\Package{textcomp} package.
+
+In fact, all three commands are enabled in default \LaTeX{}, but the
+glyphs you get aren't terribly beautiful. In particular,
+\csx{textregistered} behaves oddly when included in bold text (for
+example, in a section heading), since it is composed of a small-caps
+letter, which typically degrades to a regular shape letter when asked
+to set in a bold font. This means that the glyph becomes a circled
+``r'', whereas the proper symbol is a circled ``R''.
+
+This effect is of course avoided by use of \Package{textcomp}.
+
+Another problem arises if you want \csx{textregistered} in a
+superscript position (to look similar to \csx{texttrademark}).
+Using a maths-mode superscript to do this provokes lots of pointless
+errors: you \emph{must} use
+\begin{quote}
+\begin{verbatim}
+\textsuperscript{\textregistered}
+\end{verbatim}
+\end{quote}
+
+\Question[Q-osf]{Using ``old-style'' figures}
+
+These numbers are also called medieval or lowercase figures and their
+use is mostly font-specific. Terminology is confusing since the
+lining figures (which are now the default) are a relatively recent
+development (19th century) and before they arrived, oldstyle figures
+were the norm, even when setting mathematics. (An example is Thomas
+Harriot's \emph{Artis Analyticae Praxis} published in 1631). In a
+typical old style 3, 4, 5, 7 and 9 have descenders and 6 and 8 ascend
+above the x-height; sometimes 2 will also ascend (this last seems to
+be a variation associated with French typography).
+
+\LaTeX{} provides a command \cmdinvoke*{oldstylenums}{digits}, which
+by default uses an old-style set embedded in Knuth's `math italic'
+font. The command is only sensitive to `bold' of the font style of
+surrounding text: glyphs (for this command) are only available to
+match the normal medium and bold (i.e., bold-extended) weights of the
+Computer Modern Roman fonts.
+
+The \Package{textcomp} package changes \csx{oldstylenums} to use the
+glyphs in the Text Companion fonts (\LaTeX{} \acro{TS}1 encoding) when
+in text mode, and also makes them available using the macros of the
+form \csx{text<number>oldstyle}, e.g., \csx{textzerooldstyle}.
+(Of course, not all font families can provide this facility.)
+
+Some font packages (e.g., \Package{mathpazo}) make old-style figures
+available and provide explicit support for making them the default:
+\cmdinvoke{usepackage}[osf]{mathpazo} selects a form where digits are
+always old-style in text. The \Package{fontinst} package will
+automatically generate ``old-style versions'' of commercial Adobe Type
+1 font families for which ``expert'' sets are available.
+
+It's also possible to make virtual fonts, that offer old-style digits,
+from existing font packages. The \FontName{cmolddig} bundle provides
+a such a virtual version of Knuth's originals, and the \FontName{eco}
+or \FontName{hfoldsty} bundles both provide versions of the \acro{EC}
+fonts. The \FontName{lm} family offers old-style figures to OpenType
+users (see below), but we have no stable mapping for \FontName{lm}
+with old-style digits from the Adobe Type 1 versions of the fonts.
+
+Originally, oldstyle figures were only to be found the expert sets of
+commercial fonts, but now they are increasingly widely available. An
+example is Matthew Carter's Georgia font, which has old-style figures
+as its normal form (the font was created for inclusion with certain
+Microsoft products and is intended for on-screen viewing).
+
+OpenType fonts have a pair of axes for number variations~---
+proportional/tabular and lining/oldstyle selections are commonly
+available. ``Full feature access'' to OpenType fonts, making such
+options available to the \AllTeX{} user, is already supported by
+\Qref*{\xetex{}}{Q-xetex} using, for example, the \Package{fontspec}
+package. Similar support is also in the works for
+\Qref*{\LuaTeX{}}{Q-luatex}.
+\begin{ctanrefs}
+\item[boondox \nothtml{\rmfamily}fonts]\CTANref{boondox}
+\item[cmolddig \nothtml{\rmfamily}fonts]\CTANref{cmolddig}
+\item[eco \nothtml{\rmfamily}fonts]\CTANref{eco}
+\item[fontinst]\CTANref{fontinst}
+\item[fontspec.sty]\CTANref{fontspec}
+\item[mathpazo \nothtml{\rmfamily}fonts]\CTANref{mathpazo}
+\end{ctanrefs}
+\LastEdit{2013-12-04}
diff --git a/obsolete/help/texfaq/faq-t-g-wr.tex b/obsolete/help/texfaq/faq-t-g-wr.tex
new file mode 100644
index 0000000000..48e5a1af7f
--- /dev/null
+++ b/obsolete/help/texfaq/faq-t-g-wr.tex
@@ -0,0 +1,467 @@
+% $Id: faq-t-g-wr.tex,v 1.15 2014/01/22 17:27:56 rf10 Exp $
+
+\section{Things are Going Wrong\dots{}}
+
+\subsection{Getting things to fit}
+\Question[Q-enlarge]{Enlarging \TeX{}}
+
+The \TeX{} error message `capacity exceeded' covers a multitude of
+problems. What has been exhausted is listed in brackets after the
+error message itself, as in:
+\begin{quote}
+\begin{verbatim}
+! TeX capacity exceeded, sorry
+... [main memory size=263001].
+\end{verbatim}
+\end{quote}
+Most of the time this error can be fixed
+\emph{without} enlarging \TeX{}. The most common causes are unmatched braces,
+extra-long lines, and poorly-written macros. Extra-long lines are
+often introduced when files are transferred incorrectly between
+operating systems, and line-endings are not preserved properly (the
+tell-tale sign of an extra-long line error is the complaint
+that the `|buf_size|' has overflowed).
+
+If you really need to extend your \TeX{}'s capacity, the proper method
+depends on your installation. There is no need (with modern \TeX{}
+implementations) to change the defaults in Knuth's \acro{WEB} source;
+but if you do need to do so, use a change file to modify the values set in
+module 11, recompile your \TeX{} and regenerate all format files.
+
+Modern implementations allow the sizes of the various bits of \TeX{}'s
+memory to be changed semi-dynamically. Some (such as em\TeX{}) allow
+the memory parameters to be changed in command-line switches when
+\TeX{} is started; most frequently, a configuration file is read which
+specifies the size of the memory. On \ProgName{web2c}-based systems,
+this file is called \File{texmf.cnf}: see the documentation that comes
+with the distribution for other implementations. Almost invariably,
+after such a change, the format files need to be regenerated after
+changing the memory parameters.
+
+\Question[Q-usepictex]{Why can't I load \pictex{}?}
+
+\pictex{} is a resource hog; fortunately, most modern \TeX{}
+implementations offer generous amounts of space, and most modern
+computers are pretty fast, so users aren't too badly affected by its
+performance.
+
+However, \pictex{} has the further unfortunate tendency to fill up
+\TeX{}'s fixed-size arrays~--- notably the array of 256 `dimension'
+registers. This is a particular problem when you're using
+\File{pictex.sty} with \LaTeX{} and some other packages that also need
+dimension registers. When this happens, you will see the \TeX{} error
+message:
+\begin{quote}
+\begin{verbatim}
+! No room for a new \dimen.
+\end{verbatim}
+\end{quote}
+There is nothing that can directly be done about this error: you
+can't extend the number of available \csx{dimen} registers without
+extending \TeX{} itself.
+\begin{wideversion} % hyper
+ \Qref{Omega}{Q-omegaleph} and \Qref{\eTeX{}}{Q-etex} both do this.
+\end{wideversion}
+\begin{narrowversion}
+ \ensuremath{\Omega} and \eTeX{}~---
+ \Qref[see questions]{}{Q-omegaleph}
+ \Qref[and]{}{Q-etex} respectively~--- both do this.
+\end{narrowversion}
+
+It's actually quite practical (with most modern distributions) to use
+\eTeX{}'s extended register set: use package \Package{etex} (which
+comes with \eTeX{} distributions) and the allocation mechanism is
+altered to cope with the larger register set: \pictex{} will now load.
+
+If you're in some situation where you can't use \eTeX{}, you need to change
+\pictex{}; unfortunately \pictex{}'s author is no longer active in the
+\TeX{} world, so one must resort to patching. There are two solutions
+available.
+
+The \CONTeXT{} module \File{m-pictex.tex} (for \plaintex{} and
+variants) or the corresponding \LaTeX{} \Package{m-pictex} package provide
+an ingenious solution to the problem based on hacking the code of
+\csx{newdimen} itself.
+
+Alternatively, Andreas Schrell's \Package{pictexwd} and related
+packages replace \pictex{} with a version that uses 33 fewer
+\csx{dimen} registers; so use \Package{pictexwd} in place of
+\Package{pictex} (either as a \LaTeX{} package, or as a file to read
+into \plaintex{}).
+
+And how does one use \pictex{} anyway, given that the
+manual is so \Qref*{hard to come by}{Q-docpictex}?
+Fortunately for us all, the \ProgName{MathsPic}
+system may be used to translate a somewhat different language into
+\pictex{} commands; and the \ProgName{MathsPic} manual is free (and
+part of the distribution). \ProgName{MathsPic} is available either as
+a \ProgName{Basic} program for \acro{DOS}, or as a \ProgName{Perl}
+program for other systems (including Windows, nowadays).
+\begin{ctanrefs}
+\item[etex.sty]\CTANref{etex-pkg}
+\item[m-pictex.sty]Distributed as part of \CTANref{context-tmf}
+\item[m-pictex.tex]Distributed as part of \CTANref{context-tmf}
+\item[MathsPic]\CTANref{mathspic}
+\item[pictexwd.sty]Distributed as part of \CTANref{pictex-addon}[pictexwd]
+\end{ctanrefs}
+\LastEdit{2014-01-22}
+
+\subsection{Making things stay where you want them}
+
+\Question[Q-floats]{Moving tables and figures in \LaTeX{}}
+
+Tables and figures have a tendency to surprise, by \emph{floating}
+away from where they were specified to appear. This is in fact
+perfectly ordinary document design; any professional typesetting
+package will float figures and tables to where they'll fit without
+violating the certain typographic rules. Even if you use the
+placement specifier~''\texttt{h}'' (for `here'), the figure or table
+will not be
+printed `here' if doing so would break the rules; the rules themselves
+are pretty simple, and are given on page~198, section~C.9 of the
+\LaTeX{} manual. In the worst case, \LaTeX{}'s rules can cause the
+floating items to pile up to the extent that you get an error message
+saying ``\Qref*{Too many unprocessed floats}{Q-tmupfl}''.
+What follows is a simple checklist of things to do to solve these
+problems (the checklist talks throughout about figures, but applies
+equally well to tables, or to ``non-standard'' floats defined by the
+\Package{float} or other packages).
+\begin{itemize}
+\item Do your figures need to float at all? If not, look at the
+ recommendations for ``\Qref*{non-floating floats}{Q-figurehere}''
+\item Are the placement parameters on your figures right? The
+ default (``\texttt{tbp}'') is usually satisfactory, but you can
+ reasonably change it (for example, to add an ``\texttt{h}'').
+ Whatever you do, \emph{don't}
+ omit the ``\texttt{p}'': doing so could cause \LaTeX{} to believe that if you
+ can't have your figure \emph{here}, you don't want it
+ \emph{anywhere}. (\LaTeX{} does try to avoid being confused in
+ this way\dots{})
+\item \LaTeX{}'s own float placement parameters could be preventing
+ placements that seem entirely ``reasonable'' to you~--- they're
+ notoriously rather conservative. To encourage \LaTeX{} not to move
+ your figure, you may need to loosen its demands. (The most important
+ ones are the ratio of text to float on a given page, but it's
+ sensible to have a fixed set that changes the whole lot, to meet
+ every eventuality.)
+\begin{verbatim}
+\renewcommand{\topfraction}{.85}
+\renewcommand{\bottomfraction}{.7}
+\renewcommand{\textfraction}{.15}
+\renewcommand{\floatpagefraction}{.66}
+\renewcommand{\dbltopfraction}{.66}
+\renewcommand{\dblfloatpagefraction}{.66}
+\setcounter{topnumber}{9}
+\setcounter{bottomnumber}{9}
+\setcounter{totalnumber}{20}
+\setcounter{dbltopnumber}{9}
+\end{verbatim}
+ The meanings of these
+ parameters are described on pages~199--200, section~C.9 of the
+ \LaTeX{} manual.
+\item Are there places in your document where you could `naturally'
+ put a \csx{clearpage} command? If so, do: the backlog of floats is
+ cleared after a \csx{clearpage}. (Note that the \csx{chapter}
+ command in the standard \Class{book} and \Class{report} classes
+ implicitly executes \csx{clearpage}, so your floats can't wander past
+ the end of a chapter.)
+\item Try the \Package{placeins} package: it defines a
+ \csx{FloatBarrier} command beyond which floats may not pass. A
+ package option allows you to declare that floats may not pass a
+ \csx{section} command, but you can place \csx{FloatBarrier}s wherever
+ you choose.
+\item If you are bothered by floats appearing at the top of the page
+ (before they are specified in your text), try the \Package{flafter}
+ package, which avoids this problem by insisting that floats should
+ always appear after their definition.
+\item Have a look at the \LaTeXe{} \Package{afterpage} package.
+ Its documentation gives as an example the idea
+ of putting \csx{clearpage} \emph{after} the current page (where it
+ will clear the backlog, but not cause an ugly gap in your text), but
+ also admits that the package is somewhat fragile. Use it as a last
+ resort if the other possibilities below don't help.
+\item If you would actually \emph{like} great blocks of floats at the
+ end of each of your chapters, try the \Package{morefloats} package;
+ this allows you to increase the number of floating inserts that \LaTeX{}
+ can handle at one time (from its original value of~18, in
+ \LaTeXe{}). Note that, even with \etex{}'s greater supply of
+ registers, there is still a modest limit on the total number of
+ floating inserts (\etex{} increases the total number of registers
+ available, but inserts don't work if they are constructed from
+ registers in the extended range).
+
+ Caveat: if you are using \Package{etex} to increase the number of
+ registers available, you need to ``reserve'' some inserts for
+ \Package{morefloats}: something like:
+ \begin{quote}
+\begin{verbatim}
+\usepackage{etex}
+\reserveinserts{18}
+\usepackage{morefloats}
+\end{verbatim}
+ \end{quote}
+\item If you actually \emph{wanted} all your figures to float to the
+ end (\emph{e.g}., for submitting a draft copy of a paper), don't
+ rely on \LaTeX{}'s mechanism: get the \Package{endfloat} package to do
+ the job for you.
+\end{itemize}
+\begin{ctanrefs}
+\item[afterpage.sty]Distributed as part of \CTANref{2etools}[afterpage]
+\item[endfloat.sty]\CTANref{endfloat}
+\item[etex.sty]\CTANref{etex-pkg}
+\item[flafter.sty]Part of the \LaTeX{} distribution
+\item[float.sty]\CTANref{float}
+\item[morefloats.sty]\CTANref{morefloats}
+\item[placeins.sty]\CTANref{placeins}
+\end{ctanrefs}
+
+\Question[Q-underline]{Underlined text won't break}
+
+Knuth made no provision for underlining text: he took the view that
+underlining is not a typesetting operation, but rather one that
+provides emphasis on typewriters, which typically offer but one
+typeface. The corresponding technique in typeset text is to switch
+from upright to italic text (or vice-versa): the \LaTeX{} command
+\csx{emph} does just that to its argument.
+
+Nevertheless, typographically illiterate people (such as those that
+specify double-spaced
+\nothtml{thesis styles~--- }\Qref{thesis styles}{Q-linespace})
+continue to require underlining of us, so \LaTeX{} as distributed
+defines an \csx{underline} command that applies the mathematical
+`underbar' operation to text. This technique is not entirely
+satisfactory, however: the text gets stuck into a box, and won't break
+at line end.
+
+Two packages are available that solve this problem. The
+\Package{ulem} package redefines the
+\csx{emph} command to underline its argument; the underlined text thus
+produced behaves as ordinary emphasised text, and will break over the
+end of a line. (The package is capable of other peculiar effects,
+too: read its documentation.)
+The \Package{soul} package defines an \csx{ul} command (after which the
+package is, in part, named) that underlines running text.
+
+Beware of \Package{ulem}'s default behaviour, which is to convert the
+\csx{emph} command into an underlining command; this can be avoided by
+loading the package with:
+\begin{quote}
+\begin{verbatim}
+\usepackage[normalem]{ulem}
+\end{verbatim}
+\end{quote}
+\begin{ctanrefs}
+\item[ulem.sty]\CTANref{ulem}
+\item[soul.sty]\CTANref{soul}
+\end{ctanrefs}
+
+\Question[Q-widows]{Controlling widows and orphans}
+
+Widows (the last line of a paragraph at the start of a page) and
+orphans (the first line of paragraph at the end of a page) interrupt
+the reader's flow, and are generally considered ``bad form'';
+\AllTeX{} takes some precautions to avoid them, but completely
+automatic prevention is often impossible. If you are typesetting your
+own text, consider whether you can bring yourself to change the
+wording slightly so that the page break will fall differently.
+
+The \AllTeX{} page maker, when forming a page, takes account of variables
+\csx{widowpenalty} and \csx{clubpenalty} (which relates to orphans!).
+These penalties are usually set to the moderate value of \texttt{150}; this
+offers mild discouragement of bad breaks. You can increase the values
+by saying (for example) \csx{widowpenalty}\texttt{=500}; however, vertical
+lists (such as pages are made of) typically have rather little
+stretchability or shrinkability, so if the page maker has to balance
+the effect of stretching the unstretchable and being penalised, the
+penalty will seldom win. Therefore, for typical layouts, there are
+only two sensible settings for the penalties: finite (150 or 500, it
+doesn't matter which) to allow widows and orphans, and infinite (10000
+or greater) to forbid them.
+
+The problem can be avoided by allowing the pagemaker to run pages
+short, by using the \csx{raggedbottom} directive; however, many
+publishers insist on the default \csx{flushbottom}; it is seldom
+acceptable to introduce stretchability into the vertical list, except
+at points (such as section headings) where the document design
+explicitly permits it.
+
+Once you've exhausted the automatic measures, and have a final draft
+you want to ``polish'', you should proceed to manual measures. To
+get rid of an orphan is simple: precede the paragraph with
+\csx{clearpage} and the paragraph can't start in the wrong place.
+
+Getting rid of a widow can be more tricky. Options are
+\begin{itemize}
+\item If the previous page contains a long paragraph with a short last
+ line, it may be possible to set it `tight': write
+ \csx{looseness}\texttt{=-1} immediately after the last word of the
+ paragraph.
+\item If that doesn't work, adjusting the page size, using
+ \cmdinvoke{enlargethispage}{\csx{baselineskip}} to `add a line' to
+ the page, which may have the effect of getting the whole paragraph
+ on one page.
+\item Reducing the size of the page by
+ \cmdinvoke{enlargethispage}{-\csx{baselineskip}} may produce a
+ (more-or-less) acceptable ``two-line widow''.
+\end{itemize}
+Note that \csx{looseness}\texttt{=1} (which should increase the line
+length by one) seldom has the right effect~--- the looser paragraph
+typically has a one-word final line, which doesn't look much better
+than the original widow.
+
+\subsection{Things have ``gone away''}
+
+\Question[Q-oldfontnames]{Old \LaTeX{} font references such as \csx{tenrm}}
+
+\LaTeXo{} defined a large set of commands for access to the fonts
+that it had built in to itself. For example, \FontName{cmr} might
+appear as \csx{fivrm}, \csx{sixrm}, \csx{sevrm},
+\csx{egtrm}, \csx{ninrm}, \csx{tenrm}, \csx{elvrm}, \csx{twlrm},
+\csx{frtnrm}, \csx{svtnrm}, \csx{twtyrm} and \csx{twfvrm}, according
+to the size it's being typeset at.
+These commands were never documented, but certain packages
+nevertheless used them to achieve effects they needed.
+
+Since the commands weren't public, they weren't included in \LaTeXe{};
+to use the unconverted \LaTeXo{} packages under \LaTeXe{}, you need
+also to include the \Package{rawfonts} package (which is part of the
+\LaTeXe{} distribution).
+
+\Question[Q-misssymb]{Missing symbol commands}
+
+You're processing an old document, and some symbol commands such as
+\csx{Box} and \csx{lhd} appear no longer to exist. These commands were
+present in the core of \LaTeXo{}, but are not in current \LaTeX{}.
+They are available in the \Package{latexsym} package (which is part of
+the \LaTeX{} distribution), and in the \Package{amsfonts} package
+(which is part of the \acro{AMS} distribution, and requires \acro{AMS}
+symbol fonts).
+\begin{ctanrefs}
+\item[AMS fonts]\CTANref{amsfonts}
+\end{ctanrefs}
+
+\Question[Q-msxy]{Where are the \texttt{msx} and \texttt{msy} fonts?}
+
+The \FontName{msx} and \FontName{msy} fonts were designed by the
+American Mathematical Society in the very early days of \TeX{}, for
+use in typesetting papers for mathematical journals. They were
+designed using the `old' \MF{}, which wasn't portable and is no longer
+available; for a long time they were only available in 300dpi versions
+which only imperfectly matched modern printers. The \acro{AMS} has
+now redesigned the fonts, using the current version of \MF{}, and the
+new versions are called the \FontName{msa} and \FontName{msb}
+families.
+
+Nevertheless, \FontName{msx} and \FontName{msy} continue to turn up.
+There may, of course, still be sites that haven't got around to
+upgrading; but, even if everyone upgraded, there would still be the
+problem of old documents that specify them.
+
+If you have a \extension{tex} source that requests \FontName{msx} and
+\FontName{msy}, the best technique is to edit it so that it requests
+\FontName{msa} and \FontName{msb} (you only need to change the single
+letter in the font names).
+
+A partial re-implementation of the blackboard-bold part of the
+\FontName{msy} font (covering C, N, R, S and Z, only) is available in
+Type~1 format; if your mathematical needs only extend that far, the
+font could be a good choice.
+
+If you have a \acro{DVI} file that requests the fonts, there is a package
+of \Qref*{virtual fonts}{Q-virtualfonts} to map the old to the new series.
+\begin{ctanrefs}
+\item[msam \& msbm \nothtml{\rmfamily}fonts]Distributed as part of \CTANref{amsfonts}
+\item[msym \nothtml{\rmfamily}fonts]\CTANref{msym}
+\item[\nothtml{\rmfamily}virtual font set]\CTANref{msx2msa}
+\end{ctanrefs}
+\LastEdit{2012-03-09}
+
+%%%???%%% spell-checked to here....zzzyx
+
+\Question[Q-amfonts]{Where are the \texttt{am} fonts?}
+
+One \emph{still} occasionally comes across a request for the \FontName{am}
+series of fonts. The initials stood for `Almost [Computer] Modern',
+and they were the predecessors of the Computer Modern fonts that we
+all know and love (or hate)%
+\begin{footnoteenv}
+ The fonts acquired their label `Almost' following the realisation
+ that their first implementation in \MF{}79 still wasn't quite right;
+ Knuth's original intention had been that they were the final answer.
+\end{footnoteenv}.
+There's not a lot one can do with these
+fonts; they are (as their name implies) almost (but not quite) the
+same as the \FontName{cm} series; if you're faced with a document that requests
+them, the only reasonable approach is to edit the document to replace
+\FontName{am*} font names with \FontName{cm*}.
+
+The appearance of \acro{DVI} files that request them is sufficiently
+rare that no-one has undertaken the mammoth task of creating a
+translation of them by means of virtual fonts.
+
+You therefore have to fool the system into using \FontName{cm*} fonts
+where the original author specified \FontName{am*}.
+
+One option is the font substitutions that many
+\acro{DVI} drivers provide via their configuration file~---
+specify that every \FontName{am} font should be replaced by its
+corresponding \FontName{cm} font.
+
+Alternatively, one may try \acro{DVI} editing~--- packages
+\Package{dtl} (\acro{DVI} Text Language) and \Package{dviasm}
+(\acro{DVI} assembler) can both provide round trips from \acro{DVI} to
+text and back to \acro{DVI}. One therefore edits font names
+(throughout the text representation of the file) in the middle of that
+round trip.
+
+The \acro{DTL} text is pretty straightforward, for this purpose:
+fontnames are in single quotes at the end of lines, so:
+\begin{quote}
+ \texttt{dv2dt -o} \meta{doc.txt} \meta{doc.dvi}\\
+ (\emph{edit the \extension{txt} file})\\
+ \texttt{dt2dv -o} \meta{edited.dvi} \meta{edited.txt}
+\end{quote}
+(you have to compile the \acro{C} programs for this).
+
+\ProgName{Dviasm} is a \ProgName{Python} script; its output has font
+names in a section near the start of the document, and then dotted
+about through the body, so:
+\begin{quote}
+ \texttt{python dviasm.py -o} \meta{doc.txt} \meta{doc.dvi}\\
+ (\emph{edit the \extension{txt} file})\\
+ \texttt{python dviasm.py -o} \meta{edited.dvi} \meta{edited.txt}
+\end{quote}
+Both routes seem acceptable ways forward; it is a matter of taste
+which any particular user may choose (it's not likely that it will be
+necessary very often...).
+\begin{ctanrefs}
+\item[dviasm.py]\CTANref{dviasm}
+\item[dtl]\CTANref{dtl}
+\end{ctanrefs}
+
+\Question[Q-initex]{What's happened to \ProgName{initex}?}
+
+In the beginning, \AllTeX{} was stretching the capacity of every
+system it was ported to, so there was a premium on reducing the size
+of executables. One way of doing this was to have a separate
+executable, \ProgName{initex}, that had things in it that aren't
+needed in ordinary document runs~--- notably \csx{patterns} (which
+builds hyphenation tables), and \csx{dump} (which writes out a format).
+
+On modern systems, the size of this code is insignificant in
+comparison to the memory available, and maintaining separate programs
+has been found sufficiently error-prone that free Unix-style system
+distributions have abolished \ProgName{initex} and its friends and
+relations such as \ProgName{inipdftex} in favour of a single
+executable (that is, just \ProgName{tex} or \ProgName{pdftex}) that
+will ``do what \ProgName{initex} (or whatever) used to do'' if it
+detects the command option ``\texttt{-ini}''.
+
+The change happened with the advent of te\TeX{} version
+3.0, which appeared at the beginning of 2005. At that time,
+\texlive{} was following te\TeX{}, so that year's \texlive{}
+distribution would also have dropped \ProgName{initex}.
+
+It would appear that the equation is somewhat different for the
+\miktex{} developers, since that system continues to offer an
+\ProgName{initex} executable.
diff --git a/obsolete/help/texfaq/faq-texsys.tex b/obsolete/help/texfaq/faq-texsys.tex
new file mode 100644
index 0000000000..0fcc34bf65
--- /dev/null
+++ b/obsolete/help/texfaq/faq-texsys.tex
@@ -0,0 +1,488 @@
+% $Id: faq-texsys.tex,v 1.17 2013/07/24 21:50:56 rf10 Exp $
+
+\section{\TeX{} Systems}
+
+\Question[Q-TeXsystems]{\AllTeX{} for different machines}
+
+We list here the free or shareware packages;
+\htmlignore
+a later \Qref{question}{Q-commercial} discusses commercial \tex{} products.
+\endhtmlignore
+\begin{htmlversion}
+ another question addresses
+ \Qref{commercial \TeX{} vendors'}{Q-commercial} products.
+\end{htmlversion}
+
+The list is provided in four answers:
+\begin{itemize}
+\item \TeX{} systems for use with
+ \Qref*{Unix and \acro{GNU} Linux systems}{Q-sysunix}
+\item \TeX{} systems for use with % ! line break
+ \Qref*{Modern Windows systems}{Q-syswin32}
+\item \TeX{} systems for use with % ! line break
+ \Qref*{Macintosh systems}{Q-sysmac}
+\item \TeX{} systems for % ! line break
+ \Qref*{Other sorts of systems}{Q-sysother}
+\end{itemize}
+
+\Question[Q-sysunix]{Unix and \acro{GNU} Linux systems}
+
+\begin{quote}
+ Note that \macosx{}, though it is also a Unix-based system, has
+ different options; users should refer to the information in
+ \Qref[question]{Mac systems}{Q-sysmac}.
+\end{quote}
+
+The \TeX{} distribution of choice, for Unix systems (including
+\acro{GNU}/Linux and most other free Unix-like systems) is \texlive{},
+which is distributed as part of the \Qref*{\TeX{} collection}{Q-CD}.
+
+\texlive{} may also be installed ``over the network''; a network
+installer is provided, and once you have a system (whether installed
+from the network or installed off-line from a disc) a manager
+(\ProgName{tlmgr}) can both keep your installation up-to-date and add
+packages you didn't install at first.
+
+\texlive{} may be run with no installation at all; the web page % ! line break
+\href{http://www.tug.org/texlive/portable.html}{\texlive{} portable usage}
+describes the options for installing \texlive{} on a memory stick for
+use on another computer, or for using the \texlive{} \acro{DVD} with
+no installation at all.
+
+\tex{}-gpc is a ``back-to-basics'' distribution of \tex{} utilities,
+\emph{only} (unlike \texlive{}, no `tailored' package bundles are
+provided). It is distributed as source, and compiles with \acro{GNU}
+Pascal, thereby coming as close as you're likely to get to Knuth's original
+distribution. It is known to work well, but the omission of \etex{}
+and \pdftex{} will rule it out of many users' choices.
+\begin{ctanrefs}
+\item[tex-gpc]\CTANref{tex-gpc}
+\item[texlive]Browse \CTANref{texlive}
+\item[texlive installer (Unix)]\CTANref{texlive-unix}
+\end{ctanrefs}
+\LastEdit{2013-07-18}
+
+\Question[Q-syswin32]{(Modern) Windows systems}
+
+Windows users nowadays have a real choice, between two excellent
+distributions, \miktex{} and \texlive{}. \texlive{} on windows has
+only in recent years been a real challenger to the long-established
+\miktex{}, and even now \miktex{} has features that \texlive{} lacks.
+Both are comprehensive
+distributions, offering all the established \tex{} variants (\tex{},
+\pdftex{}~--- both with \etex{} variants~--- as well as \xetex{} and
+\luatex{}), together with a wide range of support tools.
+
+Both \miktex{} and \texlive{} offer management tools, including the
+means of keeping an installation ``up-to-date'', by reinstalling
+packages that have been updated on \acro{CTAN} (the delay between a
+package update appearing, and it being available to the distribution
+users) can be as short as a day (and is never very long).
+
+\miktex{}, by Christian Schenk, is the longer-established of the pair,
+and has a large audience of satisfied users; \texlive{} is the
+dominant distribution in use in the world of Unix-like systems, and so
+its Windows version may be expected to appeal to those who use both
+Unix-like and Windows systems. The latest release of \miktex{}~---
+version 2.9~--- requires Windows~XP, or later (so it does not work on
+Windows~2000 or earlier).
+
+Both distributions may be used in a configuration which involves no
+installation at all. \miktex{}'s ``portable'' distribution may be
+unpacked on a memory stick, and used on any windows computer without
+making any direct use of the hard drive. The web page % ! line break
+\href{http://www.tug.org/texlive/portable.html}{\texlive{} portable usage}
+describes the options for installing \texlive{} on a memory stick, or
+for using the \texlive{} \acro{DVD} with no installation at all.
+
+Both \miktex{} and \texlive{} may be downloaded and installed, package
+by package, over the net. This is a mammoth undertaking, only to be
+undertaken by those with a good network connection (and a patient
+disposition!).
+
+A ready-to-run copy of the \miktex{} distribution,
+on \acro{DVD} may be bought via the % ! line break
+\href{http://www.miktex.org/cd/}{\miktex{} web site}. \miktex{} may
+also be installed using Pro\TeX{}t, on the % ! line break
+\Qref*{\TeX{} Collection \acro{DVD}}{Q-CD}.
+
+The \Qref*{\TeX{} Collection \acro{DVD}}{Q-CD} also provides an
+offline installer for \texlive{}.
+
+% can't find any evidence this is still available
+%
+%% \href{http://foundry.supelec.fr/projects/xemtex/}{XEm\TeX{}}, by
+%% Fabrice Popineau (he who created the excellent, but now defunct,
+%% fp\TeX{} distribution), is another integrated distribution of \tex{},
+%% \latex{}, \CONTeXT{}, \ProgName{XEmacs} and other friends for Windows.
+%% All programs have been compiled natively to take the best advantage of
+%% the Windows environment. Configuration is provided so that the
+%% resulting set of programs runs out-of-the-box, but the distribution is
+%% not actively promoted.
+%
+% this isn't right, but i'm not sure how to deal with it...
+%
+%% The (Japanese) \acro{W}32\acro{TEX} distribution was motivated by
+%% the needs of Japanese users (Japanese won't fit in a ``simple''
+%% character set like \acro{ASCII}, but \TeX{} is based on a version of
+%% \acro{ASCII}). Despite its origins, \acro{W}32\acro{TEX} is said to
+%% be a good bet for Western users, notably those whose disks are short
+%% of space: the minimum documented download is as small as
+%% 95\,MBytes. Investigate the distribution at
+%% \URL{http://www.fsci.fuk.kindai.ac.jp/kakuto/win32-ptex/web2c75-e.html}
+%
+% the url is now http://w32tex.org/current/
+
+A further (free) option is available thanks to the
+\href{http://www.cygwin.com}{CygWin bundle}, which presents a
+Unix-like environment in Windows systems (and also provides an
+X-windows server). The (now obsolete) te\TeX{} distribution is
+provided as part of the CygWin distribution, but there is a CygWin
+build of \texlive{} so you can have a current \tex{} system. \TeX{}
+under CygWin is reputedly somewhat slower than native Win32
+implementations such as \miktex{}, and of course the \tex{}
+applications behave like Unix-system applications.
+
+BaKoMa \TeX{}, by Basil Malyshev, is a comprehensive (shareware)
+distribution, which focuses on support of Acrobat. The distribution
+comes with a bunch of Type~1 fonts packaged to work with BaKoMa
+\TeX{}, which further the focus.
+\begin{ctanrefs}
+\item[bakoma]\CTANref{bakoma-tex}
+\item[miktex]\CTANref{miktex}; % ! line break so only one \CTANref on line
+ acquire \CTANref{miktex-setup} (also available from the \miktex{}
+ web site), and read installation instructions from % ! line break
+ \href{http://www.miktex.org/2.9/setup}{the \miktex{} installation page}
+\item[\nothtml{\bgroup\rmfamily}Portable\nothtml{\egroup} miktex]\CTANref{miktex-portable}
+\item[protext.exe]\CTANref{protext}
+\item[texlive]Browse \CTANref{texlive}
+\item[texlive installer (Windows)]\CTANref{texlive-windows}
+\end{ctanrefs}
+\LastEdit{2013-04-11}
+
+\Question[Q-sysmac]{Macintosh systems}
+
+The \Qref*{\TeX{} collection}{Q-CD} \acro{DVD} includes Mac\TeX{},
+which is a Mac-tailored version of \texlive{}; details may be found on
+the \href{http://tug.org/mactex}{\acro{TUG} web site}. If you don't
+have the disc, you can download the distribution from \acro{CTAN} (but
+note that it's pretty big). Mac\TeX{} is an instance of \texlive{},
+and has a Mac-tailored graphical \texlive{} manager, so that you can
+keep your distribution up-to-date.
+
+Note that installing Mac\TeX{} requires \texttt{root} privilege. This
+is a pity, since it offers several extras that aren't available via a
+standard \texlive{}, which aren't therefore available to ``ordinary
+folk'' at work. For those who don't have \texttt{root} privilege, the
+option is to install using the \texlive{} \texttt{tlinstall} utility.
+
+\href{http://www.trevorrow.com/oztex/}{Oz\TeX{}}, by Andrew Trevorrow,
+is a shareware version of \TeX{} for the Macintosh. A \acro{DVI}
+previewer and \PS{} driver are also included.
+Oz\TeX{} is a Carbon app, so will run under \macosx{} (see
+\url{http://www.trevorrow.com/oztex/ozosx.html} for details), but it
+is \emph{not} a current version: it doesn't even offer \pdftex{}. A
+mailing list is provided by \acro{TUG}: sign up via
+\url{http://tug.org/mailman/listinfo/oztex}
+
+Another partly shareware program is
+\href{http://www.kiffe.com/cmactex.html}{CMac\TeX{}}, put together by
+Tom Kiffe. CMac\TeX{} is much closer than Oz\TeX{} to the Unix \TeX{}
+model of things (it uses \ProgName{dvips}, for instance). CMac\TeX{}
+runs natively under \macosx{}; it includes a port of a version of
+\Qref*{Omega}{Q-omegaleph}.
+
+\begin{flatversion}
+ A wiki for Mac users is to be found at
+ \URL{http://mactex-wiki.tug.org/}
+\end{flatversion}
+\begin{hyperversion}
+ Further information may be available in the % ! line break
+ \href{http://mactex-wiki.tug.org/}{MacTeX wiki}.
+\end{hyperversion}
+The Mac\TeX{}-on-OS~X mailing list is another useful resource for
+users; subscribe via the
+\href{http://mactex-wiki.tug.org/wiki/index.php?title=TeX_on_Mac_OS_X_mailing_list}{list home page}
+\begin{ctanrefs}
+\item[cmactex]\CTANref{cmactex}
+\item[mactex]\CTANref{mactex}
+\item[oztex]\CTANref{oztex}
+\end{ctanrefs}
+
+\Question[Q-sysother]{Other systems' \tex{} availability}
+
+For \acro{PC}s, running \MSDOS{} or \acro{OS/}2, Em\TeX{} (by Eberhard
+Mattes) offers \LaTeX{}, \BibTeX{}, previewers, and drivers. It is
+available as a series of zip archives, with documentation in both
+German and English. Appropriate memory managers for using em\TeX{}
+with 386 (and better) processors and under pre-'9x Windows, are
+included in the distribution. (Em\TeX{} \emph{can} be made to operate
+under Windows, but even back when it was ``current'', such use wasn't
+very actively encouraged.)
+
+A version of em\TeX{}, packaged to use a % ! line break
+\Qref*{TDS directory structure}{Q-tds}, is separately available as an
+em\TeX{} `contribution'. Note that neither em\TeX{} itself, nor
+em\TeX{}-\acro{TDS}, is maintained. Users of Microsoft operating
+systems, who want an up-to-date \AllTeX{} system, need Win32-based
+systems.
+
+For \acro{PC}s, running \MSDOS{}, a further option is a port of the
+Web2C~7.0 implementation, using the \acro{GNU} \ProgName{djgpp}
+compiler. While this package is more recent than em\TeX{}, it
+nevertheless also offers a rather old instance of \AllTeX{}.
+
+For \acro{VAX} systems running Open\acro{VMS}, a \TeX{} distribution
+is available \acro{CTAN}, but is almost certainly not the latest (it
+is more than 10 years old). Whether a version is even available for
+current \acro{VMS} (which typically runs on Intel 64-bit processors)
+is not clear, but it seems unlikely.
+
+For the Atari \acro{ST} and \acro{TT}, \acro{CS}-\TeX{} is available
+from \acro{CTAN}; it's offered as a set of \acro{ZOO} archives.
+
+Amiga users have the option of a full implementations of \TeX{} 3.1
+(Pas\TeX{}) and \MF{} 2.7.
+
+It's less likely that hobbyists would be running \acro{TOPS}-20
+machines, but since \TeX{} was originally written on a \acro{DEC}-10
+under \acro{WAITS}, the \acro{TOPS}-20 port is another near approach
+to Knuth's original environment. Sources are available by anonymous
+\texttt{ftp} from \url{ftp://ftp.math.utah.edu/pub/tex/pub/web}
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}Atari TeX]\CTANref{atari-cstex}
+\item[djgpp]\CTANref{djgpp}
+\item[emtex]\CTANref{emtex}
+\item[emtexTDS]\CTANref{emtextds}
+\item[OpenVMS]\CTANref{OpenVMSTeX}
+\item[PasTeX]\CTANref{amiga}
+\end{ctanrefs}
+\LastEdit{2013-07-18}
+
+\Question[Q-editors]{\TeX{}-friendly editors and shells}
+
+There are good \TeX{}-writing environments and editors for most
+operating systems; some are described below, but this is only a
+personal selection:
+\begin{description}
+\item[Unix] The commonest choices are \ProgName{[X]Emacs} or
+ \ProgName{vim}, though several others are available.
+
+ \href{http://www.gnu.org/software/emacs/emacs.html}{\acro{GNU}\nobreakspace\ProgName{emacs}}
+ and \href{http://www.xemacs.org/}{\ProgName{XEmacs}} are supported
+ by the \acro{AUC}-\TeX{}
+ bundle (available from \acro{CTAN}). \acro{AUC}-\TeX{} provides menu
+ items and control sequences for common constructs, checks syntax,
+ lays out markup nicely, lets you call \TeX{} and drivers from
+ within the editor, and everything else like this that you can think
+ of. Complex, but very powerful.
+
+ \href{http://vim.sourceforge.net}{\ProgName{Vim}} is also highly
+ configurable (also available for Windows and Macintosh systems).
+ Many plugins are available to support the needs of the \AllTeX{} user,
+ including syntax highlighting, calling \TeX{} programs,
+ auto-insertion and -completion of common \AllTeX{} structures, and
+ browsing \LaTeX{} help. The scripts \File{auctex.vim} and
+ \File{bibtex.vim} seem to be the most common recommendations.
+
+ The editor \href{http://nedit.org/}{\ProgName{NEdit}} is also free
+ and programmable, and is available for Unix systems. An
+ \acro{AUC}-\TeX{}-alike set of extensions for \ProgName{NEdit} is available
+ from \acro{CTAN}.
+
+ \ProgName{LaTeX4Jed} provides much enhanced \LaTeX{} support for the
+ \href{http://www.jedsoft.org/jed/}{\ProgName{jed}} editor.
+ \ProgName{LaTeX4Jed} is similar to \acro{AUC}-\TeX{}: menus,
+ shortcuts, templates, syntax highlighting, document outline,
+ integrated debugging, symbol completion, full integration with
+ external programs, and more. It was designed with both the beginner
+ and the advanced LaTeX user in mind.
+
+ The \ProgName{Kile} editor that is provided with the \acro{KDE}
+ window manager provides \acro{GUI} ``shell-like'' facilities, in a
+ similar way to the widely-praised \ProgName{Winedt} (see below);
+ details (and downloads) are available from the project's
+ \href{http://kile.sourceforge.net/}{home on SourceForge}.
+
+ \acro{TUG} is sponsoring the development of a cross-platform editor
+ and shell, modelled on the excellent \texshop{} for the Macintosh.
+ The result,
+ \href{http://www.tug.org/texworks/}{\texworks{}}, is recommended: if
+ you're looking for a
+ \AllTeX{} development environment, it may be for you. (It is
+ distributed with both \texlive{} and \miktex{}.)
+
+ A possible alternative is
+ \href{http://texstudio.sourceforge.net/}{TeXstudio}
+\item[Windows-32]\ProgName{TeXnicCenter} is a (free)
+ \TeX{}-oriented development system, uniting a powerful platform for
+ executing \AllTeX{} and friends with a configurable editor.
+
+ \texworks{} (see above) is also available for Windows systems.
+
+ \ProgName{Winedt}, a shareware package, is also highly spoken of.
+ It too provides a shell for the use of \TeX{} and related programs,
+ as well as a powerful and well-configured editor. The editor can
+ generate its output in \acro{UTF}-8 (to some extent), which is
+ useful when working with \Qref*{\xetex{}}{Q-xetex} (and other
+ ``next-generation'' \AllTeX{} applications).
+
+ Both \ProgName{emacs} and \ProgName{vim} are available in versions
+ for Windows systems.
+\item[Macintosh] For \macosx{} users, the free tool of choice appears to be
+ \href{http://pages.uoregon.edu/koch/texshop/index.html}{\texshop{}}, which
+ combines an editor and a shell with a coherent philosophy of dealing
+ with \AllTeX{} in the OS~X environment. TeXShop is distributed as
+ part of the MacTeX system, and will therefore be available out of
+ the box on machines on which MacTeX has been installed.
+
+ \ProgName{Vim} is also available for use on Macintosh systems.
+
+ The commercial Textures provides an excellent integrated Macintosh
+ environment with its own editor. More powerful still (as an editor)
+ is the shareware \ProgName{Alpha} which is extensible enough to let
+ you perform almost any \TeX{}-related job. It also works well with
+ Oz\TeX{}. From release 2.2.0 (at least), Textures works under \macosx{}.
+\item[\acro{OS/}2] \ProgName{epmtex} offers an \acro{OS/}2-specific shell.
+\end{description}
+Atari, Amiga and \acro{N}e\acro{XT} users also have nice
+environments. \LaTeX{} users looking for \ProgName{make}-like
+facilities should review the answer on
+\Qref*{Makefiles for \LaTeX{} documents}{Q-make}.
+
+While many \AllTeX{}-oriented editors can support work on \BibTeX{}
+files, there are many systems that provide specific ``database-like''
+access to your \BibTeX{} files~---
+\begin{hyperversion}
+ see ``\Qref{creating a bibliography file}{Q-buildbib}''.
+\end{hyperversion}
+\begin{flatversion}
+ these are discussed in % ! line break
+ ``\Qref*{creating a bibliography file}{Q-buildbib}''.
+\end{flatversion}
+\begin{ctanrefs}
+\item[alpha]\CTANref{alpha}
+\item[auctex]\CTANref{auctex}
+\item[epmtex]\CTANref{epmtex}
+\item[LaTeX4Jed]\CTANref{latex4jed}
+\item[Nedit LaTeX support]\CTANref{nedit-latex}
+\item[TeXnicCenter]\CTANref{texniccenter}
+\item[TeXshell]\CTANref{texshell}
+\item[TeXtelmExtel]\CTANref{TeXtelmExtel}
+\item[winedt]\CTANref{winedt}
+\end{ctanrefs}
+\LastEdit{2013-05-20}
+
+\Question[Q-commercial]{Commercial \TeX{} implementations}
+\keywords{windows,macintosh,commercial}
+
+There are many commercial implementations of \TeX{}. The first
+appeared not long after \TeX{} itself appeared.
+
+What follows is probably an incomplete list. Naturally, no warranty or
+fitness for purpose is implied by the inclusion of any vendor in this
+list. The source of the information is given to provide some clues to
+its currency.
+
+In general, a commercial implementation will come `complete', that is,
+with suitable previewers and printer drivers. They normally also have
+extensive documentation (\emph{i.e}., not just the \TeX{}book!) and some
+sort of support service. In some cases this is a toll free number
+(probably applicable only within the \acro{USA} and or Canada), but others
+also have email, and normal telephone and fax support.
+\begin{description}
+\item[\acro{PC}; True\TeX{}] Runs on all versions of Windows.
+ \begin{quote}
+ Richard J. Kinch\\
+ TrueTeX Software\\
+ 7890 Pebble Beach Court\\
+ Lake Worth \acro{FL} 33467\\
+ \acro{USA}\\[.25\baselineskip]
+ Tel: +1 561-966-8400\\
+ Email: \mailto{kinch@truetex.com}\\
+ Web: \URL{http://www.truetex.com/}
+ \end{quote}
+ Source: Mail from Richard Kinch, August 2004.
+\item[pc\TeX{}] Long-established: pc\TeX{}32 is a Windows implementation.
+ \begin{quote}
+ Personal \TeX{} Inc\\
+ 725 Greenwich Street, Suite 210 \\
+ San Francisco, \acro{CA} 94133\\
+ \acro{USA}\\[.25\baselineskip]
+ Tel: 800-808-7906 (within the \acro{USA})\\
+ Tel: +1 415-296-7550\\
+ Fax: +1 415-296-7501\\
+ Email: \mailto{sales@pctex.com}\\
+ Web: \URL{http://www.pctex.com/}
+ \end{quote}
+ Source: Personal \TeX{} Inc web site, December 2004
+\item[\acro{PC}; Scientific Word] Scientific Word and Scientific Workplace
+ offer a mechanism for near-\WYSIWYG{} input of \LaTeX{} documents; they
+ ship with True\TeX{} from Kinch (see above). Queries within the \acro{UK}
+ and Ireland should be addressed to Scientific Word Ltd., others should be
+ addressed directly to the publisher, MacKichan Software Inc.
+ \begin{quote}
+ Dr Christopher Mabb\\
+ Scientific Word Ltd.\\
+ 990 Anlaby Road,\\
+ Hull,\\
+ East Yorkshire,\\
+ \acro{HU}4 6\acro{AT}\\
+ \acro{UK}\\[0.25\baselineskip]
+ Tel: 0845 766\,0340 (within the \acro{UK}) \\
+ Fax: 0845 603\,9443 (within the \acro{UK}) \\
+ Email: \mailto{christopher@sciword.demon.co.uk} \\
+ Web: \URL{http://www.sciword.demon.co.uk}
+ \end{quote}
+ \begin{quote}
+ MacKichan Software Inc.\\
+ 19307 8th Avenue, Suite C\\
+ Poulsbo \acro{WA} 98370-7370\\
+ \acro{USA}\\[0.25\baselineskip]
+ Tel: +1 360 394\,6033\\
+ Tel: 877 724\,9673 (within the \acro{USA})
+ Fax: +1 360 394\,6039\\
+ Email: \mailto{info@mackichan.com}\\
+ Web: \URL{http://www.mackichan.com}
+ \end{quote}
+ Source: Mail from Christopher Mabb, August 2007
+%% \item[Macintosh; Textures] ``A \TeX{} system `for the rest of
+%% us'\,''. A beta release of Textures for \macosx{} is
+%% available~--- see \URL{http://www.bluesky.com/news/news_frames.html}
+%%
+%% (Blue Sky also gives away a \MF{} implementation and some
+%% font manipulation tools for Macs.)
+%% \begin{quote}
+%% Blue Sky Research\\
+%% PO Box 80424\\
+%% Portland, \acro{OR} 97280\\
+%% \acro{USA}\\[.25\baselineskip]
+%% Tel: 800-622-8398 (within the \acro{USA})\\
+%% Tel/Fax: +1 503-222-9571\\
+%% Fax: +1 503-246-4574\\
+%% Email: \mailto{sales@bluesky.com}\\
+%% Web: \URL{http://www.bluesky.com/}
+%% \end{quote}
+%% Source: Mail from Gordon Lee, April 2007
+\item[Amiga\TeX{}] A full implementation for the Commodore Amiga,
+ including full, on-screen and printing support for all \PS{}
+ graphics and fonts, IFF raster graphics, automatic font generation,
+ and all of the standard macros and utilities.
+ \begin{quote}
+ Radical Eye Software\\
+ \acro{PO} Box 2081\\
+ Stanford, \acro{CA} 94309\\
+ \acro{USA}
+ \end{quote}
+ Source: Mail from Tom Rokicki, November 1994
+\end{description}
+\checked{mc}{1994/11/09}%
+\checked{RF}{1994/11/24}%
+
+Note that the company \YandY{} has gone out of business, and \YandY{}
+\TeX{} (and support for it) is therefore no longer available. Users
+of \YandY{} systems may care to use the self-help
+\href*{http://tug.org/pipermail/yandytex/}{mailing list}
+that was established in 2003; the remaining usable content of
+\YandY{}'s web site is available at \URL{http://www.tug.org/yandy/}
+
diff --git a/obsolete/help/texfaq/faq-the-end.tex b/obsolete/help/texfaq/faq-the-end.tex
new file mode 100644
index 0000000000..9ace9b7919
--- /dev/null
+++ b/obsolete/help/texfaq/faq-the-end.tex
@@ -0,0 +1,167 @@
+% $Id: faq-the-end.tex,v 1.3 2014/01/28 18:17:36 rf10 Exp rf10 $
+
+\section{You're still stuck?}
+
+\Question[Q-noans]{You don't understand the answer}
+
+While the \acro{FAQ} maintainers don't offer a `help' service, they're
+very keen that you understand the answers they've already written.
+They're (almost) written ``in a vacuum'', to provide something to
+cover a set of questions that have arisen; it's always possible that
+they're written in a way that a novice won't understand them.
+
+Which is where you can help the community. Mail the
+\begin{wideversion}
+ \href{mailto:faq-devel@tex.ac.uk}{maintainers}
+\end{wideversion}
+\begin{narrowversion}
+ maintainers (at \Email{faq-devel@tex.ac.uk})
+\end{narrowversion}
+to report the answer that you find unclear, and (if you can) suggest
+what we need to clarify. Time permitting (the team is small and all
+its members are busy), we'll try and clarify the answer. This way,
+with a bit of luck, we can together improve the value of this resource
+to the whole community.
+
+Note that the \acro{FAQ} development email address is not for
+answering questions: it's for you to suggest which questions we should
+work on, or new questions we should answer in future editions.
+
+Those who simply ask questions at that address will be referred to
+\mailto{texhax@tug.org} or to \Newsgroup{comp.text.tex}.
+
+\Question[Q-newans]{Submitting new material for the \acro{FAQ}}
+
+The \acro{FAQ} will never be complete, and we always expect that
+there will be people out there who know better than we do about
+something or other. We always need to be put right about whatever
+we've got wrong, and suggestions for improvements, particularly
+covering areas we've missed, are always needed: mail anything you have
+to the
+\begin{wideversion}
+ \href{mailto:faq-devel@tex.ac.uk}{maintainers}
+\end{wideversion}
+\begin{narrowversion}
+ maintainers (at \Email{faq-devel@tex.ac.uk})
+\end{narrowversion}
+
+If you have actual material to submit, your contribution is more than
+ever welcome. Submission in plain text is entirely acceptable, but
+if you're really willing, you may feel free to mark up your submission
+in the form needed for the \acro{FAQ} itself. The markup is a
+strongly-constrained version of \LaTeX{}~--- the constraints come from
+the need to translate the marked-up text to \acro{HTML} on the fly
+(and hence pretty efficiently). There is a file \File{markup-syntax}
+in the \acro{FAQ} distribution that describes the structure of the
+markup, but there's no real substitute for reading at least some of
+the source (\File{faqbody.tex}) of the \acro{FAQ} itself. If you
+understand \ProgName{Perl}, you may also care to look at the
+translation code in \File{texfaq2file} and \File{sanitize.pl} in the
+distribution: this isn't the code actually used on the Web site, but
+it's a close relation and is kept
+up to date for development purposes.
+\begin{ctanrefs}
+\item[\nothtml{\rmfamily}\acro{FAQ} distribution]\CTANref{faq}
+\end{ctanrefs}
+
+\Question[Q-bug]{What to do if you find a bug}
+
+For a start, make entirely sure you \emph{have} found a bug.
+Double-check with books about \TeX{}, \LaTeX{}, or whatever you're using;
+compare what you're seeing against the other answers above; ask every
+possible person you know who has any \TeX{}-related expertise.
+The reasons for all this caution are various.
+
+If you've found a bug in \TeX{} itself, you're a rare animal indeed.
+Don Knuth is so sure of the quality of his code that he offers real
+money prizes to finders of bugs; the cheques he writes are
+such rare items that they are seldom cashed. If \emph{you}
+think you have found a genuine fault in \TeX{} itself (or \MF{}, or the
+\acro{CM} fonts, or the \TeX{}book), don't immediately write to Knuth,
+however. He only looks at bugs infrequently, and even then
+only after they are agreed as bugs by a small vetting team. In the
+first instance, contact Barbara Beeton at the \acro{AMS}
+(\Email{bnb@ams.org}), or contact
+\Qref*{\acro{TUG}}{Q-TUG*}.
+
+If you've found a bug in \LaTeXe{}, \Qref*{report it}{Q-latexbug}
+using mechanisms supplied by the \LaTeX{} team. (Please be
+careful to ensure you've got a \LaTeX{} bug, or a bug in one of the
+``required'' packages distributed by the \LaTeX{} team.)
+
+If you've found a bug in a contributed \LaTeX{} package, the best
+starting place is usually to ask in the ``usual places for % ! line break
+\Qref*{help on-line}{Q-gethelp}, or just possibly one of the % ! line break
+\Qref*{specialised mailing lists}{Q-maillists*}.
+The author of the package may well answer on-line, but if no-one
+offers any help, you may stand a chance if you mail the author
+(presuming that you can find an address\dots{}).
+
+If you've found a bug in \LaTeXo{}, or some other such unsupported
+software, your only real hope is \Qref*{help on-line}{Q-gethelp}.
+
+Failing all else, you may need to pay for
+help~--- \acro{TUG} maintains a % ! line break
+\href{http://www.tug.org/consultants.html}{register of \TeX{} consultants}.
+(This of course requires that you have the resources~--- and a
+pressing enough need~--- to hire someone.)
+
+
+\htmlignore
+\par
+\endhtmlignore
+\Question[Q-latexbug]{Reporting a \LaTeX{} bug}
+\htmlignore
+\par
+\endhtmlignore
+%
+% This here isn't a reference to a question...
+\label{lastquestion}
+
+The \LaTeX{} team supports \LaTeX{}, and will deal with
+% beware line wrap
+\emph{bona fide} bug reports. Note that the \LaTeX{} team does
+\emph{not} deal with contributed packages~--- just the software that
+is part of the \LaTeX{} distribution itself: \LaTeX{} and the
+``required'' packages.
+Furthermore, you need to be slightly
+careful to produce a bug report that is usable by the team. The steps
+are:
+
+\nothtml{\noindent}\textbf{1.} Are you still using current \LaTeX{}? Maintenance is only
+available for sufficiently up-to-date versions of \LaTeX{}~--- if your
+\LaTeX{} is more than two versions out of date, the bug reporting
+mechanisms may reject your report.
+
+\nothtml{\noindent}\textbf{2.} Has your bug already been reported? Browse the
+% beware line break
+\href{http://www.latex-project.org/cgi-bin/ltxbugs2html?introduction=yes}{\LaTeX{} bugs database},
+to find any earlier instance of your bug. In many cases, the database
+will list a work-around.
+
+\nothtml{\noindent}\textbf{3.} Prepare a % ! line break
+\Qref*{``minimum'' file}{Q-minxampl} that exhibits the problem.
+Ideally, such a file should contain no contributed packages~--- the
+\LaTeX{} team as a whole takes no responsibility for such packages (if
+they're supported at all, they're supported by their authors). The
+``minimum'' file should be self-sufficient: if a member of the team
+runs it in a clean directory, on a system with no contributed
+packages, it should replicate your problem.
+
+\nothtml{\noindent}\textbf{4.} Run your file through \LaTeX{}: the bug
+system needs the \extension{log} file that this process creates.
+
+\nothtml{\noindent}\textbf{5.} Connect to the % ! line break
+\href{http://www.latex-project.org/bugs-upload.html}{latex bugs processing web page}
+and enter details of your bug~--- category, summary and full
+description, and the two important files (source and log file).
+
+The personal details are \emph{not} optional: the members of the
+\LaTeX{} team may need to contact to discuss the bug with you, or to
+advise you of a work-around. Your details will not appear in the
+public view of the database.
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: t
+%%% End:
diff --git a/obsolete/help/texfaq/faq-wdidt.tex b/obsolete/help/texfaq/faq-wdidt.tex
new file mode 100644
index 0000000000..c6cdd8e95e
--- /dev/null
+++ b/obsolete/help/texfaq/faq-wdidt.tex
@@ -0,0 +1,2142 @@
+% $Id: faq-wdidt.tex,v 1.24 2014/01/22 17:29:03 rf10 Exp $
+
+\section{Why does it \emph{do} that?}
+
+\subsection{Common errors}
+
+\Question[Q-crossref]{\LaTeX{} gets cross-references wrong}
+
+Sometimes, however many times you run \LaTeX{}, the cross-references
+are just wrong. A likely reason is that you have placed the label
+before the data for the label was set; if the label is recording a
+\csx{caption} command, the \csx{label} command must appear
+\emph{after} the \csx{caption} command, or be part of it. For example:
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ <the illustration itself>
+ \caption{My figure}
+ \label{myfig}
+\end{figure}
+\end{verbatim}
+\end{quote}
+is correct, as is
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ <the illustration itself>
+ \caption{My figure%
+ \label{myfig}}
+\end{figure}
+\end{verbatim}
+\end{quote}
+whereas, in
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ <the illustration itself>
+ \label{myfig}
+ \caption{My figure}
+\end{figure}
+\end{verbatim}
+\end{quote}
+the label will report the number of the section (or whatever) in which
+the surrounding text resides, or the like.
+
+You can, with the same malign effect, shield the \csx{caption} command
+from its associated \csx{label} command, by enclosing the caption in an
+environment of its own. This effect will be seen with:
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ <the illustration itself>
+ \caption{A Figure}
+\end{figure}
+\label{myfig}
+\end{verbatim}
+\end{quote}
+where the \csx{label} definitely \emph{is} after the \csx{caption},
+but because the \environment{figure} environment closed before the
+\csx{label} command, the \csx{caption} is no longer ``visible''.
+
+In summary, the \csx{label} must be \emph{after} the command that
+defines it (e.g., \csx{caption}), and if the \csx{caption} is inside
+an environment, the \csx{label} must be in there too.
+\LastEdit{2012-02-07}
+
+\Question[Q-newlineargs]{Start of line goes awry}
+\keywords{asterisk square bracket start line}
+
+This answer concerns two sorts of problems: errors of the form
+\begin{quote}
+\begin{verbatim}
+! Missing number, treated as zero.
+<to be read again>
+ p
+<*> [perhaps]
+\end{verbatim}
+\end{quote}
+and errors where a single asterisk at the start of a line mysteriously
+fails to appear in the typeset output.
+
+Both problems arise because \texttt{\bsbs } takes optional arguments. The
+command \texttt{\bsbs *} means ``break the line here, and inhibit page break
+following the line break''; the command \texttt{\bsbs [}\meta{dimen}\texttt{]}
+means ``break the line here and add \meta{dimen} extra vertical space
+afterwards''.
+
+The problem arises because \texttt{\bsbs } looks for the next
+non-blank thing; the test it uses ignores the end of the line in
+your input text, so that \texttt{\bsbs } comes to imagine that you
+were giving it a `modifier'.
+
+An obvious solution is to enclose the stuff at the start of the new
+line in braces, typing:
+\begin{quote}
+\begin{verbatim}
+{\ttfamily
+ /* C-language comment\\
+ {[perhaps]} this could be done better\\
+ {*}/
+}
+\end{verbatim}
+\end{quote}
+This particular example could be coded (without any problems) in
+verbatim, but the behaviour does confuse people.
+
+The problem also appears in maths mode, in arrays and so on. In this
+case, large-scale bracketing of things is \emph{not} a good idea; the
+\TeX{} primitive \csx{relax} (which does nothing except to block
+searches of this nature) may be used. From another
+\Newsgroup{comp.text.tex} example:
+\begin{quote}
+\begin{verbatim}
+\begin{eqnarray}
+ [a] &=& b \\
+ \relax[a] &=& b
+\end{eqnarray}
+\end{verbatim}
+\end{quote}
+which is a usage this \acro{FAQ} would not recommend, anyway: refer
+to the \Qref*{reason not to use \environment{eqnarray}}{Q-eqnarray}.
+
+Note that the \Package{amsmath} package modifies the behaviour of
+\texttt{\bsbs } in maths. With \Package{amsmath}, the
+\environment{eqnarray} example doesn't need any special action
+(\csx{relax} or braces).
+\LastEdit{2012-09-02}
+
+\Question[Q-verbwithin]{Why doesn't verbatim work within\,\dots{}?}
+
+The \LaTeX{} verbatim commands work by changing category codes. Knuth
+says of this sort of thing ``Some care is needed to get the timing
+right\dots{}'', since once the category code has been assigned to a
+character, it doesn't change. So \csx{verb} and
+\cmdinvoke{begin}{verbatim} have to assume that they are getting the
+first look at the parameter text; if they aren't, \TeX{} has already
+assigned category codes so that the verbatim command doesn't have a
+chance. For example:
+\begin{quote}
+\begin{verbatim}
+\verb+\error+
+\end{verbatim}
+\end{quote}
+will work (typesetting `\csx{error}'), but if we define no more than a
+no-op macro,
+\begin{quote}
+\begin{verbatim}
+\newcommand{\unbrace}[1]{#1}
+\end{verbatim}
+\end{quote}
+which simply regurgitates its argument, and use it as:
+\begin{quote}
+\begin{verbatim}
+\unbrace{\verb+\error+}
+\end{verbatim}
+\end{quote}
+the combinartion will not (it will attempt to execute \csx{error}).
+Other errors one
+may encounter are `\csx{verb} ended by end of line', or even the
+rather more helpful `\csx{verb} illegal in command argument'. The
+same sorts of thing happen with \cmdinvoke{begin}{verbatim} \dots{}
+\cmdinvoke{end}{verbatim}:
+\begin{quote}
+\begin{quoteverbatim}
+\ifthenelse{\boolean{foo}}{%
+\begin{verbatim}
+foobar
+\end{verbatim}
+}{%
+\begin{verbatim}
+barfoo
+\end{verbatim}
+}
+\end{quoteverbatim}
+\end{quote}
+provokes errors like `File ended while scanning use of
+\csx{@xverbatim}', as \cmdinvoke{begin}{verbatim} fails to see its
+matching \cmdinvoke{end}{verbatim}.
+
+This is why the \LaTeX{} book insists that verbatim
+commands must not appear in the argument of any other command; they
+aren't just fragile, they're quite unusable in any ``normal'' command
+parameter,
+regardless of \Qref*{\csx{protect}ion}{Q-protect}. (The \csx{verb}
+command tries hard to detect if you're misusing it; unfortunately, it
+can't always do so, and the error message is therefore not reliable as an
+indication of problems.)
+
+The first question to ask yourself is: ``is \csx{verb} actually
+necessary?''.
+\begin{itemize}
+\item If \cmdinvoke{texttt}{\emph{your text}} produces the same result
+ as \csx{verb}\texttt{+\emph{your text}+}, then there's no need of
+ \csx{verb} in the first place.
+\item If you're using \csx{verb} to typeset a \acro{URL} or email
+ address or the like, then the \csx{url} command from the
+ \Package{url} will help: it doesn't suffer from all the problems of
+ \csx{verb}, though it's still not robust; % ! line break
+ ``\Qref*{typesetting \acro{URL}s}{Q-setURL}'' offers advice here.
+\item If you're putting \csx{verb} into the argument of a boxing
+ command (such as \csx{fbox}), consider using the \environment{lrbox}
+ environment:
+\begin{quote}
+\begin{verbatim}
+\newsavebox{\mybox}
+...
+\begin{lrbox}{\mybox}
+ \verb!VerbatimStuff!
+\end{lrbox}
+\fbox{\usebox{\mybox}}
+\end{verbatim}
+\end{quote}
+\end{itemize}
+
+If you can't avoid verbatim, the \csx{cprotect} command (from the
+package \Package{cprotect}) might help. The package manages to make a
+macro read a verbatim argument in a ``sanitised'' way by the simple
+medium of prefixing the macro with \csx{cprotect}:
+\begin{quote}
+\begin{verbatim}
+\cprotect\section{Using \verb|verbatim|}
+\end{verbatim}
+\end{quote}
+The package \emph{does} work in this simple case, and deserves
+consideration in many others cases; the package documentation gives
+more details.
+
+Another way out is to use one of ``argument types'' of the
+\csx{NewDocumentCommand} command in the experimental \latex{}3 package
+\Package{xparse}:
+\begin{quote}
+\begin{verbatim}
+\NewDocumentCommand\cmd{ m v m }{#1 `#2' #3}
+\cmd{Command }|\furble|{ isn't defined}
+\end{verbatim}
+\end{quote}
+Which gives us:
+\begin{quote}
+ Command \csx{furble} isn't defined
+\end{quote}
+The ``\texttt{m}'' tag argument specifies a normal mandatory argument,
+and the ``\texttt{v}'' specifies one of these verbatim arguments.
+As you see, it's implanting a \csx{verb}-style command argument in the
+argument sequence of an otherwise ``normal'' sort of command; that
+\begin{typesetversion}
+ `\texttt{\char`\|}'
+\end{typesetversion}
+\begin{htmlversion}
+ `\texttt{|}' % | balance for emacs text-colouring
+\end{htmlversion}
+may be any old character that doesn't
+conflict with the content of the argument.
+
+This is pretty neat (even if the verbatim is in an argument of its
+own) but the downside is that \Package{xparse} pulls in
+the experimental \latex{}3 programming environment
+(\Package{l3kernel}) which is pretty big.
+
+Other than the \Package{cprotect} package, there are four partial
+solutions to the problem:
+\begin{itemize}
+\item Some packages have macros which are designed to be responsive
+ to verbatim text in their arguments. For example,
+ the \Package{fancyvrb} package defines a command
+ \csx{VerbatimFootnotes}, which redefines the \csx{footnotetext}
+ command, and hence also the behaviour of the \csx{footnote})
+ command, in such a way that you can include \csx{verb} commands in
+ its argument. This approach could in principle be extended to the
+ arguments of other commands, but it can clash with other packages:
+ for example, \csx{VerbatimFootnotes} interacts poorly with the
+ \pkgoption{para} option of the \Package{footmisc} package.
+
+ The \Class{memoir} class defines its \csx{footnote} command so that
+ it will accept verbatim in its arguments, without any supporting package.
+\item The \Package{fancyvrb} package defines a command \csx{SaveVerb},
+ with a corresponding \csx{UseVerb} command, that allow you to save
+ and then to reuse the content of its argument; for details of this
+ extremely powerful facility, see the package documentation.
+
+ Rather simpler is the \Package{verbdef} package, whose \csx{verbdef}
+ command defines a (robust) command which expands to the verbatim
+ argument given; the \Package{newverbs} package provides a similar
+ function as well as several related ones.
+\item In a similar vein, the \Package{verbatimbox} package makes it
+ possible to put verbatim material in a box:
+ \begin{quote}
+\begin{verbatim}
+\begin{verbbox}
+some exotic _&$ stuff
+\end{verbbox}
+\theverbbox
+\end{verbatim}
+ \end{quote}
+ the operation typesets exotic stuff into an anonymous box, and its
+ contents may be retrieved using the command \csx{theverbbox}. It is
+ clear that it's in the same mould as the \csx{verbdef} command
+ mentioned above; the package defines other similar commands.
+\item The \Package{tcolorbox} package provides a similar facility
+\item If you have a single character that is giving trouble (in
+ its absence you could simply use \csx{texttt}), consider using
+ \csx{string}. \cmdinvoke{texttt}{my\csx{string}\_name}
+ typesets the same as
+ \csx{verb+my\_name+}, and will work in the argument of a command. It
+ won't, however, work in a moving argument, and no amount of
+ \Qref*{\csx{protect}ion}{Q-protect} will make it work in
+ such a case.
+
+ A robust alternative is:
+\begin{quote}
+\begin{verbatim}
+\chardef\us=`\_
+...
+\section{... \texttt{my\us name}}
+\end{verbatim}
+\end{quote}
+ Such a definition is `naturally' robust; the construction
+ ``\meta{back-tick}\csx{\meta{char}}'' may be used for any
+ troublesome character (though it's plainly not necessary for things
+ like percent signs for which \AllTeX{} already provides
+ robust macros).
+
+\item One may also consider putting verbatim material in an external
+ file; this is somewhat more tedious, but the file may be reused
+ several times within a single document. The \Package{tcolorbox}
+ permits this:
+\begin{quote}
+\begin{verbatim}
+\begin{tcbverbatimwrite}{<file name>}
+...
+\end{tcbverbatimwrite}
+\end{verbatim}
+\end{quote}
+ which (as one might guess) writes to the named file; load the saved
+ contents using \cmdinvoke{input}{<file name>}
+
+ A second environment puts your verbatim material in an (apparently)
+ anonymous temporary file:
+\begin{quote}
+\begin{verbatim}
+\begin{tcbwritetemp}{<file name>}
+...
+\end{tcbverbatimwrite}
+\end{verbatim}
+\end{quote}
+ In this case, you use the anonymous file with the \csx{tcbusetemp}
+ macro. (You can change the name used for the `anonymous' file, if
+ its default proves troublesome.)
+
+ The \Package{moreverb} package provides a \csx{verbatimwrite}
+ command, which doesn't provide an anonynous file.
+
+ Macros, to achieve the same effect, are outlined in the
+ documentation of the \Package{verbatim} package; the macros use the
+ facilities of the package, but the user has to write a mini-package
+ actually to use them.
+\end{itemize}
+\begin{ctanrefs}
+\item[cprotect.sty]\CTANref{cprotect}
+\item[fancyvrb.sty]\CTANref{fancyvrb}
+\item[l3kernel \nothtml{\rmfamily}bundle]\CTANref{l3kernel}
+\item[memoir.cls]\CTANref{memoir}
+\item[newverbs.sty]\CTANref{newverbs}
+\item[tcolorbox.sty]\CTANref{tcolorbox}
+\item[url.sty]\CTANref{url}
+\item[verbatim.sty]\CTANref{verbatim}
+\item[verbatimbox.sty]\CTANref{verbatimbox}
+\item[verbdef.sty]\CTANref{verbdef}
+\item[xparse.sty]Distributed as part of \CTANref{l3packages}[xparse]
+\end{ctanrefs}
+\LastEdit{2013-10-21}
+
+\Question[Q-noline]{``No line here to end''}
+
+The error
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+! LaTeX Error: There's no line here to end.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+! LaTeX Error: There's no line here to end.
+
+See the LaTeX manual or LaTeX Companion
+... for explanation.
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+appears when you give \LaTeX{} a \texttt{\bsbs } command at a time
+when it's not expecting it; it is a \emph{line-breaking} command, and
+is confused if \latex{} isn't building a paragraph when you give the
+command. A common case is where you've decided you want the label of
+a list item to be on a line of its own, and written (for example):
+\begin{quote}
+\begin{verbatim}
+\begin{description}
+\item[Very long label] \\
+ Text...
+\end{description}
+\end{verbatim}
+\end{quote}
+% ridiculous coding for sanitize.pl -- careful!
+% \bsbs {} is actually a rather bad command to use in this case (even if
+% it worked), since it could force the `paragraph' that's made up of the
+% text of the item to terminate a line which has nothing on it but the
+% label. This could lead to an ``\texttt{Underfull }\csx{hbox}'' warning message
+% (usually with `infinite' badness of 10000); while this message doesn't
+% do any actual harm other than slowing down your \LaTeX{} run, any
+% message that doesn't convey any information distracts for no useful
+% purpose.
+
+The proper solution to the problem is to write a new sort of
+\environment{description} environment, that does just what you're after. (The
+\nothtml{\emph{\LaTeX{} Companion}~--- see }% ! line wrap, and next line
+\Qref[question]{\emph{\LaTeX{} Companion}}{Q-latex-books}\nothtml{~---}
+offers a rather wide selection of variants of these things.)
+
+A straightforward solution, which avoids the warning, is to write:
+\begin{quote}
+\begin{verbatim}
+\begin{description}
+\item[Very long label] \leavevmode \\
+ Text...
+\end{description}
+\end{verbatim}
+\end{quote}
+which starts a paragraph before forcing a break. The
+\Package{expdlist} package provides the same functionality with its
+\csx{breaklabel} command, and \Package{mdwlist} provides it via its
+\csx{desclabelstyle} command.
+
+The other common occasion for the message is when you're using the
+\texttt{center} (or \environment{flushleft} or \environment{flushright})
+environment, and have decided you need extra separation between lines
+in the environment:
+\begin{quote}
+\begin{verbatim}
+\begin{center}
+ First (heading) line\\
+ \\
+ body of the centred text...
+\end{center}
+\end{verbatim}
+\end{quote}
+The solution here is plain: use the \texttt{\bsbs } command in the way it's
+supposed to be used, to provide more than just a single line break
+space. \texttt{\bsbs } takes an optional argument, which specifies
+how much extra space to add; the required effect in the text above can
+be had by saying:
+\begin{quote}
+\begin{verbatim}
+\begin{center}
+ First (heading) line\\[\baselineskip]
+ body of the centred text...
+\end{center}
+\end{verbatim}
+\end{quote}
+
+You \emph{can} use \csx{leavevmode}, as above:
+\begin{quote}
+\begin{verbatim}
+\begin{center}
+ First (heading) line\\
+ \leavevmode\\
+ body of the centred text...
+\end{center}
+\end{verbatim}
+\end{quote}
+but that is just as tiresome to type as \texttt{\bsbs } with an optional
+argument, and can not be recommended.
+\begin{ctanrefs}
+\item[expdlist.sty]\CTANref{expdlist}
+\item[mdwlist.sty]Distributed as part of \CTANref{mdwtools}[mdwlist]
+\end{ctanrefs}
+\LastEdit{2014-01-13}
+
+% other instances: \[no]linebreak in vertical mode
+
+\Question[Q-vertspacefloat]{Extra vertical space in floats}
+
+A common complaint is that extra vertical space has crept into
+\environment{figure} or \environment{table} floating environments.
+More common still are users who post code that introduces this extra
+space, and \emph{haven't noticed the problem}!
+
+The trouble arises from the fact that the \environment{center}
+environment (and its siblings \environment{flushleft} and
+\environment{flushright}) are actually based on \LaTeX{}'s
+list-handling code; and lists always separate themselves from the
+material around them. Meanwhile, there are parameters provided to
+adjust the spacing between floating environments and their
+surroundings; so if we have:
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ \begin{center}
+ \includegraphics{...}
+ \caption{...}
+ \end{center}
+\end{figure}
+\end{verbatim}
+\end{quote}
+\nothtml{\noindent}or worse still:
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ \begin{center}
+ \includegraphics{...}
+ \end{center}
+ \caption{...}
+\end{figure}
+\end{verbatim}
+\end{quote}
+unwarranted vertical space is going to appear.
+
+The solution is to let the float and the objects in it position
+themselves, and to use ``generic'' layout commands rather than their
+list-based encapsulations.
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ \centering
+ \includegraphics{...}
+ \caption{...}
+\end{figure}
+\end{verbatim}
+\end{quote}
+(which even involves less typing).
+
+This alternative code will work with any \LaTeX{} package. It will
+not work with obsolete (pre-\LaTeXe{}) packages such as
+\Package{psfig} or \Package{epsf}~--- see % beware line break
+\Qref[question]{graphics inclusion}{Q-impgraph} for discussion of the
+genesis of \csx{includegraphics}.
+\LastEdit{2012-11-16}
+
+\Question[Q-centre-flt]{Why is my table/figure/\dots{} not centred?}
+
+You want a float whose contents are centred, but \latex{} ignores your
+\environment{center} environment. Most likely, you have written:
+\begin{quote}
+\begin{verbatim}
+\begin{center}
+ \begin{figure}
+ ...
+ \end{figure}
+\end{center}
+\end{verbatim}
+\end{quote}
+In this case, \latex{} has ``taken the \environment{figure} away'',
+and will typeset it at some location it fancies (it does the same with
+\environment{table}s) the only thing we can say (for sure) about the
+location is that it \emph{won't} be inside that \environment{center}
+environment. As a result, the \environment{center} environment is
+left with nothing to do~\dots{} except to % !line break
+\Qref*{make a mess of your vertical spacing}{Q-vertspacefloat}.
+
+The solution is the same as that outlined in % !line break
+\Qref*{the same answer}{Q-vertspacefloat}, noting that all control of
+an \environment{figure} or \environment{table} needs to be
+inside the environment. So the example's code should be converted to
+\begin{quote}
+\begin{verbatim}
+\begin{figure}
+ \centering
+ ...
+\end{figure}
+\end{verbatim}
+\end{quote}
+(or something similar for a \environment{table}).
+\LastEdit*{2013-11-19}
+
+\Question[Q-2colfltorder]{Two-column float numbers out of order}
+
+When \LaTeX{} can't place a float immediately, it places it on one of
+several ``defer'' lists. If another float of the same type comes
+along, and the ``defer'' list for that type still has something in it,
+the later float has to wait for everything earlier in the list.
+
+Now, standard \LaTeX{} has different lists for single-column floats,
+and double-column floats; this means that single-column figures can
+overtake double-column figures (or vice-versa), and you observe later
+figures appear in the document before early ones. The same is true,
+of course, for tables, or for any user-defined float.
+
+The \LaTeX{} team recognise the problem, and provides a package
+(\Package{fixltx2e}) to deal with it. \Package{Fixltx2e} amalgamates
+the two defer lists, so that floats don't get out of order.
+
+For those who are still running an older \LaTeX{} distribution, the
+package \Package{fix2col} should serve. This package (also by a
+member of the \LaTeX{} team) was the basis of the relevant part of
+\Package{fixltx2e}. The functionality has also been included in
+\Package{dblfloatfix}, which also has code to place full-width floats
+at \Qref*{\texttt{[b]} placement}{Q-2colfloat}.
+
+Once you have loaded the package, no more remains to be done: the
+whole requirement is to patch the output routine; no extra commands
+are needed.
+\begin{ctanrefs}
+\item[dblfloatfix.sty]\CTANref{dblfloatfix}
+\item[fix2col.sty]\CTANref{fix2col}
+\item[fixltx2e.sty]Part of the \LaTeX{} distribution
+\end{ctanrefs}
+
+\Question[Q-tabacc]{Accents misbehave in \environment{tabbing}}
+
+So you are constructing a \environment{tabbing} environment, and you
+have the need of some diacriticised text~--- perhaps something as simple
+as \cmdinvoke{'}{e}~--- and the accent disappears because it has been
+interpreted as a \environment{tabbing} command, and everything goes
+wrong.
+
+This is really a rather ghastly feature of the \environment{tabbing}
+environment; in order to type accented characters you need to use the
+\csx{a} kludge: so \cmdinvoke{a'}{e} inside \environment{tabbing} for
+\cmdinvoke{'}{e} outside, and similarly \csx{a`} for \csx{`} and \csx{a=}
+for \csx{=}. This whole procedure is of course hideous and
+error-prone.
+
+The simplest alternative is to type in an encoding that has the
+diacriticised characters in it, and to use an appropriate encoding
+definition file in the \Package{inputenc} package. So for example,
+type:
+\begin{quote}
+ \cmdinvoke{usepackage}[latin1]{inputenc}\\
+ \texttt{...}\\
+ \cmdinvoke{begin}{tabbing}\\
+ \texttt{...}\\
+ \texttt{...} \csx{>} \texttt{voil\`a} \csx{>} \texttt{...}
+\end{quote}
+for:
+\begin{quote}
+ \dots{}\quad voil\`a\quad \dots{}
+\end{quote}
+and the internal mechanisms of the \Package{inputenc} package will put
+the right version of the accent command in there.
+
+A witty reversal of the r\^oles is introduced by the package
+\Package{Tabbing} (note the capital ``T''): it provides a
+\environment{Tabbing} environment which duplicates
+\environment{tabbing}, but all the single-character commands become
+complicated objects. So \environment{tabbing}'s \csx{>} becomes
+\csx{TAB>}, \csx{=} becomes \csx{TAB=}, and so on. The above trivial
+example would therefore become:
+\begin{quote}
+\begin{verbatim}
+\usepackage{Tabbing}
+...
+\begin{Tabbing}
+ ... ... \TAB> voil\`a \TAB> ...
+\end{verbatim}
+\end{quote}
+\begin{ctanrefs}
+\item[Tabbing.sty]\CTANref{Tabbing}
+\end{ctanrefs}
+
+\Question[Q-alreadydef]{Package reports ``command already defined''}
+
+You load a pair of packages, and the second reports that one of the
+commands it defines is already present. For example, both the
+\Package{txfonts} and \Package{amsmath} define a command \csx{iint}
+(and \csx{iiint} and so on); so
+\begin{quote}
+\begin{verbatim}
+...
+\usepackage{txfonts}
+\usepackage{amsmath}
+\end{verbatim}
+\end{quote}
+produces a string of error messages of the form:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+! LaTeX Error: Command \iint already defined.
+ Or name \end... illegal, see p.192 of the manual.
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+! LaTeX Error: Command \iint already
+ defined. Or name \end... illegal,
+ see p.192 of the manual.
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+As a general rule, things that \Package{amsmath} defines, it defines
+well; however, there is a good case for using the \Package{txfonts}
+version of \csx{iint}~--- the associated \FontName{tx} fonts have a
+double integral symbol that doesn't need to be ``faked'' in the way
+\Package{amsmath} does. In the case that you are loading several
+symbol packages, every one of which defines the same symbol, you are
+likely to experience the problem in a big way (\csx{euro} is a common
+victim).
+
+There are similar cases where one package redefines another's command,
+but no error occurs because the redefining package doesn't use
+\csx{newcommand}. Often, in such a case, you only notice the change
+because you assume the definition given by the first package. The
+\Package{amsmath}--\Package{txfonts} packages are just such a pair;
+\Package{txfonts} doesn't provoke errors.
+
+You may deal with the problem by saving and restoring the command.
+Macro programmers may care to do this for themselves; for the rest of
+us, there's the package \Package{savesym}. The sequence:
+\begin{quote}
+\begin{verbatim}
+\usepackage{savesym}
+\usepackage{amsmath}
+\savesymbol{iint}
+\usepackage{txfonts}
+\restoresymbol{TXF}{iint}
+\end{verbatim}
+\end{quote}
+does the job; restoring the \Package{amsmath} version of the command,
+and making the \Package{txfonts} version of the command available as
+\csx{TXFiint}.
+
+Documentation of \Package{savesym} doesn't amount to much: the only
+commands are \csx{savesymbol} and \csx{restoresymbol}, as noted above.
+\begin{ctanrefs}
+\item[amsmath.sty]Part of \CTANref{amslatex}
+\item[savesym.sty]\CTANref{savesym}
+\item[txfonts.sty]Part of \CTANref{txfonts}
+\end{ctanrefs}
+
+\Question[Q-zerochap]{Why are my sections numbered 0.1\,\dots{}?}
+
+This happens when your document is using the standard \Class{book} or
+\Class{report} class (or one similar), and you've got a \csx{section}
+before your first \csx{chapter}.
+
+What happens is, that the class numbers sections as % ! line break
+``\meta{chapter no}.\meta{section no}'', and until the first
+\csx{chapter} has appeared, the chapter number is 0. (If you
+use\csx{chapter*}, which doesn't number the chapter it produces, the
+problem still arises.)
+
+If you're doing this, it's possible that the \Class{article} class
+is for you; try it and see. Otherwise, put a \csx{chapter} before
+your sections, or do away with section numbering by using
+\csx{section*} instead. An alternative way of avoiding numbering is
+discussed in % ! line break
+``\Qref*{unnumbered sections in the table of contents}{Q-secnumdep}''.
+
+\Question[Q-breaklinks]{Link text doesn't break at end line}
+\keywords{hyperref overfull link}
+
+When using the \Package{hyperref} package, you make a block of text
+``active'' when you define a hyper-link (when the user clicks on
+that text, the reader program will divert to the \emph{target} of the
+link).
+
+The \Package{hyperref} package uses a \emph{driver} (in the same way
+as the \Package{graphics} package does), to determine how to implement
+all that hyper-stuff.
+
+If you use the driver for \ProgName{dvips} output (presumably you want
+to distill the resulting \PS{}), limitations in the way \ProgName{dvips}
+deals with the \csx{special} commands mean that \Package{hyperref}
+must prevent link anchors from breaking at the end of lines. Other
+drivers (notably those for \PDFTeX{} and for \ProgName{dvipdfm}) don't
+suffer from this problem.
+
+The problem may occur in a number of different circumstances. For a
+couple of them, there are work-arounds:
+
+First, if you have an \acro{URL} which is active (so that clicking on
+it will activate your web browser to ``go to'' the \acro{URL}). In
+this case \Package{hyperref} employs the \Package{url} package to
+split up the \acro{URL} (as described in % ! line break
+\Qref[question]{typesetting \acro{URL}s}{Q-setURL}), but the
+\ProgName{dvips} driver then suppresses the breaks. The way out is
+the \Package{breakurl} package, which modifies the \csx{url} command
+to produce several smaller pieces, between each of which a line break
+is permitted. Each group of pieces, that ends up together in one
+line, is converted to a single clickable link.
+
+Second, if you have a table of contents, list of figure or tables, or
+the like, \Package{hyperref} will ordinarily make the titles in the
+table of contents, or captions in the lists, active. If the title or
+caption is long, it will need to break within the table, but the
+\ProgName{dvips} driver will prevent that. In this case, load
+\Package{hyperref} with the option \pkgoption{linktocpage}, and only
+the page number will be made active.
+
+Otherwise, if you have a lengthy piece of text that you want active,
+you have at present no simple solution: you have to rewrite your text,
+or to use a different \acro{PDF} generation mechanism.
+\begin{ctanrefs}
+\item[breakurl.sty]\CTANref{breakurl}
+\end{ctanrefs}
+
+\Question[Q-wrongpn]{Page number is wrong at start of page}
+
+This is a long story, whose sources are deep inside the workings of
+\TeX{} itself; it all derives from the \TeX{}'s striving to generate
+the best possible output.
+
+The page number is conventionally stored in \csx{count0}; \LaTeX{}
+users see this as the counter \texttt{page}, and may typeset its value
+using \csx{thepage}.
+
+The number (that is to say, \csx{count0}) is only updated when \TeX{}
+actually outputs a page. \TeX{} only even tries to do this when it
+detects a hint that it may be a good thing to do. From \TeX{}'s point
+of view, the end of a paragraph is a good time to consider outputting
+a page; it will output a page if it has \emph{more} than a page's
+worth of material to output. (Ensuring it always has something in
+hand makes some optimisations possible.) As a result, \csx{count0}
+(\csx{thepage}) is almost always wrong in the first paragraph of a
+page (the exception is where the page number has been ``forcibly''
+changed, either by changing its value directly, or by breaking the
+page where \TeX{} wouldn't necessarily have chosen to break).
+
+\LaTeX{} provides a safe way of referring to the page number, by using
+label references. So, rather than writing:
+\begin{quote}
+\begin{verbatim}
+Here is page \thepage{}.
+\end{verbatim}
+\end{quote}
+you should write:
+\begin{quote}
+\begin{verbatim}
+Here is page \pageref{here}\label{here}.
+\end{verbatim}
+\end{quote}
+(note: no space between the \csx{pageref} and the \csx{label}, since
+that could potentially end up as a page-break space itself, which
+rather defeats the purpose of the exercise!).
+
+\Question[Q-matchbrak]{My brackets don't match}
+
+\AllTeX{} has a low-level mechanism for matching braces in document
+text. This means you can type something like:
+\begin{quote}
+\begin{verbatim}
+\section{All \emph{OK} now.}
+\end{verbatim}
+\end{quote}
+and know that the first brace (for the argument of \csx{section}) will
+be matched with the last brace, and the internal pair of braces (for
+the argument of \csx{emph}) will be matched with each other. It's all
+very simple.
+
+However, \LaTeX{} has a convention of enclosing optional arguments in
+brackets, as in:
+\begin{quote}
+\begin{verbatim}
+\section[OK]{All \emph{OK} now.}
+\end{verbatim}
+\end{quote}
+These brackets are not matched by \TeX{} mechanisms, despite the
+superficial similarity of their use. As a result,
+straightforward-looking usages like:
+\begin{quote}
+\begin{verbatim}
+\section[All [OK] now]{All \emph{OK} now.}
+\end{verbatim}
+\end{quote}
+aren't \acro{OK} at all~--- the optional argument comes to consist of
+``All [OK'', and \csx{section} takes the single character ``n'' (of
+the first ``now'') as its argument.
+
+Fortunately, \TeX{}'s scanning mechanisms helps us by accepting the
+syntax ``\texttt{\{]\}}'' to `hide' the closing bracket from the
+scanning mechanism that \LaTeX{} uses. In practice, the commonest way
+to use this facility is:
+\begin{quote}
+\begin{verbatim}
+\section[All {[OK]} now]{All \emph{OK} now.}
+\end{verbatim}
+\end{quote}
+since bracing the bracket on its own ``looks odd''.
+
+\LaTeX{} has another argument syntax, even less regular, where the
+argument is enclosed in parentheses, as in:
+\begin{quote}
+\begin{verbatim}
+\put(1,2){foo}
+\end{verbatim}
+\end{quote}
+(a picture environment command).
+
+This mechanism is also prone to problems with matching closing
+parentheses, but the issue seldom arises since such arguments rarely
+contain text. If it were to arise, the same solution (enclosing the
+confused characters in braces) would solve the problem.
+
+\Question[Q-pdf-fig-chars]{Characters disappear from figures in \PDFTeX{}}
+
+You have a \acro{PDF} figure, which you want to use in your
+\PDFLaTeX{} document. When you compile the document, \PDFTeX{}
+complains about ``missing glyphs'', and some (or all) of the labelling
+text or symbols in the original figure is no longer visible.
+
+What has happened is:
+\begin{enumerate}
+\item Your figure file (say \File{fig.pdf}) has a font \File{font.pfb}
+ embedded in it.
+\item \PDFTeX{} notes that it has \File{font.pfb} on disc, and loads
+ that in place of the copy in \File{fig.pdf}.
+\item It turns out that the copy in \File{fig.pdf} has glyphs that
+ aren't in \File{font.pfb} on disc, so that you get errors while
+ compiling and you see that characters are missing when you view the
+ output. (\PDFTeX{} can't know that the fonts are different, since
+ they have the same name.)
+\end{enumerate}
+Which is all very undesirable.
+
+\PDFTeX{} does this to keep file sizes down: suppose you have a
+document that loads figures \File{fig1.pdf} and \File{fig2.pdf}; both
+of those use font \File{font.pfb}. If \PDFTeX{} takes no action,
+there will be \emph{two} copies of \File{font.pfb} in the output.
+(If your document also uses the font, there could be three copies.)
+
+A real case is the \acro{URW} font \File{NimbusRomNo9L-Regu} (a clone
+of Times Roman), which is available in a version with Cyrillic
+letters, while the version in \TeX{} distributions doesn't have those
+letters. Both versions, as distributed, have the same name.
+
+The simple (``quick and dirty'') solution is to add the command
+\begin{quote}
+ \csx{pdfinclusioncopyfonts}\texttt{=1}
+\end{quote}
+to the preamble of your document.
+
+The ``real'' solution is that one or other font should be renamed. In
+either case, this would require that you reconfigure some program's
+(\TeX{}'s or your drawing package's) font tables~--- inevitably a
+tiresome job.
+
+\Question[Q-emptynum]{I asked for ``empty'', but the page is numbered}
+
+If you use \cmdinvoke{pagestyle}{empty} and you find some pages are
+numbered anyway, you are probably encountering one of the style
+decisions built into the standard \LaTeX{} classes: that certain
+special pages should always appear with \cmdinvoke{pagestyle}{plain},
+with a page number at the centre of the page foot. The special pages
+in question are those (in \Class{article} class) containing a
+\csx{maketitle}, or (in \Class{book} and \Class{report} classes)
+\csx{chapter} or \csx{part} commands.
+
+The simple solution is to reissue the page style \emph{after} the
+command, with effect for a single page, as, for example (in
+\Class{article}):
+\begin{quote}
+\begin{verbatim}
+\maketitle
+\thispagestyle{empty}
+\end{verbatim}
+\end{quote}
+or (in \Class{book} or \Class{report})
+\begin{quote}
+\begin{verbatim}
+\chapter{foo bar}
+\thispagestyle{empty}
+\end{verbatim}
+\end{quote}
+A similar technique doesn't work for a \Class{book} or \Class{report}
+\csx{part} command pages. For that, and for other detail, take look
+at ``\Qref*{getting rid of page numbers}{Q-nopageno}''.
+
+\subsection{Common misunderstandings}
+
+\Question[Q-include]{What's going on in my \csx{include} commands?}
+
+The original \LaTeX{} provided the \csx{include} command to address the
+problem of long documents: with the relatively slow computers of the
+time, the companion \csx{includeonly} facility was a boon. With the
+vast increase in computer speed, \csx{includeonly} is less valuable
+(though it still has its place in some very large projects).
+Nevertheless, the facility is retained in current \LaTeX{}, and causes
+some confusion to those who misunderstand it.
+
+In order for \csx{includeonly} to work, \csx{include} makes a separate
+\extension{aux} file for each included file, and makes a `checkpoint' of
+important parameters (such as page, figure, table and footnote
+numbers). As a direct result, it \emph{must} clear the current page
+both before and after the \csx{include} command. (The requirement
+derives from the difficulties of % ! line break
+\begin{hyperversion}
+ \Qref*{observing page numbers}{Q-wrongpn}.)
+\end{hyperversion}
+\begin{flatversion}
+ observing page numbers~--- see \Qref{}{Q-wrongpn}.)
+\end{flatversion}
+What's more, this mechanism doesn't work if a \csx{include} command
+appears in a file that was \csx{include}d itself: \LaTeX{} diagnoses
+this as an error.
+
+So, we can now answer the two commonest questions about \csx{include}:
+\begin{itemize}
+\item Why does \LaTeX{} throw a page before and after \csx{include}
+ commands?
+
+ Answer: because it has to. If you don't like it, replace the
+ \csx{include} command with \csx{input}~--- you won't be able to use
+ \csx{includeonly} any more, but you probably don't need it anyway, so
+ don't worry.
+\begin{htmlversion}
+
+\end{htmlversion}
+\item Why can't I nest \csx{include}d files?~--- I always used to be
+ able to under \LaTeXo{}.
+
+ Answer: in fact, you couldn't, even under \LaTeXo{}, but the failure
+ wasn't diagnosed. However, since you were happy with the behaviour
+ under \LaTeXo{}, replace the \csx{include} commands with \csx{input}
+ commands (with \csx{clearpage} as appropriate).
+\end{itemize}
+
+
+\Question[Q-paraparam]{Why does it ignore paragraph parameters?}
+
+When \TeX{} is laying out text, it doesn't work from word to word, or
+from line to line; the smallest complete unit it formats is the
+paragraph. The paragraph is laid down in a buffer, as it appears, and
+isn't touched further until the end-paragraph marker is processed.
+It's at this point that the paragraph parameters have effect; and it's
+because of this sequence that one often makes mistakes that lead to
+the paragraph parameters not doing what one would have hoped (or
+expected).
+
+Consider the following sequence of \LaTeX{}:
+\begin{quote}
+\begin{verbatim}
+{\raggedright % declaration for ragged text
+Here's text to be ranged left in our output,
+but it's the only such paragraph, so we now
+end the group.}
+
+Here's more that needn't be ragged...
+\end{verbatim}
+\end{quote}
+\TeX{} will open a group, and impose the ragged-setting parameters within
+that group; it will then save a couple of sentences of text and
+close the group (thus restoring the previous value of the
+parameters that \csx{raggedright} set). Then \TeX{} encounters a blank
+line, which it knows to treat as a \csx{par} token, so it typesets the
+two sentences; but because the enclosing group has now been closed,
+the parameter settings have been lost, and the paragraph will be
+typeset normally.
+
+The solution is simple: close the paragraph inside the group, so that
+the setting parameters remain in place. An appropriate way of doing
+that is to replace the last three lines above with:
+\begin{quote}
+\begin{verbatim}
+end the group.\par}
+Here's more that needn't be ragged...
+\end{verbatim}
+\end{quote}
+In this way, the paragraph is completed while \csx{raggedright}'s
+parameters are still in force within the enclosing group.
+
+Another alternative is to define an environment that does the
+appropriate job for you. For the above example, \LaTeX{} already
+defines an appropriate one:
+\begin{quote}
+\begin{verbatim}
+\begin{flushleft}
+Here's text to be ranged left...
+\end{flushleft}
+\end{verbatim}
+\end{quote}
+
+In fact, there are a number of parameters for which \TeX{} only
+maintains one value per paragraph. A tiresome one is the set of upper
+case/lower case translations, which (oddly enough) constrains
+hyphenation of mutilingual texts. Another that regularly creates
+confusion is \Qref*{\csx{baselineskip}}{Q-baselinepar}.
+
+\Question[Q-casechange]{Case-changing oddities}
+
+\TeX{} provides two primitive commands \csx{uppercase} and
+\csx{lowercase} to change the case of text; they're not much used, but
+are capable creating confusion.
+
+The two commands do not expand the text that is their parameter~---
+the result of \cmdinvoke{uppercase}{abc} is `\texttt{ABC}', but
+\cmdinvoke{uppercase}{\csx{abc}} is always `\csx{abc}', whatever the
+meaning of \csx{abc}. The commands are simply interpreting a table of
+equivalences between upper- and lowercase characters.
+They have (for example) no mathematical sense, and
+\begin{quote}
+\begin{verbatim}
+\uppercase{About $y=f(x)$}
+\end{verbatim}
+\end{quote}
+will produce
+\begin{quote}
+\begin{verbatim}
+ABOUT $Y=F(X)$
+\end{verbatim}
+\end{quote}
+which is probably not what is wanted.
+
+In addition, \csx{uppercase} and \csx{lowercase} do not deal very well
+with non-American characters, for example
+\cmdinvoke{uppercase}{\csx{ae}} is the same as \csx{ae}.
+
+\LaTeX{} provides commands \csx{MakeUppercase} and \csx{MakeLowercase}
+which fixes the latter problem. These commands are used in the
+standard classes to produce upper case running heads for chapters
+and sections.
+
+Unfortunately \csx{MakeUppercase} and \csx{MakeLowercase} do not solve
+the other problems with \csx{uppercase}, so for example a section
+title containing \cmdinvoke{begin}{tabular} \dots{}
+\cmdinvoke{end}{tabular} will produce a running head containing
+\cmdinvoke{begin}{TABULAR}. The simplest solution to this problem is
+using a user-defined command, for example:
+\begin{quote}
+\begin{verbatim}
+\newcommand{\mytable}{\begin{tabular}...
+ \end{tabular}}
+\section{A section title \protect\mytable{}
+ with a table}
+\end{verbatim}
+\end{quote}
+Note that \csx{mytable} has to be protected, otherwise it will be
+expanded and made upper case; you can achieve the same result by
+declaring it with \csx{DeclareRobustCommand}, in which case the
+\csx{protect} won't be necessary.
+
+David Carlisle's \Package{textcase} package
+addresses many of these problems in a transparent way. It defines
+commands \csx{MakeTextUppercase} and \csx{MakeTextLowercase} which do
+upper- or lowercase, with the fancier features of the \LaTeX{}
+standard \csx{Make*}-commands but without the problems
+mentioned above. Load the package with
+\cmdinvoke{usepackage}[overload]{textcase}, and it will redefine the \LaTeX{}
+commands (\emph{not} the \TeX{} primitive commands \csx{uppercase} and
+\csx{lowercase}), so that section headings and the like don't produce
+broken page headings.
+\begin{ctanrefs}
+\item[textcase.sty]\CTANref{textcase}
+\end{ctanrefs}
+
+\Question[Q-splitfoot]{Why does \LaTeX{} split footnotes across pages?}
+
+\LaTeX{} splits footnotes when it can think of nothing better to do.
+Typically, when this happens, the footnote mark is at the bottom of
+the page, and the complete footnote would overfill the page. \LaTeX{}
+could try to salvage this problem by making the page short of both the
+footnote and the line with the footnote mark, but its priorities told
+it that splitting the footnote would be preferable.
+
+As always, the best solution is to change your text so that the
+problem doesn't occur in the first place. Consider whether the text
+that bears the footnote could move earlier in the current page, or on
+to the next page.
+
+If this isn't possible, you might want to change \LaTeX{}'s perception
+of its priorities: they're controlled by
+\csx{interfootnotelinepenalty}~--- the larger it is, the less willing
+\LaTeX{} is to split footnotes.
+
+Setting
+\begin{quote}
+\begin{verbatim}
+\interfootnotelinepenalty=10000
+\end{verbatim}
+\end{quote}
+inhibits split footnotes altogether, which will cause `\texttt{Underfull}
+\csx{vbox}' messages unless you also specify \csx{raggedbottom}. The
+default value of the penalty is \texttt{100}, which is rather mild.
+
+An alternative technique is to juggle with the actual size of the
+pages. \csx{enlargethispage} changes the size of the current page by
+its argument (for example, you might say
+\cmdinvoke{enlargethispage}{\csx{baselineskip}} to add a single line
+to the page, but you can use any ordinary \TeX{} length such as
+\texttt{15mm} or \texttt{-20pt} as argument). Reducing the size of
+the current page could force the offending text to the next page;
+increasing the size of the page may allow the footnote to be included
+in its entirety. It may be necessary to change the size of more than
+one page.
+
+The \Package{fnbreak} package detects (and generates warnings about)
+split footnotes.
+\begin{ctanrefs}
+\item[fnbreak.sty]\CTANref{fnbreak}
+\end{ctanrefs}
+
+\Question[Q-marginparside]{Getting \csx{marginpar} on the right side}
+
+In an ideal world, marginal notes would be in ``analogous'' places on
+every page: notes on an even-side page would be in the left margin,
+while those on an odd-side page would be in the right margin. A
+moment's thought shows that a marginal note on the left needs to be
+typeset differently from a marginal note on the right. The \LaTeX{}
+\csx{marginpar} command therefore takes two arguments in a
+\texttt{twoside} documents: % beware line break
+\cmdinvoke*{marginpar}[left text]{right text}. \LaTeX{} uses the
+``obvious'' test to
+get the \csx{marginpar}s in the correct margin, but a booby-trap arises
+because \TeX{} runs its page maker asynchronously. If a
+\csx{marginpar} is processed while page \ensuremath{n} is being built, but
+doesn't get used until page \ensuremath{n}+1, then the \csx{marginpar} will turn
+up on the wrong side of the page. This is an instance of a general
+problem: see
+% beware line break
+``\Qref*{finding if you're on an odd or an even page}{Q-oddpage}''.
+
+The solution to the problem is for \LaTeX{} to `remember' which side
+of the page each \csx{marginpar} \emph{should} be on. The
+\Package{mparhack} package does this, using label-like marks stored in
+the \extension{aux} file; the \Class{memoir} class does likewise.
+\begin{ctanrefs}
+\item[memoir.cls]\CTANref{memoir}
+\item[mparhack.sty]\CTANref{mparhack}
+\end{ctanrefs}
+
+\Question[Q-misschar]{Where have my characters gone?}
+
+You've typed some apparently reasonable text and processed it, but the
+result contains no sign of some of the characters you typed. A likely
+reason is that the font you selected just doesn't have a
+representation for the character in question.
+
+For example, if I type ``that will be \pounds{}44.00'' into an ordinary
+\AllTeX{} document, or if I select the font \texttt{rsfs10} (which contains
+uppercase letters only) and type pretty much anything, the \pounds{}
+sign, or any lowercase letters or digits will not appear in the
+output. There's no actual error message, either: you have to read the
+log file, where you'll find cryptic little messages like
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+Missing character: There is no ^^a3 in font cmr10!
+Missing character: There is no 3 in font rsfs10!
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+Missing character:
+ There is no ^^a3 in font cmr10!
+Missing character:
+ There is no 3 in font rsfs10!
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+(the former demonstrating my \TeX{}'s unwillingness to deal in characters
+which have the eighth bit set, while the \texttt{rsfs10} example shows that
+\TeX{} will log the actual character in error, if it thinks it's
+possible).
+
+Somewhat more understandable are the diagnostics you may get from
+\Package{dvips} when using the \acro{OT}1 and \acro{T}1 versions of
+fonts that were supplied in Adobe standard encoding:
+\begin{quote}
+\begin{verbatim}
+dvips: Warning: missing glyph `Delta'
+\end{verbatim}
+\end{quote}
+The process that generates the metrics for using the fonts generates
+an instruction to \Package{dvips} to produce these diagnostics, so
+that their non-appearance in the printed output is less surprising
+than it might be. Quite a few glyphs provided in Knuth's text
+encodings and in the Cork encoding are not available in the Adobe
+fonts. In these cases, there \emph{is} a typeset sign of the
+character: \ProgName{dvips} produces a black rectangle of whatever
+size the concocted font file has specified.
+
+\Question[Q-rerun]{``Rerun'' messages won't go away}
+
+The \LaTeX{} message ``Rerun to get crossreferences right'' is
+supposed to warn the user that the job needs to be processed again,
+since labels seem to have changed since the previous run. (\LaTeX{}
+compares the labels it has created this time round with what it found
+from the previous run when it started; it does this comparison at
+\cmdinvoke{end}{document}.)
+
+Sometimes, the message won't go away: however often you reprocess your
+document, \LaTeX{} still tells you that ``Label(s) may have
+changed''. This can sometimes be caused by a broken package: both
+\Package{footmisc} (with the \pkgoption{perpage} option) and \Package{hyperref}
+have been known to give trouble, in the past: if you are using either,
+check you have the latest version, and upgrade if possible.
+
+However, there \emph{is} a rare occasion when this error can happen
+as a result of pathological structure of the document itself. Suppose
+you have pages numbered in roman, and you add a reference to a label
+on page ``ix'' (9). The presence of the reference pushes the thing
+referred to onto page ``x'' (10), but since that's a shorter reference
+the label moves back to page ``ix'' at the next run. Such a sequence
+can obviously not terminate.
+
+The only solution to this problem is to make a small change to your
+document (something as small as adding or deleting a comma will often
+be enough).
+\begin{ctanrefs}
+\item[footmisc.sty]\CTANref{footmisc}
+\item[hyperref.sty]\CTANref{hyperref}
+\end{ctanrefs}
+
+\Question[Q-xspace]{Commands gobble following space}
+
+People are forever surprised that simple commands gobble the space
+after them: this is just the way it is. The effect arises from the
+way \TeX{} works, and Lamport describes a solution (place a pair of braces
+after a command's invocation) in the description of \LaTeX{} syntax.
+Thus the requirement is in effect part of the definition of \LaTeX{}.
+
+These \acro{FAQ}s,
+for example, is written in \latex{} for production of a web site. The
+HTML code is generated by a script that \emph{requires} a pair of
+braces, to make a null argument, as in:
+\begin{quote}
+ \cmdinvoke{fred}{\relax} % the \relax prevents {} being gobbled
+ % in html production (sigh)
+ % (we needn't tell them about _that_ ;-)
+\end{quote}
+for almost all macro invocations, regardless
+of whether the following space is required: however, these \acro{FAQ}s
+should not itself be regarded as a model of \latex{} style.
+
+Many users find all those braces become very tedious very
+quickly, and would really rather not type them all.
+
+An alternative structure, that doesn't violate the design of \LaTeX{},
+is to say \csx{fred}\csx{ }~--- the \csx{ } command is ``self
+terminating'' (like \texttt{\bsbs }) and you don't need braces after
+\emph{it}. Thus one can reduce to one the number of extra characters
+one needs to type.
+
+If even that one character is too many, the package \Package{xspace}
+defines a command \csx{xspace} that guesses whether there should have
+been a space after it, and if so introduces that space. So
+% beware line wrap
+``\texttt{fred\csx{xspace} jim}'' produces ``fred jim'', while
+``\texttt{fred\csx{xspace}.\@ jim}'' produces ``fred. jim''. Which
+usage would of course be completely pointless; but you can incorporate
+\csx{xspace} in your own macros:
+\begin{quote}
+\begin{wideversion}
+\begin{verbatim}
+\usepackage{xspace}
+...
+\newcommand{\restenergy}{\ensuremath{mc^2}\xspace}
+...
+and we find \restenergy available to us...
+\end{verbatim}
+\end{wideversion}
+\begin{narrowversion}
+\begin{verbatim}
+\usepackage{xspace}
+...
+\newcommand{\restenergy}%
+ {\ensuremath{mc^2}\xspace}
+...
+and we find \restenergy available to us...
+\end{verbatim}
+\end{narrowversion}
+\end{quote}
+The \csx{xspace} command must be the last thing in your macro
+definition (as in the example); it's not completely foolproof, but it
+copes with most obvious situations in running text.
+
+The \Package{xspace} package doesn't save you anything if you use it in
+a macro that appears only once or twice within your document, and it
+is not totally foolproof. (The original author of the package wrote
+it because he had been bitten by lost spaces. He no longer recommends
+its use, simply because of the possibility of error.)
+
+In any case, be
+careful with usage of \csx{xspace}~--- it changes your input syntax,
+which can be confusing, notably to a collaborating author
+(particularly if you create some commands which use it and some which
+don't). No command built into \LaTeX{} or into any
+``standard'' class or package will use \csx{xspace}.
+\begin{ctanrefs}
+\item[xspace.sty]Distributed as part of \CTANref{2etools}[xspace]
+\end{ctanrefs}
+\LastEdit{2013-11-26}
+
+\Question[Q-overfull]{\AllTeX{} makes overfull lines}
+
+When \TeX{} is building a paragraph, it can make several attempts to
+get the line-breaking right; on each attempt it runs the same
+algorithm, but gives it different parameters. You can affect the way
+\TeX{}'s line breaking works by adjusting the parameters: this answer
+deals with the ``tolerance'' and stretchability parameters. The other
+vital `parameter' is the set of hyphenations to be applied: see
+``\Qref*[question]{my words aren't being hyphenated}{Q-nohyph}''
+(and the questions it references) for advice.
+
+If you're getting an undesired ``overfull box'', what has happened is
+that \TeX{} has given up: the parameters you gave it don't allow it to
+produce a result that \emph{doesn't} overfill. In this circumstance,
+Knuth decided the best thing to do was to produce a warning, and to
+allow the user to solve the problem. (The alternative, silently to go
+beyond the envelope of ``good taste'' defined for this run of \TeX{},
+would be distasteful to any discerning typographer.) The user can
+almost always address the problem by rewriting the text that's
+provoking the problem~--- but that's not always possible, and in some
+cases it's impossible to solve the problem without adjusting the
+parameters. This answer discusses the approaches one might take to
+resolution of the problem, on the assumption that you've got the
+hyphenation correct.
+
+The simplest case is where a `small' word fails to break at the end of
+a line; pushing the entire word to a new line isn't going to make much
+difference, but it might make things just bad enough that \TeX{} won't
+do it by default. In such a case on can \emph{try} the \LaTeX{}
+\csx{linebreak} command: it may solve the problem, and if it does, it
+will save an awful lot of fiddling. Otherwise, one needs to adjust
+parameters: to do that we need to recap the details of \TeX{}'s line
+breaking mechanisms.
+
+\TeX{}'s first attempt at breaking lines is performed without even
+trying hyphenation: \TeX{} sets its ``tolerance'' of line breaking
+oddities to the internal value \csx{pretolerance}, and sees what
+happens. If it can't get an acceptable break, \TeX{} adds the
+hyphenation points allowed by the current patterns, and tries again
+using the internal \csx{tolerance} value. If this pass also fails, and
+the internal \csx{emergencystretch} value is positive, \TeX{} will try
+a pass that allows \csx{emergencystretch} worth of extra stretchability
+to the spaces in each line.
+
+In principle, therefore, there are three parameters (other than
+hyphenation) that you can change: \csx{pretolerance}, \csx{tolerance}
+and \csx{emergencystretch}. Both the \texttt{tolerance} values are
+simple numbers, and should be set by \TeX{} primitive count
+assignment~--- for example
+\begin{quote}
+\begin{verbatim}
+\pretolerance=150
+\end{verbatim}
+\end{quote}
+For both, an ``infinite'' tolerance is represented by the value
+\texttt{10}\nothtml{\,}\texttt{000}, but infinite tolerance is rarely
+appropriate, since it can lead to very bad line breaks indeed.
+
+\csx{emergencystretch} is a \TeX{}-internal `dimen' register, and can
+be set as normal for dimens in \plaintex{}; in \LaTeX{}, use
+\csx{setlength}~--- for example:
+\begin{quote}
+\begin{verbatim}
+\setlength{\emergencystretch}{3em}
+\end{verbatim}
+\end{quote}
+
+The choice of method has time implications~--- each of the
+passes takes time, so adding a pass (by changing
+\csx{emergencystretch}) is less desirable than suppressing one (by
+changing \csx{pretolerance}). However, it's unusual nowadays to find a
+computer that's slow enough that the extra passes are really
+troublesome.
+
+In practice, \csx{pretolerance} is rarely used other than to manipulate
+the use of hyphenation; \plaintex{} and \LaTeX{} both set its value
+to \texttt{100}. To suppress the first scan of paragraphs, set
+\csx{pretolerance} to \texttt{-1}.
+
+\csx{tolerance} is often a good method for adjusting spacing;
+\plaintex{} and \LaTeX{} both set its value to \texttt{200}. \LaTeX{}'s
+\csx{sloppy} command sets it to \texttt{9999}, as does the
+\environment{sloppypar} environment. This value is the largest
+available, this side of infinity, and can allow pretty poor-looking
+breaks (this author rarely uses \csx{sloppy} ``bare'', though he does
+occasionally use \environment{sloppypar}~--- that way, the change of
+\csx{tolerance} is confined to the environment). More satisfactory is
+to make small changes to \csx{tolerance}, incrementally, and then to look to
+see how the change affects the result; very small increases can often
+do what's necessary. Remember that \csx{tolerance} is a paragraph
+parameter, so you need to ensure it's actually applied~--- see
+``\Qref*[question]{ignoring paragraph parameters}{Q-paraparam}''.
+\LaTeX{} users could use an environment like:
+\begin{quote}
+\begin{verbatim}
+\newenvironment{tolerant}[1]{%
+ \par\tolerance=#1\relax
+}{%
+ \par
+}
+\end{verbatim}
+\end{quote}
+enclosing entire paragraphs (or set of paragraphs) in it.
+
+The value of \csx{emergencystretch} is added to the assumed
+stretchability of each line of a paragraph, in a further run of the
+paragraph formatter in case that the paragraph can't be made to look
+right any other way. (The extra scan happens if
+\csx{emergencystretch\textgreater0pt}~--- if it's zero or negative, no gain
+could be had from rerunning the paragraph setter.) The example above
+set it to \texttt{3em}; the Computer Modern fonts ordinarily fit three
+space skips to the \texttt{em}, so the change would allow anything up
+to the equivalent of nine extra spaces in each line. In a line with
+lots of spaces, this could be reasonable, but with (say) only three
+spaces on the line, each could stretch to four times its natural
+width. It is therefore clear that \csx{emergencystretch} needs to be
+treated with a degree of caution.
+
+More subtle (but more tricky to manage) are the microtypographic
+extensions provided by \PDFTeX{}. Since \PDFTeX{} is the default
+`engine' for \LaTeX{} and \CONTeXT{} work in all distributions,
+nowadays, the extensions are available to all. There are two
+extensions, margin kerning and font expansion; margin kerning only
+affects the visual effect of the typeset page, and has little effect
+on the ability of the paragraph setter to ``get things right''.
+Font expansion works like a subtler version of the trick that
+\csx{emergencystretch} plays: \PDFTeX{} `knows' that your current font
+may be stretched (or shrunk) to a certain extent, and will do that
+``on the fly'' to optimise the setting of a paragraph. This is a
+powerful tool in the armoury of the typesetter.
+
+As mentioned above, the microtypographic extensions are tricky beasts
+to control; however, the \Package{microtype} package relieves the user
+of the tedious work of specifying how to perform margin adjustments
+and how much to scale each font~\dots{}\@ for the fonts the package
+knows about; it's a good tool, and users who can take on the
+specification of adjustments for yet more fonts are always welcome.
+\begin{ctanrefs}
+\item[microtype.sty]\CTANref{microtype}
+\end{ctanrefs}
+
+\Question[Q-exscale]{Maths symbols don't scale up}
+
+By default, the ``large'' maths symbols stay at the same size
+regardless of the font size of the text of the document. There's good
+reason for this: the \FontName{cmex} fonts aren't really designed to
+scale, so that \TeX{}'s maths placement algorithms don't perform as
+well as they might when the fonts are scaled.
+
+However, this behaviour confounds user expectations, and can lead to
+slightly odd-looking documents. If you want the fonts to scale,
+despite the warning above, use the \Package{exscale} package~--- just
+loading it is enough.
+%%
+%% (Note: if you are using bitmap versions of the \FontName{cmex} fonts,
+%% you will find extra bitmaps are generated. The extended sizes are not
+%% ordinarily generated for any other purpose.)
+\begin{ctanrefs}
+\item[exscale.sty]Part of the \LaTeX{} distribution.
+\end{ctanrefs}
+
+\Question[Q-linespread]{Why doesn't \csx{linespread} work?}
+
+The command \cmdinvoke*{linespread}{factor} is supposed to multiply
+the current \csx{baselineskip} by \meta{factor}; but, to all
+appearances, it doesn't.
+
+In fact, the command is equivalent to
+\cmdinvoke{renewcommand}{\csx{baselinestretch}}{factor}: written that
+way, it somehow feels less surprising that the effect isn't immediate.
+The \csx{baselinestretch} factor is only used when a font is selected;
+a mere change of \csx{baselinestretch} doesn't change the font, any
+more than does the command
+\cmdinvoke*{fontsize}{size}{baselineskip}~--- you have to follow
+either command with \csx{selectfont}. So:
+\begin{quote}
+\begin{verbatim}
+\fontsize{10}{12}%
+\selectfont
+\end{verbatim}
+\end{quote}
+or:
+\begin{quote}
+\begin{verbatim}
+\linespread{1.2}%
+\selectfont
+\end{verbatim}
+\end{quote}
+Of course, a package such as \Package{setspace}, whose job is to
+manage the baseline, will deal with all this stuff~--- see
+``\Qref*[question]{managing double-spaced documents}{Q-linespace}''. If
+you want to avoid \Package{setspace}, beware the behaviour of
+linespread changes within a paragraph: read % ! line break
+``\Qref*[question]{\csx{baselineskip} is a paragraph parameter}{Q-baselinepar}''.
+\begin{ctanrefs}
+\item[setspace.sty]\CTANref{setspace}
+\end{ctanrefs}
+
+\Question[Q-baselinepar]{Only one \csx{baselineskip} per paragraph}
+
+The \csx{baselineskip}, which determines the space between lines, is
+not (as one might hope) a property of a line, but of a paragraph. As
+a result, in a \texttt{10pt} (nominal) document (with a default
+\csx{baselineskip} of \texttt{12pt}), a single character with a larger
+size, as:
+\begin{quote}
+\begin{verbatim}
+{\Huge A}
+\end{verbatim}
+\end{quote}
+will be squashed into the paragraph: \TeX{} will make sure it doesn't
+scrape up against the line above, but won't give it ``room to
+breathe'', as it does the text at standard size; that is, its size
+(\texttt{24.88pt}) is taken account of, but its \csx{baselineskip}
+(\texttt{30pt}) isn't. This problem may be solved by a \emph{strut}:
+the name comes from movable metal typography, and refers to a spacer
+that held the boxes (that contained the metal character shapes) apart.
+Every time you change font size, \LaTeX{} redefines the command
+\csx{strut} to provide the equivalent of a metal-type strut for the
+size chosen. So for the example above, we would type
+\begin{quote}
+\begin{verbatim}
+Paragraph text ...
+ {\Huge A\strut}
+ ... paragraph continues ...
+\end{verbatim}
+\end{quote}
+This technique \emph{only} works for such very short intrusions; if
+you need several lines, you should convert your intrusion into a
+\environment{quote} environment, since it's not possible to provide a
+\csx{strut} command for every line of the intrusion, in a sensible
+way, so proceed by:
+\begin{quote}
+\begin{verbatim}
+\begin{quote}
+ \Huge A LENGTHY TEXT ...
+ SHOUTING AT THE READER!
+\end{quote}
+\end{verbatim}
+\end{quote}
+
+The contrary case:
+\begin{quote}
+\begin{verbatim}
+Paragraph text ...
+{\footnotesize Extended interjection ...
+ ... into the paragraph.}
+ ... paragraph continues ...
+\end{verbatim}
+\end{quote}
+will look wrong, since the \texttt{8pt} interjection will
+end up set on the \texttt{12pt} \csx{baselineskip} of the paragraph,
+rather than its preferred \texttt{8.5pt}. A \csx{strut} here is no
+help: there is no such thing as a ``negative strut'', that draws lines
+together, so once more, one falls back on the \environment{quote} to
+separate the interjection:
+\begin{quote}
+\begin{verbatim}
+Paragraph text ...
+\begin{quote}
+ \footnotesize Extended interjection ...
+ ... into the paragraph.
+\end{quote}
+... paragraph continues ...
+\end{verbatim}
+\end{quote}
+
+The same effect is at work when we have something like:
+\begin{quote}
+\begin{verbatim}
+Paragraph text ...
+ ... paragraph body ends.
+{\footnotesize Comment on the paragraph.}
+
+Next paragraph starts...
+\end{verbatim}
+\end{quote}
+which will set the body of the first paragraph on the constricted
+\csx{baselineskip} of the \csx{footnotesize} comment. Solve this
+problem by ending the initial paragraph before starting the comment:
+\begin{quote}
+\begin{verbatim}
+Paragraph text ...
+ ... paragraph body ends.
+\par\nothtml{\noindent}
+{\footnotesize Comment on the paragraph.}
+
+Next paragraph starts...
+\end{verbatim}
+\end{quote}
+(We suggest \csx{noindent} to make the comment look as if it is part
+of the paragraph it discusses; omit \csx{noindent} if that is inappropriate.)
+
+A variation of the previous issue arises from a paragraph whose size
+is different from those around it:
+\begin{quote}
+\begin{verbatim}
+{\Large (Extended) IMPORTANT DETAILS ...}
+
+Main body of text...
+\end{verbatim}
+\end{quote}
+Again, the problem is solved by ending the paragraph in the same group
+as the text with a different size:
+\begin{quote}
+\begin{verbatim}
+{\Large (Extended) IMPORTANT DETAILS ...\par}
+
+Main body of text...
+\end{verbatim}
+\end{quote}
+
+\Question[Q-tocloftwrong]{Numbers too large in table of contents, etc.}
+
+\keywords{memoir table-of-contents spacing}
+\LaTeX{} constructs the table of contents, list of figures, tables,
+and similar tables, on the basis of a layout specified in the class.
+As a result, they do \emph{not} react to the sizes of things in them,
+as they would if a \environment{tabular} environment (or something
+similar) was used.
+
+This arrangement can provoke problems, most commonly with deep section
+nesting or very large page numbers: the numbers in question just don't
+fit in the space allowed for them in the class.
+
+A separate answer discusses % ! line break
+\nothtml{re-designing the tables ---} % ! line break
+\Qref{re-designing the tables}{Q-tocloft}\nothtml{ ---}
+and techniques from that answer may be employed to make the numbers
+fit:
+\begin{quote}
+\begin{verbatim}
+\setlength\cftsectionnumwidth{4em}
+\end{verbatim}
+\end{quote}
+
+The same command may be employed in documents typeset with the
+\Class{memoir} package (by the same author as \Package{tocloft}).
+
+\Class{Memoir} has another mechanism for the job:
+\cmdinvoke{cftsetindents}{\meta{kind}}{indent}{numwidth}. Here
+\emph{kind} is \texttt{chapter}, \texttt{section}, or whatever; the
+\emph{indent} specifies the `margin' before the entry starts; and the
+\emph{width} is of the box into which the number is typeset (so needs
+to be wide enough for the largest number, with the necessary spacing
+to separate it from what comes after it in the line.
+\begin{ctanrefs}
+\item[memoir.cls]\CTANref{memoir}
+\item[tocloft.sty]\CTANref{tocloft}
+\end{ctanrefs}
+\LastEdit{2013-08-20}
+
+\Question[Q-gutter]{Why is the inside margin so narrow?}
+
+If you give the standard classes the \pkgoption{twoside} option, the
+class sets the margins narrow on the left of odd-numbered pages, and
+on the right of even-numbered pages. This is often thought to look
+odd, but it is quite right.
+
+The idea is that the typographic urge for symmetry should also apply
+to margins: if you lay an even numbered page to the left of an
+odd-numbered one, you will see that you've three equal chunks of
+un-printed paper: the left margin of the even page, the right margin
+of the odd page, and the two abutting margins together.
+
+This is all very fine in the abstract, but in practical book(let)
+production it only works ``sometimes''.
+
+If your booklet is produced on double-width paper and stapled, the
+effect will be good; if your book(let) is produced using a so-called
+``perfect'' binding, the effect will again be good.
+
+However, almost any ``quality'' book-binder will need some of your
+paper to grab hold of, and a book bound in such a way won't exhibit
+the treasured symmetry unless you've done something about the margin
+settings.
+
+The packages recommended in % ! line break
+``\Qref*{setting up margins}{Q-marginpkgs}'' mostly have provision for
+a ``binding offset'' or a ``binding correction''~--- search for
+``binding'' in the manuals (\Package{vmargin} doesn't help, here).
+
+If you're doing the job by hand (see % ! line break
+\Qref[question]{manual margin setup}{Q-marginmanual}), the trick is to
+calculate your page and margin dimensions as normal, and then:
+\begin{itemize}
+\item subtract the binding offset from \csx{evensidemargin}, and
+\item add the binding offset to \csx{oddsidemargin}.
+\end{itemize}
+which can be achieved by:
+\begin{quote}
+\begin{verbatim}
+\addtolength{\evensidemargin}{-offset}
+\addtolength{\oddsidemargin}{offset}
+\end{verbatim}
+\end{quote}
+(substituting something sensible like ``\texttt{5mm}'' for
+``\texttt{offset}'', above).
+
+The above may not be the best you can do: you may well choose to
+change the \csx{textwidth} in the presence of the binding offset; but
+the changes do work for constant \csx{textwidth}.
+
+\subsection{Why shouldn't I?}
+
+\Question[Q-t1enc]{Why use \Package{fontenc} rather than \Package{t1enc}?}
+
+In the very earliest days of \LaTeXe{}, the only way to use the
+\acro{T}1 encoding was \Package{t1enc}; with the summer 1994
+``production'' release, the \Package{fontenc} package appeared, and
+provided comprehensive support for use of the encoding.
+
+Nevertheless, the \Package{t1enc} package remains (as part of the
+\LaTeXo{} compatibility code), but it does very little: it merely
+selects font encoding \acro{T}1, and leaves to the user the business
+of generating the character codes required.
+
+Generating such character codes could be a simple matter, \emph{if}
+the \acro{T}1 encoding matched any widely-supported encoding standard,
+since in that case, one might expect one's keyboard to generate the
+character codes. However, the \acro{T}1 encoding is a mix of several
+standard encodings, and includes code points in areas of the table
+which standard encodings specifically exclude, so no \acro{T}1
+keyboards have been (or ever will be) manufactured.
+
+By contrast, the \Package{fontenc} package generates the \acro{T}1
+code points from ordinary \LaTeX{} commands (e.g., it generates the
+\texttt{\'e} character codepoint from the command \csx{'}\texttt{e}).
+So, unless you have program-generated \acro{T}1 input (which is almost
+inconceivable), use \cmdinvoke{usepackage}[T1]{fontenc} rather than
+\cmdinvoke{usepackage}{t1enc}.
+
+\Question[Q-why-inp-font]{Why bother with \Package{inputenc} and \Package{fontenc}?}
+
+The standard input encoding for Western Europe (pending the arrival of
+Unicode) is \acro{ISO}~8859--1 (commonly known by the standard's
+subtitle `Latin-1'). Latin-1 is remarkably close, in the codepoints
+it covers, to the \AllTeX{} \acro{T}1 encoding.
+
+In this circumstance, why should one bother with \Package{inputenc}
+and \Package{fontenc}? Since they're pretty exactly mirroring each
+other, one could do away with both, and use just \Package{t1enc},
+despite its \Qref*{shortcomings}{Q-t1enc}.
+
+One doesn't do this for a variety of small reasons:
+\begin{description}
+\item[Confusion] You've been happily working in this mode, and for
+ some reason find you're to switch to writing in German: the effect
+ of using ``\texttt{\ss }'' is somewhat startling, since \acro{T}1
+ and Latin-1 treat the codepoint differently.
+\item[Compatibility] You find yourself needing to work with a
+ colleague in Eastern Europe: their keyboard is likely to be set to
+ produce Latin-2, so that the simple mapping doesn't work.
+\item[Traditional \LaTeX{}] You lapse and write something like
+ \cmdinvoke{'}{e} rather than typing \texttt{\'e}; only \Package{fontenc}
+ has the means to convert this \LaTeX{} sequence into the \acro{T}1
+ character, so an \csx{accent} primitive slips through into the
+ output, and hyphenation is in danger.
+\end{description}
+The \Package{inputenc}--\Package{fontenc} combination seems slow and
+cumbersome, but it's safe.
+
+\Question[Q-eqnarray]{Why not use \environment{eqnarray}?}
+
+The environment \environment{eqnarray} is attractive for the
+occasional user of mathematics in \LaTeX{} documents: it seems to
+allow aligned systems of equations. Indeed it \emph{does} supply such
+things, but it makes a serious mess of spacing. In the system:
+\begin{quote}
+\begin{verbatim}
+\begin{eqnarray}
+ a & = & b + c \\
+ x & = & y - z
+\end{eqnarray}
+\end{verbatim}
+\end{quote}
+the spacing around the ``='' signs is \emph{not} that defined in the
+metrics for the font from which the glyph comes~--- it's
+\csx{arraycolsep}, which may be set to some very odd value for reasons
+associated with real arrays elsewhere in the document.
+
+The user is far better served by the \AMSLaTeX{} bundle, which
+provides an \environment{align} environment, which is designed with
+the needs of mathematicians in mind (as opposed to the convenience of
+\LaTeX{} programmers). For this simple case (\environment{align} and
+other \AMSLaTeX{} alignment environments are capable of far greater
+things), code as:
+\begin{quote}
+\begin{verbatim}
+\begin{align}
+ a & = b + c \\
+ x & = y - z
+\end{align}
+\end{verbatim}
+\end{quote}
+The matter is discussed in more detail in a % ! line break
+\href{http://tug.org/pracjourn/2006-4/madsen/madsen.pdf}{Prac\TeX{} journal paper}
+by Lars Madsen; Stefan Kottwitz offers a % ! line break
+\href{http://texblog.net/latex-archive/maths/eqnarray-align-environment/}{\tex{} blog entry}
+which includes screen shots of the output, convincingly demonstrating
+the problem.
+\begin{ctanrefs}
+\item[AMSLaTeX]\CTANref{amslatex}
+\end{ctanrefs}
+
+\Question[Q-dolldoll]{Why use \csx{[}\,\dots{}\csx{]} in place of \texttt{\$\$}\,\dots{}\,\texttt{\$\$}?}
+
+\LaTeX{} defines inline- and display-maths commands, apparently
+duplicating the \TeX{} primitive maths sequences which surround maths
+commands with single (or pairs of) dollar signs.
+
+In fact, \LaTeX{}'s inline maths grouping, % !line break
+\csx{(}\texttt{ ... }\csx{)}, has (almost) exactly the same effect as the
+\TeX{} primitive version \texttt{\$ ... \$}. (The exception:
+the \LaTeX{} version checks to ensure you don't put \csx{(} and
+\csx{)} the wrong way round; this does occasionally detect errors\dots{}.)
+
+Since this is the case, one often finds \LaTeX{} users, who have some
+experience of using \plaintex{}, merely assuming that \LaTeX{}'s
+display maths grouping \csx{[}\texttt{ ... }\csx{]} may be replaced by
+the \TeX{} primitive display maths \texttt{\$\$ ... \$\$}.
+
+Unfortunately, the assumption is wrong: some \LaTeX{} code needs to
+patch display maths, it can only do so by patching \csx{[} and \csx{]}
+(or their equivalents). Most obviously, the class option \pkgoption{fleqn}
+simply does not work for equations coded using % ! line break
+\texttt{\$\$ ... \$\$}, whether you're using the standard classes
+alone, or using package \Package{amsmath}. Also, the \csx{[} and
+\csx{]} construct has code for rationalising vertical spacing in some
+extreme cases; that code is not provided \texttt{\$\$ ... \$\$}, so if
+you use the \plaintex{} version, you may occasionally observe
+inconsistent vertical spacing. Similar behaviour can bite if you are
+writing a \emph{proof}; placing the ``\acro{QED} symbol'' doesn't work
+if it is in \texttt{\$\$}-displayed maths.
+
+There are more subtle effects (especially with package
+\Package{amsmath}), and the simple rule is ``use % ! line break
+\csx{[}\texttt{ ... }\csx{]} (at least) whenever displayed maths is
+needed in \LaTeX{}''.
+
+(Note that the sequence \csx{[}\texttt{ ... }\csx{]} is duplicated by
+the \environment{displaymath} environment, which can be said to ``look
+nicer'', and actually \emph{describes} what's being done.)
+\LastEdit{2013-06-05}
+
+\Question[Q-2letterfontcmd]{What's wrong with \csx{bf}, \csx{it}, etc.?}
+
+The font-selection commands of \LaTeXo{} were \csx{rm}, \csx{sf},
+\csx{tt}, \csx{it}, \csx{sl}, \csx{em} and \csx{bf}; they were modal
+commands, so you used them as:
+\begin{quote}
+\begin{verbatim}
+{\bf Fred} was {\it here\/}.
+\end{verbatim}
+\end{quote}
+with the font change enclosed in a group, so as to limit its effect;
+note the italic correction command \csx{/} that was necessary at the
+end of a section in italics.
+
+At the release of \LaTeXe{} in summer 1994, these simple commands were
+deprecated, but recognising that their use is deeply embedded in the
+brains of \LaTeX{} users, the commands themselves remain in \LaTeX{},
+\emph{with their \LaTeXo{} semantics}. Those semantics were part of
+the reason they were deprecated: each \csx{\emph{xx}} overrides
+any other font settings, keeping only the size. So, for example,
+\begin{quote}
+\begin{verbatim}
+{\bf\it Here we are again\/}
+\end{verbatim}
+\end{quote}
+ignores \csx{bf} and produces text in italic, medium weight (and the
+italic correction has a real effect), whereas
+\begin{quote}
+\begin{verbatim}
+{\it\bf happy as can be\/}
+\end{verbatim}
+\end{quote}
+ignores \csx{it} and produces upright text at bold weight (and the
+italic correction has nothing to do). The same holds if you mix
+\LaTeXe{} font selections with the old style commands:
+\begin{quote}
+\begin{verbatim}
+\textbf{\tt all good friends}
+\end{verbatim}
+\end{quote}
+ignores the \csx{textbf} that encloses the text, and produces
+typewriter text at medium weight.
+
+So why are these commands deprecated?~--- it is because of confusions
+such as that in the last example. The alternative (\LaTeXe{})
+commands are discussed in the rest of this answer.
+
+\LaTeXe{}'s font commands come in two forms: modal commands and
+text-block commands. The default set of modal commands offers weights
+\csx{mdseries} and \csx{bfseries}, shapes \csx{upshape},
+\csx{itshape}, \csx{scshape} and \csx{slshape}, and families
+\csx{rmfamily}, \csx{sffamily} and \csx{ttfamily}. A font selection
+requires a family, a shape and a series (as well as a size, of
+course). A few examples
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+{\bfseries\ttfamily
+ and jolly good company!}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+{\bfseries\ttfamily and jolly good company!}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+produces bold typewriter text (but note the lack of a % ! line break, big time
+\begin{narrowversion} % non hyper version
+ bold typewriter font~--- \Qref{}{Q-bold-extras}~---
+\end{narrowversion}
+\begin{wideversion}
+ \Qref{bold typewriter font}{Q-bold-extras}
+\end{wideversion}
+in the default Computer Modern fonts), or
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+{\slshape\sffamily
+ Never mind the weather\/}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+{\slshape\sffamily Never mind the weather\/}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+(note the italic correction needed on slanted fonts, too).
+
+\LaTeXe{}'s text block commands take the first two letters of the
+modal commands, and form a \csx{text}\emph{\texttt{xx}} command from
+them. Thus \csx{bfseries} becomes \cmdinvoke*{textbf}{text},
+\csx{itshape} becomes \cmdinvoke*{textit}{text}, and \csx{ttfamily}
+becomes \cmdinvoke*{texttt}{text}. Block commands may be nested, as:
+\begin{quote}
+\begin{verbatim}
+\textit{\textbf{Never mind the rain}}
+\end{verbatim}
+\end{quote}
+to produce bold italic text (note that the block commands supply
+italic corrections where necessary), and they be nested with the
+\LaTeXe{} modal commands, too:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+\texttt{\bfseries
+ So long as we're together}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+\texttt{\bfseries So long as we're together}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+for bold typewriter, or
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+{\slshape\textbf{%
+ Whoops! she goes again}\/}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+{\slshape \textbf{Whoops! she goes again}\/}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+for a bold slanted instance of the current family (note the italic
+correction applied at the end of the modal command group, again).
+
+The new commands (as noted above) override commands of the same type.
+In almost all cases, this merely excludes ludicrous ideas such as
+``upright slanted'' fonts, or ``teletype roman'' fonts. There are a
+couple of immediate oddities, though. The first is the conflict
+between \csx{itshape} (or \csx{slshape}) and \csx{scshape}: while many
+claim that an italic small-caps font is typographically unsound, such
+fonts do exist. Daniel Taupin's \Package{smallcap} package enables
+use of the instances in the \Qref*{\acro{EC} fonts}{Q-ECfonts}, and
+similar techniques could be brought to bear on many other font sets.
+The second is the conflict between \csx{upshape} and \csx{itshape}:
+Knuth actually offers an upright-italic font which \LaTeX{} uses for
+the ``\pounds{}'' symbol in the default font set. The combination is
+sufficiently weird that, while there's a defined font shape, no
+default \LaTeX{} commands exist; to use the shape, the (eccentric) user
+needs \LaTeX{}'s simplest font selection commands:
+\begin{quote}
+\begin{narrowversion}
+\begin{verbatim}
+{\fontshape{ui}\selectfont
+ Tra la la, di dee}
+\end{verbatim}
+\end{narrowversion}
+\begin{wideversion}
+\begin{verbatim}
+{\fontshape{ui}\selectfont Tra la la, di dee}
+\end{verbatim}
+\end{wideversion}
+\end{quote}
+\begin{ctanrefs}
+\item[smallcap.sty]\CTANref{smallcap}
+\end{ctanrefs}
+
+\Question[Q-newfont*]{What's wrong with \csx{newfont}?}
+
+If all else fails, you \emph{can} specify a font using the \LaTeX{}
+\csx{newfont} command. The font so specified doesn't fit into the
+\LaTeX{} font selection mechanism, but the technique can be tempting
+under several circumstances. The command is merely the thinnest of
+wrappers around the \csx{font} primitive, and doesn't really fit with
+\LaTeX{} at all. A simple, but really rather funny, example of the
+problems it poses, may be seen in:
+\begin{quote}
+\begin{verbatim}
+\documentclass[10pt]{article}
+\begin{document}
+\newfont{\myfont}{cmr17 scaled 2000}
+\myfont
+\LaTeX
+\end{document}
+\end{verbatim}
+\end{quote}
+(the reader is encouraged to try this). The ``A'' of \csx{LaTeX} pretty
+much disappears: \LaTeX{} chooses the size on the ``A'' according to
+\emph{its} idea of the font size (10pt), but positions it according to
+the dimensions of ``\csx{myfont}'', which is more than three times
+that size.
+
+Another ``\csx{myfont}'' example arises from an entirely different
+source. The mini-document:
+\begin{quote}
+\begin{verbatim}
+\documentclass{article}
+\begin{document}
+\newfont{\myfont}{ecrm1000}
+{\myfont voil\`a}
+\end{document}
+\end{verbatim}
+\end{quote}
+gives you ``German low double quotes'' (under the ``a'') in place of
+the grave accent. This happens because \FontName{ecrm1000} is in a
+different \Qref*{font encoding}{Q-whatenc} than \LaTeX{} is
+expecting~--- if you use the \LaTeX{} \Package{fontenc} package to
+select the \acro{EC} fonts, all these tiresome encoding issues are
+solved for you, behind the scenes.
+
+There does however remain a circumstance when you will be tempted to
+use \csx{newfont}~--- viz., to get a font size that doesn't fall into
+the Knuth standard set of sizes: \LaTeX{} (by default) won't allow you
+to use such a size. Don't despair: see the answer % ! line break
+``\Qref*{arbitrary font sizes}{Q-fontsize}''.
+
+
diff --git a/obsolete/help/texfaq/faq.cls b/obsolete/help/texfaq/faq.cls
new file mode 100644
index 0000000000..a5ae3cdf54
--- /dev/null
+++ b/obsolete/help/texfaq/faq.cls
@@ -0,0 +1,93 @@
+% simple class to format the UK TeX FAQ in two columns
+
+\ProvidesClass{faq}[2002/03/11 v2.0 UK TeX FAQ]
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+
+\newif\if@patchversion
+\@patchversionfalse
+\DeclareOption{patch}{\@patchversiontrue}
+
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
+\ProcessOptions
+
+\LoadClass{article}
+
+\RequirePackage[hyphens,obeyspaces]{url}
+\RequirePackage{multicol,faq}
+
+% now, hack at page layout, taking account of whether we're in a
+% single-column version...
+
+% ****************************************
+% * PAGE LAYOUT *
+% ****************************************
+%
+% (This stuff is hacked from SPQR (et al) in baskerv.cls)
+%
+% SIDE MARGINS: (as is for single column)
+\ifsinglecolumn\else
+\oddsidemargin -2.5pc \evensidemargin -2.5pc
+\marginparwidth 4pc % don't use marginal notes...
+\marginparsep 0.5pc % ...in the UK TUG newsletter
+\fi
+
+% VERTICAL SPACING:
+\topmargin -0.5in % allow half an inch border
+\headheight 0\p@ % we don't bother with headers here ...
+\headsep 0\p@ % ... this ain't a publication
+\topskip 10\p@
+\footskip 15\p@
+
+% DIMENSION OF TEXT:
+
+% vertical dimension
+\textheight \paperheight
+\advance\textheight -1.5in
+%\textheight 250mm % height of text on a page (A4 paper)
+
+% horizontal dimension: pro tem, as is for singlcolumn
+\ifsinglecolumn\else
+\textwidth \paperwidth
+\advance\textwidth -1in
+%\textwidth 180mm % total width of a page (A4 paper)
+
+\columnseprule 0.5\p@ % width of line in the inter-column gutter
+\columnsep 10mm % space between columns
+\tolerance 9999 % make those columns justify
+\fi
+
+% FOOTNOTES:
+\footnotesep 6\p@
+\skip\footins 19.5\p@ plus 12\p@ \@minus \p@
+
+% page footer: include date if patched version
+\def\@twodigit#1{\ifnum#1<10\relax0\fi\number#1}
+\def\faq@patched@date{\@arabic\year-\@twodigit\month-\@twodigit\day}
+\if@patchversion
+ \renewcommand\ps@plain{%
+ \let\@mkboth\@gobbletwo
+ \let\@evenhead\@empty
+ \let\@oddhead\@empty
+ \def\@oddfoot{%
+ \reset@font
+ \hfil
+ \faq@patched@date\ : \thepage
+ \hfil
+ }%
+ \let\@evenfoot\@oddfoot
+ }
+ \let\ps@myplain\ps@plain
+ \pagestyle{myplain}
+\fi
+% little patch generated in investigating a request from a user here
+% in cambridge
+\let\FAQ@@tableofcontents\tableofcontents
+\renewcommand\tableofcontents{{%
+ \let\FAQ@@addvspace\addvspace
+ \def\addvspace##1{%
+ \@tempskipa##1\relax
+ \FAQ@@addvspace{0.1\@tempskipa}%
+ }%
+ \FAQ@@tableofcontents
+}}
diff --git a/obsolete/help/texfaq/faq.sty b/obsolete/help/texfaq/faq.sty
new file mode 100644
index 0000000000..e057007ae8
--- /dev/null
+++ b/obsolete/help/texfaq/faq.sty
@@ -0,0 +1,1281 @@
+% $Id: faq.sty,v 1.140 2014/01/28 18:16:50 rf10 Exp rf10 $
+%
+% This is the LaTeX package that deals with the eccentricities of mark
+% up of the UK TeX FAQ.
+%
+% uses production LaTeX 2e commands
+\NeedsTeXFormat{LaTeX2e}[1994/06/01]% at least!
+\ProvidesPackage{faq}[2007/06/08 v2.4 English TeX FAQ macros]
+
+% this package new requires etex
+\@ifundefined{eTeXversion}{%
+ \PackageError{faq}{This package requires e-TeX}{}%
+}{}
+
+%
+% something affecting fonts: do we use only freely available fonts
+% (i.e., are we going to make the postscript of this publicly
+% available?); the config file could change this setting if
+% necessary. things affected herein are the definition of \MP (for
+% metapost), which isn't currently doable with free fonts, and
+% suppression of boldface versions of the logo fonts.
+\newif\ifpublicversion \publicversiontrue
+
+%
+% what fonts are we going to typeset in?
+\newif\ifboldmathavail
+\InputIfFileExists{faqfont.cfg}% must set \ifboldmathavail if necessary
+ {\typeout{FAQ -- loading font configuration file faqfont.cfg}}
+ {%
+ \RequirePackage[T1]{fontenc}%
+ \RequirePackage{lmodern}% for sans fonts
+ \RequirePackage{mathptmx}
+ \RequirePackage{textcomp}%
+ \AtBeginDocument{%
+ \let\save@textcurrency\textcurrency
+ \def\textcurrency{%
+ {%
+ \fontfamily{lmr}\selectfont
+ \save@textcurrency
+ }%
+ }%
+ }
+ \boldmathavailfalse
+ \IfFileExists{luximono.sty}%
+ {\RequirePackage[scaled=0.85]{luximono}}% not using cmtt-alike
+ {\RequirePackage{sub-luximono}}% load whatever
+ \DeclareRobustCommand{\$}{\char`\$}% otherwise tries to load tctt....
+ \@ifundefined{Dings}{\RequirePackage{pifont}%
+ \def\Dings{\nopagebreak{\footnotesize
+ \dingline{167}}}%
+ }%
+ {}%
+ \DeclareRobustCommand\acro[1]{##1\@{}}
+ }
+
+% debugging (requires etex, like much of this package)
+%\tracingifs=1
+
+% suppress bold maths if they're not available
+\ifboldmathavail\else\let\boldmath\@empty\fi
+
+%
+% true for pdf output
+\newif\ifsinglecolumn
+
+\RequirePackage{ifpdf}
+\ifpdf
+ \PackageInfo{faq}{1-column PDF output\@gobble}
+ \expandafter\singlecolumntrue
+\else
+ \PackageInfo{faq}{2-column DVI output\@gobble}
+ \expandafter\singlecolumnfalse
+\fi
+
+\ifpdf
+ % suppress font list from pdftex
+ \RequirePackage{atveryend}
+ \AtVeryVeryEnd{\batchmode}
+\fi
+
+%
+% if we're doing pdf, set up hyperref package and backdoors that avoid
+% its sillier byproducts...
+\ifpdf
+ \@ifundefined{pdfavoidoverfull}{}{\pdfavoidoverfull=1}
+ \let\@faq@@url\url
+ \urldef\DebianSocialContract\@faq@@url
+ {http://www.debian.org/social_contract#guidelines}
+ \RequirePackage[pdftex%
+ ,colorlinks%
+ ,pdftitle=The\ UK\ TeX\ FAQ%
+ ,linkcolor=blue%
+ ,pdfpagemode=UseNone%
+ ,pdfstartview=FitH%
+% ,bookmarks=false%
+ ,bookmarksnumbered%
+ ]{hyperref}
+ \RequirePackage{pdf14}
+ \usepackage{thumbpdf}
+ \pdfstringdefDisableCommands{%
+ \let\cs\psd@cs
+ \def\csx#1{\textbackslash#1}%
+ \def\marg#1{\textbraceleft#1\textbraceright}%
+ \let\acro\@firstofone
+ \let\ProgName\@firstofone
+ \let\Package\@firstofone
+ \def\meta#1{<#1>}%
+ %
+ \def\WYSIWYG{WYSIWYG}%
+ \def\AMSTeX{AmSTeX}%
+ \def\BibTeX{BibTeX}%
+ \def\bibtex{BibTeX}%
+ \def\PiCTeX{PiCTeX}%
+ \def\pictex{PiCTeX}%
+ \def\CDROM{CD-ROM}%
+ \def\TeXXeT{TeXXeT}%
+ \def\MLTeX{ML-TeX}%
+ \def\MP{MetaPost}%
+ \def\dots{...}%
+ \def\obracesymbol{\{}%
+ \def\cbracesymbol{\}}%
+ \def\,{}%
+ }%
+ \begingroup
+ \lccode`\~=`\|%
+ \lowercase{\endgroup
+ \def\psd@cs~#1~{\textbackslash#1}%
+ }%
+ % adding table of contents to bookmarks
+ \let\Orig@tableofcontents\tableofcontents
+ \def\tableofcontents{%
+ \pdfbookmark[1]{\contentsname}{contents}%
+ \Orig@tableofcontents
+ }%
+ % adding \subsection*{Finding the Files}
+ \AtBeginDocument{%
+ \let\Orig@subsection\subsection
+ \def\subsection{%
+ \@ifstar{\bookmark@subsectionstar}{\Orig@subsection}%
+ }%
+ }%
+ \def\bookmark@subsectionstar#1{%
+ \advance\Hy@linkcounter by 1\relax
+ \pdfbookmark[2]{#1}{subsectionstar.\the\Hy@linkcounter}%
+ \Orig@subsection*{#1}%
+ }%
+\fi
+
+%
+% general support
+%\RequirePackage{calc}
+\RequirePackage{microtype}
+%
+% code for handling logo font
+%% \RequirePackage{mflogo}
+%% \ifpublicversion
+%% \renewcommand{\MP}{Meta\-Post}
+%% \let\faq@@MF\MF
+%% \def\faq@bx{bx}
+%% \DeclareRobustCommand{\MF}{{%
+%% \ifx\f@series\faq@bx
+%% \expandafter\textmd%
+%% \fi
+%% {\faq@@MF}%
+%% }%
+%% }
+%% \fi
+\DeclareRobustCommand\MF{Meta\-font}
+\let\mf\MF
+\DeclareRobustCommand\MP{Meta\-post}
+\let\mp\MP
+\newcommand\ttype{TrueType}
+\newcommand\otype{OpenType}
+\let\textlogo\textmd
+%
+% define substitutes for stupid_names
+\newcommand\LaTeXo{\latex\,2.09}
+ \newcommand\latexo{\latex\,2.09}
+\newcommand\AMSTeX{AMS\TeX}
+\newcommand\AMSLaTeX{AMS\latex}
+ \newcommand\amslatex{AMS\latex}
+\newcommand\BibTeX{Bib\TeX}
+ \newcommand\bibtex{Bib\TeX}
+\newcommand\PiCTeX{PiC\TeX}
+ \newcommand\pictex{PiC\TeX}
+ \newcommand\texlive{\TeX{} Live}
+% and...
+%
+% ifthenelse for the undefined references
+\RequirePackage{ifthen}
+%
+% tables are all long'uns
+\RequirePackage{booktabs}
+%
+% we define conditional stuff using Eijkhout's package
+\RequirePackage{comment}
+\def\CommentCutFile{tmp/comment.cut} % use this in place of ./comment.cut
+\excludecomment{htmlversion}
+\includecomment{typesetversion}
+\ifpdf
+ \includecomment{pdfversion}
+ \includecomment{wideversion}
+ \includecomment{hyperversion}
+ \excludecomment{flatversion}
+ \excludecomment{dviversion}
+ \excludecomment{narrowversion}
+\else
+ \excludecomment{pdfversion}
+ \excludecomment{wideversion}
+ \excludecomment{hyperversion}
+ \includecomment{flatversion} % non-hyper
+ \includecomment{dviversion}
+ \includecomment{narrowversion}
+\fi
+%
+% define commands that behave differently according to the above
+% \begin{hyperversion}
+% \newcommand\quotify[1]{``#1''}
+% \end{hyperversion}
+% \begin{flatversion}
+% \let\quotify\@firstofone
+% \end{flatversion}
+%
+% dummy environment for separating the intro
+\newenvironment{introduction}{}{}
+%
+% but we also want short versions, like LaTeX2HTML's
+\let\htmlonly\@gobble
+\let\nothtml\@firstofone
+\let\latexhtml\@firstoftwo
+\ifpdf
+ \let\narrowonly\@gobble
+ \let\wideonly\@firstofone
+ \let\hyperflat\@firstoftwo
+\else
+ \let\narrowonly\@firstofone
+ \let\wideonly\@gobble
+ \let\hyperflat\@secondoftwo
+\fi
+\let\hyperonly\wideonly
+\let\flatonly\narrowonly
+%
+% the little bit(s) of code that's(re) going to be ignored when the
+% html is generated are enclosed by the following two commands
+\let\htmlignore\relax
+\let\endhtmlignore\relax
+
+%
+% the Baskerville and other logos and abbreviations
+\providecommand\BV{\emph{Baskerville}}
+\providecommand\DANTE{\acro{DANTE}}
+\providecommand\MSDOS{\acro{MS-DOS}}
+\providecommand\CDROM{\acro{CD-ROM}}
+%
+\providecommand\elatex{e-\LaTeX{}}
+\providecommand\plaintex{Plain \TeX{}}
+\providecommand\miktex{MiKTeX}
+\providecommand\texshop{\ProgName{TeXshop}}
+\providecommand\texworks{\ProgName{TeXworks}}
+%
+\newcommand\ctan{\acro{CTAN}}
+\newcommand\tex{\TeX{}}
+%
+\newcommand\macosx{Mac \acro{OS}/X}
+%
+%% \providecommand\TeXXeT{\TeX-{}-X\lower.5ex\hbox{E}\kern-.1667emT\@}
+%\providecommand\MLTeX{ML-\TeX}
+%
+% provided for consistency's sake
+\newcommand\PS{PostScript}
+%
+% to get \\ into example command arguments
+\def\bsbs{\char`\\\char`\\}
+%
+\def\careof{\leavevmode\hbox{\raise.75ex\hbox{c}\kern-.15em
+ /\kern-.125em\smash{\lower.3ex\hbox{o}}}}
+%
+% another silliness:
+\providecommand{\textoslash}{\o}
+%
+% \cs{SMC} \emph{isn't} small caps~--- Barbara Beeton says she thinks
+% of it as ``big small caps''. She says (modulo capitalisation of
+% things\dots):
+% \begin{quote}
+% For the things it's used for, regular small caps are not
+% appropriate~--- they're too small. Real small caps are
+% appropriate for author names (and are so used in continental
+% bibliographies), section headings, running heads, and, on
+% occasion, words to which some emphasis is to be given. \cs{SMC}
+% was designed to be used for acronyms and all-caps abbreviations,
+% which look terrible in small caps, but nearly as bad in all caps
+% in the regular text size. The principle of using ``one size
+% smaller'' than the text size is similar to the design of caps in
+% German~--- where they are smaller relative to lowercase than are
+% caps in fonts intended for English, to improve the appearance of
+% regular text in which caps are used at the heads of all nouns, not
+% just at the beginnings of sentences.
+% \end{quote}
+%
+% We define this in terms of the memory of the size currently selected
+% that's maintained in \cs{@currsize}: if the user does something
+% silly re.~selecting fonts, we'll get the wrong results. The
+% following code is adapted from |relsize.sty| by Donald Arseneau and
+% Matt Swift, from a 2.09 original by Bernie Cosell. (Note that the
+% order of examination of \cs{@currsize} is to get the commonest cases
+% out of the way first.)
+% \begin{macrocode}
+%<!latex2e>\def\SMC{\small}
+%<*latex2e>
+\DeclareRobustCommand\SMC{%
+ \ifx\@currsize\normalsize\small\else
+ \ifx\@currsize\small\footnotesize\else
+ \ifx\@currsize\footnotesize\scriptsize\else
+ \ifx\@currsize\large\normalsize\else
+ \ifx\@currsize\Large\large\else
+ \ifx\@currsize\LARGE\Large\else
+ \ifx\@currsize\scriptsize\tiny\else
+ \ifx\@currsize\tiny\tiny\else
+ \ifx\@currsize\huge\LARGE\else
+ \ifx\@currsize\Huge\huge\else
+ \small\SMC@unknown@warning
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+}
+\newcommand\SMC@unknown@warning{\PackageWarning{faq}{Unknown text font
+ size command -- using \string\small}}
+\DeclareRobustCommand\textSMC[1]{{\SMC #1}}
+% \end{macrocode}
+%
+% The \cs{acro} command uses \cs{SMC} as it was originally intended.
+% Note that, since most of these things are uppercase-only names, it
+% fiddles with the spacefactor after inserting its text. font config
+% files may define \cs{acro} otherwise
+%
+% \begin{macrocode}
+\@ifundefined{acro}{%
+ \DeclareRobustCommand\acro[1]{\textSMC{#1}\@}%
+}{}
+% \end{macrocode}
+%
+%\TUGboat (effectively) takes arguments {<empty>}vol(issue)
+\DeclareRobustCommand\TUGboat[1]{\expandafter\@TUGboat\ignorespaces}
+\def\@TUGboat#1(#2){\textsl{TUGboat} \textbf{#1}(#2)}
+%
+% The NTS and eTeX (and for consistency Eplain) logos
+%% \DeclareRobustCommand\NTS{$\mathcal{N}$\lower.5ex\hbox
+%% {$\mathcal{T}$}$\mathcal{S}$\@}
+%% \DeclareRobustCommand\eTeX{{$\varepsilon$}-\TeX}
+%% \DeclareRobustCommand\eTeX{e-\TeX}
+%% \DeclareRobustCommand\Eplain{Eplain}
+%% \DeclareRobustCommand\PDFTeX{\acro{PDF}\TeX}
+%% \DeclareRobustCommand\PDFLaTeX{\acro{PDF}\LaTeX}
+%% \DeclareRobustCommand\CONTeXT{Con\TeX{}t}
+\DeclareRobustCommand\YandY{\acro{Y}\&\acro{Y}}
+
+% non-silly names...
+\renewcommand\TeX{TeX}
+\newcommand\Eplain{Eplain}
+\newcommand\etex{e-\TeX}
+\let\eTeX\etex % some day all the old format will have gone...
+\newcommand\ExTeX{Ex\TeX}
+\newcommand\NTS{NTS}
+\newcommand\PDFTeX{PDF\TeX}
+\newcommand\pdftex{PDF\TeX}
+\newcommand\LuaTeX{Lua\TeX}
+\newcommand\luatex{Lua\TeX}
+\newcommand\lualatex{Lua\LaTeX}
+\newcommand\xetex{XeTeX}
+\newcommand\xelatex{XeLaTeX}
+%\newcommand\TeXXeT{TeX-{}-XeT}
+
+\newcommand\AllTeX{(La)\TeX}
+\newcommand\alltex{(La)\TeX}
+\newcommand\CONTeXT{Con\TeX{}t}
+\newcommand\context{Con\tex{}t}
+\newcommand\PDFLaTeX{PDF\LaTeX}
+\newcommand\pdflatex{PDF\latex}
+\renewcommand\LaTeX{La\TeX}
+\newcommand\latex{La\TeX}
+\newcommand\twee{2e}
+\renewcommand\LaTeXe{\LaTeX\twee}
+\newcommand\latexe{\LaTeX\twee}
+%
+% Other odds and ends (appear differently in TeX and http or plain
+% text
+%
+% wysiwyg gets capitalised at the beginning of a sentence. not
+% entirely reliably...
+\DeclareRobustCommand\WYSIWYG{%
+ \ifvmode
+ \let\faq@tempa\MakeUppercase
+ \else
+ \ifnum\spacefactor>2000
+ \let\faq@tempa\MakeUppercase
+ \else
+ \let\faq@tempa\relax
+ \fi
+ \fi
+ \textsc{\faq@tempa wysiwyg}%
+}
+%
+% Command for doing `square one' :-}
+\newcommand\sqfbox[1]{\framebox{\makebox[\totalheight]{#1\/}}}
+%
+% an arrow used as a hyphen...
+\newcommand\arrowhyph{\ensuremath{\rightarrow}\penalty0\hskip0pt\relax}
+%
+% Here's a \fullline macro that works in lists and so on
+\newcommand\fullline[1]{\@tempdima\hsize\relax
+ \advance\@tempdima-\leftmargin\relax
+ \advance\@tempdima-\rightmargin\relax
+ \hb@xt@\@tempdima{#1}%
+}
+%
+% list indentations (narrower than default because two-column, but
+% squeezed further to gain a bit more space still)
+\setlength\leftmargini {1.8em}
+\setlength\leftmarginii {1.2em}
+\setlength\leftmarginiii{1em}
+\setlength\leftmarginiv {0.8em}
+%
+% for tidy expression of things with parentheses around them:
+\newcommand\parens[1]{(#1)}
+\newcommand\oparen{(}%)( [footling around to match brackety things in emacs]
+\newcommand\cparen{)}
+%
+% make the tex logo robust
+\edef\@tempa{\noexpand\DeclareRobustCommand\noexpand\TeX{\TeX}}
+\@tempa
+%
+% this piece of fantasy was let loose on an unsuspecting world by
+% christina thiele, but i bet she didn't write it ;-)
+\edef\diatop{\noexpand\protect\csname diatop \endcsname}
+\expandafter\def\csname diatop \endcsname[#1|#2]{%
+ \leavevmode
+ {%
+ \setbox1=\hbox{{#1{}}}\setbox2=\hbox{{#2{}}}%
+ \dimen0=\ifdim\wd1>\wd2\wd1\else\wd2\fi%
+ \dimen1=\ht2\advance\dimen1by-1ex%
+ \setbox1=\hbox to1\dimen0{\hss#1\hss}%
+ \rlap{\raise1\dimen1\box1}%
+ \hbox to1\dimen0{\hss#2\hss}%
+ }%
+}%
+%
+% for han the thanh (who knows whether i've actually got this right; i
+% can't use the T5 fonts, which aren't even really publicly available
+% yet)
+\DeclareRobustCommand{\The}{Th\diatop[\'|\^e]}
+%% %
+%% % 2e's LaTeX logo sets the A in scripstyle jammed up to the top of the T; it
+%% % also has the advantage that it's set in the same font as the
+%% % surrounding text. However, the esteemed bbeeton says the logo looks
+%% % "squidge awful" in italic text (I agree; and the same is true of its
+%% % behaviour in slanted text)
+%% %
+%% % So here's a version that allows for the slant of the leading L
+%% \DeclareRobustCommand{\LaTeX}{L%
+%% {\setbox0\hbox{T}%
+%% \setbox\@tempboxa\hbox{$\m@th$%
+%% \csname S@\f@size\endcsname
+%% \fontsize\sf@size\z@
+%% \math@fontsfalse\selectfont
+%% A}%
+%% \@tempdima\ht0
+%% \advance\@tempdima-\ht\@tempboxa
+%% \@tempdima\strip@pt\fontdimen1\font\@tempdima
+%% \advance\@tempdima-.36em
+%% \kern\@tempdima
+%% \vbox to\ht0{\box\@tempboxa
+%% \vss}%
+%% }%
+%% \kern-.15em
+%% \TeX}
+%% %
+%% % Ditto for \AllTeX (as used in TUGboat)
+%% \DeclareRobustCommand{\AllTeX}{(L%
+%% {\setbox0\hbox{T}%
+%% \setbox\@tempboxa\hbox{$\m@th$%
+%% \csname S@\f@size\endcsname
+%% \fontsize\sf@size\z@
+%% \math@fontsfalse\selectfont
+%% A}%
+%% \@tempdima\ht0
+%% \advance\@tempdima-\ht\@tempboxa
+%% \@tempdima\strip@pt\fontdimen1\font\@tempdima
+%% \advance\@tempdima-.36em
+%% \kern\@tempdima
+%% \vbox to\ht0{\box\@tempboxa
+%% \vss}%
+%% }\kern-.075em)%
+%% \kern-.075em\TeX}
+%% %
+%% % A similar game is used in defining an `all LaTeX' sort of thing:
+%% \DeclareRobustCommand\twee{2$_{\textstyle\varepsilon}$}
+%
+% it proves that, for Alan's stuff, the following needs to have been
+% done _before_ we define the macros
+\RequirePackage{shortvrb}
+\MakeShortVerb{\|}
+%
+% A command which sets some text in typewriter, with the hyphenchar
+% temporarily set to its first argument \FAQverb\HYPHEN{TEXT}.
+% NB: This requires no catcode hackery, so should work inside moving
+% arguments. It will, however, produce spurious spaces after CSs, and
+% won't allow brace-unmatched input. It also won't survive going into a
+% moving argument if \HYPHEN won't.
+%
+\let\FAQverbFamily\ttfamily
+\DeclareRobustCommand{\FAQverb}[2]{{%
+ \ifvmode\leavevmode\fi
+ \lefthyphenmin=256\setlanguage\language
+ \FAQverbFamily\hyphenchar\the\font`#1\relax
+ \def\@tempa{#2}%
+ \expandafter\@faq@strip\meaning\@tempa\@faq@strip
+ \hyphenchar\the\font\m@ne
+}\setlanguage\language}
+\def\@faq@strip#1->#2\@faq@strip{#2}
+%
+% Document markup:
+%
+% (new method, using url.sty -- old version using FAQverb stuff
+% deleted from comments 2000/03/24)
+\newcommand\Email{\begingroup \urlstyle{tt}\Url} % email address
+\ifpdf
+\def\mailto#1{\href{mailto:#1}{\Email{#1}}}
+\else
+\newcommand\mailto{\begingroup \urlstyle{tt}\Url} % mailable address
+\fi
+\DeclareRobustCommand\FTP{\begingroup \urlstyle{tt}\Url} % FTP site address
+\DeclareRobustCommand\File{\begingroup \urlstyle{tt}\Url} % File name
+\DeclareRobustCommand\@ctan@path{\begingroup \urlstyle{tt}\Url} % CTAN path
+ % (argument in braces)
+\ifpdf
+\newcommand\@CTAN[3]{\href{#1#2#3}{\@ctan@path{#2}}} % relay via hyperreference
+\else
+\newcommand\@CTAN[3]{\@ctan@path{#2}} % text-only reference
+\fi
+\newcommand\Newsgroup{\begingroup \urlstyle{tt}\Url} % newsgroup
+\let\URL\url % just a URL
+\ifpdf
+\let\nolinkURL\nolinkurl % unlinked version
+\else
+\let\nolinkURL\url % there ain't no linking
+\fi
+% url.sty defines \path, etc. hyperref may redefine...
+\ifpdf
+ % hyperref has defined \href
+ \let\FAQ@@href\href
+ % we actually want to ignore the * in \href*
+ \def\href{\@ifstar\FAQ@@href\FAQ@@href}
+\else
+%
+% here, latex for printing
+ \newcommand\href{%
+ \@ifstar
+ {\let\@href@text\@empty\@href@a}%
+ {\def\@href@text{see }\@href@a}%
+ }
+%
+% decisions now made about
+ \newcommand\@href@a{\begingroup
+ \@makeother\\%
+ \@makeother\_%
+ \@makeother\%%
+ \@makeother\~%
+ \@makeother\#%
+ \@href@b
+ }
+%
+% enter here in a group with sanitised arg
+ \newcommand\@href@b[1]{\endgroup
+ \urldef\@href@tempurl\url{#1}%
+ \@href@getanchor
+ }
+%
+% out of the group again: argument is the anchor
+ \newcommand\@href@getanchor[1]{#1%
+ \@ifnextchar@nosp'%
+ {\@href@getanchorq}%
+ { (\@href@text\@href@tempurl)\@let@token}%
+ }
+%
+% one quote after the anchor - check for a second
+ \newcommand\@href@getanchorq{% gobble the first quote
+ \@ifnextchar@nosp'%
+ \href@getanchor@qq
+ {' (\@href@text\@href@tempurl)\@let@token}% restore quote
+ }
+ \newcommand\href@getanchor@qq{% gobble the second quote too
+ {'' (\@href@text\@href@tempurl)}% restore both quotes
+ }
+%
+% two quotes after the anchor
+\fi
+\long\def\@ifnextchar@nosp#1#2#3{%
+ \let\reserved@d=#1%
+ \def\reserved@a{#2}%
+ \def\reserved@b{#3}%
+ \afterassignment\@ifnch@nosp\let\@let@token= }
+\def\@ifnch@nosp{%
+ \ifstophere\stopherefalse\show\@let@token\fi
+ \ifx\@let@token\reserved@d
+ \expandafter\reserved@a
+ \else
+ \expandafter\reserved@b
+ \fi
+}
+\setcounter{errorcontextlines}{999}
+\newif\ifstophere
+
+%%\ifx\DeclareUrlCommand\undefined
+\DeclareRobustCommand\ProgName{%
+ \begingroup
+ \def\UrlFont{\rmfamily\itshape}\csname Url@do\endcsname
+ \Url
+}
+\let\progname\ProgName
+%%\else
+%% \DeclareUrlCommand\@ProgName{\def\UrlFont{\rmfamily\itshape}}
+%% \DeclareRobustCommand\ProgName{\@ProgName}
+%%\fi
+\let\Package\ProgName % pro tem
+\let\package\Package
+
+\let\Class\Package % ...
+\let\class\Class
+
+\let\FontName\Package % ...
+% \let\fontname\FontName % ahh, ... no!
+
+% another little oddity (from doc.sty originally, iirc)
+\newcommand\meta[1]{\ensuremath{\langle}\emph{#1}\ensuremath{\rangle}}
+
+%
+% ISBN references
+\def\ISBN{\@ifstar\@ISBNstar\@ISBN}
+\def\@ISBNstar#1#2{\acro{ISBN}-10~#1, \acro{ISBN}-13~#2}
+\def\@ISBN#1{\acro{ISBN}-10~#1}
+%
+% Alan's code for CTAN references (now hacked to be capable of urls
+% for use in pdf output):
+%
+% define a location for a package on CTAN
+% ignores a leading * (which has meaning for html version only)
+% #1 is the package name
+% #2 is the CTAN path to the thing
+% a package in a directory
+\ifpdf
+ \newcommand{\CTANdirectory}{\@ifstar\@sCTANdirectory\@CTANdirectory}
+\else
+ \newcommand{\CTANdirectory}{\@ifstar\@CTANdirectory\@CTANdirectory}
+\fi
+\newcommand{\@CTANdirectory}[2]{\@ifundefined{ctan-#1}{%
+ \expandafter\gdef\csname ctan-#1\endcsname{\@CTAN\LocalCTAN{#2}\CTANDirFmt}%
+ }{%
+ \PackageWarningNoLine{faq}{Repeated definition of label: #1}%
+ \stepcounter{CTAN@replabs}%
+ }%
+ \@faq@disposeopt
+}
+\ifpdf
+ \newcommand{\@sCTANdirectory}[2]{\@ifundefined{ctan-#1}{%
+ \expandafter\gdef\csname ctan-#1\endcsname{\@CTAN\LocalCTAN{#2}/}%
+ }{%
+ \PackageWarningNoLine{faq}{Repeated definition of label: #1}%
+ \stepcounter{CTAN@replabs}%
+ }%
+ \@faq@disposeopt
+ }
+\fi
+%
+% a package in a single file (the same appearance, but the WWW -- and
+% ultimately the pdf -- versions are different).
+\ifpdf
+\newcommand{\CTANfile}[2]{\@ifundefined{ctan-#1}{%
+ \expandafter\gdef\csname ctan-#1\endcsname{\@CTAN\LocalCTAN{#2}{}}%
+ }{%
+ \PackageWarningNoLine{faq}{Repeated definition of label: #1}%
+ \stepcounter{CTAN@replabs}%
+ }%
+ \@faq@disposeopt
+}
+\else
+\let\CTANfile\CTANdirectory
+\fi
+%
+% get rid of optional catalogue pointer in \CTAN(directory|file)
+\newcommand\@faq@disposeopt{%
+ \@ifnextchar[\@faq@gobbleopt{}% ]
+}
+\def\@faq@gobbleopt[#1]{}
+%
+% Make reference to a CTAN package
+%
+% counters for the undefined references and repeated labels
+\newcounter{CTAN@unrefs}
+\newcounter{CTAN@replabs}%
+%
+% the command itself
+\newcommand{\CTANref}[1]{%
+ \@ifundefined{ctan-#1}{%
+ \PackageWarning{CTAN}{Undefined reference: #1}%
+ \stepcounter{CTAN@unrefs}%
+ \futurelet\@let@token\faq@zap@trailing@opt
+ }{%
+ \csname ctan-#1\endcsname
+ \expandafter\let
+ \expandafter\faq@cat@ref\csname ctan-catref-#1\endcsname
+ }%
+ \futurelet\@let@token\faq@check@trailing@opt
+}
+\newcommand\faq@check@trailing@opt{%
+ \ifx\@let@token[%
+ \expandafter\faq@collect@catref
+ \else
+ \let\faq@catref\@empty%
+ \fi
+}
+\def\faq@collect@catref[#1]{\edef\faq@catref{\noexpand
+ \url{\faq@fixed@cataddr#1.html}%
+ }%
+}%
+\def\faq@fixed@cataddr{ help/Catalogue/}%
+\newcommand\faq@zap@trailing@opt{\ifx\@let@token[%
+ \expandafter\@gobble@opt\fi
+}
+\def\@gobble@opt[#1]{}
+%
+% href to a ctan package
+\ifpdf
+ \DeclareRobustCommand{\CTANhref}[2]{\@ifundefined{ctan-#1}{%
+ \PackageWarning{CTAN}{Undefined reference: #1}%
+ \stepcounter{CTAN@unrefs}%
+ }{{%
+ \def\@CTAN##1##2##3{http://mirror.ctan.org/##2}%
+ \href{\csname ctan-#1\endcsname}{#2}%
+ }}}
+\else % DVI version
+ \DeclareRobustCommand{\CTANhref}[2]{\@ifundefined{ctan-#1}{%
+ \PackageWarning{CTAN}{Undefined reference: #1}%
+ \stepcounter{CTAN@unrefs}%
+ }{{%
+% \def\@ctan@path##1{\expandafter\httpify\LocalCTAN!##1}
+ \def\@ctan@path##1{\LocalCTAN##1}
+ \edef\@tempa{\csname ctan-#1\endcsname}%
+ \expandafter\href\expandafter{\@tempa}{#2}%
+ }}}
+\fi
+%
+% this is surely temporary
+\def\httpify ftp://ftp#1!{http://www#1}
+%
+% hook for diagnosing undefined references at the end
+\AtEndDocument{\ifthenelse{\theCTAN@unrefs > 0}{%
+ \PackageWarningNoLine{ctan}{There were \arabic{CTAN@unrefs} undefined
+ references to CTAN}%
+ }%
+ {}%
+ \ifthenelse{\theCTAN@replabs > 0}{%
+ \PackageWarningNoLine{ctan}{There were \arabic{CTAN@replabs}
+ multiply defined references to CTAN}%
+ }%
+ {}%
+}
+%
+% a slight variation of description for lists of book titles
+\newcommand{\booklabel}[1]{\hspace\labelsep\normalfont\itshape #1}
+\newenvironment{booklist}{%
+ \begin{list}{}%
+ {%
+ \labelwidth\z@
+ \itemindent-\leftmargin
+ \let\makelabel\booklabel
+ \parskip \z@
+ \itemsep \z@
+ }%
+ }%
+ {\end{list}}
+%
+% proglist is the same as booklist if we're using italics for program
+% names, but will need hacking otherwise
+\newenvironment{proglist}{\begin{booklist}}{\end{booklist}}
+%
+% similarly for ctanrefs environment
+\newcommand{\ctanreference}[1]{%
+ \hspace\labelsep\normalfont\ttfamily\itshape
+ \bgroup
+ \@makeother\_%
+ \scantokens{#1}%
+ \unskip
+ \egroup
+ \/\normalfont:%
+}
+\newenvironment{ctanrefs}{%
+ \begin{list}{}%
+ {%
+ \labelwidth\z@
+ \itemindent-\leftmargin
+ \let\makelabel\ctanreference
+ \topsep 4\p@
+ \parskip \z@
+ \itemsep \z@
+ \@rightskip=\z@\@plus1in\relax
+ \spaceskip=.3333em\relax
+ \xspaceskip=.5em\relax
+ }%
+ }%
+ {\end{list}}
+%
+% compact the itemize, enumerate and description environments
+\let\FAQ@@itemize\itemize
+\renewcommand\itemize{%
+ \topsep 0.25\topsep
+ \FAQ@@itemize
+ \parskip \z@
+ \itemsep \z@
+}
+\let\FAQ@@enumerate\enumerate
+\renewcommand\enumerate{%
+ \topsep 0.25\topsep
+ \FAQ@@enumerate
+ \parskip \z@
+ \itemsep \z@
+}
+\let\FAQ@@description\description
+\renewcommand\description{%
+ \topsep 0.25\topsep
+ \FAQ@@description
+ \parskip \z@
+ \itemsep \z@
+}
+%
+% and similarly close up verbatim's separation from what surrounds it
+\let\FAQ@@verbatim\verbatim
+\renewcommand\verbatim{%
+ \topsep 0.25\topsep
+ \FAQ@@verbatim
+}
+%
+% \raggedwithindent is useful when we've got an URL or something
+% overrunning the end of the line (and this line is terminated with
+% \\)
+%
+% Typical usage is within the argument of a \nothtml command
+\newcommand\raggedwithindent{%
+ \rightskip=\z@\@plus5em\relax
+ \spaceskip=.3333em\relax
+ \xspaceskip=.5em\relax
+ \hangindent=1pc\relax}
+%
+% things needed for the benefit of texfaq2html's `sanitise_line'
+\let\textpercent\%
+\let\faq@@textbar\textbar
+\chardef\faq@vertbar`\|
+\renewcommand\textbar{\def\@tempa{cmtt}%
+ \ifx\@tempa\f@family
+ \faq@vertbar
+ \else
+ \faq@@textbar
+ \fi
+}
+%
+% redefine \cs{l@section} to require space for itself at the bottom
+% of a column
+\renewcommand\l@section[2]{%
+ \ifnum \c@tocdepth >\z@
+ \addpenalty\@secpenalty
+ \addvspace{1.0em \@plus\p@}%
+% "needspace" element here (doesn't work)
+% \vskip \z@ \@plus 3\baselineskip
+% \penalty -\@highpenalty
+% \vskip \z@ \@plus -3\baselineskip
+ \setlength\@tempdima{1.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \endgroup
+ \fi
+}
+%
+% subsections: these are a curious half-breed between latex sections
+% and subsections -- as designed, i'm not intending there ever to be
+% more than 9 per section (hahaha)
+\renewcommand\subsection{\@startsection{subsection}%
+ \tw@
+ \z@
+ {-1.5ex \@plus-1ex \@minus-.3ex}%
+ {1ex \@plus.2ex}%
+ {\normalfont\large\bfseries
+ \raggedright}%
+ }
+\renewcommand*\l@subsection[2]{%
+ \ifnum \c@tocdepth >\@ne
+ \addpenalty\@secpenalty
+ \addvspace{0.5em \@plus\p@}%
+% "needspace" element here (doesn't work)
+% \vskip \z@ \@plus 3\baselineskip
+% \penalty -\@highpenalty
+% \vskip \z@ \@plus -3\baselineskip
+ \setlength\@tempdima{2.0em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \endgroup
+ \fi}
+%
+%
+% the question structure
+% \Question[label name]{question asked}
+% if [label name] present, the named label is assigned with \Qlabel
+\newcounter{question}
+\newcommand\Question[2][]{%
+ \ifpdf
+ \def\annot@label{#1}%
+ \def\annot@question{#2}%
+ \fi
+ \edef\l@stl@bel{\@gobbletwo#1}%
+ \qu@stion{#2}%
+ \def\reserved@a{#1}%
+ \ifx\reserved@a\@empty
+ \PackageWarning{faq}{Question "#2" has no label}%
+ \else
+ \Qlabel{#1}%
+ \fi
+}
+\newcommand\qu@stion{\@startsection{question}%
+ \thr@@
+ \z@
+ {-1.25ex \@plus -1ex \@minus -.2ex}%
+ {0.75ex \@plus .2ex}%
+ {%
+ \normalfont
+ \normalsize
+ \bfseries
+ \raggedright
+ \protected@edef\@svsec{\protect\annot@set\@svsec}%
+ }%
+}
+\newcommand*\questionmark[1]{}
+\newcommand*\l@question{\@dottedtocline{2}{2.0em}{2.3em}}
+
+%
+% \paragraph: has appeared in a submission, so let's give it a faq
+% definition...
+\renewcommand\paragraph{\@startsection{paragraph}%
+ 4%
+ \z@
+ {1.25ex \@plus 1ex \@minus.2ex}%
+ {-1em}
+ {%
+ \normalfont
+ \normalsize
+ \bfseries
+ }}
+%
+% alias questions make a little perl script to set up a hash array
+% that takes one from old question to current one.
+\newcount\aliasfile
+\aliasfile=-1
+\newcommand\AliasQuestion[1]{%
+ \ifnum\aliasfile<0
+ \newwrite\aliasfile
+ \immediate\openout\aliasfile aliasquestion.list
+ \immediate\write\aliasfile {\faq@percent old_label_to_new = (}%)
+ \AtEndDocument{%(
+ \immediate\write\aliasfile{);}%
+ \immediate\write\aliasfile{1;}%
+ }%
+ \else
+ \immediate\write\aliasfile {,}% finish previous line
+ \fi
+ \immediate\write\aliasfile{"\@gobbletwo#1","\l@stl@bel"}%
+}
+{%
+ \catcode`\!=\the\catcode`\%%
+ \catcode`\%=\the\catcode`\+!
+ \gdef\faq@percent{%}!
+}
+%
+\long\def\@ReturnAfterFi#1\fi{\fi#1}%
+\ifpdf
+ \newcommand*\toclevel@question{3}%
+ \let\orig@section\section
+ \let\orig@subsection\subsection
+ \let\orig@subsubsection\subsubsection
+ \def\section{%
+ \def\toclevel@question{2}%
+ \orig@section
+ }
+ \def\subsection{%
+ \def\toclevel@question{3}%
+ \orig@subsection
+ }
+ \def\subsubsection{%
+ \def\toclevel@question{4}%
+ \orig@subsubsection
+ }
+ %
+ \def\annot@set{%
+ \ifx\annot@label\@empty
+ \else
+ \begingroup
+ \def\x##1-##2\@nil{\def\annot@label{##2}}%
+ \expandafter\x\annot@label\@nil
+ \def\x##1_##2\@nil{%
+ ##1%
+ \ifx\\##2\\%
+ \else
+ \noexpand\textunderscore
+ \@ReturnAfterFi{\x##2\@nil}%
+ \fi
+ }%
+ \edef\annot@label{\expandafter\x\annot@label_\@nil}%
+ \edef\NL{\string\n}%
+ \pdfstringdef\annot@text{%
+ http://www.tex.ac.uk/cgi-bin/texfaq2html?label=\annot@label\NL
+ \annot@question
+ }%
+ \rlap{%
+ \kern-10mm\relax
+ \settoheight{\dimen@}{X}%
+ \pdfannotlink
+ width 200mm
+ height \dimen@
+ depth 25mm
+ user {%
+ /Subtype/Text%
+ /T(Question \thequestion: \annot@label)%
+ /Contents(\annot@text)%
+ }%
+ \pdfendlink
+ }%
+ \endgroup
+ \fi
+ }%
+ \@ifundefined{pdfannotlink}{%
+ \let\pdfannotlink\pdfstartlink
+ }{}
+\else
+ \let\annot@set\relax
+\fi
+%
+% \QuestionLabel starts out as a null command (so that inputting a
+% .lab file at s.o.d has no effect), but it's then reset to
+% \@questionLabel in case the file is going to be read again later
+% (e.g., as an appendix), but we don't have a sensible definition of
+% _that_ yet, either...
+\newcommand{\labellist}{%
+ \newcommand{\QuestionLabel}[3]{}%
+% \@starttoc{lab}%
+ \let\QuestionLabel\@questionLabel
+}
+\newcommand{\@questionLabel}[3]{}
+%
+% \afterquestion is used when the \Question command itself has to be
+% inside a group for some reason (e.g., to have it in \boldmath)
+\newcommand\afterquestion{%
+ \global\toks@\expandafter{\the\everypar}%
+ \edef\@tempa{%
+ \noexpand\@afterindentfalse
+ \noexpand\everypar{\the\toks@}%
+ }%
+ \expandafter\endgroup\@tempa
+}
+%
+% \cs{Destination} is used immediately after a \cs{Question} command
+% in the various add-* files to signify where the question is supposed
+% to go
+\newcommand\Destination[1]{\begin{center}
+ \itshape#1
+ \end{center}
+}
+%
+% we `number' our sections alphabetically
+\renewcommand{\thesection}{\Alph{section}}
+%
+% keywords for questions. these get translated into comments in web
+% versions
+\newcommand\keywords{\begingroup
+ \@makeother\\%
+ \@makeother\^%
+ \@makeother\_%
+ \@makeother\%%
+ \expandafter\endgroup
+ \@gobble
+}
+%
+% date question last edited
+\def\LastEdit{\@ifstar\@gobble\@gobble}
+%
+% where the info came from
+\newcommand\LeadFrom[3]{}
+%
+% \Qlabel and \Qref: define and refer to labels
+\ifpdf
+% hyperref version of \label doesn't get set until begin document
+ \AtBeginDocument{\let\Qlabel\label}
+\else
+ \let\Qlabel\label
+\fi
+% \Qref[<text before q no>]{<hyper anchor text>}{<question label>}
+% (default for arg 1 is "see question"; a conventional null argument
+% here is \htmlonly, which gobbles a space)
+% produces:
+% <text before q no> <question number>
+%
+% \Qref*... produces
+% <hyper anchor text> (<text before q no> <question number>)
+%
+% the code is supposed to deal correctly with things surrounded by
+% double quotes (i.e., ``\Qref*....'' closes the quotes before putting
+% the question number in parentheses.
+%
+% this stuff should be reconsidered to produce more sensible behaviour
+% when running pdftex
+%
+\ifpdf
+%
+% if we're using pdflatex, we let hyperref take the strain, and make
+% \Qrefs look like the html versions
+\DeclareRobustCommand\Qref{\@ifstar\@QrefH\@QrefH}
+\newcommand\@QrefH[3][\relax]{%
+ \expandafter\let\expandafter\reserved@a\csname r@#3\endcsname
+ \ifx\reserved@a\relax
+ \protect\G@refundefinedtrue
+ \nfss@text{\reset@font\bfseries ??}%
+ \@latex@warning{%
+ Reference `#3' on page \thepage \space undefined%
+ }%
+ \else
+% \protected@edef\reserved@b{\reserved@a}%
+ \def\reserved@c##1##2##3##4##5{%
+ \def\reserved@d{{##1}{##2}{#2}{##4}{##5}}%
+ }%
+ \expandafter\reserved@c\reserved@a
+ \expandafter\Hy@setref@link\reserved@d\@empty\@empty\@nil\@thirdoffive
+ \fi
+}
+\else
+%
+% not using pdflatex: we've a ghastly job on our hands...
+\newcommand\Qref{\@ifstar\@QrefA\@QrefB}
+\newcommand\@QrefA[3][see question]{#2%
+ \def\@QrefAai{#1}%
+ \def\@QrefAaiii{#3}%
+ \afterassignment\@QrefAl\let\@tempa= }
+\newcommand\@QrefAl{% \@tempa is char after original \Qref's args
+ % \@QrefAai/\@QrefAaiii are arguments of \Qref
+ \ifx\@tempa'%
+ \def\@next{%
+ \afterassignment\@QrefAQ
+ \let\@tempa= %
+ }%
+ \expandafter\@next
+ \else
+ { (\@QrefAai~\ref{\@QrefAaiii})\@tempa}%
+ \fi
+}
+\newcommand\@QrefAQ{% \@tempa is second char after original \Qref's
+ % arguments (first was a quote character)
+ \ifx\@tempa'%
+ '' (\@QrefAai~\ref{\@QrefAaiii})%
+ \else
+ { (\@QrefAai~\ref{\@QrefAaiii})'\@tempa}%
+ \fi
+}
+%% \@ifnextchar'{\@QrefAQb{#1}{#2}}{ (#1~\ref{#2})'}}
+%% \newcommand\@QrefAQb[3]{% param 3 quote again
+%% '' (#1~\ref{#2})}
+\newcommand\@QrefB[3][see question]{#1~\ref{#3}}
+%
+\fi
+%
+% from doc package, then hacked about by yours truly
+\DeclareRobustCommand\csx[1]{{\FAQverbFamily\char`\\#1}}
+%\def\cs|#1|{\csx{#1}}
+%
+% fancier versions of the above
+%
+% \cmdinvoke\cs<argument sequence>
+% \cs typeset as above
+% <argument sequence> may consist of optional or mandatory arguments;
+%
+% the `arguments' are simply typesett \texttt, as yet -- if something
+% fancier is needed, there's a bunch of code needs rewriting here...
+\DeclareRobustCommand\cmdinvoke{\@ifstar
+ {\let\@tempa\emph\@scmdinvoke}%
+ {\let\@tempa\relax\@scmdinvoke}%
+}
+\def\@scmdinvoke#1{\texttt{\symbol{92}#1}%
+ \futurelet\@let@token\@cmdinvoke
+}
+\def\@cmdinvoke{\ifx\@let@token\bgroup
+ \let\@tempb\@cmdinvoke@lbrace
+ \else
+ \ifx\@let@token[% ]
+ \let\@tempb\@cmdinvoke@lbrack
+ \else
+ \ifx\@let@token(% )
+ \let\@tempb\@cmdinvoke@lparen
+ \else
+ \let\@tempb\@empty
+ \fi
+ \fi
+ \fi
+ \@tempb
+}
+\def\@cmdinvoke@lbrace#1{\penalty0\hskip0pt\relax
+ \texttt{\symbol{123}\@tempa{#1}\symbol{125}}%
+ \futurelet\@let@token\@cmdinvoke
+}
+\def\@cmdinvoke@lbrack[#1]{\penalty-150\hskip0pt\relax
+ \texttt{[\@tempa{#1}]}%
+ \futurelet\@let@token\@cmdinvoke
+}
+\def\@cmdinvoke@lparen(#1){\penalty-150\hskip0pt\relax
+ \texttt{(\@tempa{#1})}%
+ \futurelet\@let@token\@cmdinvoke
+}
+%
+% for writing \cmdinvoke out by hand (in titles)
+\def\marg#1{\texttt{\symbol{123}{#1}\symbol{125}}}
+
+% that stuff doesn't work in pdf thumbnails. herewith an alternative
+% for label ps@empty:
+\DeclareRobustCommand\psatempty{%
+ \texttt{\string\pagestyle\string{empty\string}}%
+}
+
+% minuscule bit more structured markup...
+\newcommand\environment[1]{\texttt{#1}}
+\newcommand\pkgoption[1]{\texttt{#1}}
+\newcommand\extension[1]{\texttt{.#1}}
+\newcommand\ltxcounter[1]{\texttt{#1}}
+\newcommand\FontFormat[1]{\texttt{#1}}
+
+% deal with tabular: special defs to make texfaq2html doable
+\let\tbamp&
+\def\tbeol{\\}
+\def\tbhline{\midrule}
+
+%
+% symbols for the braces (which can confuse perl sumfink rotten
+\def\obracesymbol{\symbol{123}}
+\def\cbracesymbol{\symbol{125}}
+
+%
+% for quoting verbatim environments in examples:
+\begingroup \catcode `|=0 \catcode `[= 1
+\catcode`]=2 \catcode `\{=12 \catcode `\}=12
+\catcode`\\=12
+|gdef|@quotexverbatim#1\end{quoteverbatim}[#1|end[quoteverbatim]]
+|endgroup
+\def\quoteverbatim{\@verbatim \frenchspacing\@vobeyspaces \@quotexverbatim}
+\let\endquoteverbatim\endverbatim
+
+%
+% for comments during maintenance
+%\def\Q#1{\footnote{{\ttfamily QUERY: #1}}}
+%\def\Q#1{\marginpar{{\ttfamily QUERY: #1}}}
+%
+% Checking structure (null for now)
+\newcommand\checked[2]{}
+%
+% for Alan's benefit
+\newbox\@footnoteenvbox
+\newenvironment{footnoteenv}
+ {\begin{lrbox}\@footnoteenvbox\reset@font\footnotesize\ignorespaces}
+ {\end{lrbox}%
+ \footnote{\unhbox\@footnoteenvbox}}
+%
+% end of package
+\endinput
diff --git a/obsolete/help/texfaq/faqfont.cfg b/obsolete/help/texfaq/faqfont.cfg
new file mode 100644
index 0000000000..ae36c3730e
--- /dev/null
+++ b/obsolete/help/texfaq/faqfont.cfg
@@ -0,0 +1,4 @@
+%
+% null FAQ configuration file: leaves LaTeX default use of cm* fonts
+\typeout{FAQ -- Typesetting using Computer Modern fonts}
+\@ifundefined{Dings}{\let\Dings\relax}{}
diff --git a/obsolete/help/texfaq/faqfont.cfg.cmfonts b/obsolete/help/texfaq/faqfont.cfg.cmfonts
new file mode 100644
index 0000000000..4f5f663bfa
--- /dev/null
+++ b/obsolete/help/texfaq/faqfont.cfg.cmfonts
@@ -0,0 +1,6 @@
+%
+% null FAQ configuration file: leaves LaTeX default use of cm* fonts
+\typeout{FAQ -- Typesetting using Computer Modern fonts}
+\@ifundefined{Dings}{\let\Dings\relax}{}
+\boldmathavailtrue
+
diff --git a/obsolete/help/texfaq/faqfont.cfg.lmfonts b/obsolete/help/texfaq/faqfont.cfg.lmfonts
new file mode 100644
index 0000000000..707e6c6cf8
--- /dev/null
+++ b/obsolete/help/texfaq/faqfont.cfg.lmfonts
@@ -0,0 +1,19 @@
+% version to use latin modern, and not luximono or trying to do dinglines
+ \RequirePackage[T1]{fontenc}%
+ \RequirePackage{lmodern}% for sans fonts
+ \RequirePackage{textcomp}%
+ \AtBeginDocument{%
+ \let\save@textcurrency\textcurrency
+ \def\textcurrency{%
+ {%
+ \fontfamily{lmr}\selectfont
+ \save@textcurrency
+ }%
+ }%
+ }
+ \boldmathavailfalse
+ \DeclareRobustCommand{\$}{\char`\$}% otherwise tries to load tctt....
+ \let\Dings\relax
+ \DeclareRobustCommand\acro[1]{#1\@{}}
+
+
diff --git a/obsolete/help/texfaq/faqfont.cfg.mbvj b/obsolete/help/texfaq/faqfont.cfg.mbvj
new file mode 100644
index 0000000000..cbf128b80c
--- /dev/null
+++ b/obsolete/help/texfaq/faqfont.cfg.mbvj
@@ -0,0 +1,11 @@
+\renewcommand\rmdefault{mbvj}
+\renewcommand{\sfdefault}{lmss}
+\renewcommand{\ttdefault}{lmtt}
+\usepackage{textcomp}
+\usepackage[T1]{fontenc}
+\DeclareRobustCommand{\$}{\char`\$}
+\@ifundefined{Dings}{\RequirePackage{pifont}%
+ \def\Dings{\nopagebreak{\footnotesize
+ \dingline{167}}}}{}%
+\boldmathavailfalse
+\def\acro##1{##1\@{}}
diff --git a/obsolete/help/texfaq/faqfont.cfg.ugm b/obsolete/help/texfaq/faqfont.cfg.ugm
new file mode 100644
index 0000000000..04f3133b3c
--- /dev/null
+++ b/obsolete/help/texfaq/faqfont.cfg.ugm
@@ -0,0 +1,12 @@
+\usepackage{textcomp}
+\usepackage[T1]{fontenc}
+\RequirePackage{lmodern} % for sans text (one instance only?)
+\renewcommand\rmdefault{ugm}
+\renewcommand\bfdefault{b}
+\RequirePackage{eulervm}
+\RequirePackage[scaled=0.85]{luximono}
+\@ifundefined{Dings}{\RequirePackage{pifont}%
+ \def\Dings{\nopagebreak{\footnotesize
+ \dingline{167}}}}{}%
+\boldmathavailtrue % is it?
+\def\acro#1{#1\@{}}
diff --git a/obsolete/help/texfaq/filectan.tex b/obsolete/help/texfaq/filectan.tex
new file mode 100644
index 0000000000..326b455cbc
--- /dev/null
+++ b/obsolete/help/texfaq/filectan.tex
@@ -0,0 +1,107 @@
+% $Id: filectan.tex,v 1.143 2012/12/07 19:34:33 rf10 Exp rf10 $
+%
+% protect ourself against being read twice
+\csname readCTANfiles\endcsname
+\let\readCTANfiles\endinput
+%
+% interesting/useful individual files to be found on CTAN
+\CTANfile{CTAN-sites}{CTAN.sites}
+\CTANfile{CTAN-uploads}{README.uploads}% yes, it really is in the root
+\CTANfile{Excalibur}{systems/mac/support/excalibur/Excalibur-4.0.2.sit.hqx}[excalibur]
+\CTANfile{expl3-doc}{macros/latex/contrib/l3kernel/expl3.pdf}[l3kernel]
+\CTANfile{f-byname}{FILES.byname}
+\CTANfile{f-last7}{FILES.last07days}
+\CTANfile{interface3-doc}{macros/latex/contrib/l3kernel/interface3.pdf}[l3kernel]
+\CTANfile{LitProg-FAQ}{help/comp.programming.literate_FAQ}
+\CTANfile{OpenVMSTeX}{systems/OpenVMS/TEX97_CTAN.ZIP}
+\CTANfile{T1instguide}{info/Type1fonts/fontinstallationguide/fontinstallationguide.pdf}
+\CTANfile{TeX-FAQ}{obsolete/help/TeX,_LaTeX,_etc.:_Frequently_Asked_Questions_with_Answers}
+\CTANfile{abstract-bst}{biblio/bibtex/utils/bibtools/abstract.bst}
+\CTANfile{backgrnd}{macros/generic/misc/backgrnd.tex}[backgrnd]
+\CTANfile{bbl2html}{biblio/bibtex/utils/misc/bbl2html.awk}[bbl2html]
+\CTANfile{beginlatex-pdf}{info/beginlatex/beginlatex-3.6.pdf}[beginlatex]
+\CTANfile{bibtex-faq}{biblio/bibtex/contrib/doc/btxFAQ.pdf}
+\CTANfile{bidstobibtex}{biblio/bibtex/utils/bids/bids.to.bibtex}[bidstobibtex]
+\CTANfile{btxmactex}{macros/eplain/tex/btxmac.tex}[eplain]
+\CTANfile{catalogue}{help/Catalogue/catalogue.html}
+\CTANfile{cat-licences}{help/Catalogue/licenses.html}
+\CTANfile{clsguide}{macros/latex/doc/clsguide.pdf}[clsguide]
+\CTANfile{compactbib}{macros/latex/contrib/compactbib/compactbib.sty}[compactbib]
+%\CTANfile{compan-ctan}{info/companion.ctan}
+\CTANfile{context-tmf}{macros/context/current/cont-tmf.zip}[context]
+\CTANfile{dvitype}{systems/knuth/dist/texware/dvitype.web}[dvitype]
+\CTANfile{edmetrics}{systems/mac/textures/utilities/EdMetrics.sea.hqx}[edmetrics]
+\CTANfile{epsf}{macros/generic/epsf/epsf.tex}[epsf]
+\CTANfile{figsinlatex}{obsolete/info/figsinltx.ps}
+\CTANfile{finplain}{biblio/bibtex/contrib/misc/finplain.bst}
+\CTANfile{fix-cm}{macros/latex/unpacked/fix-cm.sty}[fix-cm]
+\CTANfile{fntguide.pdf}{macros/latex/doc/fntguide.pdf}[fntguide]
+\CTANfile{fontdef}{macros/latex/base/fontdef.dtx}
+\CTANfile{fontmath}{macros/latex/unpacked/fontmath.ltx}
+\CTANfile{gentle}{info/gentle/gentle.pdf}[gentle]
+\CTANfile{gkpmac}{systems/knuth/local/lib/gkpmac.tex}[gkpmac]
+\CTANfile{knuth-letter}{systems/knuth/local/lib/letter.tex}
+\CTANfile{knuth-tds}{macros/latex/contrib/latex-tds/knuth.tds.zip}
+\CTANfile{latex209-base}{obsolete/macros/latex209/distribs/latex209.tar.gz}[latex209]
+\CTANfile{latex-classes}{macros/latex/base/classes.dtx}
+\CTANfile{latex-source}{macros/latex/base/source2e.tex}
+\CTANfile{latexcount}{support/latexcount/latexcount.pl}[latexcount]
+\CTANfile{latexcheat}{info/latexcheat/latexcheat/latexsheet.pdf}[latexcheat]
+\CTANfile{letterspacing}{macros/generic/misc/letterspacing.tex}[letterspacing]
+\CTANfile{ltablex}{macros/latex/contrib/ltablex/ltablex.sty}[ltablex]
+\CTANfile{ltxguide}{macros/latex/base/ltxguide.cls}
+\CTANfile{ltxtable}{macros/latex/contrib/carlisle/ltxtable.tex}[ltxtable]
+\CTANfile{lw35nfss-zip}{macros/latex/required/psnfss/lw35nfss.zip}[lw35nfss]
+\CTANfile{macmakeindex}{systems/mac/macmakeindex2.12.sea.hqx}
+\CTANfile{mathscript}{info/symbols/math/scriptfonts.pdf}
+\CTANfile{mathsurvey.html}{info/Free_Math_Font_Survey/en/survey.html}
+\CTANfile{mathsurvey.pdf}{info/Free_Math_Font_Survey/en/survey.pdf}
+\CTANfile{memoir-man}{macros/latex/contrib/memoir/memman.pdf}
+\CTANfile{metafp-pdf}{info/metafont/metafp/metafp.pdf}[metafp]
+\CTANfile{mf-beginners}{info/metafont/beginners/metafont-for-beginners.pdf}[metafont-beginners]
+\CTANfile{mf-list}{info/metafont-list}
+\CTANfile{miktex-portable}{systems/win32/miktex/setup/miktex-portable.exe}
+\CTANfile{miktex-setup}{systems/win32/miktex/setup/setup.exe}[miktex]
+\CTANfile{mil}{info/mil/mil.pdf}
+\CTANfile{mil-short}{info/Math_into_LaTeX-4/Short_Course.pdf}[math-into-latex-4]
+\CTANfile{modes-file}{fonts/modes/modes.mf}[modes]
+\CTANfile{mtw}{info/makingtexwork/mtw-1.0.1-html.tar.gz}
+\CTANfile{multind}{macros/latex209/contrib/misc/multind.sty}[multind]
+\CTANfile{nextpage}{macros/latex/contrib/misc/nextpage.sty}[nextpage]
+\CTANfile{noTeX}{biblio/bibtex/utils/misc/noTeX.bst}[notex]
+\CTANfile{numline}{obsolete/macros/latex/contrib/numline/numline.sty}[numline]
+\CTANfile{patch}{macros/generic/misc/patch.doc}[patch]
+\CTANfile{picins-summary}{macros/latex209/contrib/picins/picins.txt}
+\CTANfile{pk300}{fonts/cm/pk/pk300.zip}
+\CTANfile{pk300w}{fonts/cm/pk/pk300w.zip}
+\CTANfile{QED}{macros/generic/proofs/taylor/QED.sty}[qed]
+\CTANfile{removefr}{macros/latex/contrib/fragments/removefr.tex}[removefr]
+\CTANfile{repeat}{macros/generic/eijkhout/repeat.tex}[repeat]
+\CTANfile{resume}{obsolete/macros/latex209/contrib/resume/resume.sty}
+\CTANfile{savesym}{macros/latex/contrib/savesym/savesym.sty}[savesym]
+\CTANfile{setspace}{macros/latex/contrib/setspace/setspace.sty}[setspace]
+\CTANfile{simpl-latex}{info/simplified-latex/simplified-intro.pdf}[simplified-latex]
+\CTANfile{sober}{macros/latex209/contrib/misc/sober.sty}[sober]
+\CTANfile{tex2bib}{biblio/bibtex/utils/tex2bib/tex2bib}[tex2bib]
+\CTANfile{tex2bib-doc}{biblio/bibtex/utils/tex2bib/README}
+\CTANfile{tex4ht}{obsolete/support/TeX4ht/tex4ht-all.zip}[tex4ht]
+\CTANfile{texlive-unix}{systems/texlive/tlnet/install-tl-unx.tar.gz}
+\CTANfile{texlive-windows}{systems/texlive/tlnet/install-tl.zip}
+\CTANfile{texnames}{info/biblio/texnames.sty}
+\CTANfile{texsis-index}{macros/texsis/index/index.tex}
+\CTANfile{topcapt}{macros/latex/contrib/misc/topcapt.sty}[topcapt]
+\CTANfile{tracking}{macros/latex/contrib/tracking/tracking.sty}[tracking]
+\CTANfile{ttb-pdf}{info/bibtex/tamethebeast/ttb_en.pdf}[tamethebeast]
+\CTANfile{type1ec}{fonts/ps-type1/cm-super/type1ec.sty}[type1ec]
+\CTANfile{ukhyph}{language/hyphenation/ukhyphen.tex}
+\CTANfile{upquote}{macros/latex/contrib/upquote/upquote.sty}[upquote]
+\CTANfile{faq-a4}{help/uk-tex-faq/newfaq.pdf}
+\CTANfile{faq-letter}{help/uk-tex-faq/letterfaq.pdf}
+\CTANfile{versions}{macros/latex/contrib/versions/versions.sty}[versions]
+\CTANfile{vf-howto}{info/virtualfontshowto/virtualfontshowto.txt}[vf-howto]
+\CTANfile{vf-knuth}{info/knuth/virtual-fonts}[vf-knuth]
+\CTANfile{visualFAQ}{info/visualFAQ/visualFAQ.pdf}[visualfaq]
+\CTANfile{voss-mathmode}{info/math/voss/mathmode/Mathmode.pdf}
+\CTANfile{wujastyk-txh}{digests/texhax/txh/wujastyk.txh}
+\CTANfile{xampl-bib}{biblio/bibtex/base/xampl.bib}
+\CTANfile{xtexcad}{graphics/xtexcad/xtexcad-2.4.1.tar.gz}
diff --git a/obsolete/help/texfaq/gather-faqbody.tex b/obsolete/help/texfaq/gather-faqbody.tex
new file mode 100644
index 0000000000..97f7b0cd69
--- /dev/null
+++ b/obsolete/help/texfaq/gather-faqbody.tex
@@ -0,0 +1,57 @@
+\def\faqfileversion{3.28} \def\faqfiledate{2014-06-10}
+%
+% The above line defines the file version and date, and must remain
+% the first line with any `assignment' in the file, or things will
+% blow up in a stupid fashion
+%
+% get lists of CTAN labels
+%
+% configuration for the lists, if we're going to need to generate urls
+% for the files
+\InputIfFileExists{archive.cfg}{}{}
+%
+% ... directories
+\input{dirctan}
+%
+% ... files
+\input{filectan}
+
+% facilitate auto-processing of this stuff; this line is clunkily
+% detected (and ignored) in the build-faqbody script
+%\let\faqinput\input
+\def\faqinput#1{%\message{*** inputting #1; group level \the\currentgrouplevel}
+ \input{#1}%
+ %\message{*** out of #1; group level \the\currentgrouplevel}
+}
+
+% the stuff to print
+\faqinput{faq-intro} % introduction
+\faqinput{faq-backgrnd} % background
+\faqinput{faq-docs} % docs
+\faqinput{faq-bits+pieces} % bits and pieces
+\faqinput{faq-getit} % getting software
+\faqinput{faq-texsys} % TeX systems
+\faqinput{faq-dvi} % DVI drivers and previewers
+\faqinput{faq-support} % support stuff
+\faqinput{faq-litprog} % programming for literates
+\faqinput{faq-fmt-conv} % format conversions
+\faqinput{faq-install} % installation and so on
+\faqinput{faq-fonts} % fonts and what to do
+\faqinput{faq-hyp+pdf} % hyper-foodle and pdf
+\faqinput{faq-graphics} % graphics
+\faqinput{faq-biblio} % bib stuff
+\faqinput{faq-adj-types} % adjusting typesetting
+\faqinput{faq-lab-ref} % labels and references
+\faqinput{faq-how-do-i} % how to do things
+\faqinput{faq-symbols} % symbols, their natural history and use
+\faqinput{faq-mac-prog} % macro programming
+\faqinput{faq-t-g-wr} % things going wrong
+\faqinput{faq-wdidt} % why does it do that
+%*****************************************quote environments up to here
+\faqinput{faq-jot-err} % joy (hem hem) of tex errors
+\faqinput{faq-projects} % current projects
+%
+% This is the last section, and is to remain the last section...
+\faqinput{faq-the-end} % wrapping it all up
+
+% \end{document} is in calling file (e.g., newfaq.tex)
diff --git a/obsolete/help/texfaq/install-CTAN b/obsolete/help/texfaq/install-CTAN
new file mode 100644
index 0000000000..162a568631
--- /dev/null
+++ b/obsolete/help/texfaq/install-CTAN
@@ -0,0 +1,48 @@
+# this file is auto-generated; edit mk-makefile, not this
+
+for f in \
+ ChangeLog \
+ Makefile \
+ README \
+ dirctan.tex \
+ faq.cls \
+ faq.sty \
+ filectan.tex \
+ gather-faqbody.tex \
+ letterfaq.tex \
+ archive.cfg \
+ markup-syntax \
+ newfaq.tex \
+ letterfaq.pdf \
+ newfaq.pdf \
+ faqfont.cfg.cmfonts \
+ FAQ-html.tar.gz \
+ CHANGES-3.24 \
+ faq-adj-types.tex \
+ faq-backgrnd.tex \
+ faq-biblio.tex \
+ faq-bits+pieces.tex \
+ faq-docs.tex \
+ faq-dvi.tex \
+ faq-fmt-conv.tex \
+ faq-fonts.tex \
+ faq-getit.tex \
+ faq-graphics.tex \
+ faq-how-do-i.tex \
+ faq-hyp+pdf.tex \
+ faq-install.tex \
+ faq-intro.tex \
+ faq-jot-err.tex \
+ faq-lab-ref.tex \
+ faq-litprog.tex \
+ faq-mac-prog.tex \
+ faq-projects.tex \
+ faq-support.tex \
+ faq-symbols.tex \
+ faq-t-g-wr.tex \
+ faq-texsys.tex \
+ faq-the-end.tex \
+ faq-wdidt.tex ; do
+if [ -f /anfs/ctan/tex-archive/help/uk-tex-faq/$f ]; then
+ ctan_install -replace -silent -nozip $f help/uk-tex-faq/$f ; else
+ ctan_install -new -silent -nozip $f help/uk-tex-faq/$f ; fi; done
diff --git a/obsolete/help/texfaq/letterfaq.pdf b/obsolete/help/texfaq/letterfaq.pdf
new file mode 100644
index 0000000000..5d9d731974
--- /dev/null
+++ b/obsolete/help/texfaq/letterfaq.pdf
Binary files differ
diff --git a/obsolete/help/texfaq/letterfaq.tex b/obsolete/help/texfaq/letterfaq.tex
new file mode 100644
index 0000000000..dd0b4427d7
--- /dev/null
+++ b/obsolete/help/texfaq/letterfaq.tex
@@ -0,0 +1,64 @@
+% This is the UK TeX FAQ
+%
+\documentclass{faq}
+%
+\setcounter{errorcontextlines}{999}
+%
+% read the first two definitions of faqbody.tex for the file version
+% and date
+\afterassignment\endinput\input gather-faqbody
+%
+\typeout{The UK TeX FAQ, v\faqfileversion, date \faqfiledate}
+%
+% let's not be too fussy while we're developing...
+\hfuzz10pt
+\emergencystretch10pt
+%
+\begin{document}
+\title{The \acro{UK} \TeX{} \acro{FAQ}\\
+ Your \ifpdf\ref*{lastquestion}\else\protect\ref{lastquestion}\fi
+ \ Questions Answered\\
+ version \faqfileversion, date \faqfiledate}
+\author{}
+\maketitle
+
+\centerline{\textsc{Note}}
+
+\begin{quotation}\small
+ This document is an updated and extended version of the \acro{FAQ} article
+ that was published as the December 1994 and 1995, and March 1999
+ editions of the \acro{UK}\,\acro{TUG} magazine \BV{} (which weren't
+ formatted like this).
+
+ The article is also available via the World Wide Web.
+\end{quotation}
+
+\ifsinglecolumn
+ \tableofcontents
+\else
+ \begin{multicols}{2}
+ \tableofcontents
+ \end{multicols}
+\fi
+
+\Dings
+
+% label list for later processing
+\labellist
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% load the CTAN references if necessary
+\input{dirctan}
+\input{filectan}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifsinglecolumn
+ \input{gather-faqbody}
+\else
+ \begin{multicols}{2}
+ \input{gather-faqbody}
+ \end{multicols}
+\fi
+
+\typeout{*** That makes \thequestion\space questions ***}
+\end{document}
diff --git a/obsolete/help/texfaq/locations.mk b/obsolete/help/texfaq/locations.mk
new file mode 100644
index 0000000000..49f6146e0c
--- /dev/null
+++ b/obsolete/help/texfaq/locations.mk
@@ -0,0 +1,17 @@
+# the locations of files that are targets of the Makefile rules
+
+# on web server
+WEB = /anfs/www/VH-tex/faq-source
+WEB_BETA = /anfs/www/VH-tex/faq-source/beta
+CGI_BIN = /anfs/www/VH-tex/cgi-bin
+
+# on archive machine
+HOME_DIR = /home/rf/tex/faq
+CTAN_ROOT = /anfs/ctan/tex-archive
+
+# on vlan 100 host
+HTMLDIREL = html
+HTMLDIR = $(HOME_DIR)/$(HTMLDIREL)
+
+HTMLDIR_GAMMA = $(HOME_DIR)/html_gamma
+GAMMADIR = $(HOME_DIR)/gamma
diff --git a/obsolete/help/texfaq/markup-syntax b/obsolete/help/texfaq/markup-syntax
new file mode 100644
index 0000000000..409aff99ca
--- /dev/null
+++ b/obsolete/help/texfaq/markup-syntax
@@ -0,0 +1,237 @@
+Writing text for the TeX FAQ -- the requirements
+
+There are some ground rules for text for the FAQ which need to be
+adhered to. Some of the rules relate to the perl program that's used
+to create an HTML file of the FAQ from the TeX source, or to the
+nature of the macros that Sebastian, Alan and I have written; others
+relate to the way in which I try to manage change. Please remember
+that we're attempting distributed authoring of a relatively small
+document over a tight timescale; while I _can_ in principle work into
+the night to put things right after a submission, my employers tend to
+prefer me awake during the working day...
+
+Rules for presentation of text
+------------------------------
+
+1. Don't line wrap in macro calls. Ignore the fact that this can mean
+ very long lines. This restriction applies equally to the
+ []-surrounded optional arguments of macros (e.g., \item).
+
+2. Always put {} after `name' macros (such as \TeX{}). Do this
+ - even if you prefer \TeX\ to ensure the name's delimited
+ - even if the name's immediately followed by punctuation
+
+3. Don't use \verb or \shortvrb -- find alternatives in other
+ constructions like \csx, \cmdinvoke, etc.
+
+Rules for managing the text
+---------------------------
+
+The first version of the FAQ was developed in a distributed fashion by
+the members of the committee of UKTUG. Just now, it's under my (RF's)
+sole control; if there were a clamour for other people to contribute,
+I guess the thing to do _today_ would be to create a sourceforge
+project. (Sourceforge, or anything like it, wasn't even a gleam in
+anyone's eye back in 1994 when we were first discussing the FAQ.)
+
+Source of the text
+------------------
+
+The text currently resides in
+
+newfaq.tex The body of the text
+filectan.tex Declarations of the locations of individual files on
+ CTAN archives
+dirctan.tex Declarations of the directories on CTAN archives
+
+faq.sty The main package
+
+This pre-production version of the text is printed (by default) in
+Adobe Times Roman, etc. An alternative font may by used by setting
+yourself up with a file faqfont.cfg that contains the commands that
+should be used to define what fonts are needed.
+
+A faqfont.cfg which does nothing, and hence leaves LaTeX with its
+default of cm* fonts, is available with the text; if you *want* the
+faq printed in Times Roman, you should not transfer the file (or you
+should delete it once you *have* transferred it).
+
+All these files are to be found in the CTAN distribution of the FAQ,
+in usergrps/uktug/faq
+
+Markup commands
+---------------
+
+The faq is written in LaTeX. Commands to use are:
+
+\CTANdirectory{tag}{directory-path}
+\CTANfile{tag}{file-path}
+
+ These are used in dirctan.tex and filectan.tex, respectively. The
+ <tag> is used in the \CTANref command, and the <*-path> is is what
+ gets typeset in respect of a \CTANref (and what becomes the anchor
+ of an html link to retrieve the referenced thing).
+
+\CTANdirectory*{tag}{directory-path}
+
+ As \CTANdirectory, but appears in HTML as "browse directory" only
+
+\CTANref{tag} (and the ctanrefs environment)
+
+ make reference to a <tag> defined by a \CTANfile or \CTANdirectory
+ command; will usually appear in a ctanrefs environment at the end of
+ an answer. Refer to the files with markup such as \Package,
+ \Class or \ProgName in the body of the question, and then say:
+ \begin{ctanrefs}
+ \item[blah.sty]\CTANref{blah}
+ \end{ctanrefs}
+
+\Question[label]{question-title}
+
+ Set the title of a question, and define a label for it (in fact, an
+ unusual sort of subsection command). The [label] is (now)
+ mandatory, and must be prefixed by "Q-" (as in
+ \Question[Q-newans]{Submitting new material for the FAQ}).
+
+\Qref[intro-text]{anchor-text}{label}
+
+ Refer to a question. The <intro-text> is set before the reference,
+ and is "see question" by default. The <anchor-text> is used in
+ hyper-enabled output, as the anchor for jumping to the labelled
+ question. The <label> is defined somewhere in the document as a
+ \Question command's (nominally) optional argument.
+
+\Qref*{anchor-text}{label}
+
+ Refer to a question. In hyper-enabled output, results are the same
+ as for \Qref; in DVI output, produces
+ anchor-text (see question <label>)
+ special care being taken with surrounding quotes.
+
+\TUGboat{} <vol>(<number>)
+
+ TUGboat reference (we have surprisingly many). Really does have
+ that syntax \TUGboat{} 16(3), though as far as the HTML translator
+ is concerned, the command ends at \TUGboat{} so it doesn't matter if
+ it gets split across lines.
+
+Environment booklist
+
+ Is used to set lists of books; it uses \item in the same way that
+ the description environment does, but sets the label thus defined in
+ normal weight italic text from the current family
+
+\htmlignore ... \endhtmlignore
+
+ Brackets around bits of text that are to be ignored by the html
+ generator (deprecated: use environment typesetversion instead
+
+Environment htmlversion
+
+ Text to appear in HTML but not in the typeset versions of the FAQ.
+ (The body of the environment will be processed before appearing in
+ the HTML output, just the same as text for joint use.)
+ Similar are:
+Environment dviversion (DVI output only)
+Environment pdfversion (PDF output only)
+Environment narrowversion (DVI output only -- narrow since 2-col output)
+Environment wideversion (HTML or PDF output only)
+ Note that we use narrow for non-hyper, and wide for hyper versions
+ of the source.
+
+\htmlonly{text}
+\narrowonly{text}
+\wideonly{text}
+ These three are command versions of the corresponding environments
+
+\nothtml{text}
+
+ Text not to appear in the HTML version
+
+\latexhtml{latex text}{HTML text}
+
+ Typesets latex text, or processes HTML text, according to context
+
+\csx{name}
+
+ A robust command to typeset a control sequence in typewriter. The
+ <name> should only have letters or (at most) others in it -- no
+ active characters, please...
+
+\cmdinvoke{cmd name}<arguments>
+
+ Typesets a complete command invocation, and all its arguments.
+ The LaTeX macro will take arbitrary sequences of optional and
+ mandatory arguments, but while the HTML processor will deal with a
+ wide range of variants, its stunning simplemindedness means it's
+ always good to check such output.
+
+\cmdinvoke*{cmd name}<arguments>
+
+ As \cmdinvoke, but arguments are typeset with \emph
+
+\checked{intials}{date}
+
+ Records when an answer (or part of an answer) was checked, and by
+ whom. Currently typsets as nothing.
+
+\LastEdit{date}
+
+ Date of last editing a Question; argument is yyyy-mm-dd (ISO form)
+ (placed at the end of an answer)
+
+\LastEdit*{date}
+ Last edit was the initial version
+
+\keywords{<stuff>}
+
+ For labelling questions. Doesn't currently have any effect at all.
+
+\Email{<name>@<address>}
+\FTP{<site-address>}
+\File{file-path>}
+\path{file-path>}
+\Newsgroup{usenet-group-name}
+\URL{protocol>://site/path}
+\mailto{mail@ddress}
+
+ All these things typeset their argument in typewriter, but allowing
+ line-splitting at appropriate characters (using url.sty). The last
+ two (\URL and \mailto) become active in both the HTML and PDF
+ versions of the FAQ; \Email is for formatting a name (e.g., a finger
+ identifier) that the reader is _not_ supposed to mail.
+
+\Package{package name} % (no .sty)
+\Class{class name} % (no .cls)
+\ProgName{executable command name}
+
+ Set the item in an appropriate fashion. _Please_ use these commands
+ wherever appropriate.
+
+Names, logos, etc., for use whenever needed (to be used just as
+\name{}):
+
+ \AllTeX [(La)TeX], \LaTeXe, \LaTeXo [LaTeX 2.09, with requisite
+ precautions about dealing with the undead], \MF, \MP [MetaPost], \BV
+ [Baskerville], \PDFTeX, \PDFLaTeX, \CONTeXT, \NTS, \eTeX, \Eplain,
+ \TeXsis, \YandY [the firm, whose name is a bit tricky in HTML],
+ \WYSIWYG, \dots, \ldots, \pounds, \arrowhyph [->, used in
+ descriptions of selections from menus, and looking better when
+ typeset], \textpercent, \textasciitilde
+
+Typesetting things, arguments in braces:
+
+ \acro [for upper-case acronyms such as CTAN], \emph, \textit,
+ \textsl, \meta [as in doc.sty], \texttt, \thinspace, \ISBN
+
+Typesetting environments:
+
+ quote, description, itemize, enumerate, verbatim
+
+Other odds and ends:
+
+ $\pi$, $...$, \$, \#, \ , \&, ~ [just produces a space]
+
+Robin Fairbairns
+2009-06-13
+\LastEdit{2009-03-27}
diff --git a/obsolete/help/texfaq/newfaq.pdf b/obsolete/help/texfaq/newfaq.pdf
new file mode 100644
index 0000000000..c758c0b589
--- /dev/null
+++ b/obsolete/help/texfaq/newfaq.pdf
Binary files differ
diff --git a/obsolete/help/texfaq/newfaq.tex b/obsolete/help/texfaq/newfaq.tex
new file mode 100644
index 0000000000..be32724192
--- /dev/null
+++ b/obsolete/help/texfaq/newfaq.tex
@@ -0,0 +1,67 @@
+% This is the UK TeX FAQ
+%
+\documentclass[a4paper]{faq}
+%
+\setcounter{errorcontextlines}{999}
+%
+% read the first two definitions of faqbody.tex for the file version
+% and date
+\afterassignment\endinput\input gather-faqbody
+%
+\typeout{The UK TeX FAQ, v\faqfileversion, date \faqfiledate}
+%
+% let's not be too fussy while we're developing...
+\hfuzz10pt
+\emergencystretch10pt
+%
+\begin{document}
+\title{The \acro{UK} \TeX{} \acro{FAQ}\\
+ Your \ifpdf\ref*{lastquestion}\else\protect\ref{lastquestion}\fi
+ \ Questions Answered\\
+ version \faqfileversion, date \faqfiledate}
+\author{}
+\maketitle
+
+\centerline{\textsc{Note}}
+
+\begin{quotation}\small
+ This document is an updated and extended version of the \acro{FAQ} article
+ that was published as the December 1994 and 1995, and March 1999
+ editions of the \acro{UK}\,\acro{TUG} magazine \BV{} (which weren't
+ formatted like this).
+
+ The article is also available via the World Wide Web.
+\end{quotation}
+
+\ifsinglecolumn
+ \tableofcontents
+\else
+ \begin{multicols}{2}
+ \tableofcontents
+ \end{multicols}
+\fi
+
+\Dings
+
+% label list for later processing
+\labellist
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% load the CTAN references if necessary
+\input{dirctan}
+\input{filectan}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%\showthe\currentgrouplevel
+\begin{multicols}{2}
+%\expandafter\show\csname @currenvir\endcsname
+%\tracingnesting=2
+ \input{gather-faqbody}
+\end{multicols}
+
+%\showthe\currentgrouplevel
+%% (should be 0)
+%
+%\expandafter\show\csname @currenvir\endcsname
+%% (should be "document"
+\typeout{*** That makes \thequestion\space questions ***}
+\end{document}