Manual de aprendizaje de GNU LilyPond: 5.2.2 Propiedades de los interfaces

### 5.2.2 Propiedades de los interfaces

Suponga ahora que queremos imprimir la letra de la canción en cursiva. ¿Qué forma de instrucción `\override` necesitamos para hacerlo? En primer lugar miramos en la página del RFI que relaciona todos los objetos, ‘All layout objects’, como antes, y buscamos un objeto que pueda controlar la letra de la canción. Encontramos `LyricText`, que parece adecuado. Al seguir este enlace se presentan las propiedades ajustables para el texto de la letra. Estos incluyen `font-series` y `font-size`, pero nada que pudiera aplicar una forma cursiva. Esto es porque la propiedad de la forma es común a todos los objetos de fuente tipográfica, y por tanto, en vez de incluirlo en cada uno de los objetos de presentación, se agrupa junto con otras propiedades comunes similares y se deposita en un Interface, el interface de las fuentes tipográficas `font-interface`.

Por tanto, ahora necesitamos aprender cómo encontrar las propiedades de los interfaces, y descubrir qué objetos usan estas propiedades de interface.

Mire de nuevo la página del RFI que describe a LyricText. Al final de la página hay una lista de enlaces a los interfaces que LyricText contempla. La lista tiene siete elementos, entre ellos `font-interface`. Al seguir este enlace llegamos a las propiedades asociadas con este interface, que también son propiedades de todos los objetos que lo llevan, entre ellos LyricText.

Ahora vemos todas las propiedades ajustables por el usuario que controlan las tipografías, entre ellas `font-shape(symbol)`, donde `symbol` se puede establecer a `upright` (recta), `italics` (cursiva)o `caps` (mayúsculas pequeñas).

Observará que `font-series` y `font-size` también se encuentran aquí relacionadas. Esto inmediatamente hace que surja la pregunta: ¿Por qué están las propiedades comunes de tipografía `font-series` y `font-size` relacionadas bajo `LyricText` así como bajo el interface `font-interface` pero `font-shape` no lo está? La respuesta es que `font-series` y `font-size` se cambian a partir de sus valores predeterminados globales cuando se crea un objeto `LyricText`, pero `font-shape` no lo hace. Entonces los elementos de la lista `LyricText` le dicen los valores para esas dos propiedades que son de aplicación para `LyricText`. Otros objetos que contemplan `font-interface` establecerán dichas propiedades de forma diferente cuando se crean.

Veamos si ahora podemos construir la instrucción `\override` para cambiar la letra a cursiva. El objeto es `LyricText`, la propiedad es `font-shape` y el valor es `italic`. Igual que antes, omitiremos el contexto.

Como nota aparte, aunque es importante, observe que ciertas propiedades toman valores que son símbolos, como `italic`, y deben ir precedidos de un apóstrofo, `'`. Los símbolos se leen a continuación internamente por parte de LilyPond. Tenga en cuenta la diferencia con las cadenas de texto arbitrarias, que aparecerían como `"una cadena de texto"`; para ver más detalles sobre los símbolos y las cadenas, consulte Tutorial de Scheme.

Así pues, la instrucción `\override` necesaria para imprimir la letra en cursiva, es:

>     \override LyricText.font-shape = #'italic

Esto debe escribirse justo delante de la letra a la que debe afectar, de esta forma:

>     {
>       \key es \major
>       \time 6/8
>       \relative {
>         r4 bes'8 bes[( g]) g |
>         g8[( es]) es d[( f]) as |
>         as8 g
>       }
>       \addlyrics {
>         \override LyricText.font-shape = #'italic
>         The man who | feels love's sweet e -- | mo -- tion
>       }
>     }

y toda la letra se imprime en cursiva.

Nota: Dentro de la letra, deje siempre espacios entre la sílaba final y la llave de cierre.

#### Véase también

Manual de Extensión: Tutorial de Scheme.

#### LilyPond — Manual de aprendizaje v2.24.4 (rama estable).