esai impression de split arrow

Bonjour et très heureuse année à tous.
J’essaie d’imprimer deux flèches éclatées pour passer d’une portée unisson à 4 portées Chœur, cela ne fonctionne pas. J’utilise le snippet trouvé dans les manuels Lilypond et bêtement recopié dans le document joint ,puis par copy-paste dans un fichier .ly
Comme cela ne marche pas dans mes essais j’ai voulu reproduire ce qui est dans le manuel tel quel. En version 2.16.2 (Windows 8.1 et Frescobaldi version précédente ) j’ai un rejet :
ligne 26:31 Erreur : syntax error, unexpected ‘.’, expecting SCM_FUNCTION or SCM_IDENTIFIER or SCM-TOKEN
\once \override Staff.BarrLine
.stencil =
Avez-vous une indication d’erreur ?
Merci
Daniel Bernair

Adding indicators to staves which get split after a break.docx (24.8 KB)

2014/1/15 Daniel Bernair <****@****>

Bonjour et très heureuse année à tous.
J’essaie d’imprimer deux flèches éclatées pour passer d’une portée
unisson à 4 portées Chœur, cela ne fonctionne pas. J’utilise le
snippet trouvé dans les manuels Lilypond et bêtement recopié dans
le document joint ,puis par copy-paste dans un fichier .ly
Comme cela ne marche pas dans mes essais j’ai voulu reproduire ce
qui est dans le manuel tel quel. En version 2.16.2 (Windows 8.1
et Frescobaldi version précédente ) j’ai un rejet :
“ligne 26:31 Erreur : syntax error, unexpected ‘.’, expecting
SCM_FUNCTION or SCM_IDENTIFIER or SCM-TOKEN
\once \override Staff.BarrLine
.stencil = “
Avez-vous une indication d’erreur ?

Salut,

Je pense que tu as utilisé le snippet trouvé dans un manuel LilyPond
dont la version est supérieure à 2.17 alors que tu utilises la version
2.16.

En effet la syntaxe \override Staff.BarLine.stencil peut être
utilisée en remplacement de \override Staff.BarLine #'stencil
seulement depuis la version 2.17.x. Je te conseille d'utiliser les

bouts de codes provenant de la version du manuel correspondant à la
version de LilyPond que tu utilises.

http://www.lilypond.org/doc/v2.16/Documentation/snippets/staff-notation#staff-notation-adding-indicators-to-staves-which-get-split-after-a-break

Par ailleurs je remarque qu'il y a une faute de frappe : il faut un
seul 'r' à BarLine.

Cordialement,
Xavier

···

--
Xavier Scheuer <****@****>

Merci Xavier,
Je vais essayer avec l’ancienne version, sinon, je passe à la version 18.
Effectivement il ne faut qu’un r à Barline, c’est une indication du log que j ‘ai ré-encodé dans mon message, car je ne savais pas faire de copy past à partir de Frescobaldi.
Amicalement
Daniel Bernair

···

From: Xavier Scheuer
Sent: Wednesday, January 15, 2014 4:08 PM
To: Daniel Bernair
Cc: Lilypond - Liste
Subject: Re: esai impression de split arrow

2014/1/15 Daniel Bernair <****@****>

Bonjour et très heureuse année à tous.
J’essaie d’imprimer deux flèches éclatées pour passer d’une portée
unisson à 4 portées Chœur, cela ne fonctionne pas. J’utilise le
snippet trouvé dans les manuels Lilypond et bêtement recopié dans
le document joint ,puis par copy-paste dans un fichier .ly
Comme cela ne marche pas dans mes essais j’ai voulu reproduire ce
qui est dans le manuel tel quel. En version 2.16.2 (Windows 8.1
et Frescobaldi version précédente ) j’ai un rejet :
“ligne 26:31 Erreur : syntax error, unexpected ‘.’, expecting
SCM_FUNCTION or SCM_IDENTIFIER or SCM-TOKEN
\once \override Staff.BarrLine
.stencil = “
Avez-vous une indication d’erreur ?

Salut,

Je pense que tu as utilisé le snippet trouvé dans un manuel LilyPond
dont la version est supérieure à 2.17 alors que tu utilises la version
2.16.

En effet la syntaxe \override Staff.BarLine.stencil peut être
utilisée en remplacement de \override Staff.BarLine #'stencil
seulement depuis la version 2.17.x. Je te conseille d'utiliser les

bouts de codes provenant de la version du manuel correspondant à la
version de LilyPond que tu utilises.

http://www.lilypond.org/doc/v2.16/Documentation/snippets/staff-notation#staff-notation-adding-indicators-to-staves-which-get-split-after-a-break

Par ailleurs je remarque qu'il y a une faute de frappe : il faut un
seul 'r' à BarLine.

Cordialement,
Xavier

--
Xavier Scheuer <****@****>

Voilà, j’ai essayé en corrigeant les deux instructions version 18 refusées par version 16.
Cela fonctionne mais j’ai deux soucis : les portées ne sont plus alignées jusqu’à droite, et justement à l’impression des flèches j’ai un changement de tonalité qui les écrase.
Comme ce n’est pas très important, j’abandonne.
Merci pour l’aide.
Daniel Bernair

···

From: Xavier Scheuer
Sent: Wednesday, January 15, 2014 4:08 PM
To: Daniel Bernair
Cc: Lilypond - Liste
Subject: Re: esai impression de split arrow

2014/1/15 Daniel Bernair <****@****>

Bonjour et très heureuse année à tous.
J’essaie d’imprimer deux flèches éclatées pour passer d’une portée
unisson à 4 portées Chœur, cela ne fonctionne pas. J’utilise le
snippet trouvé dans les manuels Lilypond et bêtement recopié dans
le document joint ,puis par copy-paste dans un fichier .ly
Comme cela ne marche pas dans mes essais j’ai voulu reproduire ce
qui est dans le manuel tel quel. En version 2.16.2 (Windows 8.1
et Frescobaldi version précédente ) j’ai un rejet :
“ligne 26:31 Erreur : syntax error, unexpected ‘.’, expecting
SCM_FUNCTION or SCM_IDENTIFIER or SCM-TOKEN
\once \override Staff.BarrLine
.stencil = “
Avez-vous une indication d’erreur ?

Salut,

Je pense que tu as utilisé le snippet trouvé dans un manuel LilyPond
dont la version est supérieure à 2.17 alors que tu utilises la version
2.16.

En effet la syntaxe \override Staff.BarLine.stencil peut être
utilisée en remplacement de \override Staff.BarLine #'stencil
seulement depuis la version 2.17.x. Je te conseille d'utiliser les

bouts de codes provenant de la version du manuel correspondant à la
version de LilyPond que tu utilises.

http://www.lilypond.org/doc/v2.16/Documentation/snippets/staff-notation#staff-notation-adding-indicators-to-staves-which-get-split-after-a-break

Par ailleurs je remarque qu'il y a une faute de frappe : il faut un
seul 'r' à BarLine.

Cordialement,
Xavier

--
Xavier Scheuer <****@****>

