aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack Jamison <jjamison@litecoms.com>2026-07-30 11:10:16 -0400
committerJack Jamison <jjamison@litecoms.com>2026-07-30 11:10:16 -0400
commitd7fb76f6e7d942740c48016864de8b65588e336c (patch)
tree700941096404d109264db1cc5d0d468df825fcde
parent244bafc426222b58d66e57d5eef7d4e2bccfddf1 (diff)
improvements and stuff
-rw-r--r--.config/emacs/completion-at-point.el43
-rw-r--r--.config/emacs/files.el5
-rw-r--r--.config/emacs/init.el27
m---------.config/emacs/lisp/proj0
-rw-r--r--.config/emacs/minibuffer.el52
-rw-r--r--.config/emacs/misc.el2
-rw-r--r--.config/emacs/style.el33
-rw-r--r--.config/emacs/text-editing.el11
8 files changed, 99 insertions, 74 deletions
diff --git a/.config/emacs/completion-at-point.el b/.config/emacs/completion-at-point.el
index 7683dd2..a563e99 100644
--- a/.config/emacs/completion-at-point.el
+++ b/.config/emacs/completion-at-point.el
@@ -1,16 +1,31 @@
-(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)
+;; (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)))
- (setq corfu-popupinfo-delay '(1.25 . 0.5))
- (corfu-popupinfo-mode 1) ; shows documentation after `corfu-popupinfo-delay'
+(use-package completion-preview
+ :diminish
+ :demand t
+ :bind
+ ( :map completion-preview-active-mode-map
+ ("M-n" . completion-preview-next-candidate)
+ ("M-p" . completion-preview-prev-candidate)
+ ("<tab>" . completion-preview-insert)
+ ("M-<return>" . completion-preview-insert))
+ :config
+ (global-completion-preview-mode)
+ :custom
+ (completion-preview-minimum-symbol-length 2)
+ (completion-preview-ignore-case t))
- ;; 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)))
+(setq completion-auto-help nil)
diff --git a/.config/emacs/files.el b/.config/emacs/files.el
index 0830ffc..d912e02 100644
--- a/.config/emacs/files.el
+++ b/.config/emacs/files.el
@@ -1,8 +1,9 @@
(use-package dired
:commands (dired)
:hook ((dired-mode . dired-hide-details-mode)
- (dired-mode . hl-line-mode)
- (dired-mode . (lambda () (setq-local cursor-type nil))))
+ (dired-mode . (lambda ()
+ (hl-line-mode)
+ (setq-local cursor-type nil))))
:config
(setq dired-recursive-copies 'always)
(setq dired-recursive-deletes 'always)
diff --git a/.config/emacs/init.el b/.config/emacs/init.el
index f2486fa..e6b85e1 100644
--- a/.config/emacs/init.el
+++ b/.config/emacs/init.el
@@ -1,5 +1,5 @@
;; add my lisp directory and its subdirectories to the load path
-(defvar my-lisp-dir (concat (getenv "XDG_CONFIG_HOME") "/emacs/lisp"))
+(defvar my-lisp-dir (file-name-concat user-emacs-directory "lisp"))
(add-to-list 'load-path my-lisp-dir)
(let ((default-directory my-lisp-dir))
(normal-top-level-add-subdirs-to-load-path))
@@ -33,7 +33,7 @@
(setq inhibit-startup-message t
vc-follow-symlinks t
use-short-answers t
- enable-recursive-minibuffers t)
+ enable-recursive-minibuffers t)
;; set up package managers
(require 'package)
@@ -48,25 +48,6 @@
(display-buffer-no-window)
(allow-no-window . t)))
-;; saves last place in file
-(use-package saveplace
- :config
- (save-place-mode))
-
-;; better C-g dwim
-(defun keyboard-quit-dwim ()
- (interactive)
- (cond
- ((region-active-p)
- (keyboard-quit))
- ((derived-mode-p 'completion-list-mode)
- (delete-completion-window))
- ((> (minibuffer-depth) 0)
- (abort-recursive-edit))
- (t
- (keyboard-quit))))
-(define-key global-map (kbd "C-g") #'keyboard-quit-dwim)
-
;; load my config files
(defun loadc (file) (load (locate-user-emacs-file file)))
(loadc "style.el")
@@ -79,7 +60,5 @@
;; (loadc "evil.el")
;; (loadc "lang.el")
-(find-file user-init-file)
-
-;; skipped: diminish, improved C-g, evil nerd commenter, ansi color and rainbow
+;; skipped: diminish, ansi color and rainbow
;; delimiters, evil, rainbow,
diff --git a/.config/emacs/lisp/proj b/.config/emacs/lisp/proj
-Subproject fd3d705c32fc8e35e7f80d75c35fd950749a6e9
+Subproject 35b4d077bc3d9026df365b20db38778f85e8293
diff --git a/.config/emacs/minibuffer.el b/.config/emacs/minibuffer.el
index 678a13b..b51fbef 100644
--- a/.config/emacs/minibuffer.el
+++ b/.config/emacs/minibuffer.el
@@ -1,9 +1,24 @@
+;; better C-g dwim
+(defun keyboard-quit-dwim ()
+ (interactive)
+ (cond
+ ((region-active-p)
+ (keyboard-quit))
+ ((derived-mode-p 'completion-list-mode)
+ (delete-completion-window))
+ ((> (minibuffer-depth) 0)
+ (abort-recursive-edit))
+ (t
+ (keyboard-quit))))
+(define-key global-map (kbd "C-g") #'keyboard-quit-dwim)
+
+;; ui improvements
+
(use-package vertico
:ensure t
:hook (after-init . vertico-mode))
(use-package vertico-directory
- :ensure t
:after vertico
;; More convenient directory navigation commands
:bind (:map vertico-map
@@ -18,6 +33,17 @@
:ensure t
:hook (after-init . marginalia-mode))
+;; (use-package stillness
+;; :demand t
+;; :vc (:url "https://github.com/neeasade/stillness-mode.el" :branch "main"))
+
+;; sorting and history
+
+;; https://kristofferbalintona.me/articles/complement-corfu-vertico-and-completion-preview-with-prescientel-sorting/
+
+(use-package savehist
+ :hook (after-init . savehist-mode))
+
(use-package orderless
:ensure t
:config
@@ -25,5 +51,25 @@
(setq completion-category-defaults nil)
(setq completion-category-overrides nil))
-(use-package savehist
- :hook (after-init . savehist-mode))
+(use-package prescient
+ :ensure t
+ :custom
+ (prescient-aggressive-file-save t)
+ (prescient-sort-length-enable nil)
+ (prescient-sort-full-matches-first t)
+ (prescient-history-length 200)
+ (prescient-frequency-decay 0.997)
+ (prescient-frequency-threshold 0.05)
+ :config
+ (prescient-persist-mode 1))
+
+(use-package vertico-prescient
+ :ensure t
+ :demand t
+ :after vertico prescient
+ :custom
+ (vertico-prescient-enable-sorting t)
+ (vertico-prescient-override-sorting nil)
+ (vertico-prescient-enable-filtering nil) ; We want orderless to do the filtering
+ :config
+ (vertico-prescient-mode 1))
diff --git a/.config/emacs/misc.el b/.config/emacs/misc.el
index b6d9a26..a4ab07d 100644
--- a/.config/emacs/misc.el
+++ b/.config/emacs/misc.el
@@ -7,6 +7,8 @@
(use-package magit
:ensure t
:bind (("C-x g" . magit-status))
+ :hook
+ ((magit-mode . (lambda () (setq-local cursor-type nil))))
:config
(setq vc-handled-backends (delq 'Git vc-handled-backends))
:custom
diff --git a/.config/emacs/style.el b/.config/emacs/style.el
index b4071a8..91c2a10 100644
--- a/.config/emacs/style.el
+++ b/.config/emacs/style.el
@@ -3,18 +3,17 @@
(scroll-bar-mode -1)
(tool-bar-mode -1)
-;; fonts
-(let ((mono-spaced-font "DejaVuSansMono")
- (proportionately-spaced-font "DejaVuSans"))
+(blink-cursor-mode -1)
+
+;; fonts - https://github.com/thep0y/monaco-nerd-font/releases/tag/v0.2.2
+(let ((mono-spaced-font "Monaco Nerd Font Mono")
+ (proportionately-spaced-font "MonacoLigaturized Nerd Font"))
(set-face-attribute 'default nil :family mono-spaced-font :height 100)
(set-face-attribute 'fixed-pitch nil :family mono-spaced-font :height 1.0)
(set-face-attribute 'variable-pitch nil :family proportionately-spaced-font :height 1.0))
;; theme
-
(load-theme 'wombat)
-
-
(custom-set-faces
'(default ((t (:inherit nil :stipple nil :background "#222323" :foreground "#f6f3e8" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 115 :width normal :family "Monaco"))))
'(highlight ((t (:underline nil))))
@@ -25,28 +24,6 @@
'(font-lock-string-face ((t (:foreground "#98dc5f"))))
)
- ;; (custom-set-faces
- ;; '(highlight ((t (:underline nil)))))
- ;; '(dired-directory ((t (:inherit (quote font-lock-keyword-face)))))
- ;; '(dired-header ((t (:inherit (quote font-lock-comment-face)))))
- ;; '(font-lock-keyword-face ((t (:foreground "#86b7dd"))))
- ;; '(font-lock-string-face ((t (:foreground "#98dc5f"))))
- ;; '(fringe ((t (:background "#222323"))))
- ;; '(ido-first-match ((t (:inherit (quote font-lock-comment-face)))))
- ;; '(ido-only-match ((t (:inherit (quote font-lock-comment-face)))))
- ;; '(ido-subdir ((t (:inherit (quote font-lock-keyword-face)))))
- ;; '(linum ((t (:inherit (shadow default) :background "#191919" :foreground "#505050"))))
- ;; '(success ((t (:inherit (quote font-lock-keyword-face) :weight normal))))
- ;; '(vertical-border ((t (:foreground "#303030"))))
- ;; '(company-scrollbar-bg ((t (:background "#303030"))))
- ;; '(company-scrollbar-fg ((t (:background "#99968b"))))
- ;; '(company-tooltip ((t (:background "#303030"))))
- ;; '(company-tooltip-annotation ((t (:inherit (quote font-lock-comment-face)))))
- ;; '(company-tooltip-common ((t (:inherit (quote font-lock-comment-face)))))
- ;; '(company-tooltip-common-selection ((t (:inherit (quote font-lock-keyword-face) :weight normal))))
- ;; '(company-tooltip-mouse ((t (:inherit (quote font-lock-keyword-face) :weight normal))))
- ;; '(company-tooltip-selection ((t (:inherit (quote font-lock-keyword-face) :weight normal))))
-
;; icons
(use-package nerd-icons
diff --git a/.config/emacs/text-editing.el b/.config/emacs/text-editing.el
index f6a0147..beee68c 100644
--- a/.config/emacs/text-editing.el
+++ b/.config/emacs/text-editing.el
@@ -1,14 +1,19 @@
;; scrolling
(setq scroll-up-aggressively nil
scroll-down-aggressively nil
- scroll-conservatively 101)
-(setq scroll-step 1)
-(setq scroll-margin 8)
+ scroll-conservatively 101
+ scroll-step 1
+ scroll-margin 6)
;; columns
(setq-default fill-column 80)
(setq-default truncate-lines t)
+;; saves last place in file
+(use-package saveplace
+ :config
+ (save-place-mode))
+
;; mwim
(use-package mwim
:bind (("C-a" . mwim-beginning)