summaryrefslogtreecommitdiff
path: root/Build/source/utils/psutils/fixpsditps.pl
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/utils/psutils/fixpsditps.pl')
-rw-r--r--Build/source/utils/psutils/fixpsditps.pl25
1 files changed, 25 insertions, 0 deletions
diff --git a/Build/source/utils/psutils/fixpsditps.pl b/Build/source/utils/psutils/fixpsditps.pl
new file mode 100644
index 00000000000..a9008f58408
--- /dev/null
+++ b/Build/source/utils/psutils/fixpsditps.pl
@@ -0,0 +1,25 @@
+@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 $_;
+ }
+}
+@END@