123456789101112131415161718192021222324252627282930 |
- _mix_refresh () {
- if [ -f .mix_tasks ]; then
- rm .mix_tasks
- fi
- echo "Generating .mix_tasks..." > /dev/stderr
- _mix_generate
- cat .mix_tasks
- }
- _mix_does_task_list_need_generating () {
- [ ! -f .mix_tasks ];
- }
- _mix_generate () {
- mix help | grep '^mix [^ ]' | sed -E "s/mix ([^ ]*) *# (.*)/\1:\2/" > .mix_tasks
- }
- _mix () {
- if [ -f mix.exs ]; then
- if _mix_does_task_list_need_generating; then
- echo "\nGenerating .mix_tasks..." > /dev/stderr
- _mix_generate
- fi
- local tasks=(${(f)"$(cat .mix_tasks)"})
- _describe 'tasks' tasks
- fi
- }
- compdef _mix mix
- alias mix_refresh='_mix_refresh'
|