groff
ist eine Satzsprache und erwartet Eingaben in ihrer Sprache, nicht in einfachem Text. Möglicherweise suchen Sie nach etwas enscript
oder a2ps
(Ascii-to-Postscript).
Groff ignoriert Zeilenumbrüche in meiner Shell
867
Ich habe groff verwendet, um ps-Dateien zum Drucken mit der Markierung -man zu erstellen. Wenn ich etwas anderes wie eine Header-Datei oder nur die Ausgabe von ls -l oder einem anderen Programm konvertieren möchte, werden die Zeilenumbrüche ignoriert und ein Durcheinander erzeugt. Wie kann ich die Zeilenumbrüche in der Shell erkennen und respektieren?
Dies erzeugt eine Ausgabe, aber die Registerkarten sind durcheinander:
groff -mom hexd.c > out.ps
Dies führt jedoch sowohl zu Tabulatoren als auch zu Zeilenumbrüchen:
cat hexd.c | groff -mom > out.ps
Was ich wirklich gerne hätte, ist ungefähr so:
man -t gdb | open -f -a preview
Dadurch wird eine perfekte Postskriptversion der Manpage in der Vorschau von max os geöffnet. BTW. man -t
ist äquivalent zu:
groff -Tps -mandoc -c
1 Antwort auf die Frage
3
coneslayer
Es funktioniert für das Übertragen von Manpages, was auch einfach AFAIK ist, es kann neben ps auch HTML erzeugen. Wie auch immer, das führte dazu: "man -t gdb | open -f -a preview" Was die gdb-Manpage in der Vorschau auf Mac os x öffnet.
vor 14 Jahren
0
Dies ist aus der groff-Manpage: "BESCHREIBUNG Dieses Dokument beschreibt das groff-Programm, das Haupt-Frontend für das groff-Dokumentformatierungssystem."
vor 14 Jahren
0
Die "groff" -Quelle für Manpages ist kein "einfacher" Text. Es ist eine Auszeichnungssprache. Wenn Sie "groff" etwas zuführen, das nicht in der Markup-Sprache ist, wird es nicht richtig aussehen. Es unterscheidet sich konzeptionell nicht so sehr von HTML oder LaTeX, die auch Zeilenumbrüche in der Quelle ignorieren. Hier ist ein Beispiel für die Quelle "groff" für eine Manpage: http://www.freebsd.org/cgi/cvsweb.cgi/src/bin/ls/ls.1?rev=1.100.10.1;content-type=text % 2Flug Wenn Ihre Eingabe für `groff` nicht in etwa so aussieht, wird die Ausgabe wahrscheinlich nicht richtig aussehen.
coneslayer vor 14 Jahren
3
Ja, aber auch für Klartext gibt es Zeilenumbrüche, dh \ n, und mit den unzähligen Optionen für Groff und Familie bin ich ziemlich sicher, dass dies möglich ist. Es gibt auch keinen Grund, dass die beiden ersten Beispiele in meinem ersten Beitrag unterschiedlich aussehen sollten. Es sollte keinen Unterschied in der Eingabe geben, die Groff empfängt. Ich habe gerade das zweite dort aufgestellt, um zu emulieren, was ich gerne machen möchte, nämlich Header-Dateien in einem anständigen Format auf meinem Drucker zu drucken.
vor 14 Jahren
0
Oder Sie könnten Werkzeuge verwenden, die genau das tun, was Sie möchten, wie die von mir genannten. Was auch immer.
coneslayer vor 14 Jahren
0
Richtig, aber es ist etwas befriedigender, etwas zu verwenden, das bereits installiert ist, und eher im Sinne einer Befehlszeile.
vor 14 Jahren
0
Ich würde sagen, es ist mehr im Sinne der Kommandozeile, das richtige Werkzeug für den Job zu verwenden. http://developer.apple.com/Mac/library/documentation/Darwin/Reference/ManPages/man1/enscript.1.html
coneslayer vor 14 Jahren
1
Nun, das ist ganz anderes Argument. Mein Punkt war die Beziehung zwischen dem Aufbau von etwas aus semantischen Teilen und dem Erhalten einer App für jedes Problem, das gelöst werden muss. Wie auch immer, das, was Sie dort erfunden haben, ist großartig! Danke, Mann.
vor 14 Jahren
0
Verwandte Probleme
-
14
PDF Viewer unter Windows
-
8
Firefox PDF-Plugin zum Anzeigen von PDF-Dateien im Browser unter Windows
-
17
So drucken Sie Dokumente als PDF
-
2
Firefox zum Drucken von PDF-Schriftarten
-
6
Welche zsh-Funktionen verwenden Sie?
-
4
PDF Reader für iPhone
-
8
Die Windows-Shell töten
-
3
Mac OS X: herkömmliche Orte, an denen Binärdateien gespeichert werden sollen
-
2
Mac OS X: einfaches Skript gesucht
-
6
Adobe Reader: Kennwort für eine PDF-Datei merken