Manual d'aprenentatge del GNU LilyPond: 5.4.2 Objectes interiors al pentagrama

### 5.4.2 Objectes interiors al pentagrama

Ja hem vist com les instruccions `\voiceXXX` afecten a la direcció de les lligadures d’expressió i d’unió, digitacions i tots els altres elements que depenen de la direcció de les pliques (vegeu Veus explícites). Quan s’escriu música polifònica, aquestes ordres són essencials perquè puguin distingir-se diverses línies melòdiques entrellaçades. Però ocasionalment pot caldre sobreescriure aquest comportament automàtic. Es pot fer seccions de música completes o fins i tot per a una nota individual. La propietat que controla aquest comportament és la propietat de `direction` (direcció) de cada objecte de presentació. En primer lloc explicarem que fa això, i després introduirem algunes instruccions llestes per usar que us evitaran haver de codificar sobreescriptures explícites per a les modificacions més comunes.

Alguns objectes de presentació com les lligadures es corben cap amunt o cap avall; d’altres com les barres i les pliques també es mouen a la dreta o a l’esquerra quan apunten cap amunt o cap avall. Això es controla automàticament quan està establerta la propietat `direction`.

#### La propietat `direction` (direcció)

L’exemple següent mostra al primer compàs la col·locació predeterminada de les lligadures d’expressió, estant per sobre les que comencen en notes agudes i per sota les que comencen en notes greus, seguit d’un compàs amb ambdues lligadures forçades cap avall, un altre compàs amb les dues forçades cap amunt i per últim un compàs amb les lligadures retornades al seu comportament predeterminat.

