]> git.donarmstrong.com Git - lilypond.git/blob - TODO
release: 0.0.46.jcn1
[lilypond.git] / TODO
1 before 0.1
2         * update 20 pt table
3
4         * remove spurious/outdated comments in .ly, debug .ly
5
6         * pushgroup, popgroup.
7
8         * decent TeX page layout
9
10         * per-pstaff item-widths
11         
12         * remove unnecessary or confusing constructs from .ly
13
14 This is an assorted collection of stuff that will be done, might be
15 done, or is an idea that I want to think about
16
17 PARSER
18         * Duration-> Musical_duration, typedef Rational Duration?
19
20 MAKE-STUFF
21
22         * flower config: separate optiflags.
23
24         * do platform stuff: configure, header(s), targets, build (out?)
25         
26 BUGS
27
28         * key at clef change.
29
30         * key undo
31
32         * key at broken :||:
33
34         * [c8. c32 c32]
35
36         * cis ( | ) cis
37
38         * parser error handling (can you say Segfault?)
39
40 SEVERELY LACKING:
41
42         * grace notes
43
44 FURTHER FOR ORCHESTRAL SCORE:
45
46         * multibar rests
47
48         * barnumbers, markers
49
50         * abbreviations c4=16
51
52 INPUTLANGUAGE
53
54         * unix style paths for LILYINCLUDE ENV
55
56         * configure pitch_byte
57
58         * special key.
59
60         * figured bass?
61
62         * transposition
63
64         * rest name configurable
65
66         * Raw request syntax
67
68         * uniformate: \clef\violin, \clef"violin", \geometric 1.4, 
69           \meter{ 2/4 }, etc.
70
71         * subtime with Subtle_reqs
72
73 SMALLISH PROJECTS
74
75         * bugreport to doc++ devel: struct not in class hier; public
76         virtual baseclasses
77
78         * indentable stream for TeX stream, lily stream, Dstream.
79
80         * key transposition
81         
82         * caching breakpoints / saving them. 
83
84         * key { C } 
85         
86         * use dstream feature in mi2mu
87
88         * qtor, btor, mtor-> tor( QUIET_ver ), tor( DEBUG_ver ), etc.
89
90         * use tors feature in lily
91
92         * do conventional keys (C G A, F B E, a e fis, d as des, etc ), 
93           besides lists of flats/sharps
94
95         * midi esp.: use I32 iso int where 32 bits are needed (or assumed...)
96
97         * fix Staff_elem::width() derivs to use offset_
98
99         * parshape
100
101         * read from mmap directly: bugreport to flex developers->
102         yy_scan_buffer in C++..
103
104         * binsearch/hash for identifiers
105
106         * stafftypes: voice names/ instrument names.
107
108         * Lookup::tex_glissando, Lookup::tex_bracket,  (use texbeam.cc as an
109         example.)
110
111         * Decent TeX titledefs (\tempo, \metron, etc. )
112
113         * command priority into enum
114         
115         * C meter iso 4/4
116
117         * textspanner: center position
118
119         * script-spacing
120
121         * Brackets
122
123         * caching of Register_group_register hierarchies.
124
125         * use (char *) iso. String for communication between lexer and
126         parser.
127
128         * configure idealspacing: arithmetic
129
130         * collision Request_register.
131
132         * add (good guess of) width to lyric items
133
134         * midi output: eat-up dynamic, key/meter/tempo changes, and write them neatly
135
136         * LilyPond .deb
137
138 DOC
139
140         * beam generation.
141
142         * all errors
143
144         * a decent webpage
145
146         * a test suite
147
148 FUTURE
149
150         * slur parts as a script
151         
152         * multiple scripst.
153
154         * mixed  fontsizes
155
156         * put scripts on bars
157
158         * glissando
159
160         * guitar chord
161
162         * Junk Staff_column, and find the requests while walking the Voices.?
163
164         * better beamslope calculation: QLP for beams?
165
166         * implement better breaking algorithm
167
168         * Text_crescendo
169
170         * clean solution for staffsize in items.
171
172         * merge key{item} & localkey{item}?
173
174         * revise calcideal
175
176         * eentje/tweetje
177
178         * piano staff
179
180 IDEAS
181
182         * integrate Register/Midi stuff
183
184         * create libmudela, or liblily_frontend
185
186         * Horizontal_align_item, Vertical_align_item.
187
188         * move MIDI io to a ANSI C libmidi library.
189
190         * itemcolumns: Use dummy items.
191
192         * use an embedded language: scheme, lisp, S-lang, Perl, GUILE, ?
193
194         * y -dims in internote?
195
196         * hack up mf sources for decent spacing info (and then maybe
197         read TFM directly)
198
199         * merge Atom and Symbol?
200
201         * merge common code of Item, Atom/Molecule
202
203         * Spacing_request for manually adjusting spacing
204
205         * Staff_group, Score_request_register.
206
207         * SHIT: meters/bars should be aligned, which is difficult if
208         we get different keychanges in different staffs.
209
210         * Integrating (objectiveC) MusicKit with LilyPond
211         
212         * MusixTeX output possible?
213
214         * PostScript output (esp. Beams, Slurs, etc)
215
216         * caching breakpoints
217
218         * use exceptions iso assert?