LilyPond snippets: Ancient notation

# Ancient notation

Ancient notation

## Añadir un bajo cifrado encima o debajo de las notas

Al escribir un bajo cifrado, podemos situar las cifras encima o debajo de las notas del bajo, mediante la definición de la propiedad `BassFigureAlignmentPositioning #'direction` (exclusivamente dentro de un contexto `Staff`). Se puede elegir entre `#UP` (o `#1`, arriba), `#CENTER` (o `#0`, centrado) y `#DOWN` (o `#-1`, abajo).

Esta propiedad se puede cambiar tantas veces como queramos. Utilice `\once \override` si no quiere que la sobreescritura se aplique a toda la partitura.

    bass = {
      \clef bass
      g4 b, c d
      e d8 c d2
    }

    continuo = \figuremode {
      <_>4 <6>4 <5/>4
      \override Staff.BassFigureAlignmentPositioning.direction = #UP
      %\bassFigureStaffAlignmentUp
      < _+ >4 <6>
      \set Staff.useBassFigureExtenders = ##t
      \override Staff.BassFigureAlignmentPositioning.direction = #DOWN
      %\bassFigureStaffAlignmentDown
      <4>4. <4>8 <_+>4
    }

    \score {
      <<
        \new Staff = bassStaff \bass
        \context Staff = bassStaff \continuo
      >>
    }

## Tipografía de música antigua

Aquí se muestran muchos de los símbolos de LilyPond para la música antigua.

    upperStaff = \new VaticanaStaff = "upperStaff" <<
      \context VaticanaVoice <<
        \transpose c c {

          \override NoteHead.style = #'vaticana.punctum
          \key es \major
          \clef "vaticana-fa2"
          c1 des e f ges

          \override NoteHead.style = #'vaticana.inclinatum
          a! b ces'
          \bar "|"

          \override NoteHead.style = #'vaticana.quilisma
          b! des'! ges! fes!
          \breathe
          \clef "vaticana-fa1"
          \override NoteHead.style = #'vaticana.plica
          es d
          \override NoteHead.style = #'vaticana.reverse.plica
          c d
          \bar "|"

          \override NoteHead.style = #'vaticana.punctum.cavum
          es f
          \override NoteHead.style = #'vaticana.lpes
          g as
          \override NoteHead.style = #'vaticana.upes
          bes as
          \override NoteHead.style = #'vaticana.vupes
          g f
          \override NoteHead.style = #'vaticana.linea.punctum
          \once \override Staff.BarLine.bar-extent = #'(-1 . 1) \bar "|"

          es d
          \override NoteHead.style = #'vaticana.epiphonus
          c d
          \override NoteHead.style = #'vaticana.cephalicus
          es f

          \override Staff.KeySignature.glyph-name-alist =
            #alteration-medicaea-glyph-name-alist
          \override Staff.Accidental.glyph-name-alist =
            #alteration-medicaea-glyph-name-alist
          \override Staff.Custos.style = #'medicaea
          \override NoteHead.style = #'medicaea.punctum
          \clef "medicaea-fa2"
          ces des
          \bar "|"

          e! f! ges
          \clef "medicaea-do2"
          \override NoteHead.style = #'medicaea.inclinatum
          a! b! ces'
          \override NoteHead.style = #'medicaea.virga
          b! a!
          \bar "|"

          ges fes
          \clef "medicaea-fa1"
          \override NoteHead.style = #'medicaea.rvirga
          e des ces

          \override Staff.KeySignature.glyph-name-alist =
            #alteration-hufnagel-glyph-name-alist
          \override Staff.Accidental.glyph-name-alist =
            #alteration-hufnagel-glyph-name-alist
          \override Staff.Custos.style = #'hufnagel
          \override NoteHead.style = #'hufnagel.punctum
          \clef "hufnagel-fa2"
          ces des es
          \bar "|"

          fes ges
          \clef "hufnagel-do2"
          \override NoteHead.style = #'hufnagel.lpes
          as! bes! ces'
          \override NoteHead.style = #'hufnagel.virga
          bes! as!
          \bar "|"

          ges! fes!
          \clef "hufnagel-do-fa"
          \override NoteHead.style = #'hufnagel.punctum
          es! des ces des! es! fes!
          \bar "||"

          s32*1
        }
      >>
    >>

    lowerStaff = \new MensuralStaff = "lowerStaff" <<
      \context MensuralVoice <<
        \transpose c c {

          \key a \major
          cis'1 d'\breve gis'\breve e'\breve \[ e'\longa fis'\longa \]
          \set Staff.forceClef = ##t
          \clef "neomensural-c2"
          cis1
          \bar "|"

          \[ g\breve dis''\longa \]
          b\breve \[ a\longa d\longa \]
          \clef "petrucci-c2"

          fis1 ces1
          \clef "petrucci-c2"
          r\longa
          \set Staff.forceClef = ##t
          \clef "mensural-c2"
          r\breve
          \bar "|"

          r2
          \clef "mensural-g"
          r4 r8 r16 r16
          \override NoteHead.style = #'mensural
          \override Rest.style = #'mensural
          \clef "petrucci-f"
          c8 b, c16 b, c32 b, c64 b, c64 b,
          d8 e d16 e d32 e d64 e d64 e
          r\longa
          \set Staff.forceClef = ##t
          \clef "petrucci-f"
          r\breve
          \bar "|"

          r\breve
          \clef "mensural-f"
          r2 r4 r8 r16 r16

          \set Staff.forceClef = ##t
          \clef "mensural-f"
          e\breve f g a1
          \clef "mensural-g"

          \[ bes'!\longa a'!\longa c''!\longa \]
          e'1 d' c' d' \bar "|"
          \bar "|"

          bes'!\longa fis'!1 as'!1 ges'!\longa % lig
          \set Staff.forceClef = ##t
          \clef "mensural-g"
          e'2 d' c' \bar "|"

          \set Staff.forceClef = ##t
          \clef "petrucci-g"
          c'2 d' e' f'
          \clef "petrucci-g"
          g' as'! bes'! cis''!
          bes'! as'! gis'! fis'!
          \set Staff.forceClef = ##t
          \clef "mensural-g"
          es'! des'! cis'!1 \bar "||"
        }
      >>
    >>

    \paper {
      line-thickness = #(/ staff-space 5.0)
    }

    \score {
      <<
        \upperStaff
        \lowerStaff
      >>
      \layout {
        indent = 0.0
        \context {
          \Score
          timing = ##f
        }
        \context {
          \MensuralVoice
          \override NoteHead.style = #'neomensural
          \override Rest.style = #'neomensural
          \override Flag.style = #'mensural
          \override Stem.thickness = #1.0
        }
        \context {
          \MensuralStaff
          \revert  BarLine.transparent
          \override KeySignature.glyph-name-alist =
            #alteration-mensural-glyph-name-alist
          clefGlyph = #"clefs.petrucci.c2"
        }
        \context {
          \VaticanaStaff
          \revert  BarLine.transparent
          \override StaffSymbol.thickness = #2.0
          \override KeySignature.glyph-name-alist =
            #alteration-vaticana-glyph-name-alist
          \override Custos.neutral-position = #4
        }
      }
    }

