Je comprends ta
problématique sur le nom des notes. mais tes relecteurs lisent le code
ou la aprtition finale ? Ca me paraît surprenant de corriger une parto
à partir de la source. Mais je n'ai pas toutes les billes en main !
Pour la programme, tout à fait d'accord : je ne sais faire que la
musique , et en plus en python, et en plus c'est un premier essai. Je
vois que j'ai affaire à un informaticien apparemment confirmé : je
passe ! Désolé de ne pas pouvoir t'aider un peu plus. Cela dit,
automatique signifie programmé, et à part une bonne âme qui te ponde le
programme dans le langage approprié, je crains que tu ne doives te
pastiller à la main la suite des opérations.
Bon courage !
JMarc
Jean-Jacques Rétorré a écrit :
Le 30/07/2010 17:09, Éditions IN NOMINE a écrit :
Je vais
peut-être
me mettre des musiciens à dos mais, quel est l'intérêt de passer en
notation française (do ré mi...), à part de taper du code plus long en
fait ;-)
Je conçois que l'appellation aglo saxone est rebutante u départ, mais
elle me paraît tellement plus simple.
Stoooop ! j'arrête là de troller, ça n'a aucun intérêt. C'était juste
un truc de feignant pour éviter de te répondre et de bosser donc...
Même si d'autres lilypondiens t'ont répondu avec le script automatique
de lilypond, tu peux lancer le script suivant en faisant python
lilyconverter.py avec dedans :
lilyconverter.py
import os, re, sys
#ton code denemo (les notes)
source ="
c'4 des' ees' aes'
g'8 ees'16 ees'8 ees'16 ees'
"
#correspondances anglais
français (ne pas oublier les , en fin de ligne)
dico = {
'c\'' : 'do\'',
'des\'' : 'reb\'',
'd\'' : 're\'',
'ees\'' : 'mib\'',
'e\'' : 'mi\'',
'f\'' : 'fa\'',
'fis\'' : 'fad\'',
'g\'' : 'sol\'',
}
#traduction
traduction = "".join(dico.get(c, c) for c in source)
print traduction
Tu fais un copier coller du
print
de ton terminal et le tour est joué.
Essaye avec l'exemple que je t'ai fourni (fais tourner le programme « à
la main», le résultat est loin d'être satisfaisant.
Il y a quelques difficultés avec les paroles, et avec le contenu non
musical du fichier.
Pour l'instant, je m'en sort avec lyqi qui fournit une fonction
lyqi-change-language, mais qui ne marche pas très bien et qui demande
une intervention manuelle. Je voudrais un truc tout automatique.
Soit dit au passage, perl me semble mieux adapté à ce problème que
python, étant spécialement conçu pour traiter les chaînes de caractères.
Scheme également me semble mieux adapté puisque les sources lilypond
fournissent les tables nederlands.ly et italiano.ly il suffit de passer
par la représentation interne des hauteurs.
Ce que j'en dis, c'est pour alimenter le débat, je n'ai pas vraiment
envie de traiter le problème : le goût pour ce genre d'activité m'est
passé depuis un moment déjà.
A
bientôt !
JMarc
Cela dit, je me demande pourquoi il y a besoin de faire ça... héhé...
C'est une bonne question.
Je suis en train de taper un oratorio de 60 pages dont je ne suis pas
l'auteur (c'est du lilypond-book).
L'auteur et les éventuels relecteurs n'étant pas lilypondiens ni
hollandais, je trouve plus facile de leur communiquer du code musical
auquel ils sont habitués.
C'est un travail de recopie, je le répète, je ne suis pas l'auteur de
l'oratorio. Je risque moins d'erreurs de recopie avec le code écrit
dans le style italiano que dans le style nederlands, pour moi le style
italiano est beaucoup plus facile à relire.
--
JJR.
|