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 :

(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.

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 échapper [1].
- 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 :

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

Oui, faut aimer le vert ![]()

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
[Le Site]
