From d4402a9acf9df537d2eeff459859cfa5d371fa1e Mon Sep 17 00:00:00 2001 From: Blendoit Date: Mon, 3 Aug 2020 21:14:39 -0700 Subject: Theme lookin' good B-) --- blendoit-theme.el | 95 ---- blendoit/blendoit-init.org | 974 ++++++++++++++++++++++++++++++++ blendoit/init-blendoit.org | 974 -------------------------------- blendoit/init-blendoit.pdf | Bin 153271 -> 0 bytes blendoit/themes/blendoit-light-theme.el | 64 +++ diary | 1 + fonts/DejaVuSansMono.ttf | Bin 0 -> 340712 bytes init-custom.aux | 20 + init-custom.el | 17 +- init.el | 2 +- 10 files changed, 1068 insertions(+), 1079 deletions(-) delete mode 100644 blendoit-theme.el create mode 100644 blendoit/blendoit-init.org delete mode 100644 blendoit/init-blendoit.org delete mode 100644 blendoit/init-blendoit.pdf create mode 100644 blendoit/themes/blendoit-light-theme.el create mode 100644 diary create mode 100644 fonts/DejaVuSansMono.ttf create mode 100644 init-custom.aux diff --git a/blendoit-theme.el b/blendoit-theme.el deleted file mode 100644 index 60a0f23..0000000 --- a/blendoit-theme.el +++ /dev/null @@ -1,95 +0,0 @@ -(deftheme blendoit - "Tasteful blue theme") - -(custom-theme-set-variables - 'blendoit - '(ansi-color-names-vector ["#3F3F3F" "#CC9393" "#7F9F7F" "#F0DFAF" "#8CD0D3" "#DC8CC3" "#93E0E3" "#DCDCCC"]) - '(cua-mode t) - '(ibuffer-sidebar-display-column-titles nil) - '(ibuffer-sidebar-display-summary nil) - '(ibuffer-sidebar-width 18) - '(mixed-pitch-variable-pitch-cursor (quote bar)) - '(org-agenda-diary-file "~/org/PERSONAL/diary/diary.org") - '(org-babel-load-languages (quote ((shell . t) (python . t) (plantuml . t) (emacs-lisp . t) (awk . t) (ledger . t) (gnuplot . t)))) - '(org-file-apps (quote ((auto-mode . emacs) ("\\.mm\\'" . default) ("\\.x?html?\\'" . default) ("\\.pdf\\'" . "mupdf %s")))) - '(org-latex-classes (quote (("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}"))))) - '(org-latex-inactive-timestamp-format "\\textcolor{ForestGreen!60}{\\textit{%s}}") - '(org-latex-packages-alist (quote (quote (("AUTO" "polyglossia" t ("xelatex" "lualatex")) ("AUTO" "babel" t ("pdflatex")) ("table,dvipsnames" "xcolor" t ("pdflatex")))))) - '(org-latex-pdf-process (quote ("latexmk -pdf -f -interaction=nonstopmode -pdflatex=\"%latex\" -outdir=%o %f"))) - '(org-latex-toc-command "\\tableofcontents\\clearpage") - '(org-startup-align-all-tables t) - '(org-time-stamp-custom-formats (quote ("%d %b, %Y (%a)" . "%d %b, %Y (%a), at %H:%M"))) - '(package-selected-packages (quote (linum-relative dumb-jump csv-mode rainbow-mode org-mouse projectile minimap gnuplot ledger-mode company-mode wombat-theme wombar-theme which-key srefactor-lisp srefactor all-the-icons flycheck ibuffer-sidebar pdf-tools magit rainbow-delimiters smartparens mixed-pitch org-bullets use-package tabbar powerline ivy-hydra flatui-theme evil counsel company benchmark-init))) - '(pdf-view-midnight-colors (quote ("#DCDCCC" . "#383838"))) - '(send-mail-function (quote smtpmail-send-it)) - '(window-divider-default-places (quote right-only)) - '(custom-safe-themes (quote (default))) - '(message-required-headers (quote ((optional . References) From))) - '(line-number-mode nil) - '(save-place-mode t)) - -(custom-theme-set-faces - 'blendoit - '(cursor ((t (:background "red")))) - '(fixed-pitch ((t (:family "Hack")))) - '(highlight ((t (:background "dim gray" :foreground "white")))) - '(org-document-title ((t (:inherit default :weight bold :height 2.0 :underline nil)))) - '(org-level-1 ((t (:height 1.75 :weight bold :inherit default)))) - '(org-level-2 ((t (:height 1.5 :weight bold :inherit default)))) - '(org-level-3 ((t (:height 1.25 :weight bold :inherit default)))) - '(org-level-4 ((t (:height 1.1 :weight bold :inherit default)))) - '(org-level-5 ((t (:inherit default :weight bold)))) - '(org-level-6 ((t (:weight bold :inherit default)))) - '(org-level-7 ((t (:weight bold :inherit default)))) - '(org-level-8 ((t (:weight bold :inherit default)))) - '(variable-pitch ((t (:family "Dejavu 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 ((((background dark)) (:foreground "cyan")) (((type pc)) (:foreground "magenta")) (t (:foreground "medium blue")))) - '(region ((((class color) (min-colors 88) (background dark)) (:background "blue3")) (((class color) (min-colors 88) (background light) (type gtk)) (:background "gtk_selection_bg_color" :distant-foreground "gtk_selection_fg_color")) (((class color) (min-colors 88) (background light) (type ns)) (:background "ns_selection_bg_color" :distant-foreground "ns_selection_fg_color")) (((class color) (min-colors 88) (background light)) (:background "lightgoldenrod2")) (((class color) (min-colors 16) (background dark)) (:background "blue3")) (((class color) (min-colors 16) (background light)) (:background "lightgoldenrod2")) (((class color) (min-colors 8)) (:foreground "white" :background "blue")) (((type tty) (class mono)) (:inverse-video t)) (t (:background "gray")))) - '(shadow ((t (:foreground "dim gray")))) - '(secondary-selection ((((class color) (min-colors 88) (background light)) (:background "yellow1")) (((class color) (min-colors 88) (background dark)) (:background "SkyBlue4")) (((class color) (min-colors 16) (background light)) (:background "yellow")) (((class color) (min-colors 16) (background dark)) (:background "SkyBlue4")) (((class color) (min-colors 8)) (:foreground "black" :background "cyan")) (t (:inverse-video t)))) - '(trailing-whitespace ((((class color) (background light)) (:background "red1")) (((class color) (background dark)) (:background "red1")) (t (:inverse-video t)))) - '(font-lock-builtin-face ((((class grayscale) (background light)) (:weight bold :foreground "LightGray")) (((class grayscale) (background dark)) (:weight bold :foreground "DimGray")) (((class color) (min-colors 88) (background light)) (:foreground "dark slate blue")) (((class color) (min-colors 88) (background dark)) (:foreground "LightSteelBlue")) (((class color) (min-colors 16) (background light)) (:foreground "Orchid")) (((class color) (min-colors 16) (background dark)) (:foreground "LightSteelBlue")) (((class color) (min-colors 8)) (:weight bold :foreground "blue")) (t (:weight bold)))) - '(font-lock-comment-delimiter-face ((t (:inherit font-lock-comment-face)))) - '(font-lock-comment-face ((t (:foreground "dim gray" :slant italic)))) - '(font-lock-constant-face ((((class grayscale) (background light)) (:underline (:color foreground-color :style line) :weight bold :foreground "LightGray")) (((class grayscale) (background dark)) (:underline (:color foreground-color :style line) :weight bold :foreground "Gray50")) (((class color) (min-colors 88) (background light)) (:foreground "dark cyan")) (((class color) (min-colors 88) (background dark)) (:foreground "Aquamarine")) (((class color) (min-colors 16) (background light)) (:foreground "CadetBlue")) (((class color) (min-colors 16) (background dark)) (:foreground "Aquamarine")) (((class color) (min-colors 8)) (:foreground "magenta")) (t (:underline (:color foreground-color :style line) :weight bold)))) - '(font-lock-doc-face ((t (:inherit font-lock-string-face)))) - '(font-lock-function-name-face ((t (:foreground "Blue1")))) - '(font-lock-keyword-face ((t (:foreground "DodgerBlue3")))) - '(font-lock-negation-char-face ((t nil))) - '(font-lock-preprocessor-face ((t (:inherit (font-lock-builtin-face))))) - '(font-lock-regexp-grouping-backslash ((t (:inherit (bold))))) - '(font-lock-regexp-grouping-construct ((t (:inherit (bold))))) - '(font-lock-string-face ((t (:foreground "lime green")))) - '(font-lock-type-face ((((class grayscale) (background light)) (:weight bold :foreground "Gray90")) (((class grayscale) (background dark)) (:weight bold :foreground "DimGray")) (((class color) (min-colors 88) (background light)) (:foreground "ForestGreen")) (((class color) (min-colors 88) (background dark)) (:foreground "PaleGreen")) (((class color) (min-colors 16) (background light)) (:foreground "ForestGreen")) (((class color) (min-colors 16) (background dark)) (:foreground "PaleGreen")) (((class color) (min-colors 8)) (:foreground "green")) (t (:underline (:color foreground-color :style line) :weight bold)))) - '(font-lock-variable-name-face ((((class grayscale) (background light)) (:slant italic :weight bold :foreground "Gray90")) (((class grayscale) (background dark)) (:slant italic :weight bold :foreground "DimGray")) (((class color) (min-colors 88) (background light)) (:foreground "sienna")) (((class color) (min-colors 88) (background dark)) (:foreground "LightGoldenrod")) (((class color) (min-colors 16) (background light)) (:foreground "DarkGoldenrod")) (((class color) (min-colors 16) (background dark)) (:foreground "LightGoldenrod")) (((class color) (min-colors 8)) (:weight light :foreground "yellow")) (t (:slant italic :weight bold)))) - '(font-lock-warning-face ((t (:inherit (error))))) - '(button ((t (:inherit link)))) - '(fringe ((t (:background "grey95")))) - '(header-line ((t (:box nil :foreground "grey20" :background "grey90" :inherit (mode-line))))) - '(tooltip ((t (:inherit variable-pitch :foreground "DodgerBlue3")))) - '(mode-line ((t (:background "gray" :foreground "black" :box (:line-width -1 :style released-button) :weight bold)))) - '(mode-line-buffer-id ((t (:weight bold)))) - '(mode-line-emphasis ((t (:weight bold)))) - '(mode-line-highlight ((((class color) (min-colors 88)) (:box (:line-width 2 :color "grey40" :style released-button))) (t (:inherit (highlight))))) - '(mode-line-inactive ((t (:inherit mode-line :background "gainsboro" :weight light)))) - '(isearch ((t (:stipple nil :background "yellow" :foreground "black" :weight bold)))) - '(isearch-fail ((t (:background "RosyBrown1")))) - '(lazy-highlight ((t (:inherit isearch)))) - '(match ((t (:background "light yellow")))) - '(next-error ((t (:inherit (region))))) - '(query-replace ((t (:inherit isearch)))) - '(org-date ((t (:foreground "blue" :underline t)))) - '(org-table ((t (:box (:line-width 1 :color "dark gray") :foreground "black")))) - '(org-meta-line ((t (:foreground "royal blue")))) - '(org-footnote ((t (:inherit org-meta-line)))) - '(swiper-line-face ((t nil))) - '(org-document-info ((t (:foreground "royal blue")))) - '(org-document-info-keyword ((t (:inherit shadow)))) - '(link ((t (:foreground "blue" :underline t)))) - '(org-todo ((t (:foreground "Red1" :box 2 :weight bold)))) - '(org-done ((t (:foreground "ForestGreen" :box 2 :weight bold)))) - '(default ((t (:inherit nil :stipple nil :background "white" :foreground "black" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 122 :width normal :foundry "UKWN" :family "Hermit"))))) - -(provide-theme 'blendoit) diff --git a/blendoit/blendoit-init.org b/blendoit/blendoit-init.org new file mode 100644 index 0000000..4dd4f4e --- /dev/null +++ b/blendoit/blendoit-init.org @@ -0,0 +1,974 @@ +#+TITLE: Blendoit's literate GNU Emacs config +#+AUTHOR: Marius Peter +#+DATE: <2020-07-23 Thu> + +#+STARTUP: customtime showall +#+SETUPFILE: ~/org/templates/documents/personal.org + +#+INCLUDE: ~/org/templates/documents/personal-title.org + +\begin{abstract} +GNU Emacs is most often used as a text editor. The utmost level of +customisation is afforded by enabling the user to rewrite /any/ part of the +source code and observe the editor's modified behaviour in real time. Since its +inception in 1984, GNU Emacs has grown to be much more than a full-featured, +high-productivity text editor---new /modes/ have been written to interact with +hundreds of file formats, including =.txt=, =.pdf=, =.jpg=, =.csv=, and =.zip= just to +name a few. This configuration file itself was written in /Org mode/, a +collection of functions enabling the harmonious mixing of code and comments in +view of publication: this is the endgame of /literate programming/. +\end{abstract} + +# ** Test + +# #+BEGIN_SRC emacs-lisp +# (org-babel-load-file "~/.emacs.d/blendoit/test.org") +# #+END_SRC + +* Preliminary setup + +** Garbage collection + +First, we increase the RAM threshold beyond which the garbage collector is +activated. + +#+NAME: garbage-collection +#+BEGIN_SRC emacs-lisp +(setq gc-cons-threshold 100000000) +#+END_SRC + +** Emacs client + +Makes opening emacs faster for following instances. + +#+NAME: emacs-client +#+BEGIN_SRC emacs-lisp + +; (setq initial-buffer-choice (lambda () (get-buffer "*dashboard*"))) +#+END_SRC + +** Profiling --- start + +We start the profiler now , and will interrupt it in section [[Profiling --- +stop]]. We will then present profiling report in [[Profiling --- report]]. + +#+NAME: profiler-start +#+BEGIN_SRC emacs-lisp +; (profiler-start) +#+END_SRC + +** Custom file + +Load settings created automatically by GNU Emacs Custom. (For example, any +clickable option/toggle is saved here.) Useful for fooling around with M-x +customize-group . + +#+NAME: custom-file +#+BEGIN_SRC emacs-lisp + (setq custom-file "~/.emacs.d/init-custom.el") + (load custom-file) +#+END_SRC + +** Customization shortcuts + +We begin by defining a user shortcut to this very file: + +#+NAME: shortcut-config +#+BEGIN_SRC emacs-lisp + (defun find-init-blendoit () + "Jump to this very file." + (interactive) + (find-file "~/.emacs.d/blendoit/blendoit-init.org")) + + (global-set-key (kbd "C-c c") 'find-init-blendoit) +#+END_SRC + +Now, different shortcuts for other customization actions: + +#+NAME: shortcuts-customization +#+BEGIN_SRC emacs-lisp + (global-set-key (kbd "C-c v") 'customize-variable) + (global-set-key (kbd "C-c f") 'customize-face) +#+END_SRC + +** Backups + +Backups are so important that they should be described right after the shortcut +to this file. + +#+BEGIN_SRC emacs-lisp + (setq backup-directory-alist `((".*" . ,temporary-file-directory)) + auto-save-file-name-transforms `((".*" ,temporary-file-directory t)) + backup-by-copying t ; Don't delink hardlinks + version-control t ; Use version numbers on backups + delete-old-versions t ; Automatically delete excess backups + kept-new-versions 20 ; how many of the newest versions to keep + kept-old-versions 5 ; and how many of the old + ) +#+END_SRC + +** Secrets + +#+INCLUDE: ./secrets.org + +#+BEGIN_SRC emacs-lisp + (setq user-full-name "Marius Peter" + user-mail-address "blendoit@gmail.com") +#+END_SRC + +* Global key bindings + +The following bindings strive to further enhance CUA[fn::Common User Access.] +mode. + +** Navigation + +#+BEGIN_SRC emacs-lisp + (global-set-key (kbd "C-`") 'delete-other-windows) + (global-set-key (kbd "C-s") 'save-buffer) + (global-set-key (kbd "C-b") 'ibuffer-sidebar-toggle-sidebar) + (global-set-key (kbd "C-o") 'menu-find-file-existing) + (global-set-key (kbd "C-r") 'counsel-recentf) +; (global-set-key (kbd "C-n") 'make-frame) ; 7aram! +#+END_SRC + +The following bindings lead to more natural exit behaviors. + +#+BEGIN_SRC emacs-lisp + (defun delete-window-or-previous-buffer () + "Delete window; if sole window, previous buffer." + (interactive) + (if (> (length (window-list)) 2) + (delete-window) + (previous-buffer))) + +(global-set-key (kbd "C-w") 'delete-window-or-previous-buffer) +(global-set-key (kbd "C-q") 'save-buffers-kill-terminal) +#+END_SRC + +** Mouse zoom + + Zoom in/out of selected buffer using Alt + mouse wheel. + +#+BEGIN_SRC emacs-lisp + (global-set-key [M-mouse-4] 'text-scale-increase) + (global-set-key [M-mouse-5] 'text-scale-decrease) +#+END_SRC + +* Packages + +** Package archives + +List of package archives. + +#+NAME: packages +#+BEGIN_SRC emacs-lisp + (require 'package) + (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) + (add-to-list 'package-archives '("org" . "https://orgmode.org/elpa/") t) + (package-initialize) +#+END_SRC + +** use-package + +Ensure =use-package= is installed, as well as all packages described in this +configuration file. + +#+BEGIN_SRC emacs-lisp + (unless (package-installed-p 'use-package) + (package-refresh-contents) + (package-install 'use-package) + (eval-when-compile (require 'use-package))) + (setq use-package-always-ensure t) +#+END_SRC + +** Convenient package update + +One-function rollup of upgradeable package tagging, download and lazy install. + +** Ivy + +Auto completion. + +#+BEGIN_SRC emacs-lisp + (use-package ivy + :config + (setq ivy-use-virtual-buffers t + ivy-count-format "%d/%d " + enable-recursive-minibuffers t)) + (ivy-mode t) +#+END_SRC + +** Evil + +Forgive me, for I have sinned. + +#+BEGIN_SRC emacs-lisp + (use-package evil) + ;; (evil-mode 1) +#+END_SRC + +*** Counsel + + Wonderful counsellor! + +#+BEGIN_SRC emacs-lisp + (use-package counsel + :bind ("M-x" . counsel-M-x) + :config (counsel-mode t)) + + (global-set-key (kbd "C-f") 'counsel-grep-or-swiper) +#+END_SRC + +*** Swiper + +#+BEGIN_SRC emacs-lisp +(use-package swiper + :bind (("C-f" . counsel-grep-or-swiper))) +#+END_SRC + +** Org + +Phew, I can finally introduce Org mode! I am so *excited*. + +Org mode replaces aword processor, a presentation creator, and a spreadsheet +editor. IMHO, the spreadsheet ability captures more than 80% use cases wherein +one wishes to include a table in a text document destined for physical +publication. (It is clear that Excel spreadsheets are /not/ destined for physical +publication---simply attempt to print an Excel spreadsheet with the default +settings.) In my opinion, Org mode matches all /useful/ features of the +Microsoft Office suite 1-to-1. + +What follows are customizations designed to make Org mode behave more like +Microsoft Word. The end goal is, once again, to draw as many new users to Emacs +as possible! + +*** Basic customization + +First, we hide markup symbols for *bold*, /italic/, _underlined_ and +strikethrough+ +text, and ensure our document appears indented upon loading:[fn::It /appears/ +indented, but the underlying plaintext file does not contain tab characters!] + +#+NAME: org-basic +#+BEGIN_SRC emacs-lisp + (setq org-hide-emphasis-markers t) + (setq org-startup-indented t) +#+END_SRC + +Then, we customize Org headings to emulate WYSIWYG[fn::What You See Is What You +Get (input and output are identical), as opposed to What You See Is What You +Mean (the input contains instructions that can modify the output).] behavior +normally found in Word: + +#+NAME: org-list-bullets +#+BEGIN_SRC emacs-lisp + (setq org-directory "~/org") + (font-lock-add-keywords + 'org-mode + '(("^ *\\([-]\\) " + (0 (prog1 () (compose-region (match-beginning 1) (match-end 1) "•")))))) +#+END_SRC + +- Look at +- This beautifully indented + - List... + - Of lists! +- (Rendered with pretty bullets in Emacs) + +The following prettifies Org mode heading bullets: + +#+NAME: org-headings-bullets +#+BEGIN_SRC emacs-lisp + (use-package org-bullets + :hook + (org-mode . org-bullets-mode) + ) +#+END_SRC + +Thank you Diego +Zamboni![fn::https://zzamboni.org/post/beautifying-org-mode-in-emacs/] + +#+NAME: org-cosmetics +#+BEGIN_SRC emacs-lisp + ;; (let* ((variable-tuple + ;; (cond ((x-list-fonts "Dejavu Sans") '(:font "Dejavu Sans")) + ;; ((x-family-fonts "Sans Serif") '(:family "Sans Serif")) + ;; (nil (warn "Cannot find a Sans Serif Font. Install Source Sans Pro.")))) + ;; (base-font-color (face-foreground 'default nil 'default)) + ;; (headline `(:inherit default :weight bold))) + + ;; (custom-theme-set-faces + ;; 'user + ;; `(org-level-8 ((t (,@headline ,@variable-tuple)))) + ;; `(org-level-7 ((t (,@headline ,@variable-tuple)))) + ;; `(org-level-6 ((t (,@headline ,@variable-tuple)))) + ;; `(org-level-5 ((t (,@headline ,@variable-tuple)))) + ;; `(org-level-4 ((t (,@headline ,@variable-tuple :height 1.1)))) + ;; `(org-level-3 ((t (,@headline ,@variable-tuple :height 1.25)))) + ;; `(org-level-2 ((t (,@headline ,@variable-tuple :height 1.5)))) + ;; `(org-level-1 ((t (,@headline ,@variable-tuple :height 1.75)))) + ;; `(org-document-title ((t (,@headline ,@variable-tuple :height 2.0 :underline nil)))))) + + ;(custom-theme-set-faces + ; 'user + ; '(variable-pitch ((t (:family "Liberation Sans")))) + ; '(fixed-pitch ((t ( :family "Hack"))))) + +#+END_SRC + +*** Invisible edits + +#+BEGIN_SRC emacs-lisp +(setq org-catch-invisible-edits t) +#+END_SRC + +*** Agenda + +The agenda displays a chronological list of headings across all agenda files +for which the heading or body contain a matching =org-time-stamp=.[fn::An +=org-time-stamp= can be inserted with =C-c .= (period)] + +#+BEGIN_SRC emacs-lisp +(global-set-key (kbd "C-c a") 'org-agenda) +#+END_SRC + +*** Publish + +In the following /alist/ (association list), we describe the projects publishable +via =org-publish=. We separate the publishing of =.org= files and attachments, +because an online tutorial recommended we do so. + +#+BEGIN_SRC emacs-lisp +(require 'ox-publish) +(setq org-publish-project-alist + '( + ("Safran-VIP-html" + :base-directory "~/org/WORK/Safran/programs/B787/VIP/doc/org/" + :base-extension "org" + :publishing-directory "~/org/WORK/Safran/programs/B787/VIP/doc/wiki/" + :recursive t + :publishing-function org-html-publish-to-html + :auto-preamble t + :auto-sitemap t + :sitemap-title "" ) + + ("Safran-VIP-static" + :base-directory "~/org/WORK/Safran/programs/B787/VIP/doc/org/" + :base-extension "css\\|js\\|png\\|jpg\\|gif\\|pdf\\|mp3\\|mp4\\|ogg\\|swf" + :publishing-directory "~/org/WORK/Safran/programs/B787/VIP/doc/wiki/" + :recursive t + :publishing-function org-publish-attachment ) + + ("Safran-VIP-all" + :components ("Safran-VIP-html" "Safran-VIP-static")) + + ("Safran-MA700-html" + :base-directory "~/org/WORK/Safran/programs/MA700/doc/org/" + :base-extension "org" + :publishing-directory "~/org/WORK/Safran/programs/MA700/doc/wiki/" + :recursive t + :publishing-function org-html-publish-to-html + :auto-preamble t + :auto-sitemap t + :sitemap-title "" ) + + ("Safran-MA700-static" + :base-directory "~/org/WORK/Safran/programs/MA700/doc/org/" + :base-extension "css\\|js\\|png\\|jpg\\|gif\\|pdf\\|mp3\\|mp4\\|ogg\\|swf" + :publishing-directory "~/org/WORK/Safran/programs/MA700/doc/wiki/" + :recursive t + :publishing-function org-publish-attachment ) + + ("Safran-MA700-all" + :components ("Safran-MA700-html" "Safran-MA700-static")))) + + (add-to-list 'org-latex-packages-alist '("table" "xcolor" + t ("pdflatex"))) + (add-to-list 'org-latex-packages-alist '("AUTO" "babel" + t ("pdflatex"))) + (add-to-list 'org-latex-packages-alist '("AUTO" "polyglossia" + t ("xelatex" "lualatex"))) +#+END_SRC + +*** Export + +This creates a shorter binding for the most common Org export: Org \rightarrow +LaTeX \rightarrow PDF. + +#+BEGIN_SRC emacs-lisp +(defun blendoit-org-quick-export () + "Org export to PDF and open. + This basically reimplements `C-c C-e l o'." + (interactive) + (org-latex-export-to-pdf) + (org-open-file + (concat (substring buffer-file-truename 0 -3) "pdf"))) + +(global-set-key (kbd "C-c e") 'blendoit-org-quick-export) +#+END_SRC + +** undo tree + +#+BEGIN_SRC emacs-lisp +(global-undo-tree-mode) +#+END_SRC + +** dumb jump + +#+BEGIN_SRC emacs-lisp +(use-package dumb-jump) +#+END_SRC + +** gnuplot + +#+BEGIN_SRC emacs-lisp +(use-package gnuplot) +#+END_SRC + +** Ledger + +#+BEGIN_SRC emacs-lisp + (use-package ledger-mode + :bind + ("C-c r" . ledger-report) + ("C-c C" . ledger-mode-clean-buffer)) +#+END_SRC + +** ibuffer-sidebar + +#+BEGIN_SRC emacs-lisp +(use-package ibuffer-sidebar) +(ibuffer-sidebar-show-sidebar) + +; :bind ("mouse-1" . ibuffer-mouse-visit-buffer) +; :bind ("mouse-3" . ibuffer-mouse-toggle-mark)) + +; (add-hook 'ibuffer-sidebar-mode-hook +; (lambda () +; (local-unset-key (quote mouse-1)) +; (local-unset-key (quote mouse-2)) +; (local-set-key (quote mouse-1) (quote ibuffer-mouse-visit-buffer)) +; (local-set-key (quote mouse-2) (quote ibuffer-mouse-toggle-mark)))) +#+END_SRC + +** Which-key + +#+BEGIN_SRC emacs-lisp +(use-package which-key +:init + (which-key-mode) +;; :config +;; (setq which-key-idle-delay 1000) +;; (setq which-key-idle-secondary-delay 0.05) +;; (setq which-key-show-early-on-C-h t) +) +#+END_SRC + +** Company + +#+NAME: company +#+BEGIN_SRC emacs-lisp + (add-hook 'after-init-hook 'global-company-mode) +#+END_SRC + +** Flycheck + +#+NAME: flycheck +#+BEGIN_SRC emacs-lisp +(use-package flycheck + :init (global-flycheck-mode)) +#+END_SRC + +** CSV + +#+BEGIN_SRC emacs-lisp + (use-package csv-mode) +#+END_SRC + +* JSON + +Oí, Jason! + +#+BEGIN_SRC emacs-lisp + (use-package json-mode) +#+END_SRC + +** Magit + +#+BEGIN_SRC emacs-lisp + (use-package magit + :bind ("C-c g" . magit-status)) +#+END_SRC + +** PDF-tools + +#+BEGIN_SRC emacs-lisp +(use-package pdf-tools + :config (pdf-loader-install)) +#+END_SRC + +** Dashboard + +We replace the standard welcome screen with our own. + +#+BEGIN_SRC emacs-lisp +(setq inhibit-startup-message t) +(use-package dashboard + :config + (dashboard-setup-startup-hook) + (setq dashboard-startup-banner "~/.emacs.d/blendoit/img/Safran_logo.svg") + (setq dashboard-items '((recents . 5) + (projects . 5))) + (setq dashboard-banner-logo-title "The editor for the 2nd millenium.")) +#+END_SRC + +** rainbow + +This highlights hexadecimal numbers which look like colors, in that same color. + +#+BEGIN_SRC emacs-lisp +(use-package rainbow-mode + :ensure t + :init + (add-hook 'prog-mode-hook 'rainbow-mode)) +#+END_SRC + +** Projectile + +This enables us to better manage our =.git= projects. + +#+BEGIN_SRC emacs-lisp + (use-package projectile + :bind ("C-c p" . 'projectile-command-map) + :init (projectile-mode 1) + (setq projectile-completion-system 'ivy)) +#+END_SRC + +** Better parentheses + +#+BEGIN_SRC emacs-lisp +(show-paren-mode 1) + + (use-package smartparens + :config + (add-hook 'prog-mode-hook #'smartparens-mode)) + + (use-package rainbow-delimiters + :config + (add-hook 'prog-mode-hook #'rainbow-delimiters-mode)) +#+END_SRC + +* Cosmetics + +** Faces & cursors + +In order to imitate other modern text editors, we'll resort to a blinking bar +cursor. We choose red, the most captivating color, because the cursor is +arguably the region on our screen: + +1. most often looked at; +2. most often searched when lost. + +The default cursor already blinks. + +*** Default cursor + +In files containing only fixed-pitch fonts (i.e. files containing only code), +the cursor becomes a high-visibility box. + +#+BEGIN_SRC emacs-lisp +(setq-default cursor-type (quote box)) +#+END_SRC + +*** Mixed pitch in Org mode + +Fixed-pitch and variable-pitch fonts will be used intelligently in all hooked +modes. + +#+BEGIN_SRC emacs-lisp + (use-package mixed-pitch + :hook ((org-mode . mixed-pitch-mode) + (Info-mode . mixed-pitch-mode))) +#+END_SRC + +** Initial frame + +These settings affect the first and subsequent frames spawned by Emacs. + +Thank you Xah Lee![fn::http://ergoemacs.org/emacs/emacs_customize_default_window_size.html] + +#+BEGIN_SRC emacs-lisp + (if (display-graphic-p) + (progn + (setq initial-frame-alist + '( + (tool-bar-lines . 1) + (width . 100) ; chars + (height . 48) ; lines + (alpha . (90 . 50)))) + (setq default-frame-alist + '( + (tool-bar-lines . 1) + (width . 100) + (height . 48) + (alpha . (90 . 50)))))) +#+END_SRC + +** Theme + +#+BEGIN_SRC emacs-lisp +;; (use-package zenburn-theme +;; :config +;; (load-theme 'zenburn)) + +(load-theme 'blendoit-light) +#+END_SRC + +** All the icons + +#+BEGIN_SRC emacs-lisp +(use-package all-the-icons) +#+END_SRC + +* Editing preferences + +These customizations enhance editor usability. + +#+BEGIN_SRC emacs-lisp + (setq-default fill-column 79) + (defalias 'yes-or-no-p 'y-or-n-p) +#+END_SRC + +Disable minibuffer scroll bar. + +#+BEGIN_SRC emacs-lisp +(set-window-scroll-bars (minibuffer-window) nil nil) +; (set-window-scroll-bars (ibuffer-sidebar-window) nil nil) +#+END_SRC + +** Clean up menus + +We reduce the burden on the user by reducing total amount of entries in GUI +menus. + +*** File + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-file-menu [print-buffer] nil) +(define-key menu-bar-file-menu [print-region] nil) +(define-key menu-bar-file-menu [ps-print-buffer-faces] nil) +(define-key menu-bar-file-menu [ps-print-region-faces] nil) +(define-key menu-bar-file-menu [ps-print-buffer] nil) +(define-key menu-bar-file-menu [ps-print-region] nil) +(define-key menu-bar-file-menu [split-window-below] nil) +(define-key menu-bar-file-menu [split-window-right] nil) +(define-key menu-bar-file-menu [dired] nil) +#+END_SRC + +*** Edit + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +#+END_SRC + +*** Options + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +#+END_SRC + +*** Buffers + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +#+END_SRC + +*** Tools + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +#+END_SRC + +*** Org + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +#+END_SRC + +*** Tbl + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +#+END_SRC + +*** Text + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +#+END_SRC + +*** Projectile + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +#+END_SRC + +*** Help + +#+BEGIN_SRC emacs-lisp +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +(define-key menu-bar-file-menu [dired] nil) +(define-key menu-bar-help-menu [emacs-psychotherapist] nil) +#+END_SRC + +** Coding standards + +This is just a better default. + +#+BEGIN_SRC emacs-lisp +(setq c-default-style "linux" + c-basic-offset 4) +#+END_SRC + +** Tabs + +#+BEGIN_SRC emacs-lisp +(use-package tabbar) +#+END_SRC + +Thank you +https://andreyorst.gitlab.io/posts/2020-05-10-making-emacs-tabs-look-like-in-atom/ + +#+BEGIN_SRC emacs-lisp +(when (and window-system + (not (version< emacs-version "27"))) + (use-package tab-line + :hook (after-init . global-tab-line-mode) + :config + (defun tab-line-close-tab (&optional e) + "Close the selected tab. + +If tab is presented in another window, close the tab by using +`bury-buffer` function. If tab is unique to all existing +windows, kill the buffer with `kill-buffer` function. Lastly, if +no tabs left in the window, it is deleted with `delete-window` +function." + (interactive "e") + (let* ((posnp (event-start e)) + (window (posn-window posnp)) + (buffer (get-pos-property 1 'tab (car (posn-string posnp))))) + (with-selected-window window + (let ((tab-list (tab-line-tabs-window-buffers)) + (buffer-list (flatten-list + (seq-reduce (lambda (list window) + (select-window window t) + (cons (tab-line-tabs-window-buffers) list)) + (window-list) nil)))) + (select-window window) + (if (> (seq-count (lambda (b) (eq b buffer)) buffer-list) 1) + (progn + (if (eq buffer (current-buffer)) + (bury-buffer) + (set-window-prev-buffers window (assq-delete-all buffer (window-prev-buffers))) + (set-window-next-buffers window (delq buffer (window-next-buffers)))) + (unless (cdr tab-list) + (ignore-errors (delete-window window)))) + (and (kill-buffer buffer) + (unless (cdr tab-list) + (ignore-errors (delete-window window))))))))) + + + (defcustom tab-line-tab-min-width 10 + "Minimum width of a tab in characters." + :type 'integer + :group 'tab-line) + + + (defcustom tab-line-tab-max-width 30 + "Maximum width of a tab in characters." + :type 'integer + :group 'tab-line) + + (defcustom tab-line-ellipsis-string "…" + "String for indicating truncated names" + :type 'string + :group 'tab-line) + + (defun aorst/tab-line--tab-width (window-width tab-amount) + "Calculate width of single tab dividing WINDOW-WIDTH by TAB-AMOUNT." + (let* ((close-button-size + (if tab-line-close-button-show + (length (substring-no-properties tab-line-close-button)) 0)) + (tab-width (/ window-width tab-amount))) + (- (cond ((< window-width 0) + tab-line-tab-min-width) + ((>= tab-width tab-line-tab-max-width) + tab-line-tab-max-width) + ((< tab-width tab-line-tab-min-width) + tab-line-tab-min-width) + (t tab-width)) + close-button-size))) + + (defun aorst/tab-line--max-width (window) + "Calculate free width of the WINDOW. + +Free width means amount of space we can use to display tabs +without truncation." + (- (window-width window) + (length (substring-no-properties tab-line-left-button)) + (length (substring-no-properties tab-line-right-button)) + (if tab-line-new-button-show + (length (substring-no-properties tab-line-new-button)) + 0))) + + + (defun aorst/tab-line--make-pad (tab-width name-width) + "Generate padding string based on TAB-WIDTH and NAME-WIDTH." + (let* ((width (- tab-width name-width)) + (padding (/ (if (oddp width) (+ width 1) width) 2))) + (make-string padding ?\s))) + + + (defun aorst/tab-line-name-buffer (buffer &rest _buffers) + "Create name for tab with padding and truncation. + +If buffer name is shorter than `tab-line-tab-max-width' it gets +centered with spaces, otherwise it is truncated, to preserve +equal width for all tabs. This function also tries to fit as +many tabs in window as possible, so if there are no room for tabs +with maximum width, it calculates new width for each tab and +truncates text if needed. Minimal width can be set with +`tab-line-tab-min-width' variable." + (with-current-buffer buffer + (let* ((amount (length (tab-line-tabs-window-buffers))) + (width (aorst/tab-line--tab-width + (aorst/tab-line--max-width (get-buffer-window buffer)) + amount)) + (buffer (string-trim (buffer-name))) + (name-width (length buffer)) + (right-pad (if tab-line-close-button-show "" " ")) + (truncate-width (- width + (length tab-line-ellipsis-string) + (length right-pad)))) + (if (>= name-width truncate-width) + (concat " " (truncate-string-to-width buffer truncate-width) tab-line-ellipsis-string right-pad) + (let* ((padding (aorst/tab-line--make-pad width name-width)) + (tab-text (concat padding buffer)) + (text-width (length tab-text))) + (concat tab-text (make-string (- width text-width) ?\s))))))) + + + (setq tab-line-close-button-show t + tab-line-new-button-show nil + tab-line-separator "" + tab-line-tab-name-function #'aorst/tab-line-name-buffer + tab-line-right-button (propertize (if (char-displayable-p ?▶) " ▶ " " > ") + 'keymap tab-line-right-map + 'mouse-face 'tab-line-highlight + 'help-echo "Click to scroll right") + tab-line-left-button (propertize (if (char-displayable-p ?◀) " ◀ " " < ") + 'keymap tab-line-left-map + 'mouse-face 'tab-line-highlight + 'help-echo "Click to scroll left") + tab-line-close-button (propertize (if (char-displayable-p ?×) " × " " x ") + 'keymap tab-line-tab-close-map + 'mouse-face 'tab-line-close-highlight + 'help-echo "Click to close tab")) + + + (let ((bg (if (facep 'solaire-default-face) + (face-attribute 'solaire-default-face :background) + (face-attribute 'default :background))) + (fg (face-attribute 'default :foreground)) + (base (if (facep 'solaire-default-face) + (face-attribute 'default :background) + (face-attribute 'mode-line :background))) + (box-width (/ (line-pixel-height) 2))) + (when (and (color-defined-p bg) + (color-defined-p fg) + (color-defined-p base) + (numberp box-width)) + (set-face-attribute 'tab-line nil + :background base + :foreground fg + :height 1.0 + :inherit nil + :box (list :line-width -1 :color base)) + (set-face-attribute 'tab-line-tab nil + :foreground fg + :background bg + :weight 'normal + :inherit nil + :box (list :line-width box-width :color bg)) + (set-face-attribute 'tab-line-tab-inactive nil + :foreground fg + :background base + :weight 'normal + :inherit nil + :box (list :line-width box-width :color base)) + (set-face-attribute 'tab-line-tab-current nil + :foreground fg + :background bg + :weight 'normal + :inherit nil + :box (list :line-width box-width :color bg)))) + (setq tab-line-exclude-modes '()) + (dolist (mode '(ediff-mode + process-menu-mode + term-mode + vterm-mode)) + (add-to-list 'tab-line-exclude-modes mode)) + + (defun aorst/tab-line-drop-caches () + "Drops `tab-line' cache in every window." + (dolist (window (window-list)) + (set-window-parameter window 'tab-line-cache nil))) + + (add-hook 'window-configuration-change-hook #'aorst/tab-line-drop-caches))) +#+END_SRC + +** auto fill + +Automatically break lines longer than =fill-column=. + +#+BEGIN_SRC emacs-lisp + (add-hook 'org-mode-hook 'turn-on-auto-fill) +#+END_SRC + +** Recent files + +#+BEGIN_SRC emacs-lisp + (recentf-mode 1) + (setq recentf-max-menu-items 25) + (setq recentf-max-saved-items 25) + (run-at-time nil (* 5 60) 'recentf-save-list) +#+END_SRC + +* Profiling --- stop + +#+BEGIN_SRC emacs-lisp +;; (profiler-stop) +#+END_SRC + +* Profiling --- report + +#+BEGIN_SRC emacs-lisp +;; (profiler-report) +#+END_SRC diff --git a/blendoit/init-blendoit.org b/blendoit/init-blendoit.org deleted file mode 100644 index a05c2cf..0000000 --- a/blendoit/init-blendoit.org +++ /dev/null @@ -1,974 +0,0 @@ -#+TITLE: Blendoit's literate GNU Emacs config -#+AUTHOR: Marius Peter -#+DATE: <2020-07-23 Thu> - -#+STARTUP: customtime showall -#+SETUPFILE: ~/org/templates/documents/personal.org - -#+INCLUDE: ~/org/templates/documents/personal-title.org - -\begin{abstract} -GNU Emacs is most often used as a text editor. The utmost level of -customisation is afforded by enabling the user to rewrite /any/ part of the -source code and observe the editor's modified behaviour in real time. Since its -inception in 1984, GNU Emacs has grown to be much more than a full-featured, -high-productivity text editor---new /modes/ have been written to interact with -hundreds of file formats, including =.txt=, =.pdf=, =.jpg=, =.csv=, and =.zip= just to -name a few. This configuration file itself was written in /Org mode/, a -collection of functions enabling the harmonious mixing of code and comments in -view of publication: this is the endgame of /literate programming/. -\end{abstract} - -# ** Test - -# #+BEGIN_SRC emacs-lisp -# (org-babel-load-file "~/.emacs.d/blendoit/test.org") -# #+END_SRC - -* Preliminary setup - -** Garbage collection - -First, we increase the RAM threshold beyond which the garbage collector is -activated. - -#+NAME: garbage-collection -#+BEGIN_SRC emacs-lisp -(setq gc-cons-threshold 100000000) -#+END_SRC - -** Emacs client - -Makes opening emacs faster for following instances. - -#+NAME: emacs-client -#+BEGIN_SRC emacs-lisp - -; (setq initial-buffer-choice (lambda () (get-buffer "*dashboard*"))) -#+END_SRC - -** Profiling --- start - -We start the profiler now , and will interrupt it in section [[Profiling --- -stop]]. We will then present profiling report in [[Profiling --- report]]. - -#+NAME: profiler-start -#+BEGIN_SRC emacs-lisp -; (profiler-start) -#+END_SRC - -** Custom file - -Load settings created automatically by GNU Emacs Custom. (For example, any -clickable option/toggle is saved here.) Useful for fooling around with M-x -customize-group . - -#+NAME: custom-file -#+BEGIN_SRC emacs-lisp - (setq custom-file "~/.emacs.d/init-custom.el") - (load custom-file) -#+END_SRC - -** Customization shortcuts - -We begin by defining a user shortcut to this very file: - -#+NAME: shortcut-config -#+BEGIN_SRC emacs-lisp - (defun find-init-blendoit () - "Jump to this very file." - (interactive) - (find-file "~/.emacs.d/blendoit/init-blendoit.org")) - - (global-set-key (kbd "C-c c") 'find-init-blendoit) -#+END_SRC - -Now, different shortcuts for other customization actions: - -#+NAME: shortcuts-customization -#+BEGIN_SRC emacs-lisp - (global-set-key (kbd "C-c v") 'customize-variable) - (global-set-key (kbd "C-c f") 'customize-face) -#+END_SRC - -** Backups - -Backups are so important that they should be described right after the shortcut -to this file. - -#+BEGIN_SRC emacs-lisp - (setq backup-directory-alist `((".*" . ,temporary-file-directory)) - auto-save-file-name-transforms `((".*" ,temporary-file-directory t)) - backup-by-copying t ; Don't delink hardlinks - version-control t ; Use version numbers on backups - delete-old-versions t ; Automatically delete excess backups - kept-new-versions 20 ; how many of the newest versions to keep - kept-old-versions 5 ; and how many of the old - ) -#+END_SRC - -** Secrets - -#+INCLUDE: ./secrets.org - -#+BEGIN_SRC emacs-lisp - (setq user-full-name "Marius Peter" - user-mail-address "blendoit@gmail.com") -#+END_SRC - -* Global key bindings - -The following bindings strive to further enhance CUA[fn::Common User Access.] -mode. - -** Navigation - -#+BEGIN_SRC emacs-lisp - (global-set-key (kbd "C-`") 'delete-other-windows) - (global-set-key (kbd "C-s") 'save-buffer) - (global-set-key (kbd "C-b") 'ibuffer-sidebar-toggle-sidebar) - (global-set-key (kbd "C-o") 'menu-find-file-existing) - (global-set-key (kbd "C-r") 'counsel-recentf) -; (global-set-key (kbd "C-n") 'make-frame) ; 7aram! -#+END_SRC - -The following bindings lead to more natural exit behaviors. - -#+BEGIN_SRC emacs-lisp - (defun delete-window-or-previous-buffer () - "Delete window; if sole window, previous buffer." - (interactive) - (if (> (length (window-list)) 2) - (delete-window) - (previous-buffer))) - -(global-set-key (kbd "C-w") 'delete-window-or-previous-buffer) -(global-set-key (kbd "C-q") 'save-buffers-kill-terminal) -#+END_SRC - -** Mouse zoom - - Zoom in/out of selected buffer using Alt + mouse wheel. - -#+BEGIN_SRC emacs-lisp - (global-set-key [M-mouse-4] 'text-scale-increase) - (global-set-key [M-mouse-5] 'text-scale-decrease) -#+END_SRC - -* Packages - -** Package archives - -List of package archives. - -#+NAME: packages -#+BEGIN_SRC emacs-lisp - (require 'package) - (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) - (add-to-list 'package-archives '("org" . "https://orgmode.org/elpa/") t) - (package-initialize) -#+END_SRC - -** use-package - -Ensure =use-package= is installed, as well as all packages described in this -configuration file. - -#+BEGIN_SRC emacs-lisp - (unless (package-installed-p 'use-package) - (package-refresh-contents) - (package-install 'use-package) - (eval-when-compile (require 'use-package))) - (setq use-package-always-ensure t) -#+END_SRC - -** Convenient package update - -One-function rollup of upgradeable package tagging, download and lazy install. - -** Ivy - -Auto completion. - -#+BEGIN_SRC emacs-lisp - (use-package ivy - :config - (setq ivy-use-virtual-buffers t - ivy-count-format "%d/%d " - enable-recursive-minibuffers t)) - (ivy-mode t) -#+END_SRC - -** Evil - -Forgive me, for I have sinned. - -#+BEGIN_SRC emacs-lisp - (use-package evil) - ;; (evil-mode 1) -#+END_SRC - -*** Counsel - - Wonderful counsellor! - -#+BEGIN_SRC emacs-lisp - (use-package counsel - :bind ("M-x" . counsel-M-x) - :config (counsel-mode t)) - - (global-set-key (kbd "C-f") 'counsel-grep-or-swiper) -#+END_SRC - -*** Swiper - -#+BEGIN_SRC emacs-lisp -(use-package swiper - :bind (("C-f" . counsel-grep-or-swiper))) -#+END_SRC - -** Org - -Phew, I can finally introduce Org mode! I am so *excited*. - -Org mode replaces aword processor, a presentation creator, and a spreadsheet -editor. IMHO, the spreadsheet ability captures more than 80% use cases wherein -one wishes to include a table in a text document destined for physical -publication. (It is clear that Excel spreadsheets are /not/ destined for physical -publication---simply attempt to print an Excel spreadsheet with the default -settings.) In my opinion, Org mode matches all /useful/ features of the -Microsoft Office suite 1-to-1. - -What follows are customizations designed to make Org mode behave more like -Microsoft Word. The end goal is, once again, to draw as many new users to Emacs -as possible! - -*** Basic customization - -First, we hide markup symbols for *bold*, /italic/, _underlined_ and +strikethrough+ -text, and ensure our document appears indented upon loading:[fn::It /appears/ -indented, but the underlying plaintext file does not contain tab characters!] - -#+NAME: org-basic -#+BEGIN_SRC emacs-lisp - (setq org-hide-emphasis-markers t) - (setq org-startup-indented t) -#+END_SRC - -Then, we customize Org headings to emulate WYSIWYG[fn::What You See Is What You -Get (input and output are identical), as opposed to What You See Is What You -Mean (the input contains instructions that can modify the output).] behavior -normally found in Word: - -#+NAME: org-list-bullets -#+BEGIN_SRC emacs-lisp - (setq org-directory "~/org") - (font-lock-add-keywords - 'org-mode - '(("^ *\\([-]\\) " - (0 (prog1 () (compose-region (match-beginning 1) (match-end 1) "•")))))) -#+END_SRC - -- Look at -- This beautifully indented - - List... - - Of lists! -- (Rendered with pretty bullets in Emacs) - -The following prettifies Org mode heading bullets: - -#+NAME: org-headings-bullets -#+BEGIN_SRC emacs-lisp - (use-package org-bullets - :hook - (org-mode . org-bullets-mode) - ) -#+END_SRC - -Thank you Diego -Zamboni![fn::https://zzamboni.org/post/beautifying-org-mode-in-emacs/] - -#+NAME: org-cosmetics -#+BEGIN_SRC emacs-lisp - ;; (let* ((variable-tuple - ;; (cond ((x-list-fonts "Dejavu Sans") '(:font "Dejavu Sans")) - ;; ((x-family-fonts "Sans Serif") '(:family "Sans Serif")) - ;; (nil (warn "Cannot find a Sans Serif Font. Install Source Sans Pro.")))) - ;; (base-font-color (face-foreground 'default nil 'default)) - ;; (headline `(:inherit default :weight bold))) - - ;; (custom-theme-set-faces - ;; 'user - ;; `(org-level-8 ((t (,@headline ,@variable-tuple)))) - ;; `(org-level-7 ((t (,@headline ,@variable-tuple)))) - ;; `(org-level-6 ((t (,@headline ,@variable-tuple)))) - ;; `(org-level-5 ((t (,@headline ,@variable-tuple)))) - ;; `(org-level-4 ((t (,@headline ,@variable-tuple :height 1.1)))) - ;; `(org-level-3 ((t (,@headline ,@variable-tuple :height 1.25)))) - ;; `(org-level-2 ((t (,@headline ,@variable-tuple :height 1.5)))) - ;; `(org-level-1 ((t (,@headline ,@variable-tuple :height 1.75)))) - ;; `(org-document-title ((t (,@headline ,@variable-tuple :height 2.0 :underline nil)))))) - - ;(custom-theme-set-faces - ; 'user - ; '(variable-pitch ((t (:family "Liberation Sans")))) - ; '(fixed-pitch ((t ( :family "Hack"))))) - -#+END_SRC - -*** Invisible edits - -#+BEGIN_SRC emacs-lisp -(setq org-catch-invisible-edits t) -#+END_SRC - -*** Agenda - -The agenda displays a chronological list of headings across all agenda files -for which the heading or body contain a matching =org-time-stamp=.[fn::An -=org-time-stamp= can be inserted with =C-c .= (period)] - -#+BEGIN_SRC emacs-lisp -(global-set-key (kbd "C-c a") 'org-agenda) -#+END_SRC - -*** Publish - -In the following /alist/ (association list), we describe the projects publishable -via =org-publish=. We separate the publishing of =.org= files and attachments, -because an online tutorial recommended we do so. - -#+BEGIN_SRC emacs-lisp -(require 'ox-publish) -(setq org-publish-project-alist - '( - ("Safran-VIP-html" - :base-directory "~/org/WORK/Safran/programs/B787/VIP/doc/org/" - :base-extension "org" - :publishing-directory "~/org/WORK/Safran/programs/B787/VIP/doc/wiki/" - :recursive t - :publishing-function org-html-publish-to-html - :auto-preamble t - :auto-sitemap t - :sitemap-title "" ) - - ("Safran-VIP-static" - :base-directory "~/org/WORK/Safran/programs/B787/VIP/doc/org/" - :base-extension "css\\|js\\|png\\|jpg\\|gif\\|pdf\\|mp3\\|mp4\\|ogg\\|swf" - :publishing-directory "~/org/WORK/Safran/programs/B787/VIP/doc/wiki/" - :recursive t - :publishing-function org-publish-attachment ) - - ("Safran-VIP-all" - :components ("Safran-VIP-html" "Safran-VIP-static")) - - ("Safran-MA700-html" - :base-directory "~/org/WORK/Safran/programs/MA700/doc/org/" - :base-extension "org" - :publishing-directory "~/org/WORK/Safran/programs/MA700/doc/wiki/" - :recursive t - :publishing-function org-html-publish-to-html - :auto-preamble t - :auto-sitemap t - :sitemap-title "" ) - - ("Safran-MA700-static" - :base-directory "~/org/WORK/Safran/programs/MA700/doc/org/" - :base-extension "css\\|js\\|png\\|jpg\\|gif\\|pdf\\|mp3\\|mp4\\|ogg\\|swf" - :publishing-directory "~/org/WORK/Safran/programs/MA700/doc/wiki/" - :recursive t - :publishing-function org-publish-attachment ) - - ("Safran-MA700-all" - :components ("Safran-MA700-html" "Safran-MA700-static")))) - - (add-to-list 'org-latex-packages-alist '("table" "xcolor" - t ("pdflatex"))) - (add-to-list 'org-latex-packages-alist '("AUTO" "babel" - t ("pdflatex"))) - (add-to-list 'org-latex-packages-alist '("AUTO" "polyglossia" - t ("xelatex" "lualatex"))) -#+END_SRC - -*** Export - -This creates a shorter binding for the most common Org export: Org \rightarrow -LaTeX \rightarrow PDF. - -#+BEGIN_SRC emacs-lisp -(defun blendoit-org-quick-export () - "Org export to PDF and open. - This basically reimplements `C-c C-e l o'." - (interactive) - (org-latex-export-to-pdf) - (org-open-file - (concat (substring buffer-file-truename 0 -3) "pdf"))) - -(global-set-key (kbd "C-c e") 'blendoit-org-quick-export) -#+END_SRC - -** undo tree - -#+BEGIN_SRC emacs-lisp -(global-undo-tree-mode) -#+END_SRC - -** dumb jump - -#+BEGIN_SRC emacs-lisp -(use-package dumb-jump) -#+END_SRC - -** gnuplot - -#+BEGIN_SRC emacs-lisp -(use-package gnuplot) -#+END_SRC - -** Ledger - -#+BEGIN_SRC emacs-lisp - (use-package ledger-mode - :bind - ("C-c r" . ledger-report) - ("C-c C" . ledger-mode-clean-buffer)) -#+END_SRC - -** ibuffer-sidebar - -#+BEGIN_SRC emacs-lisp -(use-package ibuffer-sidebar) -(ibuffer-sidebar-show-sidebar) - -; :bind ("mouse-1" . ibuffer-mouse-visit-buffer) -; :bind ("mouse-3" . ibuffer-mouse-toggle-mark)) - -; (add-hook 'ibuffer-sidebar-mode-hook -; (lambda () -; (local-unset-key (quote mouse-1)) -; (local-unset-key (quote mouse-2)) -; (local-set-key (quote mouse-1) (quote ibuffer-mouse-visit-buffer)) -; (local-set-key (quote mouse-2) (quote ibuffer-mouse-toggle-mark)))) -#+END_SRC - -** Which-key - -#+BEGIN_SRC emacs-lisp -(use-package which-key -:init - (which-key-mode) -;; :config -;; (setq which-key-idle-delay 1000) -;; (setq which-key-idle-secondary-delay 0.05) -;; (setq which-key-show-early-on-C-h t) -) -#+END_SRC - -** Company - -#+NAME: company -#+BEGIN_SRC emacs-lisp - (add-hook 'after-init-hook 'global-company-mode) -#+END_SRC - -** Flycheck - -#+NAME: flycheck -#+BEGIN_SRC emacs-lisp -(use-package flycheck - :init (global-flycheck-mode)) -#+END_SRC - -** CSV - -#+BEGIN_SRC emacs-lisp - (use-package csv-mode) -#+END_SRC - -* JSON - -Oí, Jason! - -#+BEGIN_SRC emacs-lisp - (use-package json-mode) -#+END_SRC - -** Magit - -#+BEGIN_SRC emacs-lisp - (use-package magit - :bind ("C-c g" . magit-status)) -#+END_SRC - -** PDF-tools - -#+BEGIN_SRC emacs-lisp -(use-package pdf-tools - :config (pdf-loader-install)) -#+END_SRC - -** Dashboard - -We replace the standard welcome screen with our own. - -#+BEGIN_SRC emacs-lisp -(setq inhibit-startup-message t) -(use-package dashboard - :config - (dashboard-setup-startup-hook) - (setq dashboard-startup-banner "~/.emacs.d/blendoit/img/Safran_logo.svg") - (setq dashboard-items '((recents . 5) - (projects . 5))) - (setq dashboard-banner-logo-title "The editor for the 2nd millenium.")) -#+END_SRC - -** rainbow - -This highlights hexadecimal numbers which look like colors, in that same color. - -#+BEGIN_SRC emacs-lisp -(use-package rainbow-mode - :ensure t - :init - (add-hook 'prog-mode-hook 'rainbow-mode)) -#+END_SRC - -** Projectile - -This enables us to better manage our =.git= projects. - -#+BEGIN_SRC emacs-lisp - (use-package projectile - :bind ("C-c p" . 'projectile-command-map) - :init (projectile-mode 1) - (setq projectile-completion-system 'ivy)) -#+END_SRC - -** Better parentheses - -#+BEGIN_SRC emacs-lisp -(show-paren-mode 1) - - (use-package smartparens - :config - (add-hook 'prog-mode-hook #'smartparens-mode)) - - (use-package rainbow-delimiters - :config - (add-hook 'prog-mode-hook #'rainbow-delimiters-mode)) -#+END_SRC - -* Cosmetics - -** Faces & cursors - -In order to imitate other modern text editors, we'll resort to a blinking bar -cursor. We choose red, the most captivating color, because the cursor is -arguably the region on our screen: - -1. most often looked at; -2. most often searched when lost. - -The default cursor already blinks. - -*** Default cursor - -In files containing only fixed-pitch fonts (i.e. files containing only code), -the cursor becomes a high-visibility box. - -#+BEGIN_SRC emacs-lisp -(setq-default cursor-type (quote box)) -#+END_SRC - -*** Mixed pitch in Org mode - -Fixed-pitch and variable-pitch fonts will be used intelligently in all hooked -modes. - -#+BEGIN_SRC emacs-lisp - (use-package mixed-pitch - :hook ((org-mode . mixed-pitch-mode) - (Info-mode . mixed-pitch-mode))) -#+END_SRC - -** Initial frame - -These settings affect the first and subsequent frames spawned by Emacs. - -Thank you Xah Lee![fn::http://ergoemacs.org/emacs/emacs_customize_default_window_size.html] - -#+BEGIN_SRC emacs-lisp - (if (display-graphic-p) - (progn - (setq initial-frame-alist - '( - (tool-bar-lines . 1) - (width . 100) ; chars - (height . 48) ; lines - (alpha . (90 . 50)))) - (setq default-frame-alist - '( - (tool-bar-lines . 1) - (width . 100) - (height . 48) - (alpha . (90 . 50)))))) -#+END_SRC - -** Theme - -#+BEGIN_SRC emacs-lisp -;; (use-package zenburn-theme -;; :config -;; (load-theme 'zenburn)) - -(load-theme 'blendoit) -#+END_SRC - -** All the icons - -#+BEGIN_SRC emacs-lisp -(use-package all-the-icons) -#+END_SRC - -* Editing preferences - -These customizations enhance editor usability. - -#+BEGIN_SRC emacs-lisp - (setq-default fill-column 79) - (defalias 'yes-or-no-p 'y-or-n-p) -#+END_SRC - -Disable minibuffer scroll bar. - -#+BEGIN_SRC emacs-lisp -(set-window-scroll-bars (minibuffer-window) nil nil) -; (set-window-scroll-bars (ibuffer-sidebar-window) nil nil) -#+END_SRC - -** Clean up menus - -We reduce the burden on the user by reducing total amount of entries in GUI -menus. - -*** File - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-file-menu [print-buffer] nil) -(define-key menu-bar-file-menu [print-region] nil) -(define-key menu-bar-file-menu [ps-print-buffer-faces] nil) -(define-key menu-bar-file-menu [ps-print-region-faces] nil) -(define-key menu-bar-file-menu [ps-print-buffer] nil) -(define-key menu-bar-file-menu [ps-print-region] nil) -(define-key menu-bar-file-menu [split-window-below] nil) -(define-key menu-bar-file-menu [split-window-right] nil) -(define-key menu-bar-file-menu [dired] nil) -#+END_SRC - -*** Edit - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -#+END_SRC - -*** Options - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -#+END_SRC - -*** Buffers - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -#+END_SRC - -*** Tools - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -#+END_SRC - -*** Org - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -#+END_SRC - -*** Tbl - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -#+END_SRC - -*** Text - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -#+END_SRC - -*** Projectile - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -#+END_SRC - -*** Help - -#+BEGIN_SRC emacs-lisp -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -(define-key menu-bar-file-menu [dired] nil) -(define-key menu-bar-help-menu [emacs-psychotherapist] nil) -#+END_SRC - -** Coding standards - -This is just a better default. - -#+BEGIN_SRC emacs-lisp -(setq c-default-style "linux" - c-basic-offset 4) -#+END_SRC - -** Tabs - -#+BEGIN_SRC emacs-lisp -(use-package tabbar) -#+END_SRC - -Thank you -https://andreyorst.gitlab.io/posts/2020-05-10-making-emacs-tabs-look-like-in-atom/ - -#+BEGIN_SRC emacs-lisp -(when (and window-system - (not (version< emacs-version "27"))) - (use-package tab-line - :hook (after-init . global-tab-line-mode) - :config - (defun tab-line-close-tab (&optional e) - "Close the selected tab. - -If tab is presented in another window, close the tab by using -`bury-buffer` function. If tab is unique to all existing -windows, kill the buffer with `kill-buffer` function. Lastly, if -no tabs left in the window, it is deleted with `delete-window` -function." - (interactive "e") - (let* ((posnp (event-start e)) - (window (posn-window posnp)) - (buffer (get-pos-property 1 'tab (car (posn-string posnp))))) - (with-selected-window window - (let ((tab-list (tab-line-tabs-window-buffers)) - (buffer-list (flatten-list - (seq-reduce (lambda (list window) - (select-window window t) - (cons (tab-line-tabs-window-buffers) list)) - (window-list) nil)))) - (select-window window) - (if (> (seq-count (lambda (b) (eq b buffer)) buffer-list) 1) - (progn - (if (eq buffer (current-buffer)) - (bury-buffer) - (set-window-prev-buffers window (assq-delete-all buffer (window-prev-buffers))) - (set-window-next-buffers window (delq buffer (window-next-buffers)))) - (unless (cdr tab-list) - (ignore-errors (delete-window window)))) - (and (kill-buffer buffer) - (unless (cdr tab-list) - (ignore-errors (delete-window window))))))))) - - - (defcustom tab-line-tab-min-width 10 - "Minimum width of a tab in characters." - :type 'integer - :group 'tab-line) - - - (defcustom tab-line-tab-max-width 30 - "Maximum width of a tab in characters." - :type 'integer - :group 'tab-line) - - (defcustom tab-line-ellipsis-string "…" - "String for indicating truncated names" - :type 'string - :group 'tab-line) - - (defun aorst/tab-line--tab-width (window-width tab-amount) - "Calculate width of single tab dividing WINDOW-WIDTH by TAB-AMOUNT." - (let* ((close-button-size - (if tab-line-close-button-show - (length (substring-no-properties tab-line-close-button)) 0)) - (tab-width (/ window-width tab-amount))) - (- (cond ((< window-width 0) - tab-line-tab-min-width) - ((>= tab-width tab-line-tab-max-width) - tab-line-tab-max-width) - ((< tab-width tab-line-tab-min-width) - tab-line-tab-min-width) - (t tab-width)) - close-button-size))) - - (defun aorst/tab-line--max-width (window) - "Calculate free width of the WINDOW. - -Free width means amount of space we can use to display tabs -without truncation." - (- (window-width window) - (length (substring-no-properties tab-line-left-button)) - (length (substring-no-properties tab-line-right-button)) - (if tab-line-new-button-show - (length (substring-no-properties tab-line-new-button)) - 0))) - - - (defun aorst/tab-line--make-pad (tab-width name-width) - "Generate padding string based on TAB-WIDTH and NAME-WIDTH." - (let* ((width (- tab-width name-width)) - (padding (/ (if (oddp width) (+ width 1) width) 2))) - (make-string padding ?\s))) - - - (defun aorst/tab-line-name-buffer (buffer &rest _buffers) - "Create name for tab with padding and truncation. - -If buffer name is shorter than `tab-line-tab-max-width' it gets -centered with spaces, otherwise it is truncated, to preserve -equal width for all tabs. This function also tries to fit as -many tabs in window as possible, so if there are no room for tabs -with maximum width, it calculates new width for each tab and -truncates text if needed. Minimal width can be set with -`tab-line-tab-min-width' variable." - (with-current-buffer buffer - (let* ((amount (length (tab-line-tabs-window-buffers))) - (width (aorst/tab-line--tab-width - (aorst/tab-line--max-width (get-buffer-window buffer)) - amount)) - (buffer (string-trim (buffer-name))) - (name-width (length buffer)) - (right-pad (if tab-line-close-button-show "" " ")) - (truncate-width (- width - (length tab-line-ellipsis-string) - (length right-pad)))) - (if (>= name-width truncate-width) - (concat " " (truncate-string-to-width buffer truncate-width) tab-line-ellipsis-string right-pad) - (let* ((padding (aorst/tab-line--make-pad width name-width)) - (tab-text (concat padding buffer)) - (text-width (length tab-text))) - (concat tab-text (make-string (- width text-width) ?\s))))))) - - - (setq tab-line-close-button-show t - tab-line-new-button-show nil - tab-line-separator "" - tab-line-tab-name-function #'aorst/tab-line-name-buffer - tab-line-right-button (propertize (if (char-displayable-p ?▶) " ▶ " " > ") - 'keymap tab-line-right-map - 'mouse-face 'tab-line-highlight - 'help-echo "Click to scroll right") - tab-line-left-button (propertize (if (char-displayable-p ?◀) " ◀ " " < ") - 'keymap tab-line-left-map - 'mouse-face 'tab-line-highlight - 'help-echo "Click to scroll left") - tab-line-close-button (propertize (if (char-displayable-p ?×) " × " " x ") - 'keymap tab-line-tab-close-map - 'mouse-face 'tab-line-close-highlight - 'help-echo "Click to close tab")) - - - (let ((bg (if (facep 'solaire-default-face) - (face-attribute 'solaire-default-face :background) - (face-attribute 'default :background))) - (fg (face-attribute 'default :foreground)) - (base (if (facep 'solaire-default-face) - (face-attribute 'default :background) - (face-attribute 'mode-line :background))) - (box-width (/ (line-pixel-height) 2))) - (when (and (color-defined-p bg) - (color-defined-p fg) - (color-defined-p base) - (numberp box-width)) - (set-face-attribute 'tab-line nil - :background base - :foreground fg - :height 1.0 - :inherit nil - :box (list :line-width -1 :color base)) - (set-face-attribute 'tab-line-tab nil - :foreground fg - :background bg - :weight 'normal - :inherit nil - :box (list :line-width box-width :color bg)) - (set-face-attribute 'tab-line-tab-inactive nil - :foreground fg - :background base - :weight 'normal - :inherit nil - :box (list :line-width box-width :color base)) - (set-face-attribute 'tab-line-tab-current nil - :foreground fg - :background bg - :weight 'normal - :inherit nil - :box (list :line-width box-width :color bg)))) - (setq tab-line-exclude-modes '()) - (dolist (mode '(ediff-mode - process-menu-mode - term-mode - vterm-mode)) - (add-to-list 'tab-line-exclude-modes mode)) - - (defun aorst/tab-line-drop-caches () - "Drops `tab-line' cache in every window." - (dolist (window (window-list)) - (set-window-parameter window 'tab-line-cache nil))) - - (add-hook 'window-configuration-change-hook #'aorst/tab-line-drop-caches))) -#+END_SRC - -** auto fill - -Automatically break lines longer than =fill-column=. - -#+BEGIN_SRC emacs-lisp - (add-hook 'org-mode-hook 'turn-on-auto-fill) -#+END_SRC - -** Recent files - -#+BEGIN_SRC emacs-lisp - (recentf-mode 1) - (setq recentf-max-menu-items 25) - (setq recentf-max-saved-items 25) - (run-at-time nil (* 5 60) 'recentf-save-list) -#+END_SRC - -* Profiling --- stop - -#+BEGIN_SRC emacs-lisp -;; (profiler-stop) -#+END_SRC - -* Profiling --- report - -#+BEGIN_SRC emacs-lisp -;; (profiler-report) -#+END_SRC diff --git a/blendoit/init-blendoit.pdf b/blendoit/init-blendoit.pdf deleted file mode 100644 index ce4e071..0000000 Binary files a/blendoit/init-blendoit.pdf and /dev/null differ diff --git a/blendoit/themes/blendoit-light-theme.el b/blendoit/themes/blendoit-light-theme.el new file mode 100644 index 0000000..6d90bda --- /dev/null +++ b/blendoit/themes/blendoit-light-theme.el @@ -0,0 +1,64 @@ +(deftheme blendoit-light + "Created 2020-08-03.") + +(custom-theme-set-faces + 'blendoit-light + '(fixed-pitch ((t (:inherit default :family "Dejavu Sans Mono")))) + '(variable-pitch ((t (:family "Liberation 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 ((((background dark)) (:foreground "cyan")) (((type pc)) (:foreground "magenta")) (t (:foreground "medium blue")))) + '(highlight ((t (:underline nil :foreground "#ffffff" :background "#454545")))) + '(region ((t (:background "light gray")))) + '(shadow ((((class color grayscale) (min-colors 88) (background light)) (:foreground "grey50")) (((class color grayscale) (min-colors 88) (background dark)) (:foreground "grey70")) (((class color) (min-colors 8) (background light)) (:foreground "green")) (((class color) (min-colors 8) (background dark)) (:foreground "yellow")))) + '(secondary-selection ((((class color) (min-colors 88) (background light)) (:background "yellow1")) (((class color) (min-colors 88) (background dark)) (:background "SkyBlue4")) (((class color) (min-colors 16) (background light)) (:background "yellow")) (((class color) (min-colors 16) (background dark)) (:background "SkyBlue4")) (((class color) (min-colors 8)) (:foreground "black" :background "cyan")) (t (:inverse-video t)))) + '(trailing-whitespace ((((class color) (background light)) (:background "red1")) (((class color) (background dark)) (:background "red1")) (t (:inverse-video t)))) + '(font-lock-builtin-face ((((class grayscale) (background light)) (:weight bold :foreground "LightGray")) (((class grayscale) (background dark)) (:weight bold :foreground "DimGray")) (((class color) (min-colors 88) (background light)) (:foreground "dark slate blue")) (((class color) (min-colors 88) (background dark)) (:foreground "LightSteelBlue")) (((class color) (min-colors 16) (background light)) (:foreground "Orchid")) (((class color) (min-colors 16) (background dark)) (:foreground "LightSteelBlue")) (((class color) (min-colors 8)) (:weight bold :foreground "blue")) (t (:weight bold)))) + '(font-lock-comment-delimiter-face ((t (:inherit font-lock-comment-face :foreground "dim gray")))) + '(font-lock-comment-face ((t (:foreground "dark gray" :slant italic)))) + '(font-lock-constant-face ((((class grayscale) (background light)) (:underline (:color foreground-color :style line) :weight bold :foreground "LightGray")) (((class grayscale) (background dark)) (:underline (:color foreground-color :style line) :weight bold :foreground "Gray50")) (((class color) (min-colors 88) (background light)) (:foreground "dark cyan")) (((class color) (min-colors 88) (background dark)) (:foreground "Aquamarine")) (((class color) (min-colors 16) (background light)) (:foreground "CadetBlue")) (((class color) (min-colors 16) (background dark)) (:foreground "Aquamarine")) (((class color) (min-colors 8)) (:foreground "magenta")) (t (:underline (:color foreground-color :style line) :weight bold)))) + '(font-lock-doc-face ((t (:inherit font-lock-string-face)))) + '(font-lock-function-name-face ((((class color) (min-colors 88) (background light)) (:foreground "Blue1")) (((class color) (min-colors 88) (background dark)) (:foreground "LightSkyBlue")) (((class color) (min-colors 16) (background light)) (:foreground "Blue")) (((class color) (min-colors 16) (background dark)) (:foreground "LightSkyBlue")) (((class color) (min-colors 8)) (:weight bold :foreground "blue")) (t (:weight bold :inverse-video t)))) + '(font-lock-keyword-face ((t (:foreground "DodgerBlue4")))) + '(font-lock-negation-char-face ((t nil))) + '(font-lock-preprocessor-face ((t (:inherit (font-lock-builtin-face))))) + '(font-lock-regexp-grouping-backslash ((t (:inherit (bold))))) + '(font-lock-regexp-grouping-construct ((t (:inherit (bold))))) + '(font-lock-string-face ((t (:foreground "dark cyan")))) + '(font-lock-type-face ((t (:foreground "ForestGreen")))) + '(font-lock-variable-name-face ((t (:foreground "sienna")))) + '(font-lock-warning-face ((t (:inherit (error))))) + '(link-visited ((t (:foreground "magenta4" :inherit (link))))) + '(fringe ((t (:background "grey95")))) + '(header-line ((t (:box nil :foreground "grey20" :background "grey90" :inherit (mode-line))))) + '(tooltip ((t (:foreground "black" :background "lightyellow" :inherit (variable-pitch))))) + '(mode-line ((t (:box (:line-width -1 :color nil :style released-button) :foreground "black" :background "grey75")))) + '(mode-line-buffer-id ((t (:weight bold)))) + '(mode-line-emphasis ((t (:weight bold)))) + '(mode-line-highlight ((((class color) (min-colors 88)) (:box (:line-width 2 :color "grey40" :style released-button))) (t (:inherit (highlight))))) + '(mode-line-inactive ((t (:weight light :box (:line-width -1 :color "grey75" :style nil) :foreground "grey20" :background "grey90" :inherit (mode-line))))) + '(isearch ((((class color) (min-colors 88) (background light)) (:foreground "lightskyblue1" :background "magenta3")) (((class color) (min-colors 88) (background dark)) (:foreground "brown4" :background "palevioletred2")) (((class color) (min-colors 16)) (:foreground "cyan1" :background "magenta4")) (((class color) (min-colors 8)) (:foreground "cyan1" :background "magenta4")) (t (:inverse-video t)))) + '(isearch-fail ((((class color) (min-colors 88) (background light)) (:background "RosyBrown1")) (((class color) (min-colors 88) (background dark)) (:background "red4")) (((class color) (min-colors 16)) (:background "red")) (((class color) (min-colors 8)) (:background "red")) (((class color grayscale)) (:foreground "grey")) (t (:inverse-video t)))) + '(lazy-highlight ((t (:background "paleturquoise")))) + '(match ((((class color) (min-colors 88) (background light)) (:background "yellow1")) (((class color) (min-colors 88) (background dark)) (:background "RoyalBlue3")) (((class color) (min-colors 8) (background light)) (:foreground "black" :background "yellow")) (((class color) (min-colors 8) (background dark)) (:foreground "white" :background "blue")) (((type tty) (class mono)) (:inverse-video t)) (t (:background "gray")))) + '(next-error ((t (:inherit (region))))) + '(query-replace ((t (:inherit (isearch))))) + '(org-table ((t (:box (:line-width 2 :color "gainsboro" :style released-button))))) + '(org-formula ((t (:inherit org-table)))) + '(org-meta-line ((t (:foreground "DodgerBlue3" :family "Hermit")))) + '(org-document-title ((t (:width normal :height 2.0 :weight bold :slant normal :underline nil :inherit default)))) + '(org-level-1 ((t (:height 1.75 :weight bold :inherit fixed-pitch)))) + '(org-level-2 ((t (:height 1.5 :weight bold :inherit fixed-pitch)))) + '(org-level-3 ((t (:inherit fixed-pitch :weight bold :height 1.25)))) + '(org-level-4 ((t (:inherit fixed-pitch :weight bold :height 1.1)))) + '(org-date ((t (:inherit link :foreground "DodgerBlue3" :slant italic :family "Liberation Serif")))) + '(org-footnote ((t (:foreground "DodgerBlue3" :inherit link)))) + '(org-block ((t (:inherit nil :family "Hermit")))) + '(org-tag ((t (:inherit link :weight bold :foreground "DodgerBlue3")))) + '(org-document-info ((t (:inherit org-meta-line)))) + '(link ((t (:foreground "blue" :underline t)))) + '(org-document-info-keyword ((t (:inherit org-meta-line)))) + '(dashboard-heading ((t (:inherit font-lock-keyword-face)))) + '(default ((t (:background "white" :foreground "black" :height 142 :family "Liberation Mono"))))) + +(provide-theme 'blendoit-light) diff --git a/diary b/diary new file mode 100644 index 0000000..c1b0730 --- /dev/null +++ b/diary @@ -0,0 +1 @@ +x \ No newline at end of file diff --git a/fonts/DejaVuSansMono.ttf b/fonts/DejaVuSansMono.ttf new file mode 100644 index 0000000..9d65312 Binary files /dev/null and b/fonts/DejaVuSansMono.ttf differ diff --git a/init-custom.aux b/init-custom.aux new file mode 100644 index 0000000..525ba22 --- /dev/null +++ b/init-custom.aux @@ -0,0 +1,20 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} +\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined +\global\let\oldcontentsline\contentsline +\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} +\global\let\oldnewlabel\newlabel +\gdef\newlabel#1#2{\newlabelxx{#1}#2} +\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} +\AtEndDocument{\ifx\hyper@anchor\@undefined +\let\contentsline\oldcontentsline +\let\newlabel\oldnewlabel +\fi} +\fi} +\global\let\hyper@last\relax +\gdef\HyperFirstAtBeginDocument#1{#1} +\providecommand\HyField@AuxAddToFields[1]{} +\providecommand\HyField@AuxAddToCoFields[2]{} +\@nameuse{bbl@beforestart} +\babel@aux{english}{} diff --git a/init-custom.el b/init-custom.el index bfbadf5..c934f6b 100644 --- a/init-custom.el +++ b/init-custom.el @@ -14,10 +14,12 @@ '(company-quickhelp-color-background "#4F4F4F") '(company-quickhelp-color-foreground "#DCDCCC") '(cua-mode t nil (cua-base)) + '(cursor-type (quote bar)) '(custom-enabled-themes nil) '(custom-safe-themes (quote - ("00087223a3ba61a42feb4bb898e8eb6cbc301e96e8e8d46c50f202b6bb435bc8" "b77b4effef346442f97b12b3b17056e60e7d8122fba4b7d692c7e633b00fef2a" "413627ea61e7aee5429a37a07d893436fa50d90db1c9cad63c3fe880d16ea366" "9de2e8914e2d8bdadad1eb0ca9ba5a1c5bbbfb71b91eaca7996691cd97f0e863" "fe4a68cae5bf268eb4da12eb78d06e40265e46c0e63eb5bf6e3545c4d0fe4cf9" "35ae89ec94b266fe007ec56be07b30aabaf6565d9a59c2e21e5943a9fec58069" "5c2bac01062bc2496baf2fde79cc4ede470b9395af5014991132034dcbfda677" "2df61c2e91799bf9d31fbe5ca4d407ef03669dbc8efd84f8acab83b0bbb63a56" "4d966fc76684e7f95122c877a95e8f6e4fa9d784225a4111cf1ce80969a4498f" "935b7766c7b74d2801be8a0cbd14967d090769e7353fcdf72b1a4d695393fd04" "503683e60ca9efa6d138cccae401269d13aef9e0101fbda20341edc2294c950b" "e55352d8828ed4e056652fa7fd5db47603ee48368fbae500837630a7345fb6b2" "f81e8249778eeeed1dc71c69cc37aab6f68d111b6e770496b2e6c87f4d1d9a05" "1ec13d23f091b5e6fb8621b85fad1ebbc3fb132daf505fd953d27f97ec573d67" "923a4e39d4da77bc40ddc2ba2fceec2c5613392bf32cc06a59e10db55ddd4ebd" "57d6156b7ae19dee1c627bcfcf298f52d271e4ca805b5c37d59906c87e281ce3" "aa4e08348cd327190a188a450d55a0abaf8780cf8d04743d632937b593bba5c9" "50fa2844d84cecfa718f92122e095ecc1243fdf004bb1348e9cee856707c6f3d" "429c077679e0586d1b6a9f22586129bb4e0793e70b414ff93f023fcfa654b08a" "9893c7f1274df4d4df0573da1ee4dfe32f73f71cdf45bba7596a09e6c637d990" "e274c4d17ef47311855ce93dcc34c512bb285e3a01e9b3b1b735e059a865e48d" "59b58e2d0b77f0e8dc305bba18dc0913ae11ebc1ea91165911f5f3bd46910470" "2946f0682172ff16ffe531ce59ea26044f949e8a51b2d4ab14d74e21fa8f2b67" "de4fe3532d51a731d313e588531e32a26f9824e216fff1306ca270487f833045" "096bb91c8fd17ff6f2f51ddaf51897c9710da5486fbbb2d370e3ff3b209ff446" "700f0a38b888fb3fe656b9d8647d71fa99b3684641cf9e02106a3e3a1ca1d87a" "5cbf5345c2af35887f1518c35c9a62409304b20006f2455ef1313507e0552b1f" default))) + ("291ca32d7cab5f302361ccb42762976004e7fae2edbc34e11152f43a6e5c9c16" "b0c79fa277592cee7dbbfea3170e1f3269b719b54b33d603acdaee5b738b08d6" "a8c710c7efb883b06accec971ed17c18e09f3d05807069a009d93ec7ade38627" "593c0435c789f28bcddd9159d9fa80a45eda69691c67caa4ecba97a5e9f6ac09" "d0c72c22aa52049e1118bc2d98b4037b5203709820525d4f6e9af75cbeb3ae51" "1a212a5389f8a1038252d279a8d7352e548e8d3c8eb20bc4f07870e9812f9392" "c243ddcbe8b454b88b639719082c1a1e82cf4ee67238e5c89346c808542793ac" "df18c6ae25e56a4a079b568e033a65387abd8546c88d10c8f71fd53da6bfaf83" "6f553b32594f38496d6e1a1537f43c7bb01be6e1dd23b71d6eab0dbabec89fea" "a71707f476a82a62b095be6c6dccb0da91d4f6ea08ca6884698442917e916c34" "52beb7a2aaec5d3b886f0a6bb1b3857a2bc231968323528bfcc38cf001f11049" "578cfaf5c4401cee53c3995369c350494fc269f600143335ec1262ffcba4d2f9" "ba6064e2177b67fdc02d3f03a9113d4ec9b74aa59a9c4c113941e2df3c66e300" "bf34b0175ef0ec31b21a711a727c42c8d7ea365687a4112a9673df8533d1d963" "dbe7226f44551ec85af99674282fce8340ee8109cff62fe251f3979125472796" "ec66048d6ed6a5d65a74fd4fd0ba1ce034fd58bc75624539dbed2b85046ee5b7" "b1a729f6d62b537e06abd2913978fc8203136f978bcdd4d0704f232fb59f6d07" "7bc04e8d1cbfa63ac7bfa685909f48cf7b05b772f7fe1de166dc72788c4ae10c" "037c17db2dda3e0a7b367ec22f80933ad61ee2de7b1abbf670172a5e165b9d7f" "dfe4340343a7f5e80441ae544378943db147a1eb6fa5e074fb8955a36b0f182f" "e1ed7dc1cdf09ba9c589c3b829a95723a1b962eaa90668486367f6500d6e464f" "a8b3c62c9b9221c19993f58bb6eaf532e55363d8d2368fde50eb0eef86929ddf" "dc3a12a73fd52959e3c8eebff0911f8a3f764def026e557660590b5fd1248f4b" "b13d696132ccaf45c6f5119439b6664abd2d871197a92f53fedb4e041db5e578" "a5ffe59afbe822411636369fd2f0f7a37dac10f3932ee67be02cc4d5f2f34a62" "05c1eb6742e96a622772413711d1f7b8cc4b7b7ac0a5bb9da3cd0f5a03a94d63" "d400bc776687ac7d8a04f3de3bd12b5714316ce9571805fe43b7b9a3207398e9" "254b7a1f3b6ae1e26a7981a904374909e6094d1959766c8a56e0a72c1bc73988" "c704a1e52c8393bab1edf20333c00f0a1f4e9d68f81dac2231ff8ac7fa594270" "0d33946ed3756f7af05220d584e16e87e94cea39e1a6eef8203762404436c971" "4ea5fc77916d724956ba8668959c87517e25e4df75cc23bbb9709d2c417e420b" "f4992270fc1f04c92a35dc92ff7ae108fcea48d00aed59cd2e2074228f13d206" "4baddb255d9d85b2de41ed80db2304f258e5ab4d9dd86e3d7b645b3fe5d4af47" "77856f1616f0a4befe693cc89718e4e81ca02186ccd423a70f741f2e3974d10f" "9ce3f9dc04a4a50169c8bc58202bd4107bd3bec3dee04ca0d2747f563fdbf37c" "2383aad6d7a2ab84816102a614217ae2f71346febf758a35c38f540cf5a4f870" "4f3256a77d296e0f96ca6071c61f9de658e8e5e8fbb33a3fb0a25bd3cac1ba95" "05f98c3f10b215b37151685fb42bc108481a59145fd557edf5c4b140902af69b" "e6e3f9539236fc2b9f4c1ca06e47289e3e84011d194edc2fe8db1326f27162e2" "91ae05962e013e0925e56e4b98d87090f48de36876ba9fa939ae760e16aee566" "00087223a3ba61a42feb4bb898e8eb6cbc301e96e8e8d46c50f202b6bb435bc8" "b77b4effef346442f97b12b3b17056e60e7d8122fba4b7d692c7e633b00fef2a" "413627ea61e7aee5429a37a07d893436fa50d90db1c9cad63c3fe880d16ea366" "9de2e8914e2d8bdadad1eb0ca9ba5a1c5bbbfb71b91eaca7996691cd97f0e863" "fe4a68cae5bf268eb4da12eb78d06e40265e46c0e63eb5bf6e3545c4d0fe4cf9" "35ae89ec94b266fe007ec56be07b30aabaf6565d9a59c2e21e5943a9fec58069" "5c2bac01062bc2496baf2fde79cc4ede470b9395af5014991132034dcbfda677" "2df61c2e91799bf9d31fbe5ca4d407ef03669dbc8efd84f8acab83b0bbb63a56" "4d966fc76684e7f95122c877a95e8f6e4fa9d784225a4111cf1ce80969a4498f" "935b7766c7b74d2801be8a0cbd14967d090769e7353fcdf72b1a4d695393fd04" "503683e60ca9efa6d138cccae401269d13aef9e0101fbda20341edc2294c950b" "e55352d8828ed4e056652fa7fd5db47603ee48368fbae500837630a7345fb6b2" "f81e8249778eeeed1dc71c69cc37aab6f68d111b6e770496b2e6c87f4d1d9a05" "1ec13d23f091b5e6fb8621b85fad1ebbc3fb132daf505fd953d27f97ec573d67" "923a4e39d4da77bc40ddc2ba2fceec2c5613392bf32cc06a59e10db55ddd4ebd" "57d6156b7ae19dee1c627bcfcf298f52d271e4ca805b5c37d59906c87e281ce3" "aa4e08348cd327190a188a450d55a0abaf8780cf8d04743d632937b593bba5c9" "50fa2844d84cecfa718f92122e095ecc1243fdf004bb1348e9cee856707c6f3d" "429c077679e0586d1b6a9f22586129bb4e0793e70b414ff93f023fcfa654b08a" "9893c7f1274df4d4df0573da1ee4dfe32f73f71cdf45bba7596a09e6c637d990" "e274c4d17ef47311855ce93dcc34c512bb285e3a01e9b3b1b735e059a865e48d" "59b58e2d0b77f0e8dc305bba18dc0913ae11ebc1ea91165911f5f3bd46910470" "2946f0682172ff16ffe531ce59ea26044f949e8a51b2d4ab14d74e21fa8f2b67" "de4fe3532d51a731d313e588531e32a26f9824e216fff1306ca270487f833045" "096bb91c8fd17ff6f2f51ddaf51897c9710da5486fbbb2d370e3ff3b209ff446" "700f0a38b888fb3fe656b9d8647d71fa99b3684641cf9e02106a3e3a1ca1d87a" "5cbf5345c2af35887f1518c35c9a62409304b20006f2455ef1313507e0552b1f" default))) + '(custom-theme-directory "~/.emacs.d/blendoit/themes/") '(fci-rule-color "#383838") '(fill-column 79) '(ibuffer-sidebar-display-column-titles t) @@ -42,7 +44,7 @@ '(org-agenda-diary-file "~/org/PERSONAL/diary/diary.org") '(org-agenda-files (quote - ("~/.emacs.d/blendoit/init-blendoit.org" "~/org/PERSONAL/workout/workout.org" "~/org/WORK/Safran/programs/MA700/notes/MA700-notes.org_archive" "~/org/WORK/Safran/programs/MA700/notes/MA700-notes.org" "~/org/PERSONAL/diary/log.org" "~/org/WORK/Safran/programs/B787/VIP/timeline.org" "~/org/PERSONAL/diary/diary.org" "~/org/WORK/Safran/programs/WFH/WFH-notes.org_archive" "~/org/WORK/Safran/programs/WFH/WFH-notes.org" "~/org/WORK/Safran/programs/PHM/PHM-notes.org_archive" "~/org/WORK/Safran/programs/MRJ/test-fixture-status.org" "~/org/WORK/Safran/programs/MRJ/MRJ-notes.org" "~/org/WORK/Safran/programs/A220/A220-notes.org" "~/org/PERSONAL/projects/projects.org" "~/org/PERSONAL/schedule-personal.org" "~/org/WORK/Safran/schedule-Safran.org" "~/org/people.org"))) + ("~/org/PERSONAL/workout/workout.org" "~/org/WORK/Safran/programs/MA700/notes/MA700-notes.org_archive" "~/org/WORK/Safran/programs/MA700/notes/MA700-notes.org" "~/org/PERSONAL/diary/log.org" "~/org/WORK/Safran/programs/B787/VIP/timeline.org" "~/org/PERSONAL/diary/diary.org" "~/org/WORK/Safran/programs/WFH/WFH-notes.org_archive" "~/org/WORK/Safran/programs/WFH/WFH-notes.org" "~/org/WORK/Safran/programs/PHM/PHM-notes.org_archive" "~/org/WORK/Safran/programs/MRJ/test-fixture-status.org" "~/org/WORK/Safran/programs/MRJ/MRJ-notes.org" "~/org/WORK/Safran/programs/A220/A220-notes.org" "~/org/PERSONAL/projects/projects.org" "~/org/PERSONAL/schedule-personal.org" "~/org/WORK/Safran/schedule-Safran.org" "~/org/people.org"))) '(org-agenda-include-diary t) '(org-agenda-insert-diary-strategy (quote date-tree-last)) '(org-agenda-skip-scheduled-if-deadline-is-shown (quote not-today)) @@ -107,6 +109,7 @@ '(pdf-view-midnight-colors (quote ("#DCDCCC" . "#383838"))) '(save-place-mode t) '(send-mail-function (quote smtpmail-send-it)) + '(show-paren-mode t) '(smtpmail-smtp-server "smtp.gmail.com") '(smtpmail-smtp-service 587) '(vc-annotate-background "#2B2B2B") @@ -137,11 +140,7 @@ ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. + '(default ((t (:family "Liberation Mono" :foundry "1ASC" :slant normal :weight normal :height 142 :width normal)))) '(cursor ((t (:background "red")))) - '(fixed-pitch ((t (:family "Hermit")))) - '(highlight ((t (:background "#454545" :foreground "#ffffff" :underline nil)))) - '(org-document-title ((t (:inherit default :weight bold :font "Liberation Sans" :height 2.0 :underline nil)))) - '(org-level-1 ((t (:inherit default :weight bold :font "Liberation Sans" :height 1.75)))) - '(org-level-2 ((t (:inherit default :weight bold :font "Liberation Sans" :height 1.5)))) - '(org-level-3 ((t (:inherit default :weight bold :font "Liberation Sans" :height 1.25)))) - '(org-level-4 ((t (:inherit default :weight bold :font "Liberation Sans" :height 1.1))))) + '(fixed-pitch ((t (:family "Liberation Mono")))) + '(highlight ((t (:background "#454545" :foreground "#ffffff" :underline nil))))) diff --git a/init.el b/init.el index 2b904f1..98cc7fa 100644 --- a/init.el +++ b/init.el @@ -8,4 +8,4 @@ ;;; Code: -(org-babel-load-file "~/.emacs.d/blendoit/init-blendoit.org") +(org-babel-load-file "~/.emacs.d/blendoit/blendoit-init.org") -- cgit v1.2.3