<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Lisp on Clément Joly – Open-Source, Rust &amp; SQLite</title><link>https://joly.pw/tags/lisp/</link><description>Recent content in Lisp on Clément Joly – Open-Source, Rust &amp; SQLite</description><image><title>Clément Joly – Open-Source, Rust &amp; SQLite</title><url>https://joly.pw/images/open-graph-home-original.png</url><link>https://joly.pw/images/open-graph-home-original.png</link></image><generator>Hugo -- 0.154.3</generator><language>en</language><copyright>Clément Joly</copyright><lastBuildDate>Wed, 11 Mar 2026 03:32:38 +0000</lastBuildDate><atom:link href="https://joly.pw/tags/lisp/index.xml" rel="self" type="application/rss+xml"/><item><title>bepo.nvim</title><link>https://joly.pw/bepo-nvim/</link><pubDate>Mon, 21 Feb 2022 10:02:37 +0000</pubDate><guid>https://joly.pw/bepo-nvim/</guid><description>⌨️ Mappings for the bepo layout in Lua</description><content:encoded><![CDATA[
<p style="display: flex; justify-content: space-between">
  <a href="https://github.com/cljoly/bepo.nvim" data-goatcounter-click="ext-github-bepo.nvim" data-goatcounter-title="cljoly/bepo.nvim">
    <span class="svgicon"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
    stroke-linecap="round" stroke-linejoin="round">
    <path
        d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22">
    </path>
</svg></span>&nbsp;cljoly/bepo.nvim
  </a>
  <a class="badges" href="https://github.com/cljoly/bepo-nvim" data-goatcounter-click="ext-stargithub-bepo.nvim" data-goatcounter-title="stars cljoly/bepo.nvim">
    <img src="https://img.shields.io/github/stars/cljoly/bepo.nvim?style=social" alt="Github stars for bepo.nvim">
  </a>
</p>


<div class="badges">


