Subject: [Armure] Supprimer l'indice d'armure de fin de ligne

From: Bernard Choppy <[email-masked]>
Date: Wed, 30 Mar 2022 14:17:16 +0200

Bonjour,

Je tente désespérément de faire disparaître l'indication d'armure de 
précaution en fin de ligne.

J'ai essayé
     \set Staff.explicitCueClefVisibility = ##f
     \set Staff.explicitClefVisibility = ##f

mais rien ne fonctionne. Une piste ?
Merci à vous

Cordialement,

-- 
Bernard Choppy

---

From: Jean Abou Samra <[email-masked]>
Date: Wed, 30 Mar 2022 14:25:11 +0200

Bonjour,

Un petit tour par l'index des commandes,
https://lilypond.org/doc/v2.22/Documentation/notation/lilypond-command-index#lilypond-command-index_ky_letter-E
nous emmène vers
https://lilypond.org/doc/v2.22/Documentation/notation/visibility-of-objects#index-explicitClefVisibility-1
qui nous explique que explicitClefVisibility est un vecteur
#(visible-en-fin-de-ligne visible-en-milieu-de-ligne 
visible-en-début-de-ligne)

Donc :

\version "2.22.2"

{
   c'1
   \set Staff.explicitClefVisibility = ##(#f #t #t)
   \break
   \clef bass
   c'1
}

Cordialement,
Jean

---

From: Xavier Scheuer <[email-masked]>
Date: Wed, 30 Mar 2022 14:37:24 +0200

Bonjour,

L'armure c'est Key/KeySignature. Clef c'est la clé/clef (de sol, de fa,
d'ut).

Essayez
  \set Staff.explicitKeySignatureVisibility = #end-of-line-invisible
probablement avec
  \set Staff.printKeyCancellation = ##f
pour éviter les bécarres d'annulation lors d'un passage d'une armure à
dièzes à une armure à bémols et vice versa.

Cordialement,
Xavier

-- 
Xavier Scheuer <[email-masked]>

---

From: Bernard Choppy <[email-masked]>
Date: Wed, 30 Mar 2022 14:52:21 +0200

Bonjour,

>    \set Staff.explicitClefVisibility = ##(#f #t #t)

Merci beaucoup Jean,

Uh... J'ai encore du me planter entre Key et Clef... Je parle du rappel 
de l'armure en fin de ligne que je veux masquer et là, je crois que 
c'est le changement de clef qui est masqué.

Et puis cette histoire de vecteur, il va falloir que je creuse le sujet 
mais je ne pige pas tout :-(

Cordialement,

-- 
Bernard Choppy

---

From: Jean Abou Samra <[email-masked]>
Date: Wed, 30 Mar 2022 14:58:02 +0200

Le 30/03/2022 à 14:52, Bernard Choppy a écrit :
> Uh... J'ai encore du me planter entre Key et Clef... Je parle du 
> rappel de l'armure en fin de ligne que je veux masquer et là, je crois 
> que c'est le changement de clef qui est masqué.

Oui, je n'ai même pas fait attention, merci à Xavier pour la correction.

> Et puis cette histoire de vecteur, il va falloir que je creuse le 
> sujet mais je ne pige pas tout :-(

Les vecteurs sont des structures de données très différentes des listes, 
mais en première approximation, ce sont un peu comme des listes, sauf 
qu'au lieu de les écrire

#'(élément1 élément2 élément3)

on les écrit

##(élément1 élément2 élément3)

Je simplifie beaucoup, mais pour break-visibility, vous pouvez vous en 
tenir là. Sinon, il y a aussi l'alias #end-of-line-invisible mentionné 
par Xavier, qui est équivalent à ##(#f #t #t), et sans doute plus 
accessible.

Cordialement,
Jean

---

From: Bernard Choppy <[email-masked]>
Date: Wed, 30 Mar 2022 15:17:30 +0200

J'y suis !

Le 2022-03-30 14:58, Jean Abou Samra a écrit :

> Les vecteurs sont des structures de données très différentes des
> listes, mais en première approximation, ce sont un peu comme des
> listes, sauf qu'au lieu de les écrire
> 

Il faut que j'essaie de bien comprendre cela.

Toujours est-il que j'ai enfin réussi à obtenir l'effet souhaité, en 
écrivant :

     \set Staff.printKeyCancellation = ##f
     \override Staff.KeyCancellation.break-visibility = #all-invisible
     \set Staff.explicitKeySignatureVisibility = ##(#f #t #t)

La difficulté était d'obtenir la suppression des bécarres de précaution 
en fin de ligne ; c'est la ligne \override qui permet de l'obtenir.

Problème résolu. Merci !

Cordialement,

-- 
Bernard Choppy