X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/6db4565184f61a8fa55e32296fdad530ebf00d6b..0f343e7716fbc0401663dc37ecc94874c23ff68e:/man/mh-format.man diff --git a/man/mh-format.man b/man/mh-format.man index 85604d75..22233b65 100644 --- a/man/mh-format.man +++ b/man/mh-format.man @@ -269,8 +269,8 @@ num integer Set \fInum\fR to zero. lit literal string Set \fIstr\fR to \fIarg\fR. lit string Clear \fIstr\fR. getenv literal string Set \fIstr\fR to environment value of \fIarg\fR -profile literal string Set \fIstr\fR to profile component \fIarg\fR - value +profile literal string Set \fIstr\fR to profile or context + component \fIarg\fR value .\" dat literal int return value of dat[arg] nonzero expr boolean \fInum\fR is non-zero zero expr boolean \fInum\fR is zero @@ -285,10 +285,13 @@ decode expr string decode \fIstr\fR as RFC 2047 (MIME-encoded) component unquote expr string remove RFC 2822 quotes from \fIstr\fR trim expr trim trailing whitespace from \fIstr\fR +trimr expr string Like %(trim), also returns string kilo expr string express in SI units: 15.9K, 2.3M, etc. %(kilo) scales by factors of 1000, kibi expr string express in IEC units: 15.5Ki, 2.2Mi. %(kibi) scales by factors of 1024. +ordinal expr string Output ordinal suffix based on value + of \fInum\fR (st, nd, rd, th) putstr expr print \fIstr\fR putstrf expr print \fIstr\fR in a fixed width putnum expr print \fInum\fR @@ -411,6 +414,13 @@ It returns true if any address matches. However, it also returns true if the \*(lq\fIcomp\fR\*(rq header is not present in the message. If needed, the (\fInull\fR\^) function can be used to explicitly test for this case.) +.PP +The \fIfriendly\fR\^{\fIcomp\fR\^}) call will return any double-quoted +\*(lqpersonal name\*(rq (that is, anything before <>), then it will return +that. If there's no personal name but there is a +\*(lqnote\*(rq (comments string after an email address), it will return +that. If there is neither of those it will just return the bare email address. + .SS Formatting When a function or component escape is interpreted and the result will be printed immediately, an optional field width can be specified to @@ -429,9 +439,12 @@ specified by their leading field width argument. For example, size in a field six characters wide filled with leading zeros; %14(\fIputstrf\^\fR{\fIfrom\^\fR}) will print the \*(lqFrom:\*(rq header component in fourteen characters with trailing spaces added as needed. -For \fIputstrf\fR, using a negative value for the field width causes -right-justification of the string within the field, with padding on +Using a negative value for the field width causes +right-justification within the field, with padding on the left up to the field width. +Padding is with spaces except for a left-padded +.I putnumf +when the width starts with zero. The functions (\fIputnum\fR\^) and (\fIputstr\fR\^) are somewhat special: they print their result in the minimum number of characters required, and ignore any leading field width