Exemples mínims

¿Qué són els “exemples mínims”?

Un exemple mínim és un exemple del que no es pot eliminar res

¿Perquè crear-los?

  • Quant més simple és l’exemple, més ràpidament poden els desenvolupadors entendre’l i ajudar-vos.
  • Un exemple mínim demostra que us heu esforçat en resoldre el problema per vos mateix. Quan algú envia blocs grans de codi d’entrada, dóna la impressió que no li importa que l’ajudem o que no ho vol.
  • La creació d’un exemple mínim us ajuda a entendre el que esta passant. Molts informes falsos de problemes es podrien evitar intentant crear un exemple mínim; si no pot reproduir una “fallada” en un exemple mínim, probablement el problema era una compressió insuficient sobre el LilyPond, no una veritable fallada!

Com es fan?

  • Inclou el número de versió en una instrucció \version.
  • Feu-lo petit! Els exemples relacionats amb l’espaiat o la disposició de les pàgines poden requerir molts compassos, però gairebé tots els problemes es poden reproduir mitjançant un sols compàs o menys.
  • Quan intenti crear un exemple, provi a convertir en comentaris (% o %{ … %}) diferents seccions del fitxer. Si podeu convertir un bloc en un comentari i encara mostrar la idea principal, aleshores elimineu aquest bloc.
  • Eviteu la utilització de notes, tonalitats o compassos molt complicats, a no ser que la fallada estigui relacionada amb el comportament d’aquests elements.
  • No utilitzeu instruccions \override ni \set a no ser que la fallada es refereixi a aquestes instruccions en concret.
  • De forma opcional, adjunteu una imatge que mostri el resultat gràfic que desitgeu.

Quant de petit ha de ser?

El codi que segueix, és un exemple mínim?

\version "2.14.1"
\include "catalan.ly"

\score {
  \new Staff {
    \key re \major
    \numericTimeSignature
    \time 2/4
    <dos' re'' si''>16 <dos' re'' si''>8.
    %% Aquí: la lligadura d'unió sobre els Re tenen un aspecte graciós
    %% Massa alta? El punt final de la mà esquerra no s'alinea
    %% amb la lligadura del Si?
    ~
    <dos' re'' si''>8 [ <si re'' la''> ]
  }
}

Bé, no és molt gran, però vet ací un exemple veritablement mínim:

\version "2.14.1"
{
  % la lligadura intermèdia té un aspecte graciós aquí:
  <c' d'' b''>8. ~ <c' d'' b''>8
}

Molts pocs exemples mínims superen les 10 línies de codi: el més corrent és que hi hagi prou amb 4 línies per mostrar el problema!