summaryrefslogtreecommitdiff
path: root/.config
diff options
context:
space:
mode:
authorbd <bdunahu@operationnull.com>2024-12-20 17:05:38 -0500
committerbd <bdunahu@operationnull.com>2024-12-20 17:05:38 -0500
commit7b56a60febbd087c8e03dcdeddb7e7bccd9b7685 (patch)
tree487841848c40dd949da170dbeb8585762a11bfca /.config
parentd3a3ef635e147d20e2f4b967d969967019ee333d (diff)
common functions to utilities file, common buffer operations menu
Diffstat (limited to '.config')
-rw-r--r--.config/emacs/gnus.el3
-rw-r--r--.config/emacs/init.el1
-rw-r--r--.config/emacs/modules/bd--browse.el2
-rw-r--r--.config/emacs/modules/bd--buffers.el60
-rw-r--r--.config/emacs/modules/bd--devel.el2
-rw-r--r--.config/emacs/modules/bd--dictionary.el2
-rw-r--r--.config/emacs/modules/bd--emms.el2
-rw-r--r--.config/emacs/modules/bd--exwm-windowing.el73
-rw-r--r--.config/emacs/modules/bd--files.el2
-rw-r--r--.config/emacs/modules/bd--gpg.el2
-rw-r--r--.config/emacs/modules/bd--image.el2
-rw-r--r--.config/emacs/modules/bd--irc.el2
-rw-r--r--.config/emacs/modules/bd--minibuffer.el49
-rw-r--r--.config/emacs/modules/bd--modeline.el2
-rw-r--r--.config/emacs/modules/bd--notes.el2
-rw-r--r--.config/emacs/modules/bd--org.el2
-rw-r--r--.config/emacs/modules/bd--project.el2
-rw-r--r--.config/emacs/modules/bd--rss.el2
-rw-r--r--.config/emacs/modules/bd--shells.el6
-rw-r--r--.config/emacs/modules/bd--tabs.el2
-rw-r--r--.config/emacs/modules/bd--themes.el2
21 files changed, 69 insertions, 153 deletions
diff --git a/.config/emacs/gnus.el b/.config/emacs/gnus.el
index a67b313..0e3ad6e 100644
--- a/.config/emacs/gnus.el
+++ b/.config/emacs/gnus.el
@@ -46,7 +46,8 @@
"%s\n"))
(setopt message-from-style 'angles
- mml-secure-openpgp-encrypt-to-self t)
+ mml-secure-openpgp-encrypt-to-self t
+ mml-secure-openpgp-sign-with-sender t)
(add-hook 'gnus-message-setup-hook 'mml-secure-message-sign-pgpmime)
diff --git a/.config/emacs/init.el b/.config/emacs/init.el
index 9da13d3..cf9bbaf 100644
--- a/.config/emacs/init.el
+++ b/.config/emacs/init.el
@@ -91,6 +91,7 @@
;;;; load modules
+(require 'bd--utility)
(require 'bd--secret) ;; contains bookmarks/email vars---git ignored
(require 'bd--browse)
(require 'bd--rss)
diff --git a/.config/emacs/modules/bd--browse.el b/.config/emacs/modules/bd--browse.el
index 5e9cb13..e229e5a 100644
--- a/.config/emacs/modules/bd--browse.el
+++ b/.config/emacs/modules/bd--browse.el
@@ -116,4 +116,4 @@ icecat, or eww."
(provide 'bd--browse)
-;;; bd-browse ends here
+;;; bd--browse.el ends here
diff --git a/.config/emacs/modules/bd--buffers.el b/.config/emacs/modules/bd--buffers.el
index 45a161f..a8e3cbe 100644
--- a/.config/emacs/modules/bd--buffers.el
+++ b/.config/emacs/modules/bd--buffers.el
@@ -3,22 +3,7 @@
;;; Code:
-(defun split-and-follow ()
- (interactive)
- (delete-other-windows)
- (split-window-horizontally)
- (split-window-horizontally)
- (balance-windows)
- (other-window -1)
- (follow-mode 1))
-
-(defun set-frame-alpha (value)
- "Sets the transparency of the frame background. 0=transparent/100=opaque."
- (interactive "nTransparency Value (30 - 100 opaque): ")
- (setq value (max 30 (min value 100)))
- (set-frame-parameter (selected-frame) 'alpha `(,value . ,value))
- (message "Alpha set to %d" value))
-(add-to-list 'default-frame-alist '(alpha . (92 . 92)))
+(require 'transient)
(use-package autorevert
:init
@@ -46,5 +31,46 @@
)))
+(add-to-list 'default-frame-alist '(alpha . (92 . 92)))
+
+(defun bd/layout--do-with-haste (f)
+ (let* ((args (transient-args 'bd/layout-dispatcher))
+ (haste (if (member "haste" args) 3 1)))
+ (funcall f haste)))
+(transient-define-prefix bd/layout-dispatcher ()
+ ["Dispatcher > Layout\n"
+ ["Infixes"
+ ("s" "haste" "haste")]]
+ [["Commands"
+ ("-" "text decrease"
+ (lambda () (interactive) (bd/layout--do-with-haste #'text-scale-decrease))
+ :transient t)
+ ("=" "text increase"
+ (lambda () (interactive) (bd/layout--do-with-haste #'text-scale-increase))
+ :transient t)
+ ("b" "narrow"
+ (lambda () (interactive) (bd/layout--do-with-haste #'shrink-window-horizontally))
+ :transient t)
+ ("f" "widen"
+ (lambda () (interactive) (bd/layout--do-with-haste #'enlarge-window-horizontally))
+ :transient t)
+ ("p" "shrink"
+ (lambda () (interactive) (bd/layout--do-with-haste #'shrink-window))
+ :transient t)
+ ("n" "enlarge"
+ (lambda () (interactive) (bd/layout--do-with-haste #'enlarge-window))
+ :transient t)
+ ("|" "balance" balance-windows)]
+ [""
+ ("N" "shift down" windmove-swap-states-down :transient t)
+ ("P" "shift up" windmove-swap-states-up :transient t)
+ ("F" "shift right" windmove-swap-states-right :transient t)
+ ("B" "shift left" windmove-swap-states-left :transient t)]
+ [""
+ ("a" "alpha" bd/set-frame-alpha)
+ ("w" "wallpaper" bd/set-bg)]])
+(keymap-global-set "C-c w" #'bd/layout-dispatcher)
+
+
(provide 'bd--buffers)
-;;; bd-buffers ends here
+;;; bd--buffers.el ends here
diff --git a/.config/emacs/modules/bd--devel.el b/.config/emacs/modules/bd--devel.el
index 916d6e2..6008904 100644
--- a/.config/emacs/modules/bd--devel.el
+++ b/.config/emacs/modules/bd--devel.el
@@ -123,4 +123,4 @@
(provide 'bd--devel)
-;;; bd--devel ends here
+;;; bd--devel.el ends here
diff --git a/.config/emacs/modules/bd--dictionary.el b/.config/emacs/modules/bd--dictionary.el
index 79dd2d1..5c161b7 100644
--- a/.config/emacs/modules/bd--dictionary.el
+++ b/.config/emacs/modules/bd--dictionary.el
@@ -12,4 +12,4 @@
(provide 'bd--dictionary)
-;;; bd-dictionary ends here
+;;; bd--dictionary.el ends here
diff --git a/.config/emacs/modules/bd--emms.el b/.config/emacs/modules/bd--emms.el
index df47a2e..1770c16 100644
--- a/.config/emacs/modules/bd--emms.el
+++ b/.config/emacs/modules/bd--emms.el
@@ -59,4 +59,4 @@ playback."
(provide 'bd--emms)
-;;; bd-emms ends here
+;;; bd--emms.el ends here
diff --git a/.config/emacs/modules/bd--exwm-windowing.el b/.config/emacs/modules/bd--exwm-windowing.el
index ef4aa0f..2825b1a 100644
--- a/.config/emacs/modules/bd--exwm-windowing.el
+++ b/.config/emacs/modules/bd--exwm-windowing.el
@@ -3,76 +3,7 @@
;;; Code:
-(defun bd/lock ()
- "Lock the screen."
- (interactive)
- (start-process "lock" nil "slock"))
-
-(defun bd/shoot-full ()
- "Take a full-screen screenshot."
- (interactive)
- (let ((default-directory (xdg-user-dir "PICTURES")))
- (start-process-shell-command "flameshot" nil "flameshot full")))
-
-(defun bd/shoot-part ()
- "Take a selective screen screenshot."
- (interactive)
- (let ((default-directory (xdg-user-dir "PICTURES")))
- (start-process-shell-command "flameshot" nil "flameshot launcher")))
-
-(defun bd/toggle-mute ()
- "Toggle between muted and unmuted."
- (interactive)
- (start-process "sound toggle" nil "pactl" "set-sink-mute" "@DEFAULT_SINK@" "toggle"))
-
-(defun bd/set-volume (value)
- "Sets the volume to VALUE."
- (start-process "set volume" nil "pactl" "set-sink-volume" "@DEFAULT_SINK@" value))
-
-(defun bd/decrement-volume ()
- "Decrements the volume."
- (interactive)
- (bd/set-volume "-4%"))
-
-(defun bd/increment-volume ()
- "Increments the volume."
- (interactive)
- (bd/set-volume "+4%"))
-
-(defun bd/set-brightness (value)
- "Sets the brightness to VALUE."
- (start-process "set brightness" nil "brightnessctl" "set" value))
-
-(defun bd/decrement-brightness ()
- "decrements the brightness."
- (interactive)
- (bd/set-brightness "5%-"))
-
-(defun bd/increment-brightness ()
- "Increments the brightness."
- (interactive)
- (bd/set-brightness "5%+"))
-
-(defun set-bg (&optional arg)
- "Set the current wallpaper using feh.
-ARG can be one of the following:
-
-- nil: set the most recent wallpaper
-- directory: set a random image from the directory
-- file: set the specified file"
- (interactive "f")
- (let ((wall (expand-file-name "~/wf/wall/current")))
- (when arg
- (cond
- ((file-regular-p arg) (copy-file arg wall t))
- ((file-directory-p arg)
- (let* ((images (f-files arg (lambda (f) (string-match-p "\\.jpeg\\'" f))))
- (rfile (nth (random (length images)) images)))
- (and rfile (copy-file rfile wall t))))))
- (start-process "set wallpaper" nil "feh" "--bg-fill" wall)
- (message "Set wallpaper.")))
-(set-bg)
-
+(bd/set-bg)
(use-package exwm
:config
@@ -164,4 +95,4 @@ that buffer."
(add-to-list 'global-mode-string bd/external-mode-line)
(provide 'bd--exwm-windowing)
-;;; bd-exwm ends here
+;;; bd--exwm-windowing.el ends here
diff --git a/.config/emacs/modules/bd--files.el b/.config/emacs/modules/bd--files.el
index 6a44d88..6608734 100644
--- a/.config/emacs/modules/bd--files.el
+++ b/.config/emacs/modules/bd--files.el
@@ -73,4 +73,4 @@
(provide 'bd--files)
-;;; bd-files ends here
+;;; bd--files.el ends here
diff --git a/.config/emacs/modules/bd--gpg.el b/.config/emacs/modules/bd--gpg.el
index ae4e527..fd883cf 100644
--- a/.config/emacs/modules/bd--gpg.el
+++ b/.config/emacs/modules/bd--gpg.el
@@ -68,4 +68,4 @@ for a bug I've encountered."
(provide 'bd--gpg)
-;;; bd-gpg ends here
+;;; bd--gpg.el ends here
diff --git a/.config/emacs/modules/bd--image.el b/.config/emacs/modules/bd--image.el
index b8aaccb..48ab024 100644
--- a/.config/emacs/modules/bd--image.el
+++ b/.config/emacs/modules/bd--image.el
@@ -19,4 +19,4 @@ If the mode line is off, set it to the default value."
(provide 'bd--image)
-;;; bd-image ends here
+;;; bd--image.el ends here
diff --git a/.config/emacs/modules/bd--irc.el b/.config/emacs/modules/bd--irc.el
index dc31a49..dd9d1d3 100644
--- a/.config/emacs/modules/bd--irc.el
+++ b/.config/emacs/modules/bd--irc.el
@@ -26,4 +26,4 @@
(provide 'bd--irc)
-;;; bd-irc ends here
+;;; bd--irc.el ends here
diff --git a/.config/emacs/modules/bd--minibuffer.el b/.config/emacs/modules/bd--minibuffer.el
index 2e67ca7..5acd186 100644
--- a/.config/emacs/modules/bd--minibuffer.el
+++ b/.config/emacs/modules/bd--minibuffer.el
@@ -41,50 +41,11 @@
"Buffers that should not show up in buffer-related
selection commands.")
- (defun bd/buffer-exwm-p (buf)
- "Return non-nil if BUF is an `exwm-mode' buffer."
- (member
- (buffer-local-value 'major-mode (get-buffer buf))
- '(exwm-mode)))
-
- (defun bd/buffer-scratch-p (buf)
- "Return non-nil if BUF is a scratch buffer."
- (buffer-local-value 'scratch-buffer (get-buffer buf)))
-
- (defun bd/buffer-text-p (buf)
- "Return non-nil if BUF derives from `text-mode'."
- (provided-mode-derived-p (buffer-local-value 'major-mode (get-buffer buf)) 'text-mode))
-
- (defun bd/buffer-prog-p (buf)
- "Return non-nil if BUF derives from `prog-mode'."
- (provided-mode-derived-p (buffer-local-value 'major-mode (get-buffer buf)) 'prog-mode))
-
- (defun bd/buffer-dired-p (buf)
- "Return non-nil if BUF is a `dired-mode' buffer."
- (member
- (buffer-local-value 'major-mode (get-buffer buf))
- '(dired-mode)))
-
- (defun bd/buffer-irc-p (buf)
- "Return non-nil if BUF is an `irc-mode' buffer."
- (member
- (buffer-local-value 'major-mode (get-buffer buf))
- '(rcirc-mode erc-mode)))
-
(defun bd/buffer-blacklisted-p (buf)
"Return non-nil if BUF is blacklisted."
(cl-reduce (lambda (x y) (or x y)) (mapcar (lambda (r) (string-match r buf))
bd/blacklisted-buffer-regexp-list)))
- (defun bd/buffer-ordinary-p (buf)
- "Return non-nil if BUF does not fit into known categories."
- (not (or (bd/buffer-exwm-p buf)
- (bd/buffer-text-p buf)
- (bd/buffer-prog-p buf)
- (bd/buffer-scratch-p buf)
- (bd/buffer-dired-p buf)
- (bd/buffer-irc-p buf))))
-
(defun bd/buffer-list ()
"Return a list of non-blacklisted buffers."
(cl-remove-if #'bd/buffer-blacklisted-p (mapcar 'buffer-name (buffer-list))))
@@ -136,14 +97,6 @@ selection commands.")
(selector-recentf-source))))
(keymap-global-set "C-x b" 'bd/navigate)
- (defun bd/get-directory-dwim ()
- "Returns the directory you always wanted."
- (or (when (project-current)
- (project-root (project-current))) ;; git
- (locate-dominating-file "." "Makefile") ;; make
- (locate-dominating-file "." "manifest.scm") ;; guix
- default-directory))
-
(defun bd/selector-rg ()
"Sources for lines found via grep (or a clone)."
(interactive)
@@ -171,4 +124,4 @@ selection commands.")
(provide 'bd--minibuffer)
-;;; bd-minibuffer ends here
+;;; bd--minibuffer.el ends here
diff --git a/.config/emacs/modules/bd--modeline.el b/.config/emacs/modules/bd--modeline.el
index 567a752..5d2af9e 100644
--- a/.config/emacs/modules/bd--modeline.el
+++ b/.config/emacs/modules/bd--modeline.el
@@ -88,4 +88,4 @@
(provide 'bd--modeline)
-;;; bd-modeline ends here
+;;; bd--modeline.el ends here
diff --git a/.config/emacs/modules/bd--notes.el b/.config/emacs/modules/bd--notes.el
index 26cf0ca..31aa5c8 100644
--- a/.config/emacs/modules/bd--notes.el
+++ b/.config/emacs/modules/bd--notes.el
@@ -66,4 +66,4 @@ KEYWORDS is a list of strings."
(provide 'bd--notes)
-;;; bd-notes ends here
+;;; bd--notes.el ends here
diff --git a/.config/emacs/modules/bd--org.el b/.config/emacs/modules/bd--org.el
index c761e19..9215a06 100644
--- a/.config/emacs/modules/bd--org.el
+++ b/.config/emacs/modules/bd--org.el
@@ -216,4 +216,4 @@ representing all the tags ORd or ANDed together."
(provide 'bd--org)
-;;; bd-org ends here
+;;; bd--org.el ends here
diff --git a/.config/emacs/modules/bd--project.el b/.config/emacs/modules/bd--project.el
index 5828abd..f5b1c09 100644
--- a/.config/emacs/modules/bd--project.el
+++ b/.config/emacs/modules/bd--project.el
@@ -15,4 +15,4 @@
(provide 'bd--project)
-;;; bd-project ends here
+;;; bd--project.el ends here
diff --git a/.config/emacs/modules/bd--rss.el b/.config/emacs/modules/bd--rss.el
index bb97622..cd943ed 100644
--- a/.config/emacs/modules/bd--rss.el
+++ b/.config/emacs/modules/bd--rss.el
@@ -22,4 +22,4 @@
(provide 'bd--rss)
-;;; bd-rss ends here
+;;; bd--rss.el ends here
diff --git a/.config/emacs/modules/bd--shells.el b/.config/emacs/modules/bd--shells.el
index 2ae63e4..e401115 100644
--- a/.config/emacs/modules/bd--shells.el
+++ b/.config/emacs/modules/bd--shells.el
@@ -19,6 +19,10 @@
:custom
(eshell-banner-message (concat "\n" (propertize " " 'display (create-image (expand-file-name "images/raven.png" user-emacs-directory) 'png nil :scale 0.8 :align-to "center")) "\n")))
+(use-package em-term
+ :custom
+ (add-to-list 'eshell-visual-commands "nethack"))
+
(use-package em-prompt
:config
(defun bd/get-prompt-path ()
@@ -77,4 +81,4 @@ clear the scrollback contents. Outputs banner message."
(provide 'bd--shells)
-;;; bd-shells ends here
+;;; bd--shells.el ends here
diff --git a/.config/emacs/modules/bd--tabs.el b/.config/emacs/modules/bd--tabs.el
index cf57949..67ec1d7 100644
--- a/.config/emacs/modules/bd--tabs.el
+++ b/.config/emacs/modules/bd--tabs.el
@@ -50,4 +50,4 @@
(provide 'bd--tabs)
-;;; bd-tabs ends here
+;;; bd--tabs.el ends here
diff --git a/.config/emacs/modules/bd--themes.el b/.config/emacs/modules/bd--themes.el
index edecaa5..ec95108 100644
--- a/.config/emacs/modules/bd--themes.el
+++ b/.config/emacs/modules/bd--themes.el
@@ -75,4 +75,4 @@ and some other minor face changes."
(provide 'bd--themes)
-;;; bd-themes ends here
+;;; bd--themes.el ends here