]> code.delx.au - dotemacs/blobdiff - init.el
diminish more minor modes
[dotemacs] / init.el
diff --git a/init.el b/init.el
index 23d4a92a37d8095d36bb8f51e5489d4f57de2d7e..ceaa5191d8952f1e13a11472b3a0b4b9d96fa3bc 100644 (file)
--- a/init.el
+++ b/init.el
@@ -1,12 +1,29 @@
 ;;; -*- lexical-binding: t -*-
 
-(add-to-list 'load-path "~/.emacs.d/lisp/")
+(require 'seq)
 
-(dolist (name (directory-files "~/.emacs.d/packages/"))
-  (let ((dirname (concat "~/.emacs.d/packages/" name)))
-    (if (not (equal "." (substring name 0 1)))
-        (if (file-accessible-directory-p dirname)
-            (add-to-list 'load-path dirname)))))
+(defvar my/original-load-path load-path)
+
+(defun my/add-to-load-path (dirname)
+  (and (file-accessible-directory-p dirname)
+       (seq-filter (lambda (file)
+                     (string-match-p "\\.el$" file))
+                   (directory-files dirname))
+       (add-to-list 'load-path dirname)))
+
+(defun my/setup-load-path ()
+  (setq load-path my/original-load-path)
+
+  (my/add-to-load-path "~/.emacs.d/lisp")
+
+  (dolist (dirname (directory-files "~/.emacs.d/packages" 'full "^[^\\.]"))
+    (my/add-to-load-path dirname)
+    (my/add-to-load-path (concat dirname "/lisp")))
+
+  (message "Set load-path: %S" load-path))
+
+
+(my/setup-load-path)
 
 (load-library "my-backups")
 (load-library "my-completion")