22 lines
782 B
Bash
Executable File
22 lines
782 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Parse hledger's commands list and print all builtin command names and aliases.
|
|
# Currently add-on commands are excluded, except for ui and web.
|
|
|
|
set -euo pipefail
|
|
declare commands_help
|
|
commands_help=$(hledger)
|
|
# Keep synced with `hledger` output and known add-ons (+-prefixed commands in Hledger.Cli.Commands.commandsList):
|
|
{
|
|
sed -rn 's/^[[:space:]]([a-z][-a-z]+)[[:space:]]+.*/\1/p; /OTHER ADDONS/q' <<< "$commands_help"
|
|
sed -rn 's/^[[:space:]][a-z][-a-z]+[[:space:]]+\(([a-z][ ,a-z]+)\).*/\1/p' <<< "$commands_help"
|
|
} \
|
|
| sed -r '/(iadd|edit|lots|bar|plot|autosync|interest|pricehist|check-fancyassertions|check-tagfiles|git|pijul)/d;' \
|
|
| sort -u
|
|
|
|
# Local Variables:
|
|
# mode: sh
|
|
# sh-basic-offset: 4
|
|
# indent-tabs-mode: nil
|
|
# End:
|
|
# ex: ts=4 sw=4 et
|