%!PS
/Decomment { % (filename) Decomment -
true exch
0 exch
(r) file
{
% outputflag file
dup read
not { exit } if
dup 40 eq {
3 -1 roll 1 add 3 1 roll
} if
dup 41 eq {
3 -1 roll 1 sub 3 1 roll
} if
dup 37 eq {
2 index 0 eq {
4 -1 roll pop false 4 1 roll
} if
} if
dup dup 10 eq exch 13 eq or {
4 -2 roll pop pop true 0 4 2 roll
} if
3 index {
( ) dup 0 4 -1 roll put
print
} {
pop
} ifelse
} loop
pop pop pop
} bind def
%---- Test Code ----
(====%===) pop % ==
(decomment.ps) Decomment
Nemo
#6552()
[
PostScript
]
Rating0/0=0.00
修正版... 文字列中に%を書けたとは...
%!PS /Decomment { % (filename) Decomment - true exch 0 exch (r) file { % outputflag file dup read not { exit } if dup 40 eq { 3 -1 roll 1 add 3 1 roll } if dup 41 eq { 3 -1 roll 1 sub 3 1 roll } if dup 37 eq { 2 index 0 eq { 4 -1 roll pop false 4 1 roll } if } if dup dup 10 eq exch 13 eq or { 4 -2 roll pop pop true 0 4 2 roll } if 3 index { ( ) dup 0 4 -1 roll put print } { pop } ifelse } loop pop pop pop } bind def %---- Test Code ---- (====%===) pop % == (decomment.ps) DecommentRating0/0=0.00-0+