Subject: crochet de prise main gauche

From: Moebius <[email-masked]>
Date: Tue, 6 Apr 2021 13:53:16 +0200

Bonjour tout le monde,
Pour l'écriture de piano, je cherche un moyen pour indiquer , avec un 
petit crochet, que des notes d'une portée doivent être jouées avec la 
main de l'autre portée, comme ici :
http://dl.free.fr/s3wUDnZwf
Mais je n'ai rien trouvé....

cordialement,

---

From: Jacques Menu <[email-masked]>
Date: Tue, 6 Apr 2021 14:16:19 +0200

Bonjour Moebius,

Si ton outil de courriel le permet, il est plus simple de copier/coller le fichier PNG dans le message.

Est-ce que cet exemple peut t’aider?

\version "2.19.80"

hook =
#(let (
        (direction? (lambda (n) (= 1 (abs n))))
        )

   (define-event-function (direction on-line len)
     (direction? boolean? number?)
     (let* (
             (self-al (if on-line 0.6 0.31))
             (self-al (if (= direction 1) (- self-al) self-al))
             (hook-markup
              #{
                \markup \path #0.175 #`((moveto 0 0)
                                        (rlineto -0.85 0)
                                        (rlineto 0 ,len))
              #}
              )
             )
       #{
         \tweak self-alignment-Y $self-al
         \tweak extra-spacing-width #'(-.5 . 0)
         \finger \markup \scale #(cons 1 direction) #hook-markup
       #}
       )
     )
   )

\layout {
  \context {
    \Voice
    fingeringOrientations = #'(left)
  }
}

{
  <c''-\hook #DOWN ##f 2>4 <d''-\hook #UP ##t 6>

  c''-\hook #DOWN ##f 2 4 d''-\hook #UP ##t 6
}

> Le 6 avr. 2021 à 13:53, Moebius <[email-masked]> a écrit :
> 
> Bonjour tout le monde,
> Pour l'écriture de piano, je cherche un moyen pour indiquer , avec un petit crochet, que des notes d'une portée doivent être jouées avec la main de l'autre portée, comme ici :

---

From: Moebius <[email-masked]>
Date: Tue, 6 Apr 2021 15:19:57 +0200

Merci beaucoup, rapide !
Par contre, je n'ai pas tout compris : pour quelle raison est-ce parfois 
sous forme d'accords, parfois non ?
Je ne voudrais pas abuser mais quelle est la syntaxe exacte ? J'ai du 
mal à le déterminer...
cordialement,

---

From: Jacques Menu <[email-masked]>
Date: Tue, 6 Apr 2021 16:43:13 +0200

hook une variable contenant un (let …), qui retourne comme valeur la dernière valeur entre parenthèses, qui est ici 

qui définit une fonction avec les trois paramètres direction (une direction), on-line (un booléen) et len (un nombre).

Donc hook a cette fonction comme valeur. C’est le côté « les fonctions sont des valeurs qu’on peut stocker dans des variables et retourner comme valeur de fonctions de Scheme », ce qu’on dit autrement par « les fonctions sont des citoyens de première classe » (firsts class citizens en anglais), comme le sont les entiers et les chaînes de caractères. C’est une caractéristique des langages dit fonctionnels, dont Scheme fait partie.

Lors de l’appel à cette fonction dans :

	\hook #DOWN ##f 2

direction reçoit la valeur #DOWN,
on-line reçoit la valeur #f, donc faux
et len reçoit la valeur 2, qui est la longueur de la partie verticale du crochet.

Les accords ne contiennent qu’une note, j’avais laissé ça quand j’ai mis de côté cet exemple de la liste anglophone.

hook fonctionne aussi sans ça bien sûr, comme tu peux le voir avec :

{

  c''-\hook #DOWN ##f 2

  d''-\hook #UP ##t 6
}

JM

> Le 6 avr. 2021 à 15:19, Moebius <[email-masked]> a écrit :
> 
> Merci beaucoup, rapide !
> Par contre, je n'ai pas tout compris : pour quelle raison est-ce parfois sous forme d'accords, parfois non ?
> Je ne voudrais pas abuser mais quelle est la syntaxe exacte ? J'ai du mal à le déterminer...
> cordialement,
> 
>

---

From: Jacques Menu <[email-masked]>
Date: Tue, 6 Apr 2021 16:44:27 +0200

> et len reçoit la valeur 2, qui est la longueur de la partie verticale du crochet.

Elle est dessinée par (rlineto 0 ,len)