Class: RubyLsp::Doclinks::Addon
- Inherits:
-
Addon
- Object
- Addon
- RubyLsp::Doclinks::Addon
- Defined in:
- lib/ruby_lsp/doclinks/addon.rb
Instance Method Summary collapse
- #activate(global_state, message_queue) ⇒ Object
- #create_hover_listener(response_builder, node_context, dispatcher) ⇒ Object
- #deactivate ⇒ Object
-
#initialize ⇒ Addon
constructor
A new instance of Addon.
- #name ⇒ Object
- #version ⇒ Object
Constructor Details
#initialize ⇒ Addon
Returns a new instance of Addon.
12 13 14 15 16 17 18 19 20 21 |
# File 'lib/ruby_lsp/doclinks/addon.rb', line 12 def initialize super @settings = { rubydoc_url: "https://www.rubydoc.info/gems/%{gem_name}/%{version}/%{constant}#%{method}", yard_url: "http://localhost:8808/docs/%{gem_name}/%{version}/%{constant}#%{method}", custom_url: "Add a custom Url for %{gem_name} %{version} %{constant} %{method}", doc_source: :rubydoc # :rubydoc, :yard or :custom } end |
Instance Method Details
#activate(global_state, message_queue) ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'lib/ruby_lsp/doclinks/addon.rb', line 23 def activate(global_state, ) @global_state = global_state @message_queue = $stderr.puts "Activating '#{name}' LSP addon v#{RubyLsp::Doclinks::VERSION}" addon_settings = @global_state.settings_for_addon(name) $stderr.puts "#{name} addon settings: #{addon_settings.inspect}" @settings.merge!(addon_settings) if addon_settings end |
#create_hover_listener(response_builder, node_context, dispatcher) ⇒ Object
45 46 47 |
# File 'lib/ruby_lsp/doclinks/addon.rb', line 45 def create_hover_listener(response_builder, node_context, dispatcher) Hover.new(@settings, response_builder, dispatcher) end |
#deactivate ⇒ Object
33 34 35 |
# File 'lib/ruby_lsp/doclinks/addon.rb', line 33 def deactivate # No cleanup needed end |
#name ⇒ Object
37 38 39 |
# File 'lib/ruby_lsp/doclinks/addon.rb', line 37 def name "Doclinks" end |