• * Fixes #240: Multiple long option names / aliases
    
    * We now use a vector of long option names instead of a single name
    * When specifying an option, you can provide multiple names separated by commas, at most one of which may have a length of 1 (not necessarily the first specified name). The length-1 name is the single-hyphen switch (the "short name").
    * Hashing uses the first long name
    * Option help currently only uses the first long name.
    Eyal Rozenberg authored
     
    Browse File »


























  • Fixes #83.
    
    Adds an overload for positional arguments taking a
    `std::initializer_list`. When using an `initializer_list` with one
    argument, the function call is ambiguous matching both `std::string`
    and `std::vector<std::string>`.
    Jarryd Beck authored
     
    Browse File »
  • Fixes #84. Implicit values are not handled very well. For example:
    
        --foo false true
        --foo --bar
    
    In the first, `false` is an argument to `--foo`, and then `true` is a
    positional argument. In the second, because of the hyphen in `--bar`, `--foo`
    is parsed with its implicit value. This seems inconsistent and unintuitive.
    
    Better is that implicit values *never* consume the next parameter to be
    completely consistent. This means that values with an implicit parameter
    *must* be specified using the `--option=value` form.
    Jarryd Beck authored
     
    Browse File »