Les meilleurs développeurs informatique freelances sont sur Codeur.com
Fermé · 1 000 € à 10 000 € · 18 offres · 4378 vues · 11 interactions
Nous cherchons un/e développeur/se pour implémenter un analyseur syntaxique du langage AsciiDoc (langage de description de documents de type Markdown mais plus puissant).
L'analyseur sera développé en TypeScript avec la librairie de parser PEG OhmJS. Il sera organisé en deux niveaux : un parser de niveau 1 produisant une liste de blocs et un ensemble de parsers de niveaux 2 pour les contenus de différents types de blocs.
1. Parser de niveau 1 :
Texte brut => liste de blocs (à parser avec l’un des parsers de niveau 2), avec suffisamment d’information pour regénérer le texte original au caractère près (e.g., nombre de sauts de lignes entre deux blocs, commentaires). Chaque nœud devra inclure les indices de début et de fin dans le texte source (en nombre de caractères et/ou ligne/colonne).
Pour chaque bloc :
– Contenu du bloc
– ID, role et options
2. Parsers de niveau 2 :
Texte du bloc => arbre de syntaxe "suffisamment concrète" pour pouvoir regénérer le texte du bloc au cararactère près. Chaque nœud devra inclure les indices de début et de fin dans le texte du bloc (en nombre de caractères et/ou ligne/colonne).
Les types de blocs à considérer (par ordre d’importance) :
Titres
Définitions d'attributs
Paragraphe + formattage en ligne (inlines, substitutions, attributs)
Blocs délimités
Listes
Tables
Verbatim
Citations
Images (+ Audio, Vidéo ?)
Ifdef/Ifndef
Commentaires
Le parser global produira un arbre de syntaxe, dont les nœuds seront correctement typés en TypeScript, et pouvant être exporté vers JSON (et donc aussi ré-importé depuis ce JSON). Un walker devra prendre un arbre (ou un fichier JSON) et reproduire le texte d’origine. Un autre outil devra comparer deux arbres. Cela permettra notamment de simplifier les tests, mais aussi de définir un format d’échange.
Une première version, incomplète, de la grammaire AsciiDoc en OhmJS est disponible et sera fournie.
Les compétences attendues sont de bonnes connaissances en TypeScript et en analyse syntaxique, avec un plus pour la connaissance du langage AsciiDoc.
Le délai souhaité pour la réalisation de la prestation est de 3 à 4 mois.
Budget indicatif : 1 000 € à 10 000 €
Publication : 15 juillet 2024 à 14h43
Profils recherchés : Développeur spécifique freelance , Développeur JavaScript freelance , Expert BDD freelance , Développeur back-end freelance , Développeur API freelance
18 freelances ont répondu à ce projet
14 propositions de devis en moins de 2h
Montant moyen des devis proposés : 2 800 €
Estimation du délai : 26 jours