<p>

  <img alt="Neovim version" loading="lazy" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5NSIgaGVpZ2h0PSIyMCIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsPSJOZW92aW06IDAuNSI+PHRpdGxlPk5lb3ZpbTogMC41PC90aXRsZT48bGluZWFyR3JhZGllbnQgaWQ9InMiIHgyPSIwIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjYmJiIiBzdG9wLW9wYWNpdHk9Ii4xIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLW9wYWNpdHk9Ii4xIi8+PC9saW5lYXJHcmFkaWVudD48Y2xpcFBhdGggaWQ9InIiPjxyZWN0IHdpZHRoPSI5NSIgaGVpZ2h0PSIyMCIgcng9IjMiIGZpbGw9IiNmZmYiLz48L2NsaXBQYXRoPjxnIGNsaXAtcGF0aD0idXJsKCNyKSI+PHJlY3Qgd2lkdGg9IjY4IiBoZWlnaHQ9IjIwIiBmaWxsPSIjNTU1Ii8+PHJlY3QgeD0iNjgiIHdpZHRoPSIyNyIgaGVpZ2h0PSIyMCIgZmlsbD0iIzU3YTE0MyIvPjxyZWN0IHdpZHRoPSI5NSIgaGVpZ2h0PSIyMCIgZmlsbD0idXJsKCNzKSIvPjwvZz48ZyBmaWxsPSIjZmZmIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LWZhbWlseT0iVmVyZGFuYSxHZW5ldmEsRGVqYVZ1IFNhbnMsc2Fucy1zZXJpZiIgdGV4dC1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiIgZm9udC1zaXplPSIxMTAiPjxpbWFnZSB4PSI1IiB5PSIzIiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGhyZWY9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5Qm1hV3hzUFNJak5UZEJNVFF6SWlCeWIyeGxQU0pwYldjaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU5DSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhkR2wwYkdVK1RtVnZkbWx0UEM5MGFYUnNaVDQ4Y0dGMGFDQmtQU0pOTWk0eU1UUWdOQzQ1TlRSMk1UTXVOakUxVERjdU5qVTFJREkwVmpFd0xqTXhORXd6TGpNeE1pQXpMamcwTlNBeUxqSXhOQ0EwTGprMU5IcHROQzQ1T1RrZ01UY3VPVGhzTFRRdU5UVTNMVFF1TlRRNFZqVXVNVE0yYkM0MU9TMHVOVGsySURNdU9UWTNJRFV1T1RBNGRqRXlMalE0TlhwdE1UUXVOVGN6TFRRdU5EVTNiQzB1T0RZeUxqa3pOeTAwTGpJMExUWXVNemMyVmpCc05TNHdOamdnTlM0d09USXVNRE0wSURFekxqTTROWHBOTnk0ME16RXVNREF4YkRFeUxqazVPQ0F4T1M0NE16VXRNeTQyTXpjZ015NDJNemRNTXk0M09EY2dNeTQyT0RNZ055NDBNeUF3ZWlJdlBqd3ZjM1puUGc9PSIvPjx0ZXh0IGFyaWEtaGlkZGVuPSJ0cnVlIiB4PSI0MzUiIHk9IjE1MCIgZmlsbD0iIzAxMDEwMSIgZmlsbC1vcGFjaXR5PSIuMyIgdHJhbnNmb3JtPSJzY2FsZSguMSkiIHRleHRMZW5ndGg9IjQxMCI+TmVvdmltPC90ZXh0Pjx0ZXh0IHg9IjQzNSIgeT0iMTQwIiB0cmFuc2Zvcm09InNjYWxlKC4xKSIgZmlsbD0iI2ZmZiIgdGV4dExlbmd0aD0iNDEwIj5OZW92aW08L3RleHQ+PHRleHQgYXJpYS1oaWRkZW49InRydWUiIHg9IjgwNSIgeT0iMTUwIiBmaWxsPSIjMDEwMTAxIiBmaWxsLW9wYWNpdHk9Ii4zIiB0cmFuc2Zvcm09InNjYWxlKC4xKSIgdGV4dExlbmd0aD0iMTcwIj4wLjU8L3RleHQ+PHRleHQgeD0iODA1IiB5PSIxNDAiIHRyYW5zZm9ybT0ic2NhbGUoLjEpIiBmaWxsPSIjZmZmIiB0ZXh0TGVuZ3RoPSIxNzAiPjAuNTwvdGV4dD48L2c+PC9zdmc+"> <a href="https://cj.rs/riss">

  <img loading="lazy" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDQiIGhlaWdodD0iMjAiIHJvbGU9ImltZyIgYXJpYS1sYWJlbD0icG93ZXJlZCBieTogcmlzcyI+PHRpdGxlPnBvd2VyZWQgYnk6IHJpc3M8L3RpdGxlPjxsaW5lYXJHcmFkaWVudCBpZD0icyIgeDI9IjAiIHkyPSIxMDAlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiNiYmIiIHN0b3Atb3BhY2l0eT0iLjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3Atb3BhY2l0eT0iLjEiLz48L2xpbmVhckdyYWRpZW50PjxjbGlwUGF0aCBpZD0iciI+PHJlY3Qgd2lkdGg9IjEwNCIgaGVpZ2h0PSIyMCIgcng9IjMiIGZpbGw9IiNmZmYiLz48L2NsaXBQYXRoPjxnIGNsaXAtcGF0aD0idXJsKCNyKSI+PHJlY3Qgd2lkdGg9Ijc1IiBoZWlnaHQ9IjIwIiBmaWxsPSIjNTU1Ii8+PHJlY3QgeD0iNzUiIHdpZHRoPSIyOSIgaGVpZ2h0PSIyMCIgZmlsbD0iIzlmOWY5ZiIvPjxyZWN0IHdpZHRoPSIxMDQiIGhlaWdodD0iMjAiIGZpbGw9InVybCgjcykiLz48L2c+PGcgZmlsbD0iI2ZmZiIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZm9udC1mYW1pbHk9IlZlcmRhbmEsR2VuZXZhLERlamFWdSBTYW5zLHNhbnMtc2VyaWYiIHRleHQtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iIGZvbnQtc2l6ZT0iMTEwIj48dGV4dCBhcmlhLWhpZGRlbj0idHJ1ZSIgeD0iMzg1IiB5PSIxNTAiIGZpbGw9IiMwMTAxMDEiIGZpbGwtb3BhY2l0eT0iLjMiIHRyYW5zZm9ybT0ic2NhbGUoLjEpIiB0ZXh0TGVuZ3RoPSI2NTAiPnBvd2VyZWQgYnk8L3RleHQ+PHRleHQgeD0iMzg1IiB5PSIxNDAiIHRyYW5zZm9ybT0ic2NhbGUoLjEpIiBmaWxsPSIjZmZmIiB0ZXh0TGVuZ3RoPSI2NTAiPnBvd2VyZWQgYnk8L3RleHQ+PHRleHQgYXJpYS1oaWRkZW49InRydWUiIHg9Ijg4NSIgeT0iMTUwIiBmaWxsPSIjMDEwMTAxIiBmaWxsLW9wYWNpdHk9Ii4zIiB0cmFuc2Zvcm09InNjYWxlKC4xKSIgdGV4dExlbmd0aD0iMTkwIj5yaXNzPC90ZXh0Pjx0ZXh0IHg9Ijg4NSIgeT0iMTQwIiB0cmFuc2Zvcm09InNjYWxlKC4xKSIgZmlsbD0iI2ZmZiIgdGV4dExlbmd0aD0iMTkwIj5yaXNzPC90ZXh0PjwvZz48L3N2Zz4="></a> 
