1 \define{eur} \u20AC{EUR }
3 \title Halibut: A Test Document With A Stupidly Long Title (worth \eur\.1000)
4 Just To See If Wrapping Titles Works OK. In Fact This Title Will Span Three
5 Lines, Not Just Two. How's That For Ludicrous? More than that, though,
6 we'd like to make it more than 255 characters long so that the PostScript
7 backend has to treat it specially in order to pass it to pdfmark.
9 \cfg{xhtml-leaf-smallest-contents}{2}
10 \cfg{xhtml-leaf-contains-contents}
12 \cfg{info-dir-entry}{Sillinesses}{test.but}{Halibut test document}
13 \cfg{info-dir-entry}{Florbles}{test.but}{Subsection of Halibut test
15 \cfg{info-section-underline}{2}{~}
16 \cfg{info-charset}{utf-8}
17 \cfg{man-headnumbers}{true}
19 \cfg{contents}{Contents - edited title}
20 \cfg{index}{Index - also edited title}
22 This paragraph is not labelled \q{preamble}, but should still appear
25 \preamble This manual is a small joke effort, designed to use every
26 feature \#{ comment } that Halibut's input format supports. Creation
27 date \date{%Y.%m.%d} (default format is \date).
29 \c Here is a code paragraph in the preamble, just to stress that all
30 \c things are possible. Ooh!
32 \copyright Copyright 1999 Simon \#{second comment}Tatham. All rights
35 Here's another \i{preamble paragraph}, which goes after the copyright.
37 \define{metacoopt} [this is a nested,
38 multi-line macro, talking about \coopt
41 \define{coopt} co\u00F6{-o}pt
45 \C{ch\\ap} First chapter title; for similar wrapping reasons this
46 chapter title will be ludicrously long. I wonder how much more
47 chapter title I can write before feeling silly.
49 This is a para\#{another{} comment}graph of text. It
50 has line\#{yet another one} breaks in between words, multiple
51 spaces (ignored), and \e{emphasised text} as well as \c{code
54 \#{This is an inline comment alone in a paragraph.}
56 \cw{This} is weak code; \cq{this} is quoted code. And \k{head}
57 contains some other stuff. \K{subhead} does too.
59 To test the man page back end:
69 \\Sping\\Spong\\Spoing
71 \H{head} First section title (very long again, no prizes for
72 guessing the reason why this time, and here's yet more text to pad
73 it out to three lines of output)
75 \cfg{winhelp-topic}{M359HPEHGW}
77 Here's a code paragraph:
81 \c Two blank lines follow this one.
84 \c Two blank lines precede this one.
86 \c We can use \ { and } with impunity here.
87 \c We can use discretionary bold and italic in code paragraphs!
89 \c Isn't that ludicrous?
99 This bulletted list contains a list continuation. This is an
100 additional paragraph, or more than one, indented at the same level
101 as the list items, and able to contain nested sublists and other
102 features. For example, here's a code paragraph:
107 And here's a sublist. Numbered, just for variety.
124 \lcont{This is an even sillier one: a continuation of a list item in
125 a continuation of a list item in a continuation of a list item!}
137 This is a horizontal rule:
141 This is a numbered list:
147 \n Eek. \q{Aah} is point \k{keyword}.
149 This is a description list:
153 \dd A piscine creature, often to be found swimming aimlessly around
154 in the sea eating things and not contributing to the global economy.
158 Here's another of those funky list continuation things, just to keep
165 \dd A non-piscine creature, often to be found snuffling around on
166 land, not contributing to the global economy, and not even swimming
167 to make up for it. I don't know. These mammals. Pa-thetic.
169 \dt "SAUSAGE SALESMAN"
171 \dd An exemplary contributor to the global economy. Unless he's CMOT
174 This is a much more interesting description list, testing
175 consecutive \c{\\dt}s and consecutive \c{\\dd}s:
193 A-paragraph-full-of-hyphens-to-test-the-idea-that-word-wrapping-can-happen-somewhere-in-all-this-hyphenatory-nonsense.
195 A\-paragraph\-full\-of\-nonbreaking\-hyphens\-to\-test\-the\-idea\-that\-word\-wrapping\-misses\-them.
197 A\_paragraph\_full\_of\_nonbreaking\_spaces\_to\_test\_the\_idea\_that\_word\_wrapping\_misses\_them\_too.
199 Use of macros: let's talk about \coopt. And about \coopt some more.
200 And a nested macro: \metacoopt.
202 A slightly more difficult macro: \eur\.2500.
204 Test of input character set switching.
206 \n 8859 character in ASCII mode: expect nothing useful. [coöpt]
208 \cfg{input-charset}{ISO-8859-1}
210 \n 8859 character in 8859 mode: expect the right thing. [coöpt]
212 \cfg{input-charset}{UTF-8}
214 \n 8859 character in UTF-8 mode: expect the wrong thing. [coöpt]
216 \cfg{silliness}{coöpt}
218 \n UTF-8 sequence in UTF-8 mode: expect the right thing again. [coöpt]
220 \cfg{input-charset}{ASCII}
224 Oh, while I'm here: some special characters. The \\, \{ and \}
225 characters, to be precise. And their code equivalents, \c{\\},
226 \i\c{\{}, \c{\}}. The ` and ' characters (grave and apostrophe)
227 are special in some output formats.
229 Now let's exercise the paper backends a little. This is the entire
230 Adobe Standard Latin character set, which should be enough to cause
231 us to need to encode the main font twice:
233 \cfg{input-charset}{ISO-8859-1}
235 A Æ Á Â Ä À Å Ã B C Ç D E É Ê Ë È Ð F G H I Í Î Ï Ì J K L \u0141 M N Ñ O Ó Ô Ö
236 \u0152 Ò Ø Õ P Q R S \u0160 T Þ U Ú Û Ü Ù V W X Y Ý \u017d
237 a á â ´ ä æ à & å ^ ~ * @ ã b \\ | \{ \} [ ] ¦ \u2022
238 c \u02c7 ç ¸ ¢ \u02c6 : , © ¤ d \u2020 \u2021 ° ¨ ÷ $ \u02d9 \u0131
239 e é ê ë è 8 \u2026 \u2014 \u2013 = ð ! ¡ f \ufb01 5 \ufb02 \u0192 4 \u2044
240 g ß \u2039 \u203a ` > « » h - \u02dd i í î ï ì j k l \u0142 < ¬
241 m \u2212 \u00B5 × n 9 ñ # o ó ô ö \u0153 ò 1 ½ ¼ ¹ ª º ø õ
242 p \u00b6 ( ) % \u2030 . · + ±
243 q ? ¿ " \u201e \u201c \u201d \u2018 \u2019 \u201a '
244 r ® \u02da s \u0161 \u00A7 ; 7 6 / £ t þ 3 ¾ ³ \u02dc \u2122 2 ²
245 u ú û ü ù _ v w x y ý ÿ ¥ z \u017e 0
247 \cfg{input-charset}{ASCII}
249 Testing ligatures in normal (fi), empasised (\e{fi}), code (\c{fi}) and
250 weak code (\cw{fi}). The latter two should not be ligated.
252 \c Also in a code paragraph (fi) with bold (fi) and italic (fi).
254 \c There should be no ligation there.
256 The following pair of characters map to different glyphs with the same name in
257 some Microsoft TrueType fonts: \u0394{(missing)} \u2206{(missing)}
259 \S{subhead} First subheading
261 So here's a \I{subheading}\I{subsection}subsection. Just
262 incidentally, \q{this} is in quotes. \ii{Those} quotes had better work
265 We'll try for some Unicode here: \i{Schr\u00F6{oe}dinger}.
267 An index tag containing non-alternatived Unicode: \i{\u00BFChe?}
269 An invisible index tag: \I{she seems to have an invisible tag}yeah.
271 An index tag inside another tag: jackdaws love my \e{big \i{sphinx}}
274 Similarly, we should support things like hyperlinks
275 \e{\W{http://www.tartarus.org/}{at the beginning} of emphasised sections},
276 and \e{in the \W{http://www.tartarus.org/}{middle} of them}, and also
277 \e{at the \W{http://home.att.net/~cecw/lastpage.htm}{end}}.
279 \#{FIXME: Unfortunately, we still don't quite do the right thing with
281 How about a \e{reference to \k{subhead} here}? And at
282 \e{the end: \k{subhead}} and \e{\k{subhead}: the start}?
285 \S2{sub-sub}{Florble} Smaller heading still
287 A tiny section. Awww. How cute. Actually, this one's a \e{florble},
288 and here's a reference to it: \k{sub-sub}.
290 \A{app} Needless appendix
292 \# \cfg{winhelp-topic}{Y5VQEXZQVJ} (uncomment this and it clashes)
294 Here's an \i{appendix}, for no terribly good reason at all. See
295 __\k{book}__ (please excuse those underscores, I'm testing
298 It also contains a \W{http://www.tartarus.org/}{hyperlink}.
300 Also I'm going to index \i\c{-output} to ensure that its two
301 components are displayed as a joined-up code fragment in the index.
303 Here are \I{testone}some \I{testtwo}subsections \I{testthree}with
304 silly chapter titles and interesting use of Unicode. The Unicode
305 oddities are in the titles rather than the body text because that
306 way I get to test their handling in the PDF document outline.
308 \H{app-one} The 1024 \u00D7{x} 768 screen resolution
312 \H{app-two} How about Spongletech\u2122{(TM)}?
316 \# I'm going to label one of these with a carefully chosen fragment
317 \# name "i1", because I know this will also be generated as an index
318 \# fragment name and this allows me to test the fragment name clash
321 \# To actually run this test you need to configure html-leaf-level
322 \# to 0 and html-template-fragment to %k.
324 \H{i1} Or just Erd\u0151{\u00F6{o}}s?
328 \H{app-\\two} Section with inconvenient keyword
330 If you apply this file together with \cw{doc/chm.but}, this section
331 should test \cw{html_sanitise_filename()}.
335 \B{book} Some text describing a book.
337 \B{nocite} Some text describing a book. This text should appear in
338 the document even though there is no \cw{\\k} citing it.
340 \BR{book} [SillyCitation]
345 \B{uncited} If this text appears, there's an actual error.
347 \# This is a comment.
349 \# Now for the index section.
351 \IM{she seems to have an invisible tag}{appendix} Invisible tags
354 \# The display forms of these three index terms differ only in case.
355 \# This is a fiddly special case in the Windows Help backend,
356 \# because Windows Help's index mechanism is case-insensitive...