mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2025-12-26 02:12:33 +01:00
Fix cap completion, via hpoydar
This commit is contained in:
parent
8113ebd142
commit
def5cf39b4
3 changed files with 45 additions and 42 deletions
24
lib/cap.zsh
Normal file
24
lib/cap.zsh
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
# May need to trash `.zcompdump` and regenerate it
|
||||||
|
# with `compinit` for this to work
|
||||||
|
|
||||||
|
_cap_does_task_list_need_generating () {
|
||||||
|
if [ ! -f .cap_tasks~ ]; then return 0;
|
||||||
|
else
|
||||||
|
accurate=$(stat -f%m .cap_tasks~)
|
||||||
|
changed=$(stat -f%m config/deploy.rb)
|
||||||
|
return $(expr $accurate '>=' $changed)
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_cap () {
|
||||||
|
if [ -f capfile ]; then
|
||||||
|
if _cap_does_task_list_need_generating; then
|
||||||
|
echo "\nGenerating .cap_tasks~..." > /dev/stderr
|
||||||
|
cap -vT | awk 'FB != 1 {if ($0 ~ /^$/){FB=1}else{print $2}}' > .cap_tasks~
|
||||||
|
fi
|
||||||
|
compadd `cat .cap_tasks~`
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
compctl -K _cap cap
|
||||||
|
|
||||||
21
lib/rake.zsh
Normal file
21
lib/rake.zsh
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
_rake_does_task_list_need_generating () {
|
||||||
|
if [ ! -f .rake_tasks~ ]; then return 0;
|
||||||
|
else
|
||||||
|
accurate=$(stat -f%m .rake_tasks~)
|
||||||
|
changed=$(stat -f%m Rakefile)
|
||||||
|
return $(expr $accurate '>=' $changed)
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_rake () {
|
||||||
|
if [ -f Rakefile ]; then
|
||||||
|
if _rake_does_task_list_need_generating; then
|
||||||
|
echo "\nGenerating .rake_tasks~..." > /dev/stderr
|
||||||
|
rake --silent --tasks | cut -d " " -f 2 > .rake_tasks~
|
||||||
|
fi
|
||||||
|
compadd `cat .rake_tasks~`
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
compctl -K _rake rake
|
||||||
|
|
||||||
|
|
@ -1,42 +0,0 @@
|
||||||
_rake_does_task_list_need_generating () {
|
|
||||||
if [ ! -f .rake_tasks~ ]; then return 0;
|
|
||||||
else
|
|
||||||
accurate=$(stat -f%m .rake_tasks~)
|
|
||||||
changed=$(stat -f%m Rakefile)
|
|
||||||
return $(expr $accurate '>=' $changed)
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
_rake () {
|
|
||||||
if [ -f Rakefile ]; then
|
|
||||||
if _rake_does_task_list_need_generating; then
|
|
||||||
echo "\nGenerating .rake_tasks~..." > /dev/stderr
|
|
||||||
rake --silent --tasks | cut -d " " -f 2 > .rake_tasks~
|
|
||||||
fi
|
|
||||||
compadd `cat .rake_tasks~`
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
compctl -K _rake rake
|
|
||||||
|
|
||||||
function _cap_does_task_list_need_generating () {
|
|
||||||
if [ ! -f .cap_tasks~ ]; then return 0;
|
|
||||||
else
|
|
||||||
accurate=$(stat -f%m .cap_tasks~)
|
|
||||||
changed=$(stat -f%m config/deploy.rb)
|
|
||||||
return $(expr $accurate '>=' $changed)
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
function _cap () {
|
|
||||||
if [ -f config/deploy.rb ]; then
|
|
||||||
if _cap_does_task_list_need_generating; then
|
|
||||||
echo "\nGenerating .cap_tasks~..." > /dev/stderr
|
|
||||||
cap show_tasks -q | cut -d " " -f 1 | sed -e '/^ *$/D' -e '1,2D'
|
|
||||||
> .cap_tasks~
|
|
||||||
fi
|
|
||||||
compadd `cat .cap_tasks~`
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
compctl -K _cap cap
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue