aboutsummaryrefslogtreecommitdiffstats
path: root/emacs/.emacs.d/init/oni-css-mode-init.org
blob: e5531e361b12e22609e49278819ec8c2535f7e08 (plain)
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#+TITLE: CSS

scss-mode is based on css-mode, so any settings for css-mode also
automatically should work for scss-mode.

Enable electric pairing.

#+BEGIN_SRC emacs-lisp
  (add-hook 'css-mode-hook 'electric-pair-local-mode)
#+END_SRC

Enable electric indenting.

#+BEGIN_SRC emacs-lisp
  (add-hook 'css-mode-hook 'electric-indent-local-mode)
#+END_SRC

Enable company mode.

#+BEGIN_SRC emacs-lisp
  (add-hook 'css-mode-hook 'company-mode)
#+END_SRC

Enable rainbow mode to see all the color specifications (well, most)
as pretty colors.

#+BEGIN_SRC emacs-lisp
  (add-hook 'css-mode-hook 'rainbow-mode)
#+END_SRC

Add the scssc compiler's error message output to the compilation error
regexps.

#+BEGIN_SRC emacs-lisp
  (eval-when-compile (require 'compile))

  (with-eval-after-load 'compile
    (defvar oni:scss-error-regexp
      (rx (and bol
               (zero-or-more space) "on line "
               (group (one-or-more digit)) " of "
               (group (one-or-more (or word punct (syntax symbol))))
               eol)))

    (add-to-list 'compilation-error-regexp-alist
                 (list oni:scss-error-regexp 2 1 nil 2 2)))
#+END_SRC