summaryrefslogtreecommitdiff
path: root/Master/bin/universal-darwin/fixpsditps
blob: 2a1728a8204d2259d4028bcf0691469615d0038c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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 $_;
   }
}