diff options
Diffstat (limited to '.local/templates/sh')
-rw-r--r-- | .local/templates/sh | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/.local/templates/sh b/.local/templates/sh new file mode 100644 index 0000000..27cae4a --- /dev/null +++ b/.local/templates/sh @@ -0,0 +1,46 @@ +#! /usr/bin/env sh + +main() +{ + # Handle opts + opts "$@" + shift "$OPTS" + unset OPTS + + # Show help + [ "$OPT_HELP_ONLY" ] && usage && exit 0 + + # TODO: Write actual program +} + +opts() +{ + OPTS=0 + + while getopts ":h" opt + do + case "$opt" in + h) OPT_HELP_ONLY=1 ;; + *) + printf "Invalid option passed: %s\n" "$OPTARG" >&2 + ;; + esac + done + + unset opt +} + +usage() +{ + cat <<EOF +Usage: + $(basename "$0") -h + +Nondescript + +Options: + -h Show this help text and exit. +EOF +} + +main "$@" |