## Plantilla para notación de música antigua (transcripción moderna de canto gregoriano)

Este ejemplo muestra cómo hacer una transcripción moderna de canto gregoriano. El canto gregoriano no tiene compás ni plicas; utiliza solamente cabezas de nota de blanca y de negra, y unas marcas especiales que indican silencios de distintas longitudes.

    \include "gregorian.ly"

    chant = \relative c' {
      \set Score.timing = ##f
      f4 a2 \divisioMinima
      g4 b a2 f2 \divisioMaior
      g4( f) f( g) a2 \finalis
    }

    verba = \lyricmode {
      Lo -- rem ip -- sum do -- lor sit a -- met
    }

    \score {
      \new Staff <<
        \new Voice = "melody" \chant
        \new Lyrics = "one" \lyricsto melody \verba
      >>
      \layout {
        \context {
          \Staff
          \remove "Time_signature_engraver"
          \remove "Bar_engraver"
          \hide Stem
        }
        \context {
          \Voice
          \override Stem.length = #0
        }
        \context {
          \Score
          barAlways = ##t
        }
      }
    }

## Indicaciones de compás antiguas

Las indicaciones de compás también se pueden grabar en estilo antiguo.

    {
      \override Staff.TimeSignature.style = #'neomensural
      s1
    }

## Notación de responsos o salmos

Este tipo de notación se utiliza para los cantos salmódicos, en que las estrofas no siempre tienen la misma longitud.

    stemOff = \hide Staff.Stem
    stemOn  = \undo \stemOff

    \score {
      \new Staff \with { \remove "Time_signature_engraver" }
      {
        \key g \minor
        \cadenzaOn
        \stemOff a'\breve bes'4 g'4
        \stemOn a'2 \bar "||"
        \stemOff a'\breve g'4 a'4
        \stemOn f'2 \bar "||"
        \stemOff a'\breve^\markup { \italic flexe }
        \stemOn g'2 \bar "||"
      }
    }

## Custos

Se pueden tipografiar «custos» en diferentes estilos.

    \layout { ragged-right = ##t }

    \new Staff \with { \consists "Custos_engraver" } \relative c' {
      \override Staff.Custos.neutral-position = #4

      \override Staff.Custos.style = #'hufnagel
      c1^"hufnagel" \break
      <d a' f'>1

      \override Staff.Custos.style = #'medicaea
      c1^"medicaea" \break
      <d a' f'>1

      \override Staff.Custos.style = #'vaticana
      c1^"vaticana" \break
      <d a' f'>1

      \override Staff.Custos.style = #'mensural
      c1^"mensural" \break
      <d a' f'>1
    }

