Open oliverpool opened 9 years ago
Je suppose qu'il vaut mieux attendre l'intégration de ChordPro dans patacrep avant de parser correctement (@Luthaf : tu penses que c'est bientôt prêt ?).
Il faut que je me motive pour écrire le script de transition de patadata. Sinon, le format est supporté sans problème par patanet.
Il faut que je me motive pour écrire le script de transition de patadata. Sinon, le format est supporté sans problème par patanet.
Excepté pour les accords et les tablatures (qui sont, si je me souviens bien, copiés sans analyse). Mais c'est toujours dans ma todo liste.
J'ai pris un peu de temps pour le projet et j'ai trouvé ce site (http://ukegeeks.com/demo.htm) qui permet de rendre les fichiers chordpro (et de les éditer).
L'affichage des chant me parait tout à fait correct (je n'ai pas encore regardé le code) et je pense qu'avec quelques améliorations, il y a moyen de faire quelque chose de pas mal (édition live, voire unifiée).
PS : le site est destiné aux Ukulélés PPS : sources dispo sur https://github.com/buzcarter/UkeGeeks
J'ai trouvé un outils ultra puissant de Parsing (en JavaScript): http://pegjs.org/online Cela pourrait permettre:
Voici la grammaire (assez moche je reconnais) que j'ai écrite en un soir pour convertir LaTeX vers chordpro : https://www.zerobin.net/?ea2f1a7c1b3d9fbd#Ke+U8OcW7jIwun4pQZXSJO1PToioLpjmLLGU0QN41EI= (testé juste avec le chant Greensleeves)
J'ai pris un peu de temps pour le projet et j'ai trouvé ce site (http://ukegeeks.com/demo.htm) qui permet de rendre les fichiers chordpro (et de les éditer).
C'est super cool ça ! Le rendu en "statique" est fait en JS, c'est bien ça ?
J'ai trouvé un outils ultra puissant de Parsing (en JavaScript): http://pegjs.org/online
Pour le parsing en live des chants, il est déja implémenté en Python ici, et on pourra faire de l'AJAX pour gérer le temps réel.
Pour le script de transition, j'avais commencé quelque chose (https://github.com/patacrep/patadata/pull/17), et il n'y a pas besoin d'instance node, étant donné que le dépôt sera entierement transformé en chordpro. Si tu es motivé pour faire la transition avec JS, lance-toi !
J'ai un peu avancé sur le sujet...
Je ne sais pas trop comment "servir" les images des albums. Pour l'instant j'ai un "hack" dans loca_settings pour que http://127.0.0.1:8000/data/songs/as_de_trefle/haut-les-nains.jpg soit affiché:
STATICFILES_DIRS = settings.STATICFILES_DIRS + (SONGS_LIBRARY_DIR,)
Il y a sûrement plein de choses à corriger/nettoyer, n'hésitez pas à commenter ! (j'ai conscience d'avoir une belle marge de progression en python ^^).
Je ne sais pas trop comment "servir" les images des albums. Pour l'instant j'ai un "hack" dans loca_settings pour que http://127.0.0.1:8000/data/songs/as_de_trefle/haut-les-nains.jpg soit affiché:
Semi-problème ici : on donne accès à tous les fichiers dans SONGS_LIBRARY_DIR
, ce qui n'est peut-être pas le mieux. On pourrais ajouter une étape de copie des images dans STATIC_DIR dans la fonction manage.py importsongs
.
Sinon le code me semble bon !
on donne accès à tous les fichiers dans SONGS_LIBRARY_DIR, ce qui n'est peut-être pas le mieux.
Ca ne me dérange pas outre mesure, car SONGS_LIBRARY_DIR
est patadata !
Merci pour la relecture :smile:
Je suis en train de me dire que la langue est assez inutile dans la SongView
, je propose donc de ne pas l'afficher (il peut-être utile en BDD pour trier ou filtrer une collection de chants)
Avant d'aller plus loin, je vais attendre la résolution de https://github.com/patacrep/patacrep/issues/93
Ca ne me dérange pas outre mesure, car SONGS_LIBRARY_DIR est patadata !
Pas nécessairement, si on implémente des bibliothèques locales pour avoir des chants privés (cf https://github.com/patacrep/patanet/issues/42#issuecomment-44861949)
J'avais oublié ce paramètre.
Mais du coup tu ne voulais pas faire un autre dossier (datadir) pour les chants privés? (qui lui ne serait donc pas exposé)
Mais du coup tu ne voulais pas faire un autre dossier (datadir) pour les chants privés? (qui lui ne serait donc pas exposé)
Ça dépends comment ç'est fait. On peut soit laisser ça tel quel avec un commentaire "attention, expose tout patadata", soit écrire une vue pour servir ces fichiers.
Ok, comme tu préfères !
Comme évoqué dans #132, voici des tests de design pour intégrer les informations tirées des chants.
Pour l'instant les "informations" sont purement arbitraires (et rarement en rapport avec le chant). Je suppose qu'il vaut mieux attendre l'intégration de ChordPro dans patacrep avant de parser correctement (@Luthaf : tu penses que c'est bientôt prêt ?).
La deuxième étape sera l'interface pour modifier les chants (là aussi avec des données factices dans un premier temps).
Cette branche est un WorkInProgress (voir les
TODO
innombrables^^).