,@args))
#+end_src
+While at it, let's exclude =straight.el='s build from recentf:
+
+#+begin_src emacs-lisp
+(with-eval-after-load 'recentf
+ (add-to-list 'recentf-exclude
+ (expand-file-name "~/.emacs.d/straight/build/")))
+#+end_src
+
Also, here's a useful function for reloading the init file (useful
after running =straight-check-all=:
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
t)
(require 'ox-beamer))
+
+(use-feature ox-extra
+ :config
+ (ox-extras-activate '(latex-header-blocks ignore-headlines)))
#+end_src
**** asynchronous tangle
([S-down] . ivy-next-history-element)
("DEL" . ivy-backward-delete-char))
:config
- (setq ivy-wrap t)
+ (setq ivy-wrap t
+ ivy-height 14
+ ivy-use-virtual-buffers t
+ ivy-virtual-abbreviate 'abbreviate
+ ivy-count-format "%d/%d ")
(ivy-mode 1)
;; :custom-face
;; (ivy-minibuffer-match-face-2 ((t (:background "#e99ce8" :weight semi-bold))))
:after ivy
:bind (([remap execute-extended-command] . counsel-M-x)
([remap find-file] . counsel-find-file)
- ("s-r" . counsel-recentf)
("C-c x" . counsel-M-x)
("C-c f ." . counsel-find-file)
+ ("C-c f l" . counsel-find-library)
:map minibuffer-local-map
("C-r" . counsel-minibuffer-history))
:config
(defalias 'locate #'counsel-locate))
#+end_src
+*** COMMENT Helm
+
+#+begin_src emacs-lisp
+(use-package helm
+ :commands (helm-M-x helm-mini helm-resume)
+ :bind (("M-x" . helm-M-x)
+ ("M-y" . helm-show-kill-ring)
+ ("C-x b" . helm-mini)
+ ("C-x C-b" . helm-buffers-list)
+ ("C-x C-f" . helm-find-files)
+ ("C-h r" . helm-info-emacs)
+ ("s-r" . helm-recentf)
+ ("C-s-r" . helm-resume)
+ :map helm-map
+ ("<tab>" . helm-execute-persistent-action)
+ ("C-i" . helm-execute-persistent-action) ; Make TAB work in terminals
+ ("C-z" . helm-select-action)) ; List actions
+ :config (helm-mode 1))
+#+end_src
+
*** eshell
#+begin_src emacs-lisp
(use-package guix)
#+end_src
+** COMMENT TeX
+
+#+begin_src emacs-lisp
+(use-package auctex
+ :custom
+ (font-latex-fontify-sectioning 'color))
+#+end_src
+
* Emacs enhancements
:PROPERTIES:
:CUSTOM_ID: emacs-enhancements
org-ref-pdf-directory "~/usr/org/bibtex-pdfs/"))
#+end_src
+** slack
+
+Not an "Emacs enhancement", but just so that I don't have to use the
+proprietary web interface. Needed for interacting with the URA(s)
+this summer.
+
+#+begin_src emacs-lisp
+(use-package slack
+ :commands (slack-start)
+ :init
+ (eval-when-compile ; silence the byte-compiler
+ (defvar url-http-data nil)
+ (defvar url-http-extra-headers nil)
+ (defvar url-http-method nil)
+ (defvar url-callback-function nil)
+ (defvar url-callback-arguments nil)
+ (defvar oauth--token-data nil))
+ (setq slack-buffer-emojify t
+ slack-prefer-current-team t)
+ :config
+ (slack-register-team
+ :name "nday-students"
+ :default t
+ :token nday-students-token
+ :subscribed-channels '(general)
+ :full-and-display-names t)
+ (add-to-list 'swiper-font-lock-exclude 'slack-message-buffer-mode t)
+ (setq lui-time-stamp-format "[%Y-%m-%d %H:%M:%S]"
+ lui-time-stamp-only-when-changed-p t
+ lui-time-stamp-position 'right)
+ :bind
+ (("C-c s s" . slack-start)
+ ("C-c s u" . slack-select-unread-rooms)
+ ("C-c s b" . slack-select-rooms)
+ ("C-c s t" . slack-change-current-team)
+ ("C-c s c" . slack-ws-close)
+ :map slack-mode-map
+ ("M-p" . slack-buffer-goto-prev-message)
+ ("M-n" . slack-buffer-goto-next-message)
+ ("C-c e" . slack-message-edit)
+ ("C-c k" . slack-message-delete)
+ ("C-c C-k" . slack-channel-leave)
+ ("C-c r a" . slack-message-add-reaction)
+ ("C-c r r" . slack-message-remove-reaction)
+ ("C-c r s" . slack-message-show-reaction-users)
+ ("C-c p l" . slack-room-pins-list)
+ ("C-c p a" . slack-message-pins-add)
+ ("C-c p r" . slack-message-pins-remove)
+ ("@" . slack-message-embed-mention)
+ ("#" . slack-message-embed-channel)))
+
+(use-package alert
+ :commands (alert)
+ :init
+ (setq alert-default-style 'notifier))
+#+end_src
+
* Email
:PROPERTIES:
:CUSTOM_ID: email
:config
(require 'ebdb)
(require 'ebdb-mua)
- (require 'ebdb-gnus))
+ (require 'ebdb-gnus)
+
+ (with-eval-after-load 'recentf
+ (add-to-list 'recentf-exclude gnus-home-directory)))
(use-feature gnus-art
:config