;; Not necessary when using straight.el
;; (C-h v straight-package-neutering-mode RET)
-(comment
+(when (and
+ (not (featurep 'straight))
+ (version< emacs-version "27"))
(setq package-enable-at-startup nil)
;; (package-initialize)
)
(exec-path-from-shell-copy-env "SSH_AGENT_PID")
(exec-path-from-shell-copy-env "SSH_AUTH_SOCK"))
-
;; only one custom theme at a time
(comment
(defadvice load-theme (before clear-previous-themes activate)
("C-c F m" . make-frame-command)
("C-c F d" . delete-frame)
- ("C-c F D" . delete-other-frames)
+ ("C-c F D" . server-edit)
("C-c o" . other-window)
(nconc magit-section-initial-visibility-alist
'(([unpulled status] . show)
([unpushed status] . show)))
+ :custom (magit-display-buffer-function #'magit-display-buffer-fullframe-status-v1)
:custom-face (magit-diff-file-heading ((t (:weight normal)))))
;; recently opened files
;; highlight uncommitted changes in the left fringe
(use-package diff-hl
+ :defer 0.6
:config
(setq diff-hl-draw-borders nil)
(global-diff-hl-mode)
(use-package multi-term
:defer 0.6
- :bind (("C-c a s m" . multi-term-dedicated-toggle)
+ :bind (("C-c a s m m" . multi-term)
+ ("C-c a s m d" . multi-term-dedicated-toggle)
+ ("C-c a s m p" . multi-term-prev)
+ ("C-c a s m n" . multi-term-next)
:map term-mode-map
("C-c C-j" . term-char-mode)
:map term-raw-map
("C-c C-j" . term-line-mode))
:config
- (setq multi-term-program "/bin/screen"
+ (setq multi-term-program "screen"
+ multi-term-program-switches (concat "-c"
+ (getenv "XDG_CONFIG_HOME")
+ "/screen/screenrc")
;; TODO: add separate bindings for connecting to existing
;; session vs. always creating a new one
multi-term-dedicated-select-after-open-p t
'(("C-c C-c" . term-interrupt-subjob)
("C-c C-e" . term-send-esc)
("C-k" . kill-line)
- ("C-y" . term-paste)
+ ;; ("C-y" . term-paste)
+ ("C-y" . term-send-raw)
("M-f" . term-send-forward-word)
("M-b" . term-send-backward-word)
("M-p" . term-send-up)
("M-n" . term-send-down)
+ ("M-j" . term-send-raw-meta)
+ ("M-y" . term-send-raw-meta)
+ ("M-/" . term-send-raw-meta)
+ ("M-0" . term-send-raw-meta)
+ ("M-1" . term-send-raw-meta)
+ ("M-2" . term-send-raw-meta)
+ ("M-3" . term-send-raw-meta)
+ ("M-4" . term-send-raw-meta)
+ ("M-5" . term-send-raw-meta)
+ ("M-6" . term-send-raw-meta)
+ ("M-7" . term-send-raw-meta)
+ ("M-8" . term-send-raw-meta)
+ ("M-9" . term-send-raw-meta)
("<C-backspace>" . term-send-backward-kill-word)
("<M-DEL>" . term-send-backward-kill-word)
("M-d" . term-send-delete-word)
("M-," . term-send-raw)
("M-." . comint-dynamic-complete))
term-unbind-key-alist
- '("C-z" "C-x" "C-c" "C-h" "C-y" "<ESC>")))
+ '("C-z" "C-x" "C-c" "C-h"
+ ;; "C-y"
+ "<ESC>")))
(use-package page-break-lines
:defer 0.5
(nnimap-address "127.0.0.1")
(nnimap-server-port 143)
(nnimap-authenticator plain)
- (nnimap-user "amin@bndl.org"))
- (nnimap "uwaterloo"
+ (nnimap-user "amin@bndl.local"))
+ (nnimap "uw"
(nnimap-stream plain)
(nnimap-address "127.0.0.1")
(nnimap-server-port 143)
(nnimap-authenticator plain)
- (nnimap-user "abandali@uwaterloo.ca"))
- (nnimap "csclub"
+ (nnimap-user "abandali@uw.local"))
+ (nnimap "csc"
(nnimap-stream plain)
(nnimap-address "127.0.0.1")
(nnimap-server-port 143)
(nnimap-authenticator plain)
- (nnimap-user "abandali@csclub.uw")))
+ (nnimap-user "abandali@csc.uw.local")))
gnus-message-archive-group "nnimap+amin:Sent"
gnus-parameters
'(("gnu\\.deepspec"
(to "webmasters-comment@gnu.org")
(body "Added to 2019supporters.html.\n\nMoving to campaigns.\n\n-amin\n")
(eval (setq a/message-cite-say-hi nil)))
- ("nnimap\\+uwaterloo:.*"
+ ("nnimap\\+uw:.*"
(address "abandali@uwaterloo.ca")
- (gcc "\"nnimap+uwaterloo:Sent Items\""))
- ("nnimap\\+csclub:.*"
+ (gcc "\"nnimap+uw:Sent Items\""))
+ ("nnimap\\+csc:.*"
(address "abandali@csclub.uwaterloo.ca")
- (gcc "nnimap+csclub:Sent")))))
+ (gcc "nnimap+csc:Sent")))))
(use-feature gnus-topic
:hook (gnus-group-mode . gnus-topic-mode)
:config
(setq gnus-permanently-visible-groups "\\(:INBOX$\\|:gnu$\\)"))
+(use-feature gnus-win
+ :config
+ (setq gnus-use-full-window nil))
+
+(use-feature gnus-dired
+ :commands gnus-dired-mode
+ :init
+ (add-hook 'dired-mode-hook 'gnus-dired-mode))
+
(use-feature mm-decode
:config
(setq mm-discouraged-alternatives '("text/html" "text/richtext")))