Speedy Entry¶
Speedy Entry è la modalità di editing assistito di Write. Quando è attiva, l'editor "interpreta" alcuni caratteri che digiti e li trasforma nella sintassi neumaRk completa, riducendo il numero di tasti necessari per scrivere note, accordi, durate e alterazioni.
Speedy Entry non cambia la grammatica del linguaggio: produce sempre sorgente neumaRk valido. È solo una scorciatoia di scrittura. Si accende e si spegne con un clic sul pulsante Speedy Entry della toolbar; tenendolo premuto si apre la finestra delle impostazioni.
Le scorciatoie sono per riga: il comportamento dipende dal tipo di riga
musicale in cui si trova il cursore (C), N), A), D), L)). Ogni
scorciatoia è governata da un flag indipendente che puoi attivare o
disattivare nella finestra delle impostazioni, divisa per tipo di riga
(Generale, Accordi, Note, Articolazioni, Dinamiche, Testo). Salvo dove è
indicato il contrario, sono tutte attive di default.
Scorciatoie generali¶
Tab vale in qualunque riga musicale; le altre scorciatoie di questa
sezione valgono nelle righe note e accordi.
Tab → chiusura misura¶
Premere Tab su una riga musicale inserisce una barlinea |:
C) C7 D7|Tab → C) C7 D7 |
Se prima del cursore c'è già uno spazio, viene aggiunto solo |.
P → alza di un semitono (rise)¶
P shifta cromaticamente di +1 semitono l'evento toccato dal cursore.
Funziona sia in riga accordi che note:
N) c4|P → N) c#4
C) C-7|P → C) C#-7
Se il cursore non tocca alcun evento, P resta una lettera normale.
L → abbassa di un semitono (lower)¶
Specularmente, L shifta di −1 semitono. In riga accordi sono ammesse le
sequenze 7alt, DCal…, D$al… e in quei casi la L resta letterale.
@| → espansione al@¶
Digitando @| (o @ prima di una barlinea già esistente) si espande in
al@, producendo i decoratori di fine sezione al@ / DCal@ / D$al@:
… D$@| → … D$al@|
… DC@| → … DCal@|
… @| → … al@| (a inizio riga o dopo spazio)
In alternativa, su riga note, @ preceduto da spazio + Tab espande
direttamente in al@| (barlinea e separatore inclusi):
N) c4 @Tab → N) c4 al@|
! → ripetizione di misura %!¶
In una misura che contiene solo una ripetizione %, %2 o %4, un !
digitato a contatto viene spostato nella sua posizione canonica; un
secondo ! lo toglie:
N) !% → N) %!
N) %2! → N) %!2
N) %! + ! → N) % (ripremuto: tolto)
In riga note, fuori da questo caso, ! ha un altro effetto: vedi
Alterazione forzata.
Z come modificatore¶
Nelle righe note e accordi Z funziona come tasto modificatore (come
fosse un Alt aggiuntivo): tenuto premuto, cambia il significato del
tasto che premi insieme. Alcune combinazioni trasformano l'evento toccato
o inseriscono un simbolo (Z + ↑/↓, Z + S, Z + F, Z + B, Z + E),
altre servono a scrivere letteralmente un carattere che Speedy Entry
altrimenti intercetterebbe (Z + L, Z + P, Z + +, Z + −).
In queste righe
Zpremuto e rilasciato da solo non scrive nulla. Scrive unaznormale nelle altre righe, nell'area delle barline e dentro un testo libero (annotazione"…"o etichetta).
Z + ↑ / Z + ↓ → shift cromatico ±1¶
Con Z premuto, ↑ alza e ↓ abbassa di un semitono l'evento toccato.
Equivalente funzionale di P / L.
Z + L / Z + P → l / p letterali¶
L e P da soli sono trigger di shift cromatico. Con Z premuto
restano caratteri letterali, necessari per scrivere annotation come
al@, slide, legato, pizz, palm-mute, ecc.
N) c4 a Z+L → N) c4 al
N) c4 Z+P → N) c4 p
Riga accordi (C) e C+)¶
Le scorciatoie sotto valgono sia per la riga principale degli accordi
C) sia per la riga di accordi alternativi C+, che condivide la
stessa grammatica.
Speedy Entry inattivo dentro le etichette: se il cursore è dentro un commento-etichetta accordo (
[label]o"label", dove si scrive testo libero), Speedy Entry non interviene — i caratteri restano letterali.
Auto-uppercase della radice¶
Una radice di accordo digitata minuscola viene maiuscolata automaticamente:
C) c7 → C) C7
C) C/g → C) C/G (anche dopo slash bass)
m → - (minore)¶
Il minore si scrive di preferenza col trattino. Digitando m subito dopo
la radice (o dopo la sua alterazione) si ottiene -:
C) Cm → C) C-
C) C#m7 → C) C#-7
C) Dbm → C) Db-
La m resta com'è quando non segue la radice: per esempio in dim. Il
parser accetta anche Cm7: se vuoi la m nel testo, disattiva il flag
m → trattino minore nelle impostazioni, oppure scrivi l'accordo con
Speedy Entry spento.
p → % su misura vuota¶
Quando il cursore è dentro una misura ancora vuota di accordi (es.
appena dopo una barlinea), il tasto p (minuscolo) inserisce % (simbolo
di ripetizione di misura). Se la misura contiene già qualunque token (anche
un marker tipo :open| o uno style-name), p resta letterale e non
triggera la sostituzione. Con Shift (P maiuscola) si scrive sempre la
lettera.
Z + S → diesis (#)¶
Combo dedicata per inserire un # senza ambiguità (la s letterale è
riservata al suffix sus).
Z + F → bemolle (♭)¶
Inserisce il simbolo unicode ♭, che viene poi normalizzato in b.
Z + E → cambio enarmonico¶
Cambia l'alias enarmonico dell'accordo toccato: C# ↔ D♭, F#7 ↔ G♭7,
ecc. Mantiene la stessa tonalità reale.
+ / − → shift cromatico ±1¶
+ e − shiftano cromaticamente di un semitono l'accordo toccato dal
cursore. Funziona anche sui bassi alternati di slash chord:
C) C|+ → C) C#
C) C#|+ → C) D (iterabile)
C) C7|+ → C) C#7 (suffix preservato)
C) C/G|+ → C) C/G# (slash bass alterato)
C) C-7|+ → C) C#-7
Per inserire + / − letterali (necessari per i suffix accordo C+,
5+, M+, +M, +M7, +7, e per le alterazioni 7+5, 7+9, 7+11)
si usa l'escape Z + + / Z + −:
C) C| + Z+`+` + 7 → C) C+7 (= C7#5)
C) C7| + Z+`+` + 5 → C) C7+5
C) CM| + Z+`+` → C) CM+ (= CΔ#5)
C) C| + Z+`-` → C) C- (= Cm)
Suggerimento: in luogo di
+per augmented, puoi anche scrivereaugo#5(tutte forme equivalenti dopo la normalizzazione del parser). Per il minore basta digitaremdopo la radice: diventa-(vedi sopra).
+ / − non scattano sempre¶
Se sotto il cursore non c'è un evento accordo, + e − restano letterali.
In particolare il marker di volta [1.]+4 non richiede escape:
C) C7 | [1.]|+4 D7 → C) C7 | [1.]+4 D7
Auto-spazio fra accordi¶
Quando il cursore è "appiccicato" a un accordo precedente, digitando una
nuova radice maiuscola [A-G] viene aggiunto automaticamente uno spazio:
C) C7G7 → C) C7 G7
C) CM7#5A7 → C) CM7#5 A7
C) C-7D7 → C) C-7 D7
Lo spazio non viene aggiunto in questi casi (l'utente sta continuando la stessa unità):
C) C7 G7 → C) C7 G7 (c'è già uno spazio)
C) C/G → C) C/G (slash bass)
C) (D F) → C) (D F) (gruppo opzionale)
C) [1.]+4 D7 → C) [1.]+4 D7 (decoratore volta)
Per le lettere minuscole l'auto-uppercase + auto-spazio si comportano in modo asimmetrico, perché alcune lettere sono parte di suffix accordo legittimi (vedi sezione successiva).
Lettere minuscole "safe" vs "ambigue"¶
Alcune lettere minuscole sono parte di suffix accordo lowercase (aug,
alt, dim, b5, b9, ecc.); altre no. Speedy Entry distingue:
| Lettera lowercase su accordo toccato | Comportamento |
|---|---|
c, e, f, g (safe) |
upper-case + auto-spazio |
a (aug, alt) |
letterale |
b (accidental, b5/b6/b9/b13) |
letterale |
d (dim) |
letterale |
Eccezione Caug: la g finale di aug è una lettera "safe" ma chiude un
suffix, non è una nuova radice. Speedy Entry guarda i due caratteri
precedenti: se sono au, la g resta letterale.
Esempi di scrittura fluente:
C) c7g7 → C) C7 G7 (c → C, g → G + spazio)
C) c7f7 → C) C7 F7 (c → C, f → F + spazio)
C) Caug → C) Caug (a/u letterali, g preceduta da `au` → letterale)
C) C7alt → C) C7alt (a letterale)
C) C-7b9 → C) C-7b9 (b letterale)
C) Cdim7 → C) Cdim7 (d letterale)
Per ottenere G7 A7 (con A come lettera ambigua), digita maiuscolo
direttamente: G7A7 → G7 A7. L'auto-spazio scatta sempre sulle maiuscole
[A-G], qualunque sia la lettera.
Riga note (N))¶
Auto-correzione tonalità¶
Le note inserite vengono auto-alterate secondo la tonalità corrente (ordine standard dei diesis F♯-C♯-G♯-D♯-A♯-E♯-B♯; specularmente per i bemolli):
HK) D (tonalità di Re maggiore: 2 diesis)
N) f → N) f#
N) c → N) c#
Durate sintetiche¶
| Tasto | Diventa |
|---|---|
6 |
16 (sedicesimo) |
3 |
2. (minima puntata, default) oppure 32 (trentaduesimo) — scegli quale nelle impostazioni |
k |
^ (legatura di valore) |
N) c|6 → N) c16
N) c4|k → N) c4^
Con 3 → 2., digitando subito dopo un 2 si ottiene comunque 32.
Apostrofo / virgola → ottava ±1¶
N) c4|' → N) c'4 (ottava su)
N) c4|, → N) c,4 (ottava giù)
Su un evento "vuoto" (solo apostrofo/virgola/tie), un nuovo apostrofo o virgola crea un nuovo evento separato.
Alterazione forzata¶
Su una nota toccata dal cursore, ! forza l'alterazione: il ! viene
messo nella posizione giusta del token, dopo l'altezza e l'eventuale
alterazione e prima di ottava e durata. Ripremuto, lo toglie:
N) c4|! → N) c!4
N) c#4|! → N) c#!4
N) c#!4|! → N) c#4
Su pause, spaziatori e note di abbellimento il ! resta com'è digitato.
Per il ! a contatto con % vedi ripetizione di misura.
Z + S / Z + F / Z + B / Z + E¶
Stessi shortcut della riga accordi, più Z + B:
Z + S→#Z + F→♭Z + B→♭(alternativa conBinvece diF, solo in riga note)Z + E→ cambio enarmonico
Auto-spazio fra note¶
Inserisce automaticamente uno spazio fra eventi successivi quando il
cursore sta per produrre un nuovo evento appiccicato al precedente. Vale
per le note, le pause r e gli spaziatori s:
N) c4|d → N) c4 d
N) c4|r → N) c4 r
N) c4|< → N) c4 < (apertura di un chord-stack)
N) [f#|e → N) [f# e (dentro un gruppo grace)
N) <c|e → N) <c e (dentro un chord-stack aperto)
Lo spazio non viene aggiunto se il carattere precedente è già uno spazio o
una legatura ^, oppure all'apertura del chord-stack (< + nota →
nessuno spazio prima della prima pitch interna).
Tab dentro un gruppo grace¶
Con il cursore dentro un gruppo grace […], subito dopo una nota, Tab
non inserisce una barlinea: completa l'acciaccatura aggiungendo i
modificatori /^ che mancano e, se il gruppo è ancora aperto, la ]. Il
cursore finisce dopo la ], pronto per la nota principale:
N) [a|Tab → N) [a/^]
N) [a4 b|Tab → N) [a4 b/^]
p → % su misura vuota¶
Come in riga accordi, il tasto p (minuscolo) inserisce % in una misura
di note ancora vuota, purché preceduto da uno spazio:
N) c4 d e f | p → N) c4 d e f | %
Annotazioni note "..."¶
Dentro un blocco di annotazione (delimitato da virgolette doppie) tutti i caratteri digitati sono letterali, inclusi gli spazi: il parser riconosce il contenuto fra virgolette come un singolo token, quindi non serve alcuna sostituzione automatica.
N) c4"a slow lyric"| (gli spazi dentro le virgolette restano come tali)
Auto-lowercase delle pitch¶
In riga note le pitch si scrivono minuscole. Se digiti una lettera
maiuscola (C, D, ...), può essere automaticamente convertita in
minuscola con il flag autoLowerCase. Disattivato di default — utile se
sei abituato a scrivere maiuscole anche in note-row.
+ / − → shift cromatico ±1¶
Come in riga accordi, + e − shiftano l'evento toccato (nota,
chord-stack, gruppo grace) di ±1 semitono:
N) c4|+ → N) c#4
N) c#4|+ → N) d4 (iterabile)
N) <c e g>4|+ → N) <c# f g#>4 (tutto il chord-stack)
N) <c|e g>4 + → N) <c# e g>4 (solo la nota toccata)
In riga note + e − non hanno mai significato sintattico, quindi su un
evento toccato sono sempre intercettati come trigger di shift. Eccezioni:
- Se il cursore non tocca alcun evento (fra due eventi, in una misura vuota, a fine riga) il carattere resta letterale
- Dopo
@(sintassi di ottava assolutac@-1_4) il−resta letterale - Dentro un'annotazione
"..."+/−sono testo libero - Con
Cmd/Ctrl/Altpremuti, lo shortcut di sistema (es. zoom pagina) ha la precedenza
Riga articolazioni (A))¶
Inserisce automaticamente uno spazio prima di ogni token di articolazione,
tranne quando il nuovo carattere completa una combo (_!, >!, os,
ol, tr, tr~, 8.) o si attacca a un testo ("x"-, ("x")):
A) _|> → A) _ >
A) _|! → A) _! (portato)
A) >|! → A) >! (accento + staccato)
A) o|l → A) ol (corona lunga)
A) t|r → A) tr (trillo)
Dentro un testo ("…" o riquadro […]) l'auto-spazio non interviene.
Riga dinamiche (D))¶
L'auto-spazio scatta solo digitando . (placeholder); le altre lettere
delle dinamiche formano token multi-carattere (mp, mf, sf, sfz,
p<, f>, …) e non vengono spaziate.
Riga lyric (L))¶
Disattivato di default — attivalo nelle impostazioni di Speedy Entry,
sezione Testo. Quando è attivo, premere - (trattino di sillabazione)
prepende uno spazio se non c'è già, in modo che ogni sillaba di
continuazione sia un token separato allineato sotto la nota successiva:
L) Ma|-ri → L) Ma -ri
Riepilogo¶
| Tasto / Combo | Riga | Effetto |
|---|---|---|
Tab |
qualsiasi musicale | inserisce barlinea |
Tab dentro […] |
note | completa la grace con /^ e ] |
P |
note / accordi | shift +1 semitono |
L |
note / accordi | shift −1 semitono |
@\| |
note / accordi | espansione al@ (anche <sp>@+Tab su note) |
! a contatto con % |
note / accordi | %! (ripremuto: lo toglie) |
! su una nota |
note | alterazione forzata (c4 → c!4) |
Z + ↑ / Z + ↓ |
note / accordi | shift ±1 semitono |
Z + L / Z + P |
note / accordi | inserisce l / p letterale |
c…g minuscolo |
note | nota (con auto-correzione tonalità) |
C…G maiuscolo |
accordi | radice di accordo |
m dopo la radice |
accordi | - (minore) |
p (minuscolo) |
accordi / note (misura vuota) | inserisce % |
Z + S |
note / accordi | # |
Z + F |
note / accordi | ♭ |
Z + B |
note | ♭ |
Z + E |
note / accordi | cambio enarmonico |
+ / − su evento |
note / accordi | shift cromatico ±1 |
Z + + / Z + − |
note / accordi | inserisce + / − letterale |
6 |
note | 16 (sedicesimo) |
3 |
note | 2. (default) o 32 |
k |
note | ^ (tie) |
' / , |
note | ottava +1 / −1 |
| auto-spazio | note / accordi / art. / din. | separa eventi successivi |
auto-spazio prima di - |
testo (L)), off di default |
separa le sillabe |
| auto-uppercase / lowercase | accordi / note (lowercase off di default) | normalizza la case delle radici / pitch |
Approfondimenti¶
- Sintassi completa del linguaggio neumaRk (note e durate, accordi con la lista esaustiva dei suffix, ritmo, decoratori, volte, ecc.): documentazione e specifica su neumark.dev.
- Tutte le impostazioni Speedy Entry: tieni premuto il pulsante Speedy Entry nella toolbar di Write.
- Le scorciatoie da tastiera di Write fuori da Speedy Entry: vedi Write.