From 68682ac01269f2ba55b51f368901cf6735d7c24a Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Mon, 11 Mar 2024 03:55:04 -0400 Subject: [PATCH] fix(ruby): ruby REPL w/ robe set-repl-handler! handlers have to return a buffer. Close: #7450 Co-authored-by: Zetagon --- modules/lang/ruby/autoload.el | 6 ++++++ modules/lang/ruby/config.el | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/lang/ruby/autoload.el b/modules/lang/ruby/autoload.el index 70f3e68ff..47e5b1f73 100644 --- a/modules/lang/ruby/autoload.el +++ b/modules/lang/ruby/autoload.el @@ -13,3 +13,9 @@ open." (when (processp process) (kill-process (get-buffer-process inf-buffer)) (kill-buffer inf-buffer))))))) + +;;;###autoload +(defun +ruby-robe-repl-handler () + "Start Robe and open a REPL (for `set-repl-handler!')." + (robe-start) + (robe-inf-buffer)) diff --git a/modules/lang/ruby/config.el b/modules/lang/ruby/config.el index 61f2d46d1..31cc15c4b 100644 --- a/modules/lang/ruby/config.el +++ b/modules/lang/ruby/config.el @@ -48,7 +48,7 @@ (bound-and-true-p lsp--buffer-deferred) (robe-mode +1)))) :config - (set-repl-handler! 'ruby-mode #'robe-start) + (set-repl-handler! 'ruby-mode #'+ruby-robe-repl-handler) (set-company-backend! 'ruby-mode 'company-robe 'company-dabbrev-code) (set-lookup-handlers! 'ruby-mode :definition #'robe-jump