>     a'4( g') c''( a') |
>     \override Slur.direction = #DOWN
>     a'4( g') c''( a') |
>     \override Slur.direction = #UP
>     a'4( g') c''( a') |
>     \revert Slur.direction
>     a'4( g') c''( a') |

Aquí hem usat les constants `DOWN` (avall) i `UP` (amunt). Aquestes constants tenen els valors `-1` i `+1`, respectivament, i aquests valors numèrics també es poden usar directament. El valor `0` també es pot usar en alguns casos. Per a les lligadures d’expressió el significat simplement és `up` (cap amunt), però per a alguns objectes té el significat de ‘centrat’. Hi ha una constant `CENTER` que té el valor de `0`.

Tanmateix, aquestes sobreescriptures no s’usen massa sovint perquè hi ha disponibles algunes ordres predefinides equivalents més senzilles. Aquí podem veure una taula de les més comunes. Es menciona el significat de cadascuna allí on no és obvi.

Avall o Esquerra | Amunt o Dreta | Anul·lar | Efecte
--- | --- | --- | ---
`\arpeggioArrowDown` | `\arpeggioArrowUp` | `\arpeggioNormal` | La fletxa està a sota, a dalt o no hi ha fletxa
`\dotsDown` | `\dotsUp` | `\dotsNeutral` | Direcció del desplaçament per evitar les línies del pentagrama
`\dynamicDown` | `\dynamicUp` | `\dynamicNeutral` |
`\phrasingSlurDown` | `\phrasingSlurUp` | `\phrasingSlurNeutral` | Nota: diferent de les ordres de lligadures d’expressió
`\slurDown` | `\slurUp` | `\slurNeutral` |
`\stemDown` | `\stemUp` | `\stemNeutral` |
`\textSpannerDown` | `\textSpannerUp` | `\textSpannerNeutral` | El text introduït com a objecte d’extensió està a sota o a sobre del pentagrama
`\tieDown` | `\tieUp` | `\tieNeutral` |
`\tupletDown` | `\tupletUp` | `\tupletNeutral` | Els grups especials estan a sota a sobre de les notes

Les variants neutres o normals d’aquests ordres estan implementades usant `\revert` i aquestes ordres no poden anar precedides de `\once`. Si voleu limitar l’efecte de les altres ordres (que estan implementades usant `\override`) a un sol pas de temps, podeu precedir-la de `\once` de la mateixa forma que ho faríeu amb les sobreescriptures explícites.

O be, si cap forçar un únic objecte de presentació cap amunt o cap avall, es poden usar els indicadors de direcció, `^` o `_`:

>     a'4( g') c''( a') |
>     a'4^( g') c''_( a') |

#### Digitacions

La col·locació de les digitacions sobre notes soltes també es pot controlar mitjançant la propietat `direction`, però els canvis sobre `direction` no tenen cap efecte sobre les notes dels acords. Com veurem, hi ha ordres especials que permeten controlar les digitacions de notes individuals, situant la digitació a sobre, a sota, a l’esquerra o a la dreta de cada nota.

En primer lloc, vet aquí l’efecte de `direction` sobre les digitacions aplicades a notes soltes. Es mostra en el primer compàs el comportament predeterminat, i en els dos compassos següents l’efecte d’especificat `DOWN` i `UP`:

>     \relative {
>       c''4-5 a-3 f-1 c'-5 |
>       \override Fingering.direction = #DOWN
>       c4-5 a-3 f-1 c'-5 |
>       \override Fingering.direction = #UP
>       c4-5 a-3 f-1 c'-5 |
>     }

Tanmateix, la sobreescriptura de la propietat `direction` no és la forma més senzilla d’especificar manualment la digitació per sobre o per sot de les notes; sol ser preferible usar `_` o `^` en lloc de `-`, abans del número de la digitació. Aquest és l’exemple anterior utilitzant aquest mètode:

>     \relative {
>       c''4-5 a-3 f-1 c'-5 |
>       c4_5 a_3 f_1 c'_5 |
>       c4^5 a^3 f^1 c'^5 |
>     }

La propietat `direction` s’ignora per als acords, però els prefixos direccionals `_` i `^` sí funcionen. De forma sí funcionen. De forma predeterminada, les digitacions es col·loquen automàticament a sobre i a sota de les notes d’un acord, com es mostra aquí:

>     \relative {
>       <c''-5 g-3>4
>       <c-5 g-3 e-2>4
>       <c-5 g-3 e-2 c-1>4
>     }

però es pot forçar de manera que tots o alguns dels números de digitació estan per sobre o per sota:

>     \relative {
>       <c''-5 g-3 e-2 c-1>4
>       <c^5 g_3 e_2 c_1>4
>       <c^5 g^3 e^2 c_1>4
>     }

És possible exercir un control encara més gran sobre la col·locació de les digitacions mitjançant la utilització de l’ordre `\set fingeringOrientations`. El format d’aquesta ordre és:

>     \set fingeringOrientations = #'([up] [left/right] [down])

s’utilitza `\set` perquè `fingeringOrientations` és una propietat del context `Voice`, creat i usat pel gravador `New_fingering_engraver`.

La propietat es pot establir al valor d’una llista d’entre u i tres valors. Controla si les digitacions es poden col·locar per sobre (si `up` apareix a la llista), per sota (si apareix `down`), a l’esquerra (si apareix `left`) o a la dreta (si apareix `right`). A la inversa, si una col·locació no està a la llista, no se situa cap digitació en aquest lloc. El LilyPond agafa aquestes restriccions i calcula la millor col·locació per a la digitació de les notes dels acords que segueixen. Observeu que `left` i `right` són mútuament excloents: les digitacions poden situar-se a un costat o l’altre, no als dos.

Nota: Per controlar la col·locació de la digitació d’una sola nota usant aquesta instrucció és necessari escriure-la com un acord d’una sola nota envoltant-la entre angles simples.

Aquí podem veure alguns exemples:

>     \relative {
>       \set fingeringOrientations = #'(left)
>       <f'-2>4
>       <c-1 e-2 g-3 b-5>4
>       \set fingeringOrientations = #'(left)
>       <f-2>4
>       <c-1 e-2 g-3 b-5>4 |
>       \set fingeringOrientations = #'(up left down)
>       <f-2>4
>       <c-1 e-2 g-3 b-5>4
>       \set fingeringOrientations = #'(up left)
>       <f-2>4
>       <c-1 e-2 g-3 b-5>4 |
>       \set fingeringOrientations = #'(right)
>       <f-2>4
>       <c-1 e-2 g-3 b-5>4
>     }

Si la digitació sembla una mica superpoblada, es pot reduir la mida `font-size`. El valor predeterminat pot veure’s a l’objecte `Fingering` del RFI que és `-5`, així que provarem `-7`:

>     \relative {
>       \override Fingering.font-size = #-7
>       \set fingeringOrientations = #'(left)
>       <f'-2>4
>       <c-1 e-2 g-3 b-5>4
>       \set fingeringOrientations = #'(left)
>       <f-2>4
>       <c-1 e-2 g-3 b-5>4 |
>       \set fingeringOrientations = #'(up left down)
>       <f-2>4
>       <c-1 e-2 g-3 b-5>4
>       \set fingeringOrientations = #'(up left)
>       <f-2>4
>       <c-1 e-2 g-3 b-5>4 |
>       \set fingeringOrientations = #'(right)
>       <f-2>4
>       <c-1 e-2 g-3 b-5>4
>     }

#### LilyPond — Manual d’aprenentatge v2.24.4 (branca estable).