Class: RosettAi::Thor::Tasks::Completion
- Inherits:
-
Thor
- Object
- Thor
- RosettAi::Thor::Tasks::Completion
- Defined in:
- lib/rosett_ai/thor/tasks/completion.rb
Overview
Thor subcommand for generating shell completion scripts.
Generates bash, zsh, and fish completion scripts from the Thor command registry. Scripts are output to stdout for piping or can be installed to the standard completion directory.
Constant Summary collapse
- INSTALL_PATHS =
{ 'bash' => '/usr/share/bash-completion/completions/rai', 'zsh' => '/usr/share/zsh/vendor-completions/_rai', 'fish' => "#{Dir.home}/.config/fish/completions/raictl.fish" }.freeze
Instance Method Summary collapse
Instance Method Details
#bash ⇒ Object
32 33 34 |
# File 'lib/rosett_ai/thor/tasks/completion.rb', line 32 def bash output_completion('bash') end |
#fish ⇒ Object
56 57 58 |
# File 'lib/rosett_ai/thor/tasks/completion.rb', line 56 def fish output_completion('fish') end |
#install ⇒ Object
81 82 83 84 85 86 87 88 |
# File 'lib/rosett_ai/thor/tasks/completion.rb', line 81 def install shell = detect_shell generator = RosettAi::Completion::Generator.new script = generator.generate(shell) path = INSTALL_PATHS.fetch(shell) install_script(script, path, shell) end |
#zsh ⇒ Object
44 45 46 |
# File 'lib/rosett_ai/thor/tasks/completion.rb', line 44 def zsh output_completion('zsh') end |