URL: https://linuxfr.org/users/siltaar/journaux/convertir-des-dates-avec-month_nb Title: Convertir des dates avec month_nb Authors: Siltaär Date: 2020年01月14日T00:02:51+01:00 License: CC By-SA Tags: meta-presses, javascript, python, taptempo, json, nodejs et npm Score: 12 `month_nb` est un petit utilitaire permettant de traduire le nom d'un mois en son nombre, quelle que soit sa langue (fonctionne pour 69 langues actuellement). ```javascript>> month_nb('août'); 8 ``` J'ai raconté la génèse du projet sur le [blog de Meta-Press.es](https://www.meta-press.es/fr/journal/2019/month_nb-released.html). La principale motivation vient du fait que rien n'est prévu pour `parser` des dates internationales en JavaScript (une fois sorti du format ISO et des formats anglais on est livré à soi-même). En m'inspirant de la [traduction en français](https://fr.eloquentjavascript.net/contributors.html) du livre web Eloquant JavaScript de Marijn Haverbeke, j'ai fini par aboutir à une séparation propre des données et du code :> Sous la surface de la machine, le programme évolue. Sans effort, il prend de l’ampleur et se contracte. Avec beaucoup d’harmonie, les électrons se dispersent et se regroupent. Les formes sur le moniteur ne sont que l’écume de la vague.>> Quand les créateurs ont construit la machine, ils y ont mis un processeur et de la mémoire. À partir de là surgissent les deux points de vue sur le programme.>> Du côté du processeur, l’élément actif est appelé Contrôle. Du côté de la mémoire, l’élément passif est appelé Données. -- [Les deux points de vue](https://fr.eloquentjavascript.net/chapter6.html), Le livre de la programmation, EloquentJavascript.net, Marijn Haverbeke Aujourd'hui le projet est articulé autour d'un arbre d'expression rationnelles qu'il suffit de parcourir en profondeur d'abord pour trouver le numéro d'un nom de mois, quelle que soit sa langue, et sans avoir à connaître cette dernière. La structure de donnée est réutilisable pour d'autres langages de programmation. J'ai commencé avec une version Python qui a fonctionné directement pour 49 langues (je n'ai pas encore compris ce qui coince pour les autres). Le programme mériterait probablement aussi d'être empaqueté pour NodeJS, mais en attendant, il est utilisable pour [ajouter un nouveau journal à l'index de Meta-Press.es](https://framagit.org/Siltaar/meta-press-ext#user-content-how-to-add-a-newspaper-to-the-search-engine) ! Ayant suivi de près le feuilleton Tap-Tempo, je me disais que les 30 lignes de code utiles pour décliner `month_nb` dans d'autres langages [démangeraient peut être certains d'entre vous](https://framagit.org/Siltaar/month_nb) :-)

AltStyle によって変換されたページ (->オリジナル) /