parent
333640c21a
commit
831b01fd8e
|
@ -9,11 +9,27 @@
|
|||
;;
|
||||
;;; License: GPLv3
|
||||
|
||||
(defun spacemas//elixir-looking-back-special-p (expr)
|
||||
(save-excursion
|
||||
(when (or (looking-back " ")
|
||||
(looking-back "-")) (backward-char))
|
||||
(looking-back expr)))
|
||||
|
||||
(defun spacemacs//elixir-point-after-fn-p (id action context)
|
||||
(save-excursion
|
||||
(when (looking-back id) (backward-char))
|
||||
(looking-back "fn")))
|
||||
|
||||
(defun spacemacs//elixir-do-end-close-action (id action context)
|
||||
(when (eq action 'insert)
|
||||
(newline-and-indent)
|
||||
(forward-line -1)
|
||||
(indent-according-to-mode)))
|
||||
(cond ((spacemas//elixir-looking-back-special-p id)
|
||||
(insert " ") (backward-char))
|
||||
((looking-back "(")
|
||||
(insert ") ") (backward-char) (backward-char))
|
||||
(t
|
||||
(newline-and-indent)
|
||||
(forward-line -1)
|
||||
(indent-according-to-mode)))))
|
||||
|
||||
(defun spacemacs//elixir-enable-compilation-checking ()
|
||||
"Enable compile checking if `elixir-enable-compilation-checking' is non nil."
|
||||
|
|
|
@ -160,8 +160,11 @@
|
|||
(progn
|
||||
(sp-with-modes '(elixir-mode)
|
||||
(sp-local-pair
|
||||
"->" "end"
|
||||
:when '(("RET"))
|
||||
"(" ")"
|
||||
:unless '(:add spacemacs//elixir-point-after-fn-p))
|
||||
(sp-local-pair
|
||||
"fn" "end"
|
||||
:when '(("SPC" "RET" "-" "("))
|
||||
:post-handlers '(:add spacemacs//elixir-do-end-close-action)
|
||||
:actions '(insert)))
|
||||
(sp-with-modes '(elixir-mode)
|
||||
|
|
Loading…
Reference in a new issue