Diteggiatura (riga $))¶
STATO: SPEC. Marcatore, ordine e grammatica del datapack sono definiti in
neumaRk_datapack.md§2.1, §3 e §3.bis.1. Cronologia inneumaRk_changelog.md, Novità della 0.6.
1. Definizione¶
La riga $) (Fingering) porta, posizione per posizione, le indicazioni di
diteggiatura per gli eventi della riga di note a cui è legata:
- il dito che preme (mano sinistra negli strumenti a corda, dito della mano al pianoforte), con la sostituzione di dito;
- la corda su cui suonare la nota;
- il dito che pizzica (mano destra, chitarra e affini);
- la posizione ferma: una parentesi che tiene la mano in una posizione per un tratto di note.
È un layer parallelo, come A): non altera ritmo, durate o flusso. È
puramente grafica: nessun effetto sul contenuto musicale né
sull'esecuzione.
$) | . 2A[ 3 1 3 4] 1B["C II" 3] |
N) | a8 b c d e f g a |
2. Posizione strutturale e binding¶
- Marcatore
$): largo 2 caratteri come gli altri marcatori di riga, è l'unico il cui primo carattere non è una lettera maiuscola. - Sempre esplicito. La deduzione implicita del tipo di riga
(
neumaRk_datapack.md§3.bis) non produce mai una riga di diteggiatura: senza il marcatore$)la riga è classificata come ogni altra riga senza marcatore. - Binding. Una
$)diteggia la prima riga di note sotto di sé (N),N+oN2); fra le due può stare l'A)del gruppo. Non si lega mai al ritmo accordale di unaC). - Ordine canonico delle righe:
M) C) $) A) N) D) L) F)
La diteggiatura sta sopra l'articolazione: nella resa l'articolazione è la più
vicina alla testa, la diteggiatura più fuori.
- Voce 2. Il gruppo N2 ha la propria $), indipendente da quella della
voce 1, come la propria A) (neumaRk_voices.md §3.1).
- $) orfana. Una $) senza una riga di note sotto di sé (prima viene
un'altra $), oppure il datapack finisce) non diteggia niente: è ignorata e
il parser emette W174 (W174.fingering_orphan).
$) | 1 2 3 4 |
A) | > . . ! |
N) | c4 d e f | // la $) salta l'A) e diteggia la N)
3. Allineamento count-based¶
La corrispondenza con gli eventi della riga di note è posizionale per
conteggio, da sinistra a destra, con le stesse regole di A)
(neumaRk_articulations.md §4):
- un token per evento;
- contano le pause, la nota d'arrivo di una legatura di valore
^e lo slash/(una corsa di slash è un solo slot); - non contano le grace note: stanno sulla loro nota principale;
- il prolungamento
.diN)(neumaRk_notes_and_durations.md§4) conta come slot; ma un token non vuoto in quella posizione si fonderebbe con la nota precedente, quindi è ignorato con W181 (W181.fingering_prolongation): la diteggiatura va scritta sulla nota stessa; - il token
.da solo = nessuna diteggiatura su quella nota; - se i token sono meno degli eventi, le note residue restano senza diteggiatura;
- se i token sono più degli eventi, gli extra sono ignorati e il parser
emette W131 (
W131.excess_fingering); - i
|della riga sono stanghette reali, come inA): separano le misure e una posizione ferma[ … | … ]li attraversa (§7).
Una diteggiatura su una pausa è ignorata con W181
(W181.fingering_rest).
4. Il token¶
4.1 Le tre parti¶
Un token si compone di fino a tre parti, sempre in quest'ordine:
| # | Parte | Alfabeto | Esempi |
|---|---|---|---|
| 1 | dito che preme | una cifra 0–5, oppure la sostituzione n-m |
3, 0, 4-1, 1-2 |
| 2 | corda | nome A–G seguito facoltativamente da b o #, oppure numero 1–9 |
A, Bb, F#, 3 |
| 3 | dito che pizzica | uno fra p i m a c (c = mignolo) |
p, m |
Le tre parti si scrivono attaccate, senza spazi. Esempi:
| Token | Significato |
|---|---|
1 |
dito 1 |
0A |
corda vuota (dito 0) sulla corda A |
2Bb |
dito 2 sulla corda B♭ |
4-5 |
sostituzione: dito 4, poi dito 5 sulla stessa nota |
1-2G |
sostituzione 1→2 sulla corda G |
13 |
dito 1 sulla corda 3 |
3m |
dito 3, pizzicata col medio |
0Ap |
corda A vuota, pizzicata col pollice |
Il dito è sempre una sola cifra (o una coppia n-m): in 13 la prima cifra è
il dito, la seconda la corda.
4.2 Il punto: nota saltata e parte vuota¶
Il carattere . ha due ruoli, distinti dalla sua posizione:
.da solo, come token intero, salta la nota: nessuna diteggiatura in quella posizione (come inA)eD))..attaccato ad altre parti tiene il posto di una parte vuota:
| Token | Significato |
|---|---|
.2 |
corda 2, senza dito (2 da solo sarebbe il dito 2) |
.G |
solo la corda G |
..m |
solo il dito che pizzica |
Poiché i tre alfabeti sono disgiunti, il . attaccato è obbligatorio solo
per la corda numerica senza dito (.3). Altrove è facoltativo: G = .G,
p = ..p. La forma di riferimento è la più corta.
4.3 Token malformato¶
Un token che non rispetta la grammatica di §4.1 (parte sconosciuta, parti fuori ordine) è ignorato per intero e il parser emette W180: la nota resta senza diteggiatura.
5. Accordi <…>¶
Sopra un accordo, il gruppo <…> dà un elemento per altezza, nell'ordine
sorgente dell'accordo nella riga N). Ogni elemento è un token di §4.1; un .
dentro il gruppo salta un'altezza.
$) | <1G 3B 0E> <1 . 4> |
N) | <c e g>2 <c e g> | // c: dito 1 corda G, e: 3 su B, g: corda E vuota
// poi c: 1, e: niente, g: 4
- Elementi meno delle altezze: le altezze restanti restano senza diteggiatura.
- Elementi più delle altezze: gli extra sono ignorati con W181
(
W181.fingering_chord_excess). - Un
<…>sopra una nota singola usa solo il primo elemento, con W181 (W181.fingering_not_chord). - Un token senza
<…>sopra un accordo diteggia la prima altezza dell'accordo.
6. Posizione delle dita: prefissi ' - +¶
Un token il cui primo carattere è ', - o + stabilisce dove si scrivono
i numeri del dito che preme:
| Prefisso | Posizione |
|---|---|
' |
sopra le teste |
- |
a sinistra delle teste |
+ |
a destra delle teste |
$) | -<1 3 5> '3 +2 4 |
N) | <c e g>4 d e f | // accordo a sinistra, d sopra, e ed f a destra
- La scelta vale da quella nota in poi, per quel rigo e quella voce, attraverso datapack e sistemi, fino al prossimo prefisso.
- Prima di ogni prefisso: sopra per le note singole, a sinistra per gli accordi.
- Un prefisso può stare su un token senza dito (
'.): stabilisce la posizione da quella nota, senza diteggiarla. - I prefissi riguardano solo il dito che preme: la corda sta sempre sotto, il dito che pizzica sempre sopra (§8).
7. Posizione ferma [ … ]¶
Una posizione ferma è uno span che indica un tratto suonato tenendo la mano
in una posizione. Segue le regole della staffa d'analisi { } di A)
(neumaRk_articulations.md §10.3):
[apre sulla nota del suo token,]chiude sulla nota del suo token.[e]si attaccano prima o dopo il resto del token:2A[,[1,4].- Nello stesso token,
][chiude e riapre (posizioni concatenate):
$) | [1 ][2 ] |
N) | c4 d e f | // una posizione da c a d, la successiva da d a e
- Etichetta facoltativa, subito dopo
[:1B["C II" 3]. È un container di text markup come l'etichetta della staffa d'analisi (neumaRk_text_markup.md§2.2). Senza etichetta, la parentesi è disegnata senza testo. - Attraversa stanghette e sistemi: lo span vive sul rigo logico
(
neumaRk_datapack.md§4.5), per voce. - Una posizione per volta: una seconda
[con una già aperta è ignorata insieme alla]che la chiude (W144,W144.position_open_overlap). ]orfana → W144 (W144.position_close_unmatched), ignorata.[e]sulla stessa nota ([]) → degenere, W144 (W144.position_degenerate), ignorata.- Posizione mai chiusa → W144 (
W144.position_unclosed_eol) e chiusura implicita sull'ultima nota del sistema in cui si apre. - Resa: parentesi quadra sopra il rigo, con i montanti in giù verso le note, come la staffa d'analisi; l'etichetta allineata a sinistra sopra l'apertura.
$) | 1 [ |
N) | c2 d |
$) | 2 ] |
N) | c2 d | // posizione ferma dalla d del primo sistema alla d del secondo
8. Resa¶
| Parte | Collocazione | Stile |
|---|---|---|
| dito che preme | sopra la nota (default), oppure a sinistra/destra per prefisso (§6) | numero; la sostituzione 4-5 come testo unico |
| corda | sotto la nota | nome o numero cerchiato |
| dito che pizzica | sopra la nota | corsivo |
| posizione ferma | sopra il rigo | parentesi quadra con montanti in giù |
Sopra un accordo, le dita sopra le teste si impilano nello stesso ordine verticale delle note. Con il gambo in su, la pila parte sopra la punta del gambo.
Il modo in cui un renderer disegna questi segni (glifi, corpi, distanze) non è normativo; lo sono il significato e la collocazione (sopra, sotto, a lato).
9. Diagnostica¶
| Codice | Caso | Effetto |
|---|---|---|
W131.excess_fingering |
token in eccesso rispetto agli eventi della misura | extra ignorati |
W144.position_open_overlap |
seconda [ con una posizione aperta |
ignorata con la sua ] |
W144.position_close_unmatched |
] senza apertura |
ignorata |
W144.position_degenerate |
[ e ] sulla stessa nota |
ignorata |
W144.position_unclosed_eol |
posizione mai chiusa | chiusa sull'ultima nota del sistema in cui si apre |
W174.fingering_orphan |
$) senza riga di note sotto |
riga ignorata |
W180 |
token malformato | token ignorato |
W181.fingering_rest |
diteggiatura su una pausa | ignorata |
W181.fingering_prolongation |
token non vuoto su un prolungamento . |
ignorato |
W181.fingering_not_chord |
<…> su una nota singola |
vale il primo elemento |
W181.fingering_chord_excess |
<…> con più elementi delle altezze |
extra ignorati |
Tutti i casi sono warning non bloccanti.
10. Esempi¶
$) | 0A 2Bb 4-5 1-2G | 13 .3 ..p 0Ai | <1G 3B 0E> . |
A) | > |
N) | a8 b c d r2 | e4 f g a | <c e g>2 r |
- misura 1:
acorda A vuota (con l'accento dellaA)),bdito 2 su B♭,csostituzione 4→5,dsostituzione 1→2 sulla corda G; la pausa non ha token; - misura 2:
edito 1 sulla corda 3,fsolo corda 3,gsolo il pollice che pizzica,acorda A vuota pizzicata con l'indice; - misura 3: accordo diteggiato altezza per altezza; il
.salta la pausa.
$) | . 2A[ 3 1 3 4] 1B["C II" 3] |
N) | a8 b c d e f g a |
Posizione ferma senza etichetta da b a f, poi posizione «C II» da g ad
a.