This replaces the older pattern :toggle (configuration-layer/package-usedp ..) This implementation ensures that :disabled-for honors dependent packages, i.e. if package a depends on package b, which is owned by layer c, and layer c is disabled for layer d, then neither package a nor b will be configured for layer d. Previously, this was only true for package a, but not b. This commit also fixes: - configuration-layer/describe-package now shows which post-init and pre-init functions are disabled, if any - Does not recreate all layer objects unconditionally when calling configuration-layer/discover-layers. Previously, this led to all layers being recreated after e.g. `SPC h SPC`, without any of the dotfile information. Since this information is now necessary for configuration-layer/describe-package, it’s important that we don’t clear the indexed layers when invoking this function.
42 lines
1.3 KiB
EmacsLisp
42 lines
1.3 KiB
EmacsLisp
;; see conditional package inclusion
|
|
(setq dash-packages
|
|
'(
|
|
(dash-at-point :toggle (spacemacs/system-is-mac))
|
|
(helm-dash :depends helm)
|
|
(counsel-dash :depends ivy)
|
|
(zeal-at-point :toggle (or (spacemacs/system-is-linux)
|
|
(spacemacs/system-is-mswindows)))))
|
|
|
|
(defun dash/init-helm-dash ()
|
|
(use-package helm-dash
|
|
:defer t
|
|
:init (spacemacs/set-leader-keys
|
|
"dh" 'helm-dash-at-point
|
|
"dH" 'helm-dash)
|
|
:config (dash//activate-package-docsets helm-dash-docset-newpath)))
|
|
|
|
(defun dash/init-counsel-dash ()
|
|
(use-package counsel-dash
|
|
:defer t
|
|
:init (spacemacs/set-leader-keys
|
|
"dh" 'counsel-dash-at-point
|
|
"dH" 'counsel-dash)
|
|
:config (dash//activate-package-docsets helm-dash-docset-newpath)))
|
|
|
|
(defun dash/init-dash-at-point ()
|
|
(use-package dash-at-point
|
|
:defer t
|
|
:init (spacemacs/set-leader-keys
|
|
"dd" 'dash-at-point
|
|
"dD" 'dash-at-point-with-docset)))
|
|
|
|
(defun dash/init-zeal-at-point ()
|
|
(use-package zeal-at-point
|
|
:defer t
|
|
:init (spacemacs/set-leader-keys
|
|
"dd" 'zeal-at-point
|
|
"dD" 'zeal-at-point-set-docset)
|
|
:config
|
|
;; This lets users seach in multiple docsets
|
|
(push '(web-mode . "html,css,javascript") zeal-at-point-mode-alist)))
|