diff options
-rw-r--r-- | custom.el | 2 | ||||
-rw-r--r-- | smart-documents.org | 143 | ||||
-rw-r--r-- | smart-documents.pdf | bin | 112499 -> 130322 bytes | |||
-rw-r--r-- | themes/blendoit-light-theme.el | 4 |
4 files changed, 72 insertions, 77 deletions
@@ -15,7 +15,7 @@ '(company-quickhelp-color-foreground "#DCDCCC") '(custom-enabled-themes nil) '(custom-safe-themes - '("8fb0949f4229860cf19034b924eb99c664327c9250fb92a2633bdf4b4abaf060" "c3a2a37e84e474c73c2b468553f9b5b73341419f72bbc1f4a4bcc1230ef86c85" "6495716176be0ced4142593b94a410135e0b373b686a869637824260d2f1ca11" "4467b1c8d7cc78fe98345c9c63eb62cf37844dc6868630add365494bde455715" "faeef63cb31f796b4bdf22f38e614934ab34d7deacaeb89b3e9cccf70aac5a85" "370fb305168fea1614535dc9ca30f496918eaca754b6c8969dd77fa872bec695" "e9f0c0c3397d07eb1c6c3551d67fd151e24bc6d72ec678841623ed572677c97a" "5c32236ef318adafe4102f627f330fa8f448046dfd838eef5cc09c7f682cf71f" "e343fecfb8d681186d594002c9b44ce48c2061599d7e4ec635cf1ca2a277a47a" "302dc61dc55600c7424f945dce9e74fba7df19f4a7bfb72aefd93193fa82ede4" "58f1f85248ba913387d1e7ed02a867161b315cfb5acff0c234e013ffd2577d22" "a256abf590bbc3257cc11d91a312e9fe8487dc1b95a5b7b732dd2f96a7fe5a45" "30368d6195cae9298304e6ac0534b90c85b1655965f1206c5c624270f0f46002" "311aa5df3223b5b4a7c638aad3befb4de9c7f46360d52acd1fa2cd2232b1dcbd" default)) + '("469032293efae7c0c86a95c39cab8b0ff8883cf4af3f2c292313cf6a71195b40" "8fb0949f4229860cf19034b924eb99c664327c9250fb92a2633bdf4b4abaf060" "c3a2a37e84e474c73c2b468553f9b5b73341419f72bbc1f4a4bcc1230ef86c85" "6495716176be0ced4142593b94a410135e0b373b686a869637824260d2f1ca11" "4467b1c8d7cc78fe98345c9c63eb62cf37844dc6868630add365494bde455715" "faeef63cb31f796b4bdf22f38e614934ab34d7deacaeb89b3e9cccf70aac5a85" "370fb305168fea1614535dc9ca30f496918eaca754b6c8969dd77fa872bec695" "e9f0c0c3397d07eb1c6c3551d67fd151e24bc6d72ec678841623ed572677c97a" "5c32236ef318adafe4102f627f330fa8f448046dfd838eef5cc09c7f682cf71f" "e343fecfb8d681186d594002c9b44ce48c2061599d7e4ec635cf1ca2a277a47a" "302dc61dc55600c7424f945dce9e74fba7df19f4a7bfb72aefd93193fa82ede4" "58f1f85248ba913387d1e7ed02a867161b315cfb5acff0c234e013ffd2577d22" "a256abf590bbc3257cc11d91a312e9fe8487dc1b95a5b7b732dd2f96a7fe5a45" "30368d6195cae9298304e6ac0534b90c85b1655965f1206c5c624270f0f46002" "311aa5df3223b5b4a7c638aad3befb4de9c7f46360d52acd1fa2cd2232b1dcbd" default)) '(fci-rule-color "#383838") '(fringe-mode 0 nil (fringe)) '(indicate-empty-lines t) diff --git a/smart-documents.org b/smart-documents.org index eb7097a..4c7bcc4 100644 --- a/smart-documents.org +++ b/smart-documents.org @@ -4,7 +4,7 @@ #+AUTHOR: Marius Peter #+DATE: <2020-07-23 Thu> #+EMAIL: blendoit@gmail.com -#+STARTUP: showall customtime +#+STARTUP: showall #+SETUPFILE: ~/.emacs.d/templates/documents/general.org #+INCLUDE: ~/.emacs.d/templates/documents/general.org_title @@ -77,8 +77,6 @@ element. (message "Successfully captured user details.")) #+END_SRC - - #+NAME: user-details #+BEGIN_SRC emacs-lisp (defun my/tokenize-user-details () @@ -88,7 +86,6 @@ element. (unless (file-exists-p (concat user-emacs-directory "meta/user-details")) - (setq user-details '(user-full-name user-mail-address)) (append-to-file "Foobar\n" nil "~/.emacs.d/meta/foobar")) @@ -172,25 +169,29 @@ stop]]. We will then present profiling report in Section [[Profiling --- report] ; (profiler-start) #+END_SRC -** TODO Emacs client +** Jumping to this file -Makes opening emacs faster for following instances. +We begin by defining a function to open this very file. -#+NAME: emacs-client +#+NAME: shortcut-config #+BEGIN_SRC emacs-lisp -; (setq initial-buffer-choice (lambda () (get-buffer "*dashboard*"))) +(defun my/find-literate-config () + "Jump to this very file." + (interactive) + (find-file (concat my/literate-config ".org"))) #+END_SRC -** Jumping to this file - -We begin by defining a function to open this very file. +** Speeding up the next startup -#+NAME: shortcut-config #+BEGIN_SRC emacs-lisp - (defun my/find-literate-config () - "Jump to this very file." - (interactive) - (find-file (concat my/literate-config ".org"))) +(defun byte-compile-literate-config () + "Byte compile our literate configuration file." + (delete-file (concat my/literate-config ".elc")) + (delete-file (concat my/literate-config ".el")) + (org-babel-tangle-file (concat my/literate-config ".org")) + (byte-compile-file (concat my/literate-config ".el"))) + +(add-hook 'kill-emacs-hook 'byte-compile-literate-config) #+END_SRC ** Meta-files @@ -262,16 +263,20 @@ Backups are very important! ** Initial and default frames -We set the dimensions of the inital and default frames. +We set the dimensions of the initial frame: #+BEGIN_SRC emacs-lisp - (add-to-list 'default-frame-alist '(width . 100)) - (add-to-list 'default-frame-alist '(height . 50)) - (add-to-list 'initial-frame-alist '(width . 100)) (add-to-list 'initial-frame-alist '(height . 50)) #+END_SRC +We also set the dimensions of subsequent frames: + +#+BEGIN_SRC emacs-lisp + (add-to-list 'default-frame-alist '(width . 100)) + (add-to-list 'default-frame-alist '(height . 50)) +#+END_SRC + *** GNU/Linux These settings affect the first and subsequent frames spawned by Emacs in @@ -411,14 +416,6 @@ It seems that starting with Emacs 27.1, Control + mousewheel works. (global-set-key (kbd "C-+") 'text-scale-increase) #+END_SRC -*** Select all the text - -CUA, CUA, CUA, always & forever. - -#+BEGIN_SRC emacs-lisp -(global-set-key (kbd "C-a") 'mark-whole-buffer) -#+END_SRC - ** Customizing the editor *** Customize a variable @@ -676,33 +673,17 @@ i.e. chronologically. (setq org-agenda-insert-diary-strategy 'date-tree-last) #+END_SRC -What follows are the document class structures that can be exported in LaTeX. - -#+BEGIN_SRC emacs-lisp - (setq org-latex-classes - '(("article" "\\documentclass[11pt]{article}" - ("\\section{%s}" . "\\section*{%s}") - ("\\subsection{%s}" . "\\subsection*{%s}") - ("\\subsubsection{%s}" . "\\subsubsection*{%s}") - ("\\paragraph{%s}" . "\\paragraph*{%s}") - ("\\subparagraph{%s}" . "\\subparagraph*{%s}")) - ("report" "\\documentclass[11pt]{report}" - ("\\part{%s}" . "\\part*{%s}") - ("\\chapter{%s}" . "\\chapter*{%s}") - ("\\section{%s}" . "\\section*{%s}") - ("\\subsection{%s}" . "\\subsection*{%s}") - ("\\subsubsection{%s}" . "\\subsubsection*{%s}")) - ("book" "\\documentclass[12pt]{book}" - ("\\part{%s}" . "\\part*{%s}") - ("\\chapter{%s}" . "\\chapter*{%s}") - ("\\section{%s}" . "\\section*{%s}") - ("\\subsection{%s}" . "\\subsection*{%s}") - ("\\subsubsection{%s}" . "\\subsubsection*{%s}")) - ("book-blendoit" "\\documentclass[12pt]{book}" - ("\\chapter{%s}" . "\\chapter*{%s}") - ("\\section{%s}" . "\\section*{%s}") - ("\\subsection*{%s}" . "\\subsection*{%s}") - ("\\subsubsection*{%s}" . "\\subsubsection*{%s}")))) +What follows is an additional document class structures that can be exported in +LaTeX. + +#+BEGIN_SRC emacs-lisp +;; (add-to-list 'org-latex-classes +;; '("book-blendoit" +;; "\\documentclass[12pt]{book}" +;; ("\\chapter{%s}" . "\\chapter*{%s}") +;; ("\\section{%s}" . "\\section*{%s}") +;; ("\\subsection*{%s}" . "\\subsection*{%s}") +;; ("\\subsubsection*{%s}" . "\\subsubsection*{%s}"))) #+END_SRC By default, body text can immediately follow the table of contents. It is @@ -788,8 +769,8 @@ us a ton of time with boilerplate text! #+NAME: company #+BEGIN_SRC emacs-lisp -(use-package hungry-delete -:init (hungry-delete-mode)) +(use-package hungry-delete) +(global-hungry-delete-mode) #+END_SRC ** Utilities @@ -1071,6 +1052,32 @@ Automatically break lines longer than =fill-column=. (add-hook 'org-mode-hook 'turn-on-auto-fill) #+END_SRC +** Text + +*** Beautiful symbols + +We want the Emacs Lisp keyword =lambda= to be rendered as \lambda within the +editor. This is mostly for a subjective ``cool'' factor. + +#+BEGIN_SRC emacs-lisp +(global-prettify-symbols-mode 1) +#+END_SRC + +*** Org mode sugar + +Let's pimp out the appearance of our text in Org mode. First, we prettify +checkbox lists. + +#+BEGIN_SRC emacs-lisp +(add-hook 'org-mode-hook + (lambda () + "Beautify Org checkbox symbols." + (push '("[ ]" . "☐") prettify-symbols-alist) + (push '("[X]" . "☑" ) prettify-symbols-alist) + (push '("[-]" . "⬛" ) prettify-symbols-alist) + (prettify-symbols-mode))) +#+END_SRC + ** Minibuffer We replace the longer ~yes-or-no-p~ questions with more convenient ~y-or-n-p~. @@ -1121,7 +1128,7 @@ themes (Table [[theme-color-1]]). | \color{Tomato} Tomato | timestamp `TODO' | /same/ | | \color{Green} Green | positive | /same/ | | \color{ForestGreen} ForestGreen | timestamp `DONE' | /same/ | -| \color{Blue} Blue | interactable content; links | /same/ | +| \color{Blue} Blue | interactive content; links | /same/ | | \color{SteelBlue} SteelBlue | anything Org mode; anchor color | /same/ | | \color{DeepSkyBlue} DeepSkyBlue | ~highlight~ | /same/ | | \color{DodgerBlue} DodgerBlue | ~isearch~ | /same/ | @@ -1146,7 +1153,7 @@ cursor is a more MS Word-like bar. (setq-default cursor-type 'bar) #+END_SRC -*** Fonts +*** TODO Fonts - Hack :: ~default~ and ~fixed-pitch~ - Legible, modern monospace font @@ -1154,6 +1161,7 @@ cursor is a more MS Word-like bar. - Liberation Sans :: ~variable-pitch~ - Libre alternative to Arial - Unoffensive +- Open Sans :: ~variable-pitch~ - Hermit :: ~org-block~, anything Org/meta in general - Slightly wider than Hack - More opinionated shapes @@ -1181,21 +1189,8 @@ than 1920\times1080. * Late setup At this point, our editor is almost ready to run. Phew! All that's left to do -is to prepare for the next startup, interrupt our profiling activities, and -smartly store the result of our profiling. - -** Speeding up the next startup - -#+BEGIN_SRC emacs-lisp -(defun byte-compile-literate-config () - "Byte compile our literate configuration file." - (delete-file (concat my/literate-config ".elc")) - (delete-file (concat my/literate-config ".el")) - (org-babel-tangle-file (concat my/literate-config ".org")) - (byte-compile-file (concat my/literate-config ".el"))) - -(add-hook 'kill-emacs-hook 'byte-compile-literate-config) -#+END_SRC +is to interrupt our profiling activities, and smartly store the result of our +profiling. ** Profiling --- stop diff --git a/smart-documents.pdf b/smart-documents.pdf Binary files differindex 2846f9c..a774182 100644 --- a/smart-documents.pdf +++ b/smart-documents.pdf diff --git a/themes/blendoit-light-theme.el b/themes/blendoit-light-theme.el index 3ba0154..a502d9a 100644 --- a/themes/blendoit-light-theme.el +++ b/themes/blendoit-light-theme.el @@ -5,7 +5,7 @@ 'blendoit-light '(cursor ((t (:background "red")))) '(fixed-pitch ((t (:family "Hack")))) - '(variable-pitch ((t (:family "Liberation Sans")))) + '(variable-pitch ((t (:family "Open Sans")))) '(escape-glyph ((((background dark)) (:foreground "cyan")) (((type pc)) (:foreground "magenta")) (t (:foreground "brown")))) '(homoglyph ((((background dark)) (:foreground "cyan")) (((type pc)) (:foreground "magenta")) (t (:foreground "brown")))) '(minibuffer-prompt ((t (:inherit org-meta-line)))) @@ -60,7 +60,7 @@ '(org-checkbox-statistics-todo ((t (:inherit org-checkbox :foreground "tomato")))) '(org-checkbox-statistics-done ((t (:inherit org-checkbox :foreground "ForestGreen")))) '(org-verbatim ((t (:inherit fixed-pitch :height 0.9 :foreground "DodgerBlue1" :foundry "Hack")))) - '(font-lock-doc-face ((t (:inherit font-lock-string-face :Family "Liberation Sans")))) + '(font-lock-doc-face ((t (:inherit font-lock-string-face :Family "Open Sans")))) '(org-document-info ((t (:weight bold)))) '(org-table ((t (:height 0.8 :family "Hack")))) '(org-block ((t (:height 0.8 :family "Hermit")))) |