it-swarm-eu.dev

Wie hebt man Quellcode in HTML hervor?

Ich möchte C/C++/Java/C # usw.-Quellcodes auf meiner Website hervorheben.

Wie kann ich das machen?

Ist es eine CPU-intensive Aufgabe, den Quellcode hervorzuheben?

25
Niyaz

Sie können dies entweder serverseitig oder clientseitig tun. Es ist nicht sehr prozessorintensiv, aber wenn Sie es clientseitig (mit Javascript) machen, wird es eine merkliche Verzögerung geben. Die meisten clientseitigen Lösungen basieren auf der Syntax-Hervorhebungs-Engine von Google Code. Dies scheint die beliebteste zu sein: SyntaxHighlighter

Serverseitige Lösungen sind in der Regel flexibler, insbesondere in Bezug auf die Definition neuer Sprachen und die Konfiguration ihrer Hervorhebung (z. B. verwendete Farben). Ich benutze GeSHi, eine PHP Lösung mit einem mäßig netten Plugin für Wordpress. Es gibt auch einige Bibliotheken, die für Java erstellt wurden, und sogar einige, die auf VIM basieren (normalerweise muss ein Perl-Modul über CPAN installiert werden).

Kurzum: Sie haben einige Möglichkeiten, nach welchen Kriterien? Es ist schwierig, eine solide Empfehlung abzugeben, ohne Ihre Anforderungen zu kennen.

27
Daniel Spiewak

Ich verwende GeSHi ("Generic Syntax Highlighter") auf Pastebin.com

In Pastebin ist der Datenverkehr sehr hoch. Daher speichere ich die Ergebnisse der Umwandlung im Cache, wodurch die Last auf jeden Fall reduziert wird.

11
Paul Dixon

Persönlich bevorzuge ich Offline-Tools: Ich sehe nicht den Sinn, den Code (besonders große) für jede gelieferte Seite oder noch schlimmer für jeden Browser (für JS-Bibliotheken) immer wieder zu analysieren, da Diese Bibliotheken verzögern sich häufig (Sie sehen häufig die Rohquelle, bevor sie formatiert wird).

Es gibt eine Reihe von Werkzeugen, um diese Aufgabe zu erledigen, von denen einige bereits erwähnt wurden. Ich verwende nur die Exportfunktion meines Lieblingseditors (SciTE), weil sie nur die von mir sorgfältig eingerichteten Farboptionen berücksichtigt ... :-) Und sie kann auch XML, PDF, RTF und LaTeX ausgeben.

6
PhiLho

Ich benutze google-code-prettify . Es ist am einfachsten einzurichten und funktioniert hervorragend mit allen Sprachen im C-Stil.

5

Pygement ist eine gute Python-Bibliothek zum Generieren von HTML-, RTF-, ANSI- (Terminal-Style) oder LaTeX-Code. Es unterstützt eine große Auswahl an Sprachen (C, C++, Lua, Erlang, ...) und Sie können sogar Ihren eigenen Ausgabeformatierer schreiben.

5
Stacker

Wenn Sie jEdit verwenden, möchten Sie möglicherweise das Code2HTML Plugin verwenden.

1
Javier

Ich benutze SyntaxHighligher auf meinem Blog .

0
Brad Wilson

Führen Sie es einfach durch ein Tool wie: http://www.gnu.org/software/src-highlite/

0
DJ Capelis

Wenn Sie PHP verwenden, können Sie mit GeSHi viele verschiedene Sprachen hervorheben. Ich habe es schon einmal benutzt und es funktioniert ganz gut. Ein schnelles googeln wird auch GeSHi-Plugins für wordpress und drupal aufdecken.

Ich würde das Hervorheben nicht als CPU-intensiv betrachten, es sei denn, Sie möchten Megabyte davon auf einmal anzeigen. Und selbst dann wäre die CPU-Auslastung minimal und Ihr Hauptproblem wäre die Übertragungsgeschwindigkeit für alles.

0
Mark Embling