## Incipit

Al transcribir música mensural, es útil poner un incipit al comienzo de la pieza para indicar la tonalidad y el compás originales. Actualmente los músicos están acostumbrados a las líneas del pentagrama, pero en el período de la música mensural aún no se utilizaban. Como compromiso, con frecuencia se imprimen líneas divisorias entre los pentagramas, un estilo de diseño conocido como mensurstriche.

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % A short excerpt from the Jubilate Deo by Orlande de Lassus
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    global = {
      \set Score.skipBars = ##t
      \key g \major
      \time 4/4

      % the actual music
      \skip 1*8

      % let finis bar go through all staves
      \override Staff.BarLine.transparent = ##f

      % finis bar
      \bar "|."
    }

    discantusIncipit = {
      \clef "neomensural-c1"
      \key f \major
      \time 2/2
      c''1.
    }

    discantusNotes = {
      \transpose c' c'' {
        \clef "treble"
        d'2. d'4 |
        b e' d'2 |
        c'4 e'4.( d'8 c' b |
        a4) b a2 |
        b4.( c'8 d'4) c'4 |
        \once \hide NoteHead
        c'1 |
        b\breve |
      }
    }

    discantusLyrics = \lyricmode {
      Ju -- bi -- la -- te De -- o,
      om -- nis ter -- ra, __ om-
      "..."
      -us.
    }

    altusIncipit = {
      \clef "neomensural-c3"
      \key f \major
      \time 2/2
      r1 f'1.
    }

    altusNotes = {
      \transpose c' c'' {
        \clef "treble"
        r2 g2. e4 fis g |
        a2 g4 e |
        fis g4.( fis16 e fis4) |
        g1 |
        \once \hide NoteHead
        g1 |
        g\breve |
      }
    }

    altusLyrics = \lyricmode {
      Ju -- bi -- la -- te
      De -- o, om -- nis ter -- ra,
      "..."
      -us.
    }

    tenorIncipit = {
      \clef "neomensural-c4"
      \key f \major
      \time 2/2
      r\longa
      r\breve
      r1 c'1.
    }

    tenorNotes = {
      \transpose c' c' {
        \clef "treble_8"
        R1 |
        R1 |
        R1 |
        % two measures
        r2 d'2. d'4 b e' |
        \once \hide NoteHead
        e'1 |
        d'\breve |
      }
    }

    tenorLyrics = \lyricmode {
      Ju -- bi -- la -- te
      "..."
      -us.
    }

    bassusIncipit = {
      \clef "mensural-f"
      \key f \major
      \time 2/2
      r\maxima
      f1.
    }

    bassusNotes = {
      \transpose c' c' {
        \clef "bass"
        R1 |
        R1 |
        R1 |
        R1 |
        g2. e4 |
        \once \hide NoteHead
        e1 |
        g\breve |
      }
    }

    bassusLyrics = \lyricmode {
      Ju -- bi-
      "..."
      -us.
    }

    \score {
      <<
        \new StaffGroup = choirStaff <<
          \new Voice = "discantusNotes" <<
            \set Staff.instrumentName = "Discantus"
            \incipit \discantusIncipit
            \global
            \discantusNotes
          >>
          \new Lyrics \lyricsto discantusNotes { \discantusLyrics }
          \new Voice = "altusNotes" <<
            \set Staff.instrumentName = "Altus"
            \global
            \incipit \altusIncipit
            \altusNotes
          >>
          \new Lyrics \lyricsto altusNotes { \altusLyrics }
          \new Voice = "tenorNotes" <<
            \set Staff.instrumentName = "Tenor"
            \global
            \incipit \tenorIncipit
            \tenorNotes
          >>
          \new Lyrics \lyricsto tenorNotes { \tenorLyrics }
          \new Voice = "bassusNotes" <<
            \set Staff.instrumentName = "Bassus"
            \global
            \incipit \bassusIncipit
            \bassusNotes
          >>
          \new Lyrics \lyricsto bassusNotes { \bassusLyrics }
        >>
      >>
      \layout {
        \context {
          \Score
          %% no bar lines in staves or lyrics
          \hide BarLine
        }
        %% the next two instructions keep the lyrics between the bar lines
        \context {
          \Lyrics
          \consists "Bar_engraver"
          \consists "Separating_line_group_engraver"
        }
        \context {
          \Voice
          %% no slurs
          \hide Slur
          %% Comment in the below "\remove" command to allow line
          %% breaking also at those bar lines where a note overlaps
          %% into the next measure.  The command is commented out in this
          %% short example score, but especially for large scores, you
          %% will typically yield better line breaking and thus improve
          %% overall spacing if you comment in the following command.
          %%\remove "Forbid_line_break_engraver"
        }
        indent = 6\cm
        incipit-width = 4\cm
      }
    }

