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 può disattivare in qualunque momento dalla dialog Impostazioni → Speedy Entry.
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 nelle impostazioni.
Scorciatoie generali¶
Attive in qualunque riga musicale.
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) d♭4
C) Cm7|P → C) C#m7
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@|
Z + ↑ / Z + ↓ → shift cromatico ±1¶
Z funziona come tasto modificatore custom (come fosse un Alt aggiuntivo).
Con Z premuto, ↑ alza e ↓ abbassa di un semitono. Equivalente
funzionale di P / L.
Premuto da solo,
Zcontinua a inserirezcome carattere normale. Le comboZ + tastoagiscono solo quando il cursore è in riga note o accordi, fuori da barline-area e annotazioni.
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)
P → % su misura vuota¶
Quando il cursore è dentro una misura ancora vuota di accordi (es.
appena dopo una barlinea), P 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.
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) Cm7|+ → C) C#m7
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, forma alternativa)
Suggerimento: in luogo di
+per augmented, puoi anche scrivereaugo#5(tutte forme equivalenti dopo la normalizzazione del parser). Per il minore puoi scriverem(es.Cm7invece diC-7).
+ / − 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) Cm7D7 → C) Cm7 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) Cm7b9 → C) Cm7b9 (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 |
32 (trentaduesimo) oppure 2. (minima puntata) — scegli quale nelle impostazioni |
k |
^ (legatura di valore) |
N) c|6 → N) c16
N) c4|k → N) c4^
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.
Z + S / Z + F / Z + B / Z + E¶
Stessi shortcut della riga accordi:
Z + S→#Z + F→♭Z + B→♭(alternativa conBinvece diF)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:
N) c4|d → N) c4 d
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).
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# e# 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 sono
sempre intercettati come trigger di shift. Eccezioni:
- 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 a 2 caratteri
(-!, >!, os, ol, tr):
A) -|> → A) - >
A) >|! → A) >! (combo accent-marcato)
A) o|l → A) ol (legatura lunga)
A) t|r → A) tr (trillo)
Riga dinamiche (D))¶
L'auto-spazio è limitato al carattere . (placeholder); le altre lettere
delle dinamiche formano token multi-carattere (mp, mf, sf, sfz,
p<, f>, …) e non vengono spaziate.
Riga lyric (L))¶
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 |
P |
note / accordi | shift +1 semitono |
L |
note / accordi | shift −1 semitono |
@\| |
qualsiasi | espansione al@ (anche <sp>@+Tab su note) |
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 |
P |
accordi (riga 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 | 32 o 2. |
k |
note | ^ (tie) |
' / , |
note | ottava +1 / −1 |
| auto-spazio | note / accordi / art. / dyn. / lyr. | separa eventi successivi |
| auto-uppercase / lowercase | accordi / note | 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: dialog Impostazioni → Speedy Entry dentro l'app Write.