summaryrefslogtreecommitdiffstats
path: root/.emacs.d/etc
diff options
context:
space:
mode:
authorAmin Bandali <bandali@gnu.org>2020-10-05 23:38:06 -0400
committerAmin Bandali <bandali@gnu.org>2020-10-05 23:38:06 -0400
commitd7dee82420a04e5c92e5b5ad316e14a49bd4d689 (patch)
tree9dceac59e3b0d40b0357e8854e191ac5559d41ab /.emacs.d/etc
parent927b50b7aec2da105bd5125dec272a89e38663c3 (diff)
downloadconfigs-d7dee82420a04e5c92e5b5ad316e14a49bd4d689.tar.gz
configs-d7dee82420a04e5c92e5b5ad316e14a49bd4d689.tar.xz
configs-d7dee82420a04e5c92e5b5ad316e14a49bd4d689.zip
Move GNU Emacs configs from ./ into .emacs.d/
I will be using the repository to store my configurations for other non-Emacs pieces of software. The repository itself will be located at ~/ rather than ~/.emacs.d/.
Diffstat (limited to '.emacs.d/etc')
-rw-r--r--.emacs.d/etc/.dir-locals.el4
-rw-r--r--.emacs.d/etc/abbrev.el5
-rw-r--r--.emacs.d/etc/custom.el124
-rw-r--r--.emacs.d/etc/eshell/aliases20
-rw-r--r--.emacs.d/etc/secrets.el5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/java-mode/format5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/java-mode/new5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/java-mode/printf5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/java-mode/println5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/java-mode/return5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/cite5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/eg5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/emph5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/enumerate7
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/etal5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/etc5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/ie5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/itemize7
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/label5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/newcommand5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/ref5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/section8
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/subsection8
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/textbf5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/texttt5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/latex-mode/usepackage5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/log-edit-mode/thankgnu5
-rw-r--r--.emacs.d/etc/yasnippet/snippets/message-mode/thankgnu7
28 files changed, 285 insertions, 0 deletions
diff --git a/.emacs.d/etc/.dir-locals.el b/.emacs.d/etc/.dir-locals.el
new file mode 100644
index 0000000..e007adb
--- /dev/null
+++ b/.emacs.d/etc/.dir-locals.el
@@ -0,0 +1,4 @@
+;;; Directory Local Variables
+;;; For more information see (info "(emacs) Directory Variables")
+
+((emacs-lisp-mode . ((flycheck-disabled-checkers . (emacs-lisp-checkdoc)))))
diff --git a/.emacs.d/etc/abbrev.el b/.emacs.d/etc/abbrev.el
new file mode 100644
index 0000000..76f19d8
--- /dev/null
+++ b/.emacs.d/etc/abbrev.el
@@ -0,0 +1,5 @@
+;;-*-coding: utf-8;-*-
+(define-abbrev-table 'message-mode-abbrev-table
+ '(
+ ("linux" "GNU/Linux" nil :count 4)
+ ))
diff --git a/.emacs.d/etc/custom.el b/.emacs.d/etc/custom.el
new file mode 100644
index 0000000..ebb093b
--- /dev/null
+++ b/.emacs.d/etc/custom.el
@@ -0,0 +1,124 @@
+(custom-set-variables
+ ;; custom-set-variables was added by Custom.
+ ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; Your init file should contain only one such instance.
+ ;; If there is more than one, they won't work right.
+ '(fci-rule-color "#5B6268")
+ '(inhibit-startup-buffer-menu t)
+ '(inhibit-startup-echo-area-message "bandali")
+ '(inhibit-startup-screen t)
+ '(initial-buffer-choice t)
+ '(initial-scratch-message nil)
+ '(isearch-allow-scroll t)
+ '(jdee-db-active-breakpoint-face-colors (cons "#1B2229" "#51afef"))
+ '(jdee-db-requested-breakpoint-face-colors (cons "#1B2229" "#98be65"))
+ '(jdee-db-spec-breakpoint-face-colors (cons "#1B2229" "#3f444a"))
+ '(ls-lisp-dirs-first t)
+ '(magit-diff-refine-hunk t)
+ '(magit-display-buffer-function 'magit-display-buffer-fullframe-status-v1)
+ '(message-elide-ellipsis "[...]
+")
+ '(minions-mode t)
+ '(mm-uu-diff-groups-regexp
+ "\\(gmane\\|gnu\\|l\\)\\..*\\(diff\\|commit\\|cvs\\|bug\\|dev\\)")
+ '(mml-secure-key-preferences
+ '((OpenPGP
+ (sign)
+ (encrypt
+ ("ineiev@gnu.org" "BD9D4DEE7B2FF1CBEF2EE0C4E0ACD3E0CBE7874A")))
+ (CMS
+ (sign)
+ (encrypt))))
+ '(mml-secure-openpgp-encrypt-to-self t)
+ '(mml-secure-openpgp-sign-with-sender t)
+ '(objed-cursor-color "#ff6c6b")
+ '(oddmuse-username "bandali" t)
+ '(org-agenda-files
+ '("~/usr/org/todos/personal.org" "~/usr/org/todos/habits.org" "~/src/git/masters-thesis/todo.org"))
+ '(org-agenda-start-on-weekday 0 t)
+ '(org-agenda-time-leading-zero t t)
+ '(org-habit-graph-column 44 t)
+ '(org-latex-packages-alist '(("" "listings") ("" "color")))
+ '(org-pretty-entities t)
+ '(package-selected-packages
+ '(delight yasnippet ebdb rt-liberation refinery-theme counsel ivy org-plus-contrib orgalist debbugs))
+ '(page-break-lines-max-width 70)
+ '(pdf-view-midnight-colors (cons "#bbc2cf" "#282c34"))
+ '(pdf-view-resize-factor 1.05)
+ '(projectile-completion-system 'ivy)
+ '(projectile-mode-line-prefix " proj")
+ '(recentf-max-saved-items 2000)
+ '(recentf-save-file "/home/bandali/.emacs.d/var/recentf-save.el")
+ '(require-final-newline t)
+ '(safe-local-variable-values
+ '((tex-main-file . "./bandali-mmath-thesis.tex")
+ (tex-main-file . "../bandali-mmath-thesis.tex")
+ (flycheck-disabled-checkers emacs-lisp-checkdoc)
+ (tex-main-file . "./thesis.tex")
+ (tex-main-file . "../thesis.tex")
+ (org-export-allow-bind-keywords . t)
+ (eval load-file "thesis.el")
+ (eval modify-syntax-entry 43 "'")
+ (eval modify-syntax-entry 36 "'")
+ (eval modify-syntax-entry 126 "'")
+ (eval require 'org-ref)
+ (eval when
+ (featurep 'typo
+ (typo-mode -1)))
+ (eval add-hook 'after-save-hook #'a/async-babel-tangle 'append 'local)
+ (eval add-hook 'after-save-hook 'org-beamer-export-to-latex t t)
+ (eval setq org-latex-prefer-user-labels t)
+ (eval add-hook 'after-save-hook 'org-latex-export-to-latex t t)))
+ '(save-interprogram-paste-before-kill t)
+ '(save-place-file "/home/bandali/.emacs.d/var/save-place.el")
+ '(savehist-file "/home/bandali/.emacs.d/var/savehist.el")
+ '(search-default-mode 'char-fold-to-regexp)
+ '(split-width-threshold 150)
+ '(text-scale-mode-step 1.05 t)
+ '(unkillable-buffers '("^\\*scratch\\*$" "^\\*Messages\\*$"))
+ '(vc-annotate-background "#282c34")
+ '(vc-annotate-color-map
+ (list
+ (cons 20 "#98be65")
+ (cons 40 "#b4be6c")
+ (cons 60 "#d0be73")
+ (cons 80 "#ECBE7B")
+ (cons 100 "#e6ab6a")
+ (cons 120 "#e09859")
+ (cons 140 "#da8548")
+ (cons 160 "#d38079")
+ (cons 180 "#cc7cab")
+ (cons 200 "#c678dd")
+ (cons 220 "#d974b7")
+ (cons 240 "#ec7091")
+ (cons 260 "#ff6c6b")
+ (cons 280 "#cf6162")
+ (cons 300 "#9f585a")
+ (cons 320 "#6f4e52")
+ (cons 340 "#5B6268")
+ (cons 360 "#5B6268")))
+ '(vc-annotate-very-old-color nil)
+ '(vc-git-print-log-follow t)
+ '(version-control t)
+ '(view-read-only t)
+ '(web-mode-enable-auto-indentation nil t)
+ '(which-key-add-column-padding 5)
+ '(which-key-max-description-length 32))
+(custom-set-faces
+ ;; custom-set-faces was added by Custom.
+ ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; Your init file should contain only one such instance.
+ ;; If there is more than one, they won't work right.
+ '(dired-directory ((t (:weight semi-bold))))
+ '(ivy-current-match ((((class color) (background light)) :background "#d7d7d7" :foreground "black") (((class color) (background dark)) :background "#65a7e2" :foreground "black")))
+ '(ivy-minibuffer-match-face-1 ((t (:background "#eeeeee"))))
+ '(ivy-minibuffer-match-face-2 ((t (:background "#e7e7e7" :weight bold))))
+ '(ivy-minibuffer-match-face-3 ((t (:background "light goldenrod" :weight semi-bold))))
+ '(ivy-minibuffer-match-face-4 ((t (:background "misty rose" :weight semi-bold))))
+ '(ivy-virtual ((t (:inherit font-lock-builtin-face :foreground "dim gray"))))
+ '(magit-diff-file-heading ((t (:weight normal))))
+ '(org-block ((t (:background "#1d1f21"))))
+ '(org-block-begin-line ((t (:foreground "#5a5b5a" :background "#1d1f21"))))
+ '(org-latex-and-related ((t (:foreground "#b294bb"))))
+ '(quote (org-block-begin-line ((t (:foreground "#5a5b5a" :background "#1d1f21")))))
+ '(widget-button ((t (:weight semi-bold)))))
diff --git a/.emacs.d/etc/eshell/aliases b/.emacs.d/etc/eshell/aliases
new file mode 100644
index 0000000..203b616
--- /dev/null
+++ b/.emacs.d/etc/eshell/aliases
@@ -0,0 +1,20 @@
+alias .. cd ..
+alias ... cd ../..
+alias d dired $*
+alias e find-file-other-window $1
+alias ee find-file $1
+alias emacs find-file $1
+alias gd magit-diff-unstaged
+alias gds magit-diff-staged
+alias git git --no-pager $*
+alias l ls -l $*
+alias la ls -al $*
+alias ll ls -al $*
+alias man woman $1
+alias up eshell-up $1
+alias pk eshell-up-peek $1
+alias vi find-file $1
+alias vim find-file $1
+alias mbsync mbsync -c $XDG_CONFIG_HOME/isync/mbsyncrc $*
+alias getmail getmail --getmaildir $XDG_CONFIG_HOME/getmail --rcfile getmailrc $*
+alias m mbsync csclub; mbsync uwaterloo; mbsync shemshak; mbsync gnub; getmail
diff --git a/.emacs.d/etc/secrets.el b/.emacs.d/etc/secrets.el
new file mode 100644
index 0000000..edfa1a6
--- /dev/null
+++ b/.emacs.d/etc/secrets.el
@@ -0,0 +1,5 @@
+(eval-when-compile (require 'auth-source))
+(defvar nday-students-token (eval-when-compile (plist-get (car (auth-source-search :host "nday-students.slack.com" :max 1)) :token)))
+
+(defvar canlock-password (eval-when-compile (funcall (plist-get (car (auth-source-search :host "gnus-canlock-password" :max 1)) :secret))))
+
diff --git a/.emacs.d/etc/yasnippet/snippets/java-mode/format b/.emacs.d/etc/yasnippet/snippets/java-mode/format
new file mode 100644
index 0000000..7620366
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/java-mode/format
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: String.format
+# key: f
+# --
+String.format("$1${2:%n}");$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/java-mode/new b/.emacs.d/etc/yasnippet/snippets/java-mode/new
new file mode 100644
index 0000000..1ffd2e5
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/java-mode/new
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: new
+# key: new
+# --
+${1:Type} ${2:obj} = new ${3:Constr}(${4:args});$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/java-mode/printf b/.emacs.d/etc/yasnippet/snippets/java-mode/printf
new file mode 100644
index 0000000..1b8c277
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/java-mode/printf
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: printf
+# key: pf
+# --
+System.out.printf("$1${2:%n}"$3);$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/java-mode/println b/.emacs.d/etc/yasnippet/snippets/java-mode/println
new file mode 100644
index 0000000..7bb944c
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/java-mode/println
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: println
+# key: p
+# --
+System.out.println($1);$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/java-mode/return b/.emacs.d/etc/yasnippet/snippets/java-mode/return
new file mode 100644
index 0000000..977859e
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/java-mode/return
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: return
+# key: r
+# --
+return $1;$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/cite b/.emacs.d/etc/yasnippet/snippets/latex-mode/cite
new file mode 100644
index 0000000..3b4d161
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/cite
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: cite
+# key: c
+# --
+$1${2:~}\cite{${3:$$(unless yas-modified-p (mapconcat 'identity (reftex-citation 'dont-insert) ","))}}$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/eg b/.emacs.d/etc/yasnippet/snippets/latex-mode/eg
new file mode 100644
index 0000000..7c025e3
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/eg
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: eg
+# key: eg
+# --
+\emph{e.g.}$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/emph b/.emacs.d/etc/yasnippet/snippets/latex-mode/emph
new file mode 100644
index 0000000..36b19d7
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/emph
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: emph
+# key: e
+# --
+\emph{$1}$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/enumerate b/.emacs.d/etc/yasnippet/snippets/latex-mode/enumerate
new file mode 100644
index 0000000..bcb1df1
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/enumerate
@@ -0,0 +1,7 @@
+# -*- mode: snippet -*-
+# name: enumerate
+# key: o
+# --
+\begin{enumerate}
+\item $0
+\end{enumerate} \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/etal b/.emacs.d/etc/yasnippet/snippets/latex-mode/etal
new file mode 100644
index 0000000..96e1fb0
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/etal
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: etal
+# key: etal
+# --
+\emph{et~al.}$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/etc b/.emacs.d/etc/yasnippet/snippets/latex-mode/etc
new file mode 100644
index 0000000..86b698e
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/etc
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: etc
+# key: etc
+# --
+\emph{etc.}$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/ie b/.emacs.d/etc/yasnippet/snippets/latex-mode/ie
new file mode 100644
index 0000000..cb91c2a
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/ie
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: ie
+# key: ie
+# --
+\emph{i.e.}$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/itemize b/.emacs.d/etc/yasnippet/snippets/latex-mode/itemize
new file mode 100644
index 0000000..b7a6949
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/itemize
@@ -0,0 +1,7 @@
+# -*- mode: snippet -*-
+# name: itemize
+# key: u
+# --
+\begin{itemize}
+\item $0
+\end{itemize} \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/label b/.emacs.d/etc/yasnippet/snippets/latex-mode/label
new file mode 100644
index 0000000..8a98d7e
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/label
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: label
+# key: lbl
+# --
+\label{$0} \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/newcommand b/.emacs.d/etc/yasnippet/snippets/latex-mode/newcommand
new file mode 100644
index 0000000..e9e03ca
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/newcommand
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: newcommand
+# key: cmd
+# --
+\newcommand{\\${1:name}}${2:[${3:0}]}{$0} \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/ref b/.emacs.d/etc/yasnippet/snippets/latex-mode/ref
new file mode 100644
index 0000000..7eef596
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/ref
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: ref
+# key: r
+# --
+$1${2:~}\ref{${3:$$(unless yas-modified-p (reftex-reference nil nil))}}$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/section b/.emacs.d/etc/yasnippet/snippets/latex-mode/section
new file mode 100644
index 0000000..e1a2710
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/section
@@ -0,0 +1,8 @@
+# -*- mode: snippet -*-
+# name: section
+# key: s
+# --
+\section{${1:name}}
+\label{sec:${2:label}}
+
+$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/subsection b/.emacs.d/etc/yasnippet/snippets/latex-mode/subsection
new file mode 100644
index 0000000..ddfa13d
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/subsection
@@ -0,0 +1,8 @@
+# -*- mode: snippet -*-
+# name: subsection
+# key: ss
+# --
+\subsection{${1:name}}
+\label{sec:${2:label}}
+
+$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/textbf b/.emacs.d/etc/yasnippet/snippets/latex-mode/textbf
new file mode 100644
index 0000000..84171d7
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/textbf
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: textbf
+# key: b
+# --
+\textbf{$1}$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/texttt b/.emacs.d/etc/yasnippet/snippets/latex-mode/texttt
new file mode 100644
index 0000000..43cd769
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/texttt
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: texttt
+# key: tt
+# --
+\texttt{$1}$0 \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/latex-mode/usepackage b/.emacs.d/etc/yasnippet/snippets/latex-mode/usepackage
new file mode 100644
index 0000000..3405077
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/latex-mode/usepackage
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: usepackage
+# key: p
+# --
+\usepackage{$0} \ No newline at end of file
diff --git a/.emacs.d/etc/yasnippet/snippets/log-edit-mode/thankgnu b/.emacs.d/etc/yasnippet/snippets/log-edit-mode/thankgnu
new file mode 100644
index 0000000..bf29b63
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/log-edit-mode/thankgnu
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# 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
diff --git a/.emacs.d/etc/yasnippet/snippets/message-mode/thankgnu b/.emacs.d/etc/yasnippet/snippets/message-mode/thankgnu
new file mode 100644
index 0000000..0d10448
--- /dev/null
+++ b/.emacs.d/etc/yasnippet/snippets/message-mode/thankgnu
@@ -0,0 +1,7 @@
+# -*- mode: snippet -*-
+# name: thankgnu
+# key: th
+# --
+Added ${2:$$(yas-choose-value '("Contributor" "Sustaining Contributor" "Patron"))} $3 to 20${4:20}supporters.html.
+
+Moving to campaigns.$0