Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
oh-my-zsh
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
github
oh-my-zsh
Commits
dab09cc0
Unverified
Commit
dab09cc0
authored
May 02, 2023
by
Oleg Grigoriev
Committed by
GitHub
May 02, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(rake-fast): show task descriptions in autocomplete (#11653)
parent
693e3dcc
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
36 additions
and
3 deletions
+36
-3
rake-fast.plugin.zsh
plugins/rake-fast/rake-fast.plugin.zsh
+36
-3
No files found.
plugins/rake-fast/rake-fast.plugin.zsh
View file @
dab09cc0
# The version of the format of .rake_tasks. If the output of _rake_generate
# changes, incrementing this number will force it to regenerate
_rake_tasks_version
=
2
_rake_does_task_list_need_generating
()
{
_rake_does_task_list_need_generating
()
{
[[
!
-f
.rake_tasks
]]
||
[[
Rakefile
-nt
.rake_tasks
]]
||
{
_is_rails_app
&&
_tasks_changed
}
_rake_tasks_missing
||
_rake_tasks_version_changed
||
_rakefile_has_changes
||
{
_is_rails_app
&&
_tasks_changed
}
}
_rake_tasks_missing
()
{
[[
!
-f
.rake_tasks
]]
}
_rake_tasks_version_changed
()
{
local
-a
file_version
file_version
=
`
head
-n
1 .rake_tasks |
sed
"s/^version
\:
//"
`
if
!
[[
$file_version
=
~
'^[0-9]*$'
]]
;
then
return
true
fi
[[
$file_version
-ne
$_rake_tasks_version
]]
}
_rakefile_has_changes
()
{
[[
Rakefile
-nt
.rake_tasks
]]
}
}
_is_rails_app
()
{
_is_rails_app
()
{
...
@@ -20,7 +43,14 @@ _tasks_changed () {
...
@@ -20,7 +43,14 @@ _tasks_changed () {
}
}
_rake_generate
()
{
_rake_generate
()
{
rake
--silent
--tasks
|
cut
-d
" "
-f
2 |
sed
's/\[.*\]//g'
>
.rake_tasks
echo
"version:
$_rake_tasks_version
"
>
.rake_tasks
rake
--silent
--tasks
--all
\
|
sed
"s/^rake //"
|
sed
"s/
\:
/
\\\:
/g"
\
|
sed
"s/
\[
[^]]*
\]
//g"
\
|
sed
"s/ *# /
\:
/"
\
|
sed
"s/
\:
$/
/"
\
>>
.rake_tasks
}
}
_rake
()
{
_rake
()
{
...
@@ -29,7 +59,10 @@ _rake () {
...
@@ -29,7 +59,10 @@ _rake () {
echo
"
\n
Generating .rake_tasks..."
>
&2
echo
"
\n
Generating .rake_tasks..."
>
&2
_rake_generate
_rake_generate
fi
fi
compadd
$(
cat
.rake_tasks
)
local
-a
rake_options
rake_options
=(
"
${
(@f)
$(
cat
.rake_tasks
)}
"
)
shift
rake_options
_describe
'rake tasks'
rake_options
fi
fi
}
}
compdef _rake rake
compdef _rake rake
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment