aboutsummaryrefslogtreecommitdiff
path: root/.rake_completion
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <mikisabate@gmail.com>2025-07-08 23:21:34 +0200
committerMiquel Sabaté Solà <mikisabate@gmail.com>2025-07-08 23:21:34 +0200
commit0ee7a0b129facc85063a042d685613cd4f0a1d2e (patch)
treeb1628cde28c2d38f83b14c634340eeadd83cbf0d /.rake_completion
parent8fdddf66ed136f1bbd8b9dcc9b9dd62fee2f9a6a (diff)
downloaddotfiles-0ee7a0b129facc85063a042d685613cd4f0a1d2e.tar.gz
dotfiles-0ee7a0b129facc85063a042d685613cd4f0a1d2e.zip
Remove files which are no longer needed
Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
Diffstat (limited to '.rake_completion')
-rwxr-xr-x.rake_completion69
1 files changed, 0 insertions, 69 deletions
diff --git a/.rake_completion b/.rake_completion
deleted file mode 100755
index a142dc7..0000000
--- a/.rake_completion
+++ /dev/null
@@ -1,69 +0,0 @@
-#!/usr/bin/env ruby
-
-# to install, add the following line to your .bash_profile or .bashrc
-# complete -C path/to/rake_completion -o default rake
-
-# Rake completion will return matching rake tasks given typed text. This way
-# you can auto-complete tasks as you are typing them by hitting [tab] or [tab][tab]
-# This also caches the rake tasks for optimium speed
-class RakeCompletion
- CACHE_FILE_NAME = '.rake_tasks'
-
- def initialize(command)
- @command = command
- end
-
- def matches
- exit 0 if rakefile.nil?
- matching_tasks.map do |task|
- task.sub(typed_before_colon, '')
- end
- end
-
- private
-
- def typed
- @command[/\s(.+?)$/, 1] || ''
- end
-
- def typed_before_colon
- typed[/.+\:/] || ''
- end
-
- def matching_tasks
- all_tasks.select do |task|
- task[0, typed.length] == typed
- end
- end
-
- def all_tasks
- cache_current? ? tasks_from_cache : generate_tasks
- end
-
- def cache_current?
- File.exist?(cache_file) && File.mtime(cache_file) >= File.mtime(rakefile)
- end
-
- def rakefile
- ['rakefile', 'Rakefile', 'rakefile.rb', 'Rakefile.rb'].detect do |file|
- File.file? File.join(Dir.pwd, file)
- end
- end
-
- def cache_file
- File.join(Dir.pwd, CACHE_FILE_NAME)
- end
-
- def tasks_from_cache
- IO.read(cache_file).split
- end
-
- def generate_tasks
- tasks = `rake --tasks`.split("\n")[1..-1].collect {|line| line.split[1]}
- File.open(cache_file, 'w') { |f| f.write tasks.join("\n") }
- tasks
- end
-end
-
-puts RakeCompletion.new(ENV["COMP_LINE"]).matches
-exit 0