summaryrefslogtreecommitdiff
path: root/scripts/library/README
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2012-04-24 08:39:31 -0500
committerDan McGee <dan@archlinux.org>2012-04-24 08:39:31 -0500
commitac6ebcfe93e8214ad4170caab006ffe5f9abe98d (patch)
tree6f372cd445afcf609511be474cb50c4d1b689047 /scripts/library/README
parent1eb6a9cbfef4f0ad5151b4850d81141b7a535be6 (diff)
parent59dc631c9a2c8bacb19109e75c4fd0f604e85758 (diff)
downloadpacman-ac6ebcfe93e8214ad4170caab006ffe5f9abe98d.tar.xz
Merge branch 'parse-opts'
Diffstat (limited to 'scripts/library/README')
-rw-r--r--scripts/library/README24
1 files changed, 19 insertions, 5 deletions
diff --git a/scripts/library/README b/scripts/library/README
index 1e9c962b..c71c0714 100644
--- a/scripts/library/README
+++ b/scripts/library/README
@@ -8,8 +8,22 @@ and can be silenced by defining 'QUIET'. The 'warning' and 'error'
functions print to stderr with the appropriate prefix added to the
message.
-parse_options.sh:
-A getopt replacement to avoids portability issues, in particular the
-lack of long option name support in the default getopt provided by some
-platforms.
-Usage: parse_option $SHORT_OPTS $LONG_OPTS "$@"
+parseopts.sh:
+A getopt_long-like parser which portably supports longopts and shortopts
+with some GNU extensions. It does not allow for options with optional
+arguments. For both short and long opts, options requiring an argument
+should be suffixed with a colon. After the first argument containing
+the short opts, any number of valid long opts may be be passed. The end
+of the options delimiter must then be added, followed by the user arguments
+to the calling program.
+
+Reccommended Usage:
+ OPT_SHORT='fb:z'
+ OPT_LONG=('foo' 'bar:' 'baz')
+ if ! parseopts "$OPT_SHORT" "${OPT_LONG[@]}" -- "$@"; then
+ exit 1
+ fi
+ set -- "${OPTRET[@]}"
+Returns:
+ 0: parse success
+ 1: parse failure (error message supplied)