Skip to content

Commit 73b713a

Browse files
author
Bozhidar Batsov
committed
Don't use dash.el during package init
1 parent cd2781f commit 73b713a

File tree

5 files changed

+22
-943
lines changed

5 files changed

+22
-943
lines changed

core/prelude-core.el

+1
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
;;; Code:
3434

3535
(require 'thingatpt)
36+
(require 'dash)
3637

3738
(defun prelude-open-with ()
3839
"Open visited file in external program."

core/prelude-packages.el

+21-13
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
;; Boston, MA 02110-1301, USA.
3333

3434
;;; Code:
35+
(require 'cl-lib)
3536
(require 'package)
3637
(add-to-list 'package-archives
3738
'("melpa" . "http://melpa.milkbox.net/packages/") t)
@@ -40,7 +41,7 @@
4041
(package-initialize)
4142

4243
(defvar prelude-packages
43-
'(ace-jump-mode ack-and-a-half diminish elisp-slime-nav
44+
'(ace-jump-mode ack-and-a-half dash diminish elisp-slime-nav
4445
expand-region flycheck gist
4546
git-commit-mode gitconfig-mode gitignore-mode
4647
guru-mode helm helm-projectile
@@ -50,22 +51,25 @@
5051
"A list of packages to ensure are installed at launch.")
5152

5253
(defun prelude-packages-installed-p ()
53-
(-all? #'package-installed-p prelude-packages))
54+
"Check if all packages in `prelude-packages' are installed."
55+
(cl-every #'package-installed-p prelude-packages))
5456

5557
(defun prelude-install-packages ()
58+
"Install all packages listed in `prelude-packages'."
5659
(unless (prelude-packages-installed-p)
5760
;; check for new packages (package versions)
5861
(message "%s" "Emacs Prelude is now refreshing its package database...")
5962
(package-refresh-contents)
6063
(message "%s" " done.")
6164
;; install the missing packages
62-
(-each
63-
(-reject #'package-installed-p prelude-packages)
64-
#'package-install)))
65+
(mapc #'package-install
66+
(cl-remove-if #'package-installed-p prelude-packages))))
6567

6668
(prelude-install-packages)
6769

6870
(defmacro prelude-auto-install (extension package mode)
71+
"When file with EXTENSION is opened triggers auto-install of PACKAGE.
72+
PACKAGE is installed only if not already present. The file is opened in MODE."
6973
`(add-to-list 'auto-mode-alist
7074
`(,extension . (lambda ()
7175
(unless (package-installed-p ',package)
@@ -99,16 +103,20 @@
99103
(add-to-list 'auto-mode-alist '("\\.markdown\\'" . markdown-mode))
100104
(add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode)))
101105

102-
(-each prelude-auto-install-alist
103-
(lambda (entry)
104-
(let ((extension (car entry))
105-
(package (cadr entry))
106-
(mode (cadr (cdr entry))))
107-
(unless (package-installed-p package)
108-
(prelude-auto-install extension package mode)))))
106+
;; build auto-install mappings
107+
(mapc
108+
(lambda (entry)
109+
(let ((extension (car entry))
110+
(package (cadr entry))
111+
(mode (cadr (cdr entry))))
112+
(unless (package-installed-p package)
113+
(prelude-auto-install extension package mode))))
114+
prelude-auto-install-alist)
109115

110116
(defun prelude-ensure-module-deps (packages)
111-
(-each (-remove #'package-installed-p packages) #'package-install))
117+
"Ensure PACKAGES are installed.
118+
Missing packages are installed automatically."
119+
(mapc #'package-install (cl-remove-if #'package-installed-p packages)))
112120

113121
(provide 'prelude-packages)
114122
;;; prelude-packages.el ends here

init.el

-2
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,6 @@ by Prelude.")
7676
(add-to-list 'load-path prelude-vendor-dir)
7777
(prelude-add-subfolders-to-load-path prelude-vendor-dir)
7878

79-
(require 'dash)
80-
8179
;; the core stuff
8280
(require 'prelude-packages)
8381
(require 'prelude-ui)

vendor/.gitkeep

Whitespace-only changes.

0 commit comments

Comments
 (0)