Remove enh-ruby-mode

enh-ruby-mode's highlighter breaks when the buffer is unexpectedly
reverted. This sacrifices its superior highlighting and indentation, but
was too much trouble to maintain.
This commit is contained in:
Henrik Lissner 2020-03-11 23:20:06 -04:00
parent 4082003fd2
commit f82771980a
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
2 changed files with 19 additions and 33 deletions

View file

@ -15,61 +15,48 @@
:config :config
(setq ruby-insert-encoding-magic-comment nil) (setq ruby-insert-encoding-magic-comment nil)
(set-electric! '(ruby-mode enh-ruby-mode) :words '("else" "end" "elsif")) (set-electric! 'ruby-mode :words '("else" "end" "elsif"))
(set-repl-handler! '(ruby-mode enh-ruby-mode) #'inf-ruby) (set-repl-handler! 'ruby-mode #'inf-ruby)
(when (featurep! +lsp) (when (featurep! +lsp)
(add-hook! '(ruby-mode-local-vars-hook (add-hook 'ruby-mode-local-vars-hook #'lsp!))
enh-ruby-mode-local-vars-hook)
#'lsp!))
(after! company-dabbrev-code (after! company-dabbrev-code
(pushnew 'company-dabbrev-code-modes 'enh-ruby-mode 'ruby-mode)) (pushnew 'company-dabbrev-code-modes 'ruby-mode))
(after! inf-ruby (after! inf-ruby
;; switch to inf-ruby from compile if we detect a breakpoint has been hit ;; switch to inf-ruby from compile if we detect a breakpoint has been hit
(add-hook 'compilation-filter-hook #'inf-ruby-auto-enter)) (add-hook 'compilation-filter-hook #'inf-ruby-auto-enter))
;; so class and module pairs work ;; so class and module pairs work
(setq-hook! (ruby-mode enh-ruby-mode) sp-max-pair-length 6) (setq-hook! 'ruby-mode-hook sp-max-pair-length 6)
(map! :localleader (map! :localleader
:map (ruby-mode-map enh-ruby-mode-map) :map ruby-mode-map
"[" #'enh-ruby-toggle-block "[" #'ruby-toggle-block
"{" #'enh-ruby-toggle-block)) "{" #'ruby-toggle-block))
(use-package! enh-ruby-mode
:when (executable-find "ruby")
:after ruby-mode
:config
;; If ruby is present, `enh-ruby-mode' provides superior (semantic) syntax
;; highlighting so use it instead.
(advice-add #'ruby-mode :override #'enh-ruby-mode))
(use-package! robe (use-package! robe
:defer t :defer t
:init :init
(add-hook! 'enh-ruby-mode-hook (add-hook! 'ruby-mode-hook
(defun +ruby-init-robe-mode-maybe-h () (defun +ruby-init-robe-mode-maybe-h ()
"Start `robe-mode' if `lsp-mode' isn't active." "Start `robe-mode' if `lsp-mode' isn't active."
(unless (or (bound-and-true-p lsp-mode) (unless (or (bound-and-true-p lsp-mode)
(bound-and-true-p lsp--buffer-deferred)) (bound-and-true-p lsp--buffer-deferred))
(robe-mode +1)))) (robe-mode +1))))
:config :config
(set-repl-handler! '(ruby-mode enh-ruby-mode) #'robe-start) (set-repl-handler! 'ruby-mode #'robe-start)
(set-company-backend! '(ruby-mode enh-ruby-mode) 'company-robe 'company-dabbrev-code) (set-company-backend! 'ruby-mode 'company-robe 'company-dabbrev-code)
(set-lookup-handlers! '(ruby-mode enh-ruby-mode) (set-lookup-handlers! 'ruby-mode
:definition #'robe-jump :definition #'robe-jump
:documentation #'robe-doc) :documentation #'robe-doc)
(map! :localleader (map! :localleader
:map robe-mode-map :map robe-mode-map
"'" #'robe-start "'" #'robe-start
;; robe mode specific
"h" #'robe-doc "h" #'robe-doc
"R" #'robe-rails-refresh "R" #'robe-rails-refresh
;; inf-enh-ruby-mode
:prefix "s" :prefix "s"
"d" #'ruby-send-definition "d" #'ruby-send-definition
"D" #'ruby-send-definition-and-go "D" #'ruby-send-definition-and-go
@ -80,13 +67,13 @@
;; NOTE Must be loaded before `robe-mode' ;; NOTE Must be loaded before `robe-mode'
(use-package! yard-mode (use-package! yard-mode
:hook (ruby-mode enh-ruby-mode)) :hook ruby-mode)
(use-package! rubocop (use-package! rubocop
:hook (ruby-mode . rubocop-mode) :hook (ruby-mode . rubocop-mode)
:hook (enh-ruby-mode . rubocop-mode)
:config :config
(set-popup-rule! "^\\*RuboCop" :select t)
(map! :localleader (map! :localleader
:map rubocop-mode-map :map rubocop-mode-map
"f" #'rubocop-check-current-file "f" #'rubocop-check-current-file
@ -104,7 +91,7 @@
(setq rake-cache-file (concat doom-cache-dir "rake.cache")) (setq rake-cache-file (concat doom-cache-dir "rake.cache"))
(map! :after ruby-mode (map! :after ruby-mode
:localleader :localleader
:map (ruby-mode-map enh-ruby-mode-map) :map ruby-mode-map
:prefix "k" :prefix "k"
"k" #'rake "k" #'rake
"r" #'rake-rerun "r" #'rake-rerun
@ -116,7 +103,7 @@
:init :init
(map! :after ruby-mode (map! :after ruby-mode
:localleader :localleader
:map (ruby-mode-map enh-ruby-mode-map) :map ruby-mode-map
:prefix "b" :prefix "b"
"c" #'bundle-check "c" #'bundle-check
"C" #'bundle-console "C" #'bundle-console
@ -128,7 +115,6 @@
(use-package! chruby (use-package! chruby
:when (featurep! +chruby) :when (featurep! +chruby)
:hook (ruby-mode . chruby-use-corresponding) :hook (ruby-mode . chruby-use-corresponding)
:hook (enh-ruby-mode . chruby-use-corresponding)
:config :config
(setq rspec-use-rvm nil (setq rspec-use-rvm nil
rspec-use-chruby t)) rspec-use-chruby t))
@ -187,7 +173,7 @@
(use-package! projectile-rails (use-package! projectile-rails
:when (featurep! +rails) :when (featurep! +rails)
:hook (enh-ruby-mode . projectile-rails-mode) :hook (ruby-mode . projectile-rails-mode)
:init :init
(setq inf-ruby-console-environment "development") (setq inf-ruby-console-environment "development")
(when (featurep! :lang web) (when (featurep! :lang web)

View file

@ -2,7 +2,7 @@
;;; lang/ruby/packages.el ;;; lang/ruby/packages.el
;; Major modes ;; Major modes
(package! enh-ruby-mode :pin "732331b99a") (package! ruby-mode :built-in t)
(package! yard-mode :pin "ba74a47463") (package! yard-mode :pin "ba74a47463")
;; REPL ;; REPL