chiark / gitweb /
Infrastructure: Split the files into subdirectories.
[mLib] / ui / quis.3
diff --git a/ui/quis.3 b/ui/quis.3
new file mode 100644 (file)
index 0000000..bd19698
--- /dev/null
+++ b/ui/quis.3
@@ -0,0 +1,64 @@
+.\" -*-nroff-*-
+.TH quis 3 "22 May 1999" "Straylight/Edgeware" "mLib utilities library"
+.SH NAME
+quis \- remember the program's name for use in messages
+.\" @quis
+.\" @ego
+.\" @QUIS
+.\" @pquis
+.SH SYNOPSIS
+.nf
+.B "#include <mLib/quis.h>"
+
+.BI "void ego(const char *" p );
+.B "const char *quis(void);"
+.B "const char *QUIS;"
+.BI "int pquis(FILE *" fp ", const char *" p );
+.fi
+.SH DESCRIPTION
+The
+.B ego
+function should be called early in your program's initialization
+sequence, with the value of
+.B argv[0]
+as its argument.  It will strip away leading path components, and a
+leading `\-' character (in case the program was called as a login
+shell), and keep the resulting short name for later.
+.PP
+The
+.B quis
+function returns the stored program name.  There is also a macro
+.B QUIS
+which expands to the name of a global variable whose value is the string
+returned by
+.BR quis() .
+.PP
+Don't ask why it's done this way.  There are raisins, but they're mostly
+hysterical.
+.PP
+The function
+.B pquis
+is passed a file pointer
+.I fp
+and a string
+.IR p :
+it writes the string to the file, replacing every lone occurrence of the
+character
+.RB ` $ '
+by the program name.  Pairs
+.RB (` $$ ')
+are written as single dollar signs.  The return value is zero if
+everything went OK, or the constant
+.B EOF
+if there was an error.
+.PP
+The program name is used in the messages produced by the
+.BR die (3)
+and
+.BR moan (3)
+functions.
+.SH "SEE ALSO"
+.BR report (3),
+.BR mLib (3).
+.SH AUTHOR
+Mark Wooding, <mdw@distorted.org.uk>