diff options
| author | Rejman <rejmans00@gmail.com> | 2024-03-02 01:21:30 +0100 |
|---|---|---|
| committer | Carlo Sala <carlosalag@protonmail.com> | 2024-03-02 01:22:01 +0100 |
| commit | 3ee108ccb301dd4143080e8bfd8f9ae869957a2e (patch) | |
| tree | 46d414dac0e9432d98c81b2e1bff0c359dd5517a /plugins | |
| parent | e3216d15c2d2ee81716e4c2cbc999b4bed5694d9 (diff) | |
| download | zsh-3ee108ccb301dd4143080e8bfd8f9ae869957a2e.tar.gz zsh-3ee108ccb301dd4143080e8bfd8f9ae869957a2e.tar.bz2 zsh-3ee108ccb301dd4143080e8bfd8f9ae869957a2e.zip | |
feat(git-commit): add `-a | --attention` flag
Refactor function as well to reduce flaws and increase stability
Closes #12234
Co-authored-by: Carlo Sala <carlosalag@protonmail.com>
Diffstat (limited to 'plugins')
| -rw-r--r-- | plugins/git-commit/git-commit.plugin.zsh | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/plugins/git-commit/git-commit.plugin.zsh b/plugins/git-commit/git-commit.plugin.zsh index 207c37e21..7ad349735 100644 --- a/plugins/git-commit/git-commit.plugin.zsh +++ b/plugins/git-commit/git-commit.plugin.zsh @@ -28,7 +28,30 @@ for _type in "${_git_commit_aliases[@]}"; do *) _alias=$_type ;; esac - local _func='!a() { if [ "$1" = "-s" ] || [ "$1" = "--scope" ]; then local scope="$2"; shift 2; git commit -m "'$type'(${scope}): ${@}"; else git commit -m "'$type': ${@}"; fi }; a' + local _func='!a() { +local _scope _attention _message +while [ $# -ne 0 ]; do +case $1 in + -s | --scope ) + if [ -z $2 ]; then + echo "Missing scope!" + return 1 + fi + _scope="$2" + shift 2 + ;; + -a | --attention ) + _attention="!" + shift 1 + ;; + * ) + _message+=" $1" + shift 1 + ;; +esac +done +git commit -m "'$_type'${_scope:+(${_scope})}${_attention}:${_message}" +}; a' git config --global alias.$_alias "$_func" done |
