[SUBDIRMK RFC v2 1/5] README: v2: Introduce &. and friends

Ian Jackson ijackson at chiark.greenend.org.uk
Thu Dec 19 00:49:51 GMT 2019


Not implemented yet.

Signed-off-by: Ian Jackson <ijackson at chiark.greenend.org.uk>
---
 README | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/README b/README
index 0ea502a..a8ab503 100644
--- a/README
+++ b/README
@@ -218,27 +218,33 @@ empty string).
 	The assumption is that filenames are usually lowercase and
 	variables usually uppercase.  Otherwise, use another syntax:
 
+&/		=>	sub/dir/			or nothing
 &_		=>	sub_dir_			or TOP_
-&=_		=>	sub_dir				or TOP
+&.		=>	sub/dir				or .
+	(This implies that `&./' works roughly like `&/', although
+	it can produce a needless `./')
 
-&/		=>	sub/dir/			or nothing
-&=/		=>	sub/dir				or .
+&=		=>	sub_dir				or TOP
 
 &^lc		=>	$(top_srcdir)/sub/dir/lc
 &^/		=>	$(top_srcdir)/sub/dir/
+&^.		=>	$(top_srcdir)/sub/dir
 
 &~lc		=>	$(top_srcdir)/lc
 &~/		=>	$(top_srcdir)/
+&~.		=>	$(top_srcdir)
 
 In general:
-    =	return subdir without delimiter (not allowed with `^' `~')
     ^   pathname of this subdirectory in source tree
     ~   pathname of top level of source tree
-    /	terminates the escape (needed if next is not lwsp or space)
+    /	terminates the path escape } needed if next is
+    _   terminates the var escape  } not lwsp or space)
+    .   terminates path escape giving dir name (excluding /)
+    =	terminates var escape giving only prefix part (rarely needed)
   lwsp  starts multi-word processing (see below)
 
 So pathname syntax is a subset of:
-    '&' [ '^' | '~' ] [ lc | '/' ]
+    '&' [ '^' | '~' ] [ lc | '/' | '.' | '=' ]
 
 &&		=>	&&		for convenience in shell runes
 \&		=>	&		general escaping mechanism
-- 
2.11.0




More information about the sgo-software-discuss mailing list