-\title Halibut: A Test Document With A Stupidly Long Title Just To
-See If Wrapping Titles Works OK. In Fact This Title Will Span Three
-Lines, Not Just Two. How's That For Ludicrous?
+\define{eur} \u20AC{EUR }
+
+\title Halibut: A Test Document With A Stupidly Long Title (worth \eur\.1000)
+Just To See If Wrapping Titles Works OK. In Fact This Title Will Span Three
+Lines, Not Just Two. How's That For Ludicrous? More than that, though,
+we'd like to make it more than 255 characters long so that the PostScript
+backend has to treat it specially in order to pass it to pdfmark.
\cfg{xhtml-leaf-smallest-contents}{2}
+\cfg{xhtml-leaf-contains-contents}
+{true}
+\cfg{info-dir-entry}{Sillinesses}{test.but}{Halibut test document}
+\cfg{info-dir-entry}{Florbles}{test.but}{Subsection of Halibut test
+document}{sub-sub}
+\cfg{info-section-underline}{2}{~}
+\cfg{info-charset}{utf-8}
+\cfg{man-headnumbers}{true}
+
+\cfg{contents}{Contents - edited title}
+\cfg{index}{Index - also edited title}
-\cfg{xhtml-leaf-contains-contents}{true}
+This paragraph is not labelled \q{preamble}, but should still appear
+as it.
\preamble This manual is a small joke effort, designed to use every
feature \#{ comment } that Halibut's input format supports. Creation
date \date{%Y.%m.%d} (default format is \date).
+\c Here is a code paragraph in the preamble, just to stress that all
+\c things are possible. Ooh!
+
\copyright Copyright 1999 Simon \#{second comment}Tatham. All rights
reserved.
+Here's another \i{preamble paragraph}, which goes after the copyright.
+
\define{metacoopt} [this is a nested,
multi-line macro, talking about \coopt
a bit]
\define{coopt} co\u00F6{-o}pt
-\versionid $Id: test.but,v 1.18 2002/08/05 10:31:33 simon Exp $
+\versionid $Id$
\C{ch\\ap} First chapter title; for similar wrapping reasons this
chapter title will be ludicrously long. I wonder how much more
spaces (ignored), and \e{emphasised text} as well as \c{code
fragments}.
-\cw{This} is weak code. And \k{head} contains some other stuff.
-\K{subhead} does too.
+\#{This is an inline comment alone in a paragraph.}
+
+\cw{This} is weak code; \cq{this} is quoted code. And \k{head}
+contains some other stuff. \K{subhead} does too.
+
+To test the man page back end:
+
+.Directive
+
+'Directive
+
+\cw{.Directive}
+
+\cw{'Directive}
+
+\\Sping\\Spong\\Spoing
\H{head} First section title (very long again, no prizes for
guessing the reason why this time, and here's yet more text to pad
\c Two blank lines precede this one.
\c Two leading spaces
\c We can use \ { and } with impunity here.
+\c We can use discretionary bold and italic in code paragraphs!
+\e bbbb iiiiii
+\c Isn't that ludicrous?
This is a list:
\b Aah.
+\lcont{
+
+This bulletted list contains a list continuation. This is an
+additional paragraph, or more than one, indented at the same level
+as the list items, and able to contain nested sublists and other
+features. For example, here's a code paragraph:
+
+\c spingle:~$ whoami
+\c spoggler
+
+And here's a sublist. Numbered, just for variety.
+
+\n One.
+
+\lcont{
+
+\n 1a.
+
+\n 1b.
+
+\lcont{
+\c Code
+\c Paragraph
+}
+
+\n 1c.
+
+\lcont{This is an even sillier one: a continuation of a list item in
+a continuation of a list item in a continuation of a list item!}
+
+}
+
+\n Two.
+
+\n Threeeee!
+
+}
+
\b Eek.
This is a horizontal rule:
\n Eek. \q{Aah} is point \k{keyword}.
+This is a description list:
+
+\dt FISH
+
+\dd A piscine creature, often to be found swimming aimlessly around
+in the sea eating things and not contributing to the global economy.
+
+\lcont{
+
+Here's another of those funky list continuation things, just to keep
+Halibut on its toes.
+
+}
+
+\dt BADGER
+
+\dd A non-piscine creature, often to be found snuffling around on
+land, not contributing to the global economy, and not even swimming
+to make up for it. I don't know. These mammals. Pa-thetic.
+
+\dt "SAUSAGE SALESMAN"
+
+\dd An exemplary contributor to the global economy. Unless he's CMOT
+Dibbler.
+
+This is a much more interesting description list, testing
+consecutive \c{\\dt}s and consecutive \c{\\dd}s:
+
+\dt One
+
+\dt Two
+
+\dt Three
+
+\dd Ay
+
+\dt Four
+
+\dd Bee
+
+\dd Cee
+
+\dd Dee
+
A-paragraph-full-of-hyphens-to-test-the-idea-that-word-wrapping-can-happen-somewhere-in-all-this-hyphenatory-nonsense.
A\-paragraph\-full\-of\-nonbreaking\-hyphens\-to\-test\-the\-idea\-that\-word\-wrapping\-misses\-them.
Use of macros: let's talk about \coopt. And about \coopt some more.
And a nested macro: \metacoopt.
+A slightly more difficult macro: \eur\.2500.
+
+Test of input character set switching.
+
+\n 8859 character in ASCII mode: expect nothing useful. [coöpt]
+
+\cfg{input-charset}{ISO-8859-1}
+
+\n 8859 character in 8859 mode: expect the right thing. [coöpt]
+
+\cfg{input-charset}{UTF-8}
+
+\n 8859 character in UTF-8 mode: expect the wrong thing. [coöpt]
+
+\cfg{silliness}{coöpt}
+
+\n UTF-8 sequence in UTF-8 mode: expect the right thing again. [coöpt]
+
+\cfg{input-charset}{ASCII}
+
+Back to ASCII again.
+
Oh, while I'm here: some special characters. The \\, \{ and \}
characters, to be precise. And their code equivalents, \c{\\},
-\i\c{\{}, \c{\}}.
+\i\c{\{}, \c{\}}. The ` and ' characters (grave and apostrophe)
+are special in some output formats.
+
+Now let's exercise the paper backends a little. This is the entire
+Adobe Standard Latin character set, which should be enough to cause
+us to need to encode the main font twice:
+
+\cfg{input-charset}{ISO-8859-1}
+
+A Æ Á Â Ä À Å Ã B C Ç D E É Ê Ë È Ð F G H I Í Î Ï Ì J K L \u0141 M N Ñ O Ó Ô Ö
+\u0152 Ò Ø Õ P Q R S \u0160 T Þ U Ú Û Ü Ù V W X Y Ý \u017d
+a á â ´ ä æ à & å ^ ~ * @ ã b \\ | \{ \} [ ] ¦ \u2022
+c \u02c7 ç ¸ ¢ \u02c6 : , © ¤ d \u2020 \u2021 ° ¨ ÷ $ \u02d9 \u0131
+e é ê ë è 8 \u2026 \u2014 \u2013 = ð ! ¡ f \ufb01 5 \ufb02 \u0192 4 \u2044
+g ß \u2039 \u203a ` > « » h - \u02dd i í î ï ì j k l \u0142 < ¬
+m \u2212 \u00B5 × n 9 ñ # o ó ô ö \u0153 ò 1 ½ ¼ ¹ ª º ø õ
+p \u00b6 ( ) % \u2030 . · + ±
+q ? ¿ " \u201e \u201c \u201d \u2018 \u2019 \u201a '
+r ® \u02da s \u0161 \u00A7 ; 7 6 / £ t þ 3 ¾ ³ \u02dc \u2122 2 ²
+u ú û ü ù _ v w x y ý ÿ ¥ z \u017e 0
+
+\cfg{input-charset}{ASCII}
+
+Testing ligatures in normal (fi), empasised (\e{fi}), code (\c{fi}) and
+weak code (\cw{fi}). The latter two should not be ligated.
+
+\c Also in a code paragraph (fi) with bold (fi) and italic (fi).
+\e bb ii
+\c There should be no ligation there.
+
+The following pair of characters map to different glyphs with the same name in
+some Microsoft TrueType fonts: \u0394{(missing)} \u2206{(missing)}
\S{subhead} First subheading
An invisible index tag: \I{she seems to have an invisible tag}yeah.
+An index tag inside another tag: jackdaws love my \e{big \i{sphinx}}
+of quartz.
+
+Similarly, we should support things like hyperlinks
+\e{\W{http://www.tartarus.org/}{at the beginning} of emphasised sections},
+and \e{in the \W{http://www.tartarus.org/}{middle} of them}, and also
+\e{at the \W{http://home.att.net/~cecw/lastpage.htm}{end}}.
+
+\#{FIXME: Unfortunately, we still don't quite do the right thing with
+references:
+How about a \e{reference to \k{subhead} here}? And at
+\e{the end: \k{subhead}} and \e{\k{subhead}: the start}?
+}
+
\S2{sub-sub}{Florble} Smaller heading still
A tiny section. Awww. How cute. Actually, this one's a \e{florble},
\# \cfg{winhelp-topic}{Y5VQEXZQVJ} (uncomment this and it clashes)
Here's an \i{appendix}, for no terribly good reason at all. See
-\k{book}.
+__\k{book}__ (please excuse those underscores, I'm testing
+whitespace).
It also contains a \W{http://www.tartarus.org/}{hyperlink}.
+Also I'm going to index \i\c{-output} to ensure that its two
+components are displayed as a joined-up code fragment in the index.
+
+Here are \I{testone}some \I{testtwo}subsections \I{testthree}with
+silly chapter titles and interesting use of Unicode. The Unicode
+oddities are in the titles rather than the body text because that
+way I get to test their handling in the PDF document outline.
+
+\H{app-one} The 1024 \u00D7{x} 768 screen resolution
+
+Err.
+
+\H{app-two} How about Spongletech\u2122{(TM)}?
+
+Umm.
+
+\# I'm going to label one of these with a carefully chosen fragment
+\# name "i1", because I know this will also be generated as an index
+\# fragment name and this allows me to test the fragment name clash
+\# detection.
+\#
+\# To actually run this test you need to configure html-leaf-level
+\# to 0 and html-template-fragment to %k.
+
+\H{i1} Or just Erd\u0151{\u00F6{o}}s?
+
+Ahh.
+
+\H{app-\\two} Section with inconvenient keyword
+
+If you apply this file together with \cw{doc/chm.but}, this section
+should test \cw{html_sanitise_filename()}.
+
\U Bibliography
\B{book} Some text describing a book.
the document even though there is no \cw{\\k} citing it.
\BR{book} [SillyCitation]
+\BR{uncited} Badger.
\nocite{nocite}
\IM{she seems to have an invisible tag}{appendix} Invisible tags
and/or appendices
+
+\# The display forms of these three index terms differ only in case.
+\# This is a fiddly special case in the Windows Help backend,
+\# because Windows Help's index mechanism is case-insensitive...
+
+\IM{testone} Test
+\IM{testtwo} TesT
+\IM{testthree} test