Domanda

Ho trovato evidenziatori di sintassi che evidenziano il codice preesistente, ma mi piacerebbe farlo mentre digiti con un editor in stile WYSIWYG.Non ho bisogno di funzioni completate automaticamente, solo dell'evidenziazione.

Come domanda successiva, qual è l'editor WYSIWYG utilizzato da StackOverflow?

Modificare:Grazie alla risposta qui sotto, ne ho trovati due che sembrano adatti alle mie esigenze:ModificaArea E CodePress

MODIFICARE:Vedi anche questa domanda:
https://stackoverflow.com/questions/379185/free-syntax-highlighting-editor-control-in-javascript

È stato utile?

Soluzione

Ecco un articolo davvero interessante su come scriverne uno:(Ancora meglio, fornisce il codice sorgente completo a un formattatore e coloratore JavaScript.)

Implementazione di un editor JavaScript che evidenzia la sintassi in JavaScripto una brutale odissea sul lato oscuro dell'albero del Dom

Come si fa a evidenziare la sintassi decente?Una scansione molto semplice può dire la differenza tra stringhe, commenti, parole chiave e altro codice.Ma questa volta volevo effettivamente essere in grado di riconoscere espressioni regolari, in modo da non avere più un comportamento errato palese.

È importante sottolineare che gestisce correttamente le espressioni regolari.È anche interessante notare che ha utilizzato un lexer/parser in stile passaggio di continuazione invece dei più tipici lexer basati su lex (o regex) che vedrai in natura.

Come bonus discute molti problemi del mondo reale che incontrerai quando lavori con JavaScript nel browser.

Altri suggerimenti

La domanda potrebbe essere meglio dichiarata come "quale editor alla luce della sintassi hai consigliato di sostituire un textarea HTML nella mia app web?" (Alcune delle altre risposte qui trattano le app desktop o gli evidenziatori puri sintassi, non i redattori sul lato client)

Lo consiglio anche CodeMirror, è scritto in Javascript e supporta molti browser.Utilizza un vero parser (piuttosto che espressioni regolari) in modo da poter gestire problemi complessi come evidenziare correttamente le stringhe di escape.Lo sviluppatore è anche molto reattivo sul gruppo di discussione.

Non programmo molto Javascript ma JSEclipse mi è stato molto utile in passato.Viene fornito come plug-in Eclipse.

Lo uso da anni gratuitamente

http://www.interaktonline.com/products/eclipse/jseclipse/overview/

Inoltre faccio molto affidamento su FireBug per Firefox ogni volta che ho a che fare con Javascript

Puoi anche provare http://softwaremaniacs.org/soft/highlight/en/ - è veloce, supporta non solo javascript ma molti altri linguaggi.E se hai bisogno di un'anteprima dal vivo di come funzionerà l'evidenziazione, puoi utilizzare setInterval per eseguire l'evidenziazione e mostrarla in una casella separata.

Sebbene abbia una curva di apprendimento ripida, Vim è il miglior editor disponibile, per qualsiasi lingua.Ha una versione GUI, ma brilla davvero nell'editing del terminale.Tutto il tempo impiegato per imparare a utilizzare questo editor non è tempo sprecato.Ha l'evidenziazione della sintassi, come stai cercando, così come migliaia (letteralmente) di altre funzionalità e plugin.

Devo andare con Bespin di Mozilla.È costruito utilizzando le funzionalità HTML5 (quindi è rapido e veloce, ma non supporta i browser legacy), ma sicuramente fantastico da usare e batte tutto ciò che ho incontrato, probabilmente perché è supportato da Mozilla e sviluppano Firefox, quindi sì. ..C'è anche un jQuery Plugin che contiene un'estensione per esso per renderlo un po' più semplice da usare con jQuery.

Mi dispiace riprovarlo, ma ho trovato il meglio in CodeMirror http://codemirror.net/

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top