Module: Mui

Defined in:
lib/mui/lsp/plugin.rb,
lib/mui/lsp.rb,
lib/mui/lsp/client.rb,
lib/mui/lsp/plugin.rb,
lib/mui/lsp/manager.rb,
lib/mui/lsp/version.rb,
lib/mui/lsp/json_rpc_io.rb,
lib/mui/lsp/handlers/base.rb,
lib/mui/lsp/server_config.rb,
lib/mui/lsp/handlers/hover.rb,
lib/mui/lsp/protocol/range.rb,
lib/mui/lsp/request_manager.rb,
lib/mui/lsp/protocol/location.rb,
lib/mui/lsp/protocol/position.rb,
lib/mui/lsp/text_document_sync.rb,
lib/mui/lsp/handlers/completion.rb,
lib/mui/lsp/handlers/definition.rb,
lib/mui/lsp/handlers/references.rb,
lib/mui/lsp/protocol/diagnostic.rb,
lib/mui/lsp/handlers/diagnostics.rb,
lib/mui/lsp/highlighters/diagnostic_highlighter.rb

Overview

DSL for .muirc configuration This replaces Mui.lsp stub method from mui core with the real implementation

Defined Under Namespace

Modules: Lsp

Class Method Summary collapse

Class Method Details

.lsp(&block) ⇒ Object



569
570
571
572
573
574
575
576
577
578
# File 'lib/mui/lsp/plugin.rb', line 569

def lsp(&block)
  # Migrate from LspConfigStub to real ConfigDsl on first access after gem load
  if @lsp_config.is_a?(LspConfigStub)
    existing_configs = @lsp_config.server_configs
    @lsp_config = Lsp::ConfigDsl.new(existing_configs)
  end
  @lsp_config ||= Lsp::ConfigDsl.new
  @lsp_config.instance_eval(&block) if block
  @lsp_config
end

.lsp_server_configsObject



580
581
582
583
584
# File 'lib/mui/lsp/plugin.rb', line 580

def lsp_server_configs
  # Ensure migration happens
  lsp unless @lsp_config.is_a?(Lsp::ConfigDsl)
  @lsp_config&.server_configs || []
end