mirror of
https://github.com/SqrtMinusOne/sqrtminusone.github.io.git
synced 2025-12-11 00:03:02 +03:00
deploy: 8ed5a5305f
This commit is contained in:
parent
df7d0e09cc
commit
b7a3ba6758
4 changed files with 144 additions and 112 deletions
|
|
@ -207,6 +207,12 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span><span style="color:#19177c"><<minimal>></span>
|
||||
</span></span></code></pre></div><p>To launch Emacs with this config, run</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>emacs -q -l ~/.emacs.d/init-minimal.el
|
||||
</span></span></code></pre></div><p>A convinience macro:</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defmacro</span> <span style="color:#19177c">with-eval-after-load-norem</span> (<span style="color:#19177c">file</span> <span style="color:#008000">&rest</span> <span style="color:#19177c">body</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">declare</span> (<span style="color:#19177c">indent</span> <span style="color:#666">1</span>) (<span style="color:#19177c">debug</span> (<span style="color:#19177c">form</span> <span style="color:#19177c">def-body</span>)))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#666">`</span>(<span style="color:#008000">unless</span> <span style="color:#19177c">my/remote-server</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">with-eval-after-load</span> <span style="color:#666">,</span><span style="color:#19177c">file</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#666">,@</span><span style="color:#19177c">body</span>)))
|
||||
</span></span></code></pre></div><h3 id="performance">Performance</h3>
|
||||
<h4 id="measure-startup-speed">Measure startup speed</h4>
|
||||
<p>A small function to print out the loading time and number of GCs during the loading. Can be useful as a point of data for optimizing Emacs startup time.</p>
|
||||
|
|
@ -2957,7 +2963,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">sparql-mode</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>)
|
||||
</span></span></code></pre></div><h2 id="org-mode">Org Mode</h2>
|
||||
<p><strong>Org mode</strong> is a tool that leverages plain-text files for various tasks, like making notes, literate programming, task management, etc.</p>
|
||||
<p><strong>Org mode</strong> is a tool that leverages plain-text files for various tasks like making notes, literate programming, task management, etc.</p>
|
||||
<p>References:</p>
|
||||
<ul>
|
||||
<li><a href="https://orgmode.org/">Org Mode homepage</a></li>
|
||||
|
|
@ -2985,23 +2991,14 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">display-line-numbers-mode</span> <span style="color:#666">0</span>)))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-hook</span> <span style="color:#19177c">'org-mode-hook</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">lambda</span> ()
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">rainbow-delimiters-mode</span> <span style="color:#666">-1</span>)))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">require</span> <span style="color:#19177c">'org-tempo</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-structure-template-alist</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"el"</span> <span style="color:#666">.</span> <span style="color:#ba2121">"src emacs-lisp"</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-structure-template-alist</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"py"</span> <span style="color:#666">.</span> <span style="color:#ba2121">"src python"</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-structure-template-alist</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"sq"</span> <span style="color:#666">.</span> <span style="color:#ba2121">"src sql"</span>))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c"><<org-crypt-setup>></span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">unless</span> <span style="color:#19177c">my/is-termux</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c"><<org-lang-setup>></span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c"><<org-ui-setup>></span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c"><<org-keys-setup>></span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c"><<org-productivity-setup>></span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">rainbow-delimiters-mode</span> <span style="color:#666">-1</span>))))
|
||||
</span></span></code></pre></div><h4 id="encryption">Encryption</h4>
|
||||
<p>Setting up <code>org-crypt</code> to encrypt a part of a file.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">require</span> <span style="color:#19177c">'org-crypt</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">org-crypt-use-before-save-magic</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-tags-exclude-from-inheritance</span> (<span style="color:#008000">quote</span> (<span style="color:#ba2121">"crypt"</span>)))
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-crypt-key</span> <span style="color:#ba2121">"C1EC867E478472439CC82410DE004F32AFA00205"</span>)
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">with-eval-after-load-norem</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">require</span> <span style="color:#19177c">'org-crypt</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">org-crypt-use-before-save-magic</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">org-tags-exclude-from-inheritance</span> (<span style="color:#008000">quote</span> (<span style="color:#ba2121">"crypt"</span>)))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">org-crypt-key</span> <span style="color:#ba2121">"C1EC867E478472439CC82410DE004F32AFA00205"</span>))
|
||||
</span></span></code></pre></div><p>This enables encryption for Org segments which are tagged <code>:crypt:</code>.</p>
|
||||
<p>Another way to encrypt org files is to save them with extension <code>.org.gpg</code>. That way by default epa always prompts for a key, which is not what I want when there is in fact only one key to select. So I make the following advice:</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/epa--select-keys-around</span> (<span style="color:#19177c">fun</span> <span style="color:#19177c">prompt</span> <span style="color:#19177c">keys</span>)
|
||||
|
|
@ -3031,8 +3028,15 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">require</span> <span style="color:#19177c">'ox-extra</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">require</span> <span style="color:#19177c">'ol-notmuch</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ox-extras-activate</span> <span style="color:#666">'</span>(<span style="color:#19177c">latex-header-blocks</span> <span style="color:#19177c">ignore-headlines</span>)))
|
||||
</span></span></code></pre></div><h3 id="integration-with-evil">Integration with evil</h3>
|
||||
<p>A package to add more evil-mode keybindings to org-mode.</p>
|
||||
</span></span></code></pre></div><h4 id="org-tempo">org-tempo</h4>
|
||||
<p><code>org-tempo</code> is a convinient package that provides snippets for various org blocks.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">require</span> <span style="color:#19177c">'org-tempo</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-structure-template-alist</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"el"</span> <span style="color:#666">.</span> <span style="color:#ba2121">"src emacs-lisp"</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-structure-template-alist</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"py"</span> <span style="color:#666">.</span> <span style="color:#ba2121">"src python"</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-structure-template-alist</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"sq"</span> <span style="color:#666">.</span> <span style="color:#ba2121">"src sql"</span>)))
|
||||
</span></span></code></pre></div><h4 id="evil-org">evil-org</h4>
|
||||
<p>Better integration with evil-mode.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">evil-org</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:hook</span> (<span style="color:#19177c">org-mode</span> <span style="color:#666">.</span> <span style="color:#19177c">evil-org-mode</span>)
|
||||
|
|
@ -3055,7 +3059,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">jupyter</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> (<span style="color:#19177c">org</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/is-termux</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/remote-server</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:init</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my-leader-def</span> <span style="color:#ba2121">"ar"</span> <span style="color:#19177c">'jupyter-run-repl</span>))
|
||||
</span></span></code></pre></div><p>Refresh kernelspecs.</p>
|
||||
|
|
@ -3073,6 +3077,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span></code></pre></div><h4 id="hy-1">Hy</h4>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">ob-hy</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> (<span style="color:#19177c">org</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/remote-server</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>)
|
||||
</span></span></code></pre></div><h4 id="view-html-in-browser">View HTML in browser</h4>
|
||||
<p>Open HTML in the <code>begin_export</code> block with xdg-open.</p>
|
||||
|
|
@ -3095,9 +3100,10 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">f-write</span> (<span style="color:#00f">plist-get</span> (<span style="color:#00f">car</span> (<span style="color:#00f">cdr</span> <span style="color:#19177c">elem</span>)) <span style="color:#008000">:value</span>) <span style="color:#19177c">'utf-8</span> <span style="color:#19177c">temp-file-path</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">start-process</span> <span style="color:#ba2121">"org-html-preview"</span> <span style="color:#800">nil</span> <span style="color:#ba2121">"xdg-open"</span> <span style="color:#19177c">temp-file-path</span>))))))
|
||||
</span></span></code></pre></div><h4 id="plantuml-1">PlantUML</h4>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-plantuml-executable-path</span> <span style="color:#ba2121">"/home/pavel/.guix-extra-profiles/emacs/emacs/bin/plantuml"</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-plantuml-exec-mode</span> <span style="color:#19177c">'plantuml</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-src-lang-modes</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"plantuml"</span> <span style="color:#666">.</span> <span style="color:#19177c">plantuml</span>))
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">org-plantuml-executable-path</span> <span style="color:#ba2121">"/home/pavel/.guix-extra-profiles/emacs/emacs/bin/plantuml"</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">org-plantuml-exec-mode</span> <span style="color:#19177c">'plantuml</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-src-lang-modes</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"plantuml"</span> <span style="color:#666">.</span> <span style="color:#19177c">plantuml</span>)))
|
||||
</span></span></code></pre></div><h4 id="restclient">Restclient</h4>
|
||||
<p><a href="https://github.com/pashky/restclient.el">restclient.el</a> is an Emacs package to send HTTP requests. <a href="https://github.com/alf/ob-restclient.el">ob-restclient</a> provides interaction with Org Babel.</p>
|
||||
<p>References:</p>
|
||||
|
|
@ -3106,30 +3112,34 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</ul>
|
||||
<!--listend-->
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">restclient</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/remote-server</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">ob-restclient</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> (<span style="color:#19177c">org</span> <span style="color:#19177c">restclient</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/remote-server</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>)
|
||||
</span></span></code></pre></div><h4 id="setup-1">Setup</h4>
|
||||
<p>Enable languages</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">org-babel-do-load-languages</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">'org-babel-load-languages</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#666">'</span>((<span style="color:#19177c">emacs-lisp</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">python</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">sql</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#408080;font-style:italic">;; (typescript .t)</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">hy</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">shell</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">plantuml</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">octave</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">jupyter</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">sparql</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)))
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">with-eval-after-load-norem</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">org-babel-do-load-languages</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">'org-babel-load-languages</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#666">'</span>((<span style="color:#19177c">emacs-lisp</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">python</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">sql</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#408080;font-style:italic">;; (typescript .t)</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">hy</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">shell</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">plantuml</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">octave</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">jupyter</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">sparql</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)))
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">add-hook</span> <span style="color:#19177c">'org-babel-after-execute-hook</span> <span style="color:#19177c">'org-redisplay-inline-images</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-hook</span> <span style="color:#19177c">'org-babel-after-execute-hook</span> <span style="color:#19177c">'org-redisplay-inline-images</span>))
|
||||
</span></span></code></pre></div><p>Use Jupyter block instead of built-in Python.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">org-babel-jupyter-override-src-block</span> <span style="color:#ba2121">"python"</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">org-babel-jupyter-override-src-block</span> <span style="color:#ba2121">"hy"</span>)
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'ob-jupyter</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">org-babel-jupyter-override-src-block</span> <span style="color:#ba2121">"python"</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">org-babel-jupyter-override-src-block</span> <span style="color:#ba2121">"hy"</span>))
|
||||
</span></span></code></pre></div><p>Turn of some minor modes in source blocks.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">add-hook</span> <span style="color:#19177c">'org-src-mode-hook</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">lambda</span> ()
|
||||
|
|
@ -3218,7 +3228,8 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/jupyter-org-scalar</span> <span style="color:#19177c">value</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">funcall</span> <span style="color:#19177c">fun</span> <span style="color:#19177c">value</span>)))
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">advice-add</span> <span style="color:#19177c">'jupyter-org-scalar</span> <span style="color:#008000">:around</span> <span style="color:#00f">#'</span><span style="color:#19177c">my/jupyter-org-scalar-around</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'jupyter</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">advice-add</span> <span style="color:#19177c">'jupyter-org-scalar</span> <span style="color:#008000">:around</span> <span style="color:#00f">#'</span><span style="color:#19177c">my/jupyter-org-scalar-around</span>))
|
||||
</span></span></code></pre></div><h5 id="wrap-source-code-output">Wrap source code output</h5>
|
||||
<p>A function to remove the :RESULTS: drawer from results. Once again, it’s necessary because emacs-jupyter doesn’t seem to respect <code>:results raw</code>.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/org-strip-results</span> (<span style="color:#19177c">data</span>)
|
||||
|
|
@ -3299,7 +3310,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">org-babel-lob-execute-maybe</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">org-babel-execute-src-block</span> <span style="color:#19177c">arg</span>)))))))
|
||||
</span></span></code></pre></div><p>Some keybindings:</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'org-babel</span>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-babel-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"B"</span> <span style="color:#00f">#'</span><span style="color:#19177c">my/org-babel-execute-buffer-below</span>
|
||||
|
|
@ -3398,7 +3409,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:commands</span> (<span style="color:#19177c">org-attach-screenshot</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>)
|
||||
</span></span></code></pre></div><h4 id="transclusion">Transclusion</h4>
|
||||
<p>A package that implements transclusions in Org Mode, that is rendering part of one file inside of another file.</p>
|
||||
<p>A package that implements transclusions in Org Mode, i.e. rendering part of one file inside another file.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">org-transclusion</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> <span style="color:#19177c">org</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> (<span style="color:#008000">:host</span> <span style="color:#19177c">github</span> <span style="color:#008000">:repo</span> <span style="color:#ba2121">"nobiot/org-transclusion"</span>)
|
||||
|
|
@ -3427,9 +3438,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</ul>
|
||||
<p>Used files</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-roam-directory</span> (<span style="color:#00f">concat</span> <span style="color:#19177c">org-directory</span> <span style="color:#ba2121">"/roam"</span>))
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-agenda-files</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"inbox.org"</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"projects/comp-stuff.org"</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"projects/looking-forward.org"</span>))
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-agenda-files</span> <span style="color:#666">'</span>(<span style="color:#ba2121">"inbox.org"</span>))
|
||||
</span></span><span style="display:flex;"><span><span style="color:#408080;font-style:italic">;; (setq org-default-notes-file (concat org-directory "/notes.org"))</span>
|
||||
</span></span></code></pre></div><p>Hotkeys</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">my-leader-def</span>
|
||||
|
|
@ -3466,8 +3475,9 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> <span style="color:#666">,</span>(<span style="color:#00f">concat</span> <span style="color:#ba2121">"* %?\n"</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"/Entered on/ %U"</span>))))
|
||||
</span></span></code></pre></div><p>Effort estimation</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-global-properties</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#666">'</span>(<span style="color:#ba2121">"Effort_ALL"</span> <span style="color:#666">.</span> <span style="color:#ba2121">"0 0:05 0:10 0:15 0:30 0:45 1:00 2:00 4:00"</span>))
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">with-eval-after-load-norem</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">'org-global-properties</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#666">'</span>(<span style="color:#ba2121">"Effort_ALL"</span> <span style="color:#666">.</span> <span style="color:#ba2121">"0 0:05 0:10 0:15 0:30 0:45 1:00 2:00 4:00"</span>)))
|
||||
</span></span></code></pre></div><p>Log DONE time</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-log-done</span> <span style="color:#19177c">'time</span>)
|
||||
</span></span></code></pre></div><h4 id="off--trello-sync"><span class="org-todo done OFF">OFF</span> (OFF) Trello sync</h4>
|
||||
|
|
@ -3509,6 +3519,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span></code></pre></div><h4 id="org-ql">org-ql</h4>
|
||||
<p><a href="https://github.com/alphapapa/org-ql">org-ql</a> is a package to query the org files. I’m using it in my review workflow and for custom agenda views.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">org-ql</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> (<span style="color:#19177c">org</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/remote-server</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> (<span style="color:#008000">:fetcher</span> <span style="color:#19177c">github</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:repo</span> <span style="color:#ba2121">"alphapapa/org-ql"</span>
|
||||
|
|
@ -3616,6 +3627,11 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>About installing the package on Guix (<strong>CREDIT</strong>: thanks @Ashraz on the SystemCrafters discord)</p>
|
||||
<blockquote>
|
||||
<p>So, for all those interested: unfortunately, org-roam (or rather emacsql-sqlite) cannot compile the sqlite.c and emacsql.c due to missing headers (linux/falloc.h) on Guix. You would have to properly set all the include paths on Guix, and also adjust the PATH to have gcc actually find as later on in the compilation process.</p>
|
||||
<p>Instead, you should remove all Org-Roam related packages from your Emacs installation (via M-x package-delete org-roam RET and M-x package-autoremove RET y RET) and then use the Guix package called emacs-org-roam.</p>
|
||||
</blockquote>
|
||||
<p>References:</p>
|
||||
<ul>
|
||||
<li><a href="https://github.com/org-roam/org-roam/wiki/Hitchhiker%27s-Rough-Guide-to-Org-roam-V2">Hitchhiker’s Rough Guide to Org roam V2</a></li>
|
||||
|
|
@ -3650,16 +3666,16 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span></code></pre></div><h5 id="keybindings-3">Keybindings</h5>
|
||||
<p>A set of keybindings to quickly access things in Org Roam.</p>
|
||||
<p>I used to have multiple categories of nodes in Org Roam (projects, dailies, etc), but as of now, only Zettelkasten remains.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">my-leader-def</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:infix</span> <span style="color:#ba2121">"or"</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">""</span> <span style="color:#666">'</span>(<span style="color:#008000">:which-key</span> <span style="color:#ba2121">"org-roam"</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"i"</span> <span style="color:#19177c">'org-roam-node-insert</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"r"</span> <span style="color:#19177c">'org-roam-node-find</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"g"</span> <span style="color:#19177c">'org-roam-graph</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"c"</span> <span style="color:#19177c">'org-roam-capture</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"b"</span> <span style="color:#19177c">'org-roam-buffer-toggle</span>)
|
||||
</span></span><span style="display:flex;"><span>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'org-roam</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my-leader-def</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:infix</span> <span style="color:#ba2121">"or"</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">""</span> <span style="color:#666">'</span>(<span style="color:#008000">:which-key</span> <span style="color:#ba2121">"org-roam"</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"i"</span> <span style="color:#19177c">'org-roam-node-insert</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"r"</span> <span style="color:#19177c">'org-roam-node-find</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"g"</span> <span style="color:#19177c">'org-roam-graph</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"c"</span> <span style="color:#19177c">'org-roam-capture</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"b"</span> <span style="color:#19177c">'org-roam-buffer-toggle</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-roam-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:states</span> <span style="color:#666">'</span>(<span style="color:#19177c">normal</span>)
|
||||
|
|
@ -3968,14 +3984,15 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:config</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">org-roam-bibtex-mode</span>))
|
||||
</span></span></code></pre></div><h4 id="org-contacts">org-contacts</h4>
|
||||
<p><code>org-contacts</code> is an <code>org-contrib</code> package to store contacts in an org file. The package is somewhat outdated, for instance it uses <code>lexical-let</code>, so I have to <code>(require 'cl)</code>.</p>
|
||||
<p>I think it will take some more work to tune the package exactly to my liking, but it seems to perform the original function just fine.</p>
|
||||
<p><code>org-contacts</code> is the <code>org-contrib</code> package to store contacts in an org file. The package is somewhat outdated, for instance it uses <code>lexical-let</code> so I have to <code>(require 'cl)</code>.</p>
|
||||
<p>I think it will take a little more work to tune the package exactly to my liking, but it seems to serve the original function just fine.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">org-contacts</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> (<span style="color:#008000">:type</span> <span style="color:#19177c">git</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:repo</span> <span style="color:#ba2121">"https://git.sr.ht/~bzg/org-contrib"</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:files</span> (<span style="color:#ba2121">"lisp/org-contacts.el"</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:build</span> (<span style="color:#008000">:not</span> <span style="color:#19177c">compile</span>))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> (<span style="color:#19177c">notmuch</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/remote-server</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:commands</span> (<span style="color:#19177c">org-contacts</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:config</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">require</span> <span style="color:#19177c">'cl</span>)
|
||||
|
|
@ -4034,10 +4051,12 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">sp--remove-local-pair</span> <span style="color:#ba2121">"'"</span>))
|
||||
</span></span></code></pre></div><p>Call the function before opening an org file or reopen a buffer after calling the function.</p>
|
||||
<p>Scale latex fragments preview.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">my/org-latex-scale</span> <span style="color:#666">1.75</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-format-latex-options</span> (<span style="color:#00f">plist-put</span> <span style="color:#19177c">org-format-latex-options</span> <span style="color:#008000">:scale</span> <span style="color:#19177c">my/org-latex-scale</span>))
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">with-eval-after-load-norem</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">my/org-latex-scale</span> <span style="color:#666">1.75</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">org-format-latex-options</span> (<span style="color:#00f">plist-put</span> <span style="color:#19177c">org-format-latex-options</span> <span style="color:#008000">:scale</span> <span style="color:#19177c">my/org-latex-scale</span>)))
|
||||
</span></span></code></pre></div><p>Also, LaTeX fragments preview tends to break whenever the are custom <code>#+LATEX_HEADER</code> entries. To circumvent this, I add a custom header and modify the <code>org-preview-latex-process-alist</code> variable</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">my/latex-preview-header</span> <span style="color:#ba2121">"\\documentclass{article}
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">with-eval-after-load-norem</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">my/latex-preview-header</span> <span style="color:#ba2121">"\\documentclass{article}
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#ba2121">\\usepackage[usenames]{color}
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#ba2121">\\usepackage{graphicx}
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#ba2121">\\usepackage{grffile}
|
||||
|
|
@ -4052,13 +4071,13 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span></span><span style="display:flex;"><span><span style="color:#ba2121">\\usepackage{hyperref}
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#ba2121">\\pagestyle{empty}"</span>)
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">setq</span> <span style="color:#19177c">org-preview-latex-process-alist</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">mapcar</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">lambda</span> (<span style="color:#19177c">item</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">cons</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">car</span> <span style="color:#19177c">item</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">plist-put</span> (<span style="color:#00f">cdr</span> <span style="color:#19177c">item</span>) <span style="color:#008000">:latex-header</span> <span style="color:#19177c">my/latex-preview-header</span>)))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">org-preview-latex-process-alist</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">org-preview-latex-process-alist</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">mapcar</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">lambda</span> (<span style="color:#19177c">item</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">cons</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">car</span> <span style="color:#19177c">item</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">plist-put</span> (<span style="color:#00f">cdr</span> <span style="color:#19177c">item</span>) <span style="color:#008000">:latex-header</span> <span style="color:#19177c">my/latex-preview-header</span>)))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">org-preview-latex-process-alist</span>)))
|
||||
</span></span></code></pre></div><h4 id="better-headers">Better headers</h4>
|
||||
<p><a href="https://github.com/integral-dw/org-superstar-mode">org-superstar-mode</a> is a package that makes Org heading lines look a bit prettier.</p>
|
||||
<p>Disabled it for now because of overlapping functionality with org-bars.</p>
|
||||
|
|
@ -4071,32 +4090,43 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> (<span style="color:#008000">:repo</span> <span style="color:#ba2121">"tonyaldon/org-bars"</span> <span style="color:#008000">:host</span> <span style="color:#19177c">github</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">display-graphic-p</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:hook</span> (<span style="color:#19177c">org-mode</span> <span style="color:#666">.</span> <span style="color:#19177c">org-bars-mode</span>))
|
||||
</span></span></code></pre></div><p>Remove the ellipsis at the end of folded headlines. The ellipsis seems unnecessary with org-bars.</p>
|
||||
</span></span></code></pre></div><p>Remove the ellipsis at the end of folded headlines, as it seems unnecessary with <code>org-bars</code>.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/org-no-ellipsis-in-headlines</span> ()
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">remove-from-invisibility-spec</span> <span style="color:#666">'</span>(<span style="color:#19177c">outline</span> <span style="color:#666">.</span> <span style="color:#800">t</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-invisibility-spec</span> <span style="color:#19177c">'outline</span>))
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">add-hook</span> <span style="color:#19177c">'org-mode-hook</span> <span style="color:#00f">#'</span><span style="color:#19177c">my/org-no-ellipsis-in-headlines</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'org-bars</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-hook</span> <span style="color:#19177c">'org-mode-hook</span> <span style="color:#00f">#'</span><span style="color:#19177c">my/org-no-ellipsis-in-headlines</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">when</span> (<span style="color:#00f">eq</span> <span style="color:#19177c">major-mode</span> <span style="color:#19177c">'org-mode</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/org-no-ellipsis-in-headlines</span>)))
|
||||
</span></span></code></pre></div><h4 id="override-colors">Override colors</h4>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">my/use-doom-colors</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">org-block</span> <span style="color:#008000">:background</span> (<span style="color:#19177c">color-darken-name</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'bg</span>) <span style="color:#666">3</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">org-block-begin-line</span> <span style="color:#008000">:background</span> (<span style="color:#19177c">color-darken-name</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'bg</span>) <span style="color:#666">3</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:foreground</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'grey</span>)))
|
||||
</span></span></code></pre></div><h3 id="export">Export</h3>
|
||||
<h4 id="general-settings-4">General settings</h4>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span><span style="color:#408080;font-style:italic">;; (setq org-export-backends '(md html latex beamer org))</span>
|
||||
</span></span></code></pre></div><h4 id="hugo">Hugo</h4>
|
||||
<h4 id="hugo">Hugo</h4>
|
||||
<p>A package for exporting Org to Hugo. That’s how I manage my <a href="https://sqrtminusone.xyz">sqrtminusone.xyz</a>.</p>
|
||||
<p>References:</p>
|
||||
<ul>
|
||||
<li><a href="https://ox-hugo.scripter.co/">ox-hugo homepage</a></li>
|
||||
<li><a href="https://github.com/SqrtMinusOne/sqrtminusone.github.io">Source code for sqrtminusone.xyz</a></li>
|
||||
</ul>
|
||||
<!--listend-->
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">ox-hugo</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/remote-server</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> <span style="color:#19177c">ox</span>)
|
||||
</span></span></code></pre></div><h4 id="jupyter-notebook">Jupyter Notebook</h4>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">ox-ipynb</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> (<span style="color:#008000">:host</span> <span style="color:#19177c">github</span> <span style="color:#008000">:repo</span> <span style="color:#ba2121">"jkitchin/ox-ipynb"</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/remote-server</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> <span style="color:#19177c">ox</span>)
|
||||
</span></span></code></pre></div><h4 id="html-export">Html export</h4>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">htmlize</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> <span style="color:#19177c">ox</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:if</span> (<span style="color:#19177c">not</span> <span style="color:#19177c">my/remote-server</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:config</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">org-html-htmlize-output-type</span> <span style="color:#19177c">'css</span>))
|
||||
</span></span></code></pre></div><h4 id="latex-1">LaTeX</h4>
|
||||
|
|
@ -4150,52 +4180,53 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#ba2121">"\\subsubsection{%s}"</span> <span style="color:#666">.</span> <span style="color:#ba2121">"\\subsubsection*{%s}"</span>)))))
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span><span style="color:#408080;font-style:italic">;; Make sure to eval the function when org-latex-classes list already exists</span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'ox-latex</span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">with-eval-after-load-norem</span> <span style="color:#19177c">'ox-latex</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/setup-org-latex</span>))
|
||||
</span></span></code></pre></div><h3 id="keybindings-and-stuff">Keybindings & stuff</h3>
|
||||
<h4 id="general-keybindings">General keybindings</h4>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"C-c d"</span> <span style="color:#19177c">'org-decrypt-entry</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"C-c e"</span> <span style="color:#19177c">'org-encrypt-entry</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-p"</span> <span style="color:#19177c">'org-latex-preview</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-o"</span> <span style="color:#19177c">'org-redisplay-inline-images</span>)
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">with-eval-after-load-norem</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"C-c d"</span> <span style="color:#19177c">'org-decrypt-entry</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"C-c e"</span> <span style="color:#19177c">'org-encrypt-entry</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-p"</span> <span style="color:#19177c">'org-latex-preview</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-o"</span> <span style="color:#19177c">'org-redisplay-inline-images</span>)
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:states</span> <span style="color:#666">'</span>(<span style="color:#19177c">normal</span> <span style="color:#19177c">emacs</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"L"</span> <span style="color:#19177c">'org-shiftright</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"H"</span> <span style="color:#19177c">'org-shiftleft</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"S-<next>"</span> <span style="color:#19177c">'org-next-visible-heading</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"S-<prior>"</span> <span style="color:#19177c">'org-previous-visible-heading</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-0"</span> <span style="color:#19177c">'org-next-visible-heading</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-9"</span> <span style="color:#19177c">'org-previous-visible-heading</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-]"</span> <span style="color:#19177c">'org-babel-next-src-block</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-["</span> <span style="color:#19177c">'org-babel-previous-src-block</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:states</span> <span style="color:#666">'</span>(<span style="color:#19177c">normal</span> <span style="color:#19177c">emacs</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"L"</span> <span style="color:#19177c">'org-shiftright</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"H"</span> <span style="color:#19177c">'org-shiftleft</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"S-<next>"</span> <span style="color:#19177c">'org-next-visible-heading</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"S-<prior>"</span> <span style="color:#19177c">'org-previous-visible-heading</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-0"</span> <span style="color:#19177c">'org-next-visible-heading</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-9"</span> <span style="color:#19177c">'org-previous-visible-heading</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-]"</span> <span style="color:#19177c">'org-babel-next-src-block</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-["</span> <span style="color:#19177c">'org-babel-previous-src-block</span>)
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-agenda-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-]"</span> <span style="color:#19177c">'org-agenda-later</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-["</span> <span style="color:#19177c">'org-agenda-earlier</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-agenda-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-]"</span> <span style="color:#19177c">'org-agenda-later</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-["</span> <span style="color:#19177c">'org-agenda-earlier</span>)
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span><span style="color:#408080;font-style:italic">;; (general-imap :keymaps 'org-mode-map "RET" 'evil-org-return)</span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">general-nmap</span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span> <span style="color:#ba2121">"RET"</span> <span style="color:#19177c">'org-ctrl-c-ctrl-c</span>)
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span><span style="color:#408080;font-style:italic">;; (my-leader-def "aa" 'org-agenda)</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">general-nmap</span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span> <span style="color:#ba2121">"RET"</span> <span style="color:#19177c">'org-ctrl-c-ctrl-c</span>))
|
||||
</span></span></code></pre></div><h4 id="copy-a-link">Copy a link</h4>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/org-link-copy</span> (<span style="color:#008000">&optional</span> <span style="color:#19177c">arg</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"Extract URL from org-mode link and add it to kill ring."</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">interactive</span> <span style="color:#ba2121">"P"</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let*</span> ((<span style="color:#19177c">link</span> (<span style="color:#19177c">org-element-lineage</span> (<span style="color:#19177c">org-element-context</span>) <span style="color:#666">'</span>(<span style="color:#19177c">link</span>) <span style="color:#800">t</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">type</span> (<span style="color:#19177c">org-element-property</span> <span style="color:#008000">:type</span> <span style="color:#19177c">link</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">url</span> (<span style="color:#19177c">org-element-property</span> <span style="color:#008000">:path</span> <span style="color:#19177c">link</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">url</span> (<span style="color:#00f">concat</span> <span style="color:#19177c">type</span> <span style="color:#ba2121">":"</span> <span style="color:#19177c">url</span>)))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">type</span> (<span style="color:#19177c">org-element-property</span> <span style="color:#008000">:type</span> <span style="color:#19177c">link</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">url</span> (<span style="color:#19177c">org-element-property</span> <span style="color:#008000">:path</span> <span style="color:#19177c">link</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">url</span> (<span style="color:#00f">concat</span> <span style="color:#19177c">type</span> <span style="color:#ba2121">":"</span> <span style="color:#19177c">url</span>)))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">kill-new</span> <span style="color:#19177c">url</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">message</span> (<span style="color:#00f">concat</span> <span style="color:#ba2121">"Copied URL: "</span> <span style="color:#19177c">url</span>))))
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">general-nmap</span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"C-x C-l"</span> <span style="color:#19177c">'my/org-link-copy</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">with-eval-after-load-norem</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">general-nmap</span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"C-x C-l"</span> <span style="color:#19177c">'my/org-link-copy</span>))
|
||||
</span></span></code></pre></div><h4 id="navigating-source-blocks">Navigating source blocks</h4>
|
||||
<p>An idea born from discussing Org Mode navigation with @Infu.</p>
|
||||
<p>Modifying <code>org-babel-next-src-block</code> and <code>org-babel-previous-src-block</code> to ignore hidden source blocks.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/org-babel-next-visible-src-block</span> (<span style="color:#19177c">arg</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"Move to the next visible source block.
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#ba2121">
|
||||
|
|
@ -4230,11 +4261,12 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">interactive</span> <span style="color:#ba2121">"p"</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/org-babel-next-visible-src-block</span> (<span style="color:#00f">-</span> <span style="color:#19177c">arg</span>)))
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:states</span> <span style="color:#666">'</span>(<span style="color:#19177c">normal</span> <span style="color:#19177c">emacs</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-]"</span> <span style="color:#00f">#'</span><span style="color:#19177c">my/org-babel-next-visible-src-block</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-["</span> <span style="color:#00f">#'</span><span style="color:#19177c">my/org-babel-previous-visible-src-block</span>)
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">with-eval-after-load</span> <span style="color:#19177c">'org</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">general-define-key</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#19177c">'org-mode-map</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:states</span> <span style="color:#666">'</span>(<span style="color:#19177c">normal</span> <span style="color:#19177c">emacs</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-]"</span> <span style="color:#00f">#'</span><span style="color:#19177c">my/org-babel-next-visible-src-block</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">"M-["</span> <span style="color:#00f">#'</span><span style="color:#19177c">my/org-babel-previous-visible-src-block</span>))
|
||||
</span></span></code></pre></div><h4 id="open-a-file-from-org-directory">Open a file from <code>org-directory</code></h4>
|
||||
<p>A function to open a file from <code>org-directory</code>, excluding a few directories like <code>roam</code> and <code>journal</code>.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/org-file-open</span> ()
|
||||
|
|
@ -4245,7 +4277,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">lambda</span> (<span style="color:#19177c">f</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">and</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">string-match-p</span> (<span style="color:#008000">rx</span> (<span style="color:#00f">*</span> <span style="color:#19177c">nonl</span>) <span style="color:#ba2121">".org"</span> <span style="color:#19177c">eos</span>) <span style="color:#19177c">f</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">not</span> (<span style="color:#19177c">string-match-p</span> (<span style="color:#008000">rx</span> (<span style="color:#19177c">|</span> <span style="color:#ba2121">"journal"</span> <span style="color:#ba2121">"roam"</span> <span style="color:#ba2121">"review"</span> <span style="color:#ba2121">"archive"</span>)) <span style="color:#19177c">f</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">not</span> (<span style="color:#19177c">string-match-p</span> (<span style="color:#008000">rx</span> (<span style="color:#19177c">|</span> <span style="color:#ba2121">"journal"</span> <span style="color:#ba2121">"roam"</span> <span style="color:#ba2121">"review"</span> <span style="color:#ba2121">"archive"</span> <span style="color:#ba2121">"figured-out"</span>)) <span style="color:#19177c">f</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">projectile-current-project-files</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">find-file</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">concat</span> <span style="color:#19177c">org-directory</span> <span style="color:#ba2121">"/"</span> (<span style="color:#00f">completing-read</span> <span style="color:#ba2121">"Org file: "</span> <span style="color:#19177c">project-files</span>)))))
|
||||
|
|
@ -4899,7 +4931,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</span></span></code></pre></div><h3 id="elfeed">Elfeed</h3>
|
||||
<p><a href="https://github.com/skeeto/elfeed">elfeed</a> is one of the most popular Emacs packages, and it’s also one in which I ended up investing a lot of effort.</p>
|
||||
<p>There’s a lot of stuff in this section, so it’s here and not in “Internet and Multimedia”.</p>
|
||||
<h4 id="general-settings-5">General settings</h4>
|
||||
<h4 id="general-settings-4">General settings</h4>
|
||||
<p>The advice there sets <code>shr-use-fonts</code> to nil while rendering HTML, so the <code>elfeed-show</code> buffer will use monospace font.</p>
|
||||
<p>Using my own fork until the modifications are merged into master.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">elfeed</span>
|
||||
|
|
@ -6478,9 +6510,10 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
<ul>
|
||||
<li><a href="#encryption">Encryption</a></li>
|
||||
<li><a href="#org-contrib">org-contrib</a></li>
|
||||
<li><a href="#org-tempo">org-tempo</a></li>
|
||||
<li><a href="#evil-org">evil-org</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#integration-with-evil">Integration with evil</a></li>
|
||||
<li><a href="#literate-programing">Literate programing</a>
|
||||
<ul>
|
||||
<li><a href="#python-and-jupyter">Python & Jupyter</a></li>
|
||||
|
|
@ -6528,7 +6561,6 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</li>
|
||||
<li><a href="#export">Export</a>
|
||||
<ul>
|
||||
<li><a href="#general-settings-4">General settings</a></li>
|
||||
<li><a href="#hugo">Hugo</a></li>
|
||||
<li><a href="#jupyter-notebook">Jupyter Notebook</a></li>
|
||||
<li><a href="#html-export">Html export</a></li>
|
||||
|
|
@ -6578,7 +6610,7 @@ Emacs is also particularly good at writing Lisp code, e.g. Clojure, Common Lisp,
|
|||
</li>
|
||||
<li><a href="#elfeed">Elfeed</a>
|
||||
<ul>
|
||||
<li><a href="#general-settings-5">General settings</a></li>
|
||||
<li><a href="#general-settings-4">General settings</a></li>
|
||||
<li><a href="#some-additions">Some additions</a></li>
|
||||
<li><a href="#custom-faces">Custom faces</a></li>
|
||||
<li><a href="#elfeed-summary">elfeed-summary</a></li>
|
||||
|
|
|
|||
BIN
stats/all.png
BIN
stats/all.png
Binary file not shown.
|
Before Width: | Height: | Size: 121 KiB After Width: | Height: | Size: 121 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
Loading…
Add table
Reference in a new issue