;; time and battery in mode-line
(use-feature time
+ :disabled
:demand
:config
(display-time-mode)
(display-time-format "%a %b %-e, %-l:%M%P"))
(use-feature battery
+ :disabled
:demand
:config
(display-battery-mode)
:custom
((epg-gpg-program (executable-find "gpg"))))
+(use-feature auth-source
+ :custom
+ (auth-sources '("~/.authinfo.gpg"))
+ (authinfo-hidden (regexp-opt '("password" "client-secret" "token"))))
+
\f
;;; General bindings
;;; Essential packages
(use-package exwm
+ :disabled
:demand
:config
;; make class name the buffer name, truncating beyond 60 characters
(use-feature dired
:config
- (setq dired-listing-switches "-alh"
+ (setq dired-dwim-target t
+ dired-listing-switches "-alh"
ls-lisp-use-insert-directory-program nil)
;; easily diff 2 marked files
(use-package alloy-mode
:straight (:host github :repo "dwwmmn/alloy-mode")
:mode "\\.als\\'"
- :config (setq alloy-basic-offset 2))
+ :config (setq alloy-basic-offset 2)
+ :hook (alloy-mode . (lambda () (setq-local indent-tabs-mode nil))))
(eval-when-compile (defvar lean-mode-map))
(use-package lean-mode
- :straight (:host github :repo "leanprover/lean-mode"
- :fork (:repo "notbandali/lean-mode" :branch "remove-cl"))
:defer 0.4
:bind (:map lean-mode-map
("S-SPC" . company-complete))
(set-face-attribute 'mode-line-inactive nil :underline line)
(set-face-attribute 'mode-line nil :box nil)
(set-face-attribute 'mode-line-inactive nil :box nil)
- (set-face-attribute 'mode-line-inactive nil :background "#eeeeee")) ; d3d7cf
+ (set-face-attribute 'mode-line-inactive nil :background "#e1e1e1")) ; d3d7cf
(moody-replace-mode-line-buffer-identification)
(moody-replace-vc-mode))
+(use-package mini-modeline
+ :disabled
+ :demand
+ :config (mini-modeline-mode))
+
(defvar b/org-mode-font-lock-keywords
'(("[ \t]*\\(#\\+\\(BEGIN\\|END\\|begin\\|end\\)_\\(\\S-+\\)\\)[ \t]*\\([^\n:]*\\)"
(1 '(:foreground "#5a5b5a" :background "#292b2b") t) ; directive
(load-theme 'tangomod t)
;; (sml/apply-theme 'automatic)
(font-lock-remove-keywords
- 'org-mode b/org-mode-font-lock-keywords)
- (exwm-systemtray--refresh))
+ 'org-mode b/org-mode-font-lock-keywords))
(defun b/lights-off ()
"Go dark."
(load-theme 'doom-one t)
;; (sml/apply-theme 'automatic)
(font-lock-add-keywords
- 'org-mode b/org-mode-font-lock-keywords t)
- (exwm-systemtray--refresh))
+ 'org-mode b/org-mode-font-lock-keywords t))
(bind-keys
("C-c t d" . b/lights-off)
:defer 0.5
:config
(typo-global-mode 1)
- :hook (((text-mode erc-mode) . typo-mode)
- (tex-mode . (lambda ()(typo-mode -1)))))
+ :hook (((text-mode erc-mode web-mode) . typo-mode)
+ (tex-mode . (lambda ()(typo-mode -1)))))
;; highlight TODOs in buffers
(use-package hl-todo
:defer 0.5
:after eshell
:config
- (defvar user-@-host (concat (user-login-name) "@" (system-name) " "))
+ (defvar user-@-host (concat (user-login-name) "@" (system-name) ":"))
(defun +eshell/prompt ()
- (let ((base/dir (shrink-path-prompt default-directory)))
- (concat (propertize user-@-host 'face 'default)
- (propertize (car base/dir)
- 'face 'font-lock-comment-face)
- (propertize (cdr base/dir)
- 'face 'font-lock-constant-face)
- (propertize "> " 'face 'default))))
- (setq eshell-prompt-regexp (concat user-@-host ".*> ")
+ (concat (propertize user-@-host 'face 'default)
+ (propertize (abbreviate-file-name default-directory)
+ 'face 'font-lock-comment-face)
+ (propertize "\n" 'face 'default)
+ (if (= (user-uid) 0)
+ (propertize "#" 'face 'red)
+ (propertize "$" 'face 'default))
+ (propertize " " 'face 'default)))
+ (setq eshell-prompt-regexp "\\(.*\n\\)*[$#] "
eshell-prompt-function #'+eshell/prompt))
(use-package eshell-up
;; (use-package fill-column-indicator)
(use-package emojify
+ :disabled
:hook (erc-mode . emojify-mode))
(use-feature window
:config
(eosd-start))
+(use-package nnreddit
+ :disabled
+ :demand
+ :after gnus
+ :custom
+ (nnreddit-python-command "python3"))
+
\f
;;; Email (with Gnus)
gnus-select-method '(nnnil "")
gnus-secondary-select-methods
'((nnimap "shemshak"
- (nnimap-stream plain)
- (nnimap-address "127.0.0.1")
- (nnimap-server-port 143)
- (nnimap-authenticator plain)
- (nnimap-user "amin@shemshak.local"))
+ (nnimap-stream plain)
+ (nnimap-address "127.0.0.1")
+ (nnimap-server-port 143)
+ (nnimap-authenticator plain)
+ (nnimap-user "amin@shemshak.local"))
(nnimap "gnu"
- (nnimap-stream plain)
- (nnimap-address "127.0.0.1")
- (nnimap-server-port 143)
- (nnimap-authenticator plain)
- (nnimap-user "bandali@gnu.local")
- (nnimap-inbox "INBOX")
- (nnimap-split-methods 'nnimap-split-fancy)
- (nnimap-split-fancy (|
- ;; (: gnus-registry-split-fancy-with-parent)
- ;; (: gnus-group-split-fancy "INBOX" t "INBOX")
- ;; gnu
- (list ".*<\\(.*\\)\\.\\(non\\)?gnu\\.org>.*" "l.\\1")
- ;; *.lists.sr.ht, omitting one dot if present
- ;; add more \\.?\\([^.]*\\) if needed
- (list ".*<~\\(.*\\)/\\([^.]*\\)\\.?\\([^.]*\\)\\.lists.sr.ht>.*" "l.~\\1.\\2\\3")
- ;; webmasters
- (from "webmasters\\(-comment\\)?@gnu\\.org" "webmasters")
- ;; other
- (list ".*atreus.freelists.org" "l.atreus")
- (list ".*deepspec.lists.cs.princeton.edu" "l.deepspec")
- ;; (list ".*haskell-art.we.lurk.org" "l.haskell.art") ;d
- (list ".*haskell-cafe.haskell.org" "l.haskell-cafe")
- ;; (list ".*notmuch.notmuchmail.org" "l.notmuch") ;u
- ;; (list ".*dev.lists.parabola.nu" "l.parabola-dev") ;u
- ;; ----------------------------------
- ;; legend: (u)nsubscribed | (d)ead
- ;; ----------------------------------
- ;; otherwise, leave mail in INBOX
- "INBOX")))
+ (nnimap-stream plain)
+ (nnimap-address "127.0.0.1")
+ (nnimap-server-port 143)
+ (nnimap-authenticator plain)
+ (nnimap-user "bandali@gnu.local")
+ (nnimap-inbox "INBOX")
+ (nnimap-split-methods 'nnimap-split-fancy)
+ (nnimap-split-fancy (|
+ ;; (: gnus-registry-split-fancy-with-parent)
+ ;; (: gnus-group-split-fancy "INBOX" t "INBOX")
+ ;; gnu
+ (list ".*<\\(.*\\)\\.\\(non\\)?gnu\\.org>.*" "l.\\1")
+ ;; *.lists.sr.ht, omitting one dot if present
+ ;; add more \\.?\\([^.]*\\) if needed
+ (list ".*<~\\(.*\\)/\\([^.]*\\)\\.?\\([^.]*\\)\\.lists.sr.ht>.*" "l.~\\1.\\2\\3")
+ ;; webmasters
+ (from "webmasters\\(-comment\\)?@gnu\\.org" "webmasters")
+ ;; other
+ (list ".*atreus.freelists.org" "l.atreus")
+ (list ".*deepspec.lists.cs.princeton.edu" "l.deepspec")
+ ;; (list ".*haskell-art.we.lurk.org" "l.haskell.art") ;d
+ (list ".*haskell-cafe.haskell.org" "l.haskell-cafe")
+ ;; (list ".*notmuch.notmuchmail.org" "l.notmuch") ;u
+ ;; (list ".*dev.lists.parabola.nu" "l.parabola-dev") ;u
+ ;; ----------------------------------
+ ;; legend: (u)nsubscribed | (d)ead
+ ;; ----------------------------------
+ ;; otherwise, leave mail in INBOX
+ "INBOX")))
(nnimap "uw"
(nnimap-stream plain)
(nnimap-address "127.0.0.1")
(nnimap-server-port 143)
(nnimap-authenticator plain)
(nnimap-user "abandali@csc.uw.local")))
- gnus-message-archive-group "nnimap+shemshak:Sent"
+ gnus-message-archive-group "nnimap+gnu:INBOX"
gnus-parameters
'(("l\\.atreus"
(to-address . "atreus@freelists.org")
https://csclub.uwaterloo.ca/~abandali")
(setq gnus-posting-styles
'((".*"
+ (address "bandali@gnu.org")
+ (signature b/gnu-signature)
+ (eval (set (make-local-variable 'message-user-fqdn) "fencepost.gnu.org")))
+ ("nnimap\\+shemshak:.*"
(address "amin@shemshak.org")
(body "\nBest,\n")
(signature b/signature)
+ (gcc "nnimap+shemshak:Sent")
(eval (setq b/message-cite-say-hi t)))
- ("nnimap\\+gnu:.*"
- (address "bandali@gnu.org")
- (signature b/gnu-signature)
- (eval (set (make-local-variable 'message-user-fqdn) "fencepost.gnu.org")))
((header "subject" "ThankCRM")
(to "webmasters-comment@gnu.org")
(body "")
("nnimap\\+uw:INBOX"
(gcc "\"nnimap+uw:Sent Items\""))
("nnimap\\+csc:.*"
- (address "abandali@csclub.uwaterloo.ca")
+ (address "bandali@csclub.uwaterloo.ca")
(signature b/csc-signature)
(gcc "nnimap+csc:Sent")))))
message-subscribed-address-functions
'(gnus-find-subscribed-addresses)
message-dont-reply-to-names
- "\\(\\(\\(amin\\|mab\\)@shemshak\\.org\\)\\|\\(amin@bndl\\.org\\)\\|\\(.*@aminb\\.org\\)\\|\\(\\(bandali\\|mab\\|aminb?\\)@gnu\\.org\\)\\|\\(\\(a\\(min\\.\\)?\\)?bandali@uwaterloo\\.ca\\)\\|\\(abandali@csclub\\.uwaterloo\\.ca\\)\\)")
+ "\\(\\(\\(amin\\|mab\\)@shemshak\\.org\\)\\|\\(.*@aminb\\.org\\)\\|\\(\\(bandali\\|mab\\|aminb?\\)@gnu\\.org\\)\\|\\(a?bandali@\\(csclub\\.\\)?uwaterloo\\.ca\\)\\)")
(require 'company-ebdb)
:hook (;; (message-setup . mml-secure-message-sign-pgpmime)
(message-mode . flyspell-mode)
(use-feature ebdb-mua
:demand
:after ebdb
- :custom (ebdb-mua-pop-up nil))
+ :custom (ebdb-mua-pop-up t))
;; (use-package ebdb-message
;; :after ebdb)