From eb9fa90adf5f99afbdf75e2a731574790e50926b Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Wed, 26 Sep 2018 10:42:09 -0400 Subject: [PATCH] editor/parinfer: fix void-function evil-define-key errors Parinfer uses `evil-define-key' without loading evil. This means that if evil is installed *after* parinfer, parinfer will throw up void-function errors, because evil-define-key (a macro) wasn't expanded at compile-time. So we make extra sure evil is installed before parinfer (or at least, make sure evil-define-key is autoloaded at install time, in case evil was installed in another session). --- modules/editor/parinfer/packages.el | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/modules/editor/parinfer/packages.el b/modules/editor/parinfer/packages.el index 56af803d7..13875d6a6 100644 --- a/modules/editor/parinfer/packages.el +++ b/modules/editor/parinfer/packages.el @@ -1,4 +1,14 @@ ;; -*- no-byte-compile: t; -*- ;;; editor/parinfer/packages.el +(when (featurep! :feature evil) + ;; Parinfer uses `evil-define-key' without loading evil, so if evil is + ;; installed *after* parinfer, parinfer will throw up void-function errors. + ;; because evil-define-key (a macro) wasn't expanded at compile-time. So we + ;; make sure evil is installed before parinfer... + (package! evil) + ;; ...and that it can see `evil-define-key' if evil was installed in a + ;; separate session: + (autoload 'evil-define-key "evil-core" nil nil 'macro)) + (package! parinfer)