1.0.0 • Published 8 years ago

hledger-flags v1.0.0

Weekly downloads
1
License
MIT
Repository
github
Last release
8 years ago

hledger-flags

Parses hledger flags

> parse('-f ledger.journal bal -M')
{
  command: 'balance',
  file: 'ledger.journal',
  query: [],
  monthly: true
}

Parses flags for hledger. Knows most of hledger's flag aliases and other quirks.

Status

API

OPTIONS

Options for rminimist.

> OPTIONS.boolean
[ 'ignore-assertions', 'cleared', 'pending', ... ]

> OPTIONS.string
[ 'file', 'begin', 'end', ... ]

> OPTIONS.alias
{ f: 'file', b: 'begin', e: 'end', ... }

parse

parse(string)

Parses a string into a Ledger Flags object.

> parse('-f ledger.journal bal -M')
{
  command: 'balance',
  file: 'ledger.journal',
  query: [],
  monthly: true
}

The return value is an object that always has the following fields:

  • command (String) - the command to be executed
  • query (Array) - query to run

All other attributes are derived from the flags.

normalizeCommand

normalizeCommand(cmd)

Normalizes a command based on aliases.

> normalizeCommand('reg')
'register'

> normalizeCommand('bal')
'balance'

toString

toString(flags)

Converts Ledger Flags back into string.

> args = parse('bal -f ledger.journal -M');
> toString(args)
'balance --file ledger.journal --monthly'

parseMany

parseMany(strings...)

Parses many arguments.

> args = parseMany('-f ledger.journal', 'bal -M');
> toString(args)
'balance --file ledger.journal --monthly'

See also

Thanks

hledger-flags © 2016+, Rico Sta. Cruz. Released under the MIT License. Authored and maintained by Rico Sta. Cruz with help from contributors (list).

ricostacruz.com  ·  GitHub @rstacruz  ·  Twitter @rstacruz