Existe-t-il des surligneurs de syntaxe JavaScript Live? [fermé]
-
09-06-2019 - |
Question
J'ai trouvé des surligneurs de syntaxe mettant en évidence le code préexistant, mais j'aimerais le faire au fur et à mesure que vous tapez avec un éditeur de style WYSIWYG. Je n'ai pas besoin de fonctions auto-complétées, juste de la surbrillance.
Comme question complémentaire, quel est l'éditeur WYSIWYG utilisé par stackoverflow?
Edit: Grâce à la réponse ci-dessous, j'en ai trouvé deux qui pourraient répondre à mes besoins: EditArea et CodePress
EDIT: Voir aussi cette question:
https://stackoverflow.com/questions/379185/free-syntax-highlighting- éditeur-contrôle-en-javascript
La solution
Voici un article très intéressant sur la façon d’en écrire un: (Mieux encore, il donne le code source complet à un formateur et à un coloriseur JavaScript.)
Implémentation d'un éditeur JavaScript en JavaScript activé par la syntaxe ou Une odyssée brutale sur le côté obscur de l’arbre DOM
Comment fait-on une syntaxe décente mise en évidence? Une numérisation très simple peut faire la différence entre chaînes, commentaires, mots-clés et autres code. Mais cette fois je voulais effectivement être capable de reconnaître régulière expressions, de sorte que je n'avais pas comportement incorrect flagrant.
Fait important, il gère correctement les expressions rationnelles. Il est également intéressant de noter qu’il a utilisé un lexer / analyseur de style de passage continu au lieu des lexers plus typiques basés sur lex (ou regex) que vous verrez à l’état sauvage.
En prime, il aborde de nombreux problèmes concrets que vous rencontrez lorsque vous utilisez JavaScript dans le navigateur.
Autres conseils
Il serait peut-être préférable de dire "quel éditeur de surlignage de la syntaxe avez-vous recommandé de remplacer un texte HTML dans mon application Web?" (Certaines des autres réponses ici concernent des applications de bureau ou des surligneurs à syntaxe pure, et non des éditeurs côté client)
Je recommande également CodeMirror , écrit en Javascript et prenant en charge de nombreux navigateurs. Il utilise un analyseur syntaxique réel (plutôt que des expressions rationnelles) afin de pouvoir traiter des problèmes complexes tels que la mise en surbrillance correcte des chaînes échappées. Le développeur est également très réactif sur le groupe de discussion .
Voir le code Google à effacer .
Consultez cette question pour le contrôle de modification utilisé par stackoverflow .
Je ne programme pas beaucoup de javascript, mais JSEclipse a été très utile pour moi par le passé. Il s’agit d’un plug-in Eclipse.
Je l'utilise gratuitement depuis des années
http://www.interaktonline.com/products/eclipse/jseclipse/ aperçu /
Je me base également beaucoup sur FireBug pour Firefox chaque fois que je traite avec Javascript
Vous pouvez également essayer http://softwaremaniacs.org/soft/highlight/en/ - c'est rapide, il supporte non seulement le javascript, mais beaucoup d'autres langages. Et si vous avez besoin d’un aperçu en direct du fonctionnement de la mise en évidence, vous pouvez utiliser setInterval pour exécuter la mise en évidence et l'afficher dans un champ séparé.
Bien que la courbe d'apprentissage soit rapide, Vim est le meilleur éditeur du marché, pour n'importe quelle langue. Il a une version graphique, mais brille vraiment dans l'édition de terminal. Le temps passé à apprendre à utiliser cet éditeur n'est pas du temps perdu. Il a la coloration syntaxique que vous cherchez, ainsi que des milliers (littéralement) d’autres fonctionnalités et plugins.
Je dois y aller avec Bespin de Mozilla. Il est construit à l'aide de fonctionnalités HTML5 (donc rapide et rapide, mais ne prend pas en charge les navigateurs traditionnels), mais il est vraiment incroyable d'utiliser et de battre tout ce que j'ai rencontré - probablement parce que Mozilla le soutient, et ils développent Firefox alors oui. .. Il existe également un plug-in jQuery qui contient une extension pour celui-ci . pour le rendre un peu plus facile à utiliser avec jQuery.
Désolé de faire glisser ce fichier vers le haut mais le meilleur que j'ai trouvé dans CodeMirror http://codemirror.net/