<img alt="GitHub tag (latest SemVer)" loading="lazy" src="https://img.shields.io/github/v/tag/cljoly/bepo.nvim?color=darkgreen&sort=semver"> 
<img alt="Endpoint Badge" loading="lazy" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fd.cj.rs%2Fnvim%2Fbepo.json&cacheSeconds=90000"></p>

</div>


<p>Mappings for the <a href="https://bepo.fr/">bepo</a> layout in Lua, inspired by <a href="https://github.com/michamos/vim-bepo">vim-bepo</a></p>
<p>It aims to be faster (takes only 0.4ms at startup on my machine, while <a href="https://github.com/michamos/vim-bepo">vim-bepo</a> requires 1.6ms) and more customizable (see <code>:help bepo.nvim-cherry-pick</code>)</p>
<h2 id="installation">Installation</h2>
<p>Add the plugin <code>cljoly/bepo.nvim</code> to your package manager.</p>
<p>If you don’t have a package manager yet, I use <a href="https://github.com/savq/paq-nvim">paq.nvim</a>.
You can give it a try :).<br>
Look at the <a href="https://github.com/savq/paq-nvim?tab=readme-ov-file#installation">installation instructions</a> and then add the following to your config:</p>
<div class="highlight"><pre tabindex="0" style="color:#abb2bf;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-lua" data-lang="lua"><span style="display:flex;"><span><span style="color:#e06c75">require</span> <span style="color:#98c379">&#34;paq&#34;</span> {
</span></span><span style="display:flex;"><span>  <span style="color:#98c379">&#34;cljoly/bepo.nvim&#34;</span>,
</span></span><span style="display:flex;"><span>  <span style="color:#7f848e">-- ... other packages</span>
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>Then restart neovim and run <code>PaqInstall</code>. That will install the bepo.nvim plugin.</p>
<h2 id="usage">Usage</h2>
<p>Once the plugin is installed, you can add a call to set up the bepo mappings to your config:</p>
<div class="highlight"><pre tabindex="0" style="color:#abb2bf;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-lua" data-lang="lua"><span style="display:flex;"><span><span style="color:#e06c75">require</span>(<span style="color:#98c379">&#34;bepo&#34;</span>).<span style="color:#e06c75">setup</span>()
</span></span></code></pre></div><p>You should call the extension early in your <code>init.lua</code>, so that you can erase mappings later (or with other extensions) more easily.</p>
<h2 id="advanced-usage">Advanced Usage</h2>
<p>You can also apply only some mapping groups:</p>
<div class="highlight"><pre tabindex="0" style="color:#abb2bf;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-lua" data-lang="lua"><span style="display:flex;"><span><span style="color:#e06c75">require</span>(<span style="color:#98c379">&#34;bepo&#34;</span>).<span style="color:#e06c75">movement</span>()
</span></span><span style="display:flex;"><span><span style="color:#e06c75">require</span>(<span style="color:#98c379">&#34;bepo&#34;</span>).<span style="color:#e06c75">tabs</span>()
</span></span><span style="display:flex;"><span><span style="color:#e06c75">require</span>(<span style="color:#98c379">&#34;bepo&#34;</span>).<span style="color:#e06c75">easy_access</span>()
</span></span><span style="display:flex;"><span><span style="color:#e06c75">require</span>(<span style="color:#98c379">&#34;bepo&#34;</span>).<span style="color:#e06c75">window</span>()
</span></span></code></pre></div><p>See <a href="https://github.com/cljoly/bepo.nvim/blob/main/doc/bepo-nvim.txt">the help file</a> for more details and the mappings installed.</p>
<h2 id="reporting-bugs">Reporting bugs</h2>
<p>Thanks for considering reporting a bug!</p>
<p>We want to know if the issue is caused by:</p>
<ol>
<li>the plugin itself</li>
<li>your user configuration</li>
<li>the system configuration</li>
</ol>
<p>Please try to reproduce the bug in nvim stripped of your user configuration by running:</p>
<pre tabindex="0"><code>nvim --clean -u test/mock_setup.lua
</code></pre><p>If you can’t reproduce the bug in that “clean” nvim instance, it suggests that the bug comes from an interaction of the plugin with your user configuration. Please feel free to open an issue, mentioning that.</p>
]]></content:encoded></item></channel></rss>