mirror of https://github.com/Chizi123/.emacs.d.git

Joel Grunbaum
2020-06-20 350884bb7afdb215fd73ba685063f9677303c209
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