Interface de définition des formules BNF et CNF
Je développe une application Web et je dois créer une page Web qui devrait permettre à mes utilisateurs de créer BNF ou CNF des formules comme celles-ci:
Certains collègues ont suggéré que je fasse la page de cette façon:
En résumé, je dois ajouter un composant de sélection pour chaque élément à l'intérieur des formules. Je n'aime pas cela et je veux des suggestions (ou des exemples) de votre part à ce sujet.
Une approche consiste à nous un outil de coloration syntaxique qui prend en charge vos grammaires tels que extensible ace editor . Cela guiderait la structure correcte en signalant quand la syntaxe BNF/CNF est correcte ou non comprise.
En étendant cette approche, vous pouvez
- ajouter des symboles spéciaux sous forme de boutons au-dessus de la zone de l'éditeur (tout comme l'interface utilisateur ux.stackexchange)
- auto-invite pour les symboles qui sont probables (voir Sublime Text comportement)
- faire une analyse de validité en temps réel (sur une base par ligne)
Les avantages de cette UX incluent
- entrée rapide pour les utilisateurs expérimentés
- guidage en temps réel solide pour les utilisateurs moins expérimentés
- prend en charge l'apprentissage de différents composants d'une langue (par exemple, opérateur, identifiant, etc.)
- Interface utilisateur qui ressemble à du texte tel que présenté dans les documents en ligne/imprimés
- Possibilité de couper et coller dans l'interface utilisateur