From 8728d5da9e235bdfa76a9f89976a1e51bd2e84b7 Mon Sep 17 00:00:00 2001 From: Jim Myhrberg Date: Mon, 12 Apr 2021 10:05:22 +0100 Subject: [PATCH] fix(lang): control Ruby formatting method on a per-project basis Allow individual projects to override the default lsp-mode based formatting method by setting rubocopfmt-on-save-use-lsp-format-buffer as a dir-local variable. This is useful for projects which require older versions of Ruby where the latest Solargraph version is not supported, and formatting is better handled by rubocop directly. --- modules/languages/siren-ruby.el | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/modules/languages/siren-ruby.el b/modules/languages/siren-ruby.el index df41654..e859c62 100644 --- a/modules/languages/siren-ruby.el +++ b/modules/languages/siren-ruby.el @@ -97,7 +97,6 @@ '(lsp-solargraph-use-bundler . t)) (defun siren-lsp-ruby-mode-setup () - (lsp-format-buffer-on-save-mode t) (lsp-deferred))) (use-package rufo @@ -163,6 +162,9 @@ ("C-c . D" . rubocop-autocorrect-directory))) (use-package rubocopfmt + :hook + (ruby-mode . rubocopfmt-mode) + :bind (:map ruby-mode-map ("C-c C-f" . rubocopfmt)) @@ -170,6 +172,7 @@ (rubocopfmt-include-unsafe-cops t) (rubocopfmt-show-errors 'echo) (rubocopfmt-use-bundler-when-possible t) + (rubocopfmt-on-save-use-lsp-format-buffer t) :init (add-to-list 'safe-local-variable-values