Accueil du [Site] > Articles > Découvertes > LilyPond > Joyeux Noël... avec Easy LilyPond !

Joyeux Noël... avec Easy LilyPond !

dimanche 23 décembre 2007, par Valentin.

Toutes les versions de cet article : [français] [français]

Pendant des années, j’ai bassiné ma famille, mes collègues, mes élèves, sur l’air de « connaissez-vous Lilypond ? ». Cependant la plupart du temps, il faut que je l’installe moi-même sur leurs ordinateurs, que je les guide pas à pas, pour qu’ils puissent commencer à y prendre goût.

Je peux aujourd’hui vous annoncer — non sans fierté — que cette époque est révolue. Laissez moi vous présenter... EasyLilyPond !

 
Cliquez sur l’image pour télécharger l’application.
Vous pouvez aussi jeter un coup d’oeil au code source :
EasyLilyPond NSIS sources and images
Use makeNSIS to compile the sources. The installer uses ExperienceUI macros, and the Launcher uses WaNSIS skinning system. You have to include binaries for ’LilyPond’, ’LilyPondTool’, ’jEdit’, ’SumatraPDF’ and the ’jre’ as well.

Easy LilyPond, un hommage à LilyPond et LilyPondTool

Avant tout, deux mots sur le nom de ce logiciel. Easy (prononcer iizi) veut dire « facile » en anglais. Ce qui ne signifie pas que LilyPond n’est pas facile en soi : je me réfère toujours à ma grand-mère, qui sait s’en servir alors qu’il y a deux ans elle n’avait jamais touché un clavier d’ordinateur de sa vie.

Plusieurs personnes ont accompli un travail extraordinaire pour rendre lilyPond plus accessible et plus simple d’utilisation. Tout d’abord les développeurs principaux, qui, outre leurs efforts constants pour simplifier le code, ont mis au point une installation très facile sous Windows. Ensuite un certain Bertalan Fodor, qui a développé l’indispensable outil nommé LilypondTool.

Cependant, cela requiert toujours d’aller chercher, de télécharger puis d’installer une multitude de programmes sur son ordinateur, dans un certain ordre, sans parler de la configuration, des dépendances,... En effet, LilyPondTool est un plugin pour jEdit, qui dépend de la machine virtuelle Java, etc.

Dans une discussion intéressante, Bertalan a un jour proposé de regrouper quelques-uns de ces outils en un même endroit. L’idée me plaisait beaucoup, mais à condition de *vraiment* tout regrouper : que sur un ordinateur dépourvu de tout utilitaire, n’importe quel utilisateur puisse, en trois clicks, se retrouver avec un environnement de travail prêt à l’emploi.

Voilà donc ma première tentative dans cette optique. Je lui ai donné un nom débile (mais en anglais pour faire plus branché ;) et un look du même tonneau, qui ne manquera pas de paraître familier aux habitués du [Site]. (Depuis quelques jours, je suis tellement intoxiqué que la nuit je rêve de milliers de petites notes qui sautillent sur des nénuphars...)

Bien entendu, tout le code que j’ai écrit est sous licence libre (GPL).

 Installation

Voici à quoi ressemble l’installeur :

The First Installation Window

(D’accord, c’est promis, on discutera du choix des couleurs.)

Les fichiers sources sont inclus dans l’installation, afin que tout un chacun puisse voir de quoi il en retourne. L’ensemble du programme est entièrement traduit en français, et il est de plus très facile d’ajouter d’autres langues.

Setup Options Window

Un certain nombre d’options sont disponibles (dans le doute, vous pouvez tout cocher sans crainte).

  • LilyPond : je me suis servi du code source de l’installation de LilyPond, donc de cette façon il sera installé exactement aussi bien qu’avec l’installeur officiel. Laissez la case Python cochée, ça vaut mieux.
  • jEdit : c’est un éditeur de texte, écrit en Java. Vous aurez donc besoin soit d’avoir Java déjà installé sur votre ordinateur ; si vous ne l’avez pas le programme se servira de son propre Java inclus. Vous pouvez cocher la case Java sans aucun risque, ni votre système ni même votre version de Java ne seront affectés.
  • LilyPondTool : vous êtes libres de le déselectionner, mais ce srait quand même fort dommage de s’en priver. Je l’ai de plus soigneusement pré-configuré, et j’ai ajouté quelques fichiers d’exemples.
  • Sumatra : c’est un lecteur de fichiers PDF, très simple, très léger et surtout... Libre ! Autant je suis le premier à reconnaître l’utilité du format PDF, autant je suis rétif aux logiciels énormes, peu fiables et intrusifs de chez Adobe (Adobe Reader fait plus de 150 Mo, alors que Sumatra fait... 0,8 Mo !). C’est juste une question de (bon) goût : si vous voulez ouvrir vos partitions LilyPond avec Adobe, libre à vous — mais je vous aurai quand même donné une chance d’y échapper1.
  • L’option « Offshore » sert à installer EasyLilyPond sur une clé USB, pour s’en servir où l’on veut.

