diff --git a/modules/lang/ruby/config.el b/modules/lang/ruby/config.el index 2e514fe15..5abe54cad 100644 --- a/modules/lang/ruby/config.el +++ b/modules/lang/ruby/config.el @@ -31,8 +31,13 @@ (def-package! robe - :unless (featurep! +lsp) - :hook (enh-ruby-mode . robe-mode) + :defer t + :init + (defun +ruby|init-robe-mode-maybe () + "Start `robe-mode' if `lsp-mode' isn't active." + (unless (bound-and-true-p lsp-mode) + (robe-mode +1))) + (add-hook 'enh-ruby-mode-hook #'+ruby|init-robe-mode-maybe) :config (set-repl-handler! 'enh-ruby-mode #'robe-start) (set-company-backend! 'enh-ruby-mode 'company-robe) diff --git a/modules/lang/ruby/packages.el b/modules/lang/ruby/packages.el index 90f1c33d2..d7708caef 100644 --- a/modules/lang/ruby/packages.el +++ b/modules/lang/ruby/packages.el @@ -12,8 +12,7 @@ ;; Programming environment (package! rubocop) -(unless (featurep! +lsp) - (package! robe)) +(package! robe) ;; Project tools (package! bundler)