Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Show melisma line after first underscore #1636

Merged
merged 1 commit into from Jan 19, 2015
Merged

Show melisma line after first underscore #1636

merged 1 commit into from Jan 19, 2015

Conversation

mgavioli
Copy link
Contributor

While entering a melisma, the first underscore has no specific visual effect.

This patch displays a short melisma after the first underscore, by setting a conventional non-0 lyrics _ticks value.

Note: If no second underscore is entered (edit mode is exited or a new syllable is entered in the following chord), the short melisma is left behind as a left-over. It may be the case to reset to 0 the melisma ticks (= no melisma at all) for instance when the score is saved, or read back.

@MarcSabatella
Copy link
Contributor

What would you think about implementing what we mentioned on IRC - making it so hitting Space on an existing lyric with melisma deleted it? Presumably just a matter of setting ticks to 0 in lyricsTab. I guess the question in my mind is whether this is "expected". I could see an argument for saying space should be a non-destructive navigation command like it is for chord symbols. But we already clear out the hyphens.

@mgavioli
Copy link
Contributor Author

As far as I can tell it is already so, at least for the majority of the scores I tried this trick on and, in any case, it was intended to be so. There are a few for which this does not seem to work; I have not found a pattern for this, but I'm confident I (or we) will.

@MarcSabatella
Copy link
Contributor

Really? It never works for me. It works for hyphens, but not underscores. Maybe we are talking about two different things? If I have a syllable with a melisma line, then double click that syllable and press space, the line remains. And looking at the code in lyricsTab(), I can see why - at no point is there any code to reset the oldLyrics tick count to 0. We would need an uncoChangeProperty to set LYRICS_TICKS to 0 right at the same place we currently change the syllabic propert of the old & new lyric.

@mgavioli
Copy link
Contributor Author

Well, it mostly works for me (using current or yesterday master): lyrics ticks are set to 0 by the endEdit(); statement near the beginning of ScoreView::lyricsTab().

So far, the examples where it works are in non-first staff (rather common in polyphony), while the examples where it does not works are in first (or only) staff; I cannot say if this is relevant or just a chance. Still investigating...

EDIT: well, the difference is if the syllable with melisma has a syllabic dash before or not (it is the last of a multi-syllable word or not; the first case being rather common in Italian); in the first case ScoreView::lyricsEndEdit() (called by ``endEdit()`) reset the lyrics ticks to 0, otherwise it doesn't. I do not understand the reason of it, but so it is.

@MarcSabatella
Copy link
Contributor

Hah, thanks, knowing the it actually happens in endEdit (or more specifically lyricsEndEdit() just led to me to the answer. Last three lines ScoreView::lyricsEndEdit - ticks is only set to 0 if the syllable is Syllabic::END! So, only the last syllable of a multi-syllable word, not a single syllable word.

@mgavioli
Copy link
Contributor Author

I have the code ready for this fix. About to push it, unless you want to do it.

@MarcSabatella
Copy link
Contributor

Nah, do it!

@Jojo-Schmitz
Copy link
Contributor

Needs a rebase...

While entering a melisma, the first underscore has no specific visual effect.

This patch displays a short melisma after the first underscore, by setting a conventional non-0 lyrics `_ticks` value.

Note: If no second underscore is entered (edit mode is exited or a new syllable is entered in the following chord), the short melisma is left behind as a left-over. It may be the case to reset to 0 the melisma ticks (= no melisma at all) for instance when the score is saved, or read back.
@mgavioli
Copy link
Contributor Author

@Jojo-Schmitz @wschweer : rebased (rather trivial: I wonder why git couldn't do it by itself...)

wschweer added a commit that referenced this pull request Jan 19, 2015
…score

Show melisma line after first underscore
@wschweer wschweer merged commit cfe92e4 into musescore:master Jan 19, 2015
@mgavioli mgavioli deleted the show_melisma_after_first_underscore branch January 20, 2015 00:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants