CVS commit: src/bin/sh

"Robert Elz" <[email protected]>
Newsgroups gmane.os.netbsd.devel.cvs
Message-ID <[email protected]>
Module Name:	src
Committed By:	kre
Date:		Sat Aug 15 19:23:51 UTC 2026

Modified Files:
	src/bin/sh: expand.c

Log Message:
sh: fully implement dotglob

Since dotglob has been created, and is now a sh option, implement
it fully, not only for filename completion (but not at all in SMALL
shells).

When dotglob is enabled '*' (etc) matches filenames beginning with
a dot (period, '.') as well as everything else.  When it is disabled
the historic practice of only matching files with names starting with
a '.' when the pattern starts (that component) with a '.' continues.

The default (as with most options) is disabled (traditional behaviour).

Note that the names "." and ".." are unaffected by dotglob, they
are only ever matched by a pattern starting with '.'.

Note all of this applies only to filename expansion (aka, glob) and
libedit's filename completion, and not to any other uses of pattern
matching in sh.  In all other contexts a '.' is just a character,
wherever it appears, and is matched just the same as anything else.


To generate a diff of this commit:
cvs rdiff -u -r1.151 -r1.152 src/bin/sh/expand.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.