(Bon, pour être tout à fait honnête, ça ne marche pas à l’heure actuelle.)

 Le Lanceur d’EasyLilyPond

Pendant que j’écrivais l’installeur, je me suis soudain fait la réflexion que ce dernier pourrait lancer, une fois terminé, une petite application accueillante, « conviviale », pour employer un terme à la mode. Lorsque vous installez la version « officielle » de Lilypond, c’est une espèce de bloic-notes assez austère (et moche, disons-le) qui s’ouvre, rien de très attirant — d’autant que le fichier qui s’affiche dans ce bloc-notes n’est absolument pas traduit en aucune langue.

Au lieu d’ouvrir un vulgaire Bloc-notes, j’aurais pu ouvrir l’éditeur jEdit ; cependant ce serait méconnaître le facteur psychologique de l’utilisateur de Windows moyen. Se retrouver face à du code, comme ça, sans ambage, sans les jolis menus/icônes/curseurs auxquels on est habitué... il y a de quoi en décourager plus d’un.

Pour vous « préparer » psychologiquement à plonger dans LilyPond, j’ai donc écrit une petite application, baptisée le EasyLauncher. Comme le reste, c’est entièrement traduit en français (la capture ci-dessous est en anglais, mais c’est juste parce que j’écris cet article dans les deux langues). Quand on l’ouvre, un agréable écran d’accueil transparent apparaît, et on peut entendre une petite musique au piano (ça n’est pas de moi : c’est l’Hymne du Logiciel Libre, interprété au piano par Markus Haist, qui m’a très aimablement autorisé à l’utiliser).

De ce fait, je peux détecter la langue que parle l’utilisateur, et ouvrir en fonction de cette donnée, l’un ou l’autre fichier d’exemple : ainsi le fichier que verra un utilisateur français sera écrit avec les notes « do re mi » au lieu de « c d e ».

Bien sûr, le lanceur inclut également des liens vers le manuel d’apprentissage, la documentation, le LilyPond Snippet Repository, etc.

 Allons plus loin dans le bidouillage

OK. Maintenant, place aux gadgets vraiment geek.

Si vous n’avez pas sélectionné l’option « Skins » (habillage) dans l’installation (elle est désactivée par défaut), voici ce que vous verrez lorsque vous ouvrirez votre premier fichier dans l’éditeur jEdit :

jEdit Default Window

Mais si vous AVEZ sélectionné l’option « Skins », voici ce qui vous attend :

jEdit customized splash screen

Oui, faut aimer le vert :)

My (colorful...) new skin

J’attire votre attention sur :

  • le joli effet de flou et de transparence sous les menus (j’utilise la toute dernière librairie NimROD pour obtenir cela)
  • les icônes dans la barre d’outil principale (comparez avec les icônes par défaut ci-dessus, vous verrez la différence)
  • dans la barre d’outils LilyPondTool, j’ai remplacé la deuxième icône en partant de la gauche ; je la trouve plus explicite ainsi.

 Conclusion

En gros, EasyLilyPond est avant tout une occasion de démontrer certains « concepts » pour rendre Lilypond plus attirant, et pouvoir le diffuser plus facilement auprès des élèves, des utilisateurs Windows moyens, etc. je me suis bien amusé à travailler là-dessus (même si j’y ai passé des jours et des nuits entiers) ; je serais ravi si ça pouvait servir de point de départ à quelque chose.

Autant vous l’avouer, comme j’ai développé ça sur un vieil ordinateur bas de gamme cadencé à 600MHz, je n’ai pas beaucoup optimisé le code, et je n’ai pas la moindre idée de comment ce programme se comporterait sur une machine récente — sans parler des problèmes de compatibilités de certains systèmes d’exploitation parfaitement affligeants...

Merci de m’avoir lu,

Valentin


ATTENTION : ce programme est encore en développement. En particulier, le désinstalleur me semble peu fiable...


