Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Process application arguments the same way as getopt_long
Lua Shell Perl
Branch: master

README

lua_altgetopt is a MIT-licenced module for Lua programming language
for processing application's arguments the same way
BSD/GNU getopt_long(3) functions do.

Main features and goals:
1) compatibility to SUS "Utility Syntax Guidelines"
http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap12.html#tag_12_02
guidelines 3-13.
2) This module is for plain Lua
2) No extra dependencies
3) No hooks, no functional tricks ;-)
4) Support for long options, e.g. compatibility with getopt_long(3) C function
   present in *BSD and GNU libc.
5) Long options may optionally have one-char synonym or other long synonym
6) Strict error checking (checks for an incorrect use of options)
7) alt_getopt.lua is a Lua module.

In particular alt_getopt.lua supports the following
   -kVALUE, -k VALUE, --key=VALUE, --key VALUE,
   -abcd is equivalent to -a -b -c -d if neither of them accept value.
All options must be declared as accepting value or not.

Two ways of options handling are provided.
See alt_getopt application which is a part of regression tests.

Makefile:
It's probably useless for end users, you can copy alt_getopt.lua
to the destination yourself. Otherwise use BSD make,
NetBSD make is preferred because NetBSD is my development platform.

If 'make test' fails on your platform/Lua, please let me know.
If you find a a bug, register it here
http://luaforge.net/project/lua_altgetopt
or send me bugreport directly.

Author: Aleksey Cheusov <vle@gmx.net>
Something went wrong with that request. Please try again.