bug#81442: Documentation Deficiency: printf man page lacks definition of format specifiers
Pádraig Brady <[email protected]> Wed, 22 Jul 2026 16:09:45 +0100
| Newsgroups | gmane.comp.gnu.core-utils.bugs |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------0GA8ToayCz9Lg0AxWdMEz5Re Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 22/07/2026 15:45, Dmitri Seletski wrote: > Fantastic! > Thanks! > > On 22/07/2026 13:05, Pádraig Brady wrote: >>> On 20/07/2026 17:10, Pádraig Brady wrote: >>>> The "see also" has a reference to printf(3), >>>> which you can drill down to directly depending on you man page viewer, >>>> or view directly with `man 3 printf`. >>>> >>>> But I agree we should show that reference directly in the text. >>>> >>>> We need to be careful not to repeat too much info from the (large) >>>> printf(3) page, >>>> but I also agree that we could provide a little more info here. >>>> >>>> I'll look at: >>>> >>>> Using our recently improved man table formatting to present a >>>> conversion summary. >>>> Including at least mentioning that flags are supported. >>>> Also an EXAMPLES section would be useful here I think to show >>>> supported combinations. >> I'll apply the attached later, which adds: >> >> CONVERSION Shell format example Output >> >> %s '[%10s]' 'left pad' [ left pad] >> %s '[%-10s]' 'right pad' [right pad ] >> %c %s '%c %.3s' un unibyte u uni >> %d %i "%'d ;%i04i" 1234 '-1' 1,234 ;-001 >> %o '%#o' $((2#110100100)) 0644 >> %u '%u' 0xFFFFFFFF 4294967295 >> %x '0x%08x' 11259375 0x00abcdef >> %a %f '%1$a %1$f' 0.0009765625 0x8p-13 0.000977 >> %e %f '%1$e %1$f' 123.45678 1.234568e+02 123.456789 >> %g '%1$g %1$.2g' 1.2345678e3 1234.57 1.2e+03 >> %b '%b' 'food\bbar' foobar >> %q '%q ' 'a' ';b' $'c\n' a ';b' 'c'$'\n' I added blank lines to group the above into, string, integer, float, and other groups. I also pushed the attached to improve the printf reference tables in the info docs. cheers, Padraig --------------0GA8ToayCz9Lg0AxWdMEz5Re Content-Type: text/x-patch; charset=UTF-8; name="info-printf-tables.patch" Content-Disposition: attachment; filename="info-printf-tables.patch" Content-Transfer-Encoding: base64 RnJvbSBkYzllZTUyNTM2YzBhZjQzNWMyN2MxOTNlNDI5ZDM4MGU1YzcwNDFmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/UD1DMz1BMWRyYWlnPTIwQnJhZHk/ PSA8UEBkcmFpZ0JyYWR5LmNvbT4KRGF0ZTogV2VkLCAyMiBKdWwgMjAyNiAxNTo0OToxMSAr MDEwMApTdWJqZWN0OiBbUEFUQ0hdIGRvYzogZWNobyxwcmludGY6IGRldGFpbCBleGFjdGx5 IHdoaWNoIGVzY2FwZXMgYXJlIHN1cHBvcnRlZAoKKiBkb2MvY29yZXV0aWxzLnRleGkgKGVj aG8gaW52b2NhdGlvbik6IFBhcmFtZXRlcml6ZSB0aGUgZXNjYXBlIGxpc3QuCihwcmludGYg aW52b2NhdGlvbik6IFJlbW92ZSB0aGUgQyBlc2NhcGUgcmVmZXJlbmNlIGFzIGl0IG1lbnRp b25zClwnIHdoaWNoIHdlIGRvbid0IHN1cHBvcnQsIGFuZCBkb2Vzbid0IG1lbnRpb24gXGUg d2hpY2ggd2UgZG8gc3VwcG9ydAooYW5kIEdDQyBhbHNvIGRvZXMpLiAgSW5zdGVhZCBkaXJl Y3RseSBwcmVzZW50IHRoZSBlc2NhcGUgbGlzdAphcyBkb25lIGZvciB0aGUgZWNobyBjb21t YW5kLCBhZGp1c3RlZCBhY2NvcmRpbmdseS4KLS0tCiBkb2MvY29yZXV0aWxzLnRleGkgfCA1 NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCiAxIGZp bGUgY2hhbmdlZCwgMzggaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvZG9jL2NvcmV1dGlscy50ZXhpIGIvZG9jL2NvcmV1dGlscy50ZXhpCmluZGV4IGU5 MGZiM2UxNC4uMjc2OTBhYTkzIDEwMDY0NAotLS0gYS9kb2MvY29yZXV0aWxzLnRleGkKKysr IGIvZG9jL2NvcmV1dGlscy50ZXhpCkBAIC0xMjg3MywzOSArMTI4NzMsNTQgQEAgRG8gbm90 IG91dHB1dCB0aGUgdHJhaWxpbmcgbmV3bGluZS4KIEVuYWJsZSBpbnRlcnByZXRhdGlvbiBv ZiB0aGUgZm9sbG93aW5nIGJhY2tzbGFzaC1lc2NhcGVkIGNoYXJhY3RlcnMgaW4KIGVhY2gg QHZhcntzdHJpbmd9OgogCitAbWFjcm8gZXNjYXBlU2VxdWVuY2VzCiBAdGFibGUgQHNhbXAK LUBpdGVtIFxhCitAaXRlbSBcXFxcCitiYWNrc2xhc2gKK0BpZnNldCBQUklOVEZfQ09NTUFO RAorQGl0ZW0gXFwiCitkb3VibGUgcXVvdGUKK0BlbmQgaWZzZXQKK0BpdGVtIFxcYQogYWxl cnQgKGJlbGwpCi1AaXRlbSBcYgorQGl0ZW0gXFxiCiBiYWNrc3BhY2UKLUBpdGVtIFxjCitA aXRlbSBcXGMKIHByb2R1Y2Ugbm8gZnVydGhlciBvdXRwdXQKLUBpdGVtIFxlCitAaXRlbSBc XGUKIGVzY2FwZQotQGl0ZW0gXGYKK0BpdGVtIFxcZgogZm9ybSBmZWVkCi1AaXRlbSBcbgor QGl0ZW0gXFxuCiBuZXdsaW5lCi1AaXRlbSBccgorQGl0ZW0gXFxyCiBjYXJyaWFnZSByZXR1 cm4KLUBpdGVtIFx0CitAaXRlbSBcXHQKIGhvcml6b250YWwgdGFiCi1AaXRlbSBcdgorQGl0 ZW0gXFx2CiB2ZXJ0aWNhbCB0YWIKLUBpdGVtIFxcCi1iYWNrc2xhc2gKLUBpdGVtIFwwQHZh cntubm59CitAaWZjbGVhciBQUklOVEZfQ09NTUFORAorQGl0ZW0gXFwwQHZhcntubm59CiB0 aGUgZWlnaHQtYml0IHZhbHVlIHRoYXQgaXMgdGhlIG9jdGFsIG51bWJlciBAdmFye25ubn0K ICh6ZXJvIHRvIHRocmVlIG9jdGFsIGRpZ2l0cyksIGlmIEB2YXJ7bm5ufSBpcwogYSBuaW5l LWJpdCB2YWx1ZSwgdGhlIG5pbnRoIGJpdCBpcyBpZ25vcmVkCi1AaXRlbSBcQHZhcntubm59 CitAZW5kIGlmY2xlYXIKK0BpdGVtIFxcQHZhcntubm59CiB0aGUgZWlnaHQtYml0IHZhbHVl IHRoYXQgaXMgdGhlIG9jdGFsIG51bWJlciBAdmFye25ubn0KIChvbmUgdG8gdGhyZWUgb2N0 YWwgZGlnaXRzKSwgaWYgQHZhcntubm59IGlzCiBhIG5pbmUtYml0IHZhbHVlLCB0aGUgbmlu dGggYml0IGlzIGlnbm9yZWQKLUBpdGVtIFx4QHZhcntoaH0KK0BpdGVtIFxceEB2YXJ7aGh9 CiB0aGUgZWlnaHQtYml0IHZhbHVlIHRoYXQgaXMgdGhlIGhleGFkZWNpbWFsIG51bWJlciBA dmFye2hofQogKG9uZSBvciB0d28gaGV4YWRlY2ltYWwgZGlnaXRzKQorQGlmc2V0IFBSSU5U Rl9DT01NQU5ECitAaXRlbSBcXHVAdmFye2hoaGh9CitVbmljb2RlIChJU08vSUVDIDEwNjQ2 KSBjaGFyYWN0ZXIgd2l0aCBoZXggdmFsdWUgSEhISCAoNCBkaWdpdHMpCitAaXRlbSBcXFVA dmFye2hoaGhoaGhofQorVW5pY29kZSBjaGFyYWN0ZXIgd2l0aCBoZXggdmFsdWUgSEhISEhI SEggKDggZGlnaXRzKQorQGVuZCBpZnNldAogQGVuZCB0YWJsZQorQGVuZCBtYWNybworQGVz Y2FwZVNlcXVlbmNlcwogCiBAb3B0SXRlbXtlY2hvLC1FLH0KIEBjaW5kZXggYmFja3NsYXNo IGVzY2FwZXMKQEAgLTEyOTUwLDEwICsxMjk2NSwxNiBAQCBpbiBhIHdheSB0aGF0IGlzIG1v c3RseSBzaW1pbGFyIHRvIHRoZSBDIEBzYW1we3ByaW50Zn0gZnVuY3Rpb24sCiBhbmQgQyBs YW5ndWFnZSBlc2NhcGUgc2VxdWVuY2UgcHJvY2Vzc2luZy4KIEB4cmVme091dHB1dCBDb252 ZXJzaW9uIFN5bnRheCwsIEBjb21tYW5ke3ByaW50Zn0gZm9ybWF0IGRpcmVjdGl2ZXMsCiBs aWJjLCBUaGUgR05VIEMgTGlicmFyeSBSZWZlcmVuY2UgTWFudWFsfSwgZm9yIGRldGFpbHMu Ci1TZWUgYWxzbyBAdXJlZntodHRwczovL2VuLmNwcHJlZmVyZW5jZS5jb20vdy9jL2xhbmd1 YWdlL2VzY2FwZSwKLUM5OSBzdHJpbmcgZXNjYXBlczp9LgogCi1FeGFtcGxlcyBvZiBzdXBw b3J0ZWQgY29udmVyc2lvbiBzcGVjaWZpZXJzIGFuZCBmbGFncyBhcmU6CitAbWF5Q29uZmxp Y3RXaXRoU2hlbGxCdWlsdElue3ByaW50Zn0KKworU3VwcG9ydGVkIGVzY2FwZSBzZXF1ZW5j ZXMgYXJlOgorCitAc2V0IFBSSU5URl9DT01NQU5ECitAZXNjYXBlU2VxdWVuY2VzCitAY2xl YXIgUFJJTlRGX0NPTU1BTkQKKworU3VwcG9ydGVkIGNvbnZlcnNpb24gc3BlY2lmaWVycyB3 aXRoIGV4YW1wbGVzIGFyZToKIAogQGV4YW1wbGUKIENPTlZFUlNJT04gIFNoZWxsIGZvcm1h dCBleGFtcGxlICAgICAgICBPdXRwdXQKQEAgLTEyOTc1LDggKzEyOTk2LDYgQEAgQ09OVkVS U0lPTiAgU2hlbGwgZm9ybWF0IGV4YW1wbGUgICAgICAgIE91dHB1dAogJXEgICAgICAgICAg JyVxICcgJ2EnICc7YicgJCdjXG4nICAgICAgIGEgJztiJyAnYyckJ1xuJwogQGVuZCBleGFt cGxlCiAKLUBtYXlDb25mbGljdFdpdGhTaGVsbEJ1aWx0SW57cHJpbnRmfQotCiBUaGUgZGlm ZmVyZW5jZXMgZnJvbSB0aGUgQyBAc2FtcHtwcmludGZ9IGZ1bmN0aW9uIGFyZToKIAogQGl0 ZW1pemUgQGJ1bGxldAotLSAKMi41NS4wCgo= --------------0GA8ToayCz9Lg0AxWdMEz5Re--