- summary: Updates from "original" 3.5 version --> Updates from 'original' 3.5 version
New features:
* spacing
* if a chord is wider than the text below it, the
text is shifted over
to allow the chords and text to stay at the
correct orientation with
respect to each other.
* A hyphen (or two, if the space is large) will be
inserted if the
shifting occured in the middle of a word.
* Robust indexing (at least more than it used to be)
* multiple indexes, all use the same add/print functions
* you can pass in an alphabetizing function,
rather than strcmp (default)
* can print page numbers on titles or subtitles,
whichever has the
number i.e. I have a category index, so each
category doesn't have a
page number, but the "subtitles" (each title in
that category) does.
* Multiple columns (pass in the number on
build_index call)
* Allows for identical titles (I think this was
necessary after my
additions, it didn't used to be necessary)
* Uses "alternate" titles, new tag {at:}
* Future work
* Add alternate titles to other indexes, not just
title
index.
* Do better column and page wrapping.
* Perhaps have way to generate indexes with
generic tags, and
need to hardcode the new tags. I currently
use: {cat:},
{scripture:}, {title:}, {st:}, {at:}
* Optional chords. I put [(chord_name)] to signify
optional chords
The parentheses get printed in the song, but dots()
prints out
non-parenthesized version
* More than 4 songs per page. My version prints out
an arbitrary number
of songs per page, based on size.
* truncates lines that go over the width of
page/column. Currently also
does not word wrap nicely, since I would lose the
vpos (in C) if
postscript auto-incremented. There is a command
line option to quit
if line is truncated, and print offending line, or
just to ignore it.
* Try to be more efficient in printing postscript out.
I believe the
output file size is about half of what it used to
be. I haven't
explicitly checked, but a file that was lying around
from a couple
weeks ago is much larger.
* Don't use page numbers any more, but rather keep
track of the
song number.
* In the subtitle field, replace (c) with the
copyright symbol.
* Re-set font size and type at each page break, so
output can now
be better viewed with ghostview, which can go
backwards in a file
Stuff you might not care about, ie. more specific to my
uses:
* a bible sort, ie. one that knows the order of the
books of the bible,
and can "alphabetize based on that order.
* a text replacement for CCLI numbers. ie. in our
input file, we have
CCLI# UNLICENSED, and on the command line, given -#
number, will
replace UNLICENSED with that number. I suppose this
could be made more
generic given two arguments, could replace one with
the other
[*comment] works now, ie. if you put a * in chord
brackets, it will get
printed when chords are printed (without the *) and it
won't complain
about not having "comment" defined.
spacing is fixed (again). If you ever see vertical
spacing problems,
ie stuff overwriting other lines, let me know, because
I think I have
fixed all of that.
The horizontal cutoff stuff is a little funny at the
moment, ie. it
doesn't always tell you when stuff wraps. We should
figure out what we
want it to do when wrapping occurs.
Vertical wrapping should be working better, ie. it
will better fit the
songs to the pages, and *hopefully* never go wrap to
the next column.
Output file is smaller, I am a little more efficient
when I output
stuff. (if you ever see something funny with going
backwards in the file,
which results in the wrong font or something, let me
know, because I don't
want to be _that_ efficient.
N.C. means "no chord", it will get printed above the
text, but no chord
will appear at the bottom.
Chords and text are now not touching, no matter what
the font size.
chords are allowed in comments, currently, the '['s
get removed. But it is better then what it used to do.