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?
91 \c man page tricky characters: command -o 'quoted' -o `backticks`
101 This bulletted list contains a list continuation. This is an
102 additional paragraph, or more than one, indented at the same level
103 as the list items, and able to contain nested sublists and other
104 features. For example, here's a code paragraph:
109 And here's a sublist. Numbered, just for variety.
126 \lcont{This is an even sillier one: a continuation of a list item in
127 a continuation of a list item in a continuation of a list item!}
139 This is a horizontal rule:
143 This is a numbered list:
149 \n Eek. \q{Aah} is point \k{keyword}.
151 This is a description list:
155 \dd A piscine creature, often to be found swimming aimlessly around
156 in the sea eating things and not contributing to the global economy.
160 Here's another of those funky list continuation things, just to keep
167 \dd A non-piscine creature, often to be found snuffling around on
168 land, not contributing to the global economy, and not even swimming
169 to make up for it. I don't know. These mammals. Pa-thetic.
171 \dt "SAUSAGE SALESMAN"
173 \dd An exemplary contributor to the global economy. Unless he's CMOT
176 This is a much more interesting description list, testing
177 consecutive \c{\\dt}s and consecutive \c{\\dd}s:
195 A-paragraph-full-of-hyphens-to-test-the-idea-that-word-wrapping-can-happen-somewhere-in-all-this-hyphenatory-nonsense.
197 A\-paragraph\-full\-of\-nonbreaking\-hyphens\-to\-test\-the\-idea\-that\-word\-wrapping\-misses\-them.
199 A\_paragraph\_full\_of\_nonbreaking\_spaces\_to\_test\_the\_idea\_that\_word\_wrapping\_misses\_them\_too.
201 Use of macros: let's talk about \coopt. And about \coopt some more.
202 And a nested macro: \metacoopt.
204 A slightly more difficult macro: \eur\.2500.
206 Test of input character set switching.
208 \n 8859 character in ASCII mode: expect nothing useful. [coöpt]
210 \cfg{input-charset}{ISO-8859-1}
212 \n 8859 character in 8859 mode: expect the right thing. [coöpt]
214 \cfg{input-charset}{UTF-8}
216 \n 8859 character in UTF-8 mode: expect the wrong thing. [coöpt]
218 \cfg{silliness}{coöpt}
220 \n UTF-8 sequence in UTF-8 mode: expect the right thing again. [coöpt]
222 \cfg{input-charset}{ASCII}
226 Oh, while I'm here: some special characters. The \\, \{ and \}
227 characters, to be precise. And their code equivalents, \c{\\},
228 \i\c{\{}, \c{\}}. The ` and ' characters (grave and apostrophe)
229 are special in some output formats.
231 Now let's exercise the paper backends a little. This is the entire
232 Adobe Standard Latin character set, which should be enough to cause
233 us to need to encode the main font twice:
235 \cfg{input-charset}{ISO-8859-1}
237 A Æ Á Â Ä À Å Ã B C Ç D E É Ê Ë È Ð F G H I Í Î Ï Ì J K L \u0141 M N Ñ O Ó Ô Ö
238 \u0152 Ò Ø Õ P Q R S \u0160 T Þ U Ú Û Ü Ù V W X Y Ý \u017d
239 a á â ´ ä æ à & å ^ ~ * @ ã b \\ | \{ \} [ ] ¦ \u2022
240 c \u02c7 ç ¸ ¢ \u02c6 : , © ¤ d \u2020 \u2021 ° ¨ ÷ $ \u02d9 \u0131
241 e é ê ë è 8 \u2026 \u2014 \u2013 = ð ! ¡ f \ufb01 5 \ufb02 \u0192 4 \u2044
242 g ß \u2039 \u203a ` > « » h - \u02dd i í î ï ì j k l \u0142 < ¬
243 m \u2212 \u00B5 × n 9 ñ # o ó ô ö \u0153 ò 1 ½ ¼ ¹ ª º ø õ
244 p \u00b6 ( ) % \u2030 . · + ±
245 q ? ¿ " \u201e \u201c \u201d \u2018 \u2019 \u201a '
246 r ® \u02da s \u0161 \u00A7 ; 7 6 / £ t þ 3 ¾ ³ \u02dc \u2122 2 ²
247 u ú û ü ù _ v w x y ý ÿ ¥ z \u017e 0
249 \cfg{input-charset}{ASCII}
251 Testing ligatures in normal (fi), empasised (\e{fi}), code (\c{fi}) and
252 weak code (\cw{fi}). The latter two should not be ligated.
254 \c Also in a code paragraph (fi) with bold (fi) and italic (fi).
256 \c There should be no ligation there.
258 The following pair of characters map to different glyphs with the same name in
259 some Microsoft TrueType fonts: \u0394{(missing)} \u2206{(missing)}
261 \S{subhead} First subheading
263 So here's a \I{subheading}\I{subsection}subsection. Just
264 incidentally, \q{this} is in quotes. \ii{Those} quotes had better work
267 We'll try for some Unicode here: \i{Schr\u00F6{oe}dinger}.
269 An index tag containing non-alternatived Unicode: \i{\u00BFChe?}
271 An invisible index tag: \I{she seems to have an invisible tag}yeah.
273 An index tag inside another tag: jackdaws love my \e{big \i{sphinx}}
276 Similarly, we should support things like hyperlinks
277 \e{\W{http://www.tartarus.org/}{at the beginning} of emphasised sections},
278 and \e{in the \W{http://www.tartarus.org/}{middle} of them}, and also
279 \e{at the \W{http://home.att.net/~cecw/lastpage.htm}{end}}.
281 Here's a hyperlink containing some special characters:
282 \W{http://a<b&c>d/}{here}. (Not that it'll \e{work}, but you can at
283 least determine that it's been correctly escaped by inspection of
286 \#{FIXME: Unfortunately, we still don't quite do the right thing with
288 How about a \e{reference to \k{subhead} here}? And at
289 \e{the end: \k{subhead}} and \e{\k{subhead}: the start}?
292 \S2{sub-sub}{Florble} Smaller heading still
294 A tiny section. Awww. How cute. Actually, this one's a \e{florble},
295 and here's a reference to it: \k{sub-sub}.
297 \A{app} Needless appendix
299 \# \cfg{winhelp-topic}{Y5VQEXZQVJ} (uncomment this and it clashes)
301 Here's an \i{appendix}, for no terribly good reason at all. See
302 __\k{book}__ (please excuse those underscores, I'm testing
305 It also contains a \W{http://www.tartarus.org/}{hyperlink}.
307 Also I'm going to index \i\c{-output} to ensure that its two
308 components are displayed as a joined-up code fragment in the index.
310 Here are \I{testone}some \I{testtwo}subsections \I{testthree}with
311 silly chapter titles and interesting use of Unicode. The Unicode
312 oddities are in the titles rather than the body text because that
313 way I get to test their handling in the PDF document outline.
315 \H{app-one} The 1024 \u00D7{x} 768 screen resolution
319 \H{app-two} How about Spongletech\u2122{(TM)}?
323 \# I'm going to label one of these with a carefully chosen fragment
324 \# name "i1", because I know this will also be generated as an index
325 \# fragment name and this allows me to test the fragment name clash
328 \# To actually run this test you need to configure html-leaf-level
329 \# to 0 and html-template-fragment to %k.
331 \H{i1} Or just Erd\u0151{\u00F6{o}}s?
335 \H{app-\\two} Section with inconvenient keyword
337 If you apply this file together with \cw{doc/chm.but}, this section
338 should test \cw{html_sanitise_filename()}.
342 \B{book} Some text describing a book.
344 \B{nocite} Some text describing a book. This text should appear in
345 the document even though there is no \cw{\\k} citing it.
347 \BR{book} [SillyCitation]
352 \B{uncited} If this text appears, there's an actual error.
354 \# This is a comment.
356 \# Now for the index section.
358 \IM{she seems to have an invisible tag}{appendix} Invisible tags
361 \# The display forms of these three index terms differ only in case.
362 \# This is a fiddly special case in the Windows Help backend,
363 \# because Windows Help's index mechanism is case-insensitive...