From 350884bb7afdb215fd73ba685063f9677303c209 Mon Sep 17 00:00:00 2001
From: Joel Grunbaum <joelgrun@gmail.com>
Date: Sat, 20 Jun 2020 04:00:46 +0000
Subject: [PATCH] Added automatic font alternatives and EXWM mode

---
 config.org |  100 +++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 94 insertions(+), 6 deletions(-)

diff --git a/config.org b/config.org
index ae1c587..ea4a512 100644
--- a/config.org
+++ b/config.org
@@ -40,6 +40,20 @@
            (load-theme 'doom-one t)
            (doom-themes-visual-bell-config)
            (doom-themes-org-config)))
+        ((eq emacs-theme 'nord)
+         (use-package nord-theme
+           :ensure t
+           :init
+           (disable-all-themes)
+           :config
+           (load-theme 'nord t)))
+        ((eq emacs-theme 'solarized)
+         (use-package solarized-theme
+           :ensure t
+           :init
+           (disable-all-themes)
+           :config
+           (load-theme 'solarized-dark t)))
         ((eq emacs-theme 'none)
          (disable-all-themes)))
 #+END_SRC
@@ -47,9 +61,13 @@
 ** Default font
 Set default font and faces.
 #+BEGIN_SRC emacs-lisp 
-  ;; (set-frame-font "DejaVu Sans Mono" nil t)
-  (set-frame-font "Dank Mono-11" nil t)
-  ;; (set-frame-font "Source Code Pro-10" nil t)
+  (cond ((member "Dank Mono" (font-family-list))
+         (set-frame-font "Dank Mono-11" nil t))
+        ((member "DejaVu Sans Mono" (font-family-list))
+         (set-frame-font "DejaVu Sans Mono" nil t))
+        ((member "Source Code Pro" (font-family-list))
+         (set-frame-font "Source Code Pro-10" nil t)))
+
   (set-face-italic 'font-lock-comment-face t)
   (set-face-italic 'font-lock-keyword-face t)
 #+END_SRC
@@ -60,6 +78,16 @@
   (menu-bar-mode 0)
   (tool-bar-mode 0)
   (scroll-bar-mode 1)
+#+END_SRC
+* COMMENT EXWM
+Emacs window manager.
+Tiling window manager that runs in emacs.
+#+BEGIN_SRC emacs-lisp
+  (use-package exwm
+    :ensure t
+    :config
+    (require 'exwm-config)
+    (exwm-config-default))
 #+END_SRC
 
 * Writing requirements
@@ -74,6 +102,7 @@
   ;; (add-hook 'latex-mode-hook 'flyspell-buffer)
   (add-hook 'org-mode-hook 'flyspell-mode)
   ;; (add-hook 'org-mode-hook 'flyspell-buffer)
+
 #+END_SRC
 
 ** Switch-window
@@ -779,7 +808,7 @@
     (semantic-mode 1))
 #+END_SRC
 
-*** EDE
+*** COMMENT EDE
 Emacs Development Environment.
 Can be used to manage and create build files for a project.
 #+BEGIN_SRC emacs-lisp
@@ -920,7 +949,7 @@
     :after company
     :config
     (add-to-list 'company-backends '(company-math-symbols-unicode company-math-symbols-latex
-                                     compant-latex-commands))
+                                     company-latex-commands))
     (setq company-math-allow-latex-symbols-in-faces t))
 
   (use-package company-reftex
@@ -1123,6 +1152,12 @@
 (diminish 'org-indent-mode)
 (diminish 'visual-line-mode)
 #+END_SRC
+*** Spell checking for code and latex
+#+BEGIN_SRC emacs-lisp
+  (add-to-list 'ispell-skip-region-alist '("#\\+BEGIN_SRC" . "#\\+END_SRC"))
+  (add-to-list 'ispell-skip-region-alist '("\\$" . "\\$"))
+  (add-to-list 'ispell-skip-region-alist '("\\$\\$" . "\\$\\$"))
+#+END_SRC
 
 ** Line wrapping
 Enable line wrapping for long lines.
@@ -1204,7 +1239,7 @@
     (setq emms-source-file-directory "~/Music/"))
 #+END_SRC
 
-* Org Blog
+* COMMENT Org Blog
 I use org to write my blog and use org-static-blog to generate the HTML.
 ** Org static blog config
 Basic configuration for site.
@@ -1305,3 +1340,56 @@
     :ensure t)
 #+END_SRC
 
+* Journaling
+** Noteworthy entries
+I write weekly journal entries recapping my week.
+These files are in org mode.
+This is inspired by org-static-blog.
+#+BEGIN_SRC emacs-lisp
+  (defun journal-create-new-post ()
+      "Create a new entry, prompt for title and insert header"
+    (interactive)
+    (let ((title (read-string "Title: ")))
+      (find-file (concat "~/Documents/Journal/entry/"
+                         (read-string "Filename: "
+                                      (concat (format-time-string "%Y-%m-%d-" (current-time))
+                                              (replace-regexp-in-string "\s" "-" (downcase title))
+                                              ".org"))))
+      (insert "#+title: " title "\n"
+              "#+date: " (format-time-string "<%Y-%m-%d %H:%M>") "\n"
+              "#+filetags: ")))
+#+END_SRC
+*** Publish entries
+Use org-publish to collate entries into a single unit.
+#+BEGIN_SRC emacs-lisp
+  (setq org-publish-project-alist
+               '(("Journal"
+                 :base-directory "~/Documents/Journal/entry/"
+                 :publishing-directory "~/Documents/Journal/out/"
+                 :publishing-function org-html-publish-to-html
+                 ;;:htmlized-source t
+                 :section-numbers nil
+                 :html-preamble t
+                 :html-validation-link nil
+
+                 :auto-sitemap t
+                 :sitemap-sort-files anti-chronologically
+                 :sitemap-file-entry-format "%d - %t"
+                 :sitemap-title "Home"
+                 :sitemap-filename "index.html"
+                 :sitemap-function org-publish-sitemap)))
+#+END_SRC
+** COMMENT Daily
+Using Org-Journal for daily journaling.
+Package provides journaling support files for org mode.
+#+BEGIN_SRC emacs-lisp
+  (use-package org-journal
+    :ensure t
+    :custom
+    (org-journal-dir "~/Documents/Journal/daily")
+    (org-journal-date-format "%A, %d %B %Y")
+    (org-journal-time-format "%I:%M %p")
+    (org-journal-file-type "daily"))
+#+END_SRC
+
+

--
Gitblit v1.9.3