simon [Mon, 19 Apr 2004 17:09:49 +0000 (17:09 +0000)]
Support for \cfg{input-charset}. Input files can now be in ASCII,
8859-*, UTF-8, or a variety of more fun encodings including various
multibyte ones.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4095
cda61777-01e9-0310-a592-
d414129be87e
simon [Mon, 19 Apr 2004 17:09:12 +0000 (17:09 +0000)]
Better robustness when backends encounter a Unicode character not
representable in the output character set.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4094
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 17 Apr 2004 11:44:49 +0000 (11:44 +0000)]
Link libcharset into Halibut. (This involved faffing with
CVSROOT/modules, so anyone with a checked-out copy of Halibut will
unfortunately need to do `cvs co' again.)
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4088
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 17 Apr 2004 08:04:45 +0000 (08:04 +0000)]
Include libcharset into both the Timber and Halibut checkouts.
Unfortunately this means people will have to do `cvs co' again to
get this update, but that appears to be the price I pay for being
able to conveniently share a single source base in this way.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4086
cda61777-01e9-0310-a592-
d414129be87e
simon [Fri, 16 Apr 2004 11:20:30 +0000 (11:20 +0000)]
Add a TODO entry.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4084
cda61777-01e9-0310-a592-
d414129be87e
simon [Fri, 16 Apr 2004 10:56:31 +0000 (10:56 +0000)]
Compacted PS and PDF output files by removing redundant reiterations
of the same font and position designations. Reduced the size of the
Halibut manual PDF to less than half what it started out as, and the
PS one to more like a third of its original size.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4083
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 15 Apr 2004 18:25:17 +0000 (18:25 +0000)]
Standardise on using double quotes in HTML attributes. It turns out
that the GNOME help browser is perfectly happy with Halibut's HTML
_except_ that it doesn't approve of single quotes in places such as
<a href='here'>.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4082
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 15 Apr 2004 14:21:10 +0000 (14:21 +0000)]
Support the \W{...}\i\c{...} combination used in the NASM manual.
Halibut is now capable of reading the old NASM manual with only
minor modifications, and probably doing a much better job of
formatting it than rdsrc.pl ever did. (Certainly much _faster_!)
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4081
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 15 Apr 2004 14:12:37 +0000 (14:12 +0000)]
Prevent a tight loop. Oops.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4080
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 15 Apr 2004 08:50:04 +0000 (08:50 +0000)]
Put the document's version IDs into comments in the PS and PDF
output files.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4079
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 15 Apr 2004 08:37:39 +0000 (08:37 +0000)]
Ahem. If an indexable term appears in a section heading, the index
should not also point to a page in the contents! :-)
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4078
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 22:34:55 +0000 (22:34 +0000)]
Administrivia: update a TODO and a .cvsignore.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4077
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 22:34:21 +0000 (22:34 +0000)]
After printing out the PDF manual and reading it through, here's a
collection of minor edits for clarity, and also quite a few intended
to keep down the length of lines in code paragraphs (because Courier
is not just a thoroughly ugly font but is also WAY TOO WIDE).
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4076
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 18:14:41 +0000 (18:14 +0000)]
... oh, except that minimal documentation might be helpful.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4075
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 18:04:24 +0000 (18:04 +0000)]
Display the page numbers on every page. Right. I think this is now
basically usable, and certainly it entirely includes the level of
functionality which was provided by our ancestor Perl script. So I
think I'll stop coding frantically and have a rest!
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4074
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 17:48:37 +0000 (17:48 +0000)]
And now the page numbers in the index are PDF cross-references too.
Funny, I thought that would be as hard again as the main index
processing, and it turned out to be nearly trivial.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4073
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 17:33:15 +0000 (17:33 +0000)]
Implemented an index. Good _grief_, that was hard work to get all
the fine details right.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4072
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 13:24:39 +0000 (13:24 +0000)]
Typo during restructuring caused all code paragraphs to be
permanently bold. Fixed.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4071
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 13:23:06 +0000 (13:23 +0000)]
The contents section now contains PDF cross-references.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4070
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 13:14:12 +0000 (13:14 +0000)]
Support for a contents section.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4069
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 12:17:44 +0000 (12:17 +0000)]
Restructuring to remove the requirement for a printed paragraph to
correspond exactly to a source paragraph. Should allow me to create
multiple printed paragraphs from the same source paragraph (i.e. a
contents entry for each heading in addition to the heading itself),
and invent entirely new printed paragraphs of my own (e.g. for index
entries).
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4068
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 10:00:07 +0000 (10:00 +0000)]
Implemented PDF outlines.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4067
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 14 Apr 2004 08:32:32 +0000 (08:32 +0000)]
Implemented horizontal rules.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4066
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 13 Apr 2004 20:03:39 +0000 (20:03 +0000)]
Implemented lines under chapter titles.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4065
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 13 Apr 2004 19:41:36 +0000 (19:41 +0000)]
Fine-tuned the page breaking algorithm by adding penalties and
bonuses for breaking in particular places. (For example, it's
especially bad to break just after a heading, and especially good to
break just before one.)
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4064
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 13 Apr 2004 19:39:26 +0000 (19:39 +0000)]
I wrote the info backend _days_ ago. About time the manpage stopped
listing its absence as a bug :-)
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4063
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 13 Apr 2004 16:51:52 +0000 (16:51 +0000)]
Fix the TODO comments up a bit.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4062
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 13 Apr 2004 16:40:03 +0000 (16:40 +0000)]
Implemented all the missing rendering features (such as different
font selection in headings, mentioning section numbers, bullets,
list item numbers, code paragraphs etc). The PS/PDF output now
actually looks like the document it's supposed to be :-)
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4061
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 13 Apr 2004 15:05:03 +0000 (15:05 +0000)]
Implement PDF link annotations: both internal hyperlinks within the
document, and references to external URLs for which acroread will
start a web browser.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4060
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 13 Apr 2004 14:14:12 +0000 (14:14 +0000)]
Aha, _that's_ why paragraphs weren't properly justified. Confusion
of semantics as to whether a `last' pointer pointed to the last
relevant thing in a list, or the one beyond that. Oops.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4059
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 13 Apr 2004 13:17:48 +0000 (13:17 +0000)]
Initial work on PS and PDF output. Because these two backends share
an enormous amount of preprocessing and differ only in their final
output form, I've introduced a new type of layer called a
`pre-backend' (bk_paper.c is one). This takes all the information
passed to a normal backend and returns an arbitrary void *, which is
cached by the front end and passed on to any backend(s) which state
a desire for the output of that particular pre-backend. Thus, all
the page layout is done only once, and the PS and PDF backends
process the same data structures into two output files.
Note that these backends are _very_ unfinished; all sorts of vital
things such as section numbers, list markers, and title formatting
are missing, the paragraph justification doesn't quite work, and
advanced stuff like indexes and PDF interactive features haven't
even been started. But this basic framework generates valid output
files and is a good starting point, so I'm checking it in.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4058
cda61777-01e9-0310-a592-
d414129be87e
simon [Mon, 12 Apr 2004 08:33:15 +0000 (08:33 +0000)]
Double yikes! I meant to check in just biblio.c, but instead I
checked in all my just-started PS and PDF framework. I'm backing
that lot back out until it actually does something. Ahem.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4057
cda61777-01e9-0310-a592-
d414129be87e
simon [Mon, 12 Apr 2004 08:29:15 +0000 (08:29 +0000)]
Yikes! Stack trash I'd never noticed before. Oops.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4056
cda61777-01e9-0310-a592-
d414129be87e
simon [Mon, 12 Apr 2004 08:23:52 +0000 (08:23 +0000)]
Forgot to mention the info backend in the command-line help. Oops.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4055
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 10 Apr 2004 13:14:56 +0000 (13:14 +0000)]
Forgot to mention the info backend in the man page.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4054
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 10 Apr 2004 12:55:06 +0000 (12:55 +0000)]
The Emacs and Jed info readers don't like my index format: Info menu
items of the form `* stuff: Section 1.2.' are parsed by standalone
info as `Section 1.2' followed by a period, but are parsed by other
readers as `Section 1' followed by a period and then some spare
text. Therefore, I've changed strategy, and the index is now full of
*Note cross-references rather than menu items. On the plus side,
this means there are no longer any special characters which we can't
tolerate in an index entry; on the minus side, my shiny new
infrastructure for tracking the filepos of index entries is now
rendered pointless. I'll leave it in, though, since it may come in
handy again.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4053
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 10 Apr 2004 09:48:28 +0000 (09:48 +0000)]
Add documentation for the info backend.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4052
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 10 Apr 2004 08:59:19 +0000 (08:59 +0000)]
Info backend now takes care to avoid magic characters in node names
and index terms (the Info format doesn't like them). In the course
of this I've had to introduce some infrastructure for carrying a
filepos forward from the definition of every RHS index term so that
a particular backend can provide a usefully localised report of
which index term had a problem.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4051
cda61777-01e9-0310-a592-
d414129be87e
simon [Fri, 9 Apr 2004 18:47:33 +0000 (18:47 +0000)]
It would probably help to add a test of the INFO-DIR-ENTRY mechanism
to the test file. Ahem.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4050
cda61777-01e9-0310-a592-
d414129be87e
simon [Fri, 9 Apr 2004 18:43:02 +0000 (18:43 +0000)]
Add a config directive to generate the INFO-DIR-ENTRY things that
appear to be used to automatically construct /usr/info/dir.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4049
cda61777-01e9-0310-a592-
d414129be87e
simon [Fri, 9 Apr 2004 18:17:26 +0000 (18:17 +0000)]
Why hadn't I got round to creating a .cvsignore in the main source
directory before? Silly me.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4048
cda61777-01e9-0310-a592-
d414129be87e
simon [Fri, 9 Apr 2004 18:16:43 +0000 (18:16 +0000)]
Added an info(1) backend, which constructs .info files directly
without going through the .texi source stage. A few things left to
do, notably documentation, but the basics all seem to be there.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4047
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 8 Apr 2004 15:26:25 +0000 (15:26 +0000)]
Ahem; let's have all the man page headings at the same level!
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4045
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 8 Apr 2004 15:04:40 +0000 (15:04 +0000)]
Add a horrid md5sum manifest mechanism similar to the one I used in
the Unix PuTTY archive, to automatically generate version numbers
for Halibut release builds.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4044
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 8 Apr 2004 14:40:14 +0000 (14:40 +0000)]
Add installation instructions.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4043
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 8 Apr 2004 14:37:56 +0000 (14:37 +0000)]
Add a man page.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4042
cda61777-01e9-0310-a592-
d414129be87e
simon [Sun, 4 Apr 2004 12:10:49 +0000 (12:10 +0000)]
Jacob pointed out various important facts missing from the Halibut
manual. Added them.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4038
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 2 Apr 2004 00:03:10 +0000 (00:03 +0000)]
Limit unicode hex to 4 digits
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4036
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 1 Apr 2004 23:41:38 +0000 (23:41 +0000)]
Stop \n clobbering \nocite (etc)
Comments
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4035
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 1 Apr 2004 23:21:28 +0000 (23:21 +0000)]
Add stuff to butCmd para so that constructs like \c don't break inside
\quote{...}
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4034
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 1 Apr 2004 23:06:46 +0000 (23:06 +0000)]
Restrict characters allowed in commands -- deals with "\date)."
Comments
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4033
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 1 Apr 2004 22:52:46 +0000 (22:52 +0000)]
Oops, fix bracing comment stuff.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4032
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 1 Apr 2004 22:50:12 +0000 (22:50 +0000)]
Inline comments respect escaped braces.
Special handling for \U so that it works. Tweak \title.
Make butTextArg transparent so that emphasis (e.g. in a header) shows
through.
Comment tweaks.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4031
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 1 Apr 2004 22:21:23 +0000 (22:21 +0000)]
typo
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4030
cda61777-01e9-0310-a592-
d414129be87e
james [Thu, 1 Apr 2004 18:03:26 +0000 (18:03 +0000)]
GCC 3.0 doesn't like you not including <string.h> if you use things in it.
We do, so let's.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4029
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 18:02:26 +0000 (18:02 +0000)]
For some reason I decided it was better to say `output format'
consistently in the documentation than to confuse matters by saying
`back end'. One rogue back end removed.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4028
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 18:01:54 +0000 (18:01 +0000)]
Forgot to mention the default behaviour is to run all backends.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4027
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 18:00:12 +0000 (18:00 +0000)]
Help and usage messages.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4026
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 17:55:57 +0000 (17:55 +0000)]
Make the command-line --licence option do something useful.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4025
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 17:54:54 +0000 (17:54 +0000)]
Having done all these command-line options and new \cfg directives,
I'd better document them...
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4024
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 17:36:42 +0000 (17:36 +0000)]
Homogenise the licence, and bring it up to date.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4023
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 17:32:13 +0000 (17:32 +0000)]
Now I've got a mechanism for formatting HTML file names to a
parametric template, reuse the same mechanism to allow the <a
name="..."> markers on each section to be parametrised as well. That
way, any user who so desires can arrange for everything in a section
URL to be constructed from internal keywords, making it pretty
robust against section numbering changes.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4019
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 17:22:56 +0000 (17:22 +0000)]
Arrange a mechanism whereby each backend can be passed a filename
from its command-line option (`--text=foo.txt') and automatically
convert it into one or more notional \cfg directives. In the HTML
case this mechanism enables single-file mode as well as setting the
filename.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4018
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 17:08:59 +0000 (17:08 +0000)]
Add \cfg / -C directives to allow the user to choose the output file
name (or name schema, in HTML).
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4017
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 1 Apr 2004 17:01:10 +0000 (17:01 +0000)]
Fix a couple of memory leaks in backends.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4016
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 1 Apr 2004 01:12:21 +0000 (01:12 +0000)]
Oops, appendices.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4015
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 1 Apr 2004 01:02:43 +0000 (01:02 +0000)]
Initial revision
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4014
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 31 Mar 2004 19:19:34 +0000 (19:19 +0000)]
Add the -C command-line option, which allows arbitrary \cfg
directives to be supplied on the Halibut command line.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4013
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 31 Mar 2004 17:56:58 +0000 (17:56 +0000)]
Make a start on command-line options. Here I introduce --text,
--html, --winhelp and --man (plus spelling variations :-), which
allow you to choose to run only a subset of backends.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4012
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 31 Mar 2004 17:56:22 +0000 (17:56 +0000)]
Oops; uninitialised variable.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4011
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 31 Mar 2004 17:28:55 +0000 (17:28 +0000)]
After so much fuss was made about this being an _XHTML_ back end
rather than merely HTML, I thought it might be instructive to run it
through the W3C's XHTML validator. Consequent changes in this
checkin...
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4010
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 30 Mar 2004 22:29:36 +0000 (22:29 +0000)]
Bah, there's always one. Missing file.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4007
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 30 Mar 2004 20:22:00 +0000 (20:22 +0000)]
\lcont and \quote were being confused by whitespace (in particular,
a single newline) immediately after their opening brace; this was
causing a normal paragraph to be started, thus making it fiddly and
annoying to arrange the first paragraph of a \lcont to be a code
para or anything else special. Now fixed.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4005
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 30 Mar 2004 20:12:37 +0000 (20:12 +0000)]
Fix index sorting so that it collates in a sensible order.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4004
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 30 Mar 2004 20:01:44 +0000 (20:01 +0000)]
Make \ii work!
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4003
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 30 Mar 2004 19:49:42 +0000 (19:49 +0000)]
The navigation links now contain a link to the index page.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4002
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 30 Mar 2004 19:40:56 +0000 (19:40 +0000)]
Simplify treatment of the copyright notice, now I've also simplified
the preamble: \copyright paragraphs are now treated identically to
normal paragraphs (so they appear precisely where they're put
instead of in a fixed location), _except_ that the Windows Help
backend also copies their text into the help file's copyright slot.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4001
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 30 Mar 2004 19:32:00 +0000 (19:32 +0000)]
I always meant to remove emphasis in the index by default. Now I do
so. It's restorable using \IM.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@4000
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 30 Mar 2004 19:22:19 +0000 (19:22 +0000)]
The manual is now fully indexed.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3999
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 27 Mar 2004 17:09:13 +0000 (17:09 +0000)]
Couple of extra points: forgot about the \i\cw special case, and
Jacob points out that I didn't specify whether inline formatting
commands can surround line breaks (they can).
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3994
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 27 Mar 2004 09:59:41 +0000 (09:59 +0000)]
Fix bug in HTML index generation: any index tags appearing in a
section title (which is not remotely unreasonable) got index
references added to them not only when the section title was
processed as part of its section, but also when it was processed as
part of contents navigation displays - in which situation it tended
to cause a link to, for example, the last section in the _previous_
file. Now we keep constant track of whether or not we're supposed to
be indexing things as we process text.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3991
cda61777-01e9-0310-a592-
d414129be87e
simon [Fri, 26 Mar 2004 18:18:57 +0000 (18:18 +0000)]
Second instalment of the manual: added a chapter on output formats.
I _think_ the manual now contains all the information a user should
need, even if not yet in an optimal order for a beginner to learn
from.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3989
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 25 Mar 2004 19:27:12 +0000 (19:27 +0000)]
Introduce \. as a NOP command. The purpose of this is to act as a
zero-width delimiter between a macro invocation and text beyond it,
so that you can define (say) a macro which expands to a Euro sign
and then write `\eur\.2500' to avoid having space between the Euro
sign and the number.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3982
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 25 Mar 2004 19:16:28 +0000 (19:16 +0000)]
Obsoleted the `\preamble' command. Preamble text is now taken to be
any ordinary displayable paragraph(s) appearing before the first
chapter heading, meaning in particular that you can put lists, code
paragraphs etc in preambles. Of course, `\preamble' is still
supported for backwards compatibility, but it's now a zero-effect
paragraph marker.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3981
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 25 Mar 2004 18:33:02 +0000 (18:33 +0000)]
First instalment of a manual for Halibut. This lot covers the
(nearly nonexistent) invocation syntax and the input format.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3979
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 25 Mar 2004 18:32:05 +0000 (18:32 +0000)]
Add a \quote{...} directive, working like <blockquote> in HTML.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3978
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 25 Mar 2004 18:31:45 +0000 (18:31 +0000)]
Apparently we must include the .TH directive in a man page even when
there's nothing to go in it.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3977
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 24 Mar 2004 19:23:21 +0000 (19:23 +0000)]
Cleanups to complete the man page backend. Also, an additional new
markup feature: a \c line in a code paragraph can now be followed by
an optional \e line indicating emphasised bits of its preceding \c.
This allows discretionary bolding and (italic/underline) emphasis
within code paragraphs, but without introducing an escape character
or breaking any existing input files. Users are warned that not all
backends are required to actually render these hints, and so they
should avoid depending on them 100% to convey semantic information
unless they know they're writing for a restricted range of backends.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3965
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 23 Mar 2004 20:19:01 +0000 (20:19 +0000)]
Oops, nearly forgot. Nesting one numbered list inside another should
not break the numbering of the outer one!
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3955
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 23 Mar 2004 20:10:23 +0000 (20:10 +0000)]
Man-page back end for Halibut. Also, a couple of additional markup
features commonly used in man pages: (a) the ability to nest
paragraph breaks, code paragraphs and other lists inside list items,
and (b) description lists as normally used in man pages to describe
command-line options.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@3954
cda61777-01e9-0310-a592-
d414129be87e
simon [Thu, 9 Jan 2003 12:04:01 +0000 (12:04 +0000)]
WinHelp backend segfaults when it finds a nonexistent cross-
reference. (The broken link will already have been reported in the
mid-end, but this won't inhibit output generation, so the onus is
still on us to at the very least not go *crash*.)
git-svn-id: svn://svn.tartarus.org/sgt/halibut@2507
cda61777-01e9-0310-a592-
d414129be87e
simon [Tue, 3 Sep 2002 09:26:58 +0000 (09:26 +0000)]
Of course, when I start freeing things in response to valgrind's
complaints, it would probably help if I arranged that those things
had been _allocated_ in all cases, otherwise we merely exchange a
memory leak for a core dump. Duh.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@1916
cda61777-01e9-0310-a592-
d414129be87e
simon [Fri, 23 Aug 2002 14:02:01 +0000 (14:02 +0000)]
Just had a play with this newfangled `valgrind' memory debugger
thingy, which seems moderately cool and has reported a few very
small memory leaks. Now apparently fixed.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@1863
cda61777-01e9-0310-a592-
d414129be87e
simon [Mon, 12 Aug 2002 11:25:42 +0000 (11:25 +0000)]
Add configurability for section heading formats, in much the same
way as bk_text already does it (you can choose to have or not have
the "Section" at the start, and you can configure the suffix between
number and title).
git-svn-id: svn://svn.tartarus.org/sgt/halibut@1839
cda61777-01e9-0310-a592-
d414129be87e
simon [Mon, 12 Aug 2002 11:24:59 +0000 (11:24 +0000)]
Add configurability for the suffix after the section number and
before the section title (the ": " in "Section 1: Introduction").
git-svn-id: svn://svn.tartarus.org/sgt/halibut@1838
cda61777-01e9-0310-a592-
d414129be87e
simon [Mon, 12 Aug 2002 11:24:28 +0000 (11:24 +0000)]
Arrange for multiple \cfg, \IM and \BR paragraphs to not require
blank-line separators (config directives visually _want_ to be in a
single chunk).
git-svn-id: svn://svn.tartarus.org/sgt/halibut@1837
cda61777-01e9-0310-a592-
d414129be87e
simon [Sun, 11 Aug 2002 18:20:32 +0000 (18:20 +0000)]
Fix the bug in the text back end whereby bulletted paragraphs' width
failed to be decreased to compensate for the additional indent.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@1834
cda61777-01e9-0310-a592-
d414129be87e
simon [Sun, 11 Aug 2002 16:04:42 +0000 (16:04 +0000)]
Add `topclean' target to the top-level Makefile, to remove the
output from running Halibut on a test input file.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@1833
cda61777-01e9-0310-a592-
d414129be87e
simon [Sun, 11 Aug 2002 16:02:43 +0000 (16:02 +0000)]
Slightly improve the handling of headings in HTML single-file mode.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@1832
cda61777-01e9-0310-a592-
d414129be87e
simon [Sun, 11 Aug 2002 15:28:24 +0000 (15:28 +0000)]
Upgrade to Halibut xhtml backend, to allow leaf_level to be zero (in
which case the whole of the HTML output will be in a single file,
currently called Manual.html in the absence of configurability).
This includes the index, if present.
git-svn-id: svn://svn.tartarus.org/sgt/halibut@1831
cda61777-01e9-0310-a592-
d414129be87e