lilypond-auto
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Lilypond-auto] Issue 3592 in lilypond: \lyrics depracated


From: lilypond
Subject: Re: [Lilypond-auto] Issue 3592 in lilypond: \lyrics depracated
Date: Thu, 03 Oct 2013 07:21:32 +0000


Comment #3 on issue 3592 by address@hidden: \lyrics depracated
http://code.google.com/p/lilypond/issues/detail?id=3592

_All_ of the mentioned shortcuts are conspicuously absent in the documentation, and their names are more basic than the respectice xxxmode names. It's a reasonable guess that they have been the sole way of writing things and were deprecated for some reason or other, but they would be more or less trivial to cover with a convert-ly rule, and that has not been done. Why not?

I see the following related commit messages:
commit 1008a110c1ce2ed3f195008fe904538188ddcf0b
Author: Trevor Daniels <address@hidden>
Date:   Sun Oct 10 11:02:05 2010 +0100

    Doc: NR 2.1 Vocal: remove one TODO and add four more :(

     - \lyrics is not documented anywhere else, and is
       deprecated

     - Issue 329 is marked Verified so is presumably fixed.
       Even if it isn't, we don't document bugs.  This example
       shows why not.  It takes years for the docs to catch up.

commit 1122f75e54e1a8e833f699cdab09e27157ea77a4
Author: Han-Wen Nienhuys <address@hidden>
Date:   Tue May 3 12:13:28 2005 +0000
[...]
    * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
    \defaultchild to all relevant contexts.  This fixes default voices
    for \drums { } . Most probably, this also fixes similar problems
    with ancient transcriptions getting CueVoices instead of the
    desired voices.

commit 235a33ac0d166718d2a6f07069a6ffb2c5acaf34
Author: Han-Wen Nienhuys <address@hidden>
Date:   Fri Feb 4 11:44:22 2005 +0000

    * lily/parser.yy (assignment_id): allow LYRICS_STRING as
    identifier definition too, so foo = \lyrics { ...   } bar = #1
    doesn't complain about "bar" being LYRICS_STRING.
[...]
commit 390b1b49a04f6826765153d44edc69911dc28ed0
Author: Han-Wen Nienhuys <address@hidden>
Date:   Fri Jul 30 11:59:13 2004 +0000

    * scripts/convert-ly.py (conv): remove \lyrics from \lyricsto.

    * ly/gregorian-init.ly (neumeDemoPaper): remove duplication from
    manual.

    * Documentation/user/tutorial.itely (Integrating text and music):
    remove \score and \notes from manual.

So in 2004, \lyrics was implied in \lyricsto. There was a \notes once, but only \notemode remains.

commit 6ac8e1b2d7640826ae251e040de5efbc36da68ab
Author: Han-Wen Nienhuys <address@hidden>
Date:   Thu Feb 5 00:02:49 2004 +0000
[...]
    * lily/parser.yy (simple_element): add \drums mode.
    (simple_element): remove \pitchnames , \chordmodifiers. Use
    variables to store this.

    * lily/lexer.ll (My_lily_lexer): remove support for \PITCHNAME
    outside \notes.

Then in python/convertrules.py we have the following rules _promoting_ the current meanings of \drums, \figures, \chords (but indeed not \lyrics).

@rule ((2, 3, 16), _ ('''\\foo -> \\foomode (for chords, notes, etc.)
fold \\new FooContext \\foomode into \\foo.'''))
def conv (str):
    str = re.sub (r'\\chords\b', r'\\chordmode', str)
    str = re.sub (r'\\lyrics\b', r'\\lyricmode', str)
    str = re.sub (r'\\figures\b', r'\\figuremode', str)
    str = re.sub (r'\\notes\b', r'\\notemode', str)
    str = re.sub (r'\\drums\b', r'\\drummode', str)
    str = re.sub (r'\\chordmode\s*\\new ChordNames', r'\\chords', str)
    str = re.sub (r'\\new ChordNames\s*\\chordmode', r'\\chords', str)
    str = re.sub (r'\\new FiguredBass\s*\\figuremode', r'\\figures', str)
    str = re.sub (r'\\figuremode\s*\new FiguredBass', r'\\figures', str)
    str = re.sub (r'\\new DrumStaff\s*\\drummode', r'\\drums', str)
    str = re.sub (r'\\drummode\s*\\new DrumStaff', r'\\drums', str)

    return str

None of them are, however, currently documented in NR. The release happened on
commit 4d817be53903dc1635eca838d5739ff3f965894d
Author: Han-Wen Nienhuys <address@hidden>
Date:   Sat Sep 11 19:29:34 2004 +0000

    release commit


So whatever deprecation has happened, it was rather stealthily, has no actual record in the commit messages apart from the (rather late) 2010 change by Trevor, and differentiates between several flavors: \notes is gone completely, and while \lyrics is indeed not actually produced by a conversion rule, the rest are, and are never converted to something different afterwards.

So yes, this is a rather mixed bag to deal with. Since it would be hard to explain why we would remove \lyrics and not \drums or \chords, and since the latter are actually produced and retained by a conversion rule, actively tackling this issue should require a more thorough approach.

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings



reply via email to

[Prev in Thread] Current Thread [Next in Thread]