|
Packit Service |
a8c26c |
.fp 5 CW
|
|
Packit Service |
a8c26c |
.de Af
|
|
Packit Service |
a8c26c |
.ds ;G \\*(;G\\f\\$1\\$3\\f\\$2
|
|
Packit Service |
a8c26c |
.if !?\\$4?? .Af \\$2 \\$1 "\\$4" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
|
|
Packit Service |
a8c26c |
..
|
|
Packit Service |
a8c26c |
.de aF
|
|
Packit Service |
a8c26c |
.ie ?\\$3?? .ft \\$1
|
|
Packit Service |
a8c26c |
.el \{\
|
|
Packit Service |
a8c26c |
.ds ;G \&
|
|
Packit Service |
a8c26c |
.nr ;G \\n(.f
|
|
Packit Service |
a8c26c |
.Af "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
|
|
Packit Service |
a8c26c |
\\*(;G
|
|
Packit Service |
a8c26c |
.ft \\n(;G \}
|
|
Packit Service |
a8c26c |
..
|
|
Packit Service |
a8c26c |
.de L
|
|
Packit Service |
a8c26c |
.aF 5 \\n(.f "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7"
|
|
Packit Service |
a8c26c |
..
|
|
Packit Service |
a8c26c |
.de LR
|
|
Packit Service |
a8c26c |
.aF 5 1 "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7"
|
|
Packit Service |
a8c26c |
..
|
|
Packit Service |
a8c26c |
.de RL
|
|
Packit Service |
a8c26c |
.aF 1 5 "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7"
|
|
Packit Service |
a8c26c |
..
|
|
Packit Service |
a8c26c |
.de EX \" start example
|
|
Packit Service |
a8c26c |
.ta 1i 2i 3i 4i 5i 6i
|
|
Packit Service |
a8c26c |
.PP
|
|
Packit Service |
a8c26c |
.RS
|
|
Packit Service |
a8c26c |
.PD 0
|
|
Packit Service |
a8c26c |
.ft 5
|
|
Packit Service |
a8c26c |
.nf
|
|
Packit Service |
a8c26c |
..
|
|
Packit Service |
a8c26c |
.de EE \" end example
|
|
Packit Service |
a8c26c |
.fi
|
|
Packit Service |
a8c26c |
.ft
|
|
Packit Service |
a8c26c |
.PD
|
|
Packit Service |
a8c26c |
.RE
|
|
Packit Service |
a8c26c |
.PP
|
|
Packit Service |
a8c26c |
..
|
|
Packit Service |
a8c26c |
.TH VECARGS 3
|
|
Packit Service |
a8c26c |
.SH NAME
|
|
Packit Service |
a8c26c |
vecargs \- command argument vector insertion routines
|
|
Packit Service |
a8c26c |
.SH SYNOPSIS
|
|
Packit Service |
a8c26c |
.L "#include <vecargs.h>"
|
|
Packit Service |
a8c26c |
.sp
|
|
Packit Service |
a8c26c |
.L "char** vecload(char* string);"
|
|
Packit Service |
a8c26c |
.L "char** vecfile(const char* path);"
|
|
Packit Service |
a8c26c |
.L "char** vecstring(const char* string);"
|
|
Packit Service |
a8c26c |
.L "void vecfree(char**, int);"
|
|
Packit Service |
a8c26c |
.L "int vecargs(char** vec, int* argcp, char*** argvp);"
|
|
Packit Service |
a8c26c |
.SH DESCRIPTION
|
|
Packit Service |
a8c26c |
.L vecload
|
|
Packit Service |
a8c26c |
loads a string vector from lines in
|
|
Packit Service |
a8c26c |
.LR string .
|
|
Packit Service |
a8c26c |
.L string
|
|
Packit Service |
a8c26c |
may be modified upon return.
|
|
Packit Service |
a8c26c |
Each line in
|
|
Packit Service |
a8c26c |
.L string
|
|
Packit Service |
a8c26c |
is treated as a new vector element.
|
|
Packit Service |
a8c26c |
Lines with
|
|
Packit Service |
a8c26c |
.L #
|
|
Packit Service |
a8c26c |
as the first character are comments.
|
|
Packit Service |
a8c26c |
.I \enewline
|
|
Packit Service |
a8c26c |
joins consecutive lines.
|
|
Packit Service |
a8c26c |
A string vector pointer is returned, 0 on error.
|
|
Packit Service |
a8c26c |
.PP
|
|
Packit Service |
a8c26c |
.L vecfile
|
|
Packit Service |
a8c26c |
constructs a string vector by calling
|
|
Packit Service |
a8c26c |
.L vecload
|
|
Packit Service |
a8c26c |
on the contents of the file named by
|
|
Packit Service |
a8c26c |
.LR path .
|
|
Packit Service |
a8c26c |
The string vector pointer is returned, 0 on error.
|
|
Packit Service |
a8c26c |
.PP
|
|
Packit Service |
a8c26c |
.L vecstring
|
|
Packit Service |
a8c26c |
constructs a string vector by calling
|
|
Packit Service |
a8c26c |
.L vecload
|
|
Packit Service |
a8c26c |
on a copy of
|
|
Packit Service |
a8c26c |
.LR string .
|
|
Packit Service |
a8c26c |
The string vector pointer is returned, 0 on error.
|
|
Packit Service |
a8c26c |
.PP
|
|
Packit Service |
a8c26c |
.L vecfree
|
|
Packit Service |
a8c26c |
frees a string vector allocated by
|
|
Packit Service |
a8c26c |
.LR vecfile ,
|
|
Packit Service |
a8c26c |
.L vecload
|
|
Packit Service |
a8c26c |
or
|
|
Packit Service |
a8c26c |
.LR vecstring .
|
|
Packit Service |
a8c26c |
.PP
|
|
Packit Service |
a8c26c |
.L vecargs
|
|
Packit Service |
a8c26c |
inserts the string vector
|
|
Packit Service |
a8c26c |
.L vec
|
|
Packit Service |
a8c26c |
(as returned by
|
|
Packit Service |
a8c26c |
.LR vecfile ,
|
|
Packit Service |
a8c26c |
.L vecload
|
|
Packit Service |
a8c26c |
or
|
|
Packit Service |
a8c26c |
.LR vecstring )
|
|
Packit Service |
a8c26c |
between
|
|
Packit Service |
a8c26c |
.L "(*argvp)[0]"
|
|
Packit Service |
a8c26c |
and
|
|
Packit Service |
a8c26c |
.LR "(*argvp)[1]" ,
|
|
Packit Service |
a8c26c |
sliding
|
|
Packit Service |
a8c26c |
.L "(*argvp)[1] ..."
|
|
Packit Service |
a8c26c |
over.
|
|
Packit Service |
a8c26c |
NULL and empty string args in
|
|
Packit Service |
a8c26c |
.L vec
|
|
Packit Service |
a8c26c |
are not copied.
|
|
Packit Service |
a8c26c |
.L "vecfree(vec)"
|
|
Packit Service |
a8c26c |
is called before the return.
|
|
Packit Service |
a8c26c |
.L \-1
|
|
Packit Service |
a8c26c |
is returned if the insertion failed.
|
|
Packit Service |
a8c26c |
.SH EXAMPLES
|
|
Packit Service |
a8c26c |
.L vecargs
|
|
Packit Service |
a8c26c |
is commonly used to modify command
|
|
Packit Service |
a8c26c |
.L argv
|
|
Packit Service |
a8c26c |
from fixed files.
|
|
Packit Service |
a8c26c |
For example,
|
|
Packit Service |
a8c26c |
.IR make (1)
|
|
Packit Service |
a8c26c |
checks for the files
|
|
Packit Service |
a8c26c |
.L ./Makeargs
|
|
Packit Service |
a8c26c |
and
|
|
Packit Service |
a8c26c |
.L ./makeargs
|
|
Packit Service |
a8c26c |
to modify its arguments on startup.
|
|
Packit Service |
a8c26c |
Its a handy way to override default options on a directory by directory basis
|
|
Packit Service |
a8c26c |
without modify the standard control files
|
|
Packit Service |
a8c26c |
(\f5Makefile\fP in this case.)
|
|
Packit Service |
a8c26c |
.SH CAVEATS
|
|
Packit Service |
a8c26c |
This paradigm is not recommended for all commands; only a few exceptions
|
|
Packit Service |
a8c26c |
make sense.
|