testjoin
*.ps
*.d4
+*.new
specified -l layer. Then all -e/-E options are scanned, in order,
and each one that matches modifies the drawing element set.
- <layersel> is GN[D][C]. It matches `layer KL' iff the glob pattern G
- (which may be empty) matches the whole of K, and layer restriction
- N[D]C matches L. C is several identical `=', `+' or `-'; D+ matches
- L iff L>=D; D++ iff L>D; D+++ iff L>D+1 and so on; D- matches L iff
- L<=D; D-- iff L<D; etc.; D= matches L iff L==D; D== iff D-1<=L<=D+1;
- D=== iff D-2<=L<=D+2; etc. If D is omitted the current layer (from
- the most recent -l option) is used. N may be empty or `~'; the
- latter simply inverts the sense of the match. If C is omitted then
- `=' is assumed.
+ <layersel> is GN[D][C][V]. It matches `layer KL' iff the glob
+ pattern G (which may be empty) matches the whole of K, and layer
+ restriction N[D]C matches L. C is several identical `=', `+' or `-';
+ D+ matches L iff L>=D; D++ iff L>D; D+++ iff L>D+1 and so on; D-
+ matches L iff L<=D; D-- iff L<D; etc.; D= matches L iff L==D; D== iff
+ D-1<=L<=D+1; D=== iff D-2<=L<=D+2; etc. If D is omitted the current
+ layer (from the most recent -l option) is used. N may be empty or
+ `~'; the latter simply inverts the sense of the match. If C is
+ omitted then `=' is assumed.
+
+ If V is present then C must be exactly one character and it is as if
+ V (must be an integer) copies of C were specified.
Special comments in PostScript:
elsif (s/^q//) { $quiet=1; }
elsif (s/^(e)
((?:[a-z]|\*|\?|\[[a-z][-a-z]*\])*?)
- (\~?) (\d*) (\=*|\-+|\++)
+ (\~?) (\d*) (\=*|\-+|\++) (\d*)
([a-z]+)//ix) {
- my ($ee,$g,$n,$d,$c,$cc) = ($1,$2,$3,$4,$5,$6);
+ my ($ee,$g,$n,$d,$c,$v,$cc) = ($1,$2,$3,$4,$5,$6,$7);
my ($eo, $invert, $lfn, $ccc, $sense,$limit);
$g =~ s/[?*]/\\$&/g;
$d= $output_layer if !length $d;
$invert= length $n;
+ $c= '=' if !length $c;
+ if (length $v) {
+ die '-[eE]GN[D]CCV not allowed' if length $c > 1;
+ $c= $c x $v;
+ }
if ($c =~ m/^[-+]/) {
$sense= ($c.'1') + 0;
$limit= ($sense * $d) + length($c) - 1;
$lfn= sub { $_[0] * $sense >= $limit xor $invert };
} else {
$limit= length($c) - 1;
- $limit=0 if $limit<0;
$lfn= sub { abs($_[0] - $d) <= $limit xor $invert };
}
$ccc= '';
%.d4: %.m4 $(M4INCS)
m4 -s <$< $o
+%-a.ps: %.d4 layout
+ ./layout <$< -E10=100ArC $o
+
ours-l%.ps: ours.d4 layout
./layout <$< $(LAYOUTOPTS) $o
%.d4: %.m4 $(M4INCS)
m4 -s <$< $o
+%-a.ps: %.d4 layout
+ ./layout <$< -E10=100ArC $o
+
ours-l%.ps: ours.d4 layout
./layout <$< $(LAYOUTOPTS) $o
%.d4: %.m4 $(M4INCS)
m4 -s <$< $o
+%-a.ps: %.d4 layout
+ ./layout <$< -E10=100ArC $o
+
ours-l%.ps: ours.d4 layout
./layout <$< $(LAYOUTOPTS) $o