summaryrefslogtreecommitdiff
path: root/src/lib/libast/man/fmt.3
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libast/man/fmt.3')
-rw-r--r--src/lib/libast/man/fmt.3213
1 files changed, 213 insertions, 0 deletions
diff --git a/src/lib/libast/man/fmt.3 b/src/lib/libast/man/fmt.3
new file mode 100644
index 0000000..dbe1aab
--- /dev/null
+++ b/src/lib/libast/man/fmt.3
@@ -0,0 +1,213 @@
+.fp 5 CW
+.de Af
+.ds ;G \\*(;G\\f\\$1\\$3\\f\\$2
+.if !\\$4 .Af \\$2 \\$1 "\\$4" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
+..
+.de aF
+.ie \\$3 .ft \\$1
+.el \{\
+.ds ;G \&
+.nr ;G \\n(.f
+.Af "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
+\\*(;G
+.ft \\n(;G \}
+..
+.de L
+.aF 5 \\n(.f "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7"
+..
+.de LR
+.aF 5 1 "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7"
+..
+.de RL
+.aF 1 5 "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7"
+..
+.de EX \" start example
+.ta 1i 2i 3i 4i 5i 6i
+.PP
+.RS
+.PD 0
+.ft 5
+.nf
+..
+.de EE \" end example
+.fi
+.ft
+.PD
+.RE
+.PP
+..
+.TH FMT 3
+.SH NAME
+fmt \- string formatting routines
+.SH SYNOPSIS
+.EX
+#include <ast.h>
+#include <ls.h>
+
+char* fmtbase(long \fInumber\fP, int \fIbase\fP, int \fIprefix\fP);
+char* fmtdev(struct stat* \fIst\fP);
+char* fmtelapsed(unsigned long \fIcount\fP, int \fIpersec\fP)
+char* fmterror(int \fIerrno\fP);
+char* fmtesc(const char* \fIstring\fP);
+char* fmtfs(struct stat* \fIst\fP);
+char* fmtgid(int \fIgid\fP);
+char* fmtmatch(const char* \fIre\fP);
+char* fmtmode(int \fImode\fP, int \fIexternal\fP);
+char* fmtperm(int \fIperm\fP);
+char* fmtre(const char* \fIpattern\fP);
+char* fmtsignal(int \fIsig\fP);
+char* fmttime(const char* \fIformat\fP, time_t \fItm\fP);
+char* fmtuid(int \fIuid\fP);
+.EE
+.SH DESCRIPTION
+These routines return a pointer to a formatted string for various numeric
+and string entities.
+Some routines may cache information to speed up the next call.
+Most of the routines return a pointer to a private buffer, the
+contents of which are overwritten on the next call to that routine.
+Most
+.L fmt
+routines have a corresponding
+.L str
+routine that converts in the other direction.
+There is nothing spectacular about this collection other than that
+it provides a single place where the exact format is spelled out.
+.PP
+.L fmtbase
+formats a base
+.I base
+representation for
+.IR number .
+If
+.I "prefix != 0"
+then the base prefix is included in the formatted string.
+If
+.I "number == 0"
+or
+.I "base == 0"
+then the output is signed base 10.
+.PP
+.L fmtdev
+returns the device handle name specified by the
+.L stat
+structure
+.IR st .
+This is the device information displayed by
+.IR "ls \-l" .
+.PP
+.L fmtelapsed
+formats the elapsed time for
+.I (count/persec)
+seconds.
+The two largest time units are used, limiting the return value length
+to at most 6 characters.
+The units are:
+.RS
+.TP
+.B s
+seconds
+.TP
+.B m
+minutes
+.TP
+.B h
+hours
+.TP
+.B days
+.TP
+.B weeks
+.TP
+.B M
+months
+.TP
+.B Y
+years
+.TP
+.B S
+scores
+.RE
+.PP
+.L fmterror
+returns the system error message text for the error number
+.IR errno .
+.PP
+.L fmtesc
+formats non-ASCII characters in
+.I string
+into C-style
+.B \e
+sequences.
+These sequences are understood by
+.L chresc
+and
+.LR chrtoi .
+.PP
+.L fmtfs
+returns the file system type name corresponding to the
+.L stat
+structure
+.IR st .
+.PP
+.L fmtgid
+returns the group name for
+.IR gid .
+.PP
+.L fmtmatch
+returns the
+.L strmatch
+equivalent pattern for the regular expression pattern
+.IR re .
+0 is returned for invalid
+.IR re .
+.PP
+.L fmtmode
+returns the
+.I "ls \-l"
+mode string for the file mode bits in
+.IR mode .
+If
+.I "external != 0"
+then
+.I mode
+is
+.IR modecanon (3)
+canonical.
+.PP
+.L fmtperm
+returns the
+.I chmod
+permission string for the permission bits in
+.IR perm .
+.PP
+.L fmtre
+returns the regular expression
+equivalent pattern for the
+.L strmatch
+pattern
+.IR pattern .
+0 is returned for invalid
+.IR pattern .
+.PP
+.L fmtsignal
+returns the signal name, sans
+.LR SIG ,
+for the signal number
+.IR sig .
+If
+.I "sig < 0"
+then the description text for
+.I \-sig
+is returned.
+.PP
+.L fmttime
+returns the results of
+.I "tmfmt(buf,sizeof(buf),format,tm)"
+in the private buffer
+.IR buf .
+.PP
+.L fmtuid
+returns the user name for
+.IR uid .
+.SH "SEE ALSO"
+modecanon(3),
+str(3)