From: Junio C Hamano Date: Wed, 14 Jun 2023 21:54:50 GMT Subject: Re: [PATCH v3] CodingGuidelines: use octal escapes, not hex Message-ID: In-Reply-To: <20230614213145.475607-1-jonathantanmy@google.com> Jonathan Tan writes: > Extend the shell-scripting section of CodingGuidelines to suggest octal > escape sequences (e.g. "\302\242") over hexadecimal (e.g. "\xc2\xa2") > since the latter can be a source of portability problems. Sounds good. On a typical GNU system, /usr/bin/printf as well as printf built into bash groks "\x" escapes in its format string, but we cannot depend on it because POSIX does not require support for "\x", and printf built into dash indeed does not. It is a good idea to stress that this is specifically about the format string (in other words, nothing magical happens when using octal or hex escapes in say "printf '%s\n' '\302\242'"). > + - Use octal escape sequences (e.g. "\302\242"), not hexadecimal (e.g. > + "\xc2\xa2") in printf format strings, since hexadecimal escape > + sequences are not portable. Will queue. Thanks.