doomemacs/modules/editor/parinfer/config.el
Johan Thoren 8262e1b552
Fix incorrect indentation.
Signed-off-by: Johan Thoren <johan@thoren.xyz>
2021-02-27 21:03:16 +01:00

51 lines
1.7 KiB
EmacsLisp

;;; editor/parinfer/config.el -*- lexical-binding: t; -*-
(use-package! parinfer
:unless (featurep! +rust)
:hook ((emacs-lisp-mode
clojure-mode
scheme-mode
lisp-mode
racket-mode
hy-mode) . parinfer-mode)
:init
(setq parinfer-extensions
'(defaults
pretty-parens
smart-tab
smart-yank))
(when (featurep! :editor evil +everywhere)
(push 'evil parinfer-extensions))
:config
(map! :map parinfer-mode-map
"\"" nil ; smartparens handles this
:i "<tab>" #'parinfer-smart-tab:dwim-right-or-complete
:i "<backtab>" #'parinfer-smart-tab:dwim-left
:localleader
"m" #'parinfer-toggle-mode))
(use-package! parinfer-rust-mode
:when (featurep! +rust)
:when (bound-and-true-p module-file-suffix)
:hook ((emacs-lisp-mode
clojure-mode
scheme-mode
lisp-mode
racket-mode
hy-mode) . parinfer-rust-mode)
:init
(setq! parinfer-rust-library
(concat user-emacs-directory
".local/etc/parinfer-rust/"
(cond ((eq system-type 'darwin) "parinfer-rust-darwin.so")
((eq system-type 'gnu/linux) "parinfer-rust-linux.so")
((eq system-type 'windows-nt) "parinfer-rust-windows.dll")
((eq system-type 'berkeley-unix "libparinfer_rust.so"))))
parinfer-rust-auto-download
(if (eq system-type 'berkeley-unix)
nil
t))
:config
(map! :map parinfer-rust-mode-map
:localleader
"m" #'parinfer-rust-switch-mode
"M" #'parinfer-rust-toggle-disable))