Xavier,
J’ai quand même essayé quelques corrections pour déplacer l’ objet sur la droite mais en vain (\once \override TextScript.extra-offset = #'(1 . 2) devant le \splitStaffBarLine mais le compilateur refuse l’instruction override )
. Les flèches s’impriment bien mais elles sont écrasées par l’armure du changement de tonalité (le début de la partition est en fa mineur et au moment de l’éclatement des portées on passe en fa majeur.) Après , on repasse en fa mineur et à l’unisson. 0 la fin de la partition le dernier accord est de nouveau éclaté en plusieurs portées et les flèches s’impriment correctement.
Si tu avais une idée ?

Daniel Bernair

···

From: Xavier Scheuer
Sent: Wednesday, January 15, 2014 4:08 PM
To: Daniel Bernair
Cc: Lilypond - Liste
Subject: Re: esai impression de split arrow

2014/1/15 Daniel Bernair <****@****>

Bonjour et très heureuse année à tous.
J’essaie d’imprimer deux flèches éclatées pour passer d’une portée
unisson à 4 portées Chœur, cela ne fonctionne pas. J’utilise le
snippet trouvé dans les manuels Lilypond et bêtement recopié dans
le document joint ,puis par copy-paste dans un fichier .ly
Comme cela ne marche pas dans mes essais j’ai voulu reproduire ce
qui est dans le manuel tel quel. En version 2.16.2 (Windows 8.1
et Frescobaldi version précédente ) j’ai un rejet :
“ligne 26:31 Erreur : syntax error, unexpected ‘.’, expecting
SCM_FUNCTION or SCM_IDENTIFIER or SCM-TOKEN
\once \override Staff.BarrLine
.stencil = “
Avez-vous une indication d’erreur ?

Salut,

Je pense que tu as utilisé le snippet trouvé dans un manuel LilyPond
dont la version est supérieure à 2.17 alors que tu utilises la version
2.16.

En effet la syntaxe \override Staff.BarLine.stencil peut être
utilisée en remplacement de \override Staff.BarLine #'stencil
seulement depuis la version 2.17.x. Je te conseille d'utiliser les

bouts de codes provenant de la version du manuel correspondant à la
version de LilyPond que tu utilises.

http://www.lilypond.org/doc/v2.16/Documentation/snippets/staff-notation#staff-notation-adding-indicators-to-staves-which-get-split-after-a-break

Par ailleurs je remarque qu'il y a une faute de frappe : il faut un
seul 'r' à BarLine.

Cordialement,
Xavier

--
Xavier Scheuer <****@****>

bonjour à tous les deux (et aux autres !)

Est ce que ça ne serait pas qu'une des commandes ne soit pas placée au bon endroit ?

(Dans \layout, par exemple.)

Désolé mais je prends le fil en route et c'est juste pour"faire avancer le schmilblick" ! :slight_smile:

···

Le 16/01/2014 10:37, Daniel Bernair a écrit :

Xavier,
J’ai quand même essayé quelques corrections pour déplacer l’ objet sur
la droite mais en vain (\once \override TextScript.extra-offset = #'(1 .
2) devant le \splitStaffBarLine mais le compilateur refuse
l’instruction override )
. Les flèches s’impriment bien mais elles sont écrasées par l’armure du
changement de tonalité (le début de la partition est en fa mineur et au
moment de l’éclatement des portées on passe en fa majeur.) Après , on
repasse en fa mineur et à l’unisson. 0 la fin de la partition le dernier
accord est de nouveau éclaté en plusieurs portées et les flèches
s’impriment correctement.
Si tu avais une idée ?
Daniel Bernair

--
JJG

Linux ? Y a moins bien mais c'est plus cher !
http://www.sky.fm/play/classical

Bonjour,
Je ne sais pas où placer cette commande de décalage ailleurs que devant l'instruction de splitt qui précède le \key f\major dans le module des instructions. Dans la commande définissant le split cela n'a pas de sens. Il n'y aurait comme possibilité que dans la définition elle-même du splitStaffBarLine mais dans ce cas il faudrait deux variables, une sans décalage et une avec décalage. Mais je ne puis le faire n'y connaissant rien à cette programmation.
Amicalement
Daniel Bernair

-----Message d'origine-----

···

From: Jean-Jacques Gerbaud
Sent: Thursday, January 16, 2014 2:50 PM
To: Daniel Bernair ; Xavier Scheuer
Cc: Lilypond - Liste
Subject: Re: esai impression de split arrow

Le 16/01/2014 10:37, Daniel Bernair a écrit :

Xavier,
J’ai quand même essayé quelques corrections pour déplacer l’ objet sur
la droite mais en vain (\once \override TextScript.extra-offset = #'(1 .
2) devant le \splitStaffBarLine mais le compilateur refuse
l’instruction override )
. Les flèches s’impriment bien mais elles sont écrasées par l’armure du
changement de tonalité (le début de la partition est en fa mineur et au
moment de l’éclatement des portées on passe en fa majeur.) Après , on
repasse en fa mineur et à l’unisson. 0 la fin de la partition le dernier
accord est de nouveau éclaté en plusieurs portées et les flèches
s’impriment correctement.
Si tu avais une idée ?
Daniel Bernair

bonjour à tous les deux (et aux autres !)

