-Features you cannot find in the doco as working, should be mentioned
-here.
-
-This is an assorted collection of stuff that will be done, might be
-done, or is an idea that I want to think about
-
-Most of the items are marked in the code as well, with full explanation.
-grep for TODO and ugh/ugr/urg
-
-
- * decimal point in \paper {}
-
- > I have changed Mark_engraver to use the G_... classes.
- > My implementation has the following shortcomings at the
- > moment.
- >
- > - markScriptPadding is not supported, since G_staff_side_item does not
- > support padding.
- >
- > - markBreakPriority is not supported.
- >
- > - Mostly, you want the marks aligned with the bar lines. I don't
- > really understand how to implement that feature.
- >
- > - You get lots of warnings about missing 'number' and 'Large'
-
-
- *{ \voiceone <a'4.*2/3 d''4.*2/3 fis''4.*2/3> [g''8 fis'' e''] d''4 |}
- and=20
- { \voicetwo d'4 d'2.*2/3 } spacing
-
- * tied notes for MIDI
-
- * sharp /flat on trills (in MIDI ??)
-
- * scm-ify \property values.
-- The direction of textual scripts ('^' or '_') is ignored.
- * move class Lookup {} into scm
-
- * read tfms too.
-
- * update mi2mu for lilypond 1.1
-
-BUGS:
- * collisions/voices \voiceone \voicetwo are broken; see
- input/praeludium-fuga-E.ly
- mutopia/J.S.Bach/wtk1-fugue2.ly
-
- * fix: standchen.
-
- * fix: cello suites
-
- * fix: text on rests: rediculous dims
-
- * fix extender
-
- * fix fingering 'a-5': font direction broken *again*
-
- * fix braces
-
- * multibar rests: SkipBars=0
-
- * ly2dvi barfs on linewidth = -1.
-
- * fix midi output.
-
- * c4 \! \> c4
-
- * tremolo stuff
-
- * gallina barlines.
-
- * fix height of / collisions with lyrics (chords),
- see input/test/vertical-text.ly; input/test/repeat.ly
-
- * repeat/volta:
- - one volta spanner per score
- - repeat bars span staffs
- - placement alternative number
-
- * latex bla.tex broken (titles / \lilyfooter stuff?)
-
- * check/set minimum slur/tie length
-
- * msgfmt -o check?
-
- * \breathmark TeX macro
-
- * catch GUILE errors?
-
- * add new glyphs to font.ly
-
- * formatting of input stuff.
-
- * \notes{ a \< b \cr } vs \notes{ a \< b \! }
-
- * if possible, it might be nice for a warning to appear if someone does
- \translator with no name and without assigning it to an
- identifier.
-
- * space after bars?
-
- * 'hinterfleisch' before bar (e.g. wtk1-fugue2)?
-
- * \type Voice \times 2/3 { [c8 c16 c16 c16 c16] }
-
- * fix singleStaffBracket
-
- * repeat bars: need distance after ":|" and before "|:"
-
- Summary of minor spelling irregularities:
- - capitalization/use of underscores in property names
-
- * fix SkipBars -> skipBars
-
- * \shape 1st dim skipped?
-
- * fix marks/barnumbers/marginal notes
-
- * broken scripts:
- lbheel = \script { "bheel" 0 0 -1 0 0 }
- rbheel = \script { "bheel" 0 0 1 0 0 }
- lbtoe = \script { "btoe" 0 0 -1 0 0 }
- rbtoe = \script { "btoe" 0 0 1 0 0 }
- lfheel = \script { "fheel" 0 0 -1 0 0 }
- rfheel = \script { "fheel" 0 0 1 0 0 }
- lftoe = \script { "ftoe" 0 0 -1 0 0 }
- rftoe = \script { "ftoe" 0 0 1 0 0 }
-
- and also
-
- portato= \script { "portato" 0 -1 0 1 0 }
-
-STUFF
- * uniformise recent feta contributions.
-
- * check out legal/(c) matters for scores.
-
- * check out GCC signatures?
-
- * Align_element::padding ?
-
- * uniformise property names.
-
- * ydirection <-> yDirection
-
- * typo checks on property names?
-
- * use streambufs and iostream
+-*-outline-layout:(2 (-1 -1 0 :) 0);outline-stylish-prefixes:nil -*-
+
+* GNU LilyPond TODO
+Features you cannot find in the doco as working, should be
+mentioned here. This is an assorted collection of stuff that will be
+done, might be done, or is an idea that I want to think about
+
+Most of the items are marked in the code as well
+Grep for TODO and ugh/ugr/urg.
+
+.* TODO before 1.2
+. * rename abc2ly mup2ly
+. * rename 'staff_line_leading' (who is being lead where?) to
+staff_space, interline; (or other meaningful name) and use throughout lily
+. * rename files to class-name:
+. * heads-engraver
+. * request-iterator
+. * p-score
+. * engraver-group
+. * standardise(d) switches: -v, --version; -d, --debug,
+. * Auto_beam debugging output (waarom/wanneer heb jij die weggehaald?)
+. * Auto_beam debugging output (waarom/wanneer heb jij die weggehaald?)
+. * Rename illegal to invalid
+. * Mats:
+
+- The Postscript output is still very experimental
+
+- The reference manual contain a number of exampels that don't
+ pass lilypond, among other the chord syntax.
+
+- Accidentals for grace notes are drawn at the wrong place. See
+ comment in grace.ly
+
+- It is impossible to typeset two textual scripts that are stacked
+ on top of eachother and avoids note collisions and at the same
+ time are typeset with different textStyle. I tried to move around
+ the text_engraver and other engravers between Voice and Thread
+ but the granularity is not fine enough, the scripts have to
+ share the same engraver in order to be get correct vertical
+ position but than they cannot have different style.
+ In my opinion, all scripts that share the same staff, should
+ be stacked vertically, avoiding collisions with the notes
+ in all voices.
+
+- If an \alternative is directly followed by a new \repeat,
+ Lily gives an assertion failure. See the comment in volta.fly
+
+- I'd like to change the \repetitions command to Jan's suggested
+ syntax: \repeat "repeatsymbol" 2 {...}, but I'm not sure that
+ I understand the implementation of repeats well enough.
+
+- The paper11/13/26 files have to be updated.
+. * Grace_slur_engraver.
+. * Break_req handling is silly (break_forbid () + \break fucks up.)
+. * hangOnClef with non-breakable clefs.
+. * do scaled fonts generally
+. * fix partial measures in meaningful way.
+. * relative mode for midi2ly
+. * uniformise recent feta contributions.
+. * bigger and fatter 4/4 C
+. * sort out directory stuff.
+. * --prefix option?
+. * -I option per filetype?
+. * kpathsea?
+. * ly2dvi/lilypond logfile.
+. * fractional chord durs.
+. * hang Item on Spanner
+. * do --safe for PS output?
+. * convert-mudela --output
+. * Staff_margin (with a partial measure.)
+. * fix convert-mudela manpage
+. * decimal point in \paper {}
+. * msgfmt -o check?
+. * add new glyphs to font.ly
+. * formatting of input stuff.
+. * deps for ly2dvi
+. * decide wether to junk _ in lyrics.
+. * sane strategy for extensions (assume .ly):
+02:22:24 appel ~/usr/src/lilypond$ lilypond foo
+GNU LilyPond 1.1.54.
+[/home/fred/usr/src/lilypond/scm/lily.scm]
+warning: can't find file: `init'
+. * indent = 0.0 with linewidth=-1.0
+. * auto-beaming in input/test/spacing.ly.
+huh, snap niks van: gewone beam gaat wel goed. hoe kan abe nu
+invloed hebben op beam-creatie, stopt toch gewoon stokken in?
+. * music ending in grace notes.
+. * PostScript
+. * half notes in pfa
+. * didot / big point.
+. * \shape 1st dim skipped?
+. * turn slope-damping on/off
+. * We need feta-din*.mf files for more sizes than 10.
+. * fix dynamics decently, ie. use kerning & ligatures.
+. * behavior of "that the obvious solution
+\lyrics { foo1*4 __ _ }" is unintuitive.
+. * Lyrics and scripts collide.
+. * grace_align_item -> stackingdir = left, weird placement.
+. * filenames : junk lily.x
+
+.* Cleanups needed
+. * \$ and $ identifier syntax in examples.
+. * bracket ps code.
+. * Key_engraver, Local_key_item
+. * Think of comprehensive solution for "if (grace_b == self_grace_b_)"
+. * Y dimension units: staffspace vs. Point
+. * Beam
+. * Stem
+. * Rhythmic_column and interaction stem/rhythmic_column/note_head/dots.
+. * Slur
+. * Duration
+. * clef engraver
+. * parser
+
+.* BUGS
+. * [c8. c16 c16 c16] in 6/8 timesig.
+
+.* STUFF
+. * break priority setting from SCM.
+. * Matanya's tips:
+. * don't shorten stems/staffs closer to each other.
+. * accidentals closer to note head
+. * to space the staffs/staffgroups contained in the score.
+. * heavier beams?
+
+. * tuplets that are written as "number : note", for example
+ "3 : [image of a half note here]". possible?
+. * a note with a circle after it, meaning:
+
+ note + circle = note + 1/4 of its length
+
+ the circle is like a dot that's not filled in. for example, on
+ page three, the c-sharp on the second line should be a quarter with
+ a circle, not a quarter tied to a sixteenth. is this at all
+ possible with lily?
+. * scm-ify \property values.
+. * make dependencies () a virtual function.
+. * Abstraction for engravers:
+. * make "in-between" engraver (Tie, Extender)
+. * make wide_spanner_engraver (line_group_spanner, staff_symbol)
+. * store req -> element, element -> element causes for warnings
+. * compulsory hshift
+. * dots & rest collisions?
+. *
+My wish list for lyrics. I dream of a time when I will have enough time to
+become familiar enough with the source code to be able to implement some of
+these myself, but I don't know when that will be, so I thought I'd "publish"
+my suggestions in case someone else is in a position to give them some
+priority. Otherwise, perhaps they could go on the todo list?
+
+If any of these are already implemented, please let me what the syntax is to
+use them!
+
+1. Stanza numbering. Numbering at the beginning of a song with the number
+set to the left of the first note. It would also be nice (but not as
+important) to be able to have some form of automatic numbering at the
+beginning of each new line. This would make it easier to follow songs with a
+large number of stanzas.
+
+3. Notes centred above/below lyrics rather than left-aligned.
+
+4. It would be very nice to be able to build some kind of phrasing into the
+lyrics of hymns, etc, so that the first words of a phrase are left aligned
+with each other, the last words are right aligned, and the words in between
+are centred.
+
+5. In a song, with (say) four stanzas and a chorus, it would be nice to be
+able to vertically align the chorus midway between the staves.
+
+6. It would be nice to be able to put vertical brackets either side of a
+repeated section with different words for each repeat.
+
+. * Give # lines in linebreaking.
+. * arrows on slurs.
+. * rewrite context defs using Scheme
+. * \selectmusic to cut pieces from music.
+. * TODO: merge atom & molecule; make tree from molecule.
+. * Align_element::padding ?
+. * typo checks on property names?
+. * use streambufs and iostream