ref: 809522e80f4011925e8d92aa480fad04c7ff9e10
dir: /sys/lib/lp/process/post/
#!/bin/rc if (! ~ $DEBUG '') flag x + PATCH='%!PS %%Patch from lp' switch ($LPCLASS) { case *hp4simx*; PATCH=$PATCH' %% set the default papertray to be the lower tray for HP4siMX printers statusdict begin defaultpapertray end 1 ne { statusdict begin 1 setdefaultpapertray end } if' } for (i in `{echo $IBIN|awk -F, '{ n=split($0, a, ","); for (i=1;i<=n;i++) print a[i]; }'}) { switch ($i) { case -P*; case man manual manualfeed; PATCH=$PATCH' %%BeginFeature: *Select ManualFeed [{ systemdict /languagelevel known {languagelevel 1 gt product (HP LaserJet 4Si) ne and} if { << /ManualFeed true >> setpagedevice } {statusdict begin /manualfeed true def end} ifelse } stopped cleartomark %%EndFeature' case simplex; DUPLEX=0 case [0-9]; PATCH=$PATCH' %%BeginFeature: *Select InputTray [{ systemdict /languagelevel known {languagelevel 1 gt product (HP LaserJet 4Si) ne and} if { << '$i' << /MediaType (tray'$i') >> >> << /MediaType (tray'$i') >> setpagedevice } {statusdict begin '$i' setpapertray end} ifelse } stopped cleartomark %%EndFeature' case 11x17 [Ll]edger; PATCH=$PATCH' %%BeginFeature: *Select Ledger [{ systemdict /languagelevel known {languagelevel 1 gt product (HP LaserJet 4Si) ne and} if { << /PageSize [792 1224] >> setpagedevice } {statusdict begin '$i'tray end} ifelse } stopped cleartomark %%EndFeature' case transparency vg viewgraph; PATCH=$PATCH' %%BeginFeature: *Select Transparency [{ << /MediaType (Transparency) >> setpagedevice } stopped cleartomark %%EndFeature' case *; echo illegal option ''''-i $i'''' ignored >[1=2] } } #if (! ~ $#DUPLEX 0) { # if (~ $DUPLEX 1 ) # PATCH=$PATCH' #statusdict /setduplexmode known {statusdict begin true setduplexmode end} if'; # if (~ $DUPLEX 0 ) # PATCH=$PATCH' #statusdict /setduplexmode known {statusdict begin false setduplexmode end} if'; #} PATCH=$PATCH' %%EndPatch from lp ' { echo $PATCH; psextract } | $LPLIB/process/hpost