diff options
author | 2021-03-13 23:44:05 -0500 | |
---|---|---|
committer | 2021-03-13 23:44:05 -0500 | |
commit | 9867e4bbee2bcfe7050b0c9d98cbf72653f658ac (patch) | |
tree | ff156bf6c2db972b6e4ac131563e4ba0aee815bd /.emacs.d | |
parent | be78d2d531eb16d8c72499cb7396354c9d2b16b4 (diff) | |
download | configs-9867e4bbee2bcfe7050b0c9d98cbf72653f658ac.tar.gz configs-9867e4bbee2bcfe7050b0c9d98cbf72653f658ac.tar.xz configs-9867e4bbee2bcfe7050b0c9d98cbf72653f658ac.zip |
Many uncommitted changes
Diffstat (limited to '.emacs.d')
-rw-r--r-- | .emacs.d/etc/abbrev.el | 5 | ||||
-rw-r--r-- | .emacs.d/etc/yasnippet/snippets/log-edit-mode/thankgnu | 2 | ||||
-rw-r--r-- | .emacs.d/etc/yasnippet/snippets/message-mode/thankgnu | 2 | ||||
-rw-r--r-- | .emacs.d/init.el | 267 | ||||
-rw-r--r-- | .emacs.d/lisp/bandali-ebdb.el | 3 | ||||
-rw-r--r-- | .emacs.d/lisp/bandali-erc.el | 25 | ||||
-rw-r--r-- | .emacs.d/lisp/bandali-exwm.el | 107 | ||||
-rw-r--r-- | .emacs.d/lisp/bandali-gnus.el | 158 | ||||
m--------- | .emacs.d/lisp/page-break-lines | 0 | ||||
m--------- | .emacs.d/lisp/refinery-theme | 0 |
10 files changed, 253 insertions, 316 deletions
diff --git a/.emacs.d/etc/abbrev.el b/.emacs.d/etc/abbrev.el deleted file mode 100644 index 76f19d8..0000000 --- a/.emacs.d/etc/abbrev.el +++ /dev/null @@ -1,5 +0,0 @@ -;;-*-coding: utf-8;-*- -(define-abbrev-table 'message-mode-abbrev-table - '( - ("linux" "GNU/Linux" nil :count 4) - )) diff --git a/.emacs.d/etc/yasnippet/snippets/log-edit-mode/thankgnu b/.emacs.d/etc/yasnippet/snippets/log-edit-mode/thankgnu index bf29b63..eafcbd7 100644 --- a/.emacs.d/etc/yasnippet/snippets/log-edit-mode/thankgnu +++ b/.emacs.d/etc/yasnippet/snippets/log-edit-mode/thankgnu @@ -2,4 +2,4 @@ # name: thankgnu # key: th # -- -[RT#$1] Add ${2:$$(yas-choose-value '("Contributor" "Sustaining Contributor" "Patron"))} $3 to the 20${4:20} ThankGNUs list$0
\ No newline at end of file +[RT#$1] Add ${2:$$(yas-choose-value '("Contributor" "Sustaining Contributor" "Patron"))} $3 to the 20${4:21} ThankGNUs list$0
\ No newline at end of file diff --git a/.emacs.d/etc/yasnippet/snippets/message-mode/thankgnu b/.emacs.d/etc/yasnippet/snippets/message-mode/thankgnu index 0d10448..35c233a 100644 --- a/.emacs.d/etc/yasnippet/snippets/message-mode/thankgnu +++ b/.emacs.d/etc/yasnippet/snippets/message-mode/thankgnu @@ -2,6 +2,6 @@ # name: thankgnu # key: th # -- -Added ${2:$$(yas-choose-value '("Contributor" "Sustaining Contributor" "Patron"))} $3 to 20${4:20}supporters.html. +Added ${2:$$(yas-choose-value '("Contributor" "Sustaining Contributor" "Patron"))} $3 to 20${4:21}supporters.html. Moving to campaigns.$0 diff --git a/.emacs.d/init.el b/.emacs.d/init.el index 631ce8c..5594987 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -17,9 +17,8 @@ ;;; Commentary: -;; GNU Emacs configuration of Amin Bandali, computer scientist, -;; Free Software activist, and GNU maintainer & webmaster. Packages -;; are installed through using Borg for a fully reproducible setup. +;; GNU Emacs configuration of bandali, free software activist, +;; computing scientist, and GNU maintainer and volunteer. ;; Over the years, I've taken inspiration from configurations of many ;; great people. Some that I can remember off the top of my head are: @@ -76,28 +75,27 @@ (format "[%s]" (number-to-string exwm-workspace-current-index)))))))) - - ;; make some mode-line spaces smaller - (setq-default - mode-line-format - (mapcar - (lambda (x) - (if (and (stringp x) (or (string= x " ") (string= x " "))) - " " - x)) - mode-line-format) - mode-line-buffer-identification - (propertized-buffer-identification "%10b"))) + (when (version< emacs-version "28") + ;; manually make some mode-line spaces smaller + ;; (version<= "28" emacs-version) can do an awesome job at this + ;; out of the box if `mode-line-compact' is set to t (see below) + (setq-default + mode-line-format + (mapcar + (lambda (x) + (if (and (stringp x) + (or (string= x " ") + (string= x " "))) + " " + x)) + mode-line-format) + mode-line-buffer-identification + (propertized-buffer-identification "%10b")))) (add-hook 'after-init-hook #'b/post-init) ;; increase number of lines kept in *Messages* log (setq message-log-max 20000) -;; optionally, uncomment to supress some byte-compiler warnings -;; (see C-h v byte-compile-warnings RET for more info) -;; (setq byte-compile-warnings -;; '(not free-vars unresolved noruntime lexical make-local)) - ;;; whoami @@ -147,7 +145,7 @@ This sets each user option VAR's value to the corresponding VALUE. '(;; GNU ELPA (debbugs "0.26") (delight "1.7") - (ebdb "0.6.20") + (ebdb "0.6.21") (orgalist "1.13") (rt-liberation "1.31") (yasnippet "0.14.0") @@ -223,96 +221,71 @@ This sets each user option VAR's value to the corresponding VALUE. ;;;; C-level customizations (csetq + ;; completion case sensitivity + completion-ignore-case t ;; minibuffer enable-recursive-minibuffers t resize-mini-windows t - ;; more useful frame titles - ;; frame-title-format '("" invocation-name " - " - ;; (:eval - ;; (if (buffer-file-name) - ;; (abbreviate-file-name (buffer-file-name)) - ;; "%b"))) - ;; i don't feel like jumping out of my chair every now and again; so - ;; don't BEEP! at me, emacs + ;; mode-line + mode-line-compact t + ;; i don't feel like jumping out of my chair every now and again; + ;; so...don't *BEEP* at me, emacs =) ring-bell-function 'ignore ;; better scrolling - ;; scroll-margin 1 - ;; scroll-conservatively 10000 - scroll-step 1 - scroll-conservatively 101 - scroll-preserve-screen-position 1 + ;; scroll-conservatively 101 + scroll-conservatively 15 + ;; scroll-preserve-screen-position 1 ;; focus follows mouse - mouse-autoselect-window t) + ;; mouse-autoselect-window t + ) (setq-default - ;; always use space for indentation - indent-tabs-mode nil - tab-width 4 ;; case-sensitive search (and `dabbrev-expand') ;; case-fold-search nil - ;; cursor shape - cursor-type t) + ;; always use space for indentation + indent-tabs-mode nil + tab-width 4) (set-fontset-font t 'arabic "Vazir") -;; unicode support -;; (dolist (ft (fontset-list)) -;; (set-fontset-font -;; ft -;; 'unicode -;; (font-spec :name "Source Code Pro" :size 14)) -;; (set-fontset-font -;; ft -;; 'unicode -;; (font-spec :name "DejaVu Sans Mono") -;; nil -;; 'append) -;; ;; (set-fontset-font -;; ;; ft -;; ;; 'unicode -;; ;; (font-spec -;; ;; :name "Symbola monospacified for DejaVu Sans Mono") -;; ;; nil -;; ;; 'append) -;; ;; (set-fontset-font -;; ;; ft -;; ;; #x2115 ; ℕ -;; ;; (font-spec :name "DejaVu Sans Mono") -;; ;; nil -;; ;; 'append) -;; (set-fontset-font -;; ft -;; (cons ?Α ?ω) -;; (font-spec :name "DejaVu Sans Mono" :size 14) -;; nil -;; 'prepend)) - ;;;; Elisp-level customizations ;; (define-key minibuffer-local-completion-map ;; "\t" #'minibuffer-force-complete) -(with-eval-after-load 'icomplete +;; (with-eval-after-load 'icomplete -(setq icomplete-on-del-error-function #'abort-recursive-edit) +;; (setq icomplete-on-del-error-function #'abort-recursive-edit) -(defun b/icomplete-fido-backward-updir () - "Delete char before or go up directory, like `ido-mode'." - (interactive) - (if (and (eq (char-before) ?/) - (eq (icomplete--category) 'file)) - (save-excursion - (goto-char (1- (point))) - (when (search-backward "/" (point-min) t) - (delete-region (1+ (point)) (point-max)))) - (condition-case nil - (call-interactively #'delete-backward-char) - (error - (when icomplete-on-del-error-function - (funcall icomplete-on-del-error-function)))))) - -(define-key icomplete-fido-mode-map - (kbd "DEL") #'b/icomplete-fido-backward-updir)) +;; (defun b/icomplete-fido-backward-updir () +;; "Delete char before or go up directory, like `ido-mode'." +;; (interactive) +;; (if (and (eq (char-before) ?/) +;; (eq (icomplete--category) 'file)) +;; (save-excursion +;; (goto-char (1- (point))) +;; (when (search-backward "/" (point-min) t) +;; (delete-region (1+ (point)) (point-max)))) +;; (condition-case nil +;; (call-interactively #'delete-backward-char) +;; (error +;; (when icomplete-on-del-error-function +;; (funcall icomplete-on-del-error-function)))))) + +;; (define-key icomplete-fido-mode-map +;; (kbd "DEL") #'b/icomplete-fido-backward-updir)) + +;; (with-eval-after-load 'subr +;; (keyboard-translate ?\( ?\[) +;; (keyboard-translate ?\) ?\]) +;; (keyboard-translate ?\[ ?\() +;; (keyboard-translate ?\] ?\)) + +;; ;; (keyboard-translate ?\( ?\() +;; ;; (keyboard-translate ?\) ?\)) +;; ;; (keyboard-translate ?\[ ?\[) +;; ;; (keyboard-translate ?\] ?\]) +;; ) ;; startup ;; don't need to see the startup echo area message @@ -340,7 +313,7 @@ This sets each user option VAR's value to the corresponding VALUE. ;; auto-save auto-save-file-name-transforms `((".*" ,(b/var "auto-save/") t)) ;; insert newline at the end of files - require-final-newline t + ;; require-final-newline t ;; open read-only file buffers in view-mode ;; (enables niceties like `q' for quit) view-read-only t) @@ -359,27 +332,28 @@ This sets each user option VAR's value to the corresponding VALUE. (global-auto-revert-mode 1) ;; time and battery in mode-line -(csetq - display-time-default-load-average nil - display-time-format " %a %b %-e %-l:%M%P" - display-time-mail-icon '(image :type xpm - :file "gnus/gnus-pointer.xpm" - :ascent center) - display-time-use-mail-icon t) -(require 'time) -(display-time-mode) - -(csetq battery-mode-line-format " %p%% %t") -(require 'battery) -(display-battery-mode) - -(require 'fringe) -;; smaller fringe -;; (fringe-mode '(3 . 1)) -(fringe-mode nil) +(run-with-idle-timer 0.1 nil #'require 'time) +(with-eval-after-load 'time + (csetq + display-time-default-load-average nil + display-time-format " %a %b %-e %-l:%M%P" + display-time-mail-icon '(image :type xpm + :file "gnus/gnus-pointer.xpm" + :ascent center) + display-time-use-mail-icon t) + (display-time-mode)) + +(run-with-idle-timer 0.1 nil #'require 'battery) +(with-eval-after-load 'battery + (csetq battery-mode-line-format " %p%% %t") + (display-battery-mode)) + +;; (with-eval-after-load 'fringe +;; ;; smaller fringe +;; (fringe-mode '(3 . 1))) -(require 'winner) ;; enable winner-mode (C-h f winner-mode RET) +(require 'winner) (winner-mode 1) (with-eval-after-load 'compile @@ -408,6 +382,7 @@ This sets each user option VAR's value to the corresponding VALUE. (csetq ;; allow scrolling in Isearch isearch-allow-scroll t + isearch-lazy-count t ;; search for non-ASCII characters: i’d like non-ASCII characters such ;; as ‘’“”«»‹›áⓐ𝒶 to be selected when i search for their ASCII ;; counterpart. shoutout to @@ -461,6 +436,24 @@ This sets each user option VAR's value to the corresponding VALUE. auth-sources '("~/.authinfo.gpg") authinfo-hidden (regexp-opt '("password" "client-secret" "token"))) +;; info +(with-eval-after-load 'info + (add-to-list + 'Info-directory-list + (expand-file-name + (convert-standard-filename "info/") source-directory))) + +;; faces +(with-eval-after-load 'faces + (let* ((grey "#e7e7e7") + (darker-grey "#d9d9d9") + (box ;; `(:line-width -1 :style released-button) + 'unspecified)) + (set-face-attribute 'mode-line nil + :background grey :box box) + (set-face-attribute 'mode-line-inactive nil + :background darker-grey :box box))) + ;;; Useful utilities @@ -550,7 +543,7 @@ Make N (default: 1) copies of the current line or region." ;; evaling and macro-expanding (global-set-key (kbd "C-c e b") #'eval-buffer) (global-set-key (kbd "C-c e e") #'eval-last-sexp) -(global-set-key (kbd "C-c e p") #'pp-macroexpand-last-sexp) +(global-set-key (kbd "C-c e m") #'pp-macroexpand-last-sexp) (global-set-key (kbd "C-c e r") #'eval-region) ;; emacs things @@ -568,15 +561,12 @@ Make N (default: 1) copies of the current line or region." (global-set-key (kbd "C-c F d") #'delete-frame) ;; help/describe -(global-set-key (kbd "C-S-h C") #'describe-char) (global-set-key (kbd "C-S-h F") #'describe-face) ;; (global-set-key (kbd "C-x k") #'b/kill-current-buffer) ;; (global-set-key (kbd "C-x K") #'kill-buffer) -;; (global-set-key (kbd "C-x s") #'save-buffer) -;; (global-set-key (kbd "C-x S") #'save-some-buffers) -(define-key emacs-lisp-mode-map (kbd "<C-return>") #'b/add-elisp-section) +(define-key emacs-lisp-mode-map (kbd "C-<return>") #'b/add-elisp-section) (when (display-graphic-p) (global-unset-key (kbd "C-z"))) @@ -589,12 +579,11 @@ Make N (default: 1) copies of the current line or region." (expand-file-name (convert-standard-filename "lisp") user-emacs-directory)) -(when (featurep 'exwm) - (require 'bandali-exwm)) +;; (require 'bandali-exwm) (require 'bandali-org) -(require 'bandali-theme) +;; (require 'bandali-theme) ;; recently opened files (csetq recentf-max-saved-items 2000 @@ -602,9 +591,25 @@ Make N (default: 1) copies of the current line or region." (run-with-idle-timer 0.2 nil #'require 'recentf) (with-eval-after-load 'recentf ;; (add-to-list 'recentf-keep #'file-remote-p) - (recentf-mode)) + (recentf-mode) + + (defun b/recentf-open () + "Use `completing-read' to \\[find-file] a recent file." + (interactive) + (find-file + (completing-read "Find recent file: " recentf-list))) + (global-set-key (kbd "C-c f r") #'b/recentf-open)) (fido-mode 1) +(defun b/icomplete--fido-mode-setup () + "Customizations to `fido-mode''s minibuffer." + (when (and icomplete-mode (icomplete-simple-completing-p)) + (setq-local + ;; icomplete-compute-delay 0.1 + ;; icomplete-hide-common-prefix t + icomplete-separator " · " + completion-styles '(basic substring partial-completion flex)))) +(add-hook 'minibuffer-setup-hook #'b/icomplete--fido-mode-setup 1) (require 'bandali-eshell) @@ -710,7 +715,8 @@ Make N (default: 1) copies of the current line or region." ;; yanking (pasting) what I'd originally intended to. save-interprogram-paste-before-kill t) (with-eval-after-load 'simple - (column-number-mode 1)) + (column-number-mode 1) + (line-number-mode 1)) ;; save minibuffer history (require 'savehist) @@ -897,12 +903,6 @@ Make N (default: 1) copies of the current line or region." ;; highlight TODOs in buffers (global-hl-todo-mode)) -(add-to-list 'load-path (b/lisp "page-break-lines")) -(run-with-idle-timer 0.5 nil #'require 'page-break-lines) -(with-eval-after-load 'page-break-lines - (csetq page-break-lines-max-width fill-column) - (global-page-break-lines-mode)) - ;; expand-region (global-set-key (kbd "C-=") #'er/expand-region) @@ -946,18 +946,6 @@ Make N (default: 1) copies of the current line or region." (setq debbugs-gnu-current-suppress t) (debbugs-gnu debbugs-gnu-default-severities '("gnuzilla")))) -(global-set-key (kbd "C-c D G b") ; bug-guix - (lambda () - (interactive) - (setq debbugs-gnu-current-suppress t) - (debbugs-gnu debbugs-gnu-default-severities - '("guix")))) -(global-set-key (kbd "C-c D G p") ; guix-patches - (lambda () - (interactive) - (setq debbugs-gnu-current-suppress t) - (debbugs-gnu debbugs-gnu-default-severities - '("guix-patches")))) ;; url and url-cache (csetq @@ -1023,7 +1011,6 @@ Make N (default: 1) copies of the current line or region." (with-eval-after-load 'delight (delight 'auto-fill-function " f" "simple") (delight 'abbrev-mode "" "abbrev") - (delight 'page-break-lines-mode "" "page-break-lines") (delight 'mml-mode " mml" "mml") (delight 'yas-minor-mode "" "yasnippet")) diff --git a/.emacs.d/lisp/bandali-ebdb.el b/.emacs.d/lisp/bandali-ebdb.el index 4d21978..3d959c4 100644 --- a/.emacs.d/lisp/bandali-ebdb.el +++ b/.emacs.d/lisp/bandali-ebdb.el @@ -35,6 +35,7 @@ (with-eval-after-load 'ebdb (with-eval-after-load 'ebdb-complete ;; (csetq ebdb-complete-mail 'capf) + (csetq ebdb-completion-display-record nil) ; <87pn2kk2ig.fsf@ericabrahamsen.net> (ebdb-complete-enable)) (require 'ebdb-message) @@ -43,7 +44,7 @@ (csetq ebdb-gnus-window-size 0.3) (require 'ebdb-mua) - (csetq ebdb-mua-pop-up t)) + (csetq ebdb-mua-pop-up nil)) ;; (with-eval-after-load 'company-ebdb ;; (defun company-ebdb--post-complete (_) nil)) diff --git a/.emacs.d/lisp/bandali-erc.el b/.emacs.d/lisp/bandali-erc.el index ed27df3..bc0657a 100644 --- a/.emacs.d/lisp/bandali-erc.el +++ b/.emacs.d/lisp/bandali-erc.el @@ -40,6 +40,7 @@ erc-nick "bandali" erc-prompt "erc>" erc-prompt-for-password nil + erc-query-display 'buffer erc-rename-buffers t erc-server-reconnect-attempts 5 erc-server-reconnect-timeout 3) @@ -67,14 +68,14 @@ (declare-function erc-update-modules "erc") (erc-update-modules) - (set-face-attribute - 'erc-nick-default-face nil - ;; :weight 'semibold - ;; :background "#f2f2f2" - ;; :foreground "#222222" - :weight 'bold - :background "#f8f8f8" - :foreground "#6a6a6a") + ;; (set-face-attribute + ;; 'erc-nick-default-face nil + ;; ;; :weight 'semibold + ;; ;; :background "#f2f2f2" + ;; ;; :foreground "#222222" + ;; :weight 'bold + ;; :background "#f8f8f8" + ;; :foreground "#6a6a6a") ;; (set-face-attribute ;; 'erc-notice-face nil @@ -96,16 +97,16 @@ (csetq erc-pal-highlight-type 'nick erc-pals - '("aindilis" "blackbeard" "bremner" "~brettgilio?@*" "civodul" - "dto" "ggoes" "iank" "jrasata" "mplsCorwin" "quidam" "rwp" - "sachac" "sudoman" "technomancy")) + '("bremner" "^gopar" "^iank" "quidam" "^rwp" "sudoman" + "technomancy" "thomzane")) (with-eval-after-load 'erc-match (set-face-attribute 'erc-pal-face nil :foreground 'unspecified :weight 'unspecified :inherit 'erc-nick-default-face - :background (face-attribute 'font-lock-string-face :background))) + ;; :background (face-attribute 'font-lock-string-face :background) + :background "#ffffdf")) ;; erc-pcomplete (csetq erc-pcomplete-nick-postfix ",") diff --git a/.emacs.d/lisp/bandali-exwm.el b/.emacs.d/lisp/bandali-exwm.el index f94757d..99a186b 100644 --- a/.emacs.d/lisp/bandali-exwm.el +++ b/.emacs.d/lisp/bandali-exwm.el @@ -27,6 +27,8 @@ (add-to-list 'load-path (b/lisp "xelb")) (add-to-list 'load-path (b/lisp "exwm")) (require 'exwm) +(csetq ;; exwm-replace t + exwm-workspace-show-all-buffers t) ;; make class name the buffer name, truncating beyond 60 characters (defun b/exwm-rename-buffer () (interactive) @@ -58,15 +60,43 @@ around if needed." 0 (1+ exwm-workspace-current-index))) +(defun b/exwm-ws-prev () + "Switch to previous EXWM workspace, wrapping around if needed." + (interactive) + (exwm-workspace-switch-create + (b/exwm-ws-prev-index))) + +(defun b/exwm-ws-next () + "Switch to next EXWM workspace, wrapping around if needed." + (interactive) + (exwm-workspace-switch-create + (b/exwm-ws-next-index))) + ;; shorten 'C-c C-q' to 'C-q' (define-key exwm-mode-map [?\C-q] #'exwm-input-send-next-key) +;; scroll up/down/left/right on the echo area +(define-key minibuffer-inactive-mode-map [mouse-4] #'b/exwm-ws-prev) +(define-key minibuffer-inactive-mode-map [mouse-5] #'b/exwm-ws-next) +(define-key minibuffer-inactive-mode-map [mouse-6] #'b/exwm-ws-prev) +(define-key minibuffer-inactive-mode-map [mouse-7] #'b/exwm-ws-next) + +(defvar b/shifted-ws-names + '(0 \) 1 \! 2 \@ 3 \# 4 \$ + 5 \% 6 \^ 7 \& 8 \* 9 \() + "Mapping of shifted numbers on my keyboard.") + (csetq exwm-workspace-number 10 exwm-input-global-keys `(([?\s-R] . exwm-reset) + ([?\s-b] . exwm-workspace-switch-to-buffer) ([?\s-\\] . exwm-workspace-switch) ([?\s-\s] . dmenu) - ([?\S-\s-\s] . (lambda (command) + ;; ([?\s-\s] . (lambda () + ;; (interactive) + ;; (start-process-shell-command + ;; "rofi" nil "rofi -show run"))) + ([?\S-\s-\s] . (lambda (command) ; doesn't work in X windows (interactive (list (read-shell-command "➜ "))) (start-process-shell-command @@ -74,6 +104,10 @@ around if needed." ([s-return] . (lambda () (interactive) (start-process "" nil "urxvt"))) + ([S-s-return] . (lambda () + (interactive) + (start-process "" nil "urxvt" + "-name" "floating"))) ([?\C-\s-\s] . counsel-linux-app) ([?\M-\s-\s] . (lambda () (interactive) @@ -87,18 +121,32 @@ around if needed." ([?\s-J] . windmove-swap-states-down) ([?\s-K] . windmove-swap-states-up) ([?\s-L] . windmove-swap-states-right) + ([?\s-N ?d] . (lambda () + (interactive) + (start-process + "" nil "dunstctl" "close"))) + ([?\s-N ?D] . (lambda () + (interactive) + (start-process + "" nil "dunstctl" "close-all"))) + ([?\s-N ?h] . (lambda () + (interactive) + (start-process + "" nil "dunstctl" "history-pop"))) + ([?\s-N return] . (lambda () + (interactive) + (start-process + "" nil "dunstctl" "context"))) ([?\M-\s-h] . shrink-window-horizontally) ([?\M-\s-l] . enlarge-window-horizontally) ([?\M-\s-k] . shrink-window) ([?\M-\s-j] . enlarge-window) - ([?\s-\[] . (lambda () - (interactive) - (exwm-workspace-switch-create - (b/exwm-ws-prev-index)))) - ([?\s-\]] . (lambda () - (interactive) - (exwm-workspace-switch-create - (b/exwm-ws-next-index)))) + ([?\s-\[] . b/exwm-ws-prev) + ([?\s-\]] . b/exwm-ws-next) + ([mode-line mouse-4] . b/exwm-ws-prev) ; up + ([mode-line mouse-5] . b/exwm-ws-next) ; down + ([mode-line mouse-6] . b/exwm-ws-prev) ; left + ([mode-line mouse-7] . b/exwm-ws-next) ; right ([?\s-{] . (lambda () (interactive) (exwm-workspace-move-window @@ -113,7 +161,16 @@ around if needed." (interactive) (exwm-workspace-switch-create ,i)))) (number-sequence 0 (1- exwm-workspace-number))) - ([?\s-t] . exwm-floating-toggle-floating) + ,@(mapcar + (lambda (i) + `(,(kbd (format "s-%s" + (plist-get b/shifted-ws-names i))) + . + (lambda () + (interactive) + (exwm-workspace-move-window ,i)))) + (number-sequence 0 (1- exwm-workspace-number))) + ([?\s-F] . exwm-floating-toggle-floating) ([?\s-f] . exwm-layout-toggle-fullscreen) ([?\s-W] . (lambda () (interactive) @@ -160,6 +217,14 @@ around if needed." (lambda () (interactive) (start-process "" nil "mpc" "next"))) + ([XF86MonBrightnessDown] . + (lambda () + (interactive) + (start-process "" nil "light" "-U" "5"))) + ([XF86MonBrightnessUp] . + (lambda () + (interactive) + (start-process "" nil "light" "-A" "5"))) ([XF86ScreenSaver] . (lambda () (interactive) @@ -199,15 +264,20 @@ around if needed." ([?\C-g] . [escape]))) (require 'exwm-manage) +(csetq + exwm-manage-configurations + '(((equal exwm-instance-name "floating") + floating t + floating-mode-line nil))) (add-hook 'exwm-manage-finish-hook (lambda () (when exwm-class-name (cond - ((member exwm-class-name '("IceCat" "Iceweasel")) + ((member exwm-class-name '("Abrowser" "IceCat" "Iceweasel")) (exwm-input-set-local-simulation-keys `(,@exwm-input-simulation-keys ([?\C-\S-d] . [?\C-d])))) - ((string= exwm-class-name "URxvt") + ((member exwm-class-name '("URxvt" "Mate-terminal")) (exwm-input-set-local-simulation-keys '(([?\C-c ?\C-c] . [?\C-c]) ([?\C-c ?\C-u] . [?\C-u])))) @@ -217,8 +287,19 @@ around if needed." ([?\C-n] . [C-down])))))))) (require 'exwm-randr) +(csetq + exwm-randr-workspace-monitor-plist + '(0 "eDP-1" + 1 "eDP-1" 2 "eDP-1" 3 "eDP-1" + 4 "eDP-1" 5 "eDP-1" 6 "eDP-1" + 7 "HDMI-1" 8 "HDMI-1" 9 "HDMI-1")) +;; (add-hook +;; 'exwm-randr-screen-change-hook +;; (lambda () +;; (start-process-shell-command +;; "xrandr" nil +;; "xrandr --output HDMI-1 --mode 1280x720 --above eDP-1 --auto"))) (exwm-randr-enable) -(csetq exwm-randr-workspace-monitor-plist '(1 "VGA-1")) (require 'exwm-systemtray) (exwm-systemtray-enable) diff --git a/.emacs.d/lisp/bandali-gnus.el b/.emacs.d/lisp/bandali-gnus.el index 671a1cb..fdb1e7a 100644 --- a/.emacs.d/lisp/bandali-gnus.el +++ b/.emacs.d/lisp/bandali-gnus.el @@ -75,8 +75,6 @@ (list ".*<\\(.*\\)\\.libreplanet\\.org>.*" "l.\\1") ;; iana (e.g. tz-announce) (list ".*<\\(.*\\)\\.iana\\.org>.*" "l.\\1") - ;; orbitalfox (e.g. gemini) - (list ".*<\\(.*\\)\\.lists\\.orbitalfox\\.eu>.*" "l.\\1") ;; haskell (list ".*<\\(.*\\)\\.haskell\\.org>.*" "l.\\1") ;; *.lists.sr.ht, omitting one dot if present @@ -85,6 +83,7 @@ ;; webmasters (from "webmasters\\(-comment\\)?@gnu\\.org" "webmasters") ;; other + ("subject" "nagios-fsf:.*" "nagios-fsf") (list ".*atreus.freelists.org" "l.atreus") (list ".*deepspec.lists.cs.princeton.edu" "l.deepspec") ;; (list ".*haskell-art.we.lurk.org" "l.haskell.art") ;d @@ -133,146 +132,22 @@ (nnimap-user "amin.bandali"))) gnus-message-archive-group "nnimap+gnu:INBOX" gnus-parameters - '(("l\\.atreus" - (to-address . "atreus@freelists.org") - (to-list . "atreus@freelists.org")) - ("l\\.deepspec" + '(("l\\.deepspec" (to-address . "deepspec@lists.cs.princeton.edu") (to-list . "deepspec@lists.cs.princeton.edu") (list-identifier . "\\[deepspec\\]")) - ("l\\.emacs-devel" - (to-address . "emacs-devel@gnu.org") - (to-list . "emacs-devel@gnu.org")) - ("l\\.help-gnu-emacs" - (to-address . "help-gnu-emacs@gnu.org") - (to-list . "help-gnu-emacs@gnu.org")) - ("l\\.info-gnu-emacs" - (to-address . "info-gnu-emacs@gnu.org") - (to-list . "info-gnu-emacs@gnu.org")) - ("l\\.emacs-orgmode" - (to-address . "emacs-orgmode@gnu.org") - (to-list . "emacs-orgmode@gnu.org") - (list-identifier . "\\[O\\]")) - ("l\\.emacs-tangents" - (to-address . "emacs-tangents@gnu.org") - (to-list . "emacs-tangents@gnu.org")) - ("l\\.emacsconf-committee" - (to-address . "emacsconf-committee@gnu.org") - (to-list . "emacsconf-committee@gnu.org")) - ("l\\.emacsconf-discuss" - (to-address . "emacsconf-discuss@gnu.org") - (to-list . "emacsconf-discuss@gnu.org")) - ("l\\.emacsconf-org" - (to-address . "emacsconf-org@gnu.org") - (to-list . "emacsconf-org@gnu.org")) - ("l\\.emacsconf-org-private" - (to-address . "emacsconf-org-private@gnu.org") - (to-list . "emacsconf-org-private@gnu.org")) - ("l\\.emacsconf-register" - (to-address . "emacsconf-register@gnu.org") - (to-list . "emacsconf-register@gnu.org")) - ("l\\.emacsconf-submit" - (to-address . "emacsconf-submit@gnu.org") - (to-list . "emacsconf-submit@gnu.org")) ("l\\.fencepost-users" (to-address . "fencepost-users@gnu.org") (to-list . "fencepost-users@gnu.org") (list-identifier . "\\[Fencepost-users\\]")) - ("l\\.gnewsense-art" - (to-address . "gnewsense-art@nongnu.org") - (to-list . "gnewsense-art@nongnu.org") - (list-identifier . "\\[gNewSense-art\\]")) - ("l\\.gnewsense-dev" - (to-address . "gnewsense-dev@nongnu.org") - (to-list . "gnewsense-dev@nongnu.org") - (list-identifier . "\\[Gnewsense-dev\\]")) - ("l\\.gnewsense-users" - (to-address . "gnewsense-users@nongnu.org") - (to-list . "gnewsense-users@nongnu.org") - (list-identifier . "\\[gNewSense-users\\]")) - ("l\\.gnunet-developers" - (to-address . "gnunet-developers@gnu.org") - (to-list . "gnunet-developers@gnu.org") - (list-identifier . "\\[GNUnet-developers\\]")) - ("l\\.help-gnunet" - (to-address . "help-gnunet@gnu.org") - (to-list . "help-gnunet@gnu.org") - (list-identifier . "\\[Help-gnunet\\]")) - ("l\\.bug-gnuzilla" - (to-address . "bug-gnuzilla@gnu.org") - (to-list . "bug-gnuzilla@gnu.org") - (list-identifier . "\\[Bug-gnuzilla\\]")) - ("l\\.gnuzilla-dev" - (to-address . "gnuzilla-dev@gnu.org") - (to-list . "gnuzilla-dev@gnu.org") - (list-identifier . "\\[Gnuzilla-dev\\]")) - ("l\\.guile-devel" - (to-address . "guile-devel@gnu.org") - (to-list . "guile-devel@gnu.org")) - ("l\\.guile-user" - (to-address . "guile-user@gnu.org") - (to-list . "guile-user@gnu.org")) - ("l\\.guix-devel" - (to-address . "guix-devel@gnu.org") - (to-list . "guix-devel@gnu.org")) - ("l\\.help-guix" - (to-address . "help-guix@gnu.org") - (to-list . "help-guix@gnu.org")) - ("l\\.info-guix" - (to-address . "info-guix@gnu.org") - (to-list . "info-guix@gnu.org")) - ("l\\.savannah-hackers-public" - (to-address . "savannah-hackers-public@gnu.org") - (to-list . "savannah-hackers-public@gnu.org")) - ("l\\.savannah-users" - (to-address . "savannah-users@gnu.org") - (to-list . "savannah-users@gnu.org")) - ("l\\.www-commits" - (to-address . "www-commits@gnu.org") - (to-list . "www-commits@gnu.org")) - ("l\\.www-discuss" - (to-address . "www-discuss@gnu.org") - (to-list . "www-discuss@gnu.org")) - ("l\\.haskell-art" - (to-address . "haskell-art@we.lurk.org") - (to-list . "haskell-art@we.lurk.org") - (list-identifier . "\\[haskell-art\\]")) ("l\\.haskell-cafe" (to-address . "haskell-cafe@haskell.org") (to-list . "haskell-cafe@haskell.org") (list-identifier . "\\[Haskell-cafe\\]")) - ("l\\.notmuch" - (to-address . "notmuch@notmuchmail.org") - (to-list . "notmuch@notmuchmail.org")) - ("l\\.parabola-dev" - (to-address . "dev@lists.parabola.nu") - (to-list . "dev@lists.parabola.nu") - (list-identifier . "\\[Dev\\]")) - ("l\\.~bandali\\.public-inbox" - (to-address . "~bandali/public-inbox@lists.sr.ht") - (to-list . "~bandali/public-inbox@lists.sr.ht")) - ("l\\.~sircmpwn\\.free-writers-club" - (to-address . "~sircmpwn/free-writers-club@lists.sr.ht") - (to-list . "~sircmpwn/free-writers-club@lists.sr.ht")) - ("l\\.~sircmpwn\\.srht-admins" - (to-address . "~sircmpwn/sr.ht-admins@lists.sr.ht") - (to-list . "~sircmpwn/sr.ht-admins@lists.sr.ht")) - ("l\\.~sircmpwn\\.srht-announce" - (to-address . "~sircmpwn/sr.ht-announce@lists.sr.ht") - (to-list . "~sircmpwn/sr.ht-announce@lists.sr.ht")) - ("l\\.~sircmpwn\\.srht-dev" - (to-address . "~sircmpwn/sr.ht-dev@lists.sr.ht") - (to-list . "~sircmpwn/sr.ht-dev@lists.sr.ht")) - ("l\\.~sircmpwn\\.srht-discuss" - (to-address . "~sircmpwn/sr.ht-discuss@lists.sr.ht") - (to-list . "~sircmpwn/sr.ht-discuss@lists.sr.ht")) - ("webmasters" - (to-address . "webmasters@gnu.org") - (to-list . "webmasters@gnu.org")) ("gnu.*" (gcc-self . t)) - ("l\\." - (subscribed . t)) + ;; ("l\\." + ;; (subscribed . t)) ("nnimap\\+uwaterloo:.*" (gcc-self . t))) ;; nnimap-record-commands t @@ -310,8 +185,6 @@ (add-hook 'gnus-group-mode-hook #'gnus-topic-mode) (add-hook 'gnus-group-mode-hook #'gnus-agent-mode)) ;; global key bindings -(global-set-key (kbd "s-m") #'gnus-plugged) -(global-set-key (kbd "s-M") #'gnus-unplugged) (global-set-key (kbd "C-c m") #'gnus-plugged) (global-set-key (kbd "C-c M") #'gnus-unplugged) @@ -388,14 +261,14 @@ (defvar b/shemshak-signature "Amin Bandali https://shemshak.org/~bandali") (defvar b/uwaterloo-signature "Amin Bandali, MMath -https://bndl.org") - (defvar b/csc-signature "Amin Bandali (https://bndl.org) +https://shemshak.org/~bandali") + (defvar b/csc-signature "Amin Bandali (https://shemshak.org/~bandali) Systems Committee <syscom@csclub.uwaterloo.ca> Computer Science Club of the University of Waterloo") (defvar b/sfl-signature "Amin Bandali Free Software Consultant Savoir-faire Linux -GNU Jami: bandali") +jami:bandali") (csetq gnus-message-replysign t gnus-posting-styles @@ -403,8 +276,6 @@ GNU Jami: bandali") (address "bandali@gnu.org")) ("nnimap\\+gnu:l\\..*" (signature nil)) - ("nnimap\\+gnu:.*" - (organization "GNU")) ((header "subject" "ThankCRM") (to "webmasters-comment@gnu.org") (body "") @@ -429,14 +300,15 @@ GNU Jami: bandali") (address "amin.bandali@savoirfairelinux.com") (signature b/sfl-signature) (gcc "nnimap+sfl:Sent") - (eval (setq-local b/sfl-p t)))))) + ;; (eval (setq-local b/sfl-p t)) + )))) ;; hooks -(with-eval-after-load 'gnus - (add-hook 'gnus-message-setup-hook - (lambda () - (unless (or (mml-secure-is-encrypted-p) - b/sfl-p) - (mml-secure-message-sign))))) +;; (with-eval-after-load 'gnus +;; (add-hook 'gnus-message-setup-hook +;; (lambda () +;; (unless (or (mml-secure-is-encrypted-p) +;; b/sfl-p) +;; (mml-secure-message-sign))))) (with-eval-after-load 'gnus-topic (csetq gnus-topic-line-format "%i[ %A: %(%{%n%}%) ]%v\n")) diff --git a/.emacs.d/lisp/page-break-lines b/.emacs.d/lisp/page-break-lines deleted file mode 160000 -Subproject f8c4cd7fc67638ae4113551dcffdf87fcd252d9 diff --git a/.emacs.d/lisp/refinery-theme b/.emacs.d/lisp/refinery-theme deleted file mode 160000 -Subproject 761ecca31d91cf55addab93d44aae1066ea77b0 |