This commit is contained in:
SqrtMinusOne 2023-08-15 16:07:40 +00:00
parent 5b6e4567a7
commit 9d843a5936
5 changed files with 60 additions and 50 deletions

View file

@ -561,26 +561,27 @@
<p>For EXWM windows, the <code>perspective-exwm</code> package provides a function called <code>perspective-exwm-assign-window</code>, which is intended to be used in <code>exwm-manage-finish-hook</code>, for instance:</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/exwm-configure-window</span> ()
</span></span><span style="display:flex;"><span> (<span style="color:#008000">interactive</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#008000">pcase</span> <span style="color:#19177c">exwm-class-name</span>
</span></span><span style="display:flex;"><span> ((<span style="color:#008000">or</span> <span style="color:#ba2121">&#34;Firefox&#34;</span> <span style="color:#ba2121">&#34;Nightly&#34;</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:workspace-index</span> <span style="color:#666">2</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;browser&#34;</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#ba2121">&#34;Nyxt&#34;</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:workspace-index</span> <span style="color:#666">2</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;browser&#34;</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#ba2121">&#34;Alacritty&#34;</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;term&#34;</span>))
</span></span><span style="display:flex;"><span> ((<span style="color:#008000">or</span> <span style="color:#ba2121">&#34;VK&#34;</span> <span style="color:#ba2121">&#34;Slack&#34;</span> <span style="color:#ba2121">&#34;discord&#34;</span> <span style="color:#ba2121">&#34;TelegramDesktop&#34;</span> <span style="color:#ba2121">&#34;Rocket.Chat&#34;</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:workspace-index</span> <span style="color:#666">3</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;comms&#34;</span>))
</span></span><span style="display:flex;"><span> ((<span style="color:#008000">or</span> <span style="color:#ba2121">&#34;Chromium-browser&#34;</span> <span style="color:#ba2121">&#34;jetbrains-datagrip&#34;</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:workspace-index</span> <span style="color:#666">4</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;dev&#34;</span>))))
</span></span><span style="display:flex;"><span> (<span style="color:#008000">unless</span> <span style="color:#19177c">exwm--floating-frame</span>
</span></span><span style="display:flex;"><span> (<span style="color:#008000">pcase</span> <span style="color:#19177c">exwm-class-name</span>
</span></span><span style="display:flex;"><span> ((<span style="color:#008000">or</span> <span style="color:#ba2121">&#34;Firefox&#34;</span> <span style="color:#ba2121">&#34;Nightly&#34;</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:workspace-index</span> <span style="color:#666">2</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;browser&#34;</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#ba2121">&#34;Nyxt&#34;</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:workspace-index</span> <span style="color:#666">2</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;browser&#34;</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#ba2121">&#34;Alacritty&#34;</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;term&#34;</span>))
</span></span><span style="display:flex;"><span> ((<span style="color:#008000">or</span> <span style="color:#ba2121">&#34;VK&#34;</span> <span style="color:#ba2121">&#34;Slack&#34;</span> <span style="color:#ba2121">&#34;discord&#34;</span> <span style="color:#ba2121">&#34;TelegramDesktop&#34;</span> <span style="color:#ba2121">&#34;Rocket.Chat&#34;</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:workspace-index</span> <span style="color:#666">3</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;comms&#34;</span>))
</span></span><span style="display:flex;"><span> ((<span style="color:#008000">or</span> <span style="color:#ba2121">&#34;Chromium-browser&#34;</span> <span style="color:#ba2121">&#34;jetbrains-datagrip&#34;</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">perspective-exwm-assign-window</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:workspace-index</span> <span style="color:#666">4</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:persp-name</span> <span style="color:#ba2121">&#34;dev&#34;</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">&#39;exwm-manage-finish-hook</span> <span style="color:#00f">#&#39;</span><span style="color:#19177c">my/exwm-configure-window</span>)
</span></span></code></pre></div><h3 id="workspaces-and-multi-monitor-setup">Workspaces and multi-monitor setup</h3>

View file

@ -939,13 +939,13 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">&#34;M&#34;</span> <span style="color:#19177c">&#39;magit-file-dispatch</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">magit-blame-styles</span>
</span></span><span style="display:flex;"><span> <span style="color:#666">&#39;</span>((<span style="color:#19177c">headings</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">heading-format</span> <span style="color:#666">.</span> <span style="color:#ba2121">&#34;%-20a %C %s\n&#34;</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">highlight</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">highlight-face</span> <span style="color:#666">.</span> <span style="color:#19177c">magit-blame-highlight</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">lines</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">show-lines</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">show-message</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)))))
</span></span><span style="display:flex;"><span> <span style="color:#666">&#39;</span>((<span style="color:#19177c">headings</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">heading-format</span> <span style="color:#666">.</span> <span style="color:#ba2121">&#34;%-20a %C %s\n&#34;</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">highlight</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">highlight-face</span> <span style="color:#666">.</span> <span style="color:#19177c">magit-blame-highlight</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">lines</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">show-lines</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">show-message</span> <span style="color:#666">.</span> <span style="color:#800">t</span>)))))
</span></span></code></pre></div><p><a href="https://github.com/magit/forge">forge</a> provides integration with forges, such as GitHub and GitLab.</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">forge</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:after</span> <span style="color:#19177c">magit</span>
@ -1477,7 +1477,9 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">tab-bar-tab</span> <span style="color:#008000">:background</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;bg</span>)
</span></span><span style="display:flex;"><span> <span style="color:#008000">:foreground</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;yellow</span>)
</span></span><span style="display:flex;"><span> <span style="color:#008000">:underline</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;yellow</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">tab-bar</span> <span style="color:#008000">:background</span> <span style="color:#800">nil</span> <span style="color:#008000">:foreground</span> <span style="color:#800">nil</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">tab-bar</span> <span style="color:#008000">:background</span> <span style="color:#800">nil</span> <span style="color:#008000">:foreground</span> <span style="color:#800">nil</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">magit-section-secondary-heading</span> <span style="color:#008000">:foreground</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;blue</span>)
</span></span><span style="display:flex;"><span> <span style="color:#008000">:weight</span> <span style="color:#19177c">&#39;bold</span>))
</span></span></code></pre></div><h5 id="switch-theme">Switch theme</h5>
<p>The built-in <code>load-theme</code> does not deactivate the previous theme, so here&rsquo;s a function that does that:</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/switch-theme</span> (<span style="color:#19177c">theme</span>)
@ -1551,12 +1553,19 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
<!--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">when</span> (<span style="color:#19177c">display-graphic-p</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> (<span style="color:#00f">x-list-fonts</span> <span style="color:#ba2121">&#34;JetBrainsMono Nerd Font&#34;</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">set-frame-font</span> <span style="color:#ba2121">&#34;JetBrainsMono Nerd Font 10&#34;</span> <span style="color:#800">nil</span> <span style="color:#800">t</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let</span> ((<span style="color:#19177c">font</span> <span style="color:#ba2121">&#34;-JB -JetBrainsMono Nerd Font-medium-normal-normal-*-17-*-*-*-m-0-iso10646-1&#34;</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">set-frame-font</span> <span style="color:#19177c">font</span> <span style="color:#800">nil</span> <span style="color:#800">t</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-to-list</span> <span style="color:#19177c">&#39;default-frame-alist</span> <span style="color:#666">`</span>(<span style="color:#19177c">font</span> <span style="color:#666">.</span> <span style="color:#666">,</span><span style="color:#19177c">font</span>)))
</span></span><span style="display:flex;"><span> (<span style="color:#00f">message</span> <span style="color:#ba2121">&#34;Install JetBrainsMono Nerd Font!&#34;</span>)))
</span></span></code></pre></div><p>To make the icons work (e.g. in the Doom Modeline), run <code>M-x all-the-icons-install-fonts</code>. The package definition is somewhere later in the config.</p>
<h4 id="other-fonts">Other fonts</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">when</span> (<span style="color:#19177c">display-graphic-p</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">set-face-attribute</span> <span style="color:#19177c">&#39;variable-pitch</span> <span style="color:#800">nil</span> <span style="color:#008000">:family</span> <span style="color:#ba2121">&#34;Cantarell&#34;</span> <span style="color:#008000">:height</span> <span style="color:#666">1.0</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">set-face-attribute</span> <span style="color:#19177c">&#39;variable-pitch</span> <span style="color:#800">nil</span> <span style="color:#008000">:family</span> <span style="color:#ba2121">&#34;Cantarell&#34;</span> <span style="color:#008000">:height</span> <span style="color:#666">1.0</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">set-face-attribute</span>
</span></span><span style="display:flex;"><span> <span style="color:#19177c">&#39;italic</span> <span style="color:#800">nil</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:family</span> <span style="color:#ba2121">&#34;JetBrainsMono Nerd Font&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:weight</span> <span style="color:#19177c">&#39;regular</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:slant</span> <span style="color:#19177c">&#39;italic</span>))
</span></span></code></pre></div><h4 id="ligatures">Ligatures</h4>
<p>Ligature setup for the JetBrainsMono font.</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">ligature</span>
@ -3161,6 +3170,7 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
</span></span></code></pre></div><h4 id="csv">CSV</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">csv-mode</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">:disabled</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:mode</span> <span style="color:#ba2121">&#34;\\.csv\\&#39;&#34;</span>)
</span></span></code></pre></div><h4 id="yaml">YAML</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">yaml-mode</span>
@ -4107,8 +4117,11 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
</span></span><span style="display:flex;"><span> (<span style="color:#008000">when</span> (<span style="color:#19177c">timerp</span> <span style="color:#19177c">my/org-alert--timer</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">cancel-timer</span> <span style="color:#19177c">my/org-alert--timer</span>))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/org-alert-cleanup</span>)))
</span></span></code></pre></div><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">&#39;org</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/org-alert-mode</span>))
</span></span></code></pre></div><p>I don&rsquo;t have any idea why, but evaluating <code>(my/org-alert-mode)</code> just after <code>org</code> breaks font-lock after I try to open <code>inbox.org</code>. <code>emacs-startup-hook</code>, however, works 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">with-eval-after-load</span> <span style="color:#19177c">&#39;org</span>
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> <span style="color:#19177c">my/emacs-started</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/org-alert-mode</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">add-hook</span> <span style="color:#19177c">&#39;emacs-startup-hook</span> <span style="color:#00f">#&#39;</span><span style="color:#19177c">my/org-alert-mode</span>)))
</span></span></code></pre></div><h5 id="other-settings">Other settings</h5>
<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>
@ -6008,21 +6021,6 @@ Didn&rsquo;t work out as I expected, so I&rsquo;ve made <code>org-journal-tags</
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">emacs</span> <span style="color:#19177c">elfeed-emacs-entry</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">blogs</span> <span style="color:#19177c">elfeed-blogs-entry</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">unread</span> <span style="color:#19177c">elfeed-search-unread-title-face</span>))))
</span></span></code></pre></div><p>Also, a function to automatically adjust these colors with the Doom theme.</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/update-my-theme-elfeed</span> (<span style="color:#008000">&amp;rest</span> <span style="color:#19177c">_</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">custom-theme-set-faces</span>
</span></span><span style="display:flex;"><span> <span style="color:#19177c">&#39;my-theme-1</span>
</span></span><span style="display:flex;"><span> <span style="color:#666">`</span>(<span style="color:#19177c">elfeed-videos-entry</span> ((<span style="color:#800">t</span> <span style="color:#008000">:foreground</span> <span style="color:#666">,</span>(<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;red</span>))))
</span></span><span style="display:flex;"><span> <span style="color:#666">`</span>(<span style="color:#19177c">elfeed-twitter-entry</span> ((<span style="color:#800">t</span> <span style="color:#008000">:foreground</span> <span style="color:#666">,</span>(<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;blue</span>))))
</span></span><span style="display:flex;"><span> <span style="color:#666">`</span>(<span style="color:#19177c">elfeed-emacs-entry</span> ((<span style="color:#800">t</span> <span style="color:#008000">:foreground</span> <span style="color:#666">,</span>(<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;magenta</span>))))
</span></span><span style="display:flex;"><span> <span style="color:#666">`</span>(<span style="color:#19177c">elfeed-music-entry</span> ((<span style="color:#800">t</span> <span style="color:#008000">:foreground</span> <span style="color:#666">,</span>(<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;green</span>))))
</span></span><span style="display:flex;"><span> <span style="color:#666">`</span>(<span style="color:#19177c">elfeed-podcasts-entry</span> ((<span style="color:#800">t</span> <span style="color:#008000">:foreground</span> <span style="color:#666">,</span>(<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;yellow</span>))))
</span></span><span style="display:flex;"><span> <span style="color:#666">`</span>(<span style="color:#19177c">elfeed-blogs-entry</span> ((<span style="color:#800">t</span> <span style="color:#008000">:foreground</span> <span style="color:#666">,</span>(<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">&#39;orange</span>)))))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">enable-theme</span> <span style="color:#19177c">&#39;my-theme-1</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">&#39;load-theme</span> <span style="color:#008000">:after</span> <span style="color:#00f">#&#39;</span><span style="color:#19177c">my/update-my-theme-elfeed</span>)
</span></span><span style="display:flex;"><span>(<span style="color:#008000">when</span> (<span style="color:#00f">fboundp</span> <span style="color:#19177c">&#39;doom-color</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/update-my-theme-elfeed</span>))
</span></span></code></pre></div><h4 id="elfeed-summary">elfeed-summary</h4>
<p><a href="https://github.com/SqrtMinusOne/elfeed-summary">elfeed-summary</a> is my package that provides a feed summary interface for elfeed.</p>
<p>The default interface of elfeed is just a list of all entries, so it gets hard to navigate when there are a lot of sources with varying frequencies of posts. This is my attempt to address this issue.</p>
@ -6058,6 +6056,17 @@ Didn&rsquo;t work out as I expected, so I&rsquo;ve made <code>org-journal-tags</
</span></span></code></pre></div><p>Second, a function that returns a URL to an enclosure. This is generally how podcasts are distributed.</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/get-enclosures-url</span> (<span style="color:#19177c">entry</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">caar</span> (<span style="color:#19177c">elfeed-entry-enclosures</span> <span style="color:#19177c">entry</span>)))
</span></span></code></pre></div><p>And a package called <a href="https://github.com/karthink/elfeed-tube">elfeed-tube</a> to fetch some additional data from YouTUbe.</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-tube</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">elfeed</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">elfeed-tube-auto-fetch-p</span> <span style="color:#800">nil</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">elfeed-tube-setup</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">:states</span> <span style="color:#19177c">&#39;normal</span>
</span></span><span style="display:flex;"><span> <span style="color:#008000">:keymaps</span> <span style="color:#666">&#39;</span>(<span style="color:#19177c">elfeed-search-mode-map</span> <span style="color:#19177c">elfeed-show-mode-map</span>)
</span></span><span style="display:flex;"><span> <span style="color:#ba2121">&#34;gf&#34;</span> <span style="color:#00f">#&#39;</span><span style="color:#19177c">elfeed-tube-fetch</span>))
</span></span></code></pre></div><p>Now, a function to add a YouTube link with metadata from elfeed to EMMS.</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">&#39;emms</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">define-emms-source</span> <span style="color:#19177c">elfeed</span> (<span style="color:#19177c">entry</span>)
@ -7706,7 +7715,7 @@ Didn&rsquo;t work out as I expected, so I&rsquo;ve made <code>org-journal-tags</
</thead>
<tbody>
<tr>
<td>tdlib-1.8.14</td>
<td>tdlib-1.8.15</td>
</tr>
<tr>
<td>font-gnu-unifont</td>
@ -7749,7 +7758,7 @@ Didn&rsquo;t work out as I expected, so I&rsquo;ve made <code>org-journal-tags</
</span></span><span style="display:flex;"><span> (<span style="color:#008000">interactive</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">telega-server-libs-prefix</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">string-trim</span>
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">shell-command-to-string</span> <span style="color:#ba2121">&#34;guix build tdlib-1.8.14&#34;</span>)))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">shell-command-to-string</span> <span style="color:#ba2121">&#34;guix build tdlib-1.8.15&#34;</span>)))
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">telega-server-build</span> <span style="color:#ba2121">&#34;CC=gcc&#34;</span>))
</span></span></code></pre></div><p>Setting up the modeline. The default mode string doesn&rsquo;t look great with my other modeline modules, so I override that.</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">&#39;telega-load-hook</span> <span style="color:#00f">#&#39;</span><span style="color:#19177c">telega-mode-line-mode</span>)
@ -8427,7 +8436,7 @@ I&rsquo;ve seen a couple of cases where people would swap their username and ema
<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">when</span> (<span style="color:#00f">fboundp</span> <span style="color:#00f">#&#39;</span><span style="color:#19177c">my/format-guix-dependencies</span>)
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/format-guix-dependencies</span>))
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-scheme" data-lang="scheme"><span style="display:flex;"><span>(<span style="color:#00f">specifications-&gt;manifest</span>
</span></span><span style="display:flex;"><span> <span style="color:#666">&#39;</span>(<span style="color:#ba2121">&#34;emacs&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#666">&#39;</span>(<span style="color:#ba2121">&#34;emacs-next-tree-sitter&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#19177c">&lt;&lt;packages</span>()<span style="color:#19177c">&gt;&gt;</span>))
</span></span></code></pre></div>
</div>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB