in lib/src/parser.dart [164:186]
bool _parseAbbreviation(Parser innermostCommand) {
// Hand coded regexp: r'^-([a-zA-Z0-9]+)(.*)$'
// Hyphen then at least one letter/digit then zero or more
// anything-but-newlines.
if (_current.length < 2) return false;
if (!_current.startsWith('-')) return false;
// Find where we go from letters/digits to rest.
var index = 1;
while (index < _current.length &&
_isLetterOrDigit(_current.codeUnitAt(index))) {
++index;
}
// Must be at least one letter/digit.
if (index == 1) return false;
// If the first character is the abbreviation for a non-flag option, then
// the rest is the value.
var lettersAndDigits = _current.substring(1, index);
var rest = _current.substring(index);
if (rest.contains('\n') || rest.contains('\r')) return false;
return _handleAbbreviation(lettersAndDigits, rest, innermostCommand);
}