humdrum-tools / verovio-humdrum-viewer

Verovio Humdrum Viewer
http://verovio.humdrum.org
37 stars 9 forks source link

Double accidental encoding in **mens #847

Closed craigsapp closed 1 year ago

craigsapp commented 1 year ago

In **mens it would be useful to allow double accidental display on notes that are natural in modern notation but are sharp or flat in mensural notation (since there was no natural sign). Example:

Screenshot 2023-09-26 at 23 59 54

Propose to show regular and editorial accidentals on the same note using a double editorial accidental marker:

**mens
*clefC3
*met(C|)
*k[b-]
=-
sic
siBnzz
siBn
sic
*-
!!!RDF**mens: z = editorial accidental
Click to view target MEI conversion for above Humdrum data ```xml </titleStmt> <pubStmt /> </fileDesc> <encodingDesc> <appInfo> <application isodate="2023-09-26T23:58:50" version="4.1.0-dev-26c8144-dirty"> <name>Verovio</name> <p>Transcoded from Humdrum</p> </application> </appInfo> </encodingDesc> <workList> <work> <title /> </work> </workList> </meiHead> <music> <body> <mdiv xml:id="me50lap"> <score xml:id="s81rtw0"> <scoreDef xml:id="s1qktqwa" midi.bpm="200.000000"> <staffGrp xml:id="sjn1yj9"> <staffDef xml:id="staffdef-L1F1" n="1" notationtype="mensural.white" lines="5"> <clef xml:id="clef-L2F1" shape="C" line="3" /> <keySig xml:id="keysig-L4F1" sig="1f" /> </staffDef> </staffGrp> </scoreDef> <section xml:id="section-L1F1"> <staff xml:id="staff-L1F1" n="1"> <layer xml:id="layer-L1F1N1" n="1"> <mensur xml:id="mensur-L3F1" prolatio="2" tempus="2" sign="C" slash="1" /> <note xml:id="note-L6F1" dur="semibrevis" oct="4" pname="c" /> <note xml:id="note-L7F1" dur="semibrevis" oct="3" pname="b"> <accid xml:id="accid-L7F1" accid="n" func="edit" glyph.auth="smufl" glyph.name="accidentalNatural" /> <accid xml:id="accid-L8F1" accid="s" accid.ges="s" /> </note> <note xml:id="note-L9F1" dur="semibrevis" oct="4" pname="c" /> </layer> </staff> </section> </score> </mdiv> </body> </music> </mei> ``` </details> <p>The B note has two accidentals: a modern natural as an editorial accidental and a visual sharp:</p> <pre><code class="language-xml"> <accid xml:id="accid-L7F1" accid="n" func="edit" glyph.auth="smufl" glyph.name="accidentalNatural" /> <accid xml:id="accid-L8F1" accid="s" accid.ges="n" /></code></pre> </div> </div> <div class="comment"> <div class="user"> <a rel="noreferrer nofollow" target="_blank" href="https://github.com/craigsapp"><img src="https://avatars.githubusercontent.com/u/3487289?v=4" />craigsapp</a> commented <strong> 1 year ago</strong> </div> <div class="markdown-body"> <p>Implemented with commit <a href="https://github.com/rism-digital/verovio/commit/ae5513696f4f52d22bf33b9f1cf75052d8c1b19f">https://github.com/rism-digital/verovio/commit/ae5513696f4f52d22bf33b9f1cf75052d8c1b19f</a></p> <p>Example:</p> <img width="742" alt="Screenshot 2023-09-27 at 01 10 27" src="https://github.com/humdrum-tools/verovio-humdrum-viewer/assets/3487289/5a12fa1b-54fe-4aef-95fd-2b3406e1cc8d"> <pre><code class="language-tsv">**mens **text *clefC3 * *met(C|) * *k[b-] * =- =- sic . siBn n siBnz nz siBnzz nzz sic . *- *- !!!RDF**mens: z = editorial accidental</code></pre> <p>MEI conversion:</p> <pre><code class="language-xml"><?xml version="1.0" encoding="UTF-8"?> <?xml-model href="https://music-encoding.org/schema/5.0/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?> <?xml-model href="https://music-encoding.org/schema/5.0/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?> <mei xmlns="http://www.music-encoding.org/ns/mei" meiversion="5.0"> <meiHead> <fileDesc> <titleStmt> <title /> </titleStmt> <pubStmt /> </fileDesc> <encodingDesc> <appInfo> <application isodate="2023-09-27T01:07:46" version="4.1.0-dev-26c8144-dirty"> <name>Verovio</name> <p>Transcoded from Humdrum</p> </application> </appInfo> </encodingDesc> <workList> <work> <title /> </work> </workList> </meiHead> <music> <body> <mdiv xml:id="m1kp4w8y"> <score xml:id="s1fn2m68"> <scoreDef xml:id="syv4373" midi.bpm="200.000000"> <staffGrp xml:id="skhhoks"> <staffDef xml:id="staffdef-L1F1" n="1" notationtype="mensural.white" lines="5"> <clef xml:id="clef-L2F1" shape="C" line="3" /> <keySig xml:id="keysig-L4F1" sig="1f" /> </staffDef> </staffGrp> </scoreDef> <section xml:id="section-L1F1"> <staff xml:id="staff-L1F1" n="1"> <layer xml:id="layer-L1F1N1" n="1"> <mensur xml:id="mensur-L3F1" prolatio="2" tempus="2" sign="C" slash="1" /> <note xml:id="note-L6F1" dur="semibrevis" oct="4" pname="c" /> <note xml:id="note-L7F1" dur="semibrevis" oct="3" pname="b"> <accid xml:id="accid-L7F1" accid="s" accid.ges="n" /> <verse xml:id="verse-L7F2" n="1"> <syl xml:id="syl-L7F2"> n</syl> </verse> </note> <note xml:id="note-L8F1" dur="semibrevis" oct="3" pname="b"> <accid xml:id="accid-L8F1" accid="n" func="edit" glyph.auth="smufl" glyph.name="accidentalNatural" /> <verse xml:id="verse-L8F2" n="1"> <syl xml:id="syl-L8F2">nz</syl> </verse> </note> <note xml:id="note-L9F1" dur="semibrevis" oct="3" pname="b"> <accid xml:id="accid-L9F1" accid="n" func="edit" glyph.auth="smufl" glyph.name="accidentalNatural" /> <accid xml:id="a1ywiahm" accid="s" accid.ges="n" /> <verse xml:id="verse-L9F2" n="1"> <syl xml:id="syl-L9F2">nzz</syl> </verse> </note> <note xml:id="note-L10F1" dur="semibrevis" oct="4" pname="c" /> </layer> </staff> </section> </score> </mdiv> </body> </music> </mei></code></pre> </div> </div> <div class="comment"> <div class="user"> <a rel="noreferrer nofollow" target="_blank" href="https://github.com/craigsapp"><img src="https://avatars.githubusercontent.com/u/3487289?v=4" />craigsapp</a> commented <strong> 1 year ago</strong> </div> <div class="markdown-body"> <p>Flat example:</p> <img width="737" alt="Screenshot 2023-09-27 at 01 15 13" src="https://github.com/humdrum-tools/verovio-humdrum-viewer/assets/3487289/0dc8549d-f0ed-496c-9688-1960c6e4abc9"> <pre><code class="language-tsv">**mens **text *clefC1 * *met(C|) * *k[f#] * =- =- sig . sifn n sifnz nz sifnzz nzz sig . *- *- !!!RDF**mens: z = editorial accidental</code></pre> <p>MEI conversion:</p> <pre><code class="language-tsv"><?xml version="1.0" encoding="UTF-8"?> <?xml-model href="https://music-encoding.org/schema/5.0/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?> <?xml-model href="https://music-encoding.org/schema/5.0/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?> <mei xmlns="http://www.music-encoding.org/ns/mei" meiversion="5.0"> <meiHead> <fileDesc> <titleStmt> <title /> </titleStmt> <pubStmt /> </fileDesc> <encodingDesc> <appInfo> <application isodate="2023-09-27T01:15:56" version="4.1.0-dev-26c8144-dirty"> <name>Verovio</name> <p>Transcoded from Humdrum</p> </application> </appInfo> </encodingDesc> <workList> <work> <title /> </work> </workList> </meiHead> <music> <body> <mdiv xml:id="m1c4z8ji"> <score xml:id="s1q90abw"> <scoreDef xml:id="seb0wg" midi.bpm="200.000000"> <staffGrp xml:id="sde7t46"> <staffDef xml:id="staffdef-L1F1" n="1" notationtype="mensural.white" lines="5"> <clef xml:id="clef-L2F1" shape="C" line="1" /> <keySig xml:id="keysig-L4F1" sig="1s" /> </staffDef> </staffGrp> </scoreDef> <section xml:id="section-L1F1"> <staff xml:id="staff-L1F1" n="1"> <layer xml:id="layer-L1F1N1" n="1"> <mensur xml:id="mensur-L3F1" prolatio="2" tempus="2" sign="C" slash="1" /> <note xml:id="note-L6F1" dur="semibrevis" oct="4" pname="g" /> <note xml:id="note-L7F1" dur="semibrevis" oct="4" pname="f"> <accid xml:id="accid-L7F1" accid="f" accid.ges="n" /> <verse xml:id="verse-L7F2" n="1"> <syl xml:id="syl-L7F2"> n</syl> </verse> </note> <note xml:id="note-L8F1" dur="semibrevis" oct="4" pname="f"> <accid xml:id="accid-L8F1" accid="n" func="edit" glyph.auth="smufl" glyph.name="accidentalNatural" /> <verse xml:id="verse-L8F2" n="1"> <syl xml:id="syl-L8F2">nz</syl> </verse> </note> <note xml:id="note-L9F1" dur="semibrevis" oct="4" pname="f"> <accid xml:id="accid-L9F1" accid="n" func="edit" glyph.auth="smufl" glyph.name="accidentalNatural" /> <accid xml:id="a1jc08tk" accid="f" accid.ges="n" /> <verse xml:id="verse-L9F2" n="1"> <syl xml:id="syl-L9F2">nzz</syl> </verse> </note> <note xml:id="note-L10F1" dur="semibrevis" oct="4" pname="g" /> </layer> </staff> </section> </score> </mdiv> </body> </music> </mei></code></pre> </div> </div> <div class="page-bar-simple"> </div> <div class="footer"> <ul class="body"> <li>© <script> document.write(new Date().getFullYear()) </script> Githubissues.</li> <li>Githubissues is a development platform for aggregating issues.</li> </ul> </div> <script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.min.js"></script> <script src="/githubissues/assets/js.js"></script> <script src="/githubissues/assets/markdown.js"></script> <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.4.0/build/highlight.min.js"></script> <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.4.0/build/languages/go.min.js"></script> <script> hljs.highlightAll(); </script> </body> </html>