## Disposición Mensurstriche (líneas divisorias entre pentagramas)

La disposición «mensurstriche» en que las líneas divisorias no están dibujadas sobre los pentagramas, sino entre ellos, se puede conseguir con un `StaffGroup` en vez de un `ChoirStaff`. La línea divisoria sobre los pentagramas se borra usando `\hide`.

    global = {
      \hide Staff.BarLine
      s1 s
      % the final bar line is not interrupted
      \undo \hide Staff.BarLine
      \bar "|."
    }

    \new StaffGroup \relative c'' {
      <<
        \new Staff { << \global { c1 c } >> }
        \new Staff { << \global { c c } >> }
      >>
    }

## Estilos de silencios

Los silencios se pueden imprimir en distintos estilos.

    \new Staff \relative c {
      \omit Score.TimeSignature
      \cadenzaOn

      \override Staff.Rest.style = #'mensural
      r\maxima^\markup \typewriter { mensural }
      r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128
      \bar ""
      \break

      \override Staff.Rest.style = #'neomensural
      r\maxima^\markup \typewriter { neomensural }
      r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128
      \bar ""
      \break

      \override Staff.Rest.style = #'classical
      r\maxima^\markup \typewriter { classical }
      r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128
      \bar ""
      \break

      \override Staff.Rest.style = #'z
      r\maxima^\markup \typewriter { z-style }
      r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128
      \bar ""
      \break

      \override Staff.Rest.style = #'default
      r\maxima^\markup \typewriter { default }
      r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128
    }

## Using tags to produce mensural and modern music from the same source

By using tags, it’s possible to use the same music to produce both mensural and modern music. In this snippet, a function `menrest` is introduced, allowing mensural rests to be pitched as in the original, but with modern rests in the standard staff position. Tags are used to produce different types of bar line at the end of the music, but tags can also be used where other differences are needed: for example using “whole measure rests” (R1, R\breve etc.) in modern music, but normal rests (r1, r\breve, etc.) in the mensural version. Note that converting mensural music to its modern equivalent is usually referred to as `transcription`.

    menrest = #(define-music-function (note)
      (ly:music?)
    #{
        \tag #'mens $(make-music 'RestEvent note)
        \tag #'mod $(make-music 'RestEvent note 'pitch '())
    #})

    MensStyle = {
      \autoBeamOff
      \override NoteHead.style = #'petrucci
      \override Score.BarNumber.transparent = ##t
      \override Stem.neutral-direction = #up
    }

    finalis = {
      \once \override BreathingSign.stencil = #ly:breathing-sign::finalis
      \once \override BreathingSign.Y-offset = #0
      \once \override BreathingSign.minimum-X-extent = #'(-1.0 . 0.0)
      \once \override BreathingSign.minimum-Y-extent = #'(-2.5 . 2.5)

      \breathe
    }

    Music = \relative c'' {
      \set Score.tempoHideNote = ##t
      \key f \major
      \time 4/4
      g1 d'2 \menrest bes4 bes2 a2 r4 g4 fis2.
      \tag #'mens { \finalis }
      \tag #'mod { \bar "||" }
    }

    MenLyr = \lyricmode { So farre, deere life, deare life }
    ModLyr = \lyricmode { So far, dear life, dear life }

    \score {
      \keepWithTag #'mens {
        <<
          \new MensuralStaff
          {
            \new MensuralVoice = Cantus
              \clef "mensural-c1" \MensStyle \Music
          }
          \new Lyrics \lyricsto Cantus \MenLyr
        >>
      }
    }

    \score {
      \keepWithTag #'mod {
        \new ChoirStaff <<
          \new Staff
          {
            \new Voice = Sop \with {
              \remove "Note_heads_engraver"
              \consists "Completion_heads_engraver"
              \remove "Rest_engraver"
              \consists "Completion_rest_engraver" }
            {
              \shiftDurations #1 #0 { \autoBeamOff \Music }
            }
          }
          \new Lyrics \lyricsto Sop \ModLyr
        >>
      }
    }

## Línea vertical como una articulación barroca

Esta línea corta vertical situada encima de la nota es de uso común en música barroca. Su significado varía, pero en general indica notas que se deben tocar con más “peso”. El ejemplo siguiente muestra cómo conseguir dicha notación.

    upline =
    \tweak stencil
      #(lambda (grob)
        (grob-interpret-markup grob #{ \markup \draw-line #'(0 . 1) #}))
      \stopped

    \relative c' {
      a'4^\upline a( c d')_\upline
    }

#### LilyPond — Snippets v2.22.2 (rama estable).