Est ce que ça ne serait pas qu'une des commandes ne soit pas placée au
bon endroit ?

(Dans \layout, par exemple.)

Désolé mais je prends le fil en route et c'est juste pour"faire avancer
le schmilblick" ! :slight_smile:

--
JJG

Linux ? Y a moins bien mais c'est plus cher !
http://www.sky.fm/play/classical

Daniel, voilà le code que notre ami Pierre Perol-Schneider m'avait envoyé;
regarde mon message là:

http://lilypond-french-users.1298960.n2.nabble.com/Inserer-un-objet-graphique-td7580411.html#a7580413

et le code de Pierre:

#(define-markup-command (arrow-at-angle layout props angle-deg length fill)
(number? number? boolean?)
(let* (
(PI-OVER-180 (/ (atan 1 1) 34))
(degrees->radians (lambda (degrees) (* degrees PI-OVER-180)))
(angle-rad (degrees->radians angle-deg))
(target-x (* length (cos angle-rad)))
(target-y (* length (sin angle-rad))))
(interpret-markup layout props
(markup
#:translate (cons (/ target-x 2) (/ target-y 2))
#:rotate angle-deg
#:translate (cons (/ length -2) 0)
#:concat (#:draw-line (cons length 0)
#:arrow-head X RIGHT fill)))))
splitStaffBarLineMarkup = \markup \with-dimensions #'(0 . 0) #'(0 . 0) {
\combine
\arrow-at-angle #45 #(sqrt 8) ##t
\arrow-at-angle #-45 #(sqrt 8) ##t
}
convDownStaffBarLineMarkup = \markup \with-dimensions #'(0 . 0) #'(0 . 0) {
\arrow-at-angle #-45 #(sqrt 8) ##t
}
convUpStaffBarLineMarkup = \markup \with-dimensions #'(0 . 0) #'(0 . 0) {
\arrow-at-angle #45 #(sqrt 8) ##t
}
splitStaffBarLine = {
\once \override Staff.BarLine.stencil =
#(lambda (grob)
(ly:stencil-combine-at-edge
(ly:bar-line::print grob)
X RIGHT
(grob-interpret-markup grob splitStaffBarLineMarkup)
0))
\break
}
convDownStaffBarLine = {
\once \override Staff.BarLine.stencil =
#(lambda (grob)
(ly:stencil-combine-at-edge
(ly:bar-line::print grob)
X RIGHT
(grob-interpret-markup grob convDownStaffBarLineMarkup)
0))
\break
}
convUpStaffBarLine = {
\once \override Staff.BarLine.stencil =
#(lambda (grob)
(ly:stencil-combine-at-edge
(ly:bar-line::print grob)
X RIGHT
(grob-interpret-markup grob convUpStaffBarLineMarkup)
0))
\break
}

Le tout marche excellement bien!

Bernard

···

-----
Cordialement

Bernard
--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/esai-impression-de-split-arrow-tp7580815p7580824.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

