3 Stimmen

Eclipse C++ schön drucken?

Die Ausgabe, die wir erhalten, wenn wir C++-Quellen aus Eclipse drucken, ist ziemlich hässlich.

Gibt es eine Möglichkeit/ein Plugin, um C++-Quellcode hübsch auszudrucken, wie z.B. mit a2ps (das wahrscheinlich noch einen anderen Filter für C-Quellcode verwendet)?

2voto

epatel Punkte 45365

Siehe dies DDJ Artikel, der die enscript als die hübsche Druckmaschine.

2voto

Pat Notz Punkte 196406

Ich verwende auch enscript für diese. Hier ist ein Alias, den ich oft verwende:

alias cpp2ps='enscript --color --pretty-print=cpp --language=PostScript'

und ich verwende es so:

cpp2ps -P main.ps main.cpp

Es gibt mehrere andere großartige Möglichkeiten in enscript einschließlich Drehung, 2-spaltige Ausgabe, Zeilennummern, Kopf- und Fußzeilen usw. Sehen Sie sich die enscript man-Seite .

Außerdem druckt XCode auf Macs sehr gut C++-Code.

0voto

William Symionow Punkte 730

Ich möchte die Antwort zu Windows 7 ergänzen, da einige wichtige Schritte ausgelassen werden:

Dies ist für MinGW-Benutzer mit Eclipse CDT

0) Wenn Sie kein Python-GDB haben, öffnen Sie eine Shell/einen Befehl und verwenden Sie MinGW-get.exe, um zu 'installieren' Python-fähige GDB z.B.

   MinGw-get.exe install gdb-python

1a) Holen Sie sich Python 2.7.x von http://python.org/download/ und installieren

1b) Stellen Sie sicher, dass PYTHONPATH und PYTHONHOME in Ihrer Umgebung gesetzt sind:

 PYTHONPATH should be C:\Python27\Lib   (or similar)
 PYTHONHOME should be C:\Python27

1c) Fügen Sie PYTHONHOME zu Ihrem PATH hinzu

 %PYTHONHOME%;...

2a) Öffnen Sie ein Texteingabefeld und geben Sie die folgenden Aussagen ein. Beachten Sie, dass die 3. Zeile auf den Ort verweist, an dem sich die Python-Skripte befinden. Siehe dazu die Anmerkungen unten!

python
import sys
sys.path.insert(0, 'C:/MinGW/share/gcc-4.6.1/python')         
from libstdcxx.v6.printers import register_libstdcxx_printers
register_libstdcxx_printers (None)
end

2b) Speichern Sie als '.gdbinit' HINWEIS: Der Windows-Explorer lässt es nicht zu, dass Sie eine Datei benennen, die mit beginnt, mit einem Punkt aus dem Explorer. Die meisten Textverarbeitungsprogramme (einschließlich Notepad) lassen dies zu. GDB-Init Dateien sind wie 'Skripte' von GDB-Befehlen, die GBD beim Laden ausführen wird.

2c) Die Datei '.gdbinit' muss sich im Arbeitsverzeichnis von GDB befinden (höchstwahrscheinlich ist das das Root-Verzeichnis Ihres Projekts, aber Ihre IDE kann Ihnen das sagen.

3) Öffnen Sie das Dialogfeld Eclipse (oder eine andere IDE) Preferences. Gehen Sie zum Untermenü C++ Debugger.

4) Konfigurieren Sie Eclipse für die Verwendung von C:\MinGW\bin\gdb-python27.exe als Debugger und Ihr .gdbinit als die Konfigurationsdatei.

5a) Erstellen Sie alle Ihre Debug-Startkonfigurationen neu (löschen Sie die alte und erstellen Sie eine neue).

--OR--

5b) Bearbeiten Sie jede Debug-Konfiguration und verweisen Sie auf die neue gdb-python.exe UND verweisen Sie auf die.

Wenn Sie auf Probleme stoßen:

--Vergessen Sie nicht, das Python-Verzeichnis im obigen Python-Code zu ändern! Dieses Verzeichnis wird von MinGW erstellt, also suchen Sie nicht nach den hübschen Druckern, MinGW hat das in Schritt Null für Sie getan. Gehen Sie einfach zu Ihrer MinGW-Installation den GCC-Ordner (mit der Versionsnummer) und Sie finden den Python-Ordner. Dieser Ort ist das, was sollte im Python-Skript sein, das von GDB geladen wird.

--Also, die .gdbinit ist eine PITA, stellen Sie sicher, dass es richtig benannt ist und in den Arbeitsordner von GDB was nicht unbedingt der Ort ist, an dem sich gdb-python.exe befindet! Schauen Sie sich Ihre GDB-Ausgabe an, wenn Sie GDB laden, um zu sehen, ob a) 'python-enabled' während des Ladens erscheint und ob die Anweisungen in der .gdbinit erscheinen.

-Schließlich hatte ich viele Probleme mit den Systemvariablen. Wenn Python "ImportError" ausgibt, dann haben Sie höchstwahrscheinlich weder PYTHONPATH noch PYTHONHOME gesetzt.

-Verzeichnis mit 'gdb-python27' (z.B. C:\MinGW\bin Wenn dies der Fall ist, wird die Einrichtung von eclipse etwas einfacher, da Sie keine absoluten Pfade eingeben müssen. Trotzdem braucht die .gbdinit manchmal einen absoluten Pfad. Wenn es funktioniert, werden Sie beim Starten des Debuggers eine Ausgabe von gbd (Konsole->gdb Traces) wie diese sehen:

835,059 4^done
835,059 (gdb) 
835,059 5-enable-pretty-printing
835,069 5^done
....
835,129 12^done
835,129 (gdb) 
835,129 13source C:\MinGW\bin\.gdbinit
835,139 &"source C:\\MinGW\\bin\\.gdbinit\n"
835,142 13^done
835,142 (gdb)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X