summaryrefslogtreecommitdiff
path: root/.config/emacs/modules/bd--org.el
diff options
context:
space:
mode:
Diffstat (limited to '.config/emacs/modules/bd--org.el')
-rw-r--r--.config/emacs/modules/bd--org.el269
1 files changed, 141 insertions, 128 deletions
diff --git a/.config/emacs/modules/bd--org.el b/.config/emacs/modules/bd--org.el
index 7e7c2c2..ca68b79 100644
--- a/.config/emacs/modules/bd--org.el
+++ b/.config/emacs/modules/bd--org.el
@@ -5,18 +5,21 @@
(require 'fill-column)
(use-package org
+ :demand t
:hook
((org-mode . (lambda ()
- (org-indent-mode)
- (org-toggle-inline-images)
- (fill-column-mode)
- (org-latex-preview '(16)))))
+ (org-indent-mode)
+ (org-toggle-inline-images)
+ (fill-column-mode)
+ (abbrev-mode)
+ (org-latex-preview '(16)))))
:config
(setopt org-ellipsis " ▾"
- org-babel-python-command "python3"
- org-confirm-babel-evaluate nil
- org-hide-emphasis-markers t
- org-startup-folded 'show3levels)
+ org-babel-python-command "python3"
+ org-confirm-babel-evaluate nil
+ org-hide-emphasis-markers t
+ org-startup-folded 'show3levels
+ org-src-window-setup 'current-window)
(plist-put org-format-latex-options :scale 1.2)
(push '("\\.pdf\\'" . "zathura %s") org-file-apps)
(add-hook 'org-babel-after-execute-hook #'org-redisplay-inline-images)
@@ -27,35 +30,45 @@
(lisp . t)
(scheme . t)
(dot . t)
- (python . t))))
+ (python . t)))
+ (define-abbrev org-mode-abbrev-table
+ "lbm" "\\begin{equation*}\n\\begin{bmatrix}\n\\end{bmatrix}\n\\end{equation*}")
+ (define-abbrev org-mode-abbrev-table
+ "lca" "\\begin{equation*}\n\\begin{cases}\n\\end{cases}\n\\end{equation*}")
+ (define-abbrev org-mode-abbrev-table
+ "gvd" "#+begin_src dot :file images/1.png\ndigraph g {\nrankdir=LR;\n\tnode [shape = doublecircle]; A;\n\tnode [shape = point]; qi\n\tnode[shape=circle];\n}\n#+end_src")
+ (define-abbrev org-mode-abbrev-table
+ "les" "\\begin{equation*}\n\\end{equation*}")
+ (define-abbrev org-mode-abbrev-table
+ "lbm" "\\begin{equation*}\n\\begin{bmatrix}\n\\end{bmatrix}\n\\end{equation*}"))
(use-package ox
:config
(add-to-list 'org-latex-packages-alist '("" "listings"))
(setopt org-latex-toc-command "\\tableofcontents \\clearpage"
- org-latex-src-block-backend 'listings
- org-latex-image-default-width ".6\\linewidth"
- org-export-with-toc nil
- org-export-preserve-breaks t
- org-latex-classes
- '(("article"
- "\\PassOptionsToPackage{svgnames}{xcolor}
+ org-latex-src-block-backend 'listings
+ org-latex-image-default-width ".6\\linewidth"
+ org-export-with-toc nil
+ org-export-preserve-breaks t
+ org-latex-classes
+ '(("article"
+ "\\PassOptionsToPackage{svgnames}{xcolor}
\\documentclass[11pt]{article}
\\usepackage{listings}
\\lstset{frame=single,aboveskip=1em,
- framesep=.5em,backgroundcolor=\\color{AliceBlue},
- rulecolor=\\color{Black},framerule=1pt}
+ framesep=.5em,backgroundcolor=\\color{AliceBlue},
+ rulecolor=\\color{Black},framerule=1pt}
\\usepackage{xcolor}
\\newcommand\\basicdefault[1]{\\scriptsize\\color{Black}\\fontfamily{pcr}\\selectfont}
\\lstset{basicstyle=\\basicdefault{\\spaceskip1em}}
\\lstset{keywordstyle=\\color{DarkGreen}\\bfseries,
- identifierstyle=\\color{DarkRed},
- commentstyle=\\color{DimGray}\\upshape,
- stringstyle=\\color{DarkBlue}\\upshape,
- emphstyle=\\color{Chocolate}\\upshape,
- showstringspaces=false,
- columns=fullflexible,
- keepspaces=true}
+ identifierstyle=\\color{DarkRed},
+ commentstyle=\\color{DimGray}\\upshape,
+ stringstyle=\\color{DarkBlue}\\upshape,
+ emphstyle=\\color{Chocolate}\\upshape,
+ showstringspaces=false,
+ columns=fullflexible,
+ keepspaces=true}
\\usepackage{parskip}
\\makeatletter
\\renewcommand{\\maketitle}{%
@@ -72,21 +85,21 @@
citecolor=DarkRed,colorlinks=true}
[PACKAGES]
[EXTRA]"
- ("\\section{%s}" . "\\section*{%s}")
- ("\\subsection{%s}" . "\\subsection*{%s}")
- ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
- ("\\paragraph{%s}" . "\\paragraph*{%s}")
- ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
- ("report" "\\documentclass[11pt]{report}"
- ("\\part{%s}" . "\\part*{%s}") ("\\chapter{%s}" . "\\chapter*{%s}")
- ("\\section{%s}" . "\\section*{%s}")
- ("\\subsection{%s}" . "\\subsection*{%s}")
- ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
- ("book" "\\documentclass[11pt]{book}" ("\\part{%s}" . "\\part*{%s}")
- ("\\chapter{%s}" . "\\chapter*{%s}")
- ("\\section{%s}" . "\\section*{%s}")
- ("\\subsection{%s}" . "\\subsection*{%s}")
- ("\\subsubsection{%s}" . "\\subsubsection*{%s}")))))
+ ("\\section{%s}" . "\\section*{%s}")
+ ("\\subsection{%s}" . "\\subsection*{%s}")
+ ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
+ ("\\paragraph{%s}" . "\\paragraph*{%s}")
+ ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
+ ("report" "\\documentclass[11pt]{report}"
+ ("\\part{%s}" . "\\part*{%s}") ("\\chapter{%s}" . "\\chapter*{%s}")
+ ("\\section{%s}" . "\\section*{%s}")
+ ("\\subsection{%s}" . "\\subsection*{%s}")
+ ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
+ ("book" "\\documentclass[11pt]{book}" ("\\part{%s}" . "\\part*{%s}")
+ ("\\chapter{%s}" . "\\chapter*{%s}")
+ ("\\section{%s}" . "\\section*{%s}")
+ ("\\subsection{%s}" . "\\subsection*{%s}")
+ ("\\subsubsection{%s}" . "\\subsubsection*{%s}")))))
(use-package org-agenda
:bind
@@ -107,10 +120,10 @@ agenda views.")
(defvar-local bd/device-list
'(("garm" . ?G)
- ("heimdallr" . ?H)
- ("hodr" . ?M)
- ("surt" . ?I)
- ("vali" . ?V))
+ ("heimdallr" . ?H)
+ ("hodr" . ?M)
+ ("surt" . ?I)
+ ("vali" . ?V))
"Devices for tagging, capturing, and various
agenda views.")
@@ -119,98 +132,98 @@ agenda views.")
ORG-TAG-ALIST, returns a concatenated string
representing all the tags ORd or ANDed together."
(apply #'concat
- (mapcar (lambda (e)
- (concat (when or-p "|") (if add? "+" "-") (car e)))
- tag-alist)))
+ (mapcar (lambda (e)
+ (concat (when or-p "|") (if add? "+" "-") (car e)))
+ tag-alist)))
(setopt org-log-done 'time
- org-deadline-warning-days 7
- org-log-into-drawer "history"
- org-agenda-restore-windows-after-quit t
- org-agenda-show-future-repeats nil
- org-agenda-block-separator nil
- org-deadline-warning-days 0
- org-todo-keywords
- '((sequence "TODO(t)" "NEXT(n!)" "HOLD(h!)" "|" "DONE(d)" "CANC(c)"))
- org-tag-alist
- `(("noexport" . ?e)
+ org-deadline-warning-days 7
+ org-log-into-drawer "history"
+ org-agenda-restore-windows-after-quit t
+ org-agenda-show-future-repeats nil
+ org-agenda-block-separator nil
+ org-deadline-warning-days 0
+ org-todo-keywords
+ '((sequence "TODO(t)" "NEXT(n!)" "HOLD(h!)" "|" "DONE(d)" "CANC(c)"))
+ org-tag-alist
+ `(("noexport" . ?e)
- ("chore" . ?C)
- ,@bd/device-list
+ ("chore" . ?C)
+ ,@bd/device-list
- ("idea" . ?i)
- ("programming" . ?p)
- ("web" . ?s)
- ("writing" . ?w)
- ("reading" . ?r)
+ ("idea" . ?i)
+ ("programming" . ?p)
+ ("web" . ?s)
+ ("writing" . ?w)
+ ("reading" . ?r)
- ,@bd/course-list)
- org-refile-targets '(("archived_tasks.org" :maxlevel . 1)
- ("agenda_tasks.org" :maxlevel . 1))
- org-agenda-files `(,agenda-file "~/dc/agenda/archived_tasks.org")
- org-capture-templates
- `(("c" " College")
- ("cs" "Software Engineering Theory" entry (file+olp ,agenda-file "CS520")
- "* TODO %?\n DEADLINE: %^t")
- ("cm" "Combinatorics/Graph Theory" entry (file+olp ,agenda-file "CS575")
- "* TODO %?\n DEADLINE: %^t")
- ("cc" "Compiler Techniques" entry (file+olp ,agenda-file "CS610")
- "* TODO %?\n DEADLINE: %^t")
- ("s" " Self")
- ("si" "Idea" entry (file+olp ,agenda-file "Idea / Return")
- "* TODO %?\n %u")
- ("sc" "Context" entry (file+olp ,agenda-file "Idea / Return")
- "* TODO %?\n %a")
- ("st" "Deadline" entry (file+olp ,agenda-file "Deadline")
- "* TODO %?\n DEADLINE: %^t")
- ("sb" "Book" entry (file+olp ,agenda-file "Book List")
- "* TODO %?\n %u")))
+ ,@bd/course-list)
+ org-refile-targets '(("archived_tasks.org" :maxlevel . 1)
+ ("agenda_tasks.org" :maxlevel . 1))
+ org-agenda-files `(,agenda-file "~/dc/agenda/archived_tasks.org")
+ org-capture-templates
+ `(("c" " College")
+ ("cs" "Software Engineering Theory" entry (file+olp ,agenda-file "CS520")
+ "* TODO %?\n DEADLINE: %^t")
+ ("cm" "Combinatorics/Graph Theory" entry (file+olp ,agenda-file "CS575")
+ "* TODO %?\n DEADLINE: %^t")
+ ("cc" "Compiler Techniques" entry (file+olp ,agenda-file "CS610")
+ "* TODO %?\n DEADLINE: %^t")
+ ("s" " Self")
+ ("si" "Idea" entry (file+olp ,agenda-file "Idea / Return")
+ "* TODO %?\n %u")
+ ("sc" "Context" entry (file+olp ,agenda-file "Idea / Return")
+ "* TODO %?\n %a")
+ ("st" "Deadline" entry (file+olp ,agenda-file "Deadline")
+ "* TODO %?\n DEADLINE: %^t")
+ ("sb" "Book" entry (file+olp ,agenda-file "Book List")
+ "* TODO %?\n %u")))
(let ((orphan-view '(tags-todo "-{.*}"
- ((org-agenda-overriding-header "\nOrphaned Items\n")))))
+ ((org-agenda-overriding-header "\nOrphaned Items\n")))))
(setopt org-agenda-custom-commands
- `(("c" "Chores"
- ((agenda "" ((org-agenda-entry-types '(:deadline))
- (org-agenda-show-all-dates nil)
- (org-agenda-span 21)
- (org-agenda-skip-function
- '(org-agenda-skip-entry-if 'notregexp
- (regexp-opt (cons "chore" (mapcar #'car bd/device-list)))))
- (org-agenda-overriding-header "Priority Deadlines (+21d)\n")))
- (tags-todo (concat "chore" (bd/combine-tags bd/device-list nil nil))
- ((org-agenda-overriding-header "\nMundane\n")))
- ,@(mapcar (lambda (e)
- `(tags-todo ,(car e)
- ((org-agenda-overriding-header
- (concat "\nDevice: " ,(capitalize (car e)) "\n")))))
- bd/device-list)
- ,orphan-view))
- ("r" "Recreational"
- ((tags-todo "+idea"
- ((org-agenda-skip-function
- '(org-agenda-skip-entry-if 'regexp "chore"))
- (org-agenda-overriding-header "Ideas\n")))
- (tags-todo "+reading|+writing"
- ((org-agenda-skip-function
- '(org-agenda-skip-entry-if 'regexp "chore"))
- (org-agenda-overriding-header "\nReading/Writing\n")))
- (tags-todo "+programming|+web"
- ((org-agenda-skip-function
- '(org-agenda-skip-entry-if 'regexp "chore"))
- (org-agenda-overriding-header "\nProgramming\n")))
- ,orphan-view))
- ("s" "College"
- ((tags-todo (bd/combine-tags bd/course-list t t)
- ((org-agenda-overriding-header "\nAll Courses\n")))
- (agenda "" ((org-agenda-entry-types '(:deadline :scheduled))
- (org-agenda-show-all-dates nil)
- (org-agenda-span 15)
- (org-scheduled-past-days 7)
- (org-agenda-skip-function
- '(org-agenda-skip-entry-if 'notregexp
- (regexp-opt (mapcar #'car bd/course-list))))
- (org-agenda-overriding-header "\nUpcoming Deadlines (+15d)\n")))
- ,orphan-view))))))
+ `(("c" "Chores"
+ ((agenda "" ((org-agenda-entry-types '(:deadline))
+ (org-agenda-show-all-dates nil)
+ (org-agenda-span 21)
+ (org-agenda-skip-function
+ '(org-agenda-skip-entry-if 'notregexp
+ (regexp-opt (cons "chore" (mapcar #'car bd/device-list)))))
+ (org-agenda-overriding-header "Priority Deadlines (+21d)\n")))
+ (tags-todo (concat "chore" (bd/combine-tags bd/device-list nil nil))
+ ((org-agenda-overriding-header "\nMundane\n")))
+ ,@(mapcar (lambda (e)
+ `(tags-todo ,(car e)
+ ((org-agenda-overriding-header
+ (concat "\nDevice: " ,(capitalize (car e)) "\n")))))
+ bd/device-list)
+ ,orphan-view))
+ ("r" "Recreational"
+ ((tags-todo "+idea"
+ ((org-agenda-skip-function
+ '(org-agenda-skip-entry-if 'regexp "chore"))
+ (org-agenda-overriding-header "Ideas\n")))
+ (tags-todo "+reading|+writing"
+ ((org-agenda-skip-function
+ '(org-agenda-skip-entry-if 'regexp "chore"))
+ (org-agenda-overriding-header "\nReading/Writing\n")))
+ (tags-todo "+programming|+web"
+ ((org-agenda-skip-function
+ '(org-agenda-skip-entry-if 'regexp "chore"))
+ (org-agenda-overriding-header "\nProgramming\n")))
+ ,orphan-view))
+ ("s" "College"
+ ((tags-todo (bd/combine-tags bd/course-list t t)
+ ((org-agenda-overriding-header "\nAll Courses\n")))
+ (agenda "" ((org-agenda-entry-types '(:deadline :scheduled))
+ (org-agenda-show-all-dates nil)
+ (org-agenda-span 15)
+ (org-scheduled-past-days 7)
+ (org-agenda-skip-function
+ '(org-agenda-skip-entry-if 'notregexp
+ (regexp-opt (mapcar #'car bd/course-list))))
+ (org-agenda-overriding-header "\nUpcoming Deadlines (+15d)\n")))
+ ,orphan-view))))))
(provide 'bd--org)