-&= => subdir
-&_ => subdir_
-&/ => subdir/
-&CAPS => subdir_CAPS _ counts
-&lc => subdir/lc _ counts
+&CAPS => subdir_CAPS or TOP_CAPS
+&lc => subdir/lc or lc
-&,= &,_ &,/ &,CAPS &,lc prefixes $(top_srcdir)/subdir
-&;= &;_ &;/ &;CAPS &;lc prefixes $(abs_top_srcdir)/subdir
+&_ => subdir_ or TOP_
+&/ => subdir/ or nothing
+&=_ => subdir or TOP
+&=/ => subdir or .
+&^ => $(top_srcdir)/subdir or $(top_srcdir)
+&~ => $(abs_top_srcdir)/subdir or $(abs_top_srcdir)
-&. => $(top_srcdir)
-&: => $(abs_top_srcdir)
+&& => &&
+\& => &
-& thing thing => like &thing &thing (until EOL)
- (edits only `thing's which are CAPS or lc
- and follow a space)
+& thing thing... & => each thing prefixed by &/ &^ &~ resp
+& ^ thing thing... & each thing is any non-ws
+& ~ thing thing... & & may be omitted before EOL or before \EOL
+ other &'s not recognised
-&& => &
+CAPS is [A-Z][0-9_A-Z]*(?!\w)
+lc is [a-z][-+,0-9_a-z]*(?!\w)
-&! spc disables & *until* EOL
+&!<spaces or tabs> disables & *until* EOL (and disappears)
&!STUFF STUFF is recognised instead of & (beyond EOL)
- STUFF is either all punct or all alphanum (incl _)
+ STUFF is either all ASCII punct or all ASCII alphanum (incl _)
any lwsp after STUFF is discarded too
+
eg notably
STUFF!& now & is recognised instead (ie back to normal)
STUFFSTUFF STUFF
&TARGETS[_things] is handled specially
must be spelled precisely this way
if no _things, means _all
+
+Also, `all' is weird in that it is present even if not specified