As far as I understand the closed issue 5746 should fix the problem musicxml2ly generating the note name "bes" instead of "heses" with --language=deutsch.
In fact the problem is not fixed in the actual git repository. See my attached mxl-file and the ly output of musicxml2ly --language=deutsch --nd --nrp --npl xml_test.mxl which still contains "bes". On 2/11/20 5:22 PM, David Kastrup wrote: > Torsten Hämmerle <[email protected]> writes: > >> In any case, the current musicxml2ly problem is about heses. And the heses >> note name definition in LilyPond (scm/define-note-names.scm) is correct and >> should not be changed. >> musicxml2ly must not produce a German "bes", because this clearly should be >> "heses" >> >> Here's the coding for German pitch names: >> >> >> Replacing generic "hes" by "b" is OK, but, that way, generic "heses" will >> become "bes", wich is clearly wrong and will lead to the error observed. >> >> So obviously, it's a problem with *python substring replacement*. >> I don't know much about python, but replace() doesn't seem to work out here. >> Probably only a direct string comparison will help here, perhaps someone >> knowledgeable has a more elegant solution. > > Well, > > Tracker issue: 5746 (https://sourceforge.net/p/testlilyissues/issues/5746/) > Rietveld issue: 547610043 (https://codereview.appspot.com/547610043) > Issue description: > Fix and align musicxml and input language "deutsch" Has commits: > In \language "deutsch" use b only to replace hes The quartertone > names should all be derived from h instead of b since beh was being > used inconsistently. Fix deutsch language of musicxml2py Use b > only for hes and nothing else. Also use asas and asah instead of > ases and aseh. > > should fix either. It doesn't use patterns for hes. Somewhat artless. > So what. >
xml_test.mxl
Description: application/vnd.recordare.musicxml
\version "2.18.2"
% automatically converted by musicxml2ly from xml_test.mxl
%% additional definitions required by the score:
\language "deutsch"
\header {
encodingsoftware = "MuseScore 3.4.2"
encodingdate = "2020-02-16"
composer = Composer
title = Title
}
\layout {
\context { \Score
skipBars = ##t
autoBeaming = ##f
}
}
PartPOneVoiceOne = \relative h' {
\clef "treble" \key c \major \numericTimeSignature\time 4/4 h4 b4
bes4 his4 | % 2
R1*31 \bar "|."
}
% The score definition
\score {
<<
\new Staff <<
\set Staff.instrumentName = "Piano"
\set Staff.shortInstrumentName = "Pno."
\context Staff <<
\context Voice = "PartPOneVoiceOne" { \PartPOneVoiceOne }
>>
>>
>>
\layout {}
% To create MIDI output, uncomment the following line:
% \midi {}
}
_______________________________________________ bug-lilypond mailing list [email protected] https://lists.gnu.org/mailman/listinfo/bug-lilypond
