X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=TODO;h=a08d5cbf25dcc2948a721f9716f457485a113fb4;hb=419c0d7734351ed1c89a985867e9127f5af46f90;hp=dcef3fa46feecd904b6ba8f4edc32605ff4f33da;hpb=301b0906a670e7f7762df325f65d58d8c85f4067;p=lilypond.git diff --git a/TODO b/TODO index dcef3fa46f..a08d5cbf25 100644 --- a/TODO +++ b/TODO @@ -9,23 +9,43 @@ Most of the items are marked in the code as well Grep -i for TODO, FIXME and ugh/ugr/urg. .* TODO -. * don't take Dimension_cache::offset in Dimension_cache::extent -. * Break_req handling is silly (break_forbid () + \break fucks up.) -. * redo all --help messages. -. * HaraKiriStaffContext removes bar lines and doesn't remove - staff margin text on removed staff lines. +. * use hash tabs iso. alist_ for elt property? +. * agressive type-checking for SCM stuff. +. * use "staff-space" and "half-space" iso interline, + staff_line_leading () etc. +. * why does Voice.beamQuantisation = #'none not work? + overriding in ly/params.ly works fine + +. * TODO^2: +. * make a TODO.texi, like http://www.gnu.org/software/guile/ideas.html +. * make this file understandable for 3rd parties. +. * \accepts -> \acceptedby +. * context in embedded SCM errors. +. * eradicate all VIRTUAL_COPY_CONS () macros ; use indexed creation, + eg. + + ctor_dict["Score_element"]->clone_func (orig); + ctor_dict["Score_element"]->create_func (); +. * acc at tied note after linebreak. +. * fix font-naming and selecting +. * chord tonic: placement of accidental C#, Cb (from scm and C++) +. * note head on stem err msg in dutch. +. * why need to run -C mf twice? +. * here's no difference at all in output. When either is jacked up to 7.0, +everything works and matches up; when either is set just a bit above the +default 5.0 (5.4 is what I was hoping to use), stems miss note heads. So +it's some sort of a numerical (truncation/roundoff) problem. +John +. * fix #'margin-shape; setting indent to 0 with \shape fails +. * Fixed size staff/system heights; +. * ly2dvi : don't repeat opus if same. +. * hara kiri _8 clef. +. * junk -M ? +. * mudela-book doco +. * fix or replace feta-accordion.mf +. * script engraver +. * bracket pdf hack . * Mondrup: - -- I would like to avoid that ties across line breaks run _through_ the -clef on the new line - -- I would like the possibility of forcing clef- and key- changes to be -printed _after_ the new bar line - -- I would like an option to define the number of systems on which the -score must be distributed. As it is now it seems that I may only -influence that indirectly through the gourlay_maxmeasures property. - - if I change the property minVerticalAlign in a multi staff score with lyrics the change affects the lyrics too. I would like the change to _only_ affect staves. @@ -35,7 +55,7 @@ _only_ affect staves. - for one of my test scores containing a modern edition of an early 17'th century composition I have a leading measure containing the orginal clefs and note values of the original composition. I use the -"harmonic" and "diamond" note head styles for that measure and would +a"harmonic" and "diamond" note head styles for that measure and would like to have the stems of these notes _centered_ on the notehead as in the mensural music notation. @@ -43,50 +63,19 @@ the mensural music notation. bar line fully drawn across the staves and after that keep to the ChoirStaff bar line types in the rest of the scores -- I would like to be able to define invisible melismatic slurs in order -to avoid printing slurs conflicting with an original ms of printing. Of -course I can achieve that by just inserting empty syllables in the -lyrics. But this facility implemented in the MusiXTeX preprocessor M-tx -is nice so ... - -- if I explicitly beam notes in a staff with auto beaming disabled I -would like to have these beams also to be melismatic. - -- do I need to get warnings on 'No one to print a repeat brace' when I -issue a '\repeat fold 2 \alternative' statement with an empty leading -text item in a \lyrics context in order to achieve multiple lyrics lines -in a _section_ of a score ? . * make all Feta (including dynamics) available to the user in textual scripts. Examples: "D.S. al \coda", "\mf espress.". - -. * ? -Q, --find-old-relative show all changes in relative syntax -What's old about absolute to relative conversion? Could maybe use for -abc2ly, midi2ly? +. * Write script that uses --find-old-relative to do auto relativization. +. * Junk shared cruft (duration, moment) in lib/ + .* Cleanups needed -. * \$ and $ identifier syntax in examples. +. * \$ and $ identifier syntax in examples. . * Junk ghost positioning objects eg, Script leans on Staffside leans on Staff. -. * bracket ps code. -. * mudela-book -. * center option (??) -. * make mudela-book understand usepackage{geometry} -. * check that linewidth set in \paper is not wider than actual linewidth? -. * the following fails because mudelabook doesn't care that the - last } after \end{mudela} finishes the marginpar: - \marginpar{ - \begin{mudela} - c d e f g - \end{mudela}} -. * force-verbatim is maybe not that useful since latex fails with footnotes, - marginpars and others -""" . * Key_engraver, Local_key_item . * Think of comprehensive solution for "if (grace_b == self_grace_b_)" . * String[String.length] doesn't trap. -. * y dimension units: staffspace vs. Point -. * Beam -. * Stem . * Rhythmic_column and interaction stem/rhythmic_column/note_head/dots. . * Duration . * clef engraver @@ -95,29 +84,27 @@ abc2ly, midi2ly? . * junk Music_iterator::first_b_ . * Bezier -.* BUGS -. * [c8. c16 c16 c16] in 6/8 timesig. +.* ACCIDENTALS +. * half-sharps, half-flats +. * adaptive accidental spacing. +. * accidentals closer to note head + + +.* Beams +. * [c8. c16 c16 c16] in 6/8 timesig. +. * Rewrite Stem, Beam (hairy) +. * general shaving on Beam and Stem +. * use plet grouping +. * beams over bars +. * Rests and beams don't work too well together. Example: + [ r8 g''16 des'] [r8 c16 a] +. * autoBeamMelisma: if I explicitly beam notes in a staff with auto +beaming disabled I would like to have these beams also to be +melismatic. +. * The stemLength property should affect also beamed stems. . * staffside spanner (crescendo!) along with staffswitch. -. * --- 2, margin notes don't work correctly for the pianostaff (in the -following example, i expect the "piano" string to be centered -vertically between the two staves): - -\score { - \notes \context PianoStaff < - \property PianoStaff.instrument = "Piano" - \context Staff = treble { - a b c - } - \context Staff = bass { - \clef bass; - a, b, c, - } - > - \paper { - \translator { \StaffContext \consists "Staff_margin_engraver"; } - \translator { \PianoStaffContext \consists "Staff_margin_engraver"; } - } -} +. * * auto melismaBusy for beams. + . * > \context Staff < > {\voiceone''4. r8} @@ -128,25 +115,10 @@ vertically between the two staves): .* STUFF . * We need feta-din*.mf files for more sizes than 10. -. * -- It's clumsy to have to set Staff.instr = " " to get instrument name - on only the first line. - -- The syntax for chords looks clumsy with two different meanings of - '-' and different syntax for separating modifiers from the tonic - and from other modifiers. Why not use for example ':' between - tonic and modifier and between the different modifiers? - -- Rests and beams don't work too well together. Example: - [ r8 g''16 des'] [r8 c16 a] - -- The stemLength property should affect also beamed stems. - -. * align left edge of broken (de)cresc/slur/tie/tuplet/volta +. * align left edge of broken tuplet-spanner (have a test case?) . * fix dynamics decently, ie. use kerning & ligatures. . * key restorations & repeats . * paperXX.ly \quartwidth, font setting not up to date. (Should read from AFM?) -. * * auto melismaBusy for beams. . *In Caro Mio Ben, bar 8, there's a syllable that starts on a note, and ends on a pair of grace notes. Standard practice is to mark this with a slur starting on the main note and ending on the grace note, so a @@ -154,24 +126,18 @@ singer knows where to break the words. In bar 27, there's a crescendo that's supposed to start at the start of the grace notes and extend to the note after the grace notes. -. * 5. Sometimes lyrics extend past the right end of the staff. I guess that -this is a similar problem (if not another symptom of the same problem) as -one of the spacing bugs mentioned in the TODO. -. * 4. Lyrics and grace sections don't go too well together. - The words are aligned with the main note, not the start of the - grace note. This is usually wrong, but is sometimes right. -. * decimal point in \paper {} +. * 4. Lyrics and grace sections don't go too well together. + The words are aligned with the main note, not the start of the + grace note. This is usually wrong, but is sometimes right. . * tie-direction . * repeats and partial measures. . * rhythmic staff & accidentals. . * use melismaBusy in Lyric context to typeset melismata correctly. . * ly2dvi/lilypond logfile. -. * def stem dir. . * hang Item on Spanner . * do --safe for PS output? . * msgfmt -o check? . * collision of lyrics with span_bars. See star-spangled. -. * Auto_beam debugging output (waarom/wanneer heb jij die weggehaald?) . * 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 @@ -183,10 +149,8 @@ one of the spacing bugs mentioned in the TODO. be stacked vertically, avoiding collisions with the notes in all voices. -. * 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? @@ -200,7 +164,6 @@ one of the spacing bugs mentioned in the TODO. 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. . * deprecate hangOnClef. . * Abstraction for engravers: @@ -235,7 +198,6 @@ 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 @@ -245,12 +207,9 @@ repeated section with different words for each repeat. . * deps for ly2dvi . * TODO: merge atom & molecule; make tree from molecule. . * Align_element::padding ? -. * typo checks on property names? . * use streambufs and iostream - to provide IO handling for TeX stream, mudela stream, data-file. +to provide IO handling for TeX stream, mudela stream, data-file. . * seriously buffer TeX output (do profile of writing .5 mb TeX file.) -. * strip EXEs before installing -. * zip target for binary windows dist (JBR) . * fix partial measures in meaningful way. . * uniformise recent feta contributions. . * bigger and fatter 4/4 C @@ -267,7 +226,6 @@ repeated section with different words for each repeat. . * kpathsea? . * fix vertical alignment and stafflines . * declaring Performers -. * *.yo: fix pod manpage layout legacy . * text-items clash with stems/beams . * --include, -I option for ly2dvi (pass on to lily) . * fix placement of beam-less abbrev @@ -285,8 +243,6 @@ repeated section with different words for each repeat. . * split error/warning in error/warning/non_fatal_error . * add a Duration_convert member to Duration_iter to set parameters. Junk global duration settings. -. * en-,discouraged linebreaking: -. * handle DISALLOW < penalty > FORCE . * discourage breaking of slurs . * fix variable define/lookup parser global<->paper . * fix title/instrument placements; see input/test/title.ly @@ -294,22 +250,12 @@ repeated section with different words for each repeat. . * 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. -. * add full cello suites to web site (kom op, Maarten!) -. * rename 'staff_line_leading' (who is being lead where?) to -staff_space, interline; (or other meaningful name) and use throughout -lily - -[-> leading are the lead strips between the sticks (lines) of -typeface. ie. leading is vertical space --hwn] . * add mudela-book-doc source to webstie. -. * Rethink Time_description -\cadenza , \meter, should all be \properties . * fix singleStaffBracket . * rename . * partial -> anacrouse . * move paper vars into engraver properties . * add new glyphs to font.ly -. * check for groff / troff/ nroff et . * more intelligent file searching . * disable spaces in TeX stuff . * handle ^C for tmp/file creation. @@ -320,7 +266,7 @@ typeface. ie. leading is vertical space --hwn] touching it. . * put errorlevel in Input class . * junk nesting slurs -. * distinguish between unset and empty properties. + .* FONT . * the bracket is ugly (wings are too parabolic, should be more circular) @@ -356,17 +302,37 @@ touching it. do_one_file(String,String) [scores.cc:124] Reading 4 bytes from 0xefffeca8 on the stack. Address 0xefffeca8 is 728 bytes below frame pointer in function -. * GNU diff 2.7: diff -rN does not see a new directory with empty file +. * Array axeses; + + for (int i=0; i < loose_elems.size (); i++) + { + Score_element* elt = loose_elems[i]; + /* + with which axes do we have to meddle? + */ + int j =0; + Axis as [2]; + for (int a = X_AXIS; a < NO_AXES; ++a) + if (elt->parent_l (Axis (a)) == this) + as[j++] = Axis (a); + if (j == 1) + as[j++] = as[0]; + + axeses.push (as); + } + . * patch: don't touch timestamp if all patches fail. . * MetaPost: should not generate setgray for unfill -. * mfplain.ini not in tetex 0.9 + . * mf-to-table -> add space 'before ; in AFM output. (-> check AFM spec. Is this a bug in afm2tfm?) . * check out GCC signatures? . * glibc 2.0: f = fopen ("/dev/null", "r") assert (feof (f)) -. * tetex: mfplain.mem +. * tetex: mfplain.mem -> INSTALL +. * mfplain.ini not in tetex 0.9 -> INSTALL + .* PROJECTS . * Scripts: @@ -378,7 +344,6 @@ spec. Is this a bug in afm2tfm?) . * stack parameterised scripts for fingering and footing: . * convert-mudela: -. * automatically add a \version if not present. . * better parsing . * make smarter . * convert-mudela -e empty.ly @@ -392,7 +357,6 @@ spec. Is this a bug in afm2tfm?) . * use properties for: . * default tempo. -. * cadenza mode? . * page handling: . * PS output @@ -418,6 +382,7 @@ spec. Is this a bug in afm2tfm?) . * \header . * output header info to MIDI too. +. * dump \header into easily parsable format. . * a musical dictionary. See Documentation/vocabulary-*, other languages: @@ -426,7 +391,6 @@ languages: . * german . * dutch . * swedish - .. ? . * chords . * guitar chords (fret diagrams) @@ -442,8 +406,7 @@ languages: . * input converters . * NIFF? -. * ABC? -. * SMDL? +. * musedata . * add to MIDI output: . * sharp / flat on trills (in MIDI ??) @@ -484,57 +447,25 @@ hesitate to ask. . * etc. -. * Output class, handles : (smallish) -. * help text /(c) notice? -. * version line -. * warning /errors/progress -. * abort on error/warning; exit status -. * quiet/ignore-version options -. * logfile output +. * logfile output? . * PS . * speed up PS code. . * PS lines to .eps files . * write custom prolog - -. * SGML input - -. * Documentation -. * remove links to non-free SW. -. * internal documentation -. * a general paper. -. * \properties -. * left/rightbeamcount -. * various other new properties. -. * introduction? -. * info? -. * LaTeX? -. * more manpages? -. * Doc (C) stuff of sheet music -. * a better format? SGML? TeX? Info? -. * a better tutorial +. * fix ps font switching . * more spanners (smallish) . * Glissando . * trill -. * Rewrite Stem, Beam (hairy) -. * general shaving on Beam and Stem -. * use plet grouping -. * beams over bars - -. * lines: -. * Ledger lines, should be separate item: Ledger_lines -. * set different line sizes / thicknesses -. * beam stem showthrough, inter beam sizes (french vs german style) - . * Collisions . * left/right note balls should be handled by Collision: < \multi 2; { \stem 1; } { } > . * Keys: . * merge key{item} & localkey{item}? -. * spacing, national styles? +. * spacing . * Support for TAB . * redo Notehead to allow digits as heads @@ -543,8 +474,6 @@ hesitate to ask. . * should adjust stemlength for flag number. . * breaking: -. * caching breakpoints -. * saving them . * specify number of lines .* INPUTLANGUAGE @@ -553,40 +482,20 @@ hesitate to ask. . * \translator -> ? . * fix \partial . * \bla {} vs \bla ; -. * mix engraver hacking with music ? . * \once\property KEY = VAL . * input property -. * abstract grammar. . * Figure out semicolons. . * 4 ? -. * Viola mode? - - @c c g e g - for - c g es g, - - @A c g e g - for - cis gis e gis . * configure pitch_byte . * rest name configurable .* SMALLISH PROJECTS -. * fix confusing naming in Engraver vs Engraver_group_engraver (context) - -. * A range for context errors (eg. mark both { and }. ) - . * lyric in staff (sharpsharp in staff, text below) . * write Dynamic_line (to group dynamics horizontally) -. * use Real for all y positions. - -. * half-sharps, half-flats - -. * adaptive accidental spacing. . * handle EOF graciously in error messages. @@ -603,15 +512,13 @@ hesitate to ask. (where "to" is a tiny bow) . * auxilliary file for caching info. + . * Text_crescendo .* IDEAS . * Output data structures of Mudela in XML/SGML. . * create libmudela, or liblily_frontend . * move MIDI stuff (including Quantization) to a ANSI C libmidi library. -. * Spacing_request for manually adjusting spacing -. * caching breakpoints -. * used fixedpoint arithmetic for min. energy. * OUTLINE SETUP .* .EMACS