Module pl.lapp

Simple command-line parsing using human-readable specification.

Supports GNU-style parameters.

lapp = require 'pl.lapp' local args = lapp [[ Does some calculations -o,--offset (default 0.0) Offset to add to scaled number -s,--scale (number) Scaling factor <number> (number ) Number to be scaled ]]

print(args.offset + args.scale * args.number)

Lines begining with '-' are flags; there may be a short and a long name; lines begining wih '' are arguments. Anything in parens after the flag/argument is either a default, a type name or a range constraint.

>See the Guide

Dependencies: `pl.sip`

Functions

quit (msg, no_usage) quit this script immediately.
error (msg, no_usage) print an error to stderr and quit.
open (file, opt) open a file.
assert (condn, msg) quit if the condition is false.
add_type (name, converter, constraint) add a new type to Lapp.
process_options_string (str, args) process a Lapp options string.

Fields

show_usage_error controls whether to dump usage on error.


Functions

quit (msg, no_usage)
quit this script immediately.

Parameters:

  • msg optional message
  • no_usage suppress 'usage' display
error (msg, no_usage)
print an error to stderr and quit.

Parameters:

  • msg a message
  • no_usage suppress 'usage' display
open (file, opt)
open a file. This will quit on error, and keep a list of file objects for later cleanup.

Parameters:

  • file filename
  • opt same as second parameter of io.open
assert (condn, msg)
quit if the condition is false.

Parameters:

  • condn a condition
  • msg an optional message
add_type (name, converter, constraint)
add a new type to Lapp. These appear in parens after the value like a range constraint, e.g. ' (integer) Process PID'

Parameters:

  • name name of type
  • converter either a function to convert values, or a Lua type name.
  • constraint optional function to verify values, should use lapp.error if failed.
process_options_string (str, args)
process a Lapp options string. Usually called as lapp().

Parameters:

  • str the options text
  • args a table of arguments (default is `_G.arg`)

Returns:

    a table with parameter-value pairs

Fields

show_usage_error
controls whether to dump usage on error. Defaults to true
generated by LDoc 1.3.12