spacemacs/layers/+tools/dash/packages.el
2016-07-05 00:23:16 -04:00

61 lines
1.7 KiB
EmacsLisp

;; see conditional package inclusion
(setq dash-packages
'(
(helm-dash :toggle (configuration-layer/package-usedp 'helm))
(counsel-dash :toggle (configuration-layer/package-usedp 'ivy))
))
(cond
((spacemacs/system-is-mac)
(push 'dash-at-point dash-packages))
((or (spacemacs/system-is-linux)
(spacemacs/system-is-mswindows))
(push 'zeal-at-point dash-packages)))
(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)
(defun counsel-dash-at-point ()
"Counsel dash with selected point"
(interactive)
(counsel-dash
(if (use-region-p)
(buffer-substring-no-properties (region-beginning) (region-end))
(substring-no-properties (or (thing-at-point 'symbol) "")))))
:config
(dash//activate-package-docsets helm-dash-docset-newpath)))
(defun dash/init-dash-at-point ()
(use-package dash-at-point
:defer t
:init
(progn
(spacemacs/set-leader-keys "dd" 'dash-at-point)
(spacemacs/set-leader-keys "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)
))