doom: migrate to use-package!

This commit is contained in:
Inhji 2024-03-11 15:52:35 +05:45
parent bf9c306103
commit 6b85231fde
3 changed files with 533 additions and 502 deletions

View File

@ -15,6 +15,9 @@
;; Useful if default system shell is not bash
(setq shell-file-name (executable-find "bash"))
;; This is where all org files are sourced from
(setq +user-org-path "~/Notes/Org")
;; Display Line numbers
(setq display-line-numbers-type t)
@ -27,99 +30,55 @@
(font-spec :family "IBM Plex Serif" :size 18 :weight 'medium))
;; Dashboard
(defun my-weebery-is-always-greater ()
(let* ((banner '("EMACS "
"███▄ ▄███▓ ▒█████ ▒█████ ▓█████▄ "
"▓██▒▀█▀ ██▒▒██▒ ██▒▒██▒ ██▒▒██▀ ██▌"
"▓██ ▓██░▒██░ ██▒▒██░ ██▒░██ █▌"
"▒██ ▒██ ▒██ ██░▒██ ██░░▓█▄ ▌"
"▒██▒ ░██▒░ ████▓▒░░ ████▓▒░░▒████▓ "
"░ ▒░ ░ ░░ ▒░▒░▒░ ░ ▒░▒░▒░ ▒▒▓ ▒ "
"░ ░ ░ ░ ▒ ▒░ ░ ▒ ▒░ ░ ▒ ▒ "
"░ ░ ░ ░ ░ ▒ ░ ░ ░ ▒ ░ ░ ░ "
" ░ ░ ░ ░ ░ ░ "
""))
(longest-line (apply #'max (mapcar #'length banner))))
(put-text-property
(point)
(dolist (line banner (point))
(insert (+doom-dashboard--center
+doom-dashboard--width
(concat line (make-string (max 0 (- longest-line (length line))) 32)))
"\n"))
'face 'doom-dashboard-banner)))
(setq +doom-dashboard-ascii-banner-fn #'my-weebery-is-always-greater)
(remove-hook '+doom-dashboard-functions #'doom-dashboard-widget-shortmenu)
(remove-hook '+doom-dashboard-functions #'doom-dashboard-widget-footer)
(remove-hook '+doom-dashboard-functions #'doom-dashboard-widget-loaded)
;; Themes
(use-package! heaven-and-hell
:ensure t
(use-package! org
:config
(setq heaven-and-hell-theme-type 'dark) ;; Omit to use light by default
(setq heaven-and-hell-themes
'((light . doom-gruvbox-light)
(dark . doom-gruvbox))) ;; Themes can be the list: (dark . (tsdh-dark wombat))
;; Optionall, load themes without asking for confirmation.
(setq heaven-and-hell-load-theme-no-confirm t)
:hook (after-init . heaven-and-hell-init-hook)
:bind (("<f6>" . heaven-and-hell-toggle-theme)))
(setq ;; General
org-directory +user-org-path
org-src-tab-acts-natively t
(setq +user-org-path "~/Notes/Org")
(defun org-path (filename) (expand-file-name filename +user-org-path))
;; Org Export
org-export-exclude-tags '("toc")
(after! org
(map! :map org-mode-map :localleader "g s" #'org-habit-stats-view-habit-at-point)
(setq org-directory +user-org-path
org-src-tab-acts-natively t
org-todo-keywords '((sequence "TODO(t)" "|" "DONE(d)")
(sequence "THIS(T)" "EXAMPLE"))))
;; Org Agenda
org-agenda-show-all-dates t
org-agenda-span 4
org-agenda-start-day "+0d"
org-agenda-tag-filter-preset '("-drill")
org-agenda-time-grid
'((daily today require-timed)
(800 1000 1200 1400 1600 1800 2000)
" ┄┄┄┄┄ " "┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄")
org-agenda-current-time-string
"◀── now ──────────────────────────────────────────────── \\o/"
org-agenda-block-separator ?─
;; Consider all org files part of the org-agenda
org-agenda-files (list +user-org-path)
;; org-agenda-spillover-skip-function '(org-agenda-skip-entry-if 'todo 'done)
(add-hook! 'org-mode-hook '(olivetti-mode (lambda () (display-line-numbers-mode -1))))
;; Org Todo
org-todo-keywords
'((sequence "TODO(t)" "|" "DONE(d)")
(sequence "THIS(T)" "EXAMPLE"))
(add-hook! 'org-after-todo-state-change-hook '(org-habit-stats-update-properties))
;; Org Capture
+org-capture-notes-file (org-path "Notes.org")
+org-capture-todo-file (org-path "Todo.org")
+org-capture-journal-file (org-path "Journal.org")
+org-capture-cooking-file (org-path "Cooking.org")
+org-capture-nepali-file (org-path "Nepali.org")
org-capture-templates
'(("t" "Personal Todo" entry
(file +org-capture-todo-file)
"* TODO %?\n" :prepend t)
(add-to-list 'org-modules 'org-habit)
(after! org (;; TOC Links will lead to errors when attempting
;; to export to HTML
setq org-export-exclude-tags '("toc")))
(defun my-org-inline-css-hook (exporter)
"Insert custom inline css"
(when (eq exporter 'html)
(let* ((dir (ignore-errors (file-name-directory (buffer-file-name))))
(path (concat dir "style.css"))
(fallback-style (or (null dir) (null (file-exists-p path))))
(final (if fallback-style "~/.config/doom/style.css" path))) ;; <- set your own style file path
(setq org-html-head-include-default-style t)
(setq org-html-head (concat
"<style type=\"text/css\">\n"
"<!--/*--><![CDATA[/*><!--*/\n"
(with-temp-buffer
(insert-file-contents final)
(buffer-string))
"/*]]>*/-->\n"
"</style>\n")))))
;; Org Export
(add-hook 'org-export-before-processing-functions 'my-org-inline-css-hook)
(after! org (setq +org-capture-notes-file (org-path "Notes.org")
+org-capture-todo-file (org-path "Todo.org")
+org-capture-journal-file (org-path "Journal.org")
+org-capture-cooking-file (org-path "Cooking.org")
+org-capture-nepali-file (org-path "Nepali.org")))
(after! org (setq org-capture-templates
'(("t" "Personal Todo" entry
(file +org-capture-todo-file)
"* TODO %?\n" :prepend t)
("r" "Recipe" entry
("r" "Recipe" entry
(file+headline +org-capture-cooking-file "Unsorted")
"* NEVERMADE %?
:PROPERTIES:
@ -141,31 +100,22 @@
1. First Step")
("n" "Nepali")
("n" "Nepali")
("nw" "Nepali Word" entry
(file+headline +org-capture-nepali-file "Nepali Words")
"* %^{Nepali Word} :drill:\n%\\1\n** Answer\n%^{Translation}" :prepend t :immediate-finish t)
("nw" "Nepali Word" entry
(file+headline +org-capture-nepali-file "Nepali Words")
"* %^{Nepali Word} :drill:\n%\\1\n** Answer\n%^{Translation}" :prepend t :immediate-finish t)
("j" "Daily Journal" entry
(file+olp+datetree +org-capture-journal-file)
"* %U %?\n" :prepend t))))
("j" "Daily Journal" entry
(file+olp+datetree +org-capture-journal-file)
"* %U %?\n" :prepend t)))
(after! org (setq
;; org-agenda-spillover-skip-function '(org-agenda-skip-entry-if 'todo 'done)
org-agenda-show-all-dates t
org-agenda-span 4
org-agenda-start-day "+0d"
org-agenda-tag-filter-preset '("-drill")
org-agenda-time-grid
'((daily today require-timed)
(800 1000 1200 1400 1600 1800 2000)
" ┄┄┄┄┄ " "┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄")
org-agenda-current-time-string
"◀── now ──────────────────────────────────────────────── \\o/"
org-agenda-block-separator ?─
;; Consider all org files part of the org-agenda
org-agenda-files (list +user-org-path)))
:bind (:map org-mode-map ("<localleader> g s" . #'org-habit-stats-view-habit-at-point))
:hook (org-after-todo-state-change . org-habit-stats-update-properties)
:init
(add-to-list 'org-modules 'org-habit)
(add-hook 'org-export-before-processing-functions 'my-org-inline-css-hook))
(after! doom-modeline
(setq doom-modeline-battery t)
@ -174,11 +124,23 @@
(add-hook 'doom-after-init-hook #'display-battery-mode)
(add-hook 'doom-after-init-hook #'display-time-mode)
(drag-stuff-global-mode t)
(after! evil-snipe (setq evil-snipe-scope 'whole-visible))
(add-hook 'org-mode-hook #'hl-todo-mode)
(use-package! heaven-and-hell
:ensure t
:config
(setq heaven-and-hell-theme-type 'dark ;; Omit to use light by default
heaven-and-hell-themes
'((light . doom-gruvbox-light)
(dark . doom-gruvbox)) ;; Themes can be the list: (dark . (tsdh-dark wombat))
heaven-and-hell-load-theme-no-confirm t)
:hook (after-init . heaven-and-hell-init-hook)
:bind (("<f6>" . heaven-and-hell-toggle-theme)))
(after! hl-todo
(use-package! hl-todo
:config
(setq hl-todo-keyword-faces
'(("TODO" warning bold)
("EXAMPLE" font-lock-keyword-face bold)
@ -186,10 +148,8 @@
("DEPRECATED" font-lock-doc-face bold)
("NOTE" success bold)
("BUG" error bold)
("THIS" font-lock-constant-face bold))))
(setq +notmuch-home-function (lambda () (notmuch-search "folder:INBOX")))
(setq +notmuch-sync-backend 'offlineimap)
("THIS" font-lock-constant-face bold)))
:hook (org-mode . hl-todo-mode))
(use-package! nov
:mode ("\\.epub\\'" . nov-mode)
@ -198,7 +158,13 @@
(add-hook! 'nov-mode-hook '(olivetti-mode))
(after! olivetti (setq olivetti-body-width 70))
;; (after! olivetti (setq olivetti-body-width 70))
(use-package! olivetti
:init
(add-hook! 'org-mode-hook '(olivetti-mode (lambda () (display-line-numbers-mode -1)))))
;; (add-hook! 'org-mode-hook '(olivetti-mode (lambda () (display-line-numbers-mode -1))))
(use-package! org-auto-tangle
:defer t
@ -214,8 +180,53 @@
(setq org-noter-doc-split-fraction '(0.75 . 0.75))
(setq org-noter-default-notes-file-names '()))
;; (use-package! roam
;; :config (setq org-roam-directory "~/Notes/Org/Roam"
;; org-roam-dailies-directory "Daily"))
(after! org-roam
(setq org-roam-directory "~/Notes/Org/Roam")
(setq org-roam-dailies-directory "Daily"))
(drag-stuff-global-mode t)
(defun org-path (filename)
"Expand filename relative to the default org-path"
(expand-file-name filename +user-org-path))
(defun my-org-inline-css-hook (exporter)
"Insert custom inline css"
(when (eq exporter 'html)
(let* ((dir (ignore-errors (file-name-directory (buffer-file-name))))
(path (concat dir "style.css"))
(fallback-style (or (null dir) (null (file-exists-p path))))
(final (if fallback-style "~/.config/doom/style.css" path))) ;; <- set your own style file path
(setq org-html-head-include-default-style t)
(setq org-html-head (concat
"<style type=\"text/css\">\n"
"<!--/*--><![CDATA[/*><!--*/\n"
(with-temp-buffer
(insert-file-contents final)
(buffer-string))
"/*]]>*/-->\n"
"</style>\n")))))
(defun my-weebery-is-always-greater ()
(let* ((banner '("EMACS "
"███▄ ▄███▓ ▒█████ ▒█████ ▓█████▄ "
"▓██▒▀█▀ ██▒▒██▒ ██▒▒██▒ ██▒▒██▀ ██▌"
"▓██ ▓██░▒██░ ██▒▒██░ ██▒░██ █▌"
"▒██ ▒██ ▒██ ██░▒██ ██░░▓█▄ ▌"
"▒██▒ ░██▒░ ████▓▒░░ ████▓▒░░▒████▓ "
"░ ▒░ ░ ░░ ▒░▒░▒░ ░ ▒░▒░▒░ ▒▒▓ ▒ "
"░ ░ ░ ░ ▒ ▒░ ░ ▒ ▒░ ░ ▒ ▒ "
"░ ░ ░ ░ ░ ▒ ░ ░ ░ ▒ ░ ░ ░ "
" ░ ░ ░ ░ ░ ░ "
""))
(longest-line (apply #'max (mapcar #'length banner))))
(put-text-property
(point)
(dolist (line banner (point))
(insert (+doom-dashboard--center
+doom-dashboard--width
(concat line (make-string (max 0 (- longest-line (length line))) 32)))
"\n"))
'face 'doom-dashboard-banner)))

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2024-03-10 So 13:06 -->
<!-- 2024-03-11 Mo 13:42 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Emacs Config</title>
@ -210,54 +210,54 @@ body {
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
<li><a href="#orgb19e895">1. Header</a></li>
<li><a href="#org0090c3c">2. Keybindings</a></li>
<li><a href="#org07bce3b">3. Base Config</a></li>
<li><a href="#org7bed290">4. Appearance</a></li>
<li><a href="#org7faf069">5. Org Mode</a>
<li><a href="#org204f073">1. Header</a></li>
<li><a href="#org7391319">2. Keybindings</a></li>
<li><a href="#org57eb3de">3. Base Config</a></li>
<li><a href="#org25314e4">4. Appearance</a></li>
<li><a href="#org2005268">5. Org Mode</a>
<ul>
<li><a href="#org1749679">5.1. General Settings</a></li>
<li><a href="#org323bf09">5.2. Org Export</a></li>
<li><a href="#org0e7fecf">5.3. Org Capture</a></li>
<li><a href="#org148b0d0">5.4. Org Agenda</a></li>
<li><a href="#org1df4542">5.1. General Settings</a></li>
<li><a href="#org05f6b4c">5.2. Org Export</a></li>
<li><a href="#org8d51933">5.3. Org Capture</a></li>
</ul>
</li>
<li><a href="#orgdf5e10a">6. Packages</a>
<li><a href="#org9bf68b3">6. Packages</a>
<ul>
<li><a href="#orga1e7b09">6.1. doom-modeline</a></li>
<li><a href="#orgd6b9543">6.2. evil-snipe</a></li>
<li><a href="#org47343f5">6.3. hl-todo</a></li>
<li><a href="#orgb366bfa">6.4. notmuch</a></li>
<li><a href="#org0db7593">6.5. nov.el</a></li>
<li><a href="#org02f2d4a">6.6. olivetti</a></li>
<li><a href="#org79779a0">6.7. org-auto-tangle</a></li>
<li><a href="#org476a1ac">6.8. org-drill</a></li>
<li><a href="#orgd837176">6.9. org-noter</a></li>
<li><a href="#orge89fb09">6.10. org-roam</a></li>
<li><a href="#org6d2cfa2">6.11. drag-stuff</a></li>
<li><a href="#org2332759">6.1. doom-modeline</a></li>
<li><a href="#org5e7b531">6.2. evil-snipe</a></li>
<li><a href="#orgfbb3b9d">6.3. hl-todo</a></li>
<li><a href="#org99ad413">6.4. notmuch</a></li>
<li><a href="#orga8884d1">6.5. nov.el</a></li>
<li><a href="#org7b2aa40">6.6. olivetti</a></li>
<li><a href="#org347e270">6.7. org-auto-tangle</a></li>
<li><a href="#org4b9c602">6.8. org-drill</a></li>
<li><a href="#org9f83d55">6.9. org-noter</a></li>
<li><a href="#org20a879b">6.10. org-roam</a></li>
<li><a href="#org16a2f8f">6.11. drag-stuff</a></li>
</ul>
</li>
<li><a href="#orgf60ee49">7. Functions</a></li>
</ul>
</div>
</div>
<p>
This config file is built on doom-emacs <code>3.0.0-pre</code> and emacs <code>29.2</code>.
</p>
<div id="outline-container-orgb19e895" class="outline-2">
<h2 id="orgb19e895"><span class="section-number-2">1.</span> Header</h2>
<div id="outline-container-org204f073" class="outline-2">
<h2 id="org204f073"><span class="section-number-2">1.</span> Header</h2>
<div class="outline-text-2" id="text-1">
<p>
This header will be the first codeblock in the config file.
</p>
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #928374;">;;; </span><span style="color: #928374;">$DOOMDIR/config.el -*- lexical-binding: t; -*-</span>
<pre class="src src-emacs-lisp"><span style="color: #a89984;">;;; </span><span style="color: #a89984;">$DOOMDIR/config.el -*- lexical-binding: t; -*-</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org0090c3c" class="outline-2">
<h2 id="org0090c3c"><span class="section-number-2">2.</span> Keybindings</h2>
<div id="outline-container-org7391319" class="outline-2">
<h2 id="org7391319"><span class="section-number-2">2.</span> Keybindings</h2>
<div class="outline-text-2" id="text-2">
<p>
These keybindings extend the default doom bindings, either because the defaults were confusing to me or because the binding did not yet exist.
@ -344,392 +344,401 @@ These keybindings extend the default doom bindings, either because the defaults
</table>
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">map!</span> <span style="color: #fe8019;">:n</span> <span style="color: #b8bb26;">"&lt;f12&gt;"</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">org-agenda-list</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">map!</span> <span style="color: #fe8019;">:n</span> <span style="color: #b8bb26;">"&lt;f7&gt;"</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">org-drill</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">map!</span> <span style="color: #b8bb26;">"C-M-+"</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">doom/increase-font-size</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">map!</span> <span style="color: #b8bb26;">"C-#"</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">comment-line</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">map!</span> <span style="color: #fe8019;">:n</span> <span style="color: #b8bb26;">"&lt;f8&gt;"</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">emms-playlist-mode-go</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">evil-define-key</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">normal</span> <span style="color: #83a598;">dired-mode-map</span>
<span style="color: #cc241d;">(</span><span style="color: #b8bb26;">kbd</span> <span style="color: #b8bb26;">"DEL"</span><span style="color: #cc241d;">)</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">dired-up-directory</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">map!</span> <span style="color: #af3a03;">:n</span> <span style="color: #79740e;">"&lt;f12&gt;"</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">org-agenda-list</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">map!</span> <span style="color: #af3a03;">:n</span> <span style="color: #79740e;">"&lt;f7&gt;"</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">org-drill</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">map!</span> <span style="color: #79740e;">"C-M-+"</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">doom/increase-font-size</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">map!</span> <span style="color: #79740e;">"C-#"</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">comment-line</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">map!</span> <span style="color: #af3a03;">:n</span> <span style="color: #79740e;">"&lt;f8&gt;"</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">emms-playlist-mode-go</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">evil-define-key</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">normal</span> <span style="color: #076678;">dired-mode-map</span>
<span style="color: #b16286;">(</span><span style="color: #b57614;">kbd</span> <span style="color: #79740e;">"DEL"</span><span style="color: #b16286;">)</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">dired-up-directory</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org07bce3b" class="outline-2">
<h2 id="org07bce3b"><span class="section-number-2">3.</span> Base Config</h2>
<div id="outline-container-org57eb3de" class="outline-2">
<h2 id="org57eb3de"><span class="section-number-2">3.</span> Base Config</h2>
<div class="outline-text-2" id="text-3">
<div class="org-src-container">
<pre class="src src-emacs-lisp">
<span style="color: #928374;">;; </span><span style="color: #928374;">Basic User Settings</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">user-full-name</span> <span style="color: #b8bb26;">"Jonathan Jenne"</span>
<span style="color: #83a598;">user-mail-address</span> <span style="color: #b8bb26;">"johnnie@posteo.de"</span><span style="color: #fe8019;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Basic User Settings</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">user-full-name</span> <span style="color: #79740e;">"Jonathan Jenne"</span>
<span style="color: #076678;">user-mail-address</span> <span style="color: #79740e;">"johnnie@posteo.de"</span><span style="color: #076678;">)</span>
<span style="color: #928374;">;; </span><span style="color: #928374;">Default Shell</span>
<span style="color: #928374;">;; </span><span style="color: #928374;">Useful if default system shell is not bash</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">shell-file-name</span> <span style="color: #cc241d;">(</span><span style="color: #b8bb26;">executable-find</span> <span style="color: #b8bb26;">"bash"</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Default Shell</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Useful if default system shell is not bash</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">shell-file-name</span> <span style="color: #b16286;">(</span><span style="color: #b57614;">executable-find</span> <span style="color: #79740e;">"bash"</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #928374;">;; </span><span style="color: #928374;">Display Line numbers</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">display-line-numbers-type</span> t<span style="color: #fe8019;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Display Line numbers</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">display-line-numbers-type</span> t<span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org7bed290" class="outline-2">
<h2 id="org7bed290"><span class="section-number-2">4.</span> Appearance</h2>
<div id="outline-container-org25314e4" class="outline-2">
<h2 id="org25314e4"><span class="section-number-2">4.</span> Appearance</h2>
<div class="outline-text-2" id="text-4">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #928374;">;; </span><span style="color: #928374;">Fonts</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">doom-font</span>
<span style="color: #cc241d;">(</span><span style="color: #d3869b;">font-spec</span> <span style="color: #fe8019;">:family</span> <span style="color: #b8bb26;">"IBM Plex Mono"</span> <span style="color: #fe8019;">:size</span> <span style="color: #d3869b; font-weight: bold;">18</span> <span style="color: #fe8019;">:weight</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">medium</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">doom-variable-pitch-font</span>
<span style="color: #cc241d;">(</span><span style="color: #d3869b;">font-spec</span> <span style="color: #fe8019;">:family</span> <span style="color: #b8bb26;">"IBM Plex Serif"</span> <span style="color: #fe8019;">:size</span> <span style="color: #d3869b; font-weight: bold;">18</span> <span style="color: #fe8019;">:weight</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">medium</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> variable-pitch
<span style="color: #cc241d;">(</span><span style="color: #d3869b;">font-spec</span> <span style="color: #fe8019;">:family</span> <span style="color: #b8bb26;">"IBM Plex Serif"</span> <span style="color: #fe8019;">:size</span> <span style="color: #d3869b; font-weight: bold;">18</span> <span style="color: #fe8019;">:weight</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">medium</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #a89984;">;; </span><span style="color: #a89984;">Fonts</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">doom-font</span>
<span style="color: #b16286;">(</span><span style="color: #8f3f71;">font-spec</span> <span style="color: #af3a03;">:family</span> <span style="color: #79740e;">"IBM Plex Mono"</span> <span style="color: #af3a03;">:size</span> <span style="color: #8f3f71; font-weight: bold;">18</span> <span style="color: #af3a03;">:weight</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">medium</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">doom-variable-pitch-font</span>
<span style="color: #b16286;">(</span><span style="color: #8f3f71;">font-spec</span> <span style="color: #af3a03;">:family</span> <span style="color: #79740e;">"IBM Plex Serif"</span> <span style="color: #af3a03;">:size</span> <span style="color: #8f3f71; font-weight: bold;">18</span> <span style="color: #af3a03;">:weight</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">medium</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> variable-pitch
<span style="color: #b16286;">(</span><span style="color: #8f3f71;">font-spec</span> <span style="color: #af3a03;">:family</span> <span style="color: #79740e;">"IBM Plex Serif"</span> <span style="color: #af3a03;">:size</span> <span style="color: #8f3f71; font-weight: bold;">18</span> <span style="color: #af3a03;">:weight</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">medium</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #928374;">;; </span><span style="color: #928374;">Dashboard</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">defun</span> <span style="color: #b8bb26;">my-weebery-is-always-greater</span> <span style="color: #cc241d;">()</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">let*</span> <span style="color: #b8bb26;">(</span><span style="color: #83a598;">(</span>banner <span style="color: #ebdbb2;">'</span><span style="color: #fe8019;">(</span><span style="color: #b8bb26;">"EMACS "</span>
<span style="color: #b8bb26;">"&#9608;&#9608;&#9608;&#9604; &#9604;&#9608;&#9608;&#9608;&#9619; &#9618;&#9608;&#9608;&#9608;&#9608;&#9608; &#9618;&#9608;&#9608;&#9608;&#9608;&#9608; &#9619;&#9608;&#9608;&#9608;&#9608;&#9608;&#9604; "</span>
<span style="color: #b8bb26;">"&#9619;&#9608;&#9608;&#9618;&#9600;&#9608;&#9600; &#9608;&#9608;&#9618;&#9618;&#9608;&#9608;&#9618; &#9608;&#9608;&#9618;&#9618;&#9608;&#9608;&#9618; &#9608;&#9608;&#9618;&#9618;&#9608;&#9608;&#9600; &#9608;&#9608;&#9612;"</span>
<span style="color: #b8bb26;">"&#9619;&#9608;&#9608; &#9619;&#9608;&#9608;&#9617;&#9618;&#9608;&#9608;&#9617; &#9608;&#9608;&#9618;&#9618;&#9608;&#9608;&#9617; &#9608;&#9608;&#9618;&#9617;&#9608;&#9608; &#9608;&#9612;"</span>
<span style="color: #b8bb26;">"&#9618;&#9608;&#9608; &#9618;&#9608;&#9608; &#9618;&#9608;&#9608; &#9608;&#9608;&#9617;&#9618;&#9608;&#9608; &#9608;&#9608;&#9617;&#9617;&#9619;&#9608;&#9604; &#9612;"</span>
<span style="color: #b8bb26;">"&#9618;&#9608;&#9608;&#9618; &#9617;&#9608;&#9608;&#9618;&#9617; &#9608;&#9608;&#9608;&#9608;&#9619;&#9618;&#9617;&#9617; &#9608;&#9608;&#9608;&#9608;&#9619;&#9618;&#9617;&#9617;&#9618;&#9608;&#9608;&#9608;&#9608;&#9619; "</span>
<span style="color: #b8bb26;">"&#9617; &#9618;&#9617; &#9617; &#9617;&#9617; &#9618;&#9617;&#9618;&#9617;&#9618;&#9617; &#9617; &#9618;&#9617;&#9618;&#9617;&#9618;&#9617; &#9618;&#9618;&#9619; &#9618; "</span>
<span style="color: #b8bb26;">"&#9617; &#9617; &#9617; &#9617; &#9618; &#9618;&#9617; &#9617; &#9618; &#9618;&#9617; &#9617; &#9618; &#9618; "</span>
<span style="color: #b8bb26;">"&#9617; &#9617; &#9617; &#9617; &#9617; &#9618; &#9617; &#9617; &#9617; &#9618; &#9617; &#9617; &#9617; "</span>
<span style="color: #b8bb26;">" &#9617; &#9617; &#9617; &#9617; &#9617; &#9617; "</span>
<span style="color: #b8bb26;">" &#9617; "</span><span style="color: #fe8019;">)</span><span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span>longest-line <span style="color: #fe8019;">(</span><span style="color: #d3869b;">apply</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">max</span> <span style="color: #cc241d;">(</span><span style="color: #d3869b;">mapcar</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">length</span> banner<span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span><span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span>
<span style="color: #b8bb26;">(</span><span style="color: #d3869b;">put-text-property</span>
<span style="color: #83a598;">(</span><span style="color: #d3869b;">point</span><span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #fb4934;">dolist</span> <span style="color: #fe8019;">(</span>line banner <span style="color: #cc241d;">(</span><span style="color: #d3869b;">point</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #d3869b;">insert</span> <span style="color: #cc241d;">(</span><span style="color: #b8bb26;">+doom-dashboard--center</span>
<span style="color: #83a598;">+doom-dashboard--width</span>
<span style="color: #b8bb26;">(</span><span style="color: #d3869b;">concat</span> line <span style="color: #83a598;">(</span><span style="color: #d3869b;">make-string</span> <span style="color: #fe8019;">(</span><span style="color: #d3869b;">max</span> <span style="color: #d3869b; font-weight: bold;">0</span> <span style="color: #cc241d;">(</span><span style="color: #d3869b;">-</span> longest-line <span style="color: #b8bb26;">(</span><span style="color: #d3869b;">length</span> line<span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span> <span style="color: #d3869b; font-weight: bold;">32</span><span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span>
<span style="color: #b8bb26;">"\n"</span><span style="color: #fe8019;">)</span><span style="color: #83a598;">)</span>
<span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">face</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">doom-dashboard-banner</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">+doom-dashboard-ascii-banner-fn</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">my-weebery-is-always-greater</span><span style="color: #fe8019;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Dashboard</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">defun</span> <span style="color: #b57614;">my-weebery-is-always-greater</span> <span style="color: #b16286;">()</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">let*</span> <span style="color: #8ec07c;">(</span><span style="color: #d65d0e;">(</span>banner <span style="color: #076678;">'</span><span style="color: #076678;">(</span><span style="color: #79740e;">"EMACS "</span>
<span style="color: #79740e;">"&#9608;&#9608;&#9608;&#9604; &#9604;&#9608;&#9608;&#9608;&#9619; &#9618;&#9608;&#9608;&#9608;&#9608;&#9608; &#9618;&#9608;&#9608;&#9608;&#9608;&#9608; &#9619;&#9608;&#9608;&#9608;&#9608;&#9608;&#9604; "</span>
<span style="color: #79740e;">"&#9619;&#9608;&#9608;&#9618;&#9600;&#9608;&#9600; &#9608;&#9608;&#9618;&#9618;&#9608;&#9608;&#9618; &#9608;&#9608;&#9618;&#9618;&#9608;&#9608;&#9618; &#9608;&#9608;&#9618;&#9618;&#9608;&#9608;&#9600; &#9608;&#9608;&#9612;"</span>
<span style="color: #79740e;">"&#9619;&#9608;&#9608; &#9619;&#9608;&#9608;&#9617;&#9618;&#9608;&#9608;&#9617; &#9608;&#9608;&#9618;&#9618;&#9608;&#9608;&#9617; &#9608;&#9608;&#9618;&#9617;&#9608;&#9608; &#9608;&#9612;"</span>
<span style="color: #79740e;">"&#9618;&#9608;&#9608; &#9618;&#9608;&#9608; &#9618;&#9608;&#9608; &#9608;&#9608;&#9617;&#9618;&#9608;&#9608; &#9608;&#9608;&#9617;&#9617;&#9619;&#9608;&#9604; &#9612;"</span>
<span style="color: #79740e;">"&#9618;&#9608;&#9608;&#9618; &#9617;&#9608;&#9608;&#9618;&#9617; &#9608;&#9608;&#9608;&#9608;&#9619;&#9618;&#9617;&#9617; &#9608;&#9608;&#9608;&#9608;&#9619;&#9618;&#9617;&#9617;&#9618;&#9608;&#9608;&#9608;&#9608;&#9619; "</span>
<span style="color: #79740e;">"&#9617; &#9618;&#9617; &#9617; &#9617;&#9617; &#9618;&#9617;&#9618;&#9617;&#9618;&#9617; &#9617; &#9618;&#9617;&#9618;&#9617;&#9618;&#9617; &#9618;&#9618;&#9619; &#9618; "</span>
<span style="color: #79740e;">"&#9617; &#9617; &#9617; &#9617; &#9618; &#9618;&#9617; &#9617; &#9618; &#9618;&#9617; &#9617; &#9618; &#9618; "</span>
<span style="color: #79740e;">"&#9617; &#9617; &#9617; &#9617; &#9617; &#9618; &#9617; &#9617; &#9617; &#9618; &#9617; &#9617; &#9617; "</span>
<span style="color: #79740e;">" &#9617; &#9617; &#9617; &#9617; &#9617; &#9617; "</span>
<span style="color: #79740e;">" &#9617; "</span><span style="color: #076678;">)</span><span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span>longest-line <span style="color: #076678;">(</span><span style="color: #8f3f71;">apply</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">max</span> <span style="color: #b16286;">(</span><span style="color: #8f3f71;">mapcar</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">length</span> banner<span style="color: #b16286;">)</span><span style="color: #076678;">)</span><span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span>
<span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">put-text-property</span>
<span style="color: #d65d0e;">(</span><span style="color: #8f3f71;">point</span><span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #9d0006;">dolist</span> <span style="color: #076678;">(</span>line banner <span style="color: #b16286;">(</span><span style="color: #8f3f71;">point</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #8f3f71;">insert</span> <span style="color: #b16286;">(</span><span style="color: #b57614;">+doom-dashboard--center</span>
<span style="color: #076678;">+doom-dashboard--width</span>
<span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">concat</span> line <span style="color: #d65d0e;">(</span><span style="color: #8f3f71;">make-string</span> <span style="color: #076678;">(</span><span style="color: #8f3f71;">max</span> <span style="color: #8f3f71; font-weight: bold;">0</span> <span style="color: #b16286;">(</span><span style="color: #8f3f71;">-</span> longest-line <span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">length</span> line<span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span> <span style="color: #8f3f71; font-weight: bold;">32</span><span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span>
<span style="color: #79740e;">"\n"</span><span style="color: #076678;">)</span><span style="color: #d65d0e;">)</span>
<span style="color: #076678;">'</span><span style="color: #8f3f71;">face</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">doom-dashboard-banner</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">+doom-dashboard-ascii-banner-fn</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">my-weebery-is-always-greater</span><span style="color: #076678;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #b8bb26;">remove-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">+doom-dashboard-functions</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">doom-dashboard-widget-shortmenu</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #b8bb26;">remove-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">+doom-dashboard-functions</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">doom-dashboard-widget-footer</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #b8bb26;">remove-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">+doom-dashboard-functions</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">doom-dashboard-widget-loaded</span><span style="color: #fe8019;">)</span>
<span style="color: #076678;">(</span><span style="color: #b57614;">remove-hook</span> <span style="color: #076678;">'</span><span style="color: #076678;">+doom-dashboard-functions</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">doom-dashboard-widget-shortmenu</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #b57614;">remove-hook</span> <span style="color: #076678;">'</span><span style="color: #076678;">+doom-dashboard-functions</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">doom-dashboard-widget-footer</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #b57614;">remove-hook</span> <span style="color: #076678;">'</span><span style="color: #076678;">+doom-dashboard-functions</span> <span style="color: #076678;">#'</span><span style="color: #8f3f71;">doom-dashboard-widget-loaded</span><span style="color: #076678;">)</span>
<span style="color: #928374;">;; </span><span style="color: #928374;">Themes</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">use-package!</span> heaven-and-hell
<span style="color: #fe8019;">:ensure</span> t
<span style="color: #fe8019;">:config</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">heaven-and-hell-theme-type</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">dark</span><span style="color: #cc241d;">)</span> <span style="color: #928374;">;; </span><span style="color: #928374;">Omit to use light by default</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">heaven-and-hell-themes</span>
<span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">(</span><span style="color: #83a598;">(</span>light . doom-gruvbox-light<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span>dark . doom-gruvbox<span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span> <span style="color: #928374;">;; </span><span style="color: #928374;">Themes can be the list: (dark . (tsdh-dark wombat))</span>
<span style="color: #928374;">;; </span><span style="color: #928374;">Optionall, load themes without asking for confirmation.</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">heaven-and-hell-load-theme-no-confirm</span> t<span style="color: #cc241d;">)</span>
<span style="color: #fe8019;">:hook</span> <span style="color: #cc241d;">(</span>after-init . heaven-and-hell-init-hook<span style="color: #cc241d;">)</span>
<span style="color: #fe8019;">:bind</span> <span style="color: #cc241d;">(</span><span style="color: #b8bb26;">(</span><span style="color: #b8bb26;">"&lt;f6&gt;"</span> . heaven-and-hell-toggle-theme<span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Themes</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">use-package!</span> heaven-and-hell
<span style="color: #af3a03;">:ensure</span> t
<span style="color: #af3a03;">:config</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">heaven-and-hell-theme-type</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">dark</span><span style="color: #b16286;">)</span> <span style="color: #a89984;">;; </span><span style="color: #a89984;">Omit to use light by default</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">heaven-and-hell-themes</span>
<span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #d65d0e;">(</span>light . doom-gruvbox-light<span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span>dark . doom-gruvbox<span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span> <span style="color: #a89984;">;; </span><span style="color: #a89984;">Themes can be the list: (dark . (tsdh-dark wombat))</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Optionall, load themes without asking for confirmation.</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">heaven-and-hell-load-theme-no-confirm</span> t<span style="color: #b16286;">)</span>
<span style="color: #af3a03;">:hook</span> <span style="color: #b16286;">(</span>after-init . heaven-and-hell-init-hook<span style="color: #b16286;">)</span>
<span style="color: #af3a03;">:bind</span> <span style="color: #b16286;">(</span><span style="color: #8ec07c;">(</span><span style="color: #79740e;">"&lt;f6&gt;"</span> . heaven-and-hell-toggle-theme<span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org7faf069" class="outline-2">
<h2 id="org7faf069"><span class="section-number-2">5.</span> Org Mode</h2>
<div id="outline-container-org2005268" class="outline-2">
<h2 id="org2005268"><span class="section-number-2">5.</span> Org Mode</h2>
<div class="outline-text-2" id="text-5">
</div>
<div id="outline-container-org1749679" class="outline-3">
<h3 id="org1749679"><span class="section-number-3">5.1.</span> General Settings</h3>
<div id="outline-container-org1df4542" class="outline-3">
<h3 id="org1df4542"><span class="section-number-3">5.1.</span> General Settings</h3>
<div class="outline-text-3" id="text-5-1">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> +user-org-path <span style="color: #b8bb26;">"~/Notes/Org"</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">defun</span> <span style="color: #b8bb26;">org-path</span> <span style="color: #cc241d;">(</span>filename<span style="color: #cc241d;">)</span> <span style="color: #cc241d;">(</span><span style="color: #d3869b;">expand-file-name</span> filename +user-org-path<span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> +user-org-path <span style="color: #79740e;">"~/Notes/Org"</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">defun</span> <span style="color: #b57614;">org-path</span> <span style="color: #b16286;">(</span>filename<span style="color: #b16286;">)</span> <span style="color: #b16286;">(</span><span style="color: #8f3f71;">expand-file-name</span> filename +user-org-path<span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> org
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">map!</span> <span style="color: #fe8019;">:map</span> <span style="color: #83a598;">org-mode-map</span> <span style="color: #fe8019;">:localleader</span> <span style="color: #b8bb26;">"g s"</span> <span style="color: #ebdbb2;">#'</span><span style="color: #689d6a;">org-habit-stats-view-habit-at-point</span><span style="color: #cc241d;">)</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">org-directory</span> +user-org-path
<span style="color: #83a598;">org-src-tab-acts-natively</span> t
<span style="color: #83a598;">org-todo-sets</span> <span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">(</span><span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #fabd2f; font-weight: bold;">TODO</span><span style="color: #b8bb26;">"</span> <span style="color: #b8bb26;">"PROJ"</span> <span style="color: #b8bb26;">"LOOP"</span> <span style="color: #b8bb26;">"STRT"</span> <span style="color: #b8bb26;">"WAIT"</span> <span style="color: #b8bb26;">"HOLD"</span> <span style="color: #b8bb26;">"IDEA"</span> <span style="color: #b8bb26;">"DONE"</span> <span style="color: #b8bb26;">"KILL"</span><span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"[ ]"</span> <span style="color: #b8bb26;">"[-]"</span> <span style="color: #b8bb26;">"[?]"</span> <span style="color: #b8bb26;">"[X]"</span><span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #d3869b; font-weight: bold;">THIS</span><span style="color: #b8bb26;">"</span> <span style="color: #b8bb26;">"</span><span style="color: #fb4934; font-weight: bold;">EXAMPLE</span><span style="color: #b8bb26;">"</span><span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">use-package!</span> org
<span style="color: #af3a03;">:config</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #a89984;">;; </span><span style="color: #a89984;">General</span>
<span style="color: #076678;">org-directory</span> +user-org-path
<span style="color: #076678;">org-src-tab-acts-natively</span> t
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">add-hook!</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">org-mode-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #cc241d;">(</span><span style="color: #83a598;">olivetti-mode</span> <span style="color: #b8bb26;">(</span><span style="color: #fb4934;">lambda</span> <span style="color: #83a598;">()</span> <span style="color: #83a598;">(</span><span style="color: #83a598;">display-line-numbers-mode</span> <span style="color: #d3869b; font-weight: bold;">-1</span><span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Org Export</span>
<span style="color: #076678;">org-export-exclude-tags</span> <span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #79740e;">"toc"</span><span style="color: #8ec07c;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">add-hook!</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">org-after-todo-state-change-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #cc241d;">(</span>org-habit-stats-update-properties<span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Org Capture</span>
<span style="color: #076678;">+org-capture-notes-file</span> <span style="color: #8ec07c;">(</span><span style="color: #b57614;">org-path</span> <span style="color: #79740e;">"Notes.org"</span><span style="color: #8ec07c;">)</span>
<span style="color: #076678;">+org-capture-todo-file</span> <span style="color: #8ec07c;">(</span><span style="color: #b57614;">org-path</span> <span style="color: #79740e;">"Todo.org"</span><span style="color: #8ec07c;">)</span>
<span style="color: #076678;">+org-capture-journal-file</span> <span style="color: #8ec07c;">(</span><span style="color: #b57614;">org-path</span> <span style="color: #79740e;">"Journal.org"</span><span style="color: #8ec07c;">)</span>
+org-capture-cooking-file <span style="color: #8ec07c;">(</span><span style="color: #b57614;">org-path</span> <span style="color: #79740e;">"Cooking.org"</span><span style="color: #8ec07c;">)</span>
+org-capture-nepali-file <span style="color: #8ec07c;">(</span><span style="color: #b57614;">org-path</span> <span style="color: #79740e;">"Nepali.org"</span><span style="color: #8ec07c;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Org Agenda</span>
<span style="color: #076678;">org-agenda-show-all-dates</span> t
<span style="color: #076678;">org-agenda-span</span> <span style="color: #8f3f71; font-weight: bold;">4</span>
<span style="color: #076678;">org-agenda-start-day</span> <span style="color: #79740e;">"+0d"</span>
<span style="color: #076678;">org-agenda-tag-filter-preset</span> <span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #79740e;">"-drill"</span><span style="color: #8ec07c;">)</span>
<span style="color: #076678;">org-agenda-time-grid</span>
<span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #d65d0e;">(</span>daily today require-timed<span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #8f3f71; font-weight: bold;">800</span> <span style="color: #8f3f71; font-weight: bold;">1000</span> <span style="color: #8f3f71; font-weight: bold;">1200</span> <span style="color: #8f3f71; font-weight: bold;">1400</span> <span style="color: #8f3f71; font-weight: bold;">1600</span> <span style="color: #8f3f71; font-weight: bold;">1800</span> <span style="color: #8f3f71; font-weight: bold;">2000</span><span style="color: #d65d0e;">)</span>
<span style="color: #79740e;">" &#9476;&#9476;&#9476;&#9476;&#9476; "</span> <span style="color: #79740e;">"&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;"</span><span style="color: #8ec07c;">)</span>
<span style="color: #076678;">org-agenda-current-time-string</span>
<span style="color: #79740e;">"&#9664;&#9472;&#9472; now &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; \\o/"</span>
<span style="color: #076678;">org-agenda-block-separator</span> ?&#9472;
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Consider all org files part of the org-agenda</span>
<span style="color: #076678;">org-agenda-files</span> <span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">list</span> +user-org-path<span style="color: #8ec07c;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">org-agenda-spillover-skip-function '(org-agenda-skip-entry-if 'todo 'done)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Org Todo</span>
<span style="color: #076678;">org-todo-keywords</span>
<span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #d65d0e;">(</span>sequence <span style="color: #79740e;">"</span><span style="color: #af3a03; font-weight: bold;">TODO</span><span style="color: #79740e;">(t)"</span> <span style="color: #79740e;">"|"</span> <span style="color: #79740e;">"DONE(d)"</span><span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span>sequence <span style="color: #79740e;">"</span><span style="color: #8f3f71; font-weight: bold;">THIS</span><span style="color: #79740e;">(T)"</span> <span style="color: #79740e;">"</span><span style="color: #9d0006; font-weight: bold;">EXAMPLE</span><span style="color: #79740e;">"</span><span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span>
<span style="color: #af3a03;">:bind</span> <span style="color: #b16286;">(</span><span style="color: #af3a03;">:map</span> <span style="color: #076678;">org-mode-map</span> <span style="color: #8ec07c;">(</span><span style="color: #79740e;">"&lt;localleader&gt; g s"</span> . <span style="color: #076678;">#'</span><span style="color: #8f3f71;">org-habit-stats-view-habit-at-point</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span>
<span style="color: #af3a03;">:hook</span> <span style="color: #b16286;">(</span>org-after-todo-state-change . org-habit-stats-update-properties<span style="color: #b16286;">)</span>
<span style="color: #af3a03;">:init</span>
<span style="color: #b16286;">(</span><span style="color: #b57614;">add-to-list</span> <span style="color: #076678;">'</span><span style="color: #076678;">org-modules</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">org-habit</span><span style="color: #b16286;">)</span>
<span style="color: #b16286;">(</span><span style="color: #b57614;">add-hook</span> <span style="color: #076678;">'</span><span style="color: #076678;">org-export-before-processing-functions</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">my-org-inline-css-hook</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #b8bb26;">add-to-list</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">org-modules</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">org-habit</span><span style="color: #fe8019;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org323bf09" class="outline-3">
<h3 id="org323bf09"><span class="section-number-3">5.2.</span> Org Export</h3>
<div id="outline-container-org05f6b4c" class="outline-3">
<h3 id="org05f6b4c"><span class="section-number-3">5.2.</span> Org Export</h3>
<div class="outline-text-3" id="text-5-2">
<div class="org-src-container">
<pre class="src src-emacs-lisp">
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> org <span style="color: #cc241d;">(</span><span style="color: #928374;">;; </span><span style="color: #928374;">TOC Links will lead to errors when attempting</span>
<span style="color: #928374;">;; </span><span style="color: #928374;">to export to HTML</span>
setq <span style="color: #83a598;">org-export-exclude-tags</span> <span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">(</span><span style="color: #b8bb26;">"toc"</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">defun</span> <span style="color: #b8bb26;">my-org-inline-css-hook</span> <span style="color: #cc241d;">(</span>exporter<span style="color: #cc241d;">)</span>
<span style="color: #dfd2b8;">"Insert custom inline css"</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">when</span> <span style="color: #b8bb26;">(</span><span style="color: #d3869b;">eq</span> exporter <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">html</span><span style="color: #b8bb26;">)</span>
<span style="color: #b8bb26;">(</span><span style="color: #fb4934;">let*</span> <span style="color: #83a598;">(</span><span style="color: #fe8019;">(</span>dir <span style="color: #cc241d;">(</span><span style="color: #fb4934;">ignore-errors</span> <span style="color: #b8bb26;">(</span><span style="color: #d3869b;">file-name-directory</span> <span style="color: #83a598;">(</span><span style="color: #83a598;">buffer-file-name</span><span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span>path <span style="color: #cc241d;">(</span><span style="color: #d3869b;">concat</span> dir <span style="color: #b8bb26;">"style.css"</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span>fallback-style <span style="color: #cc241d;">(</span><span style="color: #fb4934;">or</span> <span style="color: #b8bb26;">(</span><span style="color: #d3869b;">null</span> dir<span style="color: #b8bb26;">)</span> <span style="color: #b8bb26;">(</span><span style="color: #d3869b;">null</span> <span style="color: #83a598;">(</span><span style="color: #d3869b;">file-exists-p</span> path<span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span>final <span style="color: #cc241d;">(</span><span style="color: #fb4934;">if</span> fallback-style <span style="color: #b8bb26;">"~/.config/doom/style.css"</span> path<span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span><span style="color: #83a598;">)</span> <span style="color: #928374;">;; </span><span style="color: #928374;">&lt;- set your own style file path</span>
<span style="color: #83a598;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">org-html-head-include-default-style</span> t<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">org-html-head</span> <span style="color: #fe8019;">(</span><span style="color: #d3869b;">concat</span>
<span style="color: #b8bb26;">"&lt;style type=\"text/css\"&gt;\n"</span>
<span style="color: #b8bb26;">"&lt;!--/*--&gt;&lt;![CDATA[/*&gt;&lt;!--*/\n"</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">with-temp-buffer</span>
<span style="color: #b8bb26;">(</span><span style="color: #d3869b;">insert-file-contents</span> final<span style="color: #b8bb26;">)</span>
<span style="color: #b8bb26;">(</span><span style="color: #d3869b;">buffer-string</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span>
<span style="color: #b8bb26;">"/*]]&gt;*/--&gt;\n"</span>
<span style="color: #b8bb26;">"&lt;/style&gt;\n"</span><span style="color: #fe8019;">)</span><span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #928374;">;; </span><span style="color: #928374;">Org Export</span>
<span style="color: #fe8019;">(</span><span style="color: #b8bb26;">add-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">org-export-before-processing-functions</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">my-org-inline-css-hook</span><span style="color: #fe8019;">)</span>
<span style="color: #a89984;">;; </span><span style="color: #a89984;">Org Export</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org0e7fecf" class="outline-3">
<h3 id="org0e7fecf"><span class="section-number-3">5.3.</span> Org Capture</h3>
<div id="outline-container-org8d51933" class="outline-3">
<h3 id="org8d51933"><span class="section-number-3">5.3.</span> Org Capture</h3>
<div class="outline-text-3" id="text-5-3">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> org <span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">+org-capture-notes-file</span> <span style="color: #b8bb26;">(</span><span style="color: #b8bb26;">org-path</span> <span style="color: #b8bb26;">"Notes.org"</span><span style="color: #b8bb26;">)</span>
<span style="color: #83a598;">+org-capture-todo-file</span> <span style="color: #b8bb26;">(</span><span style="color: #b8bb26;">org-path</span> <span style="color: #b8bb26;">"Todo.org"</span><span style="color: #b8bb26;">)</span>
<span style="color: #83a598;">+org-capture-journal-file</span> <span style="color: #b8bb26;">(</span><span style="color: #b8bb26;">org-path</span> <span style="color: #b8bb26;">"Journal.org"</span><span style="color: #b8bb26;">)</span>
+org-capture-cooking-file <span style="color: #b8bb26;">(</span><span style="color: #b8bb26;">org-path</span> <span style="color: #b8bb26;">"Cooking.org"</span><span style="color: #b8bb26;">)</span>
+org-capture-nepali-file <span style="color: #b8bb26;">(</span><span style="color: #b8bb26;">org-path</span> <span style="color: #b8bb26;">"Nepali.org"</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp">
<span style="color: #076678;">(</span><span style="color: #9d0006;">after!</span> org <span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">org-capture-templates</span>
<span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #d65d0e;">(</span><span style="color: #79740e;">"t"</span> <span style="color: #79740e;">"Personal Todo"</span> entry
<span style="color: #076678;">(</span>file <span style="color: #076678;">+org-capture-todo-file</span><span style="color: #076678;">)</span>
<span style="color: #79740e;">"* </span><span style="color: #af3a03; font-weight: bold;">TODO</span><span style="color: #79740e;"> %?\n"</span> <span style="color: #af3a03;">:prepend</span> t<span style="color: #d65d0e;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> org <span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">org-capture-templates</span>
<span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">(</span><span style="color: #83a598;">(</span><span style="color: #b8bb26;">"t"</span> <span style="color: #b8bb26;">"Personal Todo"</span> entry
<span style="color: #fe8019;">(</span>file <span style="color: #83a598;">+org-capture-todo-file</span><span style="color: #fe8019;">)</span>
<span style="color: #b8bb26;">"* </span><span style="color: #fabd2f; font-weight: bold;">TODO</span><span style="color: #b8bb26;"> %?\n"</span> <span style="color: #fe8019;">:prepend</span> t<span style="color: #83a598;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"r"</span> <span style="color: #79740e;">"Recipe"</span> entry
<span style="color: #076678;">(</span>file+headline +org-capture-cooking-file <span style="color: #79740e;">"Unsorted"</span><span style="color: #076678;">)</span>
<span style="color: #79740e;">"* NEVERMADE %?</span>
<span style="color: #79740e;">:PROPERTIES:</span>
<span style="color: #79740e;">:Author:</span>
<span style="color: #79740e;">:Source:</span>
<span style="color: #79740e;">:Sent_by:</span>
<span style="color: #79740e;">:Yield:</span>
<span style="color: #79740e;">:Prep_Time:</span>
<span style="color: #79740e;">:Cook_Time:</span>
<span style="color: #79740e;">:Total_Time:</span>
<span style="color: #79740e;">:Cost:</span>
<span style="color: #79740e;">:Description:</span>
<span style="color: #79740e;">:URL:</span>
<span style="color: #79740e;">:Added: %u</span>
<span style="color: #79740e;">:END:</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"r"</span> <span style="color: #b8bb26;">"Recipe"</span> entry
<span style="color: #fe8019;">(</span>file+headline +org-capture-cooking-file <span style="color: #b8bb26;">"Unsorted"</span><span style="color: #fe8019;">)</span>
<span style="color: #b8bb26;">"* NEVERMADE %?</span>
<span style="color: #b8bb26;">:PROPERTIES:</span>
<span style="color: #b8bb26;">:Author:</span>
<span style="color: #b8bb26;">:Source:</span>
<span style="color: #b8bb26;">:Sent_by:</span>
<span style="color: #b8bb26;">:Yield:</span>
<span style="color: #b8bb26;">:Prep_Time:</span>
<span style="color: #b8bb26;">:Cook_Time:</span>
<span style="color: #b8bb26;">:Total_Time:</span>
<span style="color: #b8bb26;">:Cost:</span>
<span style="color: #b8bb26;">:Description:</span>
<span style="color: #b8bb26;">:URL:</span>
<span style="color: #b8bb26;">:Added: %u</span>
<span style="color: #b8bb26;">:END:</span>
<span style="color: #b8bb26;">- [ ] Ingredient 1</span>
<span style="color: #79740e;">- [ ] Ingredient 1</span>
<span style="color: #b8bb26;">1. First Step"</span><span style="color: #83a598;">)</span>
<span style="color: #79740e;">1. First Step"</span><span style="color: #d65d0e;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"n"</span> <span style="color: #b8bb26;">"Nepali"</span><span style="color: #83a598;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"n"</span> <span style="color: #79740e;">"Nepali"</span><span style="color: #d65d0e;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"nw"</span> <span style="color: #b8bb26;">"Nepali Word"</span> entry
<span style="color: #fe8019;">(</span>file+headline +org-capture-nepali-file <span style="color: #b8bb26;">"Nepali Words"</span><span style="color: #fe8019;">)</span>
<span style="color: #b8bb26;">"* %^{Nepali Word} :drill:\n%\\1\n** Answer\n%^{Translation}"</span> <span style="color: #fe8019;">:prepend</span> t <span style="color: #fe8019;">:immediate-finish</span> t<span style="color: #83a598;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"nw"</span> <span style="color: #79740e;">"Nepali Word"</span> entry
<span style="color: #076678;">(</span>file+headline +org-capture-nepali-file <span style="color: #79740e;">"Nepali Words"</span><span style="color: #076678;">)</span>
<span style="color: #79740e;">"* %^{Nepali Word} :drill:\n%\\1\n** Answer\n%^{Translation}"</span> <span style="color: #af3a03;">:prepend</span> t <span style="color: #af3a03;">:immediate-finish</span> t<span style="color: #d65d0e;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"j"</span> <span style="color: #b8bb26;">"Daily Journal"</span> entry
<span style="color: #fe8019;">(</span>file+olp+datetree <span style="color: #83a598;">+org-capture-journal-file</span><span style="color: #fe8019;">)</span>
<span style="color: #b8bb26;">"* %U %?\n"</span> <span style="color: #fe8019;">:prepend</span> t<span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"j"</span> <span style="color: #79740e;">"Daily Journal"</span> entry
<span style="color: #076678;">(</span>file+olp+datetree <span style="color: #076678;">+org-capture-journal-file</span><span style="color: #076678;">)</span>
<span style="color: #79740e;">"* %U %?\n"</span> <span style="color: #af3a03;">:prepend</span> t<span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org148b0d0" class="outline-3">
<h3 id="org148b0d0"><span class="section-number-3">5.4.</span> Org Agenda</h3>
<div class="outline-text-3" id="text-5-4">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> org <span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span>
<span style="color: #928374;">;; </span><span style="color: #928374;">org-agenda-spillover-skip-function '(org-agenda-skip-entry-if 'todo 'done)</span>
<span style="color: #83a598;">org-agenda-show-all-dates</span> t
<span style="color: #83a598;">org-agenda-span</span> <span style="color: #d3869b; font-weight: bold;">4</span>
<span style="color: #83a598;">org-agenda-start-day</span> <span style="color: #b8bb26;">"+0d"</span>
<span style="color: #83a598;">org-agenda-tag-filter-preset</span> <span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">(</span><span style="color: #b8bb26;">"-drill"</span><span style="color: #b8bb26;">)</span>
<span style="color: #83a598;">org-agenda-time-grid</span>
<span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">(</span><span style="color: #83a598;">(</span>daily today require-timed<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #d3869b; font-weight: bold;">800</span> <span style="color: #d3869b; font-weight: bold;">1000</span> <span style="color: #d3869b; font-weight: bold;">1200</span> <span style="color: #d3869b; font-weight: bold;">1400</span> <span style="color: #d3869b; font-weight: bold;">1600</span> <span style="color: #d3869b; font-weight: bold;">1800</span> <span style="color: #d3869b; font-weight: bold;">2000</span><span style="color: #83a598;">)</span>
<span style="color: #b8bb26;">" &#9476;&#9476;&#9476;&#9476;&#9476; "</span> <span style="color: #b8bb26;">"&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;&#9476;"</span><span style="color: #b8bb26;">)</span>
<span style="color: #83a598;">org-agenda-current-time-string</span>
<span style="color: #b8bb26;">"&#9664;&#9472;&#9472; now &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; \\o/"</span>
<span style="color: #83a598;">org-agenda-block-separator</span> ?&#9472;
<span style="color: #928374;">;; </span><span style="color: #928374;">Consider all org files part of the org-agenda</span>
<span style="color: #83a598;">org-agenda-files</span> <span style="color: #b8bb26;">(</span><span style="color: #d3869b;">list</span> +user-org-path<span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-orgdf5e10a" class="outline-2">
<h2 id="orgdf5e10a"><span class="section-number-2">6.</span> Packages</h2>
<div id="outline-container-org9bf68b3" class="outline-2">
<h2 id="org9bf68b3"><span class="section-number-2">6.</span> Packages</h2>
<div class="outline-text-2" id="text-6">
</div>
<div id="outline-container-orga1e7b09" class="outline-3">
<h3 id="orga1e7b09"><span class="section-number-3">6.1.</span> doom-modeline</h3>
<div id="outline-container-org2332759" class="outline-3">
<h3 id="org2332759"><span class="section-number-3">6.1.</span> doom-modeline</h3>
<div class="outline-text-3" id="text-6-1">
<p>
The doom modeline can be configured to show different information like time and date, battery info and more.
</p>
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> doom-modeline
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">doom-modeline-battery</span> t<span style="color: #cc241d;">)</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">doom-modeline-major-mode-icon</span> t<span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">after!</span> doom-modeline
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">doom-modeline-battery</span> t<span style="color: #b16286;">)</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">doom-modeline-major-mode-icon</span> t<span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #b8bb26;">add-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">doom-after-init-hook</span> <span style="color: #ebdbb2;">#'</span><span style="color: #83a598;">display-battery-mode</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #b8bb26;">add-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">doom-after-init-hook</span> <span style="color: #ebdbb2;">#'</span><span style="color: #83a598;">display-time-mode</span><span style="color: #fe8019;">)</span>
<span style="color: #076678;">(</span><span style="color: #b57614;">add-hook</span> <span style="color: #076678;">'</span><span style="color: #076678;">doom-after-init-hook</span> <span style="color: #076678;">#'</span><span style="color: #076678;">display-battery-mode</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #b57614;">add-hook</span> <span style="color: #076678;">'</span><span style="color: #076678;">doom-after-init-hook</span> <span style="color: #076678;">#'</span><span style="color: #076678;">display-time-mode</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-orgd6b9543" class="outline-3">
<h3 id="orgd6b9543"><span class="section-number-3">6.2.</span> evil-snipe</h3>
<div id="outline-container-org5e7b531" class="outline-3">
<h3 id="org5e7b531"><span class="section-number-3">6.2.</span> evil-snipe</h3>
<div class="outline-text-3" id="text-6-2">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> evil-snipe <span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">evil-snipe-scope</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">whole-visible</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">after!</span> evil-snipe <span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">evil-snipe-scope</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">whole-visible</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org47343f5" class="outline-3">
<h3 id="org47343f5"><span class="section-number-3">6.3.</span> hl-todo</h3>
<div id="outline-container-orgfbb3b9d" class="outline-3">
<h3 id="orgfbb3b9d"><span class="section-number-3">6.3.</span> hl-todo</h3>
<div class="outline-text-3" id="text-6-3">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #b8bb26;">add-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #83a598;">org-mode-hook</span> <span style="color: #ebdbb2;">#'</span><span style="color: #83a598;">hl-todo-mode</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #b57614;">add-hook</span> <span style="color: #076678;">'</span><span style="color: #076678;">org-mode-hook</span> <span style="color: #076678;">#'</span><span style="color: #076678;">hl-todo-mode</span><span style="color: #076678;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> hl-todo <span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">hl-todo-keyword-faces</span> <span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">(</span><span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #fabd2f; font-weight: bold;">TODO</span><span style="color: #b8bb26;">"</span> warning bold<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #fb4934; font-weight: bold;">FIXME</span><span style="color: #b8bb26;">"</span> error bold<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #fb4934; font-weight: bold;">EXAMPLE</span><span style="color: #b8bb26;">"</span> <span style="color: #83a598;">font-lock-keyword-face</span> bold<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #d3869b; font-weight: bold;">HACK</span><span style="color: #b8bb26;">"</span> <span style="color: #83a598;">font-lock-constant-face</span> bold<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #dfd2b8; font-weight: bold;">DEPRECATED</span><span style="color: #b8bb26;">"</span> <span style="color: #83a598;">font-lock-doc-face</span> bold<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #b8bb26; font-weight: bold;">NOTE</span><span style="color: #b8bb26;">"</span> success bold<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #fb4934; font-weight: bold;">BUG</span><span style="color: #b8bb26;">"</span> error bold<span style="color: #83a598;">)</span>
<span style="color: #83a598;">(</span><span style="color: #b8bb26;">"</span><span style="color: #d3869b; font-weight: bold;">THIS</span><span style="color: #b8bb26;">"</span> <span style="color: #83a598;">font-lock-constant-face</span> bold<span style="color: #83a598;">)</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">after!</span> hl-todo
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">hl-todo-keyword-faces</span>
<span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #d65d0e;">(</span><span style="color: #79740e;">"</span><span style="color: #af3a03; font-weight: bold;">TODO</span><span style="color: #79740e;">"</span> warning bold<span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"</span><span style="color: #9d0006; font-weight: bold;">EXAMPLE</span><span style="color: #79740e;">"</span> <span style="color: #076678;">font-lock-keyword-face</span> bold<span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"</span><span style="color: #8f3f71; font-weight: bold;">HACK</span><span style="color: #79740e;">"</span> <span style="color: #076678;">font-lock-constant-face</span> bold<span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"</span><span style="color: #79740e; font-weight: bold; font-style: italic;">DEPRECATED</span><span style="color: #79740e;">"</span> <span style="color: #076678;">font-lock-doc-face</span> bold<span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"</span><span style="color: #79740e; font-weight: bold;">NOTE</span><span style="color: #79740e;">"</span> success bold<span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"</span><span style="color: #9d0006; font-weight: bold;">BUG</span><span style="color: #79740e;">"</span> error bold<span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #79740e;">"</span><span style="color: #8f3f71; font-weight: bold;">THIS</span><span style="color: #79740e;">"</span> <span style="color: #076678;">font-lock-constant-face</span> bold<span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-orgb366bfa" class="outline-3">
<h3 id="orgb366bfa"><span class="section-number-3">6.4.</span> notmuch</h3>
<div id="outline-container-org99ad413" class="outline-3">
<h3 id="org99ad413"><span class="section-number-3">6.4.</span> notmuch</h3>
<div class="outline-text-3" id="text-6-4">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> +notmuch-home-function <span style="color: #cc241d;">(</span><span style="color: #fb4934;">lambda</span> <span style="color: #b8bb26;">()</span> <span style="color: #b8bb26;">(</span>notmuch-search <span style="color: #b8bb26;">"folder:INBOX"</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">setq</span> +notmuch-sync-backend <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">offlineimap</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> +notmuch-home-function <span style="color: #b16286;">(</span><span style="color: #9d0006;">lambda</span> <span style="color: #8ec07c;">()</span> <span style="color: #8ec07c;">(</span>notmuch-search <span style="color: #79740e;">"folder:INBOX"</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">setq</span> +notmuch-sync-backend <span style="color: #076678;">'</span><span style="color: #8f3f71;">offlineimap</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org0db7593" class="outline-3">
<h3 id="org0db7593"><span class="section-number-3">6.5.</span> nov.el</h3>
<div id="outline-container-orga8884d1" class="outline-3">
<h3 id="orga8884d1"><span class="section-number-3">6.5.</span> nov.el</h3>
<div class="outline-text-3" id="text-6-5">
<div class="org-src-container">
<pre class="src src-emacs-lisp">
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">use-package!</span> nov
<span style="color: #fe8019;">:mode</span> <span style="color: #cc241d;">(</span><span style="color: #b8bb26;">"\\.epub\\'"</span> . nov-mode<span style="color: #cc241d;">)</span>
<span style="color: #fe8019;">:config</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> nov-text-width <span style="color: #d3869b; font-weight: bold;">70</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">use-package!</span> nov
<span style="color: #af3a03;">:mode</span> <span style="color: #b16286;">(</span><span style="color: #79740e;">"\\.epub\\'"</span> . nov-mode<span style="color: #b16286;">)</span>
<span style="color: #af3a03;">:config</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> nov-text-width <span style="color: #8f3f71; font-weight: bold;">70</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #fe8019;">(</span><span style="color: #fb4934;">add-hook!</span> <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">nov-mode-hook</span> <span style="color: #ebdbb2;">'</span><span style="color: #cc241d;">(</span><span style="color: #83a598;">olivetti-mode</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<span style="color: #076678;">(</span><span style="color: #9d0006;">add-hook!</span> <span style="color: #076678;">'</span><span style="color: #8f3f71;">nov-mode-hook</span> <span style="color: #076678;">'</span><span style="color: #b16286;">(</span><span style="color: #076678;">olivetti-mode</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org02f2d4a" class="outline-3">
<h3 id="org02f2d4a"><span class="section-number-3">6.6.</span> olivetti</h3>
<div id="outline-container-org7b2aa40" class="outline-3">
<h3 id="org7b2aa40"><span class="section-number-3">6.6.</span> olivetti</h3>
<div class="outline-text-3" id="text-6-6">
<p>
Centers the text. This is used for reading books in
</p>
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> olivetti <span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">olivetti-body-width</span> <span style="color: #d3869b; font-weight: bold;">70</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">use-package!</span> olivetti
<span style="color: #af3a03;">:defer</span> t
<span style="color: #af3a03;">:config</span> <span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">olivetti-body-width</span> <span style="color: #8f3f71; font-weight: bold;">70</span><span style="color: #b16286;">)</span>
<span style="color: #af3a03;">:init</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">add-hook!</span> <span style="color: #076678;">'</span><span style="color: #076678;">org-mode-hook</span> <span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #076678;">olivetti-mode</span> <span style="color: #d65d0e;">(</span><span style="color: #9d0006;">lambda</span> <span style="color: #076678;">()</span> <span style="color: #076678;">(</span><span style="color: #076678;">display-line-numbers-mode</span> <span style="color: #8f3f71; font-weight: bold;">-1</span><span style="color: #076678;">)</span><span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org79779a0" class="outline-3">
<h3 id="org79779a0"><span class="section-number-3">6.7.</span> org-auto-tangle</h3>
<div id="outline-container-org347e270" class="outline-3">
<h3 id="org347e270"><span class="section-number-3">6.7.</span> org-auto-tangle</h3>
<div class="outline-text-3" id="text-6-7">
<p>
This package automatically tangles all sourceblocks in an org file whenever that file is saved. It is very handy to not have to call the tangle command everytime you save.
</p>
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">use-package!</span> org-auto-tangle
<span style="color: #fe8019;">:defer</span> t
<span style="color: #fe8019;">:config</span> <span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">org-auto-tangle-default</span> nil<span style="color: #cc241d;">)</span>
<span style="color: #fe8019;">:hook</span> <span style="color: #cc241d;">(</span><span style="color: #b8bb26;">org-mode</span> . <span style="color: #83a598;">org-auto-tangle-mode</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">use-package!</span> org-auto-tangle
<span style="color: #af3a03;">:defer</span> t
<span style="color: #af3a03;">:config</span> <span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">org-auto-tangle-default</span> nil<span style="color: #b16286;">)</span>
<span style="color: #af3a03;">:hook</span> <span style="color: #b16286;">(</span><span style="color: #b57614;">org-mode</span> . <span style="color: #076678;">org-auto-tangle-mode</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org476a1ac" class="outline-3">
<h3 id="org476a1ac"><span class="section-number-3">6.8.</span> org-drill</h3>
<div id="outline-container-org4b9c602" class="outline-3">
<h3 id="org4b9c602"><span class="section-number-3">6.8.</span> org-drill</h3>
<div class="outline-text-3" id="text-6-8">
<p>
A package for learning and memorizing using <b>spaced repetition</b>, inspired by applications like Anki.
</p>
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> org-drill
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> org-drill-scope <span style="color: #ebdbb2;">'</span><span style="color: #689d6a;">agenda</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">after!</span> org-drill
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> org-drill-scope <span style="color: #076678;">'</span><span style="color: #8f3f71;">agenda</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-orgd837176" class="outline-3">
<h3 id="orgd837176"><span class="section-number-3">6.9.</span> org-noter</h3>
<div id="outline-container-org9f83d55" class="outline-3">
<h3 id="org9f83d55"><span class="section-number-3">6.9.</span> org-noter</h3>
<div class="outline-text-3" id="text-6-9">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> org-noter
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> org-noter-notes-search-path <span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">(</span><span style="color: #b8bb26;">"~/Notes/Org"</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> org-noter-always-create-frame nil<span style="color: #cc241d;">)</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> org-noter-doc-split-fraction <span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">(</span><span style="color: #d3869b; font-weight: bold;">0.75</span> . <span style="color: #d3869b; font-weight: bold;">0.75</span><span style="color: #b8bb26;">)</span><span style="color: #cc241d;">)</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> org-noter-default-notes-file-names <span style="color: #ebdbb2;">'</span><span style="color: #b8bb26;">()</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">after!</span> org-noter
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> org-noter-notes-search-path <span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #79740e;">"~/Notes/Org"</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> org-noter-always-create-frame nil<span style="color: #b16286;">)</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> org-noter-doc-split-fraction <span style="color: #076678;">'</span><span style="color: #8ec07c;">(</span><span style="color: #8f3f71; font-weight: bold;">0.75</span> . <span style="color: #8f3f71; font-weight: bold;">0.75</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> org-noter-default-notes-file-names <span style="color: #076678;">'</span><span style="color: #8ec07c;">()</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-orge89fb09" class="outline-3">
<h3 id="orge89fb09"><span class="section-number-3">6.10.</span> org-roam</h3>
<div id="outline-container-org20a879b" class="outline-3">
<h3 id="org20a879b"><span class="section-number-3">6.10.</span> org-roam</h3>
<div class="outline-text-3" id="text-6-10">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #fb4934;">after!</span> org-roam
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> <span style="color: #83a598;">org-roam-directory</span> <span style="color: #b8bb26;">"~/Notes/Org/Roam"</span><span style="color: #cc241d;">)</span>
<span style="color: #cc241d;">(</span><span style="color: #fb4934;">setq</span> org-roam-dailies-directory <span style="color: #b8bb26;">"Daily"</span><span style="color: #cc241d;">)</span><span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">after!</span> org-roam
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">org-roam-directory</span> <span style="color: #79740e;">"~/Notes/Org/Roam"</span><span style="color: #b16286;">)</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">setq</span> org-roam-dailies-directory <span style="color: #79740e;">"Daily"</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org6d2cfa2" class="outline-3">
<h3 id="org6d2cfa2"><span class="section-number-3">6.11.</span> drag-stuff</h3>
<div id="outline-container-org16a2f8f" class="outline-3">
<h3 id="org16a2f8f"><span class="section-number-3">6.11.</span> drag-stuff</h3>
<div class="outline-text-3" id="text-6-11">
<p>
With drag stuff you can use <code>M-UP</code> and <code>M-DOWN</code> to move lines. You can also mark a region and use <code>M-LEFT</code> and <code>M-RIGHT</code> to move it left and right.
</p>
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #fe8019;">(</span><span style="color: #83a598;">drag-stuff-global-mode</span> t<span style="color: #fe8019;">)</span>
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #076678;">drag-stuff-global-mode</span> t<span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-orgf60ee49" class="outline-2">
<h2 id="orgf60ee49"><span class="section-number-2">7.</span> Functions</h2>
<div class="outline-text-2" id="text-7">
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span style="color: #076678;">(</span><span style="color: #9d0006;">defun</span> <span style="color: #b57614;">my-org-inline-css-hook</span> <span style="color: #b16286;">(</span>exporter<span style="color: #b16286;">)</span>
<span style="color: #79740e; font-style: italic;">"Insert custom inline css"</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">when</span> <span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">eq</span> exporter <span style="color: #076678;">'</span><span style="color: #8f3f71;">html</span><span style="color: #8ec07c;">)</span>
<span style="color: #8ec07c;">(</span><span style="color: #9d0006;">let*</span> <span style="color: #d65d0e;">(</span><span style="color: #076678;">(</span>dir <span style="color: #b16286;">(</span><span style="color: #9d0006;">ignore-errors</span> <span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">file-name-directory</span> <span style="color: #d65d0e;">(</span><span style="color: #076678;">buffer-file-name</span><span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span>path <span style="color: #b16286;">(</span><span style="color: #8f3f71;">concat</span> dir <span style="color: #79740e;">"style.css"</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span>fallback-style <span style="color: #b16286;">(</span><span style="color: #9d0006;">or</span> <span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">null</span> dir<span style="color: #8ec07c;">)</span> <span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">null</span> <span style="color: #d65d0e;">(</span><span style="color: #8f3f71;">file-exists-p</span> path<span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
<span style="color: #076678;">(</span>final <span style="color: #b16286;">(</span><span style="color: #9d0006;">if</span> fallback-style <span style="color: #79740e;">"~/.config/doom/style.css"</span> path<span style="color: #b16286;">)</span><span style="color: #076678;">)</span><span style="color: #d65d0e;">)</span> <span style="color: #a89984;">;; </span><span style="color: #a89984;">&lt;- set your own style file path</span>
<span style="color: #d65d0e;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">org-html-head-include-default-style</span> t<span style="color: #d65d0e;">)</span>
<span style="color: #d65d0e;">(</span><span style="color: #9d0006;">setq</span> <span style="color: #076678;">org-html-head</span> <span style="color: #076678;">(</span><span style="color: #8f3f71;">concat</span>
<span style="color: #79740e;">"&lt;style type=\"text/css\"&gt;\n"</span>
<span style="color: #79740e;">"&lt;!--/*--&gt;&lt;![CDATA[/*&gt;&lt;!--*/\n"</span>
<span style="color: #b16286;">(</span><span style="color: #9d0006;">with-temp-buffer</span>
<span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">insert-file-contents</span> final<span style="color: #8ec07c;">)</span>
<span style="color: #8ec07c;">(</span><span style="color: #8f3f71;">buffer-string</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span>
<span style="color: #79740e;">"/*]]&gt;*/--&gt;\n"</span>
<span style="color: #79740e;">"&lt;/style&gt;\n"</span><span style="color: #076678;">)</span><span style="color: #d65d0e;">)</span><span style="color: #8ec07c;">)</span><span style="color: #b16286;">)</span><span style="color: #076678;">)</span>
</pre>
</div>
</div>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: Jonathan Jenne / Inhji</p>
<p class="date">Created: 2024-03-10 So 13:06</p>
<p class="date">Created: 2024-03-11 Mo 13:42</p>
</div>
</body>
</html>

View File

@ -15,22 +15,19 @@ This config file is built on doom-emacs ~3.0.0-pre~ and emacs ~29.2~.
- [[#base-config][Base Config]]
- [[#appearance][Appearance]]
- [[#org-mode][Org Mode]]
- [[#general-settings][General Settings]]
- [[#org-export][Org Export]]
- [[#org-capture][Org Capture]]
- [[#org-agenda][Org Agenda]]
- [[#packages][Packages]]
- [[#doom-modeline][doom-modeline]]
- [[#drag-stuff][drag-stuff]]
- [[#evil-snipe][evil-snipe]]
- [[#heaven-and-hell][heaven-and-hell]]
- [[#hl-todo][hl-todo]]
- [[#notmuch][notmuch]]
- [[#novel][nov.el]]
- [[#olivetti][olivetti]]
- [[#org-auto-tangle][org-auto-tangle]]
- [[#org-drill][org-drill]]
- [[#org-noter][org-noter]]
- [[#org-roam][org-roam]]
- [[#drag-stuff][drag-stuff]]
- [[#functions][Functions]]
* Header
This header will be the first codeblock in the config file.
@ -61,7 +58,6 @@ These keybindings extend the default doom bindings, either because the defaults
(map! :n "<f7>" #'org-drill)
(map! "C-M-+" #'doom/increase-font-size)
(map! "C-#" #'comment-line)
(map! :n "<f8>" #'emms-playlist-mode-go)
(evil-define-key 'normal dired-mode-map
(kbd "DEL") 'dired-up-directory)
#+end_src
@ -78,6 +74,9 @@ These keybindings extend the default doom bindings, either because the defaults
;; Useful if default system shell is not bash
(setq shell-file-name (executable-find "bash"))
;; This is where all org files are sourced from
(setq +user-org-path "~/Notes/Org")
;; Display Line numbers
(setq display-line-numbers-type t)
#+end_src
@ -85,7 +84,6 @@ These keybindings extend the default doom bindings, either because the defaults
* Appearance
#+begin_src emacs-lisp
;; Fonts
(setq doom-font
@ -96,113 +94,67 @@ These keybindings extend the default doom bindings, either because the defaults
(font-spec :family "IBM Plex Serif" :size 18 :weight 'medium))
;; Dashboard
(defun my-weebery-is-always-greater ()
(let* ((banner '("EMACS "
"███▄ ▄███▓ ▒█████ ▒█████ ▓█████▄ "
"▓██▒▀█▀ ██▒▒██▒ ██▒▒██▒ ██▒▒██▀ ██▌"
"▓██ ▓██░▒██░ ██▒▒██░ ██▒░██ █▌"
"▒██ ▒██ ▒██ ██░▒██ ██░░▓█▄ ▌"
"▒██▒ ░██▒░ ████▓▒░░ ████▓▒░░▒████▓ "
"░ ▒░ ░ ░░ ▒░▒░▒░ ░ ▒░▒░▒░ ▒▒▓ ▒ "
"░ ░ ░ ░ ▒ ▒░ ░ ▒ ▒░ ░ ▒ ▒ "
"░ ░ ░ ░ ░ ▒ ░ ░ ░ ▒ ░ ░ ░ "
" ░ ░ ░ ░ ░ ░ "
" ░ "))
(longest-line (apply #'max (mapcar #'length banner))))
(put-text-property
(point)
(dolist (line banner (point))
(insert (+doom-dashboard--center
+doom-dashboard--width
(concat line (make-string (max 0 (- longest-line (length line))) 32)))
"\n"))
'face 'doom-dashboard-banner)))
(setq +doom-dashboard-ascii-banner-fn #'my-weebery-is-always-greater)
(remove-hook '+doom-dashboard-functions #'doom-dashboard-widget-shortmenu)
(remove-hook '+doom-dashboard-functions #'doom-dashboard-widget-footer)
(remove-hook '+doom-dashboard-functions #'doom-dashboard-widget-loaded)
;; Themes
(use-package! heaven-and-hell
:ensure t
:config
(setq heaven-and-hell-theme-type 'dark) ;; Omit to use light by default
(setq heaven-and-hell-themes
'((light . doom-gruvbox-light)
(dark . doom-gruvbox))) ;; Themes can be the list: (dark . (tsdh-dark wombat))
;; Optionall, load themes without asking for confirmation.
(setq heaven-and-hell-load-theme-no-confirm t)
:hook (after-init . heaven-and-hell-init-hook)
:bind (("<f6>" . heaven-and-hell-toggle-theme)))
#+end_src
* Org Mode
** General Settings
#+begin_src emacs-lisp
(setq +user-org-path "~/Notes/Org")
(defun org-path (filename) (expand-file-name filename +user-org-path))
(after! org
(map! :map org-mode-map :localleader "g s" #'org-habit-stats-view-habit-at-point)
(setq org-directory +user-org-path
org-src-tab-acts-natively t
org-todo-keywords '((sequence "TODO(t)" "|" "DONE(d)")
(sequence "THIS(T)" "EXAMPLE"))))
Org Mode is a tool for note taking, habit tracking, writing, outlining and much much more. You might have heard of it already.
(add-hook! 'org-mode-hook '(olivetti-mode (lambda () (display-line-numbers-mode -1))))
There are a few things to point out here:
(add-hook! 'org-after-todo-state-change-hook '(org-habit-stats-update-properties))
(add-to-list 'org-modules 'org-habit)
#+end_src
** Org Export
- org-drill items are excluded from the agenda
- toc headings are excluded from exports
#+begin_src emacs-lisp
(use-package! org
:config
(setq ;; General
org-directory +user-org-path
org-src-tab-acts-natively t
(after! org (;; TOC Links will lead to errors when attempting
;; to export to HTML
setq org-export-exclude-tags '("toc")))
;; Org Export
org-export-exclude-tags '("toc")
(defun my-org-inline-css-hook (exporter)
"Insert custom inline css"
(when (eq exporter 'html)
(let* ((dir (ignore-errors (file-name-directory (buffer-file-name))))
(path (concat dir "style.css"))
(fallback-style (or (null dir) (null (file-exists-p path))))
(final (if fallback-style "~/.config/doom/style.css" path))) ;; <- set your own style file path
(setq org-html-head-include-default-style t)
(setq org-html-head (concat
"<style type=\"text/css\">\n"
"<!--/*--><![CDATA[/*><!--*/\n"
(with-temp-buffer
(insert-file-contents final)
(buffer-string))
"/*]]>*/-->\n"
"</style>\n")))))
;; Org Agenda
org-agenda-show-all-dates t
org-agenda-span 4
org-agenda-start-day "+0d"
org-agenda-tag-filter-preset '("-drill")
org-agenda-time-grid
'((daily today require-timed)
(800 1000 1200 1400 1600 1800 2000)
" ┄┄┄┄┄ " "┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄")
org-agenda-current-time-string
"◀── now ──────────────────────────────────────────────── \\o/"
org-agenda-block-separator ?─
;; Consider all org files part of the org-agenda
org-agenda-files (list +user-org-path)
;; org-agenda-spillover-skip-function '(org-agenda-skip-entry-if 'todo 'done)
;; Org Export
(add-hook 'org-export-before-processing-functions 'my-org-inline-css-hook)
;; Org Todo
org-todo-keywords
'((sequence "TODO(t)" "|" "DONE(d)")
(sequence "THIS(T)" "EXAMPLE"))
#+end_src
;; Org Capture
+org-capture-notes-file (org-path "Notes.org")
+org-capture-todo-file (org-path "Todo.org")
+org-capture-journal-file (org-path "Journal.org")
+org-capture-cooking-file (org-path "Cooking.org")
+org-capture-nepali-file (org-path "Nepali.org")
org-capture-templates
'(("t" "Personal Todo" entry
(file +org-capture-todo-file)
"* TODO %?\n" :prepend t)
** Org Capture
#+begin_src emacs-lisp
(after! org (setq +org-capture-notes-file (org-path "Notes.org")
+org-capture-todo-file (org-path "Todo.org")
+org-capture-journal-file (org-path "Journal.org")
+org-capture-cooking-file (org-path "Cooking.org")
+org-capture-nepali-file (org-path "Nepali.org")))
(after! org (setq org-capture-templates
'(("t" "Personal Todo" entry
(file +org-capture-todo-file)
"* TODO %?\n" :prepend t)
("r" "Recipe" entry
("r" "Recipe" entry
(file+headline +org-capture-cooking-file "Unsorted")
"* NEVERMADE %?
:PROPERTIES:
@ -224,34 +176,23 @@ These keybindings extend the default doom bindings, either because the defaults
1. First Step")
("n" "Nepali")
("n" "Nepali")
("nw" "Nepali Word" entry
(file+headline +org-capture-nepali-file "Nepali Words")
"* %^{Nepali Word} :drill:\n%\\1\n** Answer\n%^{Translation}" :prepend t :immediate-finish t)
("nw" "Nepali Word" entry
(file+headline +org-capture-nepali-file "Nepali Words")
"* %^{Nepali Word} :drill:\n%\\1\n** Answer\n%^{Translation}" :prepend t :immediate-finish t)
("j" "Daily Journal" entry
(file+olp+datetree +org-capture-journal-file)
"* %U %?\n" :prepend t))))
("j" "Daily Journal" entry
(file+olp+datetree +org-capture-journal-file)
"* %U %?\n" :prepend t)))
:bind (:map org-mode-map ("<localleader> g s" . #'org-habit-stats-view-habit-at-point))
:hook (org-after-todo-state-change . org-habit-stats-update-properties)
:init
(add-to-list 'org-modules 'org-habit)
(add-hook 'org-export-before-processing-functions 'my-org-inline-css-hook))
#+end_src
** Org Agenda
#+begin_src emacs-lisp
(after! org (setq
;; org-agenda-spillover-skip-function '(org-agenda-skip-entry-if 'todo 'done)
org-agenda-show-all-dates t
org-agenda-span 4
org-agenda-start-day "+0d"
org-agenda-tag-filter-preset '("-drill")
org-agenda-time-grid
'((daily today require-timed)
(800 1000 1200 1400 1600 1800 2000)
" ┄┄┄┄┄ " "┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄")
org-agenda-current-time-string
"◀── now ──────────────────────────────────────────────── \\o/"
org-agenda-block-separator ?─
;; Consider all org files part of the org-agenda
org-agenda-files (list +user-org-path)))
#+end_src
* Packages
@ -268,16 +209,39 @@ The doom modeline can be configured to show different information like time and
(add-hook 'doom-after-init-hook #'display-time-mode)
#+end_src
** drag-stuff
With drag stuff you can use ~M-UP~ and ~M-DOWN~ to move lines. You can also mark a region and use ~M-LEFT~ and ~M-RIGHT~ to move it left and right.
#+begin_src emacs-lisp
(drag-stuff-global-mode t)
#+end_src
** evil-snipe
#+begin_src emacs-lisp
(after! evil-snipe (setq evil-snipe-scope 'whole-visible))
#+end_src
** heaven-and-hell
Heaven and hell is a theme switcher, which allows you to select a dark and light theme and toggle between them using a key.
#+begin_src emacs-lisp
(use-package! heaven-and-hell
:ensure t
:config
(setq heaven-and-hell-theme-type 'dark ;; Omit to use light by default
heaven-and-hell-themes
'((light . doom-gruvbox-light)
(dark . doom-gruvbox)) ;; Themes can be the list: (dark . (tsdh-dark wombat))
heaven-and-hell-load-theme-no-confirm t)
:hook (after-init . heaven-and-hell-init-hook)
:bind (("<f6>" . heaven-and-hell-toggle-theme)))
#+end_src
** hl-todo
#+begin_src emacs-lisp
(add-hook 'org-mode-hook #'hl-todo-mode)
(after! hl-todo
(use-package! hl-todo
:config
(setq hl-todo-keyword-faces
'(("TODO" warning bold)
("EXAMPLE" font-lock-keyword-face bold)
@ -285,15 +249,10 @@ The doom modeline can be configured to show different information like time and
("DEPRECATED" font-lock-doc-face bold)
("NOTE" success bold)
("BUG" error bold)
("THIS" font-lock-constant-face bold))))
("THIS" font-lock-constant-face bold)))
:hook (org-mode . hl-todo-mode))
#+end_src
** notmuch
#+begin_src emacs-lisp
(setq +notmuch-home-function (lambda () (notmuch-search "folder:INBOX")))
(setq +notmuch-sync-backend 'offlineimap)
#+end_src
** nov.el
#+begin_src emacs-lisp
@ -310,7 +269,13 @@ The doom modeline can be configured to show different information like time and
Centers the text. This is used for reading books in
#+begin_src emacs-lisp
(after! olivetti (setq olivetti-body-width 70))
;; (after! olivetti (setq olivetti-body-width 70))
(use-package! olivetti
:init
(add-hook! 'org-mode-hook '(olivetti-mode (lambda () (display-line-numbers-mode -1)))))
;; (add-hook! 'org-mode-hook '(olivetti-mode (lambda () (display-line-numbers-mode -1))))
#+end_src
** org-auto-tangle
@ -335,6 +300,7 @@ A package for learning and memorizing using *spaced repetition*, inspired by app
** org-noter
A annotation tool for org-mode
#+begin_src emacs-lisp
(after! org-noter
@ -346,15 +312,60 @@ A package for learning and memorizing using *spaced repetition*, inspired by app
#+end_src
** org-roam
#+begin_src emacs-lisp
;; (use-package! roam
;; :config (setq org-roam-directory "~/Notes/Org/Roam"
;; org-roam-dailies-directory "Daily"))
(after! org-roam
(setq org-roam-directory "~/Notes/Org/Roam")
(setq org-roam-dailies-directory "Daily"))
#+end_src
** drag-stuff
With drag stuff you can use ~M-UP~ and ~M-DOWN~ to move lines. You can also mark a region and use ~M-LEFT~ and ~M-RIGHT~ to move it left and right.
* Functions
#+begin_src emacs-lisp
(drag-stuff-global-mode t)
(defun org-path (filename)
"Expand filename relative to the default org-path"
(expand-file-name filename +user-org-path))
(defun my-org-inline-css-hook (exporter)
"Insert custom inline css"
(when (eq exporter 'html)
(let* ((dir (ignore-errors (file-name-directory (buffer-file-name))))
(path (concat dir "style.css"))
(fallback-style (or (null dir) (null (file-exists-p path))))
(final (if fallback-style "~/.config/doom/style.css" path))) ;; <- set your own style file path
(setq org-html-head-include-default-style t)
(setq org-html-head (concat
"<style type=\"text/css\">\n"
"<!--/*--><![CDATA[/*><!--*/\n"
(with-temp-buffer
(insert-file-contents final)
(buffer-string))
"/*]]>*/-->\n"
"</style>\n")))))
(defun my-weebery-is-always-greater ()
(let* ((banner '("EMACS "
"███▄ ▄███▓ ▒█████ ▒█████ ▓█████▄ "
"▓██▒▀█▀ ██▒▒██▒ ██▒▒██▒ ██▒▒██▀ ██▌"
"▓██ ▓██░▒██░ ██▒▒██░ ██▒░██ █▌"
"▒██ ▒██ ▒██ ██░▒██ ██░░▓█▄ ▌"
"▒██▒ ░██▒░ ████▓▒░░ ████▓▒░░▒████▓ "
"░ ▒░ ░ ░░ ▒░▒░▒░ ░ ▒░▒░▒░ ▒▒▓ ▒ "
"░ ░ ░ ░ ▒ ▒░ ░ ▒ ▒░ ░ ▒ ▒ "
"░ ░ ░ ░ ░ ▒ ░ ░ ░ ▒ ░ ░ ░ "
" ░ ░ ░ ░ ░ ░ "
" ░ "))
(longest-line (apply #'max (mapcar #'length banner))))
(put-text-property
(point)
(dolist (line banner (point))
(insert (+doom-dashboard--center
+doom-dashboard--width
(concat line (make-string (max 0 (- longest-line (length line))) 32)))
"\n"))
'face 'doom-dashboard-banner)))
#+end_src