Domanda

Voglio evidenziare C/C++/Java/C# etc codici sorgente nel mio sito web.

Come posso fare questo?

E ' una CPU di lavoro per evidenziare il codice sorgente?

È stato utile?

Soluzione

È possibile eseguire questa operazione lato server o lato client.Non è molto intensivo del processore, ma se puoi farlo lato client (tramite Javascript), ci sarà un notevole ritardo.La maggior parte lato client soluzioni ruotano intorno a Google Code, l'evidenziazione della sintassi del motore.Questo sembra essere il più popolare: SyntaxHighlighter

Soluzioni lato Server tendono ad essere più flessibile, soprattutto nel modo di definire nuovi linguaggi e la configurazione di come sono evidenziate (ad es.i colori utilizzati).Io uso GeSHi, che è una soluzione PHP con un moderatamente bel plugin per Wordpress.Ci sono anche le librerie per Java, e anche alcuni che sono basate su VIM (di solito richiedono un modulo Perl per essere installato da CPAN).

In breve:avete alcune opzioni, quali sono i tuoi criteri?È difficile fare una buona raccomandazione senza sapere le vostre esigenze.

Altri suggerimenti

Io uso GeSHi ("Evidenziatore di Sintassi generica") su pastebin.com

pastebin, è ad alto traffico, in modo da fare cache i risultati della trasformazione, che certamente riduce il carico.

Personalmente preferisco l'offline strumenti:Io non vedo il punto di analisi del codice (in particolare quelli di grandi dimensioni) più e più volte, per ogni servita pagina, o peggio ancora, su ogni browser (per librerie JS), perché, come detto sopra, queste librerie spesso gal (si vedono spesso fonte crudo prima della formattazione).

Ci sono un certo numero di strumenti per fare questo lavoro, alcuni hanno sottolineato sopra.Mi basta usare la funzione di esportazione del mio editor preferito (SciTE), perché solo rispetta le scelte di colore sono predisposti con cura e attenzione...:-) Ed è in grado di generare XML, PDF, RTF e Lattice troppo.

Pygment è una buona libreria Python per generare il codice HTML, RTF, ANSI (terminale) o il codice LaTeX.Supporta una vasta gamma di lingue (C, C++, Lua, Erlang, ...) e si può anche scrivere il proprio output formatter.

Io uso google-codice-abbellire.È il più semplice da configurare e funziona alla grande con tutti i linguaggi di tipo c.

Se si utilizza jEdit, si potrebbe desiderare di utilizzare la Code2HTML plugin.

Basta eseguirlo attraverso uno strumento come: http://www.gnu.org/software/src-highlite/

Se si utilizza PHP, è possibile utilizzare GeSHi per evidenziare molte lingue diverse.Io l'ho usato prima e funziona abbastanza bene.Una rapida ricerca con google sarà anche scoprire GeSHi plugin per wordpress e drupal.

Non vorrei prendere in considerazione l'evidenziazione essere impegnativo per la CPU a meno che non avete intenzione di visualizzare megabyte di tutto in una volta.E anche allora, il carico della CPU sarebbe minimo e il problema principale sarebbe la velocità di trasferimento per tutto.

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