[1Sumatra est très minimaliste ; si vous voulez un lecteur PDF complet et léger, je vous recommande foxit.

Messages

  • Bon j’ai pris les sources et le binaire.

    Je te test tout ça et ça bug plus que de raison tu va te faire taper sur les doigts

  • Puisque notre Valentin musagète rêve de grenouilles, je propose comme nom du site : « Platée », du nom de l’opéra de Rameau, comme cela on reste dans la musique et on n’est pas si loin de lilypond : Platée est une nymphe grenouille qui vit dans un marais et autour d’elle ça chante joyeusement coa-coa...Bon, je sens que ça n’ira pas et puis c’est beaucoup trop classique.Mais c’était amusant.Je me remets à travailler mon Chopin. Cela dit, merci de vous mettre à la portée de l’utilisateur moyen de windows et d’avoir fait un travail aussi important. J’espère que cela portera ses fruits.

    • C’est amusant que vous évoquiez Rameau, étant donné qu’un des plus grands LilyPondeurs au monde, Nicolas Sceaux, est justement spécialisé dans cette musique-là.

      Je vous invite à aller voir sur son site, et à télécharger ses partitions (pour chacune, la partition toute prête est disponible au format PDF, mais aussi l’archive contenant le code source — qui est lui-même une véritable œuvre d’art en soi).

  • Bonjour

    A la recherche d’un environnement un peu plus sympa pour travailler avec Lilypond j’ai découvert votre site et installé votre logiciel, mais j’ai quelques problèmes. Je travail avec Windows XP (hélas j’ai pas encore eu le temps de me mettre à Linux !). Lors de la première utilisation j’ai réussi à me servir de LilypondTool mais depuis j’ai toujours des messages d’erreur et ne peux ainsi plus m’en servir, dommage !

    Est-il possible d’utiliser une autre version de Lilypond que celle que vous fournissez ? J’avais la version de développement 2.11.42 qui me permettait de souligner du texte et que j’aimerais bien retrouver.

    Dernière question : n’étant pas très à l’aise avec l’anglais j’avais installé le patch de francisation de Jedit : http://jojaba.free.fr/?/Programmes-... , mais je ne sais pas comment procéder pour le réinstaller. Merci de me renseigner et bravo pour l’initiative de ce projet. Gildas P

    • Bonjour Gildas,

      je vous remercie de l’intérêt que vous portez à mon projet EasyLilyPond. Il s’agit pour moi d’une toute première expérience en matière de programmation, et un certain nombre de bugs subsistent.

      À cela s’ajoute le fait que, juste après avoir posté cet article fin décembre, j’ai été nommé responsable des bugs de LilyPond lui-même, j’ai été intégré à l’équipe de développement de LilyPondTool et le temps m’a dès lors manqué pour débugger et mettre à jour EasyLilyPond. Merci de m’y faire penser, il faudra que je m’y emploie un de ces jours. Je prévoie d’ailleurs d’intégrer un outil de mise à jour automatique, il faut juste que je trouve le temps de le faire.

      Merci aussi de me signaler le pack français pour jEdit, que je ne connaissais pas. Nous sommes en train de repenser tout LilyPondTool et son intégration dans jEdit, ce serait super de pouvoir inclure des localisations. Nous avons plusieurs idées très ambitieuses, mais cela demande beaucoup de travail et de temps.

      D’après ce que vous me dites, vous m’avez de vous y connaître un peu. Dans l’immédiat, je vous conseillerais de vous passer d’EasyLilyPond en attendant des jours meilleurs... Je suis à votre disposition si vous avez besoin d’aide pour installer jEdit et LilyPond manuellement, ou si vous voulez ajouter mon thème graphique vert-rigolo :)

  • You have some bugs in html or css code in the footer. Such a wonderful post. Thanks for the share. It was very interesting and informative.

    Voir en ligne : Power Click

    • Chris,Good to hear from you again. Ironic that this is the day you got your upgrade liscnee ! Before you get too down, Sibelius hasn’t officially been killed yet but the closure of their main development office is definitely a concern for the future direction of the software. But for now, Sib7 is still a great piece of software so enjoy it ! The way I figure it both notation programs can’t die together, right ? There has to be at least one that will survive nothing else out there can truly compete at the moment, so a total de-saturation of the market just doesn’t make sense. I do wonder if Finale and Sibelius are doing a little game of chicken though which one is going to give in first ? My guess is that IF one of them does fold, the other will stay around, and have the entire market to themselves. Which one that is and who ends up owning it, though, is anybody’s guess.Cheers, Matt

      Voir en ligne : zhqnDXTqFWCF

Un message, un commentaire ?

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Vous n'êtes pas un robot ? Alors veuillez répondre à cette question essentielle :
Quelle est la moitié du mot «toto» ? 

Ajouter un document