Ci-joint 2 images et un fichier.ly qui montrent les problèmes.
1. Est-il possible de séparer les 2 têtes de notes sol bemol-sol comme l'on peut voir sur Chopin-1.png ?
2. Je n'ai pas trouvé comment faire passer l'Ottava en-dessous de la Phrasing Slur!!! Aucune commande du fichier ne marche.
Et pour le dessert, Chopin-2.png montre le petit zig-zag qu'a dessiné le graveur pour cette Ottava. Mais ce problème n'est pas très important, à mon avis, on peut faire sans.
Je ne sais pas si j'ai trouvé la meilleure solution pour la mesure 0,
J'obtiens ce message à la compile:
Avertissement : la vérification du type de « stencil » a échoué ;
la valeur « #t » doit être du type « stencil »
Ci-joint 2 images et un fichier.ly qui montrent les problèmes.
1. Est-il possible de séparer les 2 têtes de notes sol bemol-sol comme
l'on peut voir sur Chopin-1.png ?
2. Je n'ai pas trouvé comment faire passer l'Ottava en-dessous de la
Phrasing Slur!!! Aucune commande du fichier ne marche.
Et pour le dessert, Chopin-2.png montre le petit zig-zag qu'a dessiné le
graveur pour cette Ottava. Mais ce problème n'est pas très important, à
mon avis, on peut faire sans.
Je ne sais pas si j'ai trouvé la meilleure solution pour la mesure 0,
J'obtiens ce message à la compile:
Avertissement : la vérification du type de « stencil » a échoué ;
la valeur « #t » doit être du type « stencil »
Si quelqu'un a une idée...
qqs idées:
ad 1) http://lsr.dsi.unimi.it/LSR/Item?id=505 pourrait être utile
ad 2) il faut mettre le outside-staff-priority de l'ottava plus petite que
celle du phrasing-slur (je ne connais pas le setting de lilypond, donc je
définis les deux):
Ci-joint 2 images et un fichier.ly qui montrent les problèmes.
1. Est-il possible de séparer les 2 têtes de notes sol bemol-sol comme l'on
peut voir sur Chopin-1.png ?
Je n'aurais pas trouvé si quelqu'un n'avait pas posé la même question
sur la liste internationale aujourd'hui aussi. Tu peux te baser sur
le snippet suivant, bien que la solution ne soit pas élégante. http://lsr.dsi.unimi.it/LSR/Item?id=505
2. Je n'ai pas trouvé comment faire passer l'Ottava en-dessous de la
Phrasing Slur!!! Aucune commande du fichier ne marche.
puis tu peux jouer sur la valeur de #'padding ou #'staff-padding .
Et pour le dessert, Chopin-2.png montre le petit zig-zag qu'a dessiné le
graveur pour cette Ottava. Mais ce problème n'est pas très important, à mon
avis, on peut faire sans.
Pas de dessert pour moi !
Je ne sais pas si j'ai trouvé la meilleure solution pour la mesure 0,
J'obtiens ce message à la compile:
Avertissement : la vérification du type de « stencil » a échoué ;
la valeur « #t » doit être du type « stencil »
Si quelqu'un a une idée...
\revert Voice.Slur #'stencil
Le contraire de \override , pour revenir à la valeur par défaut c'est
\revert . C'est dans le manuel, j'ai la flemme de chercher où.
1) Il faut un \override pour le grob NoteCollision, propriété positioning-done. Il suffit d'écrire une fonction qui crée le bon écart entre les têtes de notes (les têtes de notes sont stockées dans l'objet "note-heads" du Stem (hampe) - utilise ly:grob-translate-axis! pour décaler les notes).
2) Ensuite, il faut un \override pour la propriété stencil qui cherche les têtes de notes (encore une fois stockées dans l'objet note-heads) et qui dessine des traits entre (+ (ly:grob-property stem 'stem-end-position) (* (ly:grob-property stem 'direction) (ly:grob-property stem 'length))) et les bords des notes.
Avec cette solution, LilyPond intègre les écarts entre les notes dans son engin d'espacement horizontal - il ne faut plus bidouiller avec extra-offset (qui, à mon avis, est à proscrire dans 99 % des cas).
Bonne schemage !
Bien à toi,
~Mike
···
On Dec 19, 2011, at 10:27 PM, Xavier Scheuer wrote:
2011/12/19 Phil Hézaine <****@****>:
Bonsoir à tous,
Ci-joint 2 images et un fichier.ly qui montrent les problèmes.
1. Est-il possible de séparer les 2 têtes de notes sol bemol-sol comme l'on
peut voir sur Chopin-1.png ?
Je n'aurais pas trouvé si quelqu'un n'avait pas posé la même question
sur la liste internationale aujourd'hui aussi. Tu peux te baser sur
le snippet suivant, bien que la solution ne soit pas élégante. http://lsr.dsi.unimi.it/LSR/Item?id=505
\relative c' {
\override Stem #'positioning-done = #positioning-done
\override Stem #'stencil = #stencil
<d d d> <d d d d d> <d d d> <d d d d d d d>
}
\relative c'' {
\override Stem #'positioning-done = #positioning-done
\override Stem #'stencil = #stencil
<d d d> <d d d d d> <d d d> <d d d d d d d>
}
Cordialement,
~Mike
···
On Dec 19, 2011, at 10:45 PM, ****@**** wrote:
On Dec 19, 2011, at 10:27 PM, Xavier Scheuer wrote:
2011/12/19 Phil Hézaine <****@****>:
Bonsoir à tous,
Ci-joint 2 images et un fichier.ly qui montrent les problèmes.
1. Est-il possible de séparer les 2 têtes de notes sol bemol-sol comme l'on
peut voir sur Chopin-1.png ?
Je n'aurais pas trouvé si quelqu'un n'avait pas posé la même question
sur la liste internationale aujourd'hui aussi. Tu peux te baser sur
le snippet suivant, bien que la solution ne soit pas élégante. http://lsr.dsi.unimi.it/LSR/Item?id=505
C'est jouable - quelques pistes à explorer :
1) Il faut un \override pour le grob NoteCollision, propriété positioning-done. Il suffit d'écrire une fonction qui crée le bon écart entre les têtes de notes (les têtes de notes sont stockées dans l'objet "note-heads" du Stem (hampe) - utilise ly:grob-translate-axis! pour décaler les notes).
2) Ensuite, il faut un \override pour la propriété stencil qui cherche les têtes de notes (encore une fois stockées dans l'objet note-heads) et qui dessine des traits entre (+ (ly:grob-property stem 'stem-end-position) (* (ly:grob-property stem 'direction) (ly:grob-property stem 'length))) et les bords des notes.
Avec cette solution, LilyPond intègre les écarts entre les notes dans son engin d'espacement horizontal - il ne faut plus bidouiller avec extra-offset (qui, à mon avis, est à proscrire dans 99 % des cas).
Et ben voilà je viens de me planter sur deux listes LilyPond (je n'ai pas encore fini mon café matinal...ça va...). J'aurais dû préciser que j'ai utilisé la version de développement pour compiler le fichier - la fonction ly:stem::calc-stem-begin-position n'existe pas dans la version 2.14.2. Tu peux grosso modo obtenir la même chose en utilisant (interval-center (ly:grob-extent nh (ly:grob-parent grob Y) Y)) où grob est la hampe et nh est la tête de note.
~Mike
···
On Dec 20, 2011, at 8:56 AM, ****@**** wrote:
On Dec 19, 2011, at 10:45 PM, ****@**** wrote:
On Dec 19, 2011, at 10:27 PM, Xavier Scheuer wrote:
2011/12/19 Phil Hézaine <****@****>:
Bonsoir à tous,
Ci-joint 2 images et un fichier.ly qui montrent les problèmes.
1. Est-il possible de séparer les 2 têtes de notes sol bemol-sol comme l'on
peut voir sur Chopin-1.png ?
Je n'aurais pas trouvé si quelqu'un n'avait pas posé la même question
sur la liste internationale aujourd'hui aussi. Tu peux te baser sur
le snippet suivant, bien que la solution ne soit pas élégante. http://lsr.dsi.unimi.it/LSR/Item?id=505
C'est jouable - quelques pistes à explorer :
1) Il faut un \override pour le grob NoteCollision, propriété positioning-done. Il suffit d'écrire une fonction qui crée le bon écart entre les têtes de notes (les têtes de notes sont stockées dans l'objet "note-heads" du Stem (hampe) - utilise ly:grob-translate-axis! pour décaler les notes).
2) Ensuite, il faut un \override pour la propriété stencil qui cherche les têtes de notes (encore une fois stockées dans l'objet note-heads) et qui dessine des traits entre (+ (ly:grob-property stem 'stem-end-position) (* (ly:grob-property stem 'direction) (ly:grob-property stem 'length))) et les bords des notes.
Avec cette solution, LilyPond intègre les écarts entre les notes dans son engin d'espacement horizontal - il ne faut plus bidouiller avec extra-offset (qui, à mon avis, est à proscrire dans 99 % des cas).
Bonne schemage !
Bien à toi,
~Mike
Je me suis trompé de grob - il faut faire l'\override de positioning-done avec Stem.
\relative c' {
\override Stem #'positioning-done = #positioning-done
\override Stem #'stencil = #stencil
<d d d> <d d d d d> <d d d> <d d d d d d d>
}
\relative c'' {
\override Stem #'positioning-done = #positioning-done
\override Stem #'stencil = #stencil
<d d d> <d d d d d> <d d d> <d d d d d d d>
}
Et ben voilà je viens de me planter sur deux listes LilyPond
(je n'ai pas encore fini mon café matinal...ça va...).
J'aurais dû préciser que j'ai utilisé la version de développement
pour compiler le fichier - la fonction ly:stem::calc-stem-begin-position
n'existe pas dans la version 2.14.2. Tu peux grosso modo obtenir la même
chose en utilisant (interval-center (ly:grob-extent nh (ly:grob-parent grob Y) Y)) où grob est la hampe et nh est la tête de note.
~Mike
Salut à tous,
Pour l'Ottava et la Phrasing Slur la solution d'Eluze donne une meilleure gestion de l'espacement.
\override Voice.PhrasingSlur #'outside-staff-priority = #333
\override Staff.OttavaBracket #'outside-staff-priority = #332
Mais à positionner absolument après la mesure 0 sinon je n'arrive plus à gérer les control-points.
Merci également pour le \revert Voice.Slur #'stencil
Pour Xavier:
> Le contraire de \override , pour revenir à la valeur par défaut c'est
> \revert . C'est dans le manuel, j'ai la flemme de chercher où.
Accordé!
Pour Mike:
La fonction marche impec avec la 2.15.22 mais il reste un petit défaut.
Les altérations ne se placent pas devant chaque tête de note mais se juxtaposent seulement au début de l'accord. Génant.
Exemple:
\relative c' {
\override Stem #'positioning-done = #positioning-done
\override Stem #'stencil = #stencil
<d! dis> <d d d d d> <dis d d!> <d d d d d d d>
}
N.B. Je n'ai que des difficultés pour manier Scheme. J'avais commencé à l'apprendre en vue d"améliorer le Puzzle du Batteur, particulièrement pour essayer de remplacer toutes mes commandes de substitutions faites avec sed par un traitement plus interne. Bon, un trop gros morceau tout de même pour moi qui ne suis pas programmeur. J'avais bien trouvé quelques débuts de pistes en grappillant à droite à gauche des fonctions déjà écrites par d'autres et en les transformant, mais je finissais toujours par être bloqué.
Depuis j'ai abandonné.