Merci Bernard et Pierre pour votre aide. Cette commande est intéressante pour moi car je me demandais comment imprimer également des flèches montantes ou descendantes. Super, j'ai l'outil. Cependant, j'ai dû le corriger pour le ramener en version 16 comme indiqué dans un message précédent.
Cependant, les fèches sont écrasées par l'armure de changement de tonalité. Les flèches et l'armure doivent se coller à une barre de mesure. C'est pourquoi j'aurais voulu déplacer sur la droite (un cm ou plus selon l'armure) l'impression de ces flèches, mais pas toujours selon qu'il y ait ou non armure.
J'ai donc dû changer ma partition en déplaçant une mesure de silences après l'impression de l'armure puis faire l'impression des flèches. Dans ce cas cela allait mais ce ne sera pas toujours possible.
Dans le snippet, ce problème ne se voit pas car l'exemple se termine trop tôt, sans changement de tonalité ni continuité de la première voix.
Pierre, vois-tu, dans ta commande le moyen de décaler ?
Merci.
Daniel Bernair

-----Message d'origine-----

···

From: bameylan
Sent: Friday, January 17, 2014 12:54 AM
To: lilypond-user-fr@gnu.org
Subject: Re: esai impression de split arrow

Daniel, voilà le code que notre ami Pierre Perol-Schneider m'avait envoyé;
regarde mon message là:

http://lilypond-french-users.1298960.n2.nabble.com/Inserer-un-objet-graphique-td7580411.html#a7580413

et le code de Pierre:

#(define-markup-command (arrow-at-angle layout props angle-deg length fill)
(number? number? boolean?)
(let* (
(PI-OVER-180 (/ (atan 1 1) 34))
(degrees->radians (lambda (degrees) (* degrees PI-OVER-180)))
(angle-rad (degrees->radians angle-deg))
(target-x (* length (cos angle-rad)))
(target-y (* length (sin angle-rad))))
(interpret-markup layout props
(markup
#:translate (cons (/ target-x 2) (/ target-y 2))
#:rotate angle-deg
#:translate (cons (/ length -2) 0)
#:concat (#:draw-line (cons length 0)
#:arrow-head X RIGHT fill)))))
splitStaffBarLineMarkup = \markup \with-dimensions #'(0 . 0) #'(0 . 0) {
\combine
\arrow-at-angle #45 #(sqrt 8) ##t
\arrow-at-angle #-45 #(sqrt 8) ##t
}
convDownStaffBarLineMarkup = \markup \with-dimensions #'(0 . 0) #'(0 . 0) {
\arrow-at-angle #-45 #(sqrt 8) ##t
}
convUpStaffBarLineMarkup = \markup \with-dimensions #'(0 . 0) #'(0 . 0) {
\arrow-at-angle #45 #(sqrt 8) ##t
}
splitStaffBarLine = {
\once \override Staff.BarLine.stencil =
#(lambda (grob)
(ly:stencil-combine-at-edge
(ly:bar-line::print grob)
X RIGHT
(grob-interpret-markup grob splitStaffBarLineMarkup)
0))
\break
}
convDownStaffBarLine = {
\once \override Staff.BarLine.stencil =
#(lambda (grob)
(ly:stencil-combine-at-edge
(ly:bar-line::print grob)
X RIGHT
(grob-interpret-markup grob convDownStaffBarLineMarkup)
0))
\break
}
convUpStaffBarLine = {
\once \override Staff.BarLine.stencil =
#(lambda (grob)
(ly:stencil-combine-at-edge
(ly:bar-line::print grob)
X RIGHT
(grob-interpret-markup grob convUpStaffBarLineMarkup)
0))
\break
}

Le tout marche excellement bien!

Bernard

-----
Cordialement

Bernard
--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/esai-impression-de-split-arrow-tp7580815p7580824.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

_______________________________________________
liste de diffusion lilypond-user-fr
lilypond-user-fr@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user-fr

Bonjour Daniel, Bernard, bonjour et bonne année à tous,

Ci-joint une solution rapide, pas très propre dans la mesure où un réglage
spécifique doit être fait en fonction de l'armure (voir ligne 28)

SplitStaffs.ly (4.59 KB)

SplitStaffs.pdf (39.3 KB)

···

Le 18 janvier 2014 08:36, Daniel Bernair <****@****> a écrit :

Pierre, vois-tu, dans ta commande le moyen de décaler ?

Une idée venue en faisant la cuisine ; petite modif jointe.

SplitInFourStaffs.ly (4.72 KB)

SplitInFourStaffs.pdf (39.8 KB)

Mille fois merci à vous tous pour votre aide et votre efficacité. Très heureuse année 2014 à Pierre également.
Daniel Bernair

···

From: Pierre Perol-Schneider
Sent: Saturday, January 18, 2014 1:30 PM
To: Daniel Bernair
Cc: bameylan ; lilypond-user-fr
Subject: Re: esai impression de split arrow

Une idée venue en faisant la cuisine ; petite modif jointe.

Je viens de m'apercevoir que ma solution fait apparaître un espace
disgracieux (voir image jointe).
Je regarderai ça plus tard.

···

Le 18 janvier 2014 17:00, Daniel Bernair <****@****> a écrit :

  Mille fois merci à vous tous pour votre aide et votre efficacité.