]> git.donarmstrong.com Git - lilypond.git/blob - TODO
cf48d74f4c8c6f0d7c27a5f6c2fcc887a9aaab68
[lilypond.git] / TODO
1 IMPORTANT
2
3         * update 20 pt table
4
5         * decent TeX page layout
6
7         * per-pstaff item-widths
8
9         * script priority
10
11         * slur direction
12
13         * use own fonts/update musixtex fonts
14
15         * check return status in make_website
16
17 This is an assorted collection of stuff that will be done, might be
18 done, or is an idea that I want to think about
19
20 PARSER
21         * Duration-> Musical_duration, typedef Rational Duration?
22
23 BUGS
24
25         * hairpin width
26
27         * help-lines for rests
28
29         * [c8. c32 c32]
30
31         * cis ( | ) cis
32
33         * lilypond - -> crash
34
35 SEVERELY LACKING:
36
37         * SPEED!
38
39         * grace notes
40
41 FURTHER FOR ORCHESTRAL SCORE:
42
43         * multibar rests
44
45         * barnumbers, markers
46
47         * abbreviations c4=16
48
49 INPUTLANGUAGE
50
51         * relative mode for pitch entering
52
53         * configure pitch_byte
54
55         * special key.
56
57         * figured bass?
58
59         * rest name configurable
60
61         * Raw request syntax
62
63         * subtime with Subtle_reqs
64
65 SMALLISH PROJECTS
66
67         * use rest size in Collision
68
69         * bugreport to doc++ devel: struct not in class hier; public
70         virtual baseclasses
71
72         * cleanup lily-proto.hh and proto.hh
73
74         * half-sharps, half-flats
75         
76         * key undo
77
78         * unix style paths for LILYINCLUDE EN
79
80         * rpm package buildroot
81
82         * indentable stream as baseclass for TeX stream, lily stream, Dstream.
83
84         * caching Item/spanner dimensions.
85
86         * key transposition
87         
88         * caching breakpoints / saving them. 
89
90         * use dstream feature in mi2mu
91
92         * qtor, btor, mtor-> tor( QUIET_ver ), tor( DEBUG_ver ), etc.
93
94         - declare notenametab?
95
96         * use tors feature in lily
97
98         * do conventional keys (C G A, F B E, a e fis, d as des, etc ), 
99           besides lists of flats/sharps
100
101         * midi esp.: use I32 iso int where 32 bits are needed (or assumed...)
102
103         * fix Staff_elem::width() derivs to use offset_
104
105         * parshape
106
107         * read from mmap directly: bugreport to flex developers->
108         yy_scan_buffer in C++..
109
110         * binsearch/hash for identifiers
111
112         * stafftypes: voice names/ instrument names.
113
114         * Lookup::tex_glissando, Lookup::tex_bracket,  (use texbeam.cc as an
115         example.)
116
117         * Decent TeX titledefs (\tempo, \metron, etc. )
118
119         * command priority into enum
120
121         * C meter iso 4/4
122
123         * textspanner: center position
124
125         * script-spacing
126
127         * Brackets
128
129         * caching of Register_group_register hierarchies.
130
131         * use (char *) iso. String for communication between lexer and
132         parser.
133
134         * configure idealspacing: arithmetic
135
136         * add (good guess of) width to lyric items
137
138         * midi output: eat-up dynamic, key/meter/tempo changes, and
139 write them neatly
140
141         * LilyPond .deb
142
143 DOC
144
145         * beam generation.
146
147         * all errors
148
149         * a test suite
150
151 FUTURE
152
153         * tie a ~ b, move slur reg into voice-group.
154
155         * Reg_configure_request
156
157         * bring Collision::do_pre_processing to haircutter
158
159         * slurs per voicegroup.
160
161         * slur parts as a script
162         
163         * mixed fontsizes
164
165         * put scripts on bars
166
167         * glissando
168
169         * guitar chord
170
171         * Junk Staff_column, and find the requests while walking the Voices.?
172
173         * MIDI repeat: make lily understand repeats
174
175         * better beamslope calculation: QLP for beams?
176
177         * implement better breaking algorithm
178
179         * Text_crescendo
180
181         * clean solution for staffsize in items.
182
183         * merge key{item} & localkey{item}?
184
185         * revise calcideal
186
187         * volta
188
189         * piano staff
190
191         * vertical spanner
192
193 IDEAS
194
195         * scoping in Lexer?
196
197         * integrate Register/Midi stuff
198
199         * create libmudela, or liblily_frontend
200
201         * move MIDI stuff (including Quantization) to a ANSI C libmidi library.
202
203         * use an embedded language: scheme, lisp, S-lang, Perl, GUILE, ?
204         for : 
205                 - Items/Spanners
206                 - Registers
207
208         * y -dims in internote?
209
210         * hack up mf sources for decent spacing info (and then maybe
211         read TFM directly)
212
213         * merge Atom and Symbol?
214
215         * merge common code of Item, Atom/Molecule
216
217         * Spacing_request for manually adjusting spacing
218
219         * Staff_group, Score_request_register.
220
221         * SHIT: meters/bars should be aligned, which is difficult if
222         we get different keychanges in different staffs.
223
224         * Integrating (objectiveC) MusicKit with LilyPond
225                 
226         * MusixTeX output possible?
227
228         * PostScript output (esp. Beams, Slurs, etc)
229
230         * caching breakpoints
231
232         * use exceptions iso assert?
233
234         * #c <-> cis
235
236         * breath marks 
237
238         * used fixedpoint arithmetic for min. energy.