diff --git a/.gitignore b/.gitignore index 9a82d21e..c7543d2b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ /coverage +/data/completions/ronin-exploits /doc /man/*.[0-9] /pkg diff --git a/Gemfile b/Gemfile index 4f3efd34..1b9ee34e 100644 --- a/Gemfile +++ b/Gemfile @@ -51,4 +51,6 @@ group :development do gem 'stackprof', require: false, platform: :mri gem 'rubocop', require: false, platform: :mri gem 'rubocop-ronin', '~> 0.2', require: false, platform: :mri + + gem 'command_kit-completion', '~> 0.1', require: false end diff --git a/Rakefile b/Rakefile index bcff5863..5cc28ba8 100644 --- a/Rakefile +++ b/Rakefile @@ -40,3 +40,10 @@ YARD::Rake::YardocTask.new require 'kramdown/man/task' Kramdown::Man::Task.new + +require 'command_kit/completion/task' +CommandKit::Completion::Task.new( + class_file: 'ronin/exploits/cli', + class_name: 'Ronin::Exploits::CLI', + output_file: 'data/completions/ronin-exploits' +) diff --git a/gemspec.yml b/gemspec.yml index c84cafbf..9a1397b7 100644 --- a/gemspec.yml +++ b/gemspec.yml @@ -24,6 +24,7 @@ metadata: rubygems_mfa_required: 'true' generated_files: + - data/completions/ronin-exploits - man/ronin-exploits.1 - man/ronin-exploits-irb.1 - man/ronin-exploits-list.1