Diagramas de trastes para el respaldo de acordes en Lilypond (Música, Guitarra, Lilypond)

timbo preguntó.

He creado el siguiente código de Lilypond

% one octave above middle c
song = {
  relative c'' {
    time 4/4
    tempo 4 = 66
    c c d e
    f1
    f4 f c d
    e1 | break
    e4 e f e
    d e d2
    c4 d c a
    g1 | break
    d'2 d4 b
    c1
    e4 f e d
    c1 | break
    c4 d e f
    g2 e
    f4 e d c
    c1 bar "|."
  }
}

score {
  <<
    chords {
      c d:m f:m c
      a:m d f:m c
      g c d f
      f:m c2 a d:m g c
    }
    
ew Staff { song }
    
ew TabStaff { song }
  >>
}

que produce tanto la melodía en los pentagramas como los acordes de acompañamiento:

Quiero añadir diagramas de trastes para los acordes de acompañamiento utilizando

include "predefined-guitar-fretboards.ly"

pero si utilizo ChordMode, parece que las notas de los pentagramas se convierten en los acordes.

2 respuestas
timbo

La respuesta de @ksnortum estructura los acordes en una variable, pero curiosamente

  • la temporización de las notas de la melodía cambia inesperadamente de negras a medias
  • los acordes se supone que son cuatro por compás

Fijar los tiempos explícitamente en la primera nota y el primer acorde produce el resultado deseado:

theChords = chordmode {
  c1 d:m f:m c
  a:m d f:m c
  g c d f
  f:m c2 a d:m g c
}

% one octave above middle c
song = {
  relative c'' {
    time 4/4
    tempo 4 = 66
    c4 c d e
    f1
    f4 f c d
    e1 | break
    e4 e f e
    d e d2
    c4 d c aes
    g1 | break
    d'2 d4 b
    c1
    e4 f e d
    c1 | break
    c4 d e f
    g2 e
    f4 e d c
    c1 bar "|."
  }
}

score {
  <<
    
ew ChordNames { theChords }
    
ew FretBoards { theChords }
    
ew Staff { song }
    
ew TabStaff { song }
  >>
}

ksnortum

Así es como lo haría yo:

version "2.18.2"

include "predefined-guitar-fretboards.ly"

% one octave above middle c
song = {
  relative c'' {
    time 4/4
    tempo 4 = 66
    c c d e
    f1
    f4 f c d
    e1 | break
    e4 e f e
    d e d2
    c4 d c a
    g1 | break
    d'2 d4 b
    c1
    e4 f e d
    c1 | break
    c4 d e f
    g2 e
    f4 e d c
    c1 bar "|."
  }
}

theChords = chordmode {
  c d:m f:m c
  a:m d f:m c
  g c d f
  f:m c2 a d:m g c
}

score {
  <<
    
ew ChordNames { theChords }
    
ew FretBoards { theChords }
    
ew Staff { song }
    
ew TabStaff { song }
  >>
}

Comentarios

  • Gracias pero esto es lo que he probado antes. Los diapasones aparecen pero las notas de la melodía se interpretan ahora como medias notas. Retorciendo las cosas para ver si consigo que todo esto funcione. –  > Por timbo.
  • @timbo: Los nombres de los acordes en la variableChords no tienen valores de resistencia (por ejemplo c1 d2:m, etc.) Añade estos y deberías estar bien. –  > Por ksnortum.