diff --git a/modules/git/README.md b/modules/git/README.md index c2d0449..3ba961f 100644 --- a/modules/git/README.md +++ b/modules/git/README.md @@ -237,6 +237,7 @@ Functions - `git-stash-recover` recovers given dropped stashed states. - `git-submodule-move` moves a submodule. - `git-submodule-remove` removes a submodule. + - `git-ignore-template` get gitignore template from [gitignore.io][9] Theming ------- @@ -332,3 +333,4 @@ Authors [6]: https://github.com/sorin-ionescu/prezto/issues [7]: https://github.com/sorin-ionescu/prezto/issues/219 [8]: http://www.kernel.org/pub/software/scm/git/docs/git-log.html +[9]: https://gitignore.io/ diff --git a/modules/git/alias.zsh b/modules/git/alias.zsh index ffa854d..00fe426 100644 --- a/modules/git/alias.zsh +++ b/modules/git/alias.zsh @@ -179,3 +179,6 @@ alias gwc='git clean -n' alias gwC='git clean -f' alias gwx='git rm -r' alias gwX='git rm -rf' + +# Ignore list (ig) +alias gig='git-ignore-template' diff --git a/modules/git/functions/_git-ignore-template b/modules/git/functions/_git-ignore-template new file mode 100644 index 0000000..22af0f8 --- /dev/null +++ b/modules/git/functions/_git-ignore-template @@ -0,0 +1,26 @@ +#compdef _gitignireio git-ignore-template +#autoload + +# +# Completes git-ignore-template +# +# Authors: +# Haojia Che +# + +typeset -A opt_args + +_arguments -C \ + '1::ignore:->ignores' \ +&& ret=0 + +list=(`git-ignore-template`) + +case "$state" in + (ignores) + languages=(`echo $list| tr "," "\n"`) + _describe 'templates' languages && ret=0 + ;; +esac; + +return 1; diff --git a/modules/git/functions/git-ignore-template b/modules/git/functions/git-ignore-template new file mode 100644 index 0000000..2ab5551 --- /dev/null +++ b/modules/git/functions/git-ignore-template @@ -0,0 +1,20 @@ +# +# Get ignore template from https://gitignore.io. +# +# Authors: +# Haojia Che +# +# Use `git-ignore-template` or `git-ignore-template list` to get the list +# Uset `git-ignore-template