aboutsummaryrefslogtreecommitdiff
path: root/emacs/init.html
diff options
context:
space:
mode:
Diffstat (limited to 'emacs/init.html')
-rw-r--r--emacs/init.html2218
1 files changed, 1110 insertions, 1108 deletions
diff --git a/emacs/init.html b/emacs/init.html
index 74c2f74..dd2beb4 100644
--- a/emacs/init.html
+++ b/emacs/init.html
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>mssola's GNU Emacs configuration</title>
-<!-- 2017-11-21 Tue 18:10 -->
+<!-- 2017-12-06 Wed 13:33 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="generator" content="Org-mode" />
<meta name="author" content="Miquel Sabaté Solà" />
@@ -144,71 +144,71 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
-<li><a href="#sec-1">Preface</a></li>
-<li><a href="#sec-2">Introduction</a></li>
-<li><a href="#sec-3">General</a>
+<li><a href="#sec-1">1. Preface</a></li>
+<li><a href="#sec-2">2. Introduction</a></li>
+<li><a href="#sec-3">3. General</a>
<ul>
-<li><a href="#sec-3-1">GUI</a></li>
-<li><a href="#sec-3-2">Basic editing configuration</a></li>
-<li><a href="#sec-3-3">Font and theme</a></li>
-<li><a href="#sec-3-4">General global key bindings</a></li>
-<li><a href="#sec-3-5">Others</a></li>
+<li><a href="#sec-3-1">3.1. GUI</a></li>
+<li><a href="#sec-3-2">3.2. Basic editing configuration</a></li>
+<li><a href="#sec-3-3">3.3. Font and theme</a></li>
+<li><a href="#sec-3-4">3.4. General global key bindings</a></li>
+<li><a href="#sec-3-5">3.5. Others</a></li>
</ul>
</li>
-<li><a href="#sec-4">Calendar</a></li>
-<li><a href="#sec-5">General purpose defuns</a></li>
-<li><a href="#sec-6">Lisp packages</a>
+<li><a href="#sec-4">4. Calendar</a></li>
+<li><a href="#sec-5">5. General purpose defuns</a></li>
+<li><a href="#sec-6">6. Lisp packages</a>
<ul>
-<li><a href="#sec-6-1">Custom packages</a></li>
-<li><a href="#sec-6-2">use-package</a></li>
+<li><a href="#sec-6-1">6.1. Custom packages</a></li>
+<li><a href="#sec-6-2">6.2. use-package</a></li>
</ul>
</li>
-<li><a href="#sec-7">Project</a></li>
-<li><a href="#sec-8">Edit</a></li>
-<li><a href="#sec-9">Dired</a></li>
-<li><a href="#sec-10">Evil</a></li>
-<li><a href="#sec-11">Magit</a></li>
-<li><a href="#sec-12">mu4e</a></li>
-<li><a href="#sec-13">org</a>
+<li><a href="#sec-7">7. Project</a></li>
+<li><a href="#sec-8">8. Edit</a></li>
+<li><a href="#sec-9">9. Dired</a></li>
+<li><a href="#sec-10">10. Evil</a></li>
+<li><a href="#sec-11">11. Magit</a></li>
+<li><a href="#sec-12">12. mu4e</a></li>
+<li><a href="#sec-13">13. org</a>
<ul>
-<li><a href="#sec-13-1">General settings</a></li>
-<li><a href="#sec-13-2">Publishing</a></li>
-<li><a href="#sec-13-3">Agenda</a></li>
-<li><a href="#sec-13-4">Capture</a></li>
-<li><a href="#sec-13-5">Other</a></li>
-<li><a href="#sec-13-6"><span class="todo TODO">TODO</span> shortcut for making an org link, and transforming a link into a proper org link</a></li>
-<li><a href="#sec-13-7"><span class="todo TODO">TODO</span> make it work with evil</a></li>
-<li><a href="#sec-13-8"><span class="todo TODO">TODO</span> Proper keybindings for quick access.</a></li>
-<li><a href="#sec-13-9"><span class="todo TODO">TODO</span> shortcuts for stuff like: create something urgent for today</a></li>
+<li><a href="#sec-13-1">13.1. General settings</a></li>
+<li><a href="#sec-13-2">13.2. Publishing</a></li>
+<li><a href="#sec-13-3">13.3. Agenda</a></li>
+<li><a href="#sec-13-4">13.4. Capture</a></li>
+<li><a href="#sec-13-5">13.5. Other</a></li>
+<li><a href="#sec-13-6">13.6. <span class="todo TODO">TODO</span> shortcut for making an org link, and transforming a link into a proper org link</a></li>
+<li><a href="#sec-13-7">13.7. <span class="todo TODO">TODO</span> make it work with evil</a></li>
+<li><a href="#sec-13-8">13.8. <span class="todo TODO">TODO</span> Proper keybindings for quick access.</a></li>
+<li><a href="#sec-13-9">13.9. <span class="todo TODO">TODO</span> shortcuts for stuff like: create something urgent for today</a></li>
</ul>
</li>
-<li><a href="#sec-14">IRC</a></li>
-<li><a href="#sec-15">Languages</a>
+<li><a href="#sec-14">14. IRC</a></li>
+<li><a href="#sec-15">15. Languages</a>
<ul>
-<li><a href="#sec-15-1">General</a></li>
-<li><a href="#sec-15-2">Shell</a></li>
-<li><a href="#sec-15-3">Lisp</a></li>
-<li><a href="#sec-15-4">C and C++</a></li>
-<li><a href="#sec-15-5">Ruby</a></li>
-<li><a href="#sec-15-6">Go</a></li>
-<li><a href="#sec-15-7">Rust</a></li>
-<li><a href="#sec-15-8">Tabs vs spaces</a></li>
-<li><a href="#sec-15-9">Inferior markup languages.</a></li>
-<li><a href="#sec-15-10">Web-related stuff.</a></li>
-<li><a href="#sec-15-11">Devops</a></li>
-<li><a href="#sec-15-12">Others</a></li>
+<li><a href="#sec-15-1">15.1. General</a></li>
+<li><a href="#sec-15-2">15.2. Shell</a></li>
+<li><a href="#sec-15-3">15.3. Lisp</a></li>
+<li><a href="#sec-15-4">15.4. C and C++</a></li>
+<li><a href="#sec-15-5">15.5. Ruby</a></li>
+<li><a href="#sec-15-6">15.6. Go</a></li>
+<li><a href="#sec-15-7">15.7. Rust</a></li>
+<li><a href="#sec-15-8">15.8. Tabs vs spaces</a></li>
+<li><a href="#sec-15-9">15.9. Inferior markup languages.</a></li>
+<li><a href="#sec-15-10">15.10. Web-related stuff.</a></li>
+<li><a href="#sec-15-11">15.11. Devops</a></li>
+<li><a href="#sec-15-12">15.12. Others</a></li>
</ul>
</li>
-<li><a href="#sec-16">WoMan</a></li>
-<li><a href="#sec-17">Misc</a></li>
-<li><a href="#sec-18">Credits</a></li>
-<li><a href="#sec-19">License</a></li>
+<li><a href="#sec-16">16. WoMan</a></li>
+<li><a href="#sec-17">17. Misc</a></li>
+<li><a href="#sec-18">18. Credits</a></li>
+<li><a href="#sec-19">19. License</a></li>
</ul>
</div>
</div>
<div id="outline-container-sec-1" class="outline-2">
-<h2 id="sec-1">Preface</h2>
+<h2 id="sec-1"><span class="section-number-2">1</span> Preface</h2>
<div class="outline-text-2" id="text-1">
<p>
This is my attempt of getting my configuration organized with literate
@@ -221,23 +221,23 @@ file <b>always</b>. The initial contents of the <code>init.el</code> are:
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-comment-delimiter">;; </span><span class="org-comment">We can't tangle without org!</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">require</span> '<span class="org-constant">org</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp"><span style="color: #808080;">;; </span><span style="color: #808080;">We can't tangle without org!</span>
+(<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">org</span>)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Follow symlinks</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> vc-follow-symlinks t<span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Follow symlinks</span>
+(<span style="color: #87afd7;">setq</span> vc-follow-symlinks t)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Open the configuration</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>find-file <span class="org-rainbow-delimiters-depth-2">(</span>concat user-emacs-directory <span class="org-string">"init.org"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Open the configuration</span>
+(find-file (concat user-emacs-directory <span style="color: #ffffaf;">"init.org"</span>))
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Tangle it</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>org-babel-tangle<span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Tangle it</span>
+(org-babel-tangle)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Load it</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>load-file <span class="org-rainbow-delimiters-depth-2">(</span>concat user-emacs-directory <span class="org-string">"init.el"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Load it</span>
+(load-file (concat user-emacs-directory <span style="color: #ffffaf;">"init.el"</span>))
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Finally byte-compile it</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>byte-compile-file <span class="org-rainbow-delimiters-depth-2">(</span>concat user-emacs-directory <span class="org-string">"init.el"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Finally byte-compile it</span>
+(byte-compile-file (concat user-emacs-directory <span style="color: #ffffaf;">"init.el"</span>))
</pre>
</div>
@@ -260,28 +260,28 @@ on each change, the following function is provided:
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">tangle-init</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"If the current buffer is 'init.org' the code-blocks are</span>
-<span class="org-doc"> tangled, and the tangled file is compiled. Morever, an init.html is generated."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">tangle-init</span> ()
+ <span style="color: #808080;">"If the current buffer is 'init.org' the code-blocks are</span>
+<span style="color: #808080;"> tangled, and the tangled file is compiled. Morever, an init.html is generated."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">or</span> <span class="org-rainbow-delimiters-depth-4">(</span>equal <span class="org-rainbow-delimiters-depth-5">(</span>buffer-file-name<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>expand-file-name <span class="org-rainbow-delimiters-depth-6">(</span>concat user-emacs-directory <span class="org-string">"init.org"</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>string-suffix-p <span class="org-string">"dotfiles/emacs/init.org"</span> <span class="org-rainbow-delimiters-depth-5">(</span>buffer-file-name<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
+ (<span style="color: #87afd7;">when</span> (<span style="color: #87afd7;">or</span> (equal (buffer-file-name)
+ (expand-file-name (concat user-emacs-directory <span style="color: #ffffaf;">"init.org"</span>)))
+ (string-suffix-p <span style="color: #ffffaf;">"dotfiles/emacs/init.org"</span> (buffer-file-name)))
- <span class="org-comment-delimiter">;; </span><span class="org-comment">Avoid running hooks when tangling</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-rainbow-delimiters-depth-5">(</span>prog-mode-hook nil<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>org-babel-tangle<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>org-html-export-to-html<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>byte-compile-file <span class="org-rainbow-delimiters-depth-5">(</span>concat user-emacs-directory <span class="org-string">"init.el"</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ <span style="color: #808080;">;; </span><span style="color: #808080;">Avoid running hooks when tangling</span>
+ (<span style="color: #87afd7;">let</span> ((prog-mode-hook nil))
+ (org-babel-tangle)
+ (org-html-export-to-html)
+ (byte-compile-file (concat user-emacs-directory <span style="color: #ffffaf;">"init.el"</span>)))))
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'after-save-hook 'tangle-init<span class="org-rainbow-delimiters-depth-1">)</span>
+(add-hook 'after-save-hook 'tangle-init)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-2" class="outline-2">
-<h2 id="sec-2">Introduction</h2>
+<h2 id="sec-2"><span class="section-number-2">2</span> Introduction</h2>
<div class="outline-text-2" id="text-2">
<p>
I'm using GNU Emacs 25, but everything should be working in GNU Emacs 24. There
@@ -291,8 +291,8 @@ individually handled.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">unless</span> <span class="org-rainbow-delimiters-depth-2">(</span>&gt;= emacs-major-version 24<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-warning">error</span> <span class="org-string">"Don't be a cheap bastard and upgrade to at least GNU Emacs 24"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">unless</span> (&gt;= emacs-major-version 24)
+ (<span style="color: #b9dc92;">error</span> <span style="color: #ffffaf;">"Don't be a cheap bastard and upgrade to at least GNU Emacs 24"</span>))
</pre>
</div>
@@ -303,11 +303,11 @@ Temporarily reduce garbage collection so startup time is lower. Idea taken from
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defconst</span> <span class="org-variable-name">mssola-initial-gc-cons-threshold</span> gc-cons-threshold
- <span class="org-doc">"Initial value of `</span><span class="org-doc"><span class="org-constant">gc-cons-threshold</span></span><span class="org-doc">' at start-up time."</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> gc-cons-threshold <span class="org-rainbow-delimiters-depth-2">(</span>* 1024 1024 1024<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'after-init-hook
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-3">()</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">setq</span> gc-cons-threshold mssola-initial-gc-cons-threshold<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defconst</span> <span style="color: #d0d0d0;">mssola-initial-gc-cons-threshold</span> gc-cons-threshold
+ <span style="color: #808080;">"Initial value of `</span><span style="color: #ffffaf;">gc-cons-threshold</span><span style="color: #808080;">' at start-up time."</span>)
+(<span style="color: #87afd7;">setq</span> gc-cons-threshold (* 1024 1024 1024))
+(add-hook 'after-init-hook
+ (<span style="color: #87afd7;">lambda</span> () (<span style="color: #87afd7;">setq</span> gc-cons-threshold mssola-initial-gc-cons-threshold)))
</pre>
</div>
@@ -317,18 +317,18 @@ User name and email.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> user-full-name <span class="org-string">"Miquel Sabat&#233; Sol&#224;"</span>
- user-mail-address <span class="org-string">"mikisabate@gmail.com"</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> user-full-name <span style="color: #ffffaf;">"Miquel Sabat&#233; Sol&#224;"</span>
+ user-mail-address <span style="color: #ffffaf;">"mikisabate@gmail.com"</span>)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-3" class="outline-2">
-<h2 id="sec-3">General</h2>
+<h2 id="sec-3"><span class="section-number-2">3</span> General</h2>
<div class="outline-text-2" id="text-3">
</div><div id="outline-container-sec-3-1" class="outline-3">
-<h3 id="sec-3-1">GUI</h3>
+<h3 id="sec-3-1"><span class="section-number-3">3.1</span> GUI</h3>
<div class="outline-text-3" id="text-3-1">
<p>
I like a minimalistic GUI. Because of this, almost all GUI elements have been
@@ -342,12 +342,12 @@ name of the buffer is displayed (e.g. "mssola: <b>scratch</b>").
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> frame-title-format
- '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span><span class="org-builtin">:eval</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>concat <span class="org-rainbow-delimiters-depth-5">(</span>user-real-login-name<span class="org-rainbow-delimiters-depth-5">)</span> <span class="org-string">": "</span>
- <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-6">(</span>buffer-file-name<span class="org-rainbow-delimiters-depth-6">)</span>
- <span class="org-rainbow-delimiters-depth-6">(</span>abbreviate-file-name <span class="org-rainbow-delimiters-depth-7">(</span>buffer-file-name<span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span>
- <span class="org-string">"%b"</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> frame-title-format
+ '((<span style="color: #87afd7;">:eval</span>
+ (concat (user-real-login-name) <span style="color: #ffffaf;">": "</span>
+ (<span style="color: #87afd7;">if</span> (buffer-file-name)
+ (abbreviate-file-name (buffer-file-name))
+ <span style="color: #ffffaf;">"%b"</span>)))))
</pre>
</div>
@@ -358,28 +358,28 @@ modes.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>menu-bar-mode -1<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-2">(</span>fboundp 'set-scroll-bar-mode<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>set-scroll-bar-mode nil<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-2">(</span>fboundp 'tool-bar-mode<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>tool-bar-mode -1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-2">(</span>fboundp 'tooltip-mode<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>tooltip-mode 0<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(menu-bar-mode -1)
+(<span style="color: #87afd7;">when</span> (fboundp 'set-scroll-bar-mode)
+ (set-scroll-bar-mode nil))
+(<span style="color: #87afd7;">when</span> (fboundp 'tool-bar-mode)
+ (tool-bar-mode -1))
+(<span style="color: #87afd7;">when</span> (fboundp 'tooltip-mode)
+ (tooltip-mode 0))
-<span class="org-rainbow-delimiters-depth-1">(</span>line-number-mode 1<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>column-number-mode 1<span class="org-rainbow-delimiters-depth-1">)</span>
+(line-number-mode 1)
+(column-number-mode 1)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Nice scrolling</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> scroll-margin 0
+<span style="color: #808080;">;; </span><span style="color: #808080;">Nice scrolling</span>
+(<span style="color: #87afd7;">setq</span> scroll-margin 0
scroll-conservatively 100000
- scroll-preserve-screen-position 1<span class="org-rainbow-delimiters-depth-1">)</span>
+ scroll-preserve-screen-position 1)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-3-2" class="outline-3">
-<h3 id="sec-3-2">Basic editing configuration</h3>
+<h3 id="sec-3-2"><span class="section-number-3">3.2</span> Basic editing configuration</h3>
<div class="outline-text-3" id="text-3-2">
<p>
Use UTF-8 <b>always</b>.
@@ -387,11 +387,11 @@ Use UTF-8 <b>always</b>.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>prefer-coding-system 'utf-8<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>set-default-coding-systems 'utf-8<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>set-terminal-coding-system 'utf-8<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>set-keyboard-coding-system 'utf-8<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>set-language-environment 'utf-8<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(prefer-coding-system 'utf-8)
+(set-default-coding-systems 'utf-8)
+(set-terminal-coding-system 'utf-8)
+(set-keyboard-coding-system 'utf-8)
+(set-language-environment 'utf-8)
</pre>
</div>
@@ -401,39 +401,39 @@ Some editing tweaks like tabs vs spaces, maximum column width, etc.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-comment-delimiter">;; </span><span class="org-comment">Emacs modes typically provide a standard means to change the indentation</span>
-<span class="org-comment-delimiter">;; </span><span class="org-comment">width (e.g. c-basic-offset). Moreover, even though I prefer tabs over space,</span>
-<span class="org-comment-delimiter">;; </span><span class="org-comment">for most coding conventions this is not the case (e.g. ruby). For this</span>
-<span class="org-comment-delimiter">;; </span><span class="org-comment">reason, I will disable them by default and enabled them back for each</span>
-<span class="org-comment-delimiter">;; </span><span class="org-comment">specific case (e.g. C). I'm also using the smart-tabs-mode package, see</span>
-<span class="org-comment-delimiter">;; </span><span class="org-comment">below in the languages section.</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq-default</span> indent-tabs-mode nil<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq-default</span> tab-width 4<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp"><span style="color: #808080;">;; </span><span style="color: #808080;">Emacs modes typically provide a standard means to change the indentation</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">width (e.g. c-basic-offset). Moreover, even though I prefer tabs over space,</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">for most coding conventions this is not the case (e.g. ruby). For this</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">reason, I will disable them by default and enabled them back for each</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">specific case (e.g. C). I'm also using the smart-tabs-mode package, see</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">below in the languages section.</span>
+(<span style="color: #87afd7;">setq-default</span> indent-tabs-mode nil)
+(<span style="color: #87afd7;">setq-default</span> tab-width 4)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Maximum 80 columns.</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq-default</span> fill-column 80<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq-default</span> auto-fill-function 'do-auto-fill<span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Maximum 80 columns.</span>
+(<span style="color: #87afd7;">setq-default</span> fill-column 80)
+(<span style="color: #87afd7;">setq-default</span> auto-fill-function 'do-auto-fill)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Do not break lines</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>set-default 'truncate-lines t<span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Do not break lines</span>
+(set-default 'truncate-lines t)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Delete the selection with a keypress.</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>delete-selection-mode t<span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Delete the selection with a keypress.</span>
+(delete-selection-mode t)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Remove whitespaces at the end of line</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'before-save-hook 'delete-trailing-whitespace<span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Remove whitespaces at the end of line</span>
+(add-hook 'before-save-hook 'delete-trailing-whitespace)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Cursor</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>blink-cursor-mode 0<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>global-hl-line-mode -1<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>show-paren-mode 1<span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Cursor</span>
+(blink-cursor-mode 0)
+(global-hl-line-mode -1)
+(show-paren-mode 1)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-3-3" class="outline-3">
-<h3 id="sec-3-3">Font and theme</h3>
+<h3 id="sec-3-3"><span class="section-number-3">3.3</span> Font and theme</h3>
<div class="outline-text-3" id="text-3-3">
<p>
I'm using "Droid Sans Mono" simply because I've grown used to it.
@@ -441,17 +441,17 @@ I'm using "Droid Sans Mono" simply because I've grown used to it.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>set-frame-font <span class="org-string">"Droid Sans Mono Dotted for Powerline-10"</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-to-list 'default-frame-alist '<span class="org-rainbow-delimiters-depth-2">(</span>font . <span class="org-string">"Droid Sans Mono Dotted for Powerline-10"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(set-frame-font <span style="color: #ffffaf;">"Droid Sans Mono Dotted for Powerline-10"</span>)
+(add-to-list 'default-frame-alist '(font . <span style="color: #ffffaf;">"Droid Sans Mono Dotted for Powerline-10"</span>))
-<span class="org-comment-delimiter">; </span><span class="org-comment">Emacs in daemon mode does not like `set-face-attribute` because this is only</span>
-<span class="org-comment-delimiter">; </span><span class="org-comment">applied if there is a frame in place, which doesn't happen when starting the</span>
-<span class="org-comment-delimiter">; </span><span class="org-comment">daemon. Thus, we should call that after the frame has been created (e.g. by</span>
-<span class="org-comment-delimiter">; </span><span class="org-comment">emacsclient).</span>
-<span class="org-comment-delimiter">; </span><span class="org-comment">See: https://lists.gnu.org/archive/html/help-gnu-emacs/2015-03/msg00016.html</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'after-make-frame-functions-hook
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-3">()</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>set-face-attribute 'default t <span class="org-builtin">:font</span> <span class="org-string">"Droid Sans Mono Dotted for Powerline-10"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">Emacs in daemon mode does not like `set-face-attribute` because this is only</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">applied if there is a frame in place, which doesn't happen when starting the</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">daemon. Thus, we should call that after the frame has been created (e.g. by</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">emacsclient).</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">See: https://lists.gnu.org/archive/html/help-gnu-emacs/2015-03/msg00016.html</span>
+(add-hook 'after-make-frame-functions-hook
+ (<span style="color: #87afd7;">lambda</span> ()
+ (set-face-attribute 'default t <span style="color: #87afd7;">:font</span> <span style="color: #ffffaf;">"Droid Sans Mono Dotted for Powerline-10"</span>)))
</pre>
</div>
@@ -462,7 +462,7 @@ I've hacked my own theme called <a href="https://github.com/mssola/soria">soria<
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>load-theme 'soria t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(load-theme 'soria t)
</pre>
</div>
@@ -474,24 +474,24 @@ get exactly that:
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-face-at-point</span> <span class="org-rainbow-delimiters-depth-2">(</span>pos<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-doc">"Writes a message with the name of the face at the current point. The POS</span>
-<span class="org-doc"> argument contains the current position of the cursor."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-face-at-point</span> (pos)
+ <span style="color: #808080;">"Writes a message with the name of the face at the current point. The POS</span>
+<span style="color: #808080;"> argument contains the current position of the cursor."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">interactive</span> <span class="org-string">"d"</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">interactive</span> <span style="color: #ffffaf;">"d"</span>)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span>face <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">or</span> <span class="org-rainbow-delimiters-depth-6">(</span>get-char-property <span class="org-rainbow-delimiters-depth-7">(</span>point<span class="org-rainbow-delimiters-depth-7">)</span> 'read-face-name<span class="org-rainbow-delimiters-depth-6">)</span>
- <span class="org-rainbow-delimiters-depth-6">(</span>get-char-property <span class="org-rainbow-delimiters-depth-7">(</span>point<span class="org-rainbow-delimiters-depth-7">)</span> 'face<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> face <span class="org-rainbow-delimiters-depth-4">(</span>message <span class="org-string">"Face: %s"</span> face<span class="org-rainbow-delimiters-depth-4">)</span> <span class="org-rainbow-delimiters-depth-4">(</span>message <span class="org-string">"No face at %d"</span> pos<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">let</span> ((face (<span style="color: #87afd7;">or</span> (get-char-property (point) 'read-face-name)
+ (get-char-property (point) 'face))))
+ (<span style="color: #87afd7;">if</span> face (message <span style="color: #ffffaf;">"Face: %s"</span> face) (message <span style="color: #ffffaf;">"No face at %d"</span> pos))))
-<span class="org-rainbow-delimiters-depth-1">(</span>global-set-key <span class="org-rainbow-delimiters-depth-2">(</span>kbd <span class="org-string">"C-c f"</span><span class="org-rainbow-delimiters-depth-2">)</span> 'mssola-face-at-point<span class="org-rainbow-delimiters-depth-1">)</span>
+(global-set-key (kbd <span style="color: #ffffaf;">"C-c f"</span>) 'mssola-face-at-point)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-3-4" class="outline-3">
-<h3 id="sec-3-4">General global key bindings</h3>
+<h3 id="sec-3-4"><span class="section-number-3">3.4</span> General global key bindings</h3>
<div class="outline-text-3" id="text-3-4">
<p>
Use kill-this-buffer instead of kill-buffer.
@@ -499,7 +499,7 @@ Use kill-this-buffer instead of kill-buffer.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>global-set-key <span class="org-rainbow-delimiters-depth-2">(</span>kbd <span class="org-string">"C-x k"</span><span class="org-rainbow-delimiters-depth-2">)</span> 'kill-this-buffer<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(global-set-key (kbd <span style="color: #ffffaf;">"C-x k"</span>) 'kill-this-buffer)
</pre>
</div>
@@ -511,7 +511,7 @@ cannot be loaded due to some error.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>global-unset-key <span class="org-rainbow-delimiters-depth-2">(</span>kbd <span class="org-string">"C-z"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(global-unset-key (kbd <span style="color: #ffffaf;">"C-z"</span>))
</pre>
</div>
@@ -521,8 +521,8 @@ Disable all the Fn keys.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">dotimes</span> <span class="org-rainbow-delimiters-depth-2">(</span>i 12<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-unset-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-rainbow-delimiters-depth-4">(</span>format <span class="org-string">"&lt;f%d&gt;"</span> <span class="org-rainbow-delimiters-depth-5">(</span>+ i 1<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">dotimes</span> (i 12)
+ (global-unset-key (kbd (format <span style="color: #ffffaf;">"&lt;f%d&gt;"</span> (+ i 1)))))
</pre>
</div>
@@ -532,14 +532,14 @@ Disable overwrite-mode.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>define-key global-map <span class="org-rainbow-delimiters-depth-2">[</span><span class="org-rainbow-delimiters-depth-3">(</span>insert<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">]</span> nil<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(define-key global-map [(insert)] nil)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-3-5" class="outline-3">
-<h3 id="sec-3-5">Others</h3>
+<h3 id="sec-3-5"><span class="section-number-3">3.5</span> Others</h3>
<div class="outline-text-3" id="text-3-5">
<p>
Revert buffers automatically when underlying files are changed externally.
@@ -547,7 +547,7 @@ Revert buffers automatically when underlying files are changed externally.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>global-auto-revert-mode t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(global-auto-revert-mode t)
</pre>
</div>
@@ -557,7 +557,7 @@ Follow symlinks.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> vc-follow-symlinks t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> vc-follow-symlinks t)
</pre>
</div>
@@ -567,7 +567,7 @@ Remove the initial message from the scratch buffer.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> initial-scratch-message nil<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> initial-scratch-message nil)
</pre>
</div>
@@ -577,17 +577,17 @@ Never kill the scratch buffer, bury it instead.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defadvice</span> <span class="org-function-name">kill-buffer</span> <span class="org-rainbow-delimiters-depth-2">(</span>around kill-buffer-around-advice activate<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span>buffer-to-kill <span class="org-rainbow-delimiters-depth-5">(</span>ad-get-arg 0<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-4">(</span>equal buffer-to-kill <span class="org-string">"*scratch*"</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>bury-buffer<span class="org-rainbow-delimiters-depth-4">)</span>
- ad-do-it<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defadvice</span> <span style="color: #d0d0d0;">kill-buffer</span> (around kill-buffer-around-advice activate)
+ (<span style="color: #87afd7;">let</span> ((buffer-to-kill (ad-get-arg 0)))
+ (<span style="color: #87afd7;">if</span> (equal buffer-to-kill <span style="color: #ffffaf;">"*scratch*"</span>)
+ (bury-buffer)
+ ad-do-it)))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defadvice</span> <span class="org-function-name">kill-this-buffer</span> <span class="org-rainbow-delimiters-depth-2">(</span>around kill-buffer-around-advice activate<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span>buffer-to-kill <span class="org-rainbow-delimiters-depth-5">(</span>ad-get-arg 0<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-4">(</span>equal buffer-to-kill <span class="org-string">"*scratch*"</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>bury-buffer<span class="org-rainbow-delimiters-depth-4">)</span>
- ad-do-it<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">defadvice</span> <span style="color: #d0d0d0;">kill-this-buffer</span> (around kill-buffer-around-advice activate)
+ (<span style="color: #87afd7;">let</span> ((buffer-to-kill (ad-get-arg 0)))
+ (<span style="color: #87afd7;">if</span> (equal buffer-to-kill <span style="color: #ffffaf;">"*scratch*"</span>)
+ (bury-buffer)
+ ad-do-it)))
</pre>
</div>
@@ -597,8 +597,8 @@ No backups
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq-default</span> make-backup-files nil<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq-default</span> auto-save-default nil<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq-default</span> make-backup-files nil)
+(<span style="color: #87afd7;">setq-default</span> auto-save-default nil)
</pre>
</div>
@@ -608,13 +608,13 @@ But at least save the list of recently open files.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">require</span> '<span class="org-constant">recentf</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">recentf</span>)
-<span class="org-rainbow-delimiters-depth-1">(</span>recentf-mode 1<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>global-set-key <span class="org-string">"\C-x\ \C-r"</span> 'recentf-open-files<span class="org-rainbow-delimiters-depth-1">)</span>
+(recentf-mode 1)
+(global-set-key <span style="color: #ffffaf;">"\C-x\ \C-r"</span> 'recentf-open-files)
-<span class="org-comment-delimiter">; </span><span class="org-comment">Save the list every 5 minutes</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>run-at-time nil <span class="org-rainbow-delimiters-depth-2">(</span>* 5 60<span class="org-rainbow-delimiters-depth-2">)</span> 'recentf-save-list<span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">Save the list every 5 minutes</span>
+(run-at-time nil (* 5 60) 'recentf-save-list)
</pre>
</div>
@@ -624,7 +624,7 @@ No welcome screen
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq-default</span> inhibit-startup-message t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq-default</span> inhibit-startup-message t)
</pre>
</div>
@@ -634,7 +634,7 @@ Enable y/n answers
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>fset 'yes-or-no-p 'y-or-n-p<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(fset 'yes-or-no-p 'y-or-n-p)
</pre>
</div>
@@ -644,7 +644,7 @@ Let flyspell be performant.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defvar</span> <span class="org-variable-name">flyspell-issue-message-flag</span> nil<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defvar</span> <span style="color: #d0d0d0;">flyspell-issue-message-flag</span> nil)
</pre>
</div>
@@ -654,9 +654,9 @@ Save custom-variables somewhere else.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> custom-file <span class="org-rainbow-delimiters-depth-2">(</span>expand-file-name <span class="org-string">"custom.el"</span> user-emacs-directory<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-2">(</span>file-exists-p custom-file<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>load custom-file<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> custom-file (expand-file-name <span style="color: #ffffaf;">"custom.el"</span> user-emacs-directory))
+(<span style="color: #87afd7;">if</span> (file-exists-p custom-file)
+ (load custom-file))
</pre>
</div>
</div>
@@ -664,7 +664,7 @@ Save custom-variables somewhere else.
</div>
<div id="outline-container-sec-4" class="outline-2">
-<h2 id="sec-4">Calendar</h2>
+<h2 id="sec-4"><span class="section-number-2">4</span> Calendar</h2>
<div class="outline-text-2" id="text-4">
<p>
We catalans start our weeks on Monday.
@@ -672,7 +672,7 @@ We catalans start our weeks on Monday.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defvar</span> <span class="org-variable-name">calendar-week-start-day</span> 1<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defvar</span> <span style="color: #d0d0d0;">calendar-week-start-day</span> 1)
</pre>
</div>
@@ -682,7 +682,7 @@ Global key binding.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>global-set-key <span class="org-rainbow-delimiters-depth-2">(</span>kbd <span class="org-string">"M-c"</span><span class="org-rainbow-delimiters-depth-2">)</span> 'calendar<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(global-set-key (kbd <span style="color: #ffffaf;">"M-c"</span>) 'calendar)
</pre>
</div>
@@ -692,29 +692,29 @@ Fix some stuff for evil mode.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> <span class="org-string">"evil"</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-set-initial-state 'calendar-mode 'normal<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">evil-define-key</span> 'normal calendar-mode-map
- <span class="org-string">"j"</span> 'calendar-forward-week
- <span class="org-string">"k"</span> 'calendar-backward-week
- <span class="org-string">"b"</span> 'calendar-backward-day
- <span class="org-string">"h"</span> 'calendar-backward-day
- <span class="org-string">"l"</span> 'calendar-forward-day
- <span class="org-string">"w"</span> 'calendar-forward-day
- <span class="org-string">"q"</span> 'calendar-exit
- <span class="org-string">"\C-h"</span> 'evil-window-left
- <span class="org-string">"\C-l"</span> 'evil-window-right
- <span class="org-string">"\C-j"</span> 'evil-window-down
- <span class="org-string">"\C-k"</span> 'evil-window-up
- <span class="org-string">"\C-n"</span> 'calendar-scroll-left-three-months
- <span class="org-string">"\C-p"</span> 'calendar-scroll-right-three-months<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">with-eval-after-load</span> <span style="color: #ffffaf;">"evil"</span>
+ (evil-set-initial-state 'calendar-mode 'normal)
+ (<span style="color: #87afd7;">evil-define-key</span> 'normal calendar-mode-map
+ <span style="color: #ffffaf;">"j"</span> 'calendar-forward-week
+ <span style="color: #ffffaf;">"k"</span> 'calendar-backward-week
+ <span style="color: #ffffaf;">"b"</span> 'calendar-backward-day
+ <span style="color: #ffffaf;">"h"</span> 'calendar-backward-day
+ <span style="color: #ffffaf;">"l"</span> 'calendar-forward-day
+ <span style="color: #ffffaf;">"w"</span> 'calendar-forward-day
+ <span style="color: #ffffaf;">"q"</span> 'calendar-exit
+ <span style="color: #ffffaf;">"\C-h"</span> 'evil-window-left
+ <span style="color: #ffffaf;">"\C-l"</span> 'evil-window-right
+ <span style="color: #ffffaf;">"\C-j"</span> 'evil-window-down
+ <span style="color: #ffffaf;">"\C-k"</span> 'evil-window-up
+ <span style="color: #ffffaf;">"\C-n"</span> 'calendar-scroll-left-three-months
+ <span style="color: #ffffaf;">"\C-p"</span> 'calendar-scroll-right-three-months))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-5" class="outline-2">
-<h2 id="sec-5">General purpose defuns</h2>
+<h2 id="sec-5"><span class="section-number-2">5</span> General purpose defuns</h2>
<div class="outline-text-2" id="text-5">
<p>
I want to read the latest news. That's why I define a function that downloads
@@ -723,15 +723,15 @@ the <code>NEWS</code> file from the git server and then opens it in a buffer.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-view-emacs-latest-news</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Allow users to fetch the latest Emacs' NEWS file."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">interactive</span><span class="org-rainbow-delimiters-depth-2">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-view-emacs-latest-news</span> ()
+ <span style="color: #808080;">"Allow users to fetch the latest Emacs' NEWS file."</span>
+ (<span style="color: #87afd7;">interactive</span>)
- <span class="org-rainbow-delimiters-depth-2">(</span>url-copy-file
- <span class="org-string">"http://git.savannah.gnu.org/cgit/emacs.git/plain/etc/NEWS"</span>
- <span class="org-string">"/tmp/emacs-news"</span> t<span class="org-rainbow-delimiters-depth-2">)</span>
+ (url-copy-file
+ <span style="color: #ffffaf;">"http://git.savannah.gnu.org/cgit/emacs.git/plain/etc/NEWS"</span>
+ <span style="color: #ffffaf;">"/tmp/emacs-news"</span> t)
- <span class="org-rainbow-delimiters-depth-2">(</span>find-file-read-only <span class="org-string">"/tmp/emacs-news"</span> t<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (find-file-read-only <span style="color: #ffffaf;">"/tmp/emacs-news"</span> t))
</pre>
</div>
@@ -741,24 +741,24 @@ Sometimes I want to debug my initialization time.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">emacs-init-time</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Redefine the `</span><span class="org-doc"><span class="org-constant">emacs-init-time</span></span><span class="org-doc">' function so it is more detailed.</span>
-<span class="org-doc">Idea taken from @purcell."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">emacs-init-time</span> ()
+ <span style="color: #808080;">"Redefine the `</span><span style="color: #ffffaf;">emacs-init-time</span><span style="color: #808080;">' function so it is more detailed.</span>
+<span style="color: #808080;">Idea taken from @purcell."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">interactive</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span>init-time
- <span class="org-rainbow-delimiters-depth-5">(</span>float-time <span class="org-rainbow-delimiters-depth-6">(</span>time-subtract after-init-time before-init-time<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>message <span class="org-string">"%.3fs"</span> init-time<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">interactive</span>)
+ (<span style="color: #87afd7;">let</span> ((init-time
+ (float-time (time-subtract after-init-time before-init-time))))
+ (message <span style="color: #ffffaf;">"%.3fs"</span> init-time)))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-6" class="outline-2">
-<h2 id="sec-6">Lisp packages</h2>
+<h2 id="sec-6"><span class="section-number-2">6</span> Lisp packages</h2>
<div class="outline-text-2" id="text-6">
</div><div id="outline-container-sec-6-1" class="outline-3">
-<h3 id="sec-6-1">Custom packages</h3>
+<h3 id="sec-6-1"><span class="section-number-3">6.1</span> Custom packages</h3>
<div class="outline-text-3" id="text-6-1">
<p>
Compile the <code>g.el</code> script and bind it to <kbd>M-g</kbd>.
@@ -766,15 +766,15 @@ Compile the <code>g.el</code> script and bind it to <kbd>M-g</kbd>.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>byte-compile-file <span class="org-rainbow-delimiters-depth-2">(</span>concat user-emacs-directory <span class="org-string">"lisp/g.el"</span><span class="org-rainbow-delimiters-depth-2">)</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>global-set-key <span class="org-rainbow-delimiters-depth-2">(</span>kbd <span class="org-string">"M-g"</span><span class="org-rainbow-delimiters-depth-2">)</span> 'g<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(byte-compile-file (concat user-emacs-directory <span style="color: #ffffaf;">"lisp/g.el"</span>) t)
+(global-set-key (kbd <span style="color: #ffffaf;">"M-g"</span>) 'g)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-6-2" class="outline-3">
-<h3 id="sec-6-2">use-package</h3>
+<h3 id="sec-6-2"><span class="section-number-3">6.2</span> use-package</h3>
<div class="outline-text-3" id="text-6-2">
<p>
Initialize package.
@@ -782,14 +782,14 @@ Initialize package.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">require</span> '<span class="org-constant">package</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">package</span>)
-<span class="org-rainbow-delimiters-depth-1">(</span>add-to-list 'package-archives
- '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-string">"melpa"</span> . <span class="org-string">"http://melpa.milkbox.net/packages/"</span><span class="org-rainbow-delimiters-depth-2">)</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-to-list 'package-archives
- '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-string">"melpa-stable"</span> . <span class="org-string">"https://stable.melpa.org/packages/"</span><span class="org-rainbow-delimiters-depth-2">)</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+(add-to-list 'package-archives
+ '(<span style="color: #ffffaf;">"melpa"</span> . <span style="color: #ffffaf;">"http://melpa.milkbox.net/packages/"</span>) t)
+(add-to-list 'package-archives
+ '(<span style="color: #ffffaf;">"melpa-stable"</span> . <span style="color: #ffffaf;">"https://stable.melpa.org/packages/"</span>) t)
-<span class="org-rainbow-delimiters-depth-1">(</span>package-initialize<span class="org-rainbow-delimiters-depth-1">)</span>
+(package-initialize)
</pre>
</div>
@@ -802,9 +802,9 @@ package-install, I decided on use-package because I feel more well-organized.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">unless</span> <span class="org-rainbow-delimiters-depth-2">(</span>package-installed-p 'use-package<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>package-refresh-contents<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>package-install 'use-package<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">unless</span> (package-installed-p 'use-package)
+ (package-refresh-contents)
+ (package-install 'use-package))
</pre>
</div>
@@ -815,8 +815,8 @@ require it here on the very top.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> diminish
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">diminish</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
</div>
@@ -824,7 +824,7 @@ require it here on the very top.
</div>
<div id="outline-container-sec-7" class="outline-2">
-<h2 id="sec-7">Project</h2>
+<h2 id="sec-7"><span class="section-number-2">7</span> Project</h2>
<div class="outline-text-2" id="text-7">
<p>
First of all, load the silver searcher, which is a convenient and fast searcher.
@@ -833,19 +833,19 @@ Ayo silver!
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> ag
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">ag</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">Avoid some disagreements between ag and evil.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">with-eval-after-load</span> 'evil
- <span class="org-rainbow-delimiters-depth-3">(</span>add-hook 'ag-mode-hook
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-5">()</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>define-key ag-mode-map <span class="org-rainbow-delimiters-depth-6">(</span>kbd <span class="org-string">"n"</span><span class="org-rainbow-delimiters-depth-6">)</span> 'evil-search-next<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>define-key ag-mode-map <span class="org-rainbow-delimiters-depth-6">(</span>kbd <span class="org-string">"N"</span><span class="org-rainbow-delimiters-depth-6">)</span> 'evil-search-previous<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>define-key ag-mode-map <span class="org-rainbow-delimiters-depth-6">(</span>kbd <span class="org-string">"gg"</span><span class="org-rainbow-delimiters-depth-6">)</span> 'evil-goto-first-line<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> ag-reuse-buffers t<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> ag-reuse-window t<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Avoid some disagreements between ag and evil.</span>
+ (<span style="color: #87afd7;">with-eval-after-load</span> 'evil
+ (add-hook 'ag-mode-hook
+ (<span style="color: #87afd7;">lambda</span> ()
+ (define-key ag-mode-map (kbd <span style="color: #ffffaf;">"n"</span>) 'evil-search-next)
+ (define-key ag-mode-map (kbd <span style="color: #ffffaf;">"N"</span>) 'evil-search-previous)
+ (define-key ag-mode-map (kbd <span style="color: #ffffaf;">"gg"</span>) 'evil-goto-first-line))))
+ (<span style="color: #87afd7;">setq</span> ag-reuse-buffers t)
+ (<span style="color: #87afd7;">setq</span> ag-reuse-window t))
</pre>
</div>
@@ -855,55 +855,57 @@ Then, for keeping up with my projects I use the Projectile + Helm combination.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> projectile
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>projectile-mode 1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">projectile</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (projectile-mode 1))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> helm
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> projectile-completion-system 'helm<span class="org-rainbow-delimiters-depth-2">)</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">helm</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (<span style="color: #87afd7;">setq</span> projectile-completion-system 'helm)
- <span class="org-comment-delimiter">; </span><span class="org-comment">Allow the search pattern to be on the header. Taken from this Reddit thread:</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">https://www.reddit.com/r/emacs/comments/3asbyn/new_and_very_useful_helm_feature_enter_search/</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> helm-echo-input-in-header-line t<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Allow the search pattern to be on the header. Taken from this Reddit thread:</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">https://www.reddit.com/r/emacs/comments/3asbyn/new_and_very_useful_helm_feature_enter_search/</span>
+ (<span style="color: #87afd7;">setq</span> helm-echo-input-in-header-line t)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">defun</span> <span class="org-function-name">helm-hide-minibuffer-maybe</span> <span class="org-rainbow-delimiters-depth-3">()</span>
- <span class="org-doc">"Hide the minibuffer if we are in a Helm session"</span>
+ (<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">helm-hide-minibuffer-maybe</span> ()
+ <span style="color: #808080;">"Hide the minibuffer if we are in a Helm session"</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">with-helm-buffer</span> helm-echo-input-in-header-line<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-rainbow-delimiters-depth-6">(</span>ov <span class="org-rainbow-delimiters-depth-7">(</span>make-overlay <span class="org-rainbow-delimiters-depth-8">(</span>point-min<span class="org-rainbow-delimiters-depth-8">)</span> <span class="org-rainbow-delimiters-depth-8">(</span>point-max<span class="org-rainbow-delimiters-depth-8">)</span> nil nil t<span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>overlay-put ov 'window <span class="org-rainbow-delimiters-depth-6">(</span>selected-window<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>overlay-put ov 'face <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-7">(</span><span class="org-rainbow-delimiters-depth-8">(</span>bg-color <span class="org-rainbow-delimiters-depth-9">(</span>face-background 'default nil<span class="org-rainbow-delimiters-depth-9">)</span><span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span>
- `<span class="org-rainbow-delimiters-depth-7">(</span><span class="org-builtin">:background</span> ,bg-color <span class="org-builtin">:foreground</span> ,bg-color<span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">setq-local</span> cursor-type nil<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">when</span> (<span style="color: #87afd7;">with-helm-buffer</span> helm-echo-input-in-header-line)
+ (<span style="color: #87afd7;">let</span> ((ov (make-overlay (point-min) (point-max) nil nil t)))
+ (overlay-put ov 'window (selected-window))
+ (overlay-put ov 'face (<span style="color: #87afd7;">let</span> ((bg-color (face-background 'default nil)))
+ `(<span style="color: #87afd7;">:background</span> ,bg-color <span style="color: #87afd7;">:foreground</span> ,bg-color)))
+ (<span style="color: #87afd7;">setq-local</span> cursor-type nil))))
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'helm-minibuffer-set-up-hook 'helm-hide-minibuffer-maybe<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> helm-split-window-in-side-p t<span class="org-rainbow-delimiters-depth-2">)</span>
+ (add-hook 'helm-minibuffer-set-up-hook 'helm-hide-minibuffer-maybe)
+ (<span style="color: #87afd7;">setq</span> helm-split-window-inside-p t)
- <span class="org-comment-delimiter">; </span><span class="org-comment">Preview files with tab</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key helm-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"&lt;tab&gt;"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'helm-execute-persistent-action<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Preview files with tab</span>
+ (define-key helm-map (kbd <span style="color: #ffffaf;">"&lt;tab&gt;"</span>) 'helm-execute-persistent-action)
- <span class="org-comment-delimiter">; </span><span class="org-comment">Show available options</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key helm-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-a"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'helm-select-action<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Show available options</span>
+ (define-key helm-map (kbd <span style="color: #ffffaf;">"C-a"</span>) 'helm-select-action)
- <span class="org-comment-delimiter">; </span><span class="org-comment">Some vim-like bindings</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key helm-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-j"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'helm-next-line<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key helm-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-k"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'helm-previous-line<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Some vim-like bindings</span>
+ (define-key helm-map (kbd <span style="color: #ffffaf;">"C-j"</span>) 'helm-next-line)
+ (define-key helm-map (kbd <span style="color: #ffffaf;">"C-k"</span>) 'helm-previous-line)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">use-package</span> helm-ag
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (global-set-key (kbd <span style="color: #ffffaf;">"M-x"</span>) 'helm-M-x)
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> helm-projectile
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>helm-projectile-on<span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">helm-ag</span>
+ <span style="color: #87afd7;">:ensure</span> t))
- <span class="org-comment-delimiter">; </span><span class="org-comment">Define M-p as a way to quickly list all the available projects.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">with-eval-after-load</span> 'evil
- <span class="org-rainbow-delimiters-depth-3">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-4">(</span>kbd <span class="org-string">"M-p"</span><span class="org-rainbow-delimiters-depth-4">)</span>
- 'helm-projectile-switch-project<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">helm-projectile</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (helm-projectile-on)
+
+ <span style="color: #808080;">; </span><span style="color: #808080;">Define M-p as a way to quickly list all the available projects.</span>
+ (<span style="color: #87afd7;">with-eval-after-load</span> 'evil
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"M-p"</span>)
+ 'helm-projectile-switch-project)))
</pre>
</div>
@@ -916,37 +918,37 @@ buffers.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-erc-helm-buffer-list</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Returns a list with the ERC buffers."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>mapcar 'buffer-name <span class="org-rainbow-delimiters-depth-3">(</span>erc-buffer-list<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-erc-helm-buffer-list</span> ()
+ <span style="color: #808080;">"Returns a list with the ERC buffers."</span>
+ (mapcar 'buffer-name (erc-buffer-list)))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defconst</span> <span class="org-variable-name">mssola-helm-source-erc-channel-list</span>
- '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span>name . <span class="org-string">"ERC Channels"</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>candidates . mssola-erc-helm-buffer-list<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>action . switch-to-buffer<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">defconst</span> <span style="color: #d0d0d0;">mssola-helm-source-erc-channel-list</span>
+ '((name . <span style="color: #ffffaf;">"ERC Channels"</span>)
+ (candidates . mssola-erc-helm-buffer-list)
+ (action . switch-to-buffer)))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-erc-helm-switch-buffer</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Use helm to select an active ERC buffer."</span>
+(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-erc-helm-switch-buffer</span> ()
+ <span style="color: #808080;">"Use helm to select an active ERC buffer."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">interactive</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">interactive</span>)
- <span class="org-rainbow-delimiters-depth-2">(</span>helm <span class="org-builtin">:sources</span> '<span class="org-rainbow-delimiters-depth-3">(</span>mssola-helm-source-erc-channel-list<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-builtin">:buffer</span> <span class="org-string">"*helm-erc-channels*"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (helm <span style="color: #87afd7;">:sources</span> '(mssola-helm-source-erc-channel-list)
+ <span style="color: #87afd7;">:buffer</span> <span style="color: #ffffaf;">"*helm-erc-channels*"</span>))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-find-file</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Call the proper Helm function for finding files."</span>
+(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-find-file</span> ()
+ <span style="color: #808080;">"Call the proper Helm function for finding files."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">interactive</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">interactive</span>)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-3">(</span>string= major-mode <span class="org-string">"erc-mode"</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>mssola-erc-helm-switch-buffer<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">condition-case</span> nil
- <span class="org-rainbow-delimiters-depth-4">(</span>helm-projectile-find-file<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-warning">error</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>helm-find-files nil<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">if</span> (string= major-mode <span style="color: #ffffaf;">"erc-mode"</span>)
+ (mssola-erc-helm-switch-buffer)
+ (<span style="color: #87afd7;">condition-case</span> nil
+ (helm-projectile-find-file)
+ (<span style="color: #b9dc92;">error</span>
+ (helm-find-files nil)))))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> 'evil
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-p"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'mssola-find-file<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">with-eval-after-load</span> 'evil
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-p"</span>) 'mssola-find-file))
</pre>
</div>
@@ -957,24 +959,24 @@ binding to <kbd>,a</kbd> a function that calls to the proper function.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-helm-ag</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Call the right ag command for helm-ag."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-helm-ag</span> ()
+ <span style="color: #808080;">"Call the right ag command for helm-ag."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">interactive</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">interactive</span>)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">condition-case</span> nil
- <span class="org-rainbow-delimiters-depth-3">(</span>helm-ag-project-root<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-warning">error</span> <span class="org-rainbow-delimiters-depth-4">(</span>helm-ag<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">condition-case</span> nil
+ (helm-ag-project-root)
+ (<span style="color: #b9dc92;">error</span> (helm-ag))))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> 'evil-leader
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-leader/set-key <span class="org-string">"a"</span> 'mssola-helm-ag<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">with-eval-after-load</span> 'evil-leader
+ (evil-leader/set-key <span style="color: #ffffaf;">"a"</span> 'mssola-helm-ag))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-8" class="outline-2">
-<h2 id="sec-8">Edit</h2>
+<h2 id="sec-8"><span class="section-number-2">8</span> Edit</h2>
<div class="outline-text-2" id="text-8">
<p>
In this section I define some useful packages for editing. First of all, one of
@@ -986,18 +988,18 @@ recent versions of GNU Emacs.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> 'undo-tree
- <span class="org-rainbow-delimiters-depth-2">(</span>global-undo-tree-mode 1<span class="org-rainbow-delimiters-depth-2">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">with-eval-after-load</span> 'undo-tree
+ (global-undo-tree-mode 1)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> undo-tree-visualizer-diff t
+ (<span style="color: #87afd7;">setq</span> undo-tree-visualizer-diff t
undo-tree-visualizer-timestamps t
- undo-tree-visualizer-relative-timestamps t<span class="org-rainbow-delimiters-depth-2">)</span>
+ undo-tree-visualizer-relative-timestamps t)
- <span class="org-rainbow-delimiters-depth-2">(</span>diminish 'undo-tree-mode<span class="org-rainbow-delimiters-depth-2">)</span>
+ (diminish 'undo-tree-mode)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">with-eval-after-load</span> 'evil-leader
- <span class="org-rainbow-delimiters-depth-3">(</span>evil-leader/set-key
- <span class="org-string">"u"</span> 'undo-tree-visualize<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">with-eval-after-load</span> 'evil-leader
+ (evil-leader/set-key
+ <span style="color: #ffffaf;">"u"</span> 'undo-tree-visualize)))
</pre>
</div>
@@ -1008,21 +1010,21 @@ extension. This works with lots of languages with proper glue code.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> let-alist
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">let-alist</span>
+ <span style="color: #87afd7;">:ensure</span> t)
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> flycheck
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:diminish</span>
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'after-init-hook 'global-flycheck-mode<span class="org-rainbow-delimiters-depth-2">)</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">flycheck</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:diminish</span>
+ <span style="color: #87afd7;">:config</span>
+ (add-hook 'after-init-hook 'global-flycheck-mode)
- <span class="org-comment-delimiter">;; </span><span class="org-comment">Only show the errors buffer if it isn't there and if I'm saving the</span>
- <span class="org-comment-delimiter">;; </span><span class="org-comment">buffer.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> flycheck-emacs-lisp-load-path 'inherit<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> flycheck-check-syntax-automatically '<span class="org-rainbow-delimiters-depth-3">(</span>mode-enabled save<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> flycheck-display-errors-function
- #'flycheck-display-error-messages-unless-error-list<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ <span style="color: #808080;">;; </span><span style="color: #808080;">Only show the errors buffer if it isn't there and if I'm saving the</span>
+ <span style="color: #808080;">;; </span><span style="color: #808080;">buffer.</span>
+ (<span style="color: #87afd7;">setq</span> flycheck-emacs-lisp-load-path 'inherit)
+ (<span style="color: #87afd7;">setq</span> flycheck-check-syntax-automatically '(mode-enabled save))
+ (<span style="color: #87afd7;">setq</span> flycheck-display-errors-function
+ #'flycheck-display-error-messages-unless-error-list))
</pre>
</div>
@@ -1034,11 +1036,11 @@ with your editor, you have to increase/decrease the fonts. I use the
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> default-text-scale
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-set-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-+"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'default-text-scale-increase<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-set-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C--"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'default-text-scale-decrease<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">default-text-scale</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (global-set-key (kbd <span style="color: #ffffaf;">"C-+"</span>) 'default-text-scale-increase)
+ (global-set-key (kbd <span style="color: #ffffaf;">"C--"</span>) 'default-text-scale-decrease))
</pre>
</div>
@@ -1051,8 +1053,8 @@ supports it).
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> rainbow-delimiters
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">rainbow-delimiters</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
@@ -1062,11 +1064,11 @@ I never use the mouse.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> disable-mouse
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-disable-mouse-mode<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> global-disable-mouse-mode-lighter <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">disable-mouse</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (global-disable-mouse-mode)
+ (<span style="color: #87afd7;">setq</span> global-disable-mouse-mode-lighter <span style="color: #ffffaf;">""</span>))
</pre>
</div>
@@ -1078,11 +1080,11 @@ commands for the current chord as a list.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> which-key
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:diminish</span> which-key-mode
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>which-key-mode<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">which-key</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:diminish</span> which-key-mode
+ <span style="color: #87afd7;">:config</span>
+ (which-key-mode))
</pre>
</div>
@@ -1093,8 +1095,8 @@ this, we have <code>wc-mode</code>.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> wc-mode
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">wc-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
@@ -1105,8 +1107,8 @@ that often, but it's cool to have a distraction-free screen from time to time.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> writeroom-mode
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">writeroom-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
@@ -1118,27 +1120,27 @@ most of my uses, it's convenient to have this tool anyways.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> expand-region
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">expand-region</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">Set C-e as the expand command (mnemonic: expand). This command will</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">supercede the evil binding for "move one line", which I never use anyways.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-set-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"\C-e"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'er/expand-region<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">with-eval-after-load</span> 'evil
- <span class="org-rainbow-delimiters-depth-3">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-4">(</span>kbd <span class="org-string">"\C-e"</span><span class="org-rainbow-delimiters-depth-4">)</span> 'er/expand-region<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>define-key evil-visual-state-map <span class="org-rainbow-delimiters-depth-4">(</span>kbd <span class="org-string">"\C-e"</span><span class="org-rainbow-delimiters-depth-4">)</span> 'er/expand-region<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Set C-e as the expand command (mnemonic: expand). This command will</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">supercede the evil binding for "move one line", which I never use anyways.</span>
+ (global-set-key (kbd <span style="color: #ffffaf;">"\C-e"</span>) 'er/expand-region)
+ (<span style="color: #87afd7;">with-eval-after-load</span> 'evil
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"\C-e"</span>) 'er/expand-region)
+ (define-key evil-visual-state-map (kbd <span style="color: #ffffaf;">"\C-e"</span>) 'er/expand-region)))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">er/add-text-mode-expansions</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"This way we can also expand the region into paragraphs &amp; pages in text mode.</span>
-<span class="org-doc">Directly taken from: https://github.com/magnars/expand-region.el."</span>
+(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">er/add-text-mode-expansions</span> ()
+ <span style="color: #808080;">"This way we can also expand the region into paragraphs &amp; pages in text mode.</span>
+<span style="color: #808080;">Directly taken from: https://github.com/magnars/expand-region.el."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>set <span class="org-rainbow-delimiters-depth-3">(</span>make-local-variable 'er/try-expand-list<span class="org-rainbow-delimiters-depth-3">)</span> <span class="org-rainbow-delimiters-depth-3">(</span>append
+ (set (make-local-variable 'er/try-expand-list) (append
er/try-expand-list
- '<span class="org-rainbow-delimiters-depth-4">(</span>mark-paragraph
- mark-page<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ '(mark-paragraph
+ mark-page))))
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'text-mode-hook 'er/add-text-mode-expansions<span class="org-rainbow-delimiters-depth-1">)</span>
+(add-hook 'text-mode-hook 'er/add-text-mode-expansions)
</pre>
</div>
@@ -1152,12 +1154,12 @@ this same file as root:
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defadvice</span> <span class="org-function-name">find-file</span> <span class="org-rainbow-delimiters-depth-2">(</span>after find-file-sudo activate<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-doc">"Find file as root if necessary."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">and</span> buffer-file-name
- <span class="org-rainbow-delimiters-depth-4">(</span>not <span class="org-rainbow-delimiters-depth-5">(</span>file-writable-p buffer-file-name<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-4">(</span>yes-or-no-p <span class="org-string">"Do you want to edit this file as root?"</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>find-alternate-file <span class="org-rainbow-delimiters-depth-5">(</span>concat <span class="org-string">"/sudo:root@localhost:"</span> buffer-file-name<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defadvice</span> <span style="color: #d0d0d0;">find-file</span> (after find-file-sudo activate)
+ <span style="color: #808080;">"Find file as root if necessary."</span>
+ (<span style="color: #87afd7;">if</span> (<span style="color: #87afd7;">and</span> buffer-file-name
+ (not (file-writable-p buffer-file-name)))
+ (<span style="color: #87afd7;">if</span> (yes-or-no-p <span style="color: #ffffaf;">"Do you want to edit this file as root?"</span>)
+ (find-alternate-file (concat <span style="color: #ffffaf;">"/sudo:root@localhost:"</span> buffer-file-name)))))
</pre>
</div>
@@ -1170,14 +1172,14 @@ remember some of these snippets, I've mapped <kbd>, h</kbd> to
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> yasnippet
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:diminish</span> yas-minor-mode
- <span class="org-builtin">:init</span> <span class="org-rainbow-delimiters-depth-2">(</span>yas-global-mode<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>yas-global-mode 1<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">with-eval-after-load</span> 'evil-leader
- <span class="org-rainbow-delimiters-depth-3">(</span>evil-leader/set-key <span class="org-string">"h"</span> 'yas-describe-tables<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">yasnippet</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:diminish</span> yas-minor-mode
+ <span style="color: #87afd7;">:init</span> (yas-global-mode)
+ <span style="color: #87afd7;">:config</span>
+ (yas-global-mode 1)
+ (<span style="color: #87afd7;">with-eval-after-load</span> 'evil-leader
+ (evil-leader/set-key <span style="color: #ffffaf;">"h"</span> 'yas-describe-tables)))
</pre>
</div>
@@ -1187,17 +1189,17 @@ remember some of these snippets, I've mapped <kbd>, h</kbd> to
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> bool-flip
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-set-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-c b"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'bool-flip-do-flip<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">bool-flip</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (global-set-key (kbd <span style="color: #ffffaf;">"C-c b"</span>) 'bool-flip-do-flip))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-9" class="outline-2">
-<h2 id="sec-9">Dired</h2>
+<h2 id="sec-9"><span class="section-number-2">9</span> Dired</h2>
<div class="outline-text-2" id="text-9">
<p>
I use dired mode mainly for attaching document into emails. That being said,
@@ -1206,9 +1208,9 @@ whenever I use it, I want basic evil movement.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> 'evil
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">evil-add-hjkl-bindings</span> dired-mode-map 'normal
- <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"w"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'evil-forward-word-begin<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">with-eval-after-load</span> 'evil
+ (<span style="color: #87afd7;">evil-add-hjkl-bindings</span> dired-mode-map 'normal
+ (kbd <span style="color: #ffffaf;">"w"</span>) 'evil-forward-word-begin))
</pre>
</div>
@@ -1218,12 +1220,12 @@ I also extend <code>dired</code> with some handy tweaks.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> directory-free-space-args <span class="org-string">"-Pkh"</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> directory-free-space-args <span style="color: #ffffaf;">"-Pkh"</span>
dired-dwim-target t
dired-omit-mode nil
dired-recursive-copies 'always
dired-recursive-deletes 'always
- delete-old-versions t<span class="org-rainbow-delimiters-depth-1">)</span>
+ delete-old-versions t)
</pre>
</div>
@@ -1235,31 +1237,31 @@ from the <a href="https://www.djcbsoftware.nl/code/mu/mu4e/Dired.html#Dired">mu4
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">require</span> '<span class="org-constant">gnus-dired</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">gnus-dired</span>)
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Make the `</span><span class="org-comment"><span class="org-constant">gnus-dired-mail-buffers</span></span><span class="org-comment">' function also work on message-mode derived</span>
-<span class="org-comment-delimiter">;; </span><span class="org-comment">modes, such as mu4e-compose-mode.</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">gnus-dired-mail-buffers</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Return a list of active message buffers."</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Make the `</span><span style="color: #ffffaf;">gnus-dired-mail-buffers</span><span style="color: #808080;">' function also work on message-mode derived</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">modes, such as mu4e-compose-mode.</span>
+(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">gnus-dired-mail-buffers</span> ()
+ <span style="color: #808080;">"Return a list of active message buffers."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-3">(</span>buffers<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">save-current-buffer</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">dolist</span> <span class="org-rainbow-delimiters-depth-5">(</span>buffer <span class="org-rainbow-delimiters-depth-6">(</span>buffer-list t<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>set-buffer buffer<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-keyword">and</span> <span class="org-rainbow-delimiters-depth-7">(</span>derived-mode-p 'message-mode<span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>null message-sent-message-via<span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-keyword">push</span> <span class="org-rainbow-delimiters-depth-7">(</span>buffer-name buffer<span class="org-rainbow-delimiters-depth-7">)</span> buffers<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>nreverse buffers<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">let</span> (buffers)
+ (<span style="color: #87afd7;">save-current-buffer</span>
+ (<span style="color: #87afd7;">dolist</span> (buffer (buffer-list t))
+ (set-buffer buffer)
+ (<span style="color: #87afd7;">when</span> (<span style="color: #87afd7;">and</span> (derived-mode-p 'message-mode)
+ (null message-sent-message-via))
+ (<span style="color: #87afd7;">push</span> (buffer-name buffer) buffers))))
+ (nreverse buffers)))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> gnus-dired-mail-mode 'mu4e-user-agent<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'dired-mode-hook 'turn-on-gnus-dired-mode<span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">setq</span> gnus-dired-mail-mode 'mu4e-user-agent)
+(add-hook 'dired-mode-hook 'turn-on-gnus-dired-mode)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-10" class="outline-2">
-<h2 id="sec-10">Evil</h2>
+<h2 id="sec-10"><span class="section-number-2">10</span> Evil</h2>
<div class="outline-text-2" id="text-10">
<p>
Forgive me, <a href="https://stallman.org/saint.html">Father</a>, for I have sinned. I've been exposed to modal editing
@@ -1275,65 +1277,65 @@ First of all, let's define a function that will be called whenever Evil is loade
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-evil</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Configure evil mode."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-evil</span> ()
+ <span style="color: #808080;">"Configure evil mode."</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">We can safely remap &lt;C-u&gt; because the counting will be handled a-la Vim.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-u"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'evil-scroll-up<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">We can safely remap &lt;C-u&gt; because the counting will be handled a-la Vim.</span>
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-u"</span>) 'evil-scroll-up)
- <span class="org-comment-delimiter">; </span><span class="org-comment">Make window navigation easier.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-j"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'evil-window-down<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-k"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'evil-window-up<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-l"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'evil-window-right<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-h"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'evil-window-left<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Make window navigation easier.</span>
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-j"</span>) 'evil-window-down)
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-k"</span>) 'evil-window-up)
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-l"</span>) 'evil-window-right)
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-h"</span>) 'evil-window-left)
- <span class="org-comment-delimiter">; </span><span class="org-comment">The window navigation tweaks effectively wipe out the help prefix, which</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">is bad. Fortunately we can workaround this by providing "M-h" as the new</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">help prefix. This prefix is only used in emacs mode to mark lines, which is</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">something already handled by Evil.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key global-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"M-h"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'help-command<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>fset 'help-command help-map<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">The window navigation tweaks effectively wipe out the help prefix, which</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">is bad. Fortunately we can workaround this by providing "M-h" as the new</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">help prefix. This prefix is only used in emacs mode to mark lines, which is</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">something already handled by Evil.</span>
+ (define-key global-map (kbd <span style="color: #ffffaf;">"M-h"</span>) 'help-command)
+ (fset 'help-command help-map)
- <span class="org-comment-delimiter">; </span><span class="org-comment">I use the Super key in combination with j &amp; k to move around i3. Let's unset</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">M- combos for these two fellows for whenever I misstype them.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-unset-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"M-j"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-unset-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"M-k"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">I use the Super key in combination with j &amp; k to move around i3. Let's unset</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">M- combos for these two fellows for whenever I misstype them.</span>
+ (global-unset-key (kbd <span style="color: #ffffaf;">"M-j"</span>))
+ (global-unset-key (kbd <span style="color: #ffffaf;">"M-k"</span>))
- <span class="org-comment-delimiter">; </span><span class="org-comment">both this function and the subsequent lines about [escape] are taken from</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">@aaronbieber configuration.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">defun</span> <span class="org-function-name">minibuffer-keyboard-quit</span> <span class="org-rainbow-delimiters-depth-3">()</span>
- <span class="org-doc">"Abort recursive edit.</span>
-<span class="org-doc">In Delete Selection mode, if the mark is active, just deactivate it;</span>
-<span class="org-doc">then it takes a second \\[</span><span class="org-doc"><span class="org-constant">keyboard-quit</span></span><span class="org-doc">] to abort the minibuffer."</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">interactive</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">and</span> delete-selection-mode transient-mark-mode mark-active<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">setq</span> deactivate-mark t<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-5">(</span>get-buffer <span class="org-string">"*Completions*"</span><span class="org-rainbow-delimiters-depth-5">)</span> <span class="org-rainbow-delimiters-depth-5">(</span>delete-windows-on <span class="org-string">"*Completions*"</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>abort-recursive-edit<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">both this function and the subsequent lines about [escape] are taken from</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">@aaronbieber configuration.</span>
+ (<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">minibuffer-keyboard-quit</span> ()
+ <span style="color: #808080;">"Abort recursive edit.</span>
+<span style="color: #808080;">In Delete Selection mode, if the mark is active, just deactivate it;</span>
+<span style="color: #808080;">then it takes a second \\[</span><span style="color: #ffffaf;">keyboard-quit</span><span style="color: #808080;">] to abort the minibuffer."</span>
+ (<span style="color: #87afd7;">interactive</span>)
+ (<span style="color: #87afd7;">if</span> (<span style="color: #87afd7;">and</span> delete-selection-mode transient-mark-mode mark-active)
+ (<span style="color: #87afd7;">setq</span> deactivate-mark t)
+ (<span style="color: #87afd7;">when</span> (get-buffer <span style="color: #ffffaf;">"*Completions*"</span>) (delete-windows-on <span style="color: #ffffaf;">"*Completions*"</span>))
+ (abort-recursive-edit)))
- <span class="org-comment-delimiter">;; </span><span class="org-comment">Make escape quit everything, whenever possible.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">[</span>escape<span class="org-rainbow-delimiters-depth-3">]</span> 'keyboard-quit<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-visual-state-map <span class="org-rainbow-delimiters-depth-3">[</span>escape<span class="org-rainbow-delimiters-depth-3">]</span> 'keyboard-quit<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key minibuffer-local-map <span class="org-rainbow-delimiters-depth-3">[</span>escape<span class="org-rainbow-delimiters-depth-3">]</span> 'minibuffer-keyboard-quit<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key minibuffer-local-ns-map <span class="org-rainbow-delimiters-depth-3">[</span>escape<span class="org-rainbow-delimiters-depth-3">]</span> 'minibuffer-keyboard-quit<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key minibuffer-local-completion-map <span class="org-rainbow-delimiters-depth-3">[</span>escape<span class="org-rainbow-delimiters-depth-3">]</span> 'minibuffer-keyboard-quit<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key minibuffer-local-must-match-map <span class="org-rainbow-delimiters-depth-3">[</span>escape<span class="org-rainbow-delimiters-depth-3">]</span> 'minibuffer-keyboard-quit<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key minibuffer-local-isearch-map <span class="org-rainbow-delimiters-depth-3">[</span>escape<span class="org-rainbow-delimiters-depth-3">]</span> 'minibuffer-keyboard-quit<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">;; </span><span style="color: #808080;">Make escape quit everything, whenever possible.</span>
+ (define-key evil-normal-state-map [escape] 'keyboard-quit)
+ (define-key evil-visual-state-map [escape] 'keyboard-quit)
+ (define-key minibuffer-local-map [escape] 'minibuffer-keyboard-quit)
+ (define-key minibuffer-local-ns-map [escape] 'minibuffer-keyboard-quit)
+ (define-key minibuffer-local-completion-map [escape] 'minibuffer-keyboard-quit)
+ (define-key minibuffer-local-must-match-map [escape] 'minibuffer-keyboard-quit)
+ (define-key minibuffer-local-isearch-map [escape] 'minibuffer-keyboard-quit)
- <span class="org-comment-delimiter">; </span><span class="org-comment">I store macros on the &lt;q&gt; register for convenience, so I used to use the</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">&lt;C-q&gt; combo to execute this macro in Vim. In Emacs though, this combo is</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">reserved to a rather useful function, and I'd like to keep it that way. So,</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">now the mapping is set to &lt;C-2&gt; (mnemonic: where the @ symbol is). Moreover,</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">it's applied as many times as specified by the numeric prefix argument.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-2"</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-4">(</span>n<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">interactive</span> <span class="org-string">"p"</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>evil-execute-macro n <span class="org-string">"@q"</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">I store macros on the &lt;q&gt; register for convenience, so I used to use the</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">&lt;C-q&gt; combo to execute this macro in Vim. In Emacs though, this combo is</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">reserved to a rather useful function, and I'd like to keep it that way. So,</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">now the mapping is set to &lt;C-2&gt; (mnemonic: where the @ symbol is). Moreover,</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">it's applied as many times as specified by the numeric prefix argument.</span>
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-2"</span>)
+ (<span style="color: #87afd7;">lambda</span> (n)
+ (<span style="color: #87afd7;">interactive</span> <span style="color: #ffffaf;">"p"</span>)
+ (evil-execute-macro n <span style="color: #ffffaf;">"@q"</span>)))
- <span class="org-comment-delimiter">; </span><span class="org-comment">C-s: switch to normal mode and save the buffer. I know :)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-s"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'save-buffer<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-insert-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-s"</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-4">()</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">interactive</span><span class="org-rainbow-delimiters-depth-4">)</span> <span class="org-rainbow-delimiters-depth-4">(</span>save-buffer<span class="org-rainbow-delimiters-depth-4">)</span> <span class="org-rainbow-delimiters-depth-4">(</span>evil-force-normal-state<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">C-s: switch to normal mode and save the buffer. I know :)</span>
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-s"</span>) 'save-buffer)
+ (define-key evil-insert-state-map (kbd <span style="color: #ffffaf;">"C-s"</span>)
+ (<span style="color: #87afd7;">lambda</span> () (<span style="color: #87afd7;">interactive</span>) (save-buffer) (evil-force-normal-state))))
</pre>
</div>
@@ -1343,24 +1345,24 @@ Now make sure that Evil is installed, and call the relevant configuration functi
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> evil
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">evil</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'evil-mode-hook 'mssola-evil<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-mode 1<span class="org-rainbow-delimiters-depth-2">)</span>
+ (add-hook 'evil-mode-hook 'mssola-evil)
+ (evil-mode 1)
- <span class="org-comment-delimiter">;; </span><span class="org-comment">C-z is unused and it's close to my beloved C-c. Since I don't want to mess</span>
- <span class="org-comment-delimiter">;; </span><span class="org-comment">with one of the most sacred Emacs prefixes, I'm moving to C-z.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key key-translation-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-z"</span><span class="org-rainbow-delimiters-depth-3">)</span> <span class="org-rainbow-delimiters-depth-3">[</span>escape<span class="org-rainbow-delimiters-depth-3">]</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-operator-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-z"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'keyboard-quit<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>set-quit-char <span class="org-string">"C-z"</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">;; </span><span style="color: #808080;">C-z is unused and it's close to my beloved C-c. Since I don't want to mess</span>
+ <span style="color: #808080;">;; </span><span style="color: #808080;">with one of the most sacred Emacs prefixes, I'm moving to C-z.</span>
+ (define-key key-translation-map (kbd <span style="color: #ffffaf;">"C-z"</span>) [escape])
+ (define-key evil-operator-state-map (kbd <span style="color: #ffffaf;">"C-z"</span>) 'keyboard-quit)
+ (set-quit-char <span style="color: #ffffaf;">"C-z"</span>)
- <span class="org-comment-delimiter">;; </span><span class="org-comment">Use the proper initial evil state for the following modes.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-set-initial-state 'help-mode 'normal<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-set-initial-state 'debugger-mode 'normal<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-set-initial-state 'describe-mode 'normal<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-set-initial-state 'Buffer-menu-mode 'normal<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">;; </span><span style="color: #808080;">Use the proper initial evil state for the following modes.</span>
+ (evil-set-initial-state 'help-mode 'normal)
+ (evil-set-initial-state 'debugger-mode 'normal)
+ (evil-set-initial-state 'describe-mode 'normal)
+ (evil-set-initial-state 'Buffer-menu-mode 'normal)
</pre>
</div>
@@ -1373,22 +1375,22 @@ Vim into Evil.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> evil-leader
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-evil-leader-mode<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-leader/set-leader <span class="org-string">","</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> evil-leader/in-all-states 1<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-leader/set-key
- <span class="org-string">","</span> 'back-to-indentation
- <span class="org-string">"c"</span> 'delete-window
- <span class="org-string">"k"</span> 'kill-buffer-and-window
- <span class="org-string">"v"</span> 'split-window-right
- <span class="org-string">"V"</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-4">()</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">interactive</span><span class="org-rainbow-delimiters-depth-4">)</span> <span class="org-rainbow-delimiters-depth-4">(</span>split-window-right<span class="org-rainbow-delimiters-depth-4">)</span> <span class="org-rainbow-delimiters-depth-4">(</span>other-window 1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-string">"f"</span> 'flycheck-list-errors
- <span class="org-string">"e"</span> 'eval-last-sexp
- <span class="org-string">"b"</span> 'view-buffer
- <span class="org-string">"o"</span> 'browse-url-at-point<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">evil-leader</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (global-evil-leader-mode)
+ (evil-leader/set-leader <span style="color: #ffffaf;">","</span>)
+ (<span style="color: #87afd7;">setq</span> evil-leader/in-all-states 1)
+ (evil-leader/set-key
+ <span style="color: #ffffaf;">","</span> 'back-to-indentation
+ <span style="color: #ffffaf;">"c"</span> 'delete-window
+ <span style="color: #ffffaf;">"k"</span> 'kill-buffer-and-window
+ <span style="color: #ffffaf;">"v"</span> 'split-window-right
+ <span style="color: #ffffaf;">"V"</span> (<span style="color: #87afd7;">lambda</span> () (<span style="color: #87afd7;">interactive</span>) (split-window-right) (other-window 1))
+ <span style="color: #ffffaf;">"f"</span> 'flycheck-list-errors
+ <span style="color: #ffffaf;">"e"</span> 'eval-last-sexp
+ <span style="color: #ffffaf;">"b"</span> 'view-buffer
+ <span style="color: #ffffaf;">"o"</span> 'browse-url-at-point))
</pre>
</div>
@@ -1400,10 +1402,10 @@ having double quotes with single quotes in a single command).
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> evil-surround
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-evil-surround-mode 1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">evil-surround</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (global-evil-surround-mode 1))
</pre>
</div>
@@ -1416,10 +1418,10 @@ the current line, regardless of the programming language.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> evil-commentary
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-commentary-mode t<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">evil-commentary</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (evil-commentary-mode t))
</pre>
</div>
@@ -1432,20 +1434,20 @@ respectively.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> evil-args
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">Configuration taken from the documentation of evil-args.</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">evil-args</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Configuration taken from the documentation of evil-args.</span>
- <span class="org-comment-delimiter">;; </span><span class="org-comment">Bind evil-args text objects</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-inner-text-objects-map <span class="org-string">"a"</span> 'evil-inner-arg<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-outer-text-objects-map <span class="org-string">"a"</span> 'evil-outer-arg<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">;; </span><span style="color: #808080;">Bind evil-args text objects</span>
+ (define-key evil-inner-text-objects-map <span style="color: #ffffaf;">"a"</span> 'evil-inner-arg)
+ (define-key evil-outer-text-objects-map <span style="color: #ffffaf;">"a"</span> 'evil-outer-arg)
- <span class="org-comment-delimiter">;; </span><span class="org-comment">Bind evil-forward/backward-args</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-string">"L"</span> 'evil-forward-arg<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-string">"H"</span> 'evil-backward-arg<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-motion-state-map <span class="org-string">"L"</span> 'evil-forward-arg<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-motion-state-map <span class="org-string">"H"</span> 'evil-backward-arg<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ <span style="color: #808080;">;; </span><span style="color: #808080;">Bind evil-forward/backward-args</span>
+ (define-key evil-normal-state-map <span style="color: #ffffaf;">"L"</span> 'evil-forward-arg)
+ (define-key evil-normal-state-map <span style="color: #ffffaf;">"H"</span> 'evil-backward-arg)
+ (define-key evil-motion-state-map <span style="color: #ffffaf;">"L"</span> 'evil-forward-arg)
+ (define-key evil-motion-state-map <span style="color: #ffffaf;">"H"</span> 'evil-backward-arg))
</pre>
</div>
@@ -1458,18 +1460,18 @@ into Evil: <kbd>C-a</kbd> for increasing a number, and
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> evil-numbers
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-a"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'evil-numbers/inc-at-pt<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>define-key evil-normal-state-map <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-c -"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'evil-numbers/dec-at-pt<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span><span class="org-rainbow-delimiters-unmatched">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">evil-numbers</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-a"</span>) 'evil-numbers/inc-at-pt)
+ (define-key evil-normal-state-map (kbd <span style="color: #ffffaf;">"C-c -"</span>) 'evil-numbers/dec-at-pt)))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-11" class="outline-2">
-<h2 id="sec-11">Magit</h2>
+<h2 id="sec-11"><span class="section-number-2">11</span> Magit</h2>
<div class="outline-text-2" id="text-11">
<p>
A git porcelain for GNU Emacs. Even if I'm still using the git CLI, it's
@@ -1478,9 +1480,9 @@ certainly useful for some common tasks (I guess that I still need some learning)
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> magit
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">magit</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
</pre>
</div>
@@ -1491,9 +1493,9 @@ cases, set the proper default mode.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> 'evil
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'git-commit-mode-hook 'evil-insert-state<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-set-initial-state 'magit-log-edit-mode 'insert<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">with-eval-after-load</span> 'evil
+ (add-hook 'git-commit-mode-hook 'evil-insert-state)
+ (evil-set-initial-state 'magit-log-edit-mode 'insert))
</pre>
</div>
@@ -1504,11 +1506,11 @@ the rest.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'magit-section-set-visibility-hook
- '<span class="org-rainbow-delimiters-depth-2">(</span>lambda <span class="org-rainbow-delimiters-depth-3">(</span>section<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-4">(</span>string= <span class="org-rainbow-delimiters-depth-5">(</span>magit-section-type section<span class="org-rainbow-delimiters-depth-5">)</span> <span class="org-string">"branch"</span><span class="org-rainbow-delimiters-depth-4">)</span>
+<pre class="src src-elisp">(add-hook 'magit-section-set-visibility-hook
+ '(lambda (section)
+ (<span style="color: #87afd7;">if</span> (string= (magit-section-type section) <span style="color: #ffffaf;">"branch"</span>)
'hide
- 'show<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ 'show)))
</pre>
</div>
@@ -1518,7 +1520,7 @@ Set a key binding for <code>magit-log-buffer-file</code>.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>global-set-key <span class="org-rainbow-delimiters-depth-2">(</span>kbd <span class="org-string">"C-c l"</span><span class="org-rainbow-delimiters-depth-2">)</span> 'magit-log-buffer-file<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(global-set-key (kbd <span style="color: #ffffaf;">"C-c l"</span>) 'magit-log-buffer-file)
</pre>
</div>
@@ -1528,27 +1530,27 @@ And repair some key bindings from Evil mode.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> 'evil-leader
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-leader/set-key <span class="org-string">"s"</span> 'magit-status<span class="org-rainbow-delimiters-depth-2">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">with-eval-after-load</span> 'evil-leader
+ (evil-leader/set-key <span style="color: #ffffaf;">"s"</span> 'magit-status)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">use-package</span> evil-magit
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">evil-magit</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">The magit + evil-magit combo messes up some chords, let's fix this.</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">evil-define-key</span> 'normal magit-mode-map
- <span class="org-string">"\C-h"</span> 'evil-window-left
- <span class="org-string">"\C-l"</span> 'evil-window-right
- <span class="org-string">"\C-j"</span> 'evil-window-down
- <span class="org-string">"\C-k"</span> 'evil-window-up
- <span class="org-string">"\M-p"</span> 'helm-projectile-switch-project<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span><span class="org-rainbow-delimiters-unmatched">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">The magit + evil-magit combo messes up some chords, let's fix this.</span>
+ (<span style="color: #87afd7;">evil-define-key</span> 'normal magit-mode-map
+ <span style="color: #ffffaf;">"\C-h"</span> 'evil-window-left
+ <span style="color: #ffffaf;">"\C-l"</span> 'evil-window-right
+ <span style="color: #ffffaf;">"\C-j"</span> 'evil-window-down
+ <span style="color: #ffffaf;">"\C-k"</span> 'evil-window-up
+ <span style="color: #ffffaf;">"\M-p"</span> 'helm-projectile-switch-project))))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-12" class="outline-2">
-<h2 id="sec-12">mu4e</h2>
+<h2 id="sec-12"><span class="section-number-2">12</span> mu4e</h2>
<div class="outline-text-2" id="text-12">
<p>
I use <a href="http://www.djcbsoftware.nl/code/mu/">mu</a> and <a href="http://www.djcbsoftware.nl/code/mu/mu4e.html">mu4e</a> to manage my email. The configuration for this has been taken
@@ -1563,10 +1565,10 @@ I'm using an RPM that I've built on <a href="https://build.opensuse.org/package/
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>add-to-list 'load-path <span class="org-string">"/usr/share/emacs/site-lisp/mu4e"</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">require</span> '<span class="org-constant">mu4e</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(add-to-list 'load-path <span style="color: #ffffaf;">"/usr/share/emacs/site-lisp/mu4e"</span>)
+(<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">mu4e</span>)
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">featurep</span> '<span class="org-constant">mu4e</span><span class="org-rainbow-delimiters-depth-2">)</span>
+(<span style="color: #87afd7;">when</span> (<span style="color: #87afd7;">featurep</span> '<span style="color: #ffffaf;">mu4e</span>)
</pre>
</div>
@@ -1576,9 +1578,9 @@ Diferent SMTP options that will be used for each context.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> message-send-mail-function 'smtpmail-send-it
- mu4e-maildir <span class="org-rainbow-delimiters-depth-2">(</span>expand-file-name <span class="org-string">"~/.mail"</span><span class="org-rainbow-delimiters-depth-2">)</span>
- starttls-use-gnutls t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> message-send-mail-function 'smtpmail-send-it
+ mu4e-maildir (expand-file-name <span style="color: #ffffaf;">"~/.mail"</span>)
+ starttls-use-gnutls t)
</pre>
</div>
@@ -1589,35 +1591,35 @@ the configuration.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-smtp</span> <span class="org-rainbow-delimiters-depth-2">(</span>server port<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-doc">"Set SMTP variables depending on the given SERVER and PORT."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-smtp</span> (server port)
+ <span style="color: #808080;">"Set SMTP variables depending on the given SERVER and PORT."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">require</span> '<span class="org-constant">smtpmail</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">smtpmail</span>)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> smtpmail-starttls-credentials
- '<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span>server port nil nil<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
+ (<span style="color: #87afd7;">setq</span> smtpmail-starttls-credentials
+ '((server port nil nil))
smtpmail-auth-credentials
- <span class="org-rainbow-delimiters-depth-3">(</span>expand-file-name <span class="org-string">"~/.authinfo.gpg"</span><span class="org-rainbow-delimiters-depth-3">)</span>
+ (expand-file-name <span style="color: #ffffaf;">"~/.authinfo.gpg"</span>)
smtpmail-default-smtp-server server
smtpmail-smtp-server server
- smtpmail-smtp-service port<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ smtpmail-smtp-service port))
-<span class="org-comment-delimiter">; </span><span class="org-comment">https://www.reddit.com/r/emacs/comments/47t9ec/share_your_mu4econtext_configs/d0fsih6</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mu4e-message-maildir-matches</span> <span class="org-rainbow-delimiters-depth-2">(</span>msg rx<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-doc">"Returns true if the maildir of MSG matches the given regexp RX."</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">https://www.reddit.com/r/emacs/comments/47t9ec/share_your_mu4econtext_configs/d0fsih6</span>
+(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mu4e-message-maildir-matches</span> (msg rx)
+ <span style="color: #808080;">"Returns true if the maildir of MSG matches the given regexp RX."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">when</span> rx
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-4">(</span>listp rx<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-comment-delimiter">;; </span><span class="org-comment">if rx is a list, try each one for a match</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">or</span> <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-message-maildir-matches msg <span class="org-rainbow-delimiters-depth-6">(</span>car rx<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-message-maildir-matches msg <span class="org-rainbow-delimiters-depth-6">(</span>cdr rx<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-comment-delimiter">;; </span><span class="org-comment">not a list, check rx</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>string-match rx <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-message-field msg <span class="org-builtin">:maildir</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">when</span> rx
+ (<span style="color: #87afd7;">if</span> (listp rx)
+ <span style="color: #808080;">;; </span><span style="color: #808080;">if rx is a list, try each one for a match</span>
+ (<span style="color: #87afd7;">or</span> (mu4e-message-maildir-matches msg (car rx))
+ (mu4e-message-maildir-matches msg (cdr rx)))
+ <span style="color: #808080;">;; </span><span style="color: #808080;">not a list, check rx</span>
+ (string-match rx (mu4e-message-field msg <span style="color: #87afd7;">:maildir</span>)))))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">suse-refile-folder</span> <span class="org-rainbow-delimiters-depth-2">(</span>key<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-doc">"Returns the refile folder for the given SUSE account in the KEY arg"</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>concat <span class="org-string">"/"</span> key <span class="org-string">"/Archives/"</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>format-time-string <span class="org-string">"%Y"</span> <span class="org-rainbow-delimiters-depth-4">(</span>current-time<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">suse-refile-folder</span> (key)
+ <span style="color: #808080;">"Returns the refile folder for the given SUSE account in the KEY arg"</span>
+ (concat <span style="color: #ffffaf;">"/"</span> key <span style="color: #ffffaf;">"/Archives/"</span>
+ (format-time-string <span style="color: #ffffaf;">"%Y"</span> (current-time))))
</pre>
</div>
@@ -1628,58 +1630,58 @@ this way is relatively new (since mu 0.9.16).
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-contexts
- `<span class="org-rainbow-delimiters-depth-2">(</span>
- <span class="org-comment-delimiter">;; </span><span class="org-comment">GMail</span>
- ,<span class="org-rainbow-delimiters-depth-3">(</span>make-mu4e-context
- <span class="org-builtin">:name</span> <span class="org-string">"gmail"</span>
- <span class="org-builtin">:enter-func</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-5">()</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-message <span class="org-string">"Switching to gmail.com"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mssola-smtp <span class="org-string">"smtp.gmail.com"</span> 587<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-builtin">:match-func</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-5">(</span>msg<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">when</span> msg
- <span class="org-rainbow-delimiters-depth-6">(</span>mu4e-message-maildir-matches msg <span class="org-string">"^/gmail"</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-builtin">:vars</span> '<span class="org-rainbow-delimiters-depth-4">(</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>user-mail-address . <span class="org-string">"mikisabate@gmail.com"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-reply-to-address . <span class="org-string">"mikisabate@gmail.com"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-drafts-folder . <span class="org-string">"/gmail/Drafts"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-sent-folder . <span class="org-string">"/gmail/Sent"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-refile-folder . <span class="org-string">"/gmail/All"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-trash-folder . <span class="org-string">"/gmail/Trash"</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
-
- <span class="org-comment-delimiter">;; </span><span class="org-comment">suse.com</span>
- ,<span class="org-rainbow-delimiters-depth-3">(</span>make-mu4e-context
- <span class="org-builtin">:name</span> <span class="org-string">"comsuse"</span>
- <span class="org-builtin">:enter-func</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-5">()</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-message <span class="org-string">"Switching to suse.com"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mssola-smtp <span class="org-string">"smtp.novell.com"</span> 25<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-builtin">:match-func</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-5">(</span>msg<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">when</span> msg
- <span class="org-rainbow-delimiters-depth-6">(</span>mu4e-message-maildir-matches msg <span class="org-string">"^/susecom"</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-builtin">:vars</span> `<span class="org-rainbow-delimiters-depth-4">(</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>user-mail-address . <span class="org-string">"msabate@suse.com"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-reply-to-address . <span class="org-string">"msabate@suse.com"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-drafts-folder . <span class="org-string">"/susecom/Drafts"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-sent-folder . <span class="org-string">"/susecom/Sent"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-refile-folder . ,<span class="org-rainbow-delimiters-depth-6">(</span>suse-refile-folder <span class="org-string">"susecom"</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-trash-folder . <span class="org-string">"/susecom/Trash"</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
-
- <span class="org-comment-delimiter">;; </span><span class="org-comment">suse.de</span>
- ,<span class="org-rainbow-delimiters-depth-3">(</span>make-mu4e-context
- <span class="org-builtin">:name</span> <span class="org-string">"desuse"</span>
- <span class="org-builtin">:enter-func</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-5">()</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-message <span class="org-string">"Switching to suse.de"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mssola-smtp <span class="org-string">"imap.suse.de"</span> 587<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-builtin">:match-func</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-5">(</span>msg<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">when</span> msg
- <span class="org-rainbow-delimiters-depth-6">(</span>mu4e-message-maildir-matches msg <span class="org-string">"^/susede"</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-builtin">:vars</span> `<span class="org-rainbow-delimiters-depth-4">(</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>user-mail-address . <span class="org-string">"msabate@suse.de"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-reply-to-address . <span class="org-string">"msabate@suse.de"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-drafts-folder . <span class="org-string">"/susede/Drafts"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-sent-folder . <span class="org-string">"/susede/Sent"</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-refile-folder . ,<span class="org-rainbow-delimiters-depth-6">(</span>suse-refile-folder <span class="org-string">"susede"</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>mu4e-trash-folder . <span class="org-string">"/susede/Trash"</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> mu4e-contexts
+ `(
+ <span style="color: #808080;">;; </span><span style="color: #808080;">GMail</span>
+ ,(make-mu4e-context
+ <span style="color: #87afd7;">:name</span> <span style="color: #ffffaf;">"gmail"</span>
+ <span style="color: #87afd7;">:enter-func</span> (<span style="color: #87afd7;">lambda</span> ()
+ (mu4e-message <span style="color: #ffffaf;">"Switching to gmail.com"</span>)
+ (mssola-smtp <span style="color: #ffffaf;">"smtp.gmail.com"</span> 587))
+ <span style="color: #87afd7;">:match-func</span> (<span style="color: #87afd7;">lambda</span> (msg)
+ (<span style="color: #87afd7;">when</span> msg
+ (mu4e-message-maildir-matches msg <span style="color: #ffffaf;">"^/gmail"</span>)))
+ <span style="color: #87afd7;">:vars</span> '(
+ (user-mail-address . <span style="color: #ffffaf;">"mikisabate@gmail.com"</span>)
+ (mu4e-reply-to-address . <span style="color: #ffffaf;">"mikisabate@gmail.com"</span>)
+ (mu4e-drafts-folder . <span style="color: #ffffaf;">"/gmail/Drafts"</span>)
+ (mu4e-sent-folder . <span style="color: #ffffaf;">"/gmail/Sent"</span>)
+ (mu4e-refile-folder . <span style="color: #ffffaf;">"/gmail/All"</span>)
+ (mu4e-trash-folder . <span style="color: #ffffaf;">"/gmail/Trash"</span>)))
+
+ <span style="color: #808080;">;; </span><span style="color: #808080;">suse.com</span>
+ ,(make-mu4e-context
+ <span style="color: #87afd7;">:name</span> <span style="color: #ffffaf;">"comsuse"</span>
+ <span style="color: #87afd7;">:enter-func</span> (<span style="color: #87afd7;">lambda</span> ()
+ (mu4e-message <span style="color: #ffffaf;">"Switching to suse.com"</span>)
+ (mssola-smtp <span style="color: #ffffaf;">"smtp.novell.com"</span> 25))
+ <span style="color: #87afd7;">:match-func</span> (<span style="color: #87afd7;">lambda</span> (msg)
+ (<span style="color: #87afd7;">when</span> msg
+ (mu4e-message-maildir-matches msg <span style="color: #ffffaf;">"^/susecom"</span>)))
+ <span style="color: #87afd7;">:vars</span> `(
+ (user-mail-address . <span style="color: #ffffaf;">"msabate@suse.com"</span>)
+ (mu4e-reply-to-address . <span style="color: #ffffaf;">"msabate@suse.com"</span>)
+ (mu4e-drafts-folder . <span style="color: #ffffaf;">"/susecom/Drafts"</span>)
+ (mu4e-sent-folder . <span style="color: #ffffaf;">"/susecom/Sent"</span>)
+ (mu4e-refile-folder . ,(suse-refile-folder <span style="color: #ffffaf;">"susecom"</span>))
+ (mu4e-trash-folder . <span style="color: #ffffaf;">"/susecom/Trash"</span>)))
+
+ <span style="color: #808080;">;; </span><span style="color: #808080;">suse.de</span>
+ ,(make-mu4e-context
+ <span style="color: #87afd7;">:name</span> <span style="color: #ffffaf;">"desuse"</span>
+ <span style="color: #87afd7;">:enter-func</span> (<span style="color: #87afd7;">lambda</span> ()
+ (mu4e-message <span style="color: #ffffaf;">"Switching to suse.de"</span>)
+ (mssola-smtp <span style="color: #ffffaf;">"imap.suse.de"</span> 587))
+ <span style="color: #87afd7;">:match-func</span> (<span style="color: #87afd7;">lambda</span> (msg)
+ (<span style="color: #87afd7;">when</span> msg
+ (mu4e-message-maildir-matches msg <span style="color: #ffffaf;">"^/susede"</span>)))
+ <span style="color: #87afd7;">:vars</span> `(
+ (user-mail-address . <span style="color: #ffffaf;">"msabate@suse.de"</span>)
+ (mu4e-reply-to-address . <span style="color: #ffffaf;">"msabate@suse.de"</span>)
+ (mu4e-drafts-folder . <span style="color: #ffffaf;">"/susede/Drafts"</span>)
+ (mu4e-sent-folder . <span style="color: #ffffaf;">"/susede/Sent"</span>)
+ (mu4e-refile-folder . ,(suse-refile-folder <span style="color: #ffffaf;">"susede"</span>))
+ (mu4e-trash-folder . <span style="color: #ffffaf;">"/susede/Trash"</span>)))))
</pre>
</div>
@@ -1689,8 +1691,8 @@ If mu4e cannot figure things out, ask me.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-context-policy 'ask<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-compose-context-policy 'ask<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> mu4e-context-policy 'ask)
+(<span style="color: #87afd7;">setq</span> mu4e-compose-context-policy 'ask)
</pre>
</div>
@@ -1700,13 +1702,13 @@ Fill the <code>mu4e-user-mail-address-list</code> variable with the contexts.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-user-mail-address-list
- <span class="org-rainbow-delimiters-depth-2">(</span>delq nil
- <span class="org-rainbow-delimiters-depth-3">(</span>mapcar <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-5">(</span>context<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-6">(</span>mu4e-context-vars context<span class="org-rainbow-delimiters-depth-6">)</span>
- <span class="org-rainbow-delimiters-depth-6">(</span>cdr <span class="org-rainbow-delimiters-depth-7">(</span>assq 'user-mail-address
- <span class="org-rainbow-delimiters-depth-8">(</span>mu4e-context-vars context<span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- mu4e-contexts<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> mu4e-user-mail-address-list
+ (delq nil
+ (mapcar (<span style="color: #87afd7;">lambda</span> (context)
+ (<span style="color: #87afd7;">when</span> (mu4e-context-vars context)
+ (cdr (assq 'user-mail-address
+ (mu4e-context-vars context)))))
+ mu4e-contexts)))
</pre>
</div>
@@ -1716,10 +1718,10 @@ Setting my bookmarks
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-bookmarks
- '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"maildir:/gmail/inbox OR maildir:/susecom/inbox OR maildir:/susede/inbox"</span> <span class="org-string">"Inbox Folders"</span> ?n<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"flag:unread AND NOT flag:trashed"</span> <span class="org-string">"Unread messages"</span> ?u<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"date:today..now"</span> <span class="org-string">"Today's messages"</span> ?t<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> mu4e-bookmarks
+ '((<span style="color: #ffffaf;">"maildir:/gmail/inbox OR maildir:/susecom/inbox OR maildir:/susede/inbox"</span> <span style="color: #ffffaf;">"Inbox Folders"</span> ?n)
+ (<span style="color: #ffffaf;">"flag:unread AND NOT flag:trashed"</span> <span style="color: #ffffaf;">"Unread messages"</span> ?u)
+ (<span style="color: #ffffaf;">"date:today..now"</span> <span style="color: #ffffaf;">"Today's messages"</span> ?t)))
</pre>
</div>
@@ -1730,10 +1732,10 @@ format=flowed or not.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-compose-signature
- <span class="org-rainbow-delimiters-depth-2">(</span>concat
- <span class="org-string">"Miquel Sabat&#233; Sol&#224;,\n"</span>
- <span class="org-string">"PGP: 4096R / 1BA5 3C7A C93D CA2A CFDF DA97 96BE 8C6F D89D 6565\n"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> mu4e-compose-signature
+ (concat
+ <span style="color: #ffffaf;">"Miquel Sabat&#233; Sol&#224;,\n"</span>
+ <span style="color: #ffffaf;">"PGP: 4096R / 1BA5 3C7A C93D CA2A CFDF DA97 96BE 8C6F D89D 6565\n"</span>))
</pre>
</div>
@@ -1743,7 +1745,7 @@ Sign outgoing emails always.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'message-send-hook 'mml-secure-message-sign-pgpmime<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(add-hook 'message-send-hook 'mml-secure-message-sign-pgpmime)
</pre>
</div>
@@ -1753,7 +1755,7 @@ To avoid UID clashes. See <a href="http://pragmaticemacs.com/emacs/fixing-duplic
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-change-filenames-when-moving t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> mu4e-change-filenames-when-moving t)
</pre>
</div>
@@ -1763,19 +1765,19 @@ Miscellaneous settings.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-html2text-command <span class="org-string">"w3m -T text/html"</span>
- mu4e-attachment-dir <span class="org-string">"~/Downloads"</span>
- mu4e-headers-date-format <span class="org-string">"%Y-%m-%d %H:%M"</span>
- message-citation-line-format <span class="org-string">"%N @ %Y-%m-%d %H:%M %Z:\n"</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> mu4e-html2text-command <span style="color: #ffffaf;">"w3m -T text/html"</span>
+ mu4e-attachment-dir <span style="color: #ffffaf;">"~/Downloads"</span>
+ mu4e-headers-date-format <span style="color: #ffffaf;">"%Y-%m-%d %H:%M"</span>
+ message-citation-line-format <span style="color: #ffffaf;">"%N @ %Y-%m-%d %H:%M %Z:\n"</span>
message-citation-line-function 'message-insert-formatted-citation-line
message-kill-buffer-on-exit t
- mu4e-get-mail-command <span class="org-string">"mbsync -aqV"</span>
+ mu4e-get-mail-command <span style="color: #ffffaf;">"mbsync -aqV"</span>
mu4e-update-interval 600
mu4e-compose-dont-reply-to-self t
mu4e-compose-format-flowed t
mu4e-headers-skip-duplicates t
mu4e-headers-include-related t
- mu4e-headers-auto-update t<span class="org-rainbow-delimiters-depth-1">)</span>
+ mu4e-headers-auto-update t)
</pre>
</div>
@@ -1787,11 +1789,11 @@ These are the defaults:
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-headers-fields
- '<span class="org-rainbow-delimiters-depth-2">(</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-builtin">:date</span> . 18<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-builtin">:mailing-list</span> . 15<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-builtin">:from-or-to</span> . 20<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-builtin">:subject</span> . nil<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> mu4e-headers-fields
+ '( (<span style="color: #87afd7;">:date</span> . 18)
+ (<span style="color: #87afd7;">:mailing-list</span> . 15)
+ (<span style="color: #87afd7;">:from-or-to</span> . 20)
+ (<span style="color: #87afd7;">:subject</span> . nil)))
</pre>
</div>
@@ -1801,12 +1803,12 @@ Show images
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> mu4e-view-show-images t
- mu4e-view-image-max-width 800<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> mu4e-view-show-images t
+ mu4e-view-image-max-width 800)
-<span class="org-comment-delimiter">; </span><span class="org-comment">Use imagemagick, if available</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-2">(</span>fboundp 'imagemagick-register-types<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>imagemagick-register-types<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">Use imagemagick, if available</span>
+(<span style="color: #87afd7;">when</span> (fboundp 'imagemagick-register-types)
+ (imagemagick-register-types))
</pre>
</div>
@@ -1817,9 +1819,9 @@ render an HTML message with Webkit.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-2">(</span>&gt;= emacs-major-version 25<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'mu4e-view-actions
- '<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"webkit"</span> . mu4e-action-view-with-xwidget<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">if</span> (&gt;= emacs-major-version 25)
+ (add-to-list 'mu4e-view-actions
+ '(<span style="color: #ffffaf;">"webkit"</span> . mu4e-action-view-with-xwidget)))
</pre>
</div>
@@ -1831,9 +1833,9 @@ on it.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span>exec <span class="org-rainbow-delimiters-depth-4">(</span>locate-file <span class="org-string">"msg2pdf"</span> exec-path exec-suffixes<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">if</span> exec
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">setq</span> mu4e-msg2pdf exec<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">let</span> ((exec (locate-file <span style="color: #ffffaf;">"msg2pdf"</span> exec-path exec-suffixes)))
+ (<span style="color: #87afd7;">if</span> exec
+ (<span style="color: #87afd7;">setq</span> mu4e-msg2pdf exec)))
</pre>
</div>
@@ -1843,33 +1845,33 @@ Adding hooks for composing and viewing messages.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-compose-mode</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"My settings for message composition."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-compose-mode</span> ()
+ <span style="color: #808080;">"My settings for message composition."</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">If we are composing an email from scratch, it's more convenient to be in</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">insert mode. Otherwise start with normal mode.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">with-eval-after-load</span> 'evil
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> mu4e-compose-parent-message
- <span class="org-rainbow-delimiters-depth-4">(</span>evil-set-initial-state 'mu4e-compose-mode 'normal<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>evil-set-initial-state 'mu4e-compose-mode 'insert<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">If we are composing an email from scratch, it's more convenient to be in</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">insert mode. Otherwise start with normal mode.</span>
+ (<span style="color: #87afd7;">with-eval-after-load</span> 'evil
+ (<span style="color: #87afd7;">if</span> mu4e-compose-parent-message
+ (evil-set-initial-state 'mu4e-compose-mode 'normal)
+ (evil-set-initial-state 'mu4e-compose-mode 'insert)))
- <span class="org-comment-delimiter">; </span><span class="org-comment">Guess hard newlines</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>use-hard-newlines t 'guess<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Guess hard newlines</span>
+ (use-hard-newlines t 'guess)
- <span class="org-comment-delimiter">; </span><span class="org-comment">So it's easy to encrypt/decrypt emails.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>epa-mail-mode<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">So it's easy to encrypt/decrypt emails.</span>
+ (epa-mail-mode)
- <span class="org-comment-delimiter">; </span><span class="org-comment">Spellz</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>flyspell-mode<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Spellz</span>
+ (flyspell-mode))
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'mu4e-compose-mode-hook 'mssola-compose-mode<span class="org-rainbow-delimiters-depth-1">)</span>
+(add-hook 'mu4e-compose-mode-hook 'mssola-compose-mode)
-<span class="org-comment-delimiter">; </span><span class="org-comment">I want to read messages in the format that the sender used. I'm also</span>
-<span class="org-comment-delimiter">; </span><span class="org-comment">enabling epa-mail-mode, so it's easy to decrypt received emails.</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'mu4e-view-mode-hook
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-3">()</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>epa-mail-mode<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>visual-line-mode 1<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">I want to read messages in the format that the sender used. I'm also</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">enabling epa-mail-mode, so it's easy to decrypt received emails.</span>
+(add-hook 'mu4e-view-mode-hook
+ (<span style="color: #87afd7;">lambda</span> ()
+ (epa-mail-mode)
+ (visual-line-mode 1)))
</pre>
</div>
@@ -1879,35 +1881,35 @@ I want desktop notifications when receiving email.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> mu4e-alert
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">mu4e-alert</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">Notify me for unread emails from my inbox.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>mu4e-alert-set-default-style 'libnotify<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'after-init-hook #'mu4e-alert-enable-notifications<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'after-init-hook #'mu4e-alert-enable-mode-line-display<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> mu4e-alert-interesting-mail-query
- <span class="org-rainbow-delimiters-depth-3">(</span>concat
- <span class="org-string">"(maildir:/gmail/inbox OR maildir:/susecom/inbox OR maildir:/susede/inbox) "</span>
- <span class="org-string">"AND flag:unread AND NOT flag:trashed"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> mu4e-alert-email-notification-types '<span class="org-rainbow-delimiters-depth-3">(</span>count<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Notify me for unread emails from my inbox.</span>
+ (mu4e-alert-set-default-style 'libnotify)
+ (add-hook 'after-init-hook #'mu4e-alert-enable-notifications)
+ (add-hook 'after-init-hook #'mu4e-alert-enable-mode-line-display)
+ (<span style="color: #87afd7;">setq</span> mu4e-alert-interesting-mail-query
+ (concat
+ <span style="color: #ffffaf;">"(maildir:/gmail/inbox OR maildir:/susecom/inbox OR maildir:/susede/inbox) "</span>
+ <span style="color: #ffffaf;">"AND flag:unread AND NOT flag:trashed"</span>))
+ (<span style="color: #87afd7;">setq</span> mu4e-alert-email-notification-types '(count)))
-<span class="org-comment-delimiter">; </span><span class="org-comment">Evil mode in mu4e</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> 'evil
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">use-package</span> evil-mu4e
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">Evil mode in mu4e</span>
+(<span style="color: #87afd7;">with-eval-after-load</span> 'evil
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">evil-mu4e</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">Idea taken from evil-mu4e.el</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">defvar</span> <span class="org-variable-name">mssola-evil-mu4e-mode-map-bindings</span>
- `<span class="org-rainbow-delimiters-depth-4">(</span><span class="org-rainbow-delimiters-depth-5">(</span>,evil-mu4e-state mu4e-headers-mode-map <span class="org-string">"\C-u"</span> evil-scroll-up<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>,evil-mu4e-state mu4e-main-mode-map <span class="org-string">"\C-u"</span> evil-scroll-up<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>,evil-mu4e-state mu4e-view-mode-map <span class="org-string">"h"</span> evil-backward-char<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Idea taken from evil-mu4e.el</span>
+ (<span style="color: #87afd7;">defvar</span> <span style="color: #d0d0d0;">mssola-evil-mu4e-mode-map-bindings</span>
+ `((,evil-mu4e-state mu4e-headers-mode-map <span style="color: #ffffaf;">"\C-u"</span> evil-scroll-up)
+ (,evil-mu4e-state mu4e-main-mode-map <span style="color: #ffffaf;">"\C-u"</span> evil-scroll-up)
+ (,evil-mu4e-state mu4e-view-mode-map <span style="color: #ffffaf;">"h"</span> evil-backward-char)))
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">dolist</span> <span class="org-rainbow-delimiters-depth-4">(</span>binding mssola-evil-mu4e-mode-map-bindings<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">evil-define-key</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>nth 0 binding<span class="org-rainbow-delimiters-depth-5">)</span> <span class="org-rainbow-delimiters-depth-5">(</span>nth 1 binding<span class="org-rainbow-delimiters-depth-5">)</span> <span class="org-rainbow-delimiters-depth-5">(</span>nth 2 binding<span class="org-rainbow-delimiters-depth-5">)</span> <span class="org-rainbow-delimiters-depth-5">(</span>nth 3 binding<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">dolist</span> (binding mssola-evil-mu4e-mode-map-bindings)
+ (<span style="color: #87afd7;">evil-define-key</span>
+ (nth 0 binding) (nth 1 binding) (nth 2 binding) (nth 3 binding)))))
</pre>
</div>
@@ -1917,16 +1919,16 @@ And finally define a proper shortcut.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-comment-delimiter">; </span><span class="org-comment">The trailing parenthesis closes the "(when (featurep 'mu4e)" statement from</span>
-<span class="org-comment-delimiter">; </span><span class="org-comment">the very beginning.</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>global-set-key <span class="org-rainbow-delimiters-depth-2">(</span>kbd <span class="org-string">"C-c m"</span><span class="org-rainbow-delimiters-depth-2">)</span> 'mu4e<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-rainbow-delimiters-unmatched">)</span>
+<pre class="src src-elisp"><span style="color: #808080;">; </span><span style="color: #808080;">The trailing parenthesis closes the "(when (featurep 'mu4e)" statement from</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">the very beginning.</span>
+(global-set-key (kbd <span style="color: #ffffaf;">"C-c m"</span>) 'mu4e))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-13" class="outline-2">
-<h2 id="sec-13">org</h2>
+<h2 id="sec-13"><span class="section-number-2">13</span> org</h2>
<div class="outline-text-2" id="text-13">
<p>
<a href="http://orgmode.org/">org mode</a> is an incredible tool that keeps me organized: TODOs, notes, agenda,
@@ -1935,13 +1937,13 @@ etc. Moreover, it's built in GNU Emacs:
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">require</span> '<span class="org-constant">org</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">org</span>)
</pre>
</div>
</div>
<div id="outline-container-sec-13-1" class="outline-3">
-<h3 id="sec-13-1">General settings</h3>
+<h3 id="sec-13-1"><span class="section-number-3">13.1</span> General settings</h3>
<div class="outline-text-3" id="text-13-1">
<p>
First of all, let me define some helper functions.
@@ -1949,34 +1951,34 @@ First of all, let me define some helper functions.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-org-skip-if-priority</span> <span class="org-rainbow-delimiters-depth-2">(</span>priority <span class="org-type">&amp;optional</span> subtree<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-doc">"Skip an agenda item if it has a priority of PRIORITY.</span>
-<span class="org-doc">PRIORITY may be one of the characters ?A, ?B, or ?C.</span>
-<span class="org-doc">Skips the current entry unless SUBTREE is not nil. This function has been</span>
-<span class="org-doc">copied from @aaronbieber."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-org-skip-if-priority</span> (priority <span style="color: #87afd7;">&amp;optional</span> subtree)
+ <span style="color: #808080;">"Skip an agenda item if it has a priority of PRIORITY.</span>
+<span style="color: #808080;">PRIORITY may be one of the characters ?A, ?B, or ?C.</span>
+<span style="color: #808080;">Skips the current entry unless SUBTREE is not nil. This function has been</span>
+<span style="color: #808080;">copied from @aaronbieber."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span>end <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">if</span> subtree <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-keyword">save-excursion</span> <span class="org-rainbow-delimiters-depth-7">(</span>org-end-of-subtree t<span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-keyword">save-excursion</span> <span class="org-rainbow-delimiters-depth-7">(</span><span class="org-keyword">progn</span> <span class="org-rainbow-delimiters-depth-8">(</span>outline-next-heading<span class="org-rainbow-delimiters-depth-8">)</span> <span class="org-rainbow-delimiters-depth-8">(</span>1- <span class="org-rainbow-delimiters-depth-9">(</span>point<span class="org-rainbow-delimiters-depth-9">)</span><span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>pri-value <span class="org-rainbow-delimiters-depth-5">(</span>* 1000 <span class="org-rainbow-delimiters-depth-6">(</span>- org-lowest-priority priority<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>pri-current <span class="org-rainbow-delimiters-depth-5">(</span>org-get-priority <span class="org-rainbow-delimiters-depth-6">(</span>thing-at-point 'line t<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-4">(</span>= pri-value pri-current<span class="org-rainbow-delimiters-depth-4">)</span>
+ (<span style="color: #87afd7;">let</span> ((end (<span style="color: #87afd7;">if</span> subtree (<span style="color: #87afd7;">save-excursion</span> (org-end-of-subtree t))
+ (<span style="color: #87afd7;">save-excursion</span> (<span style="color: #87afd7;">progn</span> (outline-next-heading) (1- (point))))))
+ (pri-value (* 1000 (- org-lowest-priority priority)))
+ (pri-current (org-get-priority (thing-at-point 'line t))))
+ (<span style="color: #87afd7;">if</span> (= pri-value pri-current)
end
- nil<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ nil)))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-org-skip-if-not-closed-in-day</span> <span class="org-rainbow-delimiters-depth-2">(</span>time <span class="org-type">&amp;optional</span> subtree<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-doc">"Skip entries that were not closed in the given TIME.</span>
-<span class="org-doc">Skip the current entry unless SUBTREE is not nil, in which case skip</span>
-<span class="org-doc">the entire subtree. Idea taken from @aaronbieber"</span>
+(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-org-skip-if-not-closed-in-day</span> (time <span style="color: #87afd7;">&amp;optional</span> subtree)
+ <span style="color: #808080;">"Skip entries that were not closed in the given TIME.</span>
+<span style="color: #808080;">Skip the current entry unless SUBTREE is not nil, in which case skip</span>
+<span style="color: #808080;">the entire subtree. Idea taken from @aaronbieber"</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">let</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span>end <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">if</span> subtree <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-keyword">save-excursion</span> <span class="org-rainbow-delimiters-depth-7">(</span>org-end-of-subtree t<span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-keyword">save-excursion</span> <span class="org-rainbow-delimiters-depth-7">(</span><span class="org-keyword">progn</span> <span class="org-rainbow-delimiters-depth-8">(</span>outline-next-heading<span class="org-rainbow-delimiters-depth-8">)</span> <span class="org-rainbow-delimiters-depth-8">(</span>1- <span class="org-rainbow-delimiters-depth-9">(</span>point<span class="org-rainbow-delimiters-depth-9">)</span><span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>day-prefix <span class="org-rainbow-delimiters-depth-5">(</span>format-time-string <span class="org-string">"%Y-%m-%d"</span> time<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
+ (<span style="color: #87afd7;">let</span> ((end (<span style="color: #87afd7;">if</span> subtree (<span style="color: #87afd7;">save-excursion</span> (org-end-of-subtree t))
+ (<span style="color: #87afd7;">save-excursion</span> (<span style="color: #87afd7;">progn</span> (outline-next-heading) (1- (point))))))
+ (day-prefix (format-time-string <span style="color: #ffffaf;">"%Y-%m-%d"</span> time)))
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">save-excursion</span>
- <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">and</span> <span class="org-rainbow-delimiters-depth-6">(</span>re-search-forward org-closed-time-regexp end t<span class="org-rainbow-delimiters-depth-6">)</span>
- <span class="org-rainbow-delimiters-depth-6">(</span>string= <span class="org-rainbow-delimiters-depth-7">(</span>substring <span class="org-rainbow-delimiters-depth-8">(</span>match-string-no-properties 1<span class="org-rainbow-delimiters-depth-8">)</span> 0 10<span class="org-rainbow-delimiters-depth-7">)</span> day-prefix<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
+ (<span style="color: #87afd7;">if</span> (<span style="color: #87afd7;">save-excursion</span>
+ (<span style="color: #87afd7;">and</span> (re-search-forward org-closed-time-regexp end t)
+ (string= (substring (match-string-no-properties 1) 0 10) day-prefix)))
nil
- end<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ end)))
</pre>
</div>
@@ -1986,21 +1988,21 @@ Some general UI settings for org mode.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-src-tab-acts-natively t
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> org-src-tab-acts-natively t
org-confirm-babel-evaluate nil
- org-edit-src-content-indentation 0<span class="org-rainbow-delimiters-depth-1">)</span>
+ org-edit-src-content-indentation 0)
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-todo-keywords
- '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span>sequence <span class="org-string">"</span><span class="org-string"><span class="org-warning">TODO</span></span><span class="org-string">(t)"</span> <span class="org-string">"|"</span> <span class="org-string">"DONE(d!)"</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>sequence <span class="org-string">"IDEA(i)"</span> <span class="org-string">"WORKING(w)"</span> <span class="org-string">"|"</span> <span class="org-string">"USED(u@/!)"</span> <span class="org-string">"DISCARDED(x@/!)"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">setq</span> org-todo-keywords
+ '((sequence <span style="color: #ffffaf;">"TODO(t)"</span> <span style="color: #ffffaf;">"|"</span> <span style="color: #ffffaf;">"DONE(d!)"</span>)
+ (sequence <span style="color: #ffffaf;">"IDEA(i)"</span> <span style="color: #ffffaf;">"WORKING(w)"</span> <span style="color: #ffffaf;">"|"</span> <span style="color: #ffffaf;">"USED(u@/!)"</span> <span style="color: #ffffaf;">"DISCARDED(x@/!)"</span>)))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-todo-keyword-faces
- '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"</span><span class="org-string"><span class="org-warning">TODO</span></span><span class="org-string">"</span> . org-todo<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"IDEA"</span> . font-lock-constant-face<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"WORKING"</span> . font-lock-constant-face<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"DONE"</span> . org-done<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"USED"</span> . org-done<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"DISCARDED"</span> . org-done<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">setq</span> org-todo-keyword-faces
+ '((<span style="color: #ffffaf;">"TODO"</span> . org-todo)
+ (<span style="color: #ffffaf;">"IDEA"</span> . font-lock-constant-face)
+ (<span style="color: #ffffaf;">"WORKING"</span> . font-lock-constant-face)
+ (<span style="color: #ffffaf;">"DONE"</span> . org-done)
+ (<span style="color: #ffffaf;">"USED"</span> . org-done)
+ (<span style="color: #ffffaf;">"DISCARDED"</span> . org-done)))
</pre>
</div>
@@ -2010,9 +2012,9 @@ Logging settings.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-log-done t<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-log-redeadline <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">quote</span> time<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-log-reschedule <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">quote</span> time<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> org-log-done t)
+(<span style="color: #87afd7;">setq</span> org-log-redeadline (<span style="color: #87afd7;">quote</span> time))
+(<span style="color: #87afd7;">setq</span> org-log-reschedule (<span style="color: #87afd7;">quote</span> time))
</pre>
</div>
@@ -2022,14 +2024,14 @@ Where org files reside.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-agenda-files '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-string">"~/org/"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> org-agenda-files '(<span style="color: #ffffaf;">"~/org/"</span>))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-13-2" class="outline-3">
-<h3 id="sec-13-2">Publishing</h3>
+<h3 id="sec-13-2"><span class="section-number-3">13.2</span> Publishing</h3>
<div class="outline-text-3" id="text-13-2">
<p>
In order to publish files into HTML, I would like to have <code>htmlize</code> installed.
@@ -2039,8 +2041,8 @@ blocks to be converted into HTML as well, so we can properly colorize it).
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> htmlize
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">htmlize</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
@@ -2050,13 +2052,13 @@ And now let's set all the related settings.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-src-fontify-natively t
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> org-src-fontify-natively t
org-html-include-timestamps nil
org-html-toplevel-hlevel 2
org-html-htmlize-output-type 'css
org-export-with-section-numbers nil
org-export-with-sub-superscripts nil
- org-export-htmlize-output-type 'css<span class="org-rainbow-delimiters-depth-1">)</span>
+ org-export-htmlize-output-type 'css)
</pre>
</div>
@@ -2067,14 +2069,14 @@ perform this first:
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">require</span> '<span class="org-constant">ox-man</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">ox-man</span>)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-13-3" class="outline-3">
-<h3 id="sec-13-3">Agenda</h3>
+<h3 id="sec-13-3"><span class="section-number-3">13.3</span> Agenda</h3>
<div class="outline-text-3" id="text-13-3">
<p>
Custom commands for <code>org-agenda</code>.
@@ -2082,73 +2084,73 @@ Custom commands for <code>org-agenda</code>.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-agenda-custom-commands
- '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"p"</span> <span class="org-string">"Printed agenda"</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">Daily agenda with a 2-weeks deadline warning. Tasks are</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">represented as [ ] items.</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-rainbow-delimiters-depth-5">(</span>agenda <span class="org-string">""</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-ndays 1<span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-deadline-warning-days 14<span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-todo-keyword-format <span class="org-string">"[ ]"</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-scheduled-leaders '<span class="org-rainbow-delimiters-depth-8">(</span><span class="org-string">""</span> <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
-
- <span class="org-comment-delimiter">; </span><span class="org-comment">Display a "High Priority" list of tasks on top.</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>tags <span class="org-string">"PRIORITY=\"A\""</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-skip-function '<span class="org-rainbow-delimiters-depth-8">(</span>org-agenda-skip-entry-if 'todo 'done<span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-sorting-strategy '<span class="org-rainbow-delimiters-depth-8">(</span>tag-up priority-down<span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-todo-keyword-format <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-overriding-header <span class="org-string">"\nHigh priority\n--------------\n"</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
-
-
- <span class="org-comment-delimiter">; </span><span class="org-comment">All tasks except those already listed as high priority or</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">ideas. Scheduled and deadlines are also ignored here.</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>alltodo <span class="org-string">""</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-skip-function '<span class="org-rainbow-delimiters-depth-8">(</span><span class="org-keyword">or</span> <span class="org-rainbow-delimiters-depth-9">(</span>mssola-org-skip-if-priority ?A<span class="org-rainbow-delimiters-depth-9">)</span>
- <span class="org-rainbow-delimiters-depth-9">(</span>org-agenda-skip-entry-if 'todo '<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">"IDEA"</span> <span class="org-string">"WORKING"</span><span class="org-rainbow-delimiters-depth-1">)</span><span class="org-rainbow-delimiters-depth-9">)</span>
- <span class="org-rainbow-delimiters-depth-9">(</span>org-agenda-skip-if nil '<span class="org-rainbow-delimiters-depth-1">(</span>scheduled deadline<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-rainbow-delimiters-depth-9">)</span><span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-sorting-strategy '<span class="org-rainbow-delimiters-depth-8">(</span>tag-up priority-down<span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-todo-keyword-format <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-overriding-header <span class="org-string">"\nAll tasks\n----------\n"</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
-
- <span class="org-comment-delimiter">; </span><span class="org-comment">List of ideas.</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>todo <span class="org-string">"IDEA"</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-overriding-header <span class="org-string">"\nIdeas\n------\n"</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-todo-keyword-format <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
-
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-rainbow-delimiters-depth-5">(</span>org-agenda-compact-blocks t<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>org-agenda-remove-tags t<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
-
- <span class="org-comment-delimiter">; </span><span class="org-comment">List of done items. Useful for standups, review meetings, weekly</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">reports, etc.</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"d"</span> <span class="org-string">"Done items"</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">First show the items done yesterday. Useful for standups.</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-rainbow-delimiters-depth-5">(</span>todo <span class="org-string">"DONE"</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-overriding-header <span class="org-string">"Done yesterday\n---------------\n"</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-skip-function
- '<span class="org-rainbow-delimiters-depth-8">(</span>mssola-org-skip-if-not-closed-in-day
- <span class="org-rainbow-delimiters-depth-9">(</span>time-subtract <span class="org-rainbow-delimiters-depth-1">(</span>current-time<span class="org-rainbow-delimiters-depth-1">)</span> <span class="org-rainbow-delimiters-depth-1">(</span>seconds-to-time 86400<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-rainbow-delimiters-depth-9">)</span><span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-todo-keyword-format <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
-
- <span class="org-comment-delimiter">; </span><span class="org-comment">Then show what I've done today.</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>todo <span class="org-string">"DONE"</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-overriding-header <span class="org-string">"\nDone today\n-----------\n"</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-skip-function
- '<span class="org-rainbow-delimiters-depth-8">(</span>mssola-org-skip-if-not-closed-in-day
- <span class="org-rainbow-delimiters-depth-9">(</span>current-time<span class="org-rainbow-delimiters-depth-9">)</span><span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-todo-keyword-format <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span>
-
- <span class="org-comment-delimiter">; </span><span class="org-comment">Finally show what I've been doing in the past 15 days. Useful for</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">review meetings and weekly reports.</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>todo <span class="org-string">"DONE"</span>
- <span class="org-rainbow-delimiters-depth-6">(</span><span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-start-day <span class="org-string">"-15d"</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-span 15<span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-start-on-weekday nil<span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-todo-keyword-format <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-scheduled-leaders '<span class="org-rainbow-delimiters-depth-8">(</span><span class="org-string">""</span> <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-8">)</span><span class="org-rainbow-delimiters-depth-7">)</span>
- <span class="org-rainbow-delimiters-depth-7">(</span>org-agenda-overriding-header <span class="org-string">"\nDone during the past 15 days\n-----------------------------\n"</span><span class="org-rainbow-delimiters-depth-7">)</span><span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
-
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-rainbow-delimiters-depth-5">(</span>org-agenda-compact-blocks t<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>org-agenda-remove-tags t<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> org-agenda-custom-commands
+ '((<span style="color: #ffffaf;">"p"</span> <span style="color: #ffffaf;">"Printed agenda"</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Daily agenda with a 2-weeks deadline warning. Tasks are</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">represented as [ ] items.</span>
+ ((agenda <span style="color: #ffffaf;">""</span>
+ ((org-agenda-ndays 1)
+ (org-deadline-warning-days 14)
+ (org-agenda-todo-keyword-format <span style="color: #ffffaf;">"[ ]"</span>)
+ (org-agenda-scheduled-leaders '(<span style="color: #ffffaf;">""</span> <span style="color: #ffffaf;">""</span>))))
+
+ <span style="color: #808080;">; </span><span style="color: #808080;">Display a "High Priority" list of tasks on top.</span>
+ (tags <span style="color: #ffffaf;">"PRIORITY=\"A\""</span>
+ ((org-agenda-skip-function '(org-agenda-skip-entry-if 'todo 'done))
+ (org-agenda-sorting-strategy '(tag-up priority-down))
+ (org-agenda-todo-keyword-format <span style="color: #ffffaf;">""</span>)
+ (org-agenda-overriding-header <span style="color: #ffffaf;">"\nHigh priority\n--------------\n"</span>)))
+
+
+ <span style="color: #808080;">; </span><span style="color: #808080;">All tasks except those already listed as high priority or</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">ideas. Scheduled and deadlines are also ignored here.</span>
+ (alltodo <span style="color: #ffffaf;">""</span>
+ ((org-agenda-skip-function '(<span style="color: #87afd7;">or</span> (mssola-org-skip-if-priority ?A)
+ (org-agenda-skip-entry-if 'todo '(<span style="color: #ffffaf;">"IDEA"</span> <span style="color: #ffffaf;">"WORKING"</span>))
+ (org-agenda-skip-if nil '(scheduled deadline))))
+ (org-agenda-sorting-strategy '(tag-up priority-down))
+ (org-agenda-todo-keyword-format <span style="color: #ffffaf;">""</span>)
+ (org-agenda-overriding-header <span style="color: #ffffaf;">"\nAll tasks\n----------\n"</span>)))
+
+ <span style="color: #808080;">; </span><span style="color: #808080;">List of ideas.</span>
+ (todo <span style="color: #ffffaf;">"IDEA"</span>
+ ((org-agenda-overriding-header <span style="color: #ffffaf;">"\nIdeas\n------\n"</span>)
+ (org-agenda-todo-keyword-format <span style="color: #ffffaf;">""</span>))))
+
+ ((org-agenda-compact-blocks t)
+ (org-agenda-remove-tags t)))
+
+ <span style="color: #808080;">; </span><span style="color: #808080;">List of done items. Useful for standups, review meetings, weekly</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">reports, etc.</span>
+ (<span style="color: #ffffaf;">"d"</span> <span style="color: #ffffaf;">"Done items"</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">First show the items done yesterday. Useful for standups.</span>
+ ((todo <span style="color: #ffffaf;">"DONE"</span>
+ ((org-agenda-overriding-header <span style="color: #ffffaf;">"Done yesterday\n---------------\n"</span>)
+ (org-agenda-skip-function
+ '(mssola-org-skip-if-not-closed-in-day
+ (time-subtract (current-time) (seconds-to-time 86400))))
+ (org-agenda-todo-keyword-format <span style="color: #ffffaf;">""</span>)))
+
+ <span style="color: #808080;">; </span><span style="color: #808080;">Then show what I've done today.</span>
+ (todo <span style="color: #ffffaf;">"DONE"</span>
+ ((org-agenda-overriding-header <span style="color: #ffffaf;">"\nDone today\n-----------\n"</span>)
+ (org-agenda-skip-function
+ '(mssola-org-skip-if-not-closed-in-day
+ (current-time)))
+ (org-agenda-todo-keyword-format <span style="color: #ffffaf;">""</span>)))
+
+ <span style="color: #808080;">; </span><span style="color: #808080;">Finally show what I've been doing in the past 15 days. Useful for</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">review meetings and weekly reports.</span>
+ (todo <span style="color: #ffffaf;">"DONE"</span>
+ ((org-agenda-start-day <span style="color: #ffffaf;">"-15d"</span>)
+ (org-agenda-span 15)
+ (org-agenda-start-on-weekday nil)
+ (org-agenda-todo-keyword-format <span style="color: #ffffaf;">""</span>)
+ (org-agenda-scheduled-leaders '(<span style="color: #ffffaf;">""</span> <span style="color: #ffffaf;">""</span>))
+ (org-agenda-overriding-header <span style="color: #ffffaf;">"\nDone during the past 15 days\n-----------------------------\n"</span>))))
+
+ ((org-agenda-compact-blocks t)
+ (org-agenda-remove-tags t)))))
</pre>
</div>
@@ -2158,9 +2160,9 @@ The prefix for the different kinds of types being used.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-agenda-prefix-format '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span>agenda . <span class="org-string">"%t%s"</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>tags . <span class="org-string">"%c:%s"</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>todo . <span class="org-string">"%c:%t%s"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> org-agenda-prefix-format '((agenda . <span style="color: #ffffaf;">"%t%s"</span>)
+ (tags . <span style="color: #ffffaf;">"%c:%s"</span>)
+ (todo . <span style="color: #ffffaf;">"%c:%t%s"</span>)))
</pre>
</div>
@@ -2170,14 +2172,14 @@ Set up a key binding for org-agenda.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>global-set-key <span class="org-rainbow-delimiters-depth-2">(</span>kbd <span class="org-string">"C-c a"</span><span class="org-rainbow-delimiters-depth-2">)</span> 'org-agenda<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(global-set-key (kbd <span style="color: #ffffaf;">"C-c a"</span>) 'org-agenda)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-13-4" class="outline-3">
-<h3 id="sec-13-4">Capture</h3>
+<h3 id="sec-13-4"><span class="section-number-3">13.4</span> Capture</h3>
<div class="outline-text-3" id="text-13-4">
<p>
Set the default notes file and the key binding.
@@ -2185,8 +2187,8 @@ Set the default notes file and the key binding.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-default-notes-file <span class="org-rainbow-delimiters-depth-2">(</span>concat org-directory <span class="org-string">"/notes.org"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>define-key global-map <span class="org-string">"\C-cc"</span> 'org-capture<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> org-default-notes-file (concat org-directory <span style="color: #ffffaf;">"/notes.org"</span>))
+(define-key global-map <span style="color: #ffffaf;">"\C-cc"</span> 'org-capture)
</pre>
</div>
@@ -2196,16 +2198,16 @@ And finally set <code>org-capture-templates</code>.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> org-capture-templates
- `<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"t"</span> <span class="org-string">"todo"</span> entry <span class="org-rainbow-delimiters-depth-4">(</span>file <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-4">)</span> <span class="org-string">"* </span><span class="org-string"><span class="org-warning">TODO</span></span><span class="org-string"> %?\n%U\n"</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"i"</span> <span class="org-string">"idea"</span> entry <span class="org-rainbow-delimiters-depth-4">(</span>file <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-4">)</span> <span class="org-string">"* %? :IDEA:\n%U\n%a\n"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> org-capture-templates
+ `((<span style="color: #ffffaf;">"t"</span> <span style="color: #ffffaf;">"todo"</span> entry (file <span style="color: #ffffaf;">""</span>) <span style="color: #ffffaf;">"* TODO %?\n%U\n"</span>)
+ (<span style="color: #ffffaf;">"i"</span> <span style="color: #ffffaf;">"idea"</span> entry (file <span style="color: #ffffaf;">""</span>) <span style="color: #ffffaf;">"* %? :IDEA:\n%U\n%a\n"</span>)))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-13-5" class="outline-3">
-<h3 id="sec-13-5">Other</h3>
+<h3 id="sec-13-5"><span class="section-number-3">13.5</span> Other</h3>
<div class="outline-text-3" id="text-13-5">
<p>
Insert a &lt;kbd&gt;&lt;/kbd&gt; value in org mode. See this <a href="http://emacs.stackexchange.com/questions/2206/i-want-to-have-the-kbd-tags-for-my-blog-written-in-org-mode">StackExchange answer</a>.
@@ -2213,43 +2215,43 @@ Insert a &lt;kbd&gt;&lt;/kbd&gt; value in org mode. See this <a href="http://ema
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">endless/insert-key</span> <span class="org-rainbow-delimiters-depth-2">(</span>key<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-doc">"Ask for a key then insert its description.</span>
-<span class="org-doc">Will work on both org-mode and any mode that accepts plain html."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">interactive</span> <span class="org-string">"kType key sequence: "</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">let*</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span>is-org-mode <span class="org-rainbow-delimiters-depth-5">(</span>derived-mode-p 'org-mode<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>tag <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">if</span> is-org-mode
- <span class="org-string">"@@html:&lt;kbd&gt;%s&lt;/kbd&gt;@@"</span>
- <span class="org-string">"&lt;kbd&gt;%s&lt;/kbd&gt;"</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">if</span> <span class="org-rainbow-delimiters-depth-4">(</span>null <span class="org-rainbow-delimiters-depth-5">(</span>equal key <span class="org-string">"\r"</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>insert
- <span class="org-rainbow-delimiters-depth-5">(</span>format tag <span class="org-rainbow-delimiters-depth-6">(</span>help-key-description key nil<span class="org-rainbow-delimiters-depth-6">)</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>insert <span class="org-rainbow-delimiters-depth-5">(</span>format tag <span class="org-string">""</span><span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>forward-char <span class="org-rainbow-delimiters-depth-5">(</span><span class="org-keyword">if</span> is-org-mode -8 -6<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">endless/insert-key</span> (key)
+ <span style="color: #808080;">"Ask for a key then insert its description.</span>
+<span style="color: #808080;">Will work on both org-mode and any mode that accepts plain html."</span>
+ (<span style="color: #87afd7;">interactive</span> <span style="color: #ffffaf;">"kType key sequence: "</span>)
+ (<span style="color: #87afd7;">let*</span> ((is-org-mode (derived-mode-p 'org-mode))
+ (tag (<span style="color: #87afd7;">if</span> is-org-mode
+ <span style="color: #ffffaf;">"@@html:&lt;kbd&gt;%s&lt;/kbd&gt;@@"</span>
+ <span style="color: #ffffaf;">"&lt;kbd&gt;%s&lt;/kbd&gt;"</span>)))
+ (<span style="color: #87afd7;">if</span> (null (equal key <span style="color: #ffffaf;">"\r"</span>))
+ (insert
+ (format tag (help-key-description key nil)))
+ (insert (format tag <span style="color: #ffffaf;">""</span>))
+ (forward-char (<span style="color: #87afd7;">if</span> is-org-mode -8 -6)))))
-<span class="org-rainbow-delimiters-depth-1">(</span>define-key org-mode-map <span class="org-string">"\C-ck"</span> #'endless/insert-key<span class="org-rainbow-delimiters-depth-1">)</span>
+(define-key org-mode-map <span style="color: #ffffaf;">"\C-ck"</span> #'endless/insert-key)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-13-6" class="outline-3">
-<h3 id="sec-13-6"><span class="todo TODO">TODO</span> shortcut for making an org link, and transforming a link into a proper org link</h3>
+<h3 id="sec-13-6"><span class="section-number-3">13.6</span> <span class="todo TODO">TODO</span> shortcut for making an org link, and transforming a link into a proper org link</h3>
</div>
<div id="outline-container-sec-13-7" class="outline-3">
-<h3 id="sec-13-7"><span class="todo TODO">TODO</span> make it work with evil</h3>
+<h3 id="sec-13-7"><span class="section-number-3">13.7</span> <span class="todo TODO">TODO</span> make it work with evil</h3>
</div>
<div id="outline-container-sec-13-8" class="outline-3">
-<h3 id="sec-13-8"><span class="todo TODO">TODO</span> Proper keybindings for quick access.</h3>
+<h3 id="sec-13-8"><span class="section-number-3">13.8</span> <span class="todo TODO">TODO</span> Proper keybindings for quick access.</h3>
</div>
<div id="outline-container-sec-13-9" class="outline-3">
-<h3 id="sec-13-9"><span class="todo TODO">TODO</span> shortcuts for stuff like: create something urgent for today</h3>
+<h3 id="sec-13-9"><span class="section-number-3">13.9</span> <span class="todo TODO">TODO</span> shortcuts for stuff like: create something urgent for today</h3>
</div>
</div>
<div id="outline-container-sec-14" class="outline-2">
-<h2 id="sec-14">IRC</h2>
+<h2 id="sec-14"><span class="section-number-2">14</span> IRC</h2>
<div class="outline-text-2" id="text-14">
<p>
I'm using <a href="https://www.gnu.org/software/emacs/manual/html_mono/erc.html">ERC</a> for IRC.
@@ -2257,8 +2259,8 @@ I'm using <a href="https://www.gnu.org/software/emacs/manual/html_mono/erc.html"
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> erc
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">erc</span>
+ <span style="color: #87afd7;">:config</span>
</pre>
</div>
@@ -2268,8 +2270,8 @@ First of all, let's add some basic modules.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">dolist</span> <span class="org-rainbow-delimiters-depth-2">(</span>mod '<span class="org-rainbow-delimiters-depth-3">(</span>autojoin track truncate<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'erc-modules mod<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">dolist</span> (mod '(autojoin track truncate))
+ (add-to-list 'erc-modules mod))
</pre>
</div>
@@ -2279,27 +2281,27 @@ Setting up basic stuff.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> erc-hide-list '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-string">"PART"</span><span class="org-rainbow-delimiters-depth-2">)</span>
- erc-prompt <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-3">()</span> <span class="org-rainbow-delimiters-depth-3">(</span>concat <span class="org-rainbow-delimiters-depth-4">(</span>buffer-name<span class="org-rainbow-delimiters-depth-4">)</span> <span class="org-string">"&gt;"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- erc-track-exclude-types '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-string">"JOIN"</span> <span class="org-string">"NICK"</span> <span class="org-string">"PART"</span> <span class="org-string">"QUIT"</span> <span class="org-string">"MODE"</span><span class="org-rainbow-delimiters-depth-2">)</span>
- erc-server-coding-system '<span class="org-rainbow-delimiters-depth-2">(</span>utf-8 . utf-8<span class="org-rainbow-delimiters-depth-2">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> erc-hide-list '(<span style="color: #ffffaf;">"PART"</span>)
+ erc-prompt (<span style="color: #87afd7;">lambda</span> () (concat (buffer-name) <span style="color: #ffffaf;">"&gt;"</span>))
+ erc-track-exclude-types '(<span style="color: #ffffaf;">"JOIN"</span> <span style="color: #ffffaf;">"NICK"</span> <span style="color: #ffffaf;">"PART"</span> <span style="color: #ffffaf;">"QUIT"</span> <span style="color: #ffffaf;">"MODE"</span>)
+ erc-server-coding-system '(utf-8 . utf-8)
erc-kill-buffer-on-part t
erc-kill-queries-on-quit t
erc-kill-server-buffer-on-quit t
erc-fill-column 100
- erc-fill-prefix <span class="org-string">""</span>
- erc-timestamp-format <span class="org-string">"[%H:%M] "</span>
+ erc-fill-prefix <span style="color: #ffffaf;">""</span>
+ erc-timestamp-format <span style="color: #ffffaf;">"[%H:%M] "</span>
erc-insert-timestamp-function 'erc-insert-timestamp-left
erc-insert-away-timestamp-function 'erc-insert-timestamp-left
erc-hide-timestamps nil
erc-whowas-on-nosuchnick t
erc-public-away-p nil
- erc-echo-notice-always-hook '<span class="org-rainbow-delimiters-depth-2">(</span>erc-echo-notice-in-minibuffer<span class="org-rainbow-delimiters-depth-2">)</span>
+ erc-echo-notice-always-hook '(erc-echo-notice-in-minibuffer)
erc-auto-set-away nil
- erc-autoaway-message <span class="org-string">"%i seconds out..."</span>
- erc-away-nickname <span class="org-string">"msabate"</span>
+ erc-autoaway-message <span style="color: #ffffaf;">"%i seconds out..."</span>
+ erc-away-nickname <span style="color: #ffffaf;">"msabate"</span>
erc-enable-logging t
- erc-query-on-unjoined-chan-privmsg t<span class="org-rainbow-delimiters-depth-1">)</span>
+ erc-query-on-unjoined-chan-privmsg t)
</pre>
</div>
@@ -2310,14 +2312,14 @@ that on <code>/quit</code> or <code>/part</code>, but it's better to be safe tha
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">require</span> '<span class="org-constant">erc-log</span><span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>erc-log-enable<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">erc-log</span>)
+(erc-log-enable)
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> erc-log-channels-directory <span class="org-string">"~/.emacs.d/erc"</span>
+(<span style="color: #87afd7;">setq</span> erc-log-channels-directory <span style="color: #ffffaf;">"~/.emacs.d/erc"</span>
erc-save-buffer-on-part nil
erc-save-queries-on-quit nil
erc-log-write-after-send t
- erc-log-write-after-insert t<span class="org-rainbow-delimiters-depth-1">)</span>
+ erc-log-write-after-insert t)
</pre>
</div>
@@ -2327,9 +2329,9 @@ Servers and channels to auto-join.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> erc-autojoin-channels-alist
- '<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"irc.freenode.net"</span> <span class="org-string">"#gnu"</span> <span class="org-string">"#emacs"</span><span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"irc.suse.de"</span> <span class="org-string">"#suse"</span> <span class="org-string">"#docker"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> erc-autojoin-channels-alist
+ '((<span style="color: #ffffaf;">"irc.freenode.net"</span> <span style="color: #ffffaf;">"#gnu"</span> <span style="color: #ffffaf;">"#emacs"</span>)
+ (<span style="color: #ffffaf;">"irc.suse.de"</span> <span style="color: #ffffaf;">"#suse"</span> <span style="color: #ffffaf;">"#docker"</span>)))
</pre>
</div>
@@ -2339,11 +2341,11 @@ Use the <code>erc-hl-nicks</code> package, so highlight support for nicknames is
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> erc-hl-nicks
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:init</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">with-eval-after-load</span> 'erc
- <span class="org-rainbow-delimiters-depth-3">(</span>add-to-list 'erc-modules 'hl-nicks<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">erc-hl-nicks</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:init</span>
+ (<span style="color: #87afd7;">with-eval-after-load</span> 'erc
+ (add-to-list 'erc-modules 'hl-nicks)))
</pre>
</div>
@@ -2355,13 +2357,13 @@ GNU Emacs 24.3.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> 'erc
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> erc-notifications-icon
- <span class="org-rainbow-delimiters-depth-3">(</span>concat
- <span class="org-string">"/usr/share/emacs/"</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>format <span class="org-string">"%s.%s"</span> emacs-major-version emacs-minor-version<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-string">"/etc/images/icons/hicolor/24x24/apps/emacs.png"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'erc-modules 'notifications<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">with-eval-after-load</span> 'erc
+ (<span style="color: #87afd7;">setq</span> erc-notifications-icon
+ (concat
+ <span style="color: #ffffaf;">"/usr/share/emacs/"</span>
+ (format <span style="color: #ffffaf;">"%s.%s"</span> emacs-major-version emacs-minor-version)
+ <span style="color: #ffffaf;">"/etc/images/icons/hicolor/24x24/apps/emacs.png"</span>))
+ (add-to-list 'erc-modules 'notifications))
</pre>
</div>
@@ -2371,8 +2373,8 @@ At this point, we can safely update all the loaded ERC modules.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'erc-connect-pre-hook
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-3">(</span>x<span class="org-rainbow-delimiters-depth-3">)</span> <span class="org-rainbow-delimiters-depth-3">(</span>erc-update-modules<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(add-hook 'erc-connect-pre-hook
+ (<span style="color: #87afd7;">lambda</span> (x) (erc-update-modules)))
</pre>
</div>
@@ -2383,12 +2385,12 @@ Start some modules which won't do it by default. Moreover, according to the <a h
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'erc-mode-hook
- '<span class="org-rainbow-delimiters-depth-2">(</span>lambda <span class="org-rainbow-delimiters-depth-3">()</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>erc-track-mode t<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>auto-fill-mode -1<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>erc-log-mode 1<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>erc-autojoin-mode 1<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(add-hook 'erc-mode-hook
+ '(lambda ()
+ (erc-track-mode t)
+ (auto-fill-mode -1)
+ (erc-log-mode 1)
+ (erc-autojoin-mode 1)))
</pre>
</div>
@@ -2398,25 +2400,25 @@ And now define a function to connect to both IRC servers.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-erc</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Join pre-specified servers and channels."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-erc</span> ()
+ <span style="color: #808080;">"Join pre-specified servers and channels."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">interactive</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">interactive</span>)
- <span class="org-rainbow-delimiters-depth-2">(</span>erc <span class="org-builtin">:server</span> <span class="org-string">"irc.freenode.net"</span> <span class="org-builtin">:port</span> 6667 <span class="org-builtin">:nick</span> <span class="org-string">"mssola"</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>erc-tls <span class="org-builtin">:server</span> <span class="org-string">"irc.suse.de"</span> <span class="org-builtin">:port</span> 6697 <span class="org-builtin">:nick</span> <span class="org-string">"mssola"</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (erc <span style="color: #87afd7;">:server</span> <span style="color: #ffffaf;">"irc.freenode.net"</span> <span style="color: #87afd7;">:port</span> 6667 <span style="color: #87afd7;">:nick</span> <span style="color: #ffffaf;">"mssola"</span>)
+ (erc-tls <span style="color: #87afd7;">:server</span> <span style="color: #ffffaf;">"irc.suse.de"</span> <span style="color: #87afd7;">:port</span> 6697 <span style="color: #87afd7;">:nick</span> <span style="color: #ffffaf;">"mssola"</span>))
-<span class="org-rainbow-delimiters-depth-1">(</span>global-set-key <span class="org-rainbow-delimiters-depth-2">(</span>kbd <span class="org-string">"C-c i"</span><span class="org-rainbow-delimiters-depth-2">)</span> 'mssola-erc<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-rainbow-delimiters-unmatched">)</span>
+(global-set-key (kbd <span style="color: #ffffaf;">"C-c i"</span>) 'mssola-erc))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15" class="outline-2">
-<h2 id="sec-15">Languages</h2>
+<h2 id="sec-15"><span class="section-number-2">15</span> Languages</h2>
<div class="outline-text-2" id="text-15">
</div><div id="outline-container-sec-15-1" class="outline-3">
-<h3 id="sec-15-1">General</h3>
+<h3 id="sec-15-1"><span class="section-number-3">15.1</span> General</h3>
<div class="outline-text-3" id="text-15-1">
<p>
First of all, define a function that identifies some warning keywords
@@ -2425,12 +2427,12 @@ First of all, define a function that identifies some warning keywords
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">warnings-mode-hook</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"Hook for enabling the warning face on strings with a warning prefix."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">warnings-mode-hook</span> ()
+ <span style="color: #808080;">"Hook for enabling the warning face on strings with a warning prefix."</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>font-lock-add-keywords nil
- '<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span><span class="org-string">"</span><span class="org-string"><span class="org-regexp-grouping-backslash">\\</span></span><span class="org-string"><span class="org-regexp-grouping-construct">(</span></span><span class="org-string"><span class="org-warning">XXX</span></span><span class="org-string"><span class="org-regexp-grouping-backslash">\\</span></span><span class="org-string"><span class="org-regexp-grouping-construct">|</span></span><span class="org-string"><span class="org-warning">FIXME</span></span><span class="org-string"><span class="org-regexp-grouping-backslash">\\</span></span><span class="org-string"><span class="org-regexp-grouping-construct">|</span></span><span class="org-string"><span class="org-warning">TODO</span></span><span class="org-string"><span class="org-regexp-grouping-backslash">\\</span></span><span class="org-string"><span class="org-regexp-grouping-construct">|</span></span><span class="org-string"><span class="org-warning">HACK</span></span><span class="org-string"><span class="org-regexp-grouping-backslash">\\</span></span><span class="org-string"><span class="org-regexp-grouping-construct">|</span></span><span class="org-string"><span class="org-warning">NOTE</span></span><span class="org-string"><span class="org-regexp-grouping-backslash">\\</span></span><span class="org-string"><span class="org-regexp-grouping-construct">)</span></span><span class="org-string">"</span>
- 1 font-lock-warning-face prepend<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (font-lock-add-keywords nil
+ '((<span style="color: #ffffaf;">"</span><span style="color: #ffffaf; font-weight: bold;">\\</span><span style="color: #ffffaf; font-weight: bold;">(</span><span style="color: #ffffaf;">XXX</span><span style="color: #ffffaf; font-weight: bold;">\\</span><span style="color: #ffffaf; font-weight: bold;">|</span><span style="color: #ffffaf;">FIXME</span><span style="color: #ffffaf; font-weight: bold;">\\</span><span style="color: #ffffaf; font-weight: bold;">|</span><span style="color: #ffffaf;">TODO</span><span style="color: #ffffaf; font-weight: bold;">\\</span><span style="color: #ffffaf; font-weight: bold;">|</span><span style="color: #ffffaf;">HACK</span><span style="color: #ffffaf; font-weight: bold;">\\</span><span style="color: #ffffaf; font-weight: bold;">|</span><span style="color: #ffffaf;">NOTE</span><span style="color: #ffffaf; font-weight: bold;">\\</span><span style="color: #ffffaf; font-weight: bold;">)</span><span style="color: #ffffaf;">"</span>
+ 1 font-lock-warning-face prepend))))
</pre>
</div>
@@ -2441,29 +2443,29 @@ context too. In this case, I want spell check and <code>wc-mode</code> activated
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'text-mode-hook
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-3">()</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>flyspell-mode 1<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>wc-mode 1<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(add-hook 'text-mode-hook
+ (<span style="color: #87afd7;">lambda</span> ()
+ (flyspell-mode 1)
+ (wc-mode 1)))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-2" class="outline-3">
-<h3 id="sec-15-2">Shell</h3>
+<h3 id="sec-15-2"><span class="section-number-3">15.2</span> Shell</h3>
<div class="outline-text-3" id="text-15-2">
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> bats-mode
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">bats-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-3" class="outline-3">
-<h3 id="sec-15-3">Lisp</h3>
+<h3 id="sec-15-3"><span class="section-number-3">15.3</span> Lisp</h3>
<div class="outline-text-3" id="text-15-3">
<p>
Emacs lisp needs <code>rainbow-delimiters</code>, so the amount of parenthesis is less
@@ -2473,20 +2475,20 @@ confusing. Moreover, I'm also enabling <code>eldoc-mode</code> and the aforement
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'emacs-lisp-mode-hook
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-3">()</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>eldoc-mode 1<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>warnings-mode-hook<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>rainbow-delimiters-mode 1<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">https://github.com/jhenahan/emacs.d/blob/master/emacs-init.org#emacs-lisp</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">setq</span> mode-name <span class="org-string">"&#958;"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(add-hook 'emacs-lisp-mode-hook
+ (<span style="color: #87afd7;">lambda</span> ()
+ (eldoc-mode 1)
+ (warnings-mode-hook)
+ (rainbow-delimiters-mode 1)
+ <span style="color: #808080;">; </span><span style="color: #808080;">https://github.com/jhenahan/emacs.d/blob/master/emacs-init.org#emacs-lisp</span>
+ (<span style="color: #87afd7;">setq</span> mode-name <span style="color: #ffffaf;">"&#958;"</span>)))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-4" class="outline-3">
-<h3 id="sec-15-4">C and C++</h3>
+<h3 id="sec-15-4"><span class="section-number-3">15.4</span> C and C++</h3>
<div class="outline-text-3" id="text-15-4">
<p>
C and C++ only require the <code>warnings-mode-hook</code> function, spell checking for the
@@ -2495,17 +2497,17 @@ comments and the usage of tabs instead of spaces.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-comment-delimiter">; </span><span class="org-comment">Note that C-common includes languages with a similar syntax of C.</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'c-mode-common-hook 'warnings-mode-hook<span class="org-rainbow-delimiters-depth-1">)</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'c-mode-common-hook <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span><span class="org-rainbow-delimiters-depth-3">()</span> <span class="org-rainbow-delimiters-depth-3">(</span>flyspell-prog-mode<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp"><span style="color: #808080;">; </span><span style="color: #808080;">Note that C-common includes languages with a similar syntax of C.</span>
+(add-hook 'c-mode-common-hook 'warnings-mode-hook)
+(add-hook 'c-mode-common-hook (<span style="color: #87afd7;">lambda</span>() (flyspell-prog-mode)))
-<span class="org-comment-delimiter">;; </span><span class="org-comment">C</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'c-mode-hook
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-3">()</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">setq</span> indent-tabs-mode t<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">C</span>
+(add-hook 'c-mode-hook
+ (<span style="color: #87afd7;">lambda</span> () (<span style="color: #87afd7;">setq</span> indent-tabs-mode t)))
-<span class="org-comment-delimiter">;; </span><span class="org-comment">C++</span>
-<span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'c++-mode-hook
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-3">()</span> <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">setq</span> indent-tabs-mode t<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">C++</span>
+(add-hook 'c++-mode-hook
+ (<span style="color: #87afd7;">lambda</span> () (<span style="color: #87afd7;">setq</span> indent-tabs-mode t)))
</pre>
</div>
@@ -2515,29 +2517,29 @@ CMake for y'all.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> cmake-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">cmake-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> auto-mode-alist
- <span class="org-rainbow-delimiters-depth-3">(</span>append
- '<span class="org-rainbow-delimiters-depth-4">(</span><span class="org-rainbow-delimiters-depth-5">(</span><span class="org-string">"CMakeLists\\.txt\\'"</span> . cmake-mode<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- '<span class="org-rainbow-delimiters-depth-4">(</span><span class="org-rainbow-delimiters-depth-5">(</span><span class="org-string">"\\.cmake\\'"</span> . cmake-mode<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span>
- auto-mode-alist<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">setq</span> auto-mode-alist
+ (append
+ '((<span style="color: #ffffaf;">"CMakeLists\\.txt\\'"</span> . cmake-mode))
+ '((<span style="color: #ffffaf;">"\\.cmake\\'"</span> . cmake-mode))
+ auto-mode-alist))
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">use-package</span> cmake-font-lock
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">cmake-font-lock</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>add-hook 'cmake-mode-hook 'cmake-font-lock-activate<span class="org-rainbow-delimiters-depth-3">)</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>add-hook 'yaml-mode-hook 'warnings-mode-hook<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (add-hook 'cmake-mode-hook 'cmake-font-lock-activate)
+ (add-hook 'yaml-mode-hook 'warnings-mode-hook)))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-5" class="outline-3">
-<h3 id="sec-15-5">Ruby</h3>
+<h3 id="sec-15-5"><span class="section-number-3">15.5</span> Ruby</h3>
<div class="outline-text-3" id="text-15-5">
<p>
Include warning keywords in Ruby.
@@ -2545,14 +2547,14 @@ Include warning keywords in Ruby.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span>add-hook 'ruby-mode-hook 'warnings-mode-hook<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(add-hook 'ruby-mode-hook 'warnings-mode-hook)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-6" class="outline-3">
-<h3 id="sec-15-6">Go</h3>
+<h3 id="sec-15-6"><span class="section-number-3">15.6</span> Go</h3>
<div class="outline-text-3" id="text-15-6">
<p>
And now my Go configuration. This includes stuff like the usage of <code>goimports</code>,
@@ -2561,53 +2563,53 @@ And now my Go configuration. This includes stuff like the usage of <code>goimpor
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">defun</span> <span class="org-function-name">mssola-go-mode</span> <span class="org-rainbow-delimiters-depth-2">()</span>
- <span class="org-doc">"My configuration for Go mode."</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">defun</span> <span style="color: #d0d0d0;">mssola-go-mode</span> ()
+ <span style="color: #808080;">"My configuration for Go mode."</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">Use goimports instead of go-fmt</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> gofmt-command <span class="org-string">"goimports"</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Use goimports instead of go-fmt</span>
+ (<span style="color: #87afd7;">setq</span> gofmt-command <span style="color: #ffffaf;">"goimports"</span>)
- <span class="org-comment-delimiter">; </span><span class="org-comment">Call Gofmt before saving</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'before-save-hook 'gofmt-before-save<span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Call Gofmt before saving</span>
+ (add-hook 'before-save-hook 'gofmt-before-save)
- <span class="org-comment-delimiter">; </span><span class="org-comment">Integration flycheck with Go</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'load-path
- <span class="org-rainbow-delimiters-depth-3">(</span>concat <span class="org-rainbow-delimiters-depth-4">(</span>getenv <span class="org-string">"GOPATH"</span><span class="org-rainbow-delimiters-depth-4">)</span> <span class="org-string">"/src/github.com/dougm/goflymake"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">require</span> '<span class="org-constant">go-flycheck</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Integration flycheck with Go</span>
+ (add-to-list 'load-path
+ (concat (getenv <span style="color: #ffffaf;">"GOPATH"</span>) <span style="color: #ffffaf;">"/src/github.com/dougm/goflymake"</span>))
+ (<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">go-flycheck</span>)
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-leader/set-key
- <span class="org-string">"."</span> 'godef-jump-other-window<span class="org-rainbow-delimiters-depth-2">)</span>
+ (evil-leader/set-key
+ <span style="color: #ffffaf;">"."</span> 'godef-jump-other-window)
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> indent-tabs-mode t<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>flyspell-prog-mode<span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">setq</span> indent-tabs-mode t)
+ (flyspell-prog-mode)
- <span class="org-comment-delimiter">; </span><span class="org-comment">eldoc support</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">use-package</span> go-eldoc
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">require</span> '<span class="org-constant">go-eldoc</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">eldoc support</span>
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">go-eldoc</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (<span style="color: #87afd7;">require</span> '<span style="color: #ffffaf;">go-eldoc</span>))
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">use-package</span> go-add-tags
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>evil-leader/set-key <span class="org-string">"t"</span> 'go-add-tags<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">go-add-tags</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (evil-leader/set-key <span style="color: #ffffaf;">"t"</span> 'go-add-tags)))
-<span class="org-comment-delimiter">;; </span><span class="org-comment">Go</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> go-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:pin</span> melpa-stable
- <span class="org-builtin">:config</span>
+<span style="color: #808080;">;; </span><span style="color: #808080;">Go</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">go-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:pin</span> melpa-stable
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'go-mode-hook 'warnings-mode-hook<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'go-mode-hook 'go-eldoc-setup<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'go-mode-hook 'mssola-go-mode<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (add-hook 'go-mode-hook 'warnings-mode-hook)
+ (add-hook 'go-mode-hook 'go-eldoc-setup)
+ (add-hook 'go-mode-hook 'mssola-go-mode))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-7" class="outline-3">
-<h3 id="sec-15-7">Rust</h3>
+<h3 id="sec-15-7"><span class="section-number-3">15.7</span> Rust</h3>
<div class="outline-text-3" id="text-15-7">
<p>
Install <code>rust-mode</code> and add some hooks to make it friendlier.
@@ -2615,27 +2617,27 @@ Install <code>rust-mode</code> and add some hooks to make it friendlier.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> rust-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">rust-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'before-save-hook
- #'<span class="org-rainbow-delimiters-depth-3">(</span>lambda <span class="org-rainbow-delimiters-depth-4">()</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">when</span> <span class="org-rainbow-delimiters-depth-5">(</span>eq major-mode 'rust-mode<span class="org-rainbow-delimiters-depth-5">)</span>
- <span class="org-rainbow-delimiters-depth-5">(</span>rust-format-buffer<span class="org-rainbow-delimiters-depth-5">)</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (add-hook 'before-save-hook
+ #'(lambda ()
+ (<span style="color: #87afd7;">when</span> (eq major-mode 'rust-mode)
+ (rust-format-buffer))))
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">use-package</span> flycheck-rust
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">flycheck-rust</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-3">(</span>add-hook 'flycheck-mode-hook #'flycheck-rust-setup<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (add-hook 'flycheck-mode-hook #'flycheck-rust-setup)))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-8" class="outline-3">
-<h3 id="sec-15-8">Tabs vs spaces</h3>
+<h3 id="sec-15-8"><span class="section-number-3">15.8</span> Tabs vs spaces</h3>
<div class="outline-text-3" id="text-15-8">
<p>
Tabs or spaces? <a href="https://www.emacswiki.org/emacs/TabsSpacesBoth">Both</a>. The <code>smart-tabs-mode</code> has the philosophy of: tabs for
@@ -2645,53 +2647,53 @@ usings tabs for indentation (C, C++ and Go).
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> smart-tabs-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">smart-tabs-add-language-support</span> golang go-mode-hook
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-rainbow-delimiters-depth-4">(</span>c-indent-line . c-basic-offset<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>c-indent-region . c-basic-offset<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>smart-tabs-insinuate 'c 'c++ 'golang<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">smart-tabs-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (<span style="color: #87afd7;">smart-tabs-add-language-support</span> golang go-mode-hook
+ ((c-indent-line . c-basic-offset)
+ (c-indent-region . c-basic-offset)))
+ (smart-tabs-insinuate 'c 'c++ 'golang))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-9" class="outline-3">
-<h3 id="sec-15-9">Inferior markup languages.</h3>
+<h3 id="sec-15-9"><span class="section-number-3">15.9</span> Inferior markup languages.</h3>
<div class="outline-text-3" id="text-15-9">
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-comment-delimiter">;; </span><span class="org-comment">Markdown mode with preview mode in the browser.</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> markdown-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp"><span style="color: #808080;">;; </span><span style="color: #808080;">Markdown mode with preview mode in the browser.</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">markdown-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">This is the one that I got from openSUSE.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>custom-set-variables
- '<span class="org-rainbow-delimiters-depth-3">(</span>markdown-command <span class="org-string">"/usr/bin/markdown-calibre"</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">This is the one that I got from openSUSE.</span>
+ (custom-set-variables
+ '(markdown-command <span style="color: #ffffaf;">"/usr/bin/markdown-calibre"</span>))
- <span class="org-comment-delimiter">; </span><span class="org-comment">Preview mode does its things through websockets, so it's a requirement.</span>
- <span class="org-comment-delimiter">; </span><span class="org-comment">After that, we can safely require it.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">use-package</span> websocket
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">use-package</span> markdown-preview-mode
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">Preview mode does its things through websockets, so it's a requirement.</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">After that, we can safely require it.</span>
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">websocket</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">markdown-preview-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t)))
-<span class="org-comment-delimiter">; </span><span class="org-comment">YAML</span>
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> yaml-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<span style="color: #808080;">; </span><span style="color: #808080;">YAML</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">yaml-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'yaml-mode-hook 'warnings-mode-hook<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (add-hook 'yaml-mode-hook 'warnings-mode-hook))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-10" class="outline-3">
-<h3 id="sec-15-10">Web-related stuff.</h3>
+<h3 id="sec-15-10"><span class="section-number-3">15.10</span> Web-related stuff.</h3>
<div class="outline-text-3" id="text-15-10">
<p>
Slim and SCSS.
@@ -2699,18 +2701,18 @@ Slim and SCSS.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> slim-mode
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">slim-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t)
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> scss-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">scss-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">setq</span> scss-compile-at-save nil<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'yaml-mode-hook 'warnings-mode-hook<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (<span style="color: #87afd7;">setq</span> scss-compile-at-save nil)
+ (add-hook 'yaml-mode-hook 'warnings-mode-hook))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> coffee-mode
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">coffee-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
@@ -2721,44 +2723,44 @@ bundle of features which are interesting for web-related stuff.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> php-mode
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">php-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t)
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> web-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">web-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'auto-mode-alist '<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"\\.erb\\'"</span> . web-mode<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'auto-mode-alist '<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"\\.jinja\\'"</span> . web-mode<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'auto-mode-alist '<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"\\.html?\\'"</span> . web-mode<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (add-to-list 'auto-mode-alist '(<span style="color: #ffffaf;">"\\.erb\\'"</span> . web-mode))
+ (add-to-list 'auto-mode-alist '(<span style="color: #ffffaf;">"\\.jinja\\'"</span> . web-mode))
+ (add-to-list 'auto-mode-alist '(<span style="color: #ffffaf;">"\\.html?\\'"</span> . web-mode))
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'web-mode-hook
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-4">()</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">setq</span> web-mode-markup-indent-offset 2<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">setq</span> web-mode-css-indent-offset 2<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">setq</span> web-mode-code-indent-offset 2<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (add-hook 'web-mode-hook
+ (<span style="color: #87afd7;">lambda</span> ()
+ (<span style="color: #87afd7;">setq</span> web-mode-markup-indent-offset 2)
+ (<span style="color: #87afd7;">setq</span> web-mode-css-indent-offset 2)
+ (<span style="color: #87afd7;">setq</span> web-mode-code-indent-offset 2)))
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'js-mode-hook
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-4">()</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">setq</span> js-indent-level 2<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>rainbow-delimiters-mode 1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (add-hook 'js-mode-hook
+ (<span style="color: #87afd7;">lambda</span> ()
+ (<span style="color: #87afd7;">setq</span> js-indent-level 2)
+ (rainbow-delimiters-mode 1)))
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">use-package</span> vue-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">setq</span> mmm-submode-decoration-level 0<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ (<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">vue-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
+ (<span style="color: #87afd7;">setq</span> mmm-submode-decoration-level 0))
- <span class="org-comment-delimiter">; </span><span class="org-comment">React: treat it as a derived mode. Idea taken from spacemacs.</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">define-derived-mode</span> <span class="org-function-name">react-mode</span> web-mode <span class="org-string">"react"</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'auto-mode-alist '<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"\\.jsx\\'"</span> . react-mode<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'auto-mode-alist '<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"\\.react.js\\'"</span> . react-mode<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
+ <span style="color: #808080;">; </span><span style="color: #808080;">React: treat it as a derived mode. Idea taken from spacemacs.</span>
+ (<span style="color: #87afd7;">define-derived-mode</span> <span style="color: #d0d0d0;">react-mode</span> web-mode <span style="color: #ffffaf;">"react"</span>)
+ (add-to-list 'auto-mode-alist '(<span style="color: #ffffaf;">"\\.jsx\\'"</span> . react-mode))
+ (add-to-list 'auto-mode-alist '(<span style="color: #ffffaf;">"\\.react.js\\'"</span> . react-mode))
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook 'react-mode-hook
- <span class="org-rainbow-delimiters-depth-3">(</span><span class="org-keyword">lambda</span> <span class="org-rainbow-delimiters-depth-4">()</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>yas-activate-extra-mode 'js-mode<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>web-mode-set-content-type <span class="org-string">"jsx"</span><span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span><span class="org-keyword">setq-local</span> web-mode-enable-auto-quoting nil<span class="org-rainbow-delimiters-depth-4">)</span>
- <span class="org-rainbow-delimiters-depth-4">(</span>rainbow-delimiters 1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (add-hook 'react-mode-hook
+ (<span style="color: #87afd7;">lambda</span> ()
+ (yas-activate-extra-mode 'js-mode)
+ (web-mode-set-content-type <span style="color: #ffffaf;">"jsx"</span>)
+ (<span style="color: #87afd7;">setq-local</span> web-mode-enable-auto-quoting nil)
+ (rainbow-delimiters 1))))
</pre>
</div>
@@ -2770,15 +2772,15 @@ can be frustrating without proper formatting.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> json-reformat
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">json-reformat</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-11" class="outline-3">
-<h3 id="sec-15-11">Devops</h3>
+<h3 id="sec-15-11"><span class="section-number-3">15.11</span> Devops</h3>
<div class="outline-text-3" id="text-15-11">
<p>
Highlighting for Dockerfiles.
@@ -2786,11 +2788,11 @@ Highlighting for Dockerfiles.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> dockerfile-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">dockerfile-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-to-list 'auto-mode-alist '<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"Dockerfile\\'"</span> . dockerfile-mode<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (add-to-list 'auto-mode-alist '(<span style="color: #ffffaf;">"Dockerfile\\'"</span> . dockerfile-mode)))
</pre>
</div>
@@ -2800,28 +2802,28 @@ Stuff from Hashicorp like terraform and HCL.
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> terraform-mode
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">terraform-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>terraform-format-on-save-mode<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (terraform-format-on-save-mode))
-<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> hcl-mode
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">hcl-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> salt-mode
- <span class="org-builtin">:ensure</span> t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">salt-mode</span>
+ <span style="color: #87afd7;">:ensure</span> t)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-15-12" class="outline-3">
-<h3 id="sec-15-12">Others</h3>
+<h3 id="sec-15-12"><span class="section-number-3">15.12</span> Others</h3>
<div class="outline-text-3" id="text-15-12">
<p>
The <i>soria</i> theme has the <code>soria-purple-identifiers</code> hook. This hook instructs
@@ -2832,11 +2834,11 @@ criteria really).
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">dolist</span> <span class="org-rainbow-delimiters-depth-2">(</span>lang-hook '<span class="org-rainbow-delimiters-depth-3">(</span>ruby-mode-hook
+<pre class="src src-elisp">(<span style="color: #87afd7;">dolist</span> (lang-hook '(ruby-mode-hook
php-mode-hook
perl-mode-hook
- emacs-lisp-mode-hook<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>add-hook lang-hook 'soria-purple-identifiers<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ emacs-lisp-mode-hook))
+ (add-hook lang-hook 'soria-purple-identifiers))
</pre>
</div>
</div>
@@ -2844,7 +2846,7 @@ criteria really).
</div>
<div id="outline-container-sec-16" class="outline-2">
-<h2 id="sec-16">WoMan</h2>
+<h2 id="sec-16"><span class="section-number-2">16</span> WoMan</h2>
<div class="outline-text-2" id="text-16">
<p>
<code>WoMan</code> is a package that is included inside of GNU Emacs by default, and that
@@ -2853,16 +2855,16 @@ takes care of visualizing man pages. Let's properly setup Evil mode for this:
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">with-eval-after-load</span> <span class="org-string">"evil"</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>evil-set-initial-state 'woman-mode 'normal<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span><span class="org-keyword">evil-define-key</span> 'normal woman-mode-map
- <span class="org-string">"J"</span> 'Man-next-section
- <span class="org-string">"K"</span> 'Man-previous-section
- <span class="org-string">"\C-h"</span> 'evil-window-left
- <span class="org-string">"\C-l"</span> 'evil-window-right
- <span class="org-string">"\C-j"</span> 'evil-window-down
- <span class="org-string">"\C-k"</span> 'evil-window-up
- <span class="org-string">"\C-u"</span> 'evil-scroll-up<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">with-eval-after-load</span> <span style="color: #ffffaf;">"evil"</span>
+ (evil-set-initial-state 'woman-mode 'normal)
+ (<span style="color: #87afd7;">evil-define-key</span> 'normal woman-mode-map
+ <span style="color: #ffffaf;">"J"</span> 'Man-next-section
+ <span style="color: #ffffaf;">"K"</span> 'Man-previous-section
+ <span style="color: #ffffaf;">"\C-h"</span> 'evil-window-left
+ <span style="color: #ffffaf;">"\C-l"</span> 'evil-window-right
+ <span style="color: #ffffaf;">"\C-j"</span> 'evil-window-down
+ <span style="color: #ffffaf;">"\C-k"</span> 'evil-window-up
+ <span style="color: #ffffaf;">"\C-u"</span> 'evil-scroll-up))
</pre>
</div>
@@ -2872,14 +2874,14 @@ Finally, I want man pages to fill all the frame:
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span> woman-fill-frame t<span class="org-rainbow-delimiters-depth-1">)</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">setq</span> woman-fill-frame t)
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-17" class="outline-2">
-<h2 id="sec-17">Misc</h2>
+<h2 id="sec-17"><span class="section-number-2">17</span> Misc</h2>
<div class="outline-text-2" id="text-17">
<p>
Install a set of useful functions from <a href="https://github.com/bbatsov">@bbatsov</a>. The bindings are following
@@ -2889,20 +2891,20 @@ too many things into my leader and these shortcuts look sensible to me).
<div class="org-src-container">
-<pre class="src src-elisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">use-package</span> crux
- <span class="org-builtin">:ensure</span> t
- <span class="org-builtin">:config</span>
+<pre class="src src-elisp">(<span style="color: #87afd7;">use-package</span> <span style="color: #ffffaf;">crux</span>
+ <span style="color: #87afd7;">:ensure</span> t
+ <span style="color: #87afd7;">:config</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-set-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-c d"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'crux-delete-file-and-buffer<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-set-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-c r"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'crux-rename-file-and-buffer<span class="org-rainbow-delimiters-depth-2">)</span>
- <span class="org-rainbow-delimiters-depth-2">(</span>global-set-key <span class="org-rainbow-delimiters-depth-3">(</span>kbd <span class="org-string">"C-c o"</span><span class="org-rainbow-delimiters-depth-3">)</span> 'crux-open-with<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>
+ (global-set-key (kbd <span style="color: #ffffaf;">"C-c d"</span>) 'crux-delete-file-and-buffer)
+ (global-set-key (kbd <span style="color: #ffffaf;">"C-c r"</span>) 'crux-rename-file-and-buffer)
+ (global-set-key (kbd <span style="color: #ffffaf;">"C-c o"</span>) 'crux-open-with))
</pre>
</div>
</div>
</div>
<div id="outline-container-sec-18" class="outline-2">
-<h2 id="sec-18">Credits</h2>
+<h2 id="sec-18"><span class="section-number-2">18</span> Credits</h2>
<div class="outline-text-2" id="text-18">
<p>
I've built this file by simply scavenging from other people's emacs.d/dotfiles
@@ -2929,7 +2931,7 @@ repositories. I have taken lots of pieces from here and there, but most notably:
</div>
<div id="outline-container-sec-19" class="outline-2">
-<h2 id="sec-19">License</h2>
+<h2 id="sec-19"><span class="section-number-2">19</span> License</h2>
<div class="outline-text-2" id="text-19">
<div class="org-src-container">
@@ -2954,7 +2956,7 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">&lt
</div>
<div id="postamble" class="status">
<p class="author">Author: Miquel Sabaté Solà</p>
-<p class="date">Created: 2017-11-21 Tue 18:10</p>
+<p class="date">Created: 2017-12-06 Wed 13:33</p>
<p class="creator"><a href="http://www.gnu.org/software/emacs/">Emacs</a> 25.3.1 (<a href="http://orgmode.org">Org</a> mode 8.2.10)</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>