1 Features you cannot find in the doco as working, should be mentioned her.
3 This is an assorted collection of stuff that will be done, might be
4 done, or is an idea that I want to think about
6 Most of the items are marked in the code as well, with full explanation.
7 grep for TODO and ugh/ugr
12 * faq about mi2mu midi t1.
16 * use Hungarian throughout code
18 * decent TeX page layout
20 * per-pstaff item-widths [JCN]
24 * a Hands on tutorial [HKN]
28 * Output class, handles : (smallish)
29 - help text /(c) notice?
31 - warning /errors/progress
32 - abort on error/warning; exit status
33 - quiet/ignore-version options
36 * elaborate Staff_side baseclass:
41 * Output an output format independent (ofi) typeset file; and
42 make ofi2 TeX, MusixTex, PostScript, Ascii... interpreters. (difficult)
43 - poor man's ascii output possible?
44 - MusixTeX output possible? (would have to be done before break calc.)
46 - PostScript output (esp. Beams, Slurs, etc)
48 * TeX spanners , use texbeam.cc as an example (smallish)
53 * Rewrite Beam and Rhythmic_grouping (hairy)
56 - doc on Rhythmic_grouping
59 - abbreviations [c2 c2]1/2
60 - separate visual from rhythmic info
62 * Redo MIDI output to use Registers: (Difficult)
63 - remember more horizontal info than melodics:
70 - rename mf fonts to avoid conflicts with musixtex
72 - use own fonts/update musixtex fonts/find older (c)-less fonts
73 - hack up mf sources for decent spacing info (and then
74 read AFM/TFM directly, for text too)
77 * Duration -> Musical_duration, typedef Rational Duration?
79 **********************
82 \bar || ook dunne streepjes? Sluit de balk niet af! (soms met de
83 ruimte van een hele maat erachter (bij unmatching staffs)
85 noten staan vaak te dicht aan de rechterkant van de maatstreep.
87 optie om nummers/markers boven maatstrepen te zetten
89 tekst staat erg ver van notenbalken af
91 waarom geen ; achter dingen in \paper? (\textwidth 180\mm)
92 (sowieso: wanneer wel en geen ; ?)
94 Onduidelijk wanneer wel en geen \ voor een woord. Maak liever
97 implementeren versieringen door duration *0 ofzo? (geeft nu assertion,
100 Triolen enzo: het zou handig zijn als je het cijfer "3" ook _tussen_
101 twee noten kon plaatsen. Dat is bijvoorbeeld nodig in
105 \bar "||" \meter 6/8; op het eind van de regel staat door elkaar
111 * mi2mu nonexist.midi
113 * staccato dot positions.
115 * \meter 4/4; c1. doesn't gen bar.
119 * redo timing stuff <-> pulk to allow \meter 2/4; e2. to work
124 * help-lines for rests
126 * lilypond - -> crash
128 * chlapik balk ruimte
130 * standchen triool beam up/down
138 FURTHER FOR ORCHESTRAL SCORE:
142 * barnumbers, markers
144 * abbreviations c4=16
146 * doublebar "||", finishbar "|||" (or "||." ?)
150 * relative mode for pitch entering
154 * configure pitch_byte
160 * rest name configurable
164 * subtime with Subtle_reqs
168 * --fast/--draft: leave out constraints
170 * write Dynamic_line (to group dynamics horizontally)
172 * write Rest_collision
174 * use Real for y positions.
176 * shared lib on Solaris too.
178 * bugreport to doc++ devel: struct not in class hier; public
181 * cleanup lily-proto.hh and proto.hh
183 * half-sharps, half-flats
189 * unix style paths for LILYINCLUDE env
191 * indentable stream as baseclass for TeX stream, lily stream, Dstream.
193 * handle EOF graciously in error messages.
195 * caching Item/spanner dimensions.
199 * centered whole rest
201 * caching breakpoints / saving them.
203 * use dstream feature in mi2mu
205 * qtor, btor, mtor-> tor( QUIET_ver ), tor( DEBUG_ver ), etc.
206 * use tors feature in lily
208 * declare notenametab?
210 * do conventional keys (C G A, F B E, a e fis, d as des, etc ),
211 besides lists of flats/sharps
213 * midi esp.: use I32 iso int where 32 bits are needed (or assumed...)
217 * read from mmap directly: bugreport to flex developers->
218 yy_scan_buffer in C++..
220 * binsearch/hash for identifiers
222 * stafftypes: voice names/ instrument names.
224 * Decent TeX titledefs (\tempo, \metron, etc. )
228 * textspanner: center position
234 * caching of Register_group_register hierarchies.
236 * use (char *) iso. String for communication between lexer and
239 * configure idealspacing: arithmetic spacing
241 * LilyPond .deb. Other packaging methods?
249 * config of TeX macros
257 * auxilliary file for caching info.
259 * Reg_configure_request
261 * bring Collision::do_pre_processing to haircutter
263 * slur parts as a script
267 * put scripts on bars
271 * Junk Staff_column, and find the requests while walking the Voices.?
273 * better beamslope calculation: QLP for beams?
275 * implement better breaking algorithm
279 * clean solution for staffsize in items.
281 * merge key{item} & localkey{item}?
293 * scoping in Lexer: do general id- assignments in mudela.
297 * create libmudela, or liblily_frontend
299 * move MIDI stuff (including Quantization) to a ANSI C libmidi library.
301 * use an embedded language: Python
307 * y -dims in internote?
309 * merge Atom and Symbol?
311 * merge common code of Item, Atom/Molecule
312 * Spacing_request for manually adjusting spacing
314 * Staff_group, Score_request_register.
316 * Meters/bars should be aligned, which is difficult if
317 we get different keychanges in different staffs.
319 * caching breakpoints
325 * used fixedpoint arithmetic for min. energy.
327 * default convert mudela-file.ly -> mudela-file.tex
328 - rename {standchen,scsii-menuetto,...}.tex
330 * (related with above) --simple-mudela option for lily,
331 to lily input files with one-voice simple mudela
334 * stack scripts in chords:
335 % fingering: footing:
336 < a-4 c-2 g-1 > < c-\ltoe e-\lheel >
338 * parameterised scripts for fingering and footing:
340 % toe to bheel four to five
346 (where "to" is a tiny bow)
348 * move towards incremental algorithms.