summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKjetil Orbekk <kj@orbekk.com>2024-01-07 14:04:28 -0500
committerKjetil Orbekk <kj@orbekk.com>2024-01-07 14:04:28 -0500
commit16f3c95f47c2960c9b5ddc0832d3ddf409936045 (patch)
treee8cb48088dabda253d4f77ca18dc67f19733d1ac
parent9db16f226c39ce199a0b74c94bbd3f72e6dd71b8 (diff)
fixes
-rw-r--r--emacs/.config/emacs-v2/lisp/kj-email.el1
-rw-r--r--emacs/.config/emacs-v2/lisp/kj-init.el10
-rw-r--r--emacs/.config/emacs-v2/lisp/kj-popup.el95
3 files changed, 10 insertions, 96 deletions
diff --git a/emacs/.config/emacs-v2/lisp/kj-email.el b/emacs/.config/emacs-v2/lisp/kj-email.el
index 4aa6439..313226c 100644
--- a/emacs/.config/emacs-v2/lisp/kj-email.el
+++ b/emacs/.config/emacs-v2/lisp/kj-email.el
@@ -11,6 +11,7 @@
(add-hook 'message-mode-hook 'turn-off-auto-fill)
(add-hook 'message-mode-hook 'visual-line-mode))
(use-package notmuch
+ :after seq
:bind
(:map notmuch-hello-mode-map
("T" . kj/notmuch-tree-by-tag))
diff --git a/emacs/.config/emacs-v2/lisp/kj-init.el b/emacs/.config/emacs-v2/lisp/kj-init.el
index 173a734..ec86e34 100644
--- a/emacs/.config/emacs-v2/lisp/kj-init.el
+++ b/emacs/.config/emacs-v2/lisp/kj-init.el
@@ -7,9 +7,15 @@
(setq initial-scratch-message nil)
+(setq switch-to-buffer-obey-display-actions t)
+(setq switch-to-buffer-in-dedicated-window 'pop)
+(setq even-window-sizes 'width-only)
+
(setq custom-file (expand-file-name "emacs-custom.el" user-emacs-directory))
(load custom-file :noerror t)
+(setq bookmark-file (expand-file-name "boomarks" kj/cache-dir))
+
(setq use-short-answers t)
(global-hl-line-mode 1)
@@ -18,7 +24,7 @@
(setq visible-bell t
ring-bell-function 'ignore)
-(setq auto-save-list-file-prefix (expand-file-name "auto-save-list/.saves-"))
+(setq auto-save-list-file-prefix (expand-file-name "auto-save-list/.saves-" kj/cache-dir))
(use-package modus-themes
:init
@@ -372,6 +378,8 @@
:init
(which-key-mode))
+(use-package seq)
+
(use-package transient
:config
(setq transient-levels-file (expand-file-name "transient/levels.el" kj/cache-dir)
diff --git a/emacs/.config/emacs-v2/lisp/kj-popup.el b/emacs/.config/emacs-v2/lisp/kj-popup.el
deleted file mode 100644
index 0ac99a5..0000000
--- a/emacs/.config/emacs-v2/lisp/kj-popup.el
+++ /dev/null
@@ -1,95 +0,0 @@
-;;; -*- lexical-binding: t; -*-
-;;; Window placement
-;;; TODO: Test popper.el.
-;; (global-set-key (kbd "C-`") #'window-toggle-side-windows)
-;; (global-set-key (kbd "M-`") #'kj/popup-toggle-override)
-;; (setq window-sides-slots '(0 0 2 2)) ; 2 right side windows
-(setq switch-to-buffer-obey-display-actions t)
-(setq switch-to-buffer-in-dedicated-window 'pop)
-(setq even-window-sizes 'width-only)
-(defvar kj/popup-override nil)
-
-(defun kj/popup-clear-overrides ()
- (interactive)
- (dolist (buffer (buffer-list))
- (with-current-buffer buffer
- (kill-local-variable 'kj/popup-override))))
-
-(defun kj/popup-toggle-override ()
- (interactive)
- (if (local-variable-p 'kj/popup-override)
- (kill-local-variable 'kj/popup-override)
- (setq-local kj/popup-override
- (not (kj/popup-buffer-base (buffer-name)))))
- (let ((buffer (buffer-name)))
- (switch-to-prev-buffer)
- (switch-to-buffer buffer)))
-
-(defun kj/popup-buffer-base (buffer &optional condition)
- (or
- (s-matches-p
- (rx (| "*Help*"
- "*info*"
- (seq "*Messages*")
- (seq "*Warnings*")
- (seq "*Backtrace*")
- (seq "*eldoc " (* anything) "*")
- (seq "*WoMan " (* anything) "*")
- (seq "*man " (* anything) "*")
- (seq "fig: " (* anything))
- (seq "*htop*" (* anything))
- (seq "*Proced*" (* anything))
- (seq "*eshell" (* anything))
- (seq "*shell" (* anything))
- "*Occur*")) buffer)
- (with-current-buffer buffer
- (apply #'derived-mode-p
- '(magit-mode
- compilation-mode
- shell-mode
- comint-mode
- Custom-mode ; For customization
- fig-commit-mode)))))
-
-(defun kj/popup-buffer (buffer &optional condition)
- (with-current-buffer buffer
- (if (local-variable-p 'kj/popup-override)
- kj/popup-override
- (kj/popup-buffer-base buffer condition))))
-
-;; (setq transient-display-buffer-action
-;; '(display-buffer-in-best-side
-;; (slot . -1)
-;; (inhibit-same-window . t)
-;; (window-parameters
-;; (no-other-window . t))))
-
-(defun kj/display-new-popup (buffer alist)
- (let ((popup-window
- (display-buffer-in-direction
- buffer
- (append (if (> (frame-width) 160)
- '((direction . rightmost)
- (window-width . 80))
- '((direction . bottom)))))))
- (set-window-parameter popup-window 'kj/popup t)
- popup-window))
-
-(defun kj/find-popup-window ()
- (seq-find
- (lambda (w)
- (window-parameter w 'kj/popup))
- (window-list)))
-
-(defun display-popup-buffer (buffer alist)
- (let ((window (kj/find-popup-window)))
- (if window
- (window--display-buffer buffer window 'reuse alist)
- (kj/display-new-popup buffer alist))))
-
-;; (add-to-list 'display-buffer-alist
-;; `(kj/popup-buffer
-;; (display-popup-buffer)
-;; (slot . 0)))
-
-(provide 'kj-popup)