mirror of
https://git.decapod.one/brethil/dotfiles
synced 2024-11-22 03:21:30 +01:00
zsh: cleanup functions completions
This commit is contained in:
parent
73ef8d928a
commit
c6b110b325
|
@ -253,11 +253,34 @@ function retry() {
|
||||||
# Creats a gitignore for the given argument (e.g. python, cpp, etc)
|
# Creats a gitignore for the given argument (e.g. python, cpp, etc)
|
||||||
function gi() { curl -sL https://www.toptal.com/developers/gitignore/api/$@; }
|
function gi() { curl -sL https://www.toptal.com/developers/gitignore/api/$@; }
|
||||||
|
|
||||||
|
|
||||||
|
__completion_wrapper(){
|
||||||
|
# Wrapper for completion functions.
|
||||||
|
# These can be used to force loading of all completions
|
||||||
|
# for the given command in order to access specialized
|
||||||
|
# completion functions
|
||||||
|
#
|
||||||
|
# See `__git_completion_wrapper()` below for usage
|
||||||
|
local _completion_function=$1
|
||||||
|
local _completion_base=$2
|
||||||
|
if ! command -v $_completion_function; then
|
||||||
|
$_completion_base
|
||||||
|
fi
|
||||||
|
$_completion_function
|
||||||
|
}
|
||||||
|
|
||||||
|
__git_completion_wrapper() {
|
||||||
|
# Wrapper for `__git_*` completion functions
|
||||||
|
# Can be used to force loading of specialized git completions
|
||||||
|
# When defining custom commands. See below for usage examples.
|
||||||
|
__completion_wrapper $1 _git
|
||||||
|
}
|
||||||
|
|
||||||
# Runs git log with fzf with preview
|
# Runs git log with fzf with preview
|
||||||
compdef _git fgitlog=git-log
|
|
||||||
function fgitlog() {
|
function fgitlog() {
|
||||||
git log --oneline $@ | fzf --multi --preview 'git -p show --color=always {+1}' --preview-window=right,60%
|
git log --oneline $@ | fzf --multi --preview 'git -p show --color=always {+1}' --preview-window=right,60%
|
||||||
}
|
}
|
||||||
|
compdef _git fgitlog=git-log
|
||||||
|
|
||||||
git-commit-show() {
|
git-commit-show() {
|
||||||
git log --graph --color=always --format="%C(auto)%h%d %s %C(black)%C(bold)%cr" |
|
git log --graph --color=always --format="%C(auto)%h%d %s %C(black)%C(bold)%cr" |
|
||||||
|
@ -273,23 +296,28 @@ git-commit-show() {
|
||||||
{} FZF-EOF" \
|
{} FZF-EOF" \
|
||||||
--preview-window=right:60%
|
--preview-window=right:60%
|
||||||
}
|
}
|
||||||
|
compdef "__git_completion_wrapper __git_recent_commits" git-commit-show
|
||||||
|
|
||||||
compdef __git_recent_commits git-fixup
|
|
||||||
git-fixup() {
|
git-fixup() {
|
||||||
git commit --fixup=$1
|
git commit --fixup=$1
|
||||||
git -c sequence.editor=true rebase --interactive --autosquash $1^
|
git -c sequence.editor=true rebase --interactive --autosquash $1^
|
||||||
}
|
}
|
||||||
|
compdef "__git_completion_wrapper __git_recent_commits" git-fixup
|
||||||
|
|
||||||
compdef __git_branch_names git-diff-branch
|
|
||||||
git-diff-branch() {
|
git-diff-branch() {
|
||||||
git diff $@
|
git diff $@
|
||||||
}
|
}
|
||||||
|
compdef "__git_completion_wrapper __git_branch_names" git-diff-branch
|
||||||
|
|
||||||
if command -v pacman &>/dev/null ; then
|
if command -v pacman &>/dev/null ; then
|
||||||
compdef _pacman_completions_installed_packages pacbins
|
|
||||||
pacbins() {
|
pacbins() {
|
||||||
pacman -Ql $1 | sed -n -e 's/.*\/bin\///p' | tail -n +2
|
pacman -Ql $1 | sed -n -e 's/.*\/bin\///p' | tail -n +2
|
||||||
}
|
}
|
||||||
|
_pacbins(){
|
||||||
|
# fix completion
|
||||||
|
__completion_wrapper _pacman_completions_installed_packages _pacman
|
||||||
|
}
|
||||||
|
compdef _pacbins pacbins
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if command -v rustc &>/dev/null
|
if command -v rustc &>/dev/null
|
||||||
|
@ -300,7 +328,6 @@ then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if command -v fzf &>/dev/null ; then
|
if command -v fzf &>/dev/null ; then
|
||||||
compdef _fzf_complete
|
|
||||||
falias() {
|
falias() {
|
||||||
alias | fzf $@ | cut -d= -f 1
|
alias | fzf $@ | cut -d= -f 1
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user