Domanda

Sto cercando un open source, cross platform (Windows e Linux almeno) strumento a riga di comando per prendere un po ' di codice (C++, ma più lingue sarebbe dolce), e sputare fuori valido XHTML rappresentazione del codice, con l'evidenziazione della sintassi incluso.

Idealmente XHTML deve solo inserire il codice con <span> e <div> tag con diverse classi, in modo che posso fornire il codice CSS e modificare la colorazione, ma questo è un optional.

Qualcuno conosce un'applicazione del genere?

È stato utile?

Soluzione

Posso consigliare Pygments.È facile lavorare con e supporta un sacco di lingue.Si fa quello che si vuole, cioè, che avvolge il codice <span> tags:

from pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import HtmlFormatter

code = 'print "Hello World"'
print highlight(code, PythonLexer(), HtmlFormatter())

<div class="highlight">
<pre><span class="k">print</span> <span class="s">&quot;Hello World&quot;</span></pre>
</div>

e si può quindi utilizzare uno di quelli forniti fogli di stile di fare il vostro proprio.

È anche possibile chiamare via è pygmentize script.Lo script può formattare l'output in diversi modi:HTML, LaTeX, ANSI, colore output del terminale.

Altri suggerimenti

Vim possibile salvare il codice mette in evidenza per "colorato" di HTML (funziona su diverse piattaforme).C'è GNU hightlight troppo.E tonnellate di altri.

C'è molto buona, guidato da XML, veloce e opensource: http://sourceforge.net/projects/colorer/

Non ricordo se GeSHi è un programma a linea di comando, ma anche se così non fosse, non dovrebbe essere difficile per montare uno.Si fa un grande lavoro di prendere il codice e la generazione di bella, colorata, HTML/XHTML, anche con i numeri di riga (o ogni X numeri di riga, anche) e altre funzioni utili.

Enscript assomiglia a quello che stai chiedendo :

  1. sputare HTML (o PS o RTF) da file ascii.
  2. Esso include funzionalità per `pretty-printing " (sensibile al linguaggio evidenziazione del codice in diversi linguaggi di programmazione.

Non sono sicuro di come utile questo sarà, ma il mio team utilizza doxygen per produrre una documentazione, che succede a fornire il colore di evidenziazione della sintassi sul nostro codice viste così come un lato di bonus.Mai veramente bisogno, ma lo fa.

Se sei ok con l'utilizzo di ruby, si desidera coderay.

Aggiungo il mio proprio all'elenco, colori C# ma potrebbe essere adattato per C, C++ e Java.Produce gli stili inline per impostazione predefinita e un tag pre.

La fonte c'è in C#, è necessario acquisire mono/monodevelop e compilarlo come applicazione console, quindi non è termoretraibile in proposito.

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