From: Jeff King Date: Tue, 28 Jan 2020 09:24:14 GMT Subject: Re: [PATCH v2 1/1] config: learn the --stdin option for instructions Message-ID: <20200128092414.GB574544@coredump.intra.peff.net> In-Reply-To: On Mon, Jan 27, 2020 at 11:59:03AM -0500, Eric Sunshine wrote: > Second, this doesn't give any indication about how the lines should be > terminated. It should instead be written as: > > set SP NUL NUL > unset SP NUL > > Third, importantly, unlike git-update-ref from which this DSL takes > inspiration and in which "refs" might have oddball names for which > NUL-termination makes sense, it's hard to imagine a case in which a > configuration key would be so strange as to warrant NUL-termination. > This observation suggests a simpler DSL in which only is > NUL-terminated: > > set SP SP NUL > unset SP LF > > (The proposed code changes in config.c would need adjustment, as well, > to implement this revised DSL.) The section and key parts of a config key are pretty restricted, but the subsection portion can contain anything except newline and NUL. So in particular, it would be valid to have a space, which would make the input ambiguous. I agree it would probably be rare, but isn't the whole point of "-z" to be able to represent anything without worrying about quoting? -Peff