web-dev-qa-db-fra.com

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:

enter image description here

Certains collègues ont suggéré que je fasse la page de cette façon:

enter image description here

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.

2
Skizzo

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

  1. entrée rapide pour les utilisateurs expérimentés
  2. guidage en temps réel solide pour les utilisateurs moins expérimentés
  3. prend en charge l'apprentissage de différents composants d'une langue (par exemple, opérateur, identifiant, etc.)
  4. Interface utilisateur qui ressemble à du texte tel que présenté dans les documents en ligne/imprimés
  5. Possibilité de couper et coller dans l'interface utilisateur
2
Jason A.