summaryrefslogtreecommitdiff
path: root/Master/bin/amd64-freebsd/fixpsditps
diff options
context:
space:
mode:
Diffstat (limited to 'Master/bin/amd64-freebsd/fixpsditps')
-rwxr-xr-xMaster/bin/amd64-freebsd/fixpsditps25
1 files changed, 25 insertions, 0 deletions
diff --git a/Master/bin/amd64-freebsd/fixpsditps b/Master/bin/amd64-freebsd/fixpsditps
new file mode 100755
index 00000000000..2a1728a8204
--- /dev/null
+++ b/Master/bin/amd64-freebsd/fixpsditps
@@ -0,0 +1,25 @@
+#!/usr/bin/env perl
+# fixpsditps: fix psdit output for use in psutils
+#
+# Copyright (C) Angus J. C. Duggan 1991-1995
+# See file LICENSE for details.
+
+$nesting = 0;
+
+while (<>) {
+ if (/^\/p{pop showpage pagesave restore \/pagesave save def}def$/) {
+ print "/p{pop showpage pagesave restore}def\n";
+ } elsif (/^%%BeginDocument/ || /^%%BeginBinary/ || /^%%BeginFile/ ) {
+ print $_;
+ $nesting++;
+ } elsif (/^%%EndDocument/ || /^%%EndBinary/ || /^%%EndFile/) {
+ print $_;
+ $nesting--;
+ } elsif (/^%%Page:/ && $nesting == 0) {
+ print $_;
+ print "xi\n";
+ } elsif (! /^xi$/) {
+ print $_;
+ }
+}
+