<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Emacs for All</title><link>https://emacsforall.com/</link><description>Recent content on Emacs for All</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><managingEditor>Jonathan Chu</managingEditor><webMaster>Jonathan Chu</webMaster><lastBuildDate>Sun, 08 Feb 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://emacsforall.com/index.xml" rel="self" type="application/rss+xml"/><item><title>The 10 Packages Every New Emacs User Should Install</title><link>https://emacsforall.com/posts/10-packages-every-new-emacs-user-should-install/</link><pubDate>Sun, 08 Feb 2026 00:00:00 +0000</pubDate><author>Jonathan Chu</author><guid>https://emacsforall.com/posts/10-packages-every-new-emacs-user-should-install/</guid><description>&lt;p&gt;The Emacs package ecosystem is vast — MELPA alone has over 5,000 packages. That&amp;rsquo;s exciting but also overwhelming. Here are the 10 packages that give you the most value for the least configuration.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/dQw4w9WxXcQ?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;h2 id="vertico"&gt;1. Vertico&lt;/h2&gt;
&lt;p&gt;Modern, minimal vertical completion UI. Replaces the default minibuffer completion with something you&amp;rsquo;d actually want to use.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package vertico
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :init (vertico-mode))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="consult"&gt;2. Consult&lt;/h2&gt;
&lt;p&gt;Search and navigation commands that integrate with Vertico. &lt;code&gt;consult-ripgrep&lt;/code&gt;, &lt;code&gt;consult-line&lt;/code&gt;, and &lt;code&gt;consult-buffer&lt;/code&gt; will change how you navigate code.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package consult
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :bind ((&lt;span style="color:#e6db74"&gt;&amp;#34;C-s&amp;#34;&lt;/span&gt; &lt;span style="color:#f92672"&gt;.&lt;/span&gt; consult-line)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; (&lt;span style="color:#e6db74"&gt;&amp;#34;C-x b&amp;#34;&lt;/span&gt; &lt;span style="color:#f92672"&gt;.&lt;/span&gt; consult-buffer)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; (&lt;span style="color:#e6db74"&gt;&amp;#34;M-g g&amp;#34;&lt;/span&gt; &lt;span style="color:#f92672"&gt;.&lt;/span&gt; consult-goto-line)))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="marginalia"&gt;3. Marginalia&lt;/h2&gt;
&lt;p&gt;Adds helpful annotations next to completion candidates — file sizes, docstrings, keybindings.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package marginalia
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :init (marginalia-mode))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="orderless"&gt;4. Orderless&lt;/h2&gt;
&lt;p&gt;Flexible completion matching. Type any part of what you&amp;rsquo;re looking for in any order.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package orderless
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :custom (completion-styles &lt;span style="color:#f92672"&gt;&amp;#39;&lt;/span&gt;(orderless basic)))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="magit"&gt;5. Magit&lt;/h2&gt;
&lt;p&gt;The best Git interface ever made. Not an exaggeration. Once you use Magit, you&amp;rsquo;ll never want to go back to the command line for Git.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package magit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :bind (&lt;span style="color:#e6db74"&gt;&amp;#34;C-x g&amp;#34;&lt;/span&gt; &lt;span style="color:#f92672"&gt;.&lt;/span&gt; magit-status))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="org-mode"&gt;6. Org-mode&lt;/h2&gt;
&lt;p&gt;Technically built-in, but worth mentioning because it&amp;rsquo;s often why people come to Emacs in the first place. Notes, tasks, literate programming, and more.&lt;/p&gt;
&lt;h2 id="which-key"&gt;7. Which-key&lt;/h2&gt;
&lt;p&gt;Shows available keybindings in a popup. Essential for discoverability when you&amp;rsquo;re learning.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package which-key
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :init (which-key-mode))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="corfu"&gt;8. Corfu&lt;/h2&gt;
&lt;p&gt;In-buffer completion popup. Fast, minimal, works with Eglot&amp;rsquo;s LSP completions out of the box.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package corfu
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :init (global-corfu-mode))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="eglot"&gt;9. Eglot&lt;/h2&gt;
&lt;p&gt;Built-in LSP client (since Emacs 29). Minimal configuration, just install a language server and go.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Eglot is built-in, just hook it up&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(add-hook &lt;span style="color:#e6db74"&gt;&amp;#39;python-mode-hook&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;#&amp;#39;&lt;/span&gt;eglot-ensure)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(add-hook &lt;span style="color:#e6db74"&gt;&amp;#39;js-mode-hook&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;#&amp;#39;&lt;/span&gt;eglot-ensure)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(add-hook &lt;span style="color:#e6db74"&gt;&amp;#39;rust-mode-hook&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;#&amp;#39;&lt;/span&gt;eglot-ensure)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="doom-themes"&gt;10. Doom Themes&lt;/h2&gt;
&lt;p&gt;Even if you don&amp;rsquo;t use Doom Emacs, the theme collection is excellent. &lt;code&gt;doom-one&lt;/code&gt; and &lt;code&gt;doom-gruvbox&lt;/code&gt; are crowd favorites.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package doom-themes
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :config
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; (load-theme &lt;span style="color:#e6db74"&gt;&amp;#39;doom-one&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="putting-it-all-together"&gt;Putting It All Together&lt;/h2&gt;
&lt;p&gt;All of these packages work together harmoniously. Vertico + Consult + Marginalia + Orderless form a completion framework that rivals anything in VS Code, and Magit + Org-mode are the power tools that keep experienced users on Emacs for decades.&lt;/p&gt;</description></item><item><title>Your First Hour in Emacs — Skip the Tutorial, Do This Instead</title><link>https://emacsforall.com/posts/your-first-hour-in-emacs/</link><pubDate>Sat, 07 Feb 2026 00:00:00 +0000</pubDate><author>Jonathan Chu</author><guid>https://emacsforall.com/posts/your-first-hour-in-emacs/</guid><description>&lt;p&gt;Most Emacs tutorials start the same way: &amp;ldquo;Run the built-in tutorial with &lt;code&gt;C-h t&lt;/code&gt;.&amp;rdquo; We&amp;rsquo;re going to skip that entirely. Instead, let&amp;rsquo;s get you productive in Emacs in under an hour with a modern setup.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/dQw4w9WxXcQ?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;h2 id="install-emacs-29-plus"&gt;Install Emacs 29+&lt;/h2&gt;
&lt;p&gt;Make sure you&amp;rsquo;re running Emacs 29 or later — it includes tree-sitter support, &lt;code&gt;eglot&lt;/code&gt; for LSP, and a much better default experience.&lt;/p&gt;
&lt;p&gt;On macOS:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;brew install emacs-plus@30 --with-native-comp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;On Fedora:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo dnf install emacs
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;On Ubuntu:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo snap install emacs --classic
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="the-first-5-things-to-configure"&gt;The First 5 Things to Configure&lt;/h2&gt;
&lt;p&gt;Create &lt;code&gt;~/.emacs.d/init.el&lt;/code&gt; (or &lt;code&gt;~/.config/emacs/init.el&lt;/code&gt;) and add:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Clean up the UI&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(menu-bar-mode &lt;span style="color:#ae81ff"&gt;-1&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(tool-bar-mode &lt;span style="color:#ae81ff"&gt;-1&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(scroll-bar-mode &lt;span style="color:#ae81ff"&gt;-1&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(setq inhibit-startup-message &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Line numbers in programming modes&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(add-hook &lt;span style="color:#e6db74"&gt;&amp;#39;prog-mode-hook&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;#&amp;#39;&lt;/span&gt;display-line-numbers-mode)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Remember recent files&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(recentf-mode &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Save your place in files&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(save-place-mode &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Don&amp;#39;t litter the filesystem with backup files&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(setq backup-directory-alist &lt;span style="color:#f92672"&gt;&amp;#39;&lt;/span&gt;((&lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt; &lt;span style="color:#f92672"&gt;.&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;~/.emacs.d/backups&amp;#34;&lt;/span&gt;)))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="install-your-first-packages"&gt;Install Your First Packages&lt;/h2&gt;
&lt;p&gt;Set up &lt;code&gt;use-package&lt;/code&gt; (built-in since Emacs 29) and install the essentials:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-emacs-lisp" data-lang="emacs-lisp"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Set up package archives&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(require &lt;span style="color:#e6db74"&gt;&amp;#39;package&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(add-to-list &lt;span style="color:#e6db74"&gt;&amp;#39;package-archives&lt;/span&gt; &lt;span style="color:#f92672"&gt;&amp;#39;&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;melpa&amp;#34;&lt;/span&gt; &lt;span style="color:#f92672"&gt;.&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;https://melpa.org/packages/&amp;#34;&lt;/span&gt;) &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Vertico — better minibuffer completion&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package vertico
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :init (vertico-mode))
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Marginalia — helpful annotations in the minibuffer&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package marginalia
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :init (marginalia-mode))
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;;; Magit — the best Git interface&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(use-package magit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :ensure &lt;span style="color:#66d9ef"&gt;t&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; :bind (&lt;span style="color:#e6db74"&gt;&amp;#34;C-x g&amp;#34;&lt;/span&gt; &lt;span style="color:#f92672"&gt;.&lt;/span&gt; magit-status))
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="what-s-next"&gt;What&amp;rsquo;s Next?&lt;/h2&gt;
&lt;p&gt;You now have a clean, modern Emacs with completion, Git integration, and a solid foundation. In the next article, we&amp;rsquo;ll cover the 10 packages every new Emacs user should install.&lt;/p&gt;</description></item><item><title>About</title><link>https://emacsforall.com/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>Jonathan Chu</author><guid>https://emacsforall.com/about/</guid><description>&lt;h2 id="why-emacs-for-all"&gt;Why Emacs for All?&lt;/h2&gt;
&lt;p&gt;Emacs is one of the most powerful and extensible tools ever created, with an active community of hundreds of thousands of users and decades of accumulated wisdom. Yet for something so capable, the learning resources are strangely fragmented — scattered across outdated wiki pages, decade-old blog posts, and dense manual pages that assume you already know what you&amp;rsquo;re looking for.&lt;/p&gt;
&lt;p&gt;We believe Emacs deserves better onboarding. The editor has quietly modernized — with tree-sitter, native compilation, LSP integration, and a thriving package ecosystem — but the story hasn&amp;rsquo;t caught up. People still think Emacs is a relic. We&amp;rsquo;re here to change that.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;emacsforall.com&lt;/strong&gt; exists to be the resource we wish existed when we started: clear, modern, and welcoming. Free tutorials, real-world workflows, honest guidance on where Emacs shines and where it struggles, and a community that meets people where they are — whether they&amp;rsquo;re migrating from VS Code, curious about org-mode, or ready to build their own editing environment from scratch.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;No gatekeeping. No &amp;ldquo;read the manual.&amp;rdquo; Just practical paths into one of the most rewarding tools you&amp;rsquo;ll ever learn.&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="what-youll-find-here"&gt;What You&amp;rsquo;ll Find Here&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Written tutorials&lt;/strong&gt; — Companion content to our YouTube videos, with full code snippets you can copy into your config&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Video guides&lt;/strong&gt; — Practical, modern Emacs tutorials on &lt;a href="https://youtube.com/@emacsforall"&gt;our YouTube channel&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Curated package lists&lt;/strong&gt; — Honest recommendations for the packages that actually matter&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Real-world workflows&lt;/strong&gt; — How people use Emacs day-to-day for development, writing, and project management&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="whos-behind-this"&gt;Who&amp;rsquo;s Behind This?&lt;/h2&gt;
&lt;p&gt;Hi, I&amp;rsquo;m &lt;a href="https://github.com/emacsforall"&gt;Jonathan Chu&lt;/a&gt;. I&amp;rsquo;ve been using Emacs for over a decade and believe it&amp;rsquo;s one of the most rewarding tools a developer can learn — if you have the right guide. That&amp;rsquo;s what this project is about.&lt;/p&gt;
&lt;h2 id="get-in-touch"&gt;Get in Touch&lt;/h2&gt;
&lt;p&gt;The best way to connect is through the comments on our &lt;a href="https://youtube.com/@emacsforall"&gt;YouTube channel&lt;/a&gt; or by opening an issue on &lt;a href="https://github.com/emacsforall"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Archives</title><link>https://emacsforall.com/archives/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>Jonathan Chu</author><guid>https://emacsforall.com/archives/</guid><description/></item><item><title>Search</title><link>https://emacsforall.com/search/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>Jonathan Chu</author><guid>https://emacsforall.com/search/</guid><description/></item></channel></rss>