aboutsummaryrefslogtreecommitdiff
path: root/.config/emacs
diff options
context:
space:
mode:
authorJack Jamison <jjamison@litecoms.com>2026-07-31 09:02:54 -0400
committerJack Jamison <jjamison@litecoms.com>2026-07-31 09:02:54 -0400
commit9b2af69634fb028b0072048bbadf016c35c453a7 (patch)
tree2f0a0976a2446d2551e05b81738937ef5e731e59 /.config/emacs
parentc1229075fbed30c7dcffc84e7ca11c2191dda11b (diff)
fix up to make init work and no littering AT ALL
Diffstat (limited to '.config/emacs')
-rw-r--r--.config/emacs/.gitignore3
-rw-r--r--.config/emacs/completion-at-point.el28
-rw-r--r--.config/emacs/early-init.el35
-rw-r--r--.config/emacs/init.el29
-rw-r--r--.config/emacs/minibuffer.el2
-rw-r--r--.config/emacs/misc.el5
6 files changed, 63 insertions, 39 deletions
diff --git a/.config/emacs/.gitignore b/.config/emacs/.gitignore
index d6ef665..5f06482 100644
--- a/.config/emacs/.gitignore
+++ b/.config/emacs/.gitignore
@@ -1,3 +1,6 @@
+/junk/
+
+# just in case, but they should all be in junk now
/var/
/etc/
/elpa/
diff --git a/.config/emacs/completion-at-point.el b/.config/emacs/completion-at-point.el
index a563e99..9793069 100644
--- a/.config/emacs/completion-at-point.el
+++ b/.config/emacs/completion-at-point.el
@@ -1,17 +1,17 @@
-;; (use-package corfu
-;; :ensure t
-;; :hook (after-init . global-corfu-mode)
-;; :bind (:map corfu-map ("<tab>" . corfu-complete))
-;; :config
-;; (setq tab-always-indent 'complete)
-;; (setq corfu-preview-current nil)
-;; (setq corfu-min-width 20)
-;; (setq corfu-popupinfo-delay '(1.25 . 0.5))
-;; (corfu-popupinfo-mode 1)
-;; ;; Sort by input history (no need to modify `corfu-sort-function').
-;; (with-eval-after-load 'savehist
-;; (corfu-history-mode 1)
-;; (add-to-list 'savehist-additional-variables 'corfu-history)))
+(use-package corfu
+ :ensure t
+ :hook (after-init . global-corfu-mode)
+ :bind (:map corfu-map ("<tab>" . corfu-complete))
+ :config
+ (setq tab-always-indent 'complete)
+ (setq corfu-preview-current nil)
+ (setq corfu-min-width 20)
+ (setq corfu-popupinfo-delay '(1.25 . 0.5))
+ (corfu-popupinfo-mode 1)
+ ;; Sort by input history (no need to modify `corfu-sort-function').
+ (with-eval-after-load 'savehist
+ (corfu-history-mode 1)
+ (add-to-list 'savehist-additional-variables 'corfu-history)))
(use-package completion-preview
:diminish
diff --git a/.config/emacs/early-init.el b/.config/emacs/early-init.el
index dd27ef2..13f3b5d 100644
--- a/.config/emacs/early-init.el
+++ b/.config/emacs/early-init.el
@@ -1,3 +1,38 @@
+;; add my lisp directory and its subdirectories to the load path
+(add-to-list 'load-path (locate-user-emacs-file "lisp"))
+
+;; stop garbage files
+(eval-and-compile ; ensure values don't differ at compile time.
+ (setq no-littering-etc-directory
+ (expand-file-name "junk/config/" user-emacs-directory))
+ (setq no-littering-var-directory
+ (expand-file-name "junk/data/" user-emacs-directory))
+ (require 'no-littering))
+
+;; put eln-cache in var
+(when (and (fboundp 'startup-redirect-eln-cache)
+ (fboundp 'native-comp-available-p)
+ (native-comp-available-p))
+ (startup-redirect-eln-cache
+ (convert-standard-filename
+ (expand-file-name "eln-cache/" no-littering-var-directory))))
+
+;; put elpa in var
+(setq package-user-dir
+ (expand-file-name "elpa/" no-littering-var-directory))
+
+;; improve garbage collection
+(defun my-minibuffer-setup-hook ()
+ (setq gc-cons-threshold most-positive-fixnum))
+(defun my-minibuffer-exit-hook ()
+ (setq gc-cons-threshold 800000000))
+(add-hook 'minibuffer-setup-hook #'my-minibuffer-setup-hook)
+(add-hook 'minibuffer-exit-hook #'my-minibuffer-exit-hook)
+(defun gc-idle-timer ()
+ "Trigger garbage collection when Emacs is idle for 0.5 seconds."
+ (run-with-idle-timer 1.2 t 'garbage-collect))
+(gc-idle-timer)
+
;; file handler optimization — skip regex matching on every load
(defvar my--old-file-name-handler-alist file-name-handler-alist)
(setq file-name-handler-alist nil)
diff --git a/.config/emacs/init.el b/.config/emacs/init.el
index e041356..c264e99 100644
--- a/.config/emacs/init.el
+++ b/.config/emacs/init.el
@@ -1,21 +1,3 @@
-;; add my lisp directory and its subdirectories to the load path
-(add-to-list 'load-path (locate-user-emacs-file "lisp"))
-
-;; stop garbage files
-(require 'no-littering)
-
-;; improve garbage collection
-(defun my-minibuffer-setup-hook ()
- (setq gc-cons-threshold most-positive-fixnum))
-(defun my-minibuffer-exit-hook ()
- (setq gc-cons-threshold 800000000))
-(add-hook 'minibuffer-setup-hook #'my-minibuffer-setup-hook)
-(add-hook 'minibuffer-exit-hook #'my-minibuffer-exit-hook)
-(defun gc-idle-timer ()
- "Trigger garbage collection when Emacs is idle for 0.5 seconds."
- (run-with-idle-timer 1.2 t 'garbage-collect))
-(gc-idle-timer)
-
;; opt out of custom and lockfiles
(setq custom-file (make-temp-file "emacs-custom-"))
(setq create-lockfiles nil)
@@ -40,11 +22,12 @@
(unless package-archive-contents
(package-refresh-contents))
-;; don't complain about bytecomp errors in a window
-;; (add-to-list 'display-buffer-alist
-;; '("\\`\\*\\(Warnings\\|Compile-Log\\)\\*\\'"
-;; (display-buffer-no-window)
-;; (allow-no-window . t)))
+;; emacs-31 compat
+(use-package compat
+ :ensure t
+ :init
+ (require 'compat)
+ (require 'compat-31))
;; load my config files
(defun loadc (file) (load (locate-user-emacs-file file)))
diff --git a/.config/emacs/minibuffer.el b/.config/emacs/minibuffer.el
index b7b13af..d41c19d 100644
--- a/.config/emacs/minibuffer.el
+++ b/.config/emacs/minibuffer.el
@@ -33,8 +33,10 @@
:ensure t
:hook (after-init . marginalia-mode))
+(use-package dash :ensure t)
(use-package stillness-mode
:demand t
+ :after dash
;; :vc (:url "https://github.com/neeasade/stillness-mode.el" :rev :newest)
:ensure nil
:load-path "lisp/stillness-mode.el/"
diff --git a/.config/emacs/misc.el b/.config/emacs/misc.el
index 2480103..b4cabe7 100644
--- a/.config/emacs/misc.el
+++ b/.config/emacs/misc.el
@@ -38,8 +38,9 @@
;; proj
(use-package proj
- :vc ( :url "https://github.com/NAHTAIV3L/proj.el" :rev :newest )
- :demand
+ :demand t
+ :ensure nil
+ :load-path "lisp/proj/"
:config
(global-set-key (kbd "C-x b") `proj-switch-to-buffer)
(global-set-key (kbd "C-c b") `switch-to-buffer)