-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathsetup-enh-ruby-mode.el
32 lines (28 loc) · 1.44 KB
/
setup-enh-ruby-mode.el
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
;;; enh-ruby-mode - better Ruby semantic parsing
;;; https://github.com/zenspider/enhanced-ruby-mode
(require-package 'enh-ruby-mode)
(autoload 'enh-ruby-mode "enh-ruby-mode" "Major mode for ruby files" t)
(dolist (spec '(("\\.rb$" . enh-ruby-mode)
("[vV]agrantfile$" . enh-ruby-mode)
("[gG]emfile$" . enh-ruby-mode)
("[pP]uppetfile$" . enh-ruby-mode)
("\\.rake$" . enh-ruby-mode)
("\\.rabl$" . enh-ruby-mode)
("[cC]apfile$" . enh-ruby-mode)
("\\.gemspec$" . enh-ruby-mode)
("\\.builder$" . enh-ruby-mode)))
(add-to-list 'auto-mode-alist spec))
(setq enh-ruby-use-encoding-map nil
;; don't deep indent arrays and hashes
enh-ruby-deep-indent-paren nil)
(defun bw/enh-ruby-mode-faces ()
"Lazily set faces"
(set-face-attribute 'erm-syn-errline nil :box nil)
(set-face-attribute 'erm-syn-warnline nil :box nil)
(set-face-attribute 'enh-ruby-op-face nil :foreground nil :inherit 'default)
(set-face-attribute 'enh-ruby-string-delimiter-face nil :foreground "#dc322f" :background nil)
(set-face-attribute 'enh-ruby-regexp-delimiter-face nil :foreground "#dc322f" :background nil)
(set-face-attribute 'enh-ruby-heredoc-delimiter-face nil :foreground "#dc322f" :background nil))
(add-hook 'enh-ruby-mode-hook 'bw/turn-on-subword-mode)
(add-hook 'enh-ruby-mode-hook 'bw/enh-ruby-mode-faces)
(provide 'setup-enh-ruby-mode)