8657 lines
No EOL
384 KiB
XML
8657 lines
No EOL
384 KiB
XML
<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>This Week In Neovim</title><link>https://this-week-in-neovim.org</link><description></description><lastBuildDate>9 Jan 2023 GMT</lastBuildDate><item><title>9 Jan 2023</title><link>https://this-week-in-neovim.org/2023/Jan/9</link><description><![CDATA[
|
||
<h1 id="core"><a href="#core">Neovim Core updates</a></h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
|
||
<p><a href="https://github.com/neovim/neovim/pull/21472">#21472</a>: <code>:hardcopy</code> is now removed.</p>
|
||
<ul>
|
||
<li>Commands removed:
|
||
<ul>
|
||
<li><code>:hardcopy</code></li>
|
||
</ul>
|
||
</li>
|
||
<li>Options removed:
|
||
<code>printdevice</code>
|
||
<code>printencoding</code>
|
||
<code>printexpr</code>
|
||
<code>printfont</code>
|
||
<code>printheader</code>
|
||
<code>printmbcharset</code></li>
|
||
</ul>
|
||
<p><a href="https://github.com/neovim/neovim/pull/18706">#18706</a> <code>nvim -l</code> now invokes Lua scripts instead of setting the <code>lisp</code>
|
||
option. To set the ‘lisp’ option as -l formerly did, just set it like any other option:</p>
|
||
<pre><code class="language-sh">nvim -c "set lisp"
|
||
</code></pre>
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="import-cost.nvim">
|
||
<a href="#import-cost.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>import-cost.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/62671086/210295248-916a8d81-22c9-432a-87fd-cf539879bf0c.png" alt="import-cost.nvim" /></p>
|
||
<p>View bundle size of Javascript imports inside of your editor. The VSCode
|
||
<a href="https://www.reddit.com/r/neovim/comments/105ut94/new_plugin_for_handling_softhard_line_wrapping/">import-cost</a> plugin
|
||
has finally been ported to Neovim! A plugin made by <a href="https://github.com/barrett-ruth">@barret-ruth</a></p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/102av06/importcostnvim_import_costs_finally_to_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/barrett-ruth/import-cost.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="incolla.nvim">
|
||
<a href="#incolla.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>incolla.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/22748355/210150002-135316ea-5574-443c-b71b-cc089784df7e.gif" alt="incolla.nvim" /></p>
|
||
<p>A Neovim Lua plugin to paste images from the MacOS clipboard. No dependencies, works for multiple formats and sources.
|
||
Written by <a href="https://github.com/mattdibi/incolla.nvim">@mattdibi</a>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/mattdibi/incolla.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="auto-hlsearch.nvim">
|
||
<a href="#auto-hlsearch.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>auto-hlsearch.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/61456651/210617006-8d1dc836-695f-44bd-b62f-63b1dea56f09.mp4"
|
||
>
|
||
</video>
|
||
<p>By <a href="https://github.com/asiryk">@asiryk</a>. Enables the <code>hlsearch</code> option when you start searching e.g. with key <code>/</code>. Disables the <code>hlsearch</code> when you move the cursor, so you don’t have to think about enabling/disabling it manually.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/103bc91/autohlsearchnvim_automatically_manage_hlsearch/">Reddit</a></li>
|
||
<li><a href="https://github.com/asiryk/auto-hlsearch.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="telescope-all-recent.nvim">
|
||
<a href="#telescope-all-recent.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>telescope-all-recent.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/38609485/210369490-98c0fecc-ad96-4efa-9360-55b012d70eb6.gif" alt="telescope-all-recent.nvim" /></p>
|
||
<p>A <a href="https://github.com/nvim-telescope/telescope.nvim">telescope.nvim</a> modification for adding (f)recency sorting to any
|
||
telescope picker. Written by <a href="https://github.com/prochri/telescope-all-recent.nvim">@prochri</a>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/prochri/telescope-all-recent.nvim">GitHub</a></li>
|
||
</ul>
|
||
|
||
<h3 id="ts-node-action.nvim">
|
||
<a href="#ts-node-action.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>ts-node-action.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/7228095/210154055-8851210e-e8e1-4ba3-a474-0be373df8d1b.gif" alt="ts-node-action.nvim" /></p>
|
||
<p>A plugin framework for applying functional transformations to treesitter nodes. If you’ve ever found yourself doing some uninteresting reformatting actions on text frequently, speed up your workflow by writing a function to do the hard work for you! Out of the box most of the actions are for ruby, but Javascript, Python, Lua, and JSON have some actions too. And it’s incredibly simple to add your own functions or reuse the builtin actions for new languages. </p>
|
||
<p>Some of the built-in functions are:</p>
|
||
<ul>
|
||
<li>Expand/collapse hashes/arrays/method params</li>
|
||
<li>Cycle cases on identifiers/constants (snake, camel, underscore, screaming snake)</li>
|
||
<li>Split/Join blocks</li>
|
||
<li>Toggle Booleans</li>
|
||
<li>Toggle conditionals with else into ternary and back</li>
|
||
<li>Toggle conditionals without else into postfix format and back</li>
|
||
<li>… And more! Check out github for the full list :)</li>
|
||
</ul>
|
||
<p>Pull requests for language support are welcome! Written by <a href="https://github.com/CKolkey/ts-node-action">@CKolkey</a>!</p>
|
||
<ul>
|
||
<li><a href="https://old.reddit.com/r/neovim/comments/1054s17/new_plugin_preview_treesitter_node_action/">Reddit</a></li>
|
||
<li><a href="https://github.com/CKolkey/ts-node-action">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="bufferline-cycle-windowless">
|
||
<a href="#bufferline-cycle-windowless">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>bufferline-cycle-windowless.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/226654/208528189-10984843-96cc-4e86-bcfe-efa5b4b13707.gif" alt="bufferline-cycle-windowless screenshot" /></p>
|
||
<p>Neovims default tab-window-buffer model allows viewing open buffers in multiple windows.</p>
|
||
<p>This plugin helps give a more traditional behaviour for tabs by configuring the ability to skip past buffers that are
|
||
already open in an existing window. The behaviour is toggleable and configurable to be on or off by default.</p>
|
||
<p>Written by <a href="https://github.com/roobert/bufferline-cycle-windowless.nvim">@roobert</a>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/roobert/bufferline-cycle-windowless.nvim">Github</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-wrapping.nvim">
|
||
<a href="#new-wrapping.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>wrapping.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/107015/211172216-e22567f8-a9d2-4d8c-954e-3c74e6b0b61a.mp4"
|
||
>
|
||
</video>
|
||
<p>A new plugin by <a href="https://github.com/andrewferrier">@andrewferrier</a> which is designed to make it easier to handle soft
|
||
and hard line wrapped files, and is especially useful if you deal with a lot of text-like files in Neovim (Markdown,
|
||
AsciiDoc, text, etc.) from different sources with different types of line wrapping. It’s based on an older vim plugin
|
||
the author wrote called <code>vim-wrapping-softhard</code>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/105ut94/new_plugin_for_handling_softhard_line_wrapping/">Reddit</a></li>
|
||
<li><a href="https://github.com/andrewferrier/wrapping.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-nvim-ts-rainbow">
|
||
<a href="#update-nvim-ts-rainbow">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>🌈 nvim-ts-rainbow 🌈 has a new maintained fork</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Rainbow parentheses for neovim using tree-sitter.</p>
|
||
</blockquote>
|
||
<img width=250px src="https://user-images.githubusercontent.com/23170004/210392158-8520b074-4400-46a4-b3e1-7201d10f4140.png"/>
|
||
<p>The <a href="https://github.com/p00f/nvim-ts-rainbow">nvim-ts-rainbow</a> repo has been archived and the latest commit <a href="https://github.com/p00f/nvim-ts-rainbow/commit/ef95c15a935f97c65a80e48e12fe72d49aacf9b9">announces</a> the original project will no longer be maintained.</p>
|
||
<p><a href="https://github.com/mrjones2014">@mrjones2014</a> has announced a new maintained fork, but look for updates on <a href="https://techgaun.github.io/active-forks/index.html#https://github.com/p00f/nvim-ts-rainbow">other forks</a> from its many contributors.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/mrjones2014/nvim-ts-rainbow">GitHub</a></li>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/103x4ux/maintained_fork_of_nvimtsrainbow/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-neogen">
|
||
<a href="#update-neogen">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>Neogen</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Neogen is a better annotation generator. Supports multiple languages and annotation conventions.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/5306901/135055065-08def797-e5af-49c9-b530-dd5973045c4e.gif" alt="Neogen" /></p>
|
||
<p><a href="https://github.com/danymat/neogen">Neogen</a> <code>2.11</code> version now generates default annotations from the best type match,
|
||
when calling <code>:Neogen</code> without arguments (credits to <a href="https://github.com/ssiyad">@ssiyad</a>).</p>
|
||
<p>Neogen will now try to guess (based on cursor position in the syntax tree) where to insert the annotations, by default.
|
||
No behaviour is changed when generating annotations with <code>:Neogen <TYPE></code>, <code>>TYPE></code> being the desired annotation type.</p>
|
||
<hr />
|
||
|
||
<h3 id="conceal.nvim">
|
||
<a href="#conceal.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>conceal.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A Neovim Plugin which uses Tree-sitter to conceal typical boiler Code</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/29977579/198855339-dead15ef-e9cb-482c-a436-165e33016da4.png" alt="conceal.nvim" /></p>
|
||
<p>Now <a href="https://github.com/Jxstxs/conceal.nvim/pull/5">supports <code>python</code></a> in addition to <code>lua</code>!</p>
|
||
<ul>
|
||
<li><a href="https://github.com/Jxstxs/conceal.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-pvim">
|
||
<a href="#update-pvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>pvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A portable Vim wrapper. It intends to contain everything to the one directory
|
||
and if needed grab the Neovim app image.</p>
|
||
</blockquote>
|
||
<p>New support for <a href="https://github.com/folke/lazy.nvim">lazy.nvim</a></p>
|
||
<p>The wrapper is now more intelligent with setting up your plugin manager by waiting until your config calls for it. As
|
||
such it is no longer limited to only Packer based configs and has added Lazy support. If you want to use it with
|
||
another plugin manager feel free to open an issue or PR.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/RoryNesbitt/pvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-github-nvim-theme">
|
||
<a href="#update-github-nvim-theme">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>github-nvim-theme</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Github Neovim themes</p>
|
||
</blockquote>
|
||
<p><img src="https://camo.githubusercontent.com/04d2ea852c5303217543da482077165fc9864ea813d4e0748b96aa3aa26145f0/68747470733a2f2f696d6775722e636f6d2f5336536c4369562e706e67" alt="github-nvim-theme" /></p>
|
||
<p>The author would like to remind that following the announcement of
|
||
<a href="https://www.reddit.com/r/neovim/comments/zy9iox/neovim_v082_released/">Neovim 0.9 to be released in Feb 2023</a>, the
|
||
plugin is going to have a migration / refactoring that might imply configuration issues. The author opens a discussion
|
||
to discuss possible migration paths and warnings before the actual breaking changes start appearing.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/106ggqu/join_the_discussion_major_refactor_and_neovim_09/">Reddit</a></li>
|
||
<li><a href="https://github.com/projekt0n/github-nvim-theme">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Last week, we saw how to <a href="https://this-week-in-neovim.org/2023/Jan/02#tips">jump to the last place</a> you’ve visited in a file.
|
||
Today we’ll learn how to disable <code>hlsearch</code> <strong>automatically</strong> when your search done and enable on next searching without
|
||
extra plugins. Add next lines in your <code>init.lua</code>:</p>
|
||
<pre><code class="language-lua">local ns = vim.api.nvim_create_namespace('toggle_hlsearch')
|
||
|
||
local function toggle_hlsearch(char)
|
||
if vim.fn.mode() == 'n' then
|
||
local keys = { '<CR>', 'n', 'N', '*', '#', '?', '/' }
|
||
local new_hlsearch = vim.tbl_contains(keys, vim.fn.keytrans(char))
|
||
|
||
if vim.opt.hlsearch:get() ~= new_hlsearch then
|
||
vim.opt.hlsearch = new_hlsearch
|
||
end
|
||
end
|
||
end
|
||
|
||
vim.on_key(toggle_hlsearch, ns)
|
||
</code></pre>
|
||
<p>Also, if you don’t want to have a listener listening to all your keys, you can just achieve the same result manually by
|
||
calling the <code>:noh</code> (<code>:nohlsearch</code>), which removes the highlighting of the search.</p>
|
||
|
||
<h1 id="special-thanks"><a href="#special-thanks">Special thanks</a></h1>
|
||
<p>These people help contributing various updates about Neovim and its ecosystem! Thanks for your contributions! ❤️</p>
|
||
<ul>
|
||
<li><a href="https://github.com/danymat">@danymat</a></li>
|
||
<li><a href="https://github.com/mattdibi">@mattdibi</a></li>
|
||
<li><a href="https://github.com/al-ce">@al-ce</a></li>
|
||
<li><a href="https://github.com/barrett-ruth">@barret-ruth</a></li>
|
||
<li><a href="https://github.com/Wansmer">@Wansmer</a></li>
|
||
<li><a href="https://github.com/RoryNesbitt">@RoryNesbitt</a></li>
|
||
<li><a href="https://github.com/Amar1729">@Amar1729</a></li>
|
||
<li><a href="https://github.com/prochri">@prochri</a></li>
|
||
<li><a href="https://github.com/CKolkey">@CKolkey</a></li>
|
||
<li><a href="https://github.com/roobert">@roobert</a></li>
|
||
</ul>
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>9 Jan 2023 GMT</pubDate></item><item><title>2 Jan 2023</title><link>https://this-week-in-neovim.org/2023/Jan/2</link><description><![CDATA[
|
||
<h1 id="core"><a href="#core">Neovim Core updates</a></h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
|
||
<ul>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/releases/tag/v0.8.2">Neovim v0.8.2 was released!</a></p>
|
||
<p>This release is focusing mainly on robustness and bug fixes, many of which by regular core developer Zeertzjq.</p>
|
||
</li>
|
||
</ul>
|
||
|
||
<h1 id="plugins"><a href="#plugins">Neovim Plugin Community updates</a></h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="search-replace.nvim">
|
||
<a href="#search-replace.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>search-replace.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/226654/210175428-82e56d0c-0db2-418a-b74c-1ab5a03b3530.gif" alt="search-replace.nvim" /></p>
|
||
<p>A Neovim search and replace plugin that builds on the native search and replace experience.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/roobert/search-replace.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-olddirs.nvim">
|
||
<a href="#new-olddirs.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>olddirs.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><code>olddirs.nvim </code>is like :<code>oldfiles</code>, but for directories. It provides autocommands which store the current directory in
|
||
an olddirs file when Neovim starts or the directory is changed with <code>:cd</code>, <code>:lcd</code>, or <code>:tcd</code>. The old directories can be
|
||
retrieved as a list of strings or through a <code>telescope.nvim </code>picker. A plugin written by
|
||
<a href="https://github.com/marcuscaisey">@marcuscaisey</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zx7y6v/olddirsnvim_oldfiles_but_for_directories/">Reddit</a></li>
|
||
<li><a href="https://github.com/marcuscaisey/olddirs.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-deferred-clipboard.nvim">
|
||
<a href="#new-deferred-clipboard.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>deferred-clipboard.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p>A plugin that synchronizes the clipboard of your operating system with Neovim’s unnamed register (<code>"</code>), while avoiding
|
||
the performance issue of <code>clipboard=unnamed </code>and <code>clipboard=unnamedplus</code>. By
|
||
<a href="https://github.com/EtiamNullam">@EtiamNullam</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zw23w0/deferredclipboardnvim_keep_clipboard_in_sync_with/">Reddit</a></li>
|
||
<li><a href="https://github.com/EtiamNullam/deferred-clipboard.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-u-keymapper.vim">
|
||
<a href="#new-u-keymapper.vim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>u-keymapper.vim</span>
|
||
</a>
|
||
</h3>
|
||
<p>A universal keymapper for Vim and Neovim; useful for people who want keybindings for both editors. Created by
|
||
<a href="https://github.com/pechorin">@pechorin</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zyhk9j/ukeymappervim_alpha_universal_keymapper_for_vim/">Reddit</a></li>
|
||
<li><a href="https://github.com/pechorin/u-keymapper.vim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-chafa.nvim">
|
||
<a href="#new-chafa.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>chafa.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/210188278-455d2c3c-c9f6-4109-826d-620e0b3b5fc6.gif" alt="chafa.nvim" /></p>
|
||
<p>A new plugin that wraps the functionality of <a href="https://github.com/hpjansson/chafa">chafa</a> — a tool that converts
|
||
image data into graphics formats or ANSI/Unicode art — into Neovim. By <a href="https://github.com/princejoogie">@princejoogie</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zyanni/preview_images_directly_in_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/princejoogie/chafa.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-neovim-plugin-boilerplate">
|
||
<a href="#new-neovim-plugin-boilerplate">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>neovim-plugin-boilerplate</span>
|
||
</a>
|
||
</h3>
|
||
<p>Do you want to create a new plugin, but you need a template / skeleton? This plugin by
|
||
<a href="https://github.com/shortcuts">@shortcuts</a> is probably the right thing to start with!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zyh86c/introducing_an_other_plugin_boilerplate_with/">Reddit</a></li>
|
||
<li><a href="https://github.com/shortcuts/neovim-plugin-boilerplate">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="live-server.nvim">
|
||
<a href="#live-server.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>live-server.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p>Live reload HTML, CSS, and JavaScript files inside of neovim. Another
|
||
classic VSCode extension being ported to neovim!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/106o6jh/liveservernvim_liveserver_to_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/barrett-ruth/live-server.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-reddish.nvim">
|
||
<a href="#new-reddish.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>reddish.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/61984114/210072620-fdccf6d2-c52c-4280-b4d5-4fb2455f3827.png" alt="reddish.nvim" /></p>
|
||
<p>A new theme, by <a href="https://github.com/paulfrische">@paulfrische</a>. Very red, much wow.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zyzwhs/reddishnvim_my_first_colorscheme/">Reddit</a></li>
|
||
<li><a href="https://github.com/paulfrische/reddish.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-caskey.nvim">
|
||
<a href="#new-caskey.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>caskey.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p>Declarative <strong>cas</strong>cade <strong>key</strong> mapping configuration. The plugin written by <a href="https://github.com/Nexmean">@Nexmean</a> can:</p>
|
||
<ul>
|
||
<li>Define all your keymaps as simple lua tables.</li>
|
||
<li>Group keymaps the way you think about them.</li>
|
||
<li>Modular, declarative way to define keymaps.</li>
|
||
<li>It’s as easy to define buffer local keymaps as global.</li>
|
||
<li><a href="https://github.com/folke/which-key.nvim">which-key.nvim</a> integration out of the box.</li>
|
||
</ul>
|
||
<p>Congrats on the plugin!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zyyihj/caskeynvim_declarative_keymappings_configuration/">Reddit</a></li>
|
||
<li><a href="https://github.com/Nexmean/caskey.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-nvim-various-textobjs">
|
||
<a href="#new-nvim-various-textobjs">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>nvim-various-textobjs</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/210187799-34c2e278-9ab5-431c-b5a8-1ca037e7d7c8.png" alt="nvim-various-textobjs" /></p>
|
||
<p>A new plugin that bundles more than a dozen textobjects (dozens!), written by
|
||
<a href="https://github.com/chrisgrieser">@chrisgrieser</a>. Among its features:</p>
|
||
<ul>
|
||
<li>Supports forward seeking of text objects (if appropriate for the type of textobj).</li>
|
||
<li>Minimal configuration if you are fine with the default keybindings.</li>
|
||
<li>Supports visual and operator pending mode.</li>
|
||
<li>Fully written in Lua.</li>
|
||
<li>Readme includes an example for further processing the textobjects, like opening the next js-regex pattern in
|
||
regex101.com (prefilled with pattern, flags, and replacement).</li>
|
||
</ul>
|
||
<p>Nice addition!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zvnox9/introducing_nvimvarioustextobjs_a_plugin_bundling/">Reddit</a></li>
|
||
<li><a href="https://github.com/chrisgrieser/nvim-various-textobjs">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-ChatGPT.nvim">
|
||
<a href="#update-ChatGPT.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>ChatGPT</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Neovim plugin for interacting with OpenAI GPT-3 chatbot, providing an easy interface for exploring GPT-3 and NLP.</p>
|
||
</blockquote>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/uz1cTPju2xs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p>The plugin got updated with new features, and is expecting your feedback!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zxmnq2/chatgptnvim_i_recently_added_some_new_features_i/">Reddit</a></li>
|
||
<li><a href="https://github.com/jackMort/ChatGPT.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-easypick.nvim">
|
||
<a href="#update-easypick.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>easypick</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A Neovim plugin that lets you easily create Telescope pickers from arbitrary console commands.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/32141102/209807394-4dfe2b85-dcdf-45ec-b8d7-b8bfec0c4dc1.png" alt="easypick" /></p>
|
||
<p>The plugin received a new action which allows to run nvim command “prepended” with some text like for example
|
||
<code>:FloatermNew make <your-make-target></code>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zx9eam/easypicknvim_updates/">Reddit</a></li>
|
||
<li><a href="https://github.com/axkirillov/easypick.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-no-neck-pain.nvim">
|
||
<a href="#update-no-neck-pain.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>no-neck-pain.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Dead simple plugin to center the currently focused buffer to the middle of the screen. </p>
|
||
</blockquote>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/20689156/207925631-deb043f4-4263-4a29-9851-f90558eea228.mp4"
|
||
>
|
||
</video>
|
||
<p>The plugin received a couple of new features and fixes, among more side buffer theme options, customizable mappings to
|
||
to toggle the plugin, automated enbling on entering the editor, and more!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zzbw43/update_noneckpainnvim_dead_simple_plugin_to/">Reddit</a></li>
|
||
<li><a href="https://github.com/shortcuts/no-neck-pain.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Did you know that you can automatically jump to the last place you’ve visited in a file before exiting? Just add this
|
||
<code>autocmd </code>in your <code>init.lua</code>:</p>
|
||
<pre><code class="language-lua">vim.api.nvim_create_autocmd('BufReadPost', {
|
||
callback = function()
|
||
local mark = vim.api.nvim_buf_get_mark(0, '"')
|
||
local lcount = vim.api.nvim_buf_line_count(0)
|
||
if mark[1] > 0 and mark[1] <= lcount then
|
||
pcall(vim.api.nvim_win_set_cursor, 0, mark)
|
||
end
|
||
end,
|
||
})
|
||
</code></pre>
|
||
<p>It will search mark <code>"</code> which contains the cursor position when last exiting the buffer and set the cursor position to
|
||
that location. A pretty nice trick to know!</p>
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>2 Jan 2023 GMT</pubDate></item><item><title>26 Dec 2022</title><link>https://this-week-in-neovim.org/2022/Dec/26</link><description><![CDATA[
|
||
<h1 id="core"><a href="#core">Neovim Core updates</a></h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
|
||
<h1 id="plugins"><a href="#plugins">Neovim Plugin Community updates</a></h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
|
||
<h3 id="guide-mind.nvim">
|
||
<a href="#guide-mind.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>mind.nvim Part 1 and 2</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/UWSOGoHqkv4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p>This is the first video of a series of 5 about <a href="https://github.com/phaazon/mind.nvim">mind.nvim</a>, introducing the
|
||
plugin, its main ideas and how to use its most basics features. The second video is also available and introduces the
|
||
concept of data and link nodes, as well as the first basic fuzzy searching operations.</p>
|
||
<p>More videos will be uploaded along the week to introduce more advanced concepts.</p>
|
||
<ul>
|
||
<li><a href="https://www.youtube.com/embed/UWSOGoHqkv4">Part 1/5: Introduction and first features</a></li>
|
||
<li><a href="https://www.youtube.com/watch?v=ELjsbyhkkKw">Part 2/5: Content fuzzy searching and more</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="neovim-on-no-admin-rights-windows">
|
||
<a href="#neovim-on-no-admin-rights-windows">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Using Neovim with LSP and Treesitter on Windows Without Admin Rights</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A <a href="https://devctrl.blog/posts/neovim-on-windows/">tutorial / blog article</a> about how to use Neovim with LSP and
|
||
Treesitter on a restricted no-admin-rights Windows Machine. Useful if you want a better Neovim experience for your work
|
||
machine.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zu5kvx/the_comprehensive_guide_to_using_neovim_with_lsp/">Reddit</a></li>
|
||
<li><a href="https://devctrl.blog/posts/neovim-on-windows/">Blog post</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="guide-neovim-tutorial">
|
||
<a href="#guide-neovim-tutorial">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Neovim Tutorial (blog + video)</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/H0J1c48NObc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p><a href="https://programmingpercy.tech/blog">@percybolmer</a> made a video tutorial about Neovim for newcomers. You will find a
|
||
<a href="https://programmingpercy.tech/blog/learn-how-to-use-neovim-as-ide/">blog article</a> as well as a
|
||
<a href="https://www.youtube.com/watch?v=H0J1c48NObc">Youtube video</a> (warning: 2 hours long).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zsxe2y/i_made_a_tutorial_on_learning_neovim_self/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="new-mini-animate.nvim">
|
||
<a href="#new-mini-animate.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>mini.animate</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24854248/208977267-e332c9d8-5232-450c-ae6b-d12a4899c23c.mp4"
|
||
>
|
||
</video>
|
||
<p>Add animations for common Neovim actions: cursor movement, scroll, resize, window open/close. One single <code>require('mini.animate').setup()</code> and you are good to go!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zsos1d/minianimate_animate_common_neovim_actions_cursor/">Reddit</a></li>
|
||
<li><a href="https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-animate.md">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-neural">
|
||
<a href="#new-neural">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>neural</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/38880939/209406364-d1ae162a-9fb3-4e15-8dbb-4890a4db1f5d.mov"
|
||
>
|
||
</video>
|
||
<p>Neural is a plugin for Neovim that provides AI code generation, editing and completion. It uses OpenAI’s
|
||
GPT-3 API capabilities under the hood to query machine learning models and stream results.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zu46ip/neural_ai_code_generation_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/dense-analysis/neural">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-nvim-noirbuddy">
|
||
<a href="#new-nvim-noirbuddy">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-noirbuddy</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/209476867-52a51e7a-04a7-4c61-8f6d-61fe9c396bcb.png" alt="nvim-noirbuddy" /></p>
|
||
<p>A highly customizable minimalist monochromatic colorscheme for Neovim, made by
|
||
<a href="https://github.com/jesseleite">@jesseleite</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zu0m4r/a_highly_customizable_minimalist_monochromatic/">Reddit</a></li>
|
||
<li><a href="https://github.com/jesseleite/nvim-noirbuddy">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-remember-me.nvim">
|
||
<a href="#new-remember-me.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>remember-me.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Another session manager, written by <a href="https://github.com/EricDriussi">@EricDriussi</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ztqol6/rememberme_a_plugin_that_sort_of_handles_your_vim/">Reddit</a></li>
|
||
<li><a href="https://github.com/EricDriussi/remember-me.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-forgit.nvim">
|
||
<a href="#new-forgit.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>forgit.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/1681295/207864539-ec65b9c4-d8a0-4509-b13f-bd2192f742d9.mp4"
|
||
>
|
||
</video>
|
||
<p>A new plugin by <a href="https://github.com/ray-x">@ray-x</a>, which is a Neovim plugin building up on the
|
||
<a href="https://github.com/wfxr/forgit">forgit</a> CLI tool.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zsjdcy/forgitnvim_is_a_neovim_plugin_wraps_forgit_cli/">Reddit</a></li>
|
||
<li><a href="https://github.com/ray-x/forgit.nvim">GitHub</a></li>
|
||
<li><a href="https://www.youtube.com/watch?v=lXeusJJYsN4&feature=share">Youtube</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-standardized">
|
||
<a href="#new-standardized">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>standardized</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/209477106-66772fad-a2b3-40cb-ade0-7dc2625cf16d.png" alt="standardized" /></p>
|
||
<p>A pair of base16 colorschemes designed with standards compliance and functionality in mind. Available for your terminal,
|
||
Vim/Neovim, Lightline and tmux. Written by <a href="https://github.com/ali-githb">@ali-githb</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zronoi/a_new_colorscheme/">Reddit</a></li>
|
||
<li><a href="https://github.com/ali-githb/standardized">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-lazy.nvim">
|
||
<a href="#new-lazy.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lazy.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/292349/208301737-68fb279c-ba70-43ef-a369-8c3e8367d6b1.png" alt="lazy.nvim" /></p>
|
||
<p>A new plugin manager for Neovim, coming with lots of features with a nice-looking UI. By
|
||
<a href="https://github.com/folke">@folke</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zqk5ds/lazynvim_a_new_plugin_manager_for_neovim/=">Reddit</a></li>
|
||
<li><a href="https://github.com/folke/lazy.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-mind.nvim">
|
||
<a href="#update-mind.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mind.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>The power of trees at your fingertips.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/185793543-e12baf93-8329-4e3b-96d2-da38547691ee.png" alt="mind.nvim" /></p>
|
||
<p>The plugin got updated to version <strong>v2.2.1</strong> with a bug fixes and some nice additions. The next to come release, <code>v3</code>,
|
||
will add support custom node type — currently, you have the choice between empty nodes, data nodes or link nodes. With
|
||
this next update, you can imagine having a “task” node, tracking how many tasks are done as children to put some
|
||
decoration showing the progression. No ETA yet.</p>
|
||
<p>Changelog:</p>
|
||
<ul>
|
||
<li>Remove local <code>.mind</code> tree.</li>
|
||
<li>Add the <code>delete_file*</code> commands, bound to <code>D</code>, to remove the associated file (if any) of a node.</li>
|
||
<li>Hide relative line numbers in Mind buffers, if set by default.</li>
|
||
<li>Add icons when fuzzy searching things (it will either show a link or a
|
||
data marker, depending).</li>
|
||
<li>Better default for searching data / URL nodes; it will not show empty
|
||
nodes.</li>
|
||
<li>Fix prefix for the prompt while fuzzy searching.</li>
|
||
<li>Fix smart project creation.</li>
|
||
<li>Fix moving nodes (persistence wasn’t applied correctly).</li>
|
||
<li>Fix <code>toggle_node_line</code> (persistence problem as well).</li>
|
||
<li>Fix <code>save_tree</code> in various asynchronous commands, just as above.</li>
|
||
<li>Fix an explorer bug and remove a needless print.</li>
|
||
<li>Fix highlighting for empty nodes.</li>
|
||
<li>Update highlights.</li>
|
||
<li>Update the README to reflect recent changes.</li>
|
||
<li>Various docs cleanups and fixes.</li>
|
||
</ul>
|
||
<p>More <a href="https://github.com/phaazon/mind.nvim/releases/tag/v2.2.1">here</a>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/phaazon/mind.nvim">GitHub</a></li>
|
||
<li><a href="https://github.com/phaazon/mind.nvim/releases/tag/v2.2.1">Release notes</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="autoclose.nvim">
|
||
<a href="#autoclose.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>autoclose.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A minimalist autoclose plugin for Neovim written in 100% Lua.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/74842863/209287511-d44747ea-18ca-4112-925e-5a8c7901e3fd.gif" alt="autoclose.nvim" /></p>
|
||
<p>Autoclose.nvim has received a major update. Here are some of the highlights:</p>
|
||
<ol>
|
||
<li>
|
||
<p>100% Lua: The entire plugin has been written in Lua now, which allows for faster performance and better integration with Neovim.</p>
|
||
</li>
|
||
<li>
|
||
<p>User config: The plugin now includes user configuration options, so you can customize its behavior to suit your workflow.</p>
|
||
</li>
|
||
<li>
|
||
<p>Improved coding style and structure: The plugin’s coding style and structure have also been improved, making it easier to maintain and extend in the future.</p>
|
||
</li>
|
||
</ol>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zsncpf/update_autoclosenvim_a_minimalist_autoclose/?utm_source=share&utm_medium=web2x&context=3">Reddit</a></li>
|
||
<li><a href="https://github.com/m4xshen/autoclose.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-wiki.vim">
|
||
<a href="#update-wiki.vim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>wiki.vim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A wiki plugin for Vim and Neovim.</p>
|
||
</blockquote>
|
||
<p>The Vim plugin was released in version <strong>v0.5</strong>, along with a long list of changes you can read
|
||
<a href="https://github.com/lervag/wiki.vim/releases/tag/v0.5">here</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zuxqvk/wikivim_v05/">Reddit</a></li>
|
||
<li><a href="https://github.com/lervag/wiki.vim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-esqueleto.nvim">
|
||
<a href="#update-esqueleto.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>esqueleto.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Reduce your boilerplate code the lazy-bones way</p>
|
||
</blockquote>
|
||
<p><img src="https://camo.githubusercontent.com/c51278456c0120cc053ded34d8cd91e77549e3e4cc86be36fb4953af1ae6ae72/68747470733a2f2f692e696d6775722e636f6d2f4d424d6b5346372e676966" alt="esqueleto.nvim" /></p>
|
||
<p>The plugin was released in <strong>v0.1</strong>!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ztm7wn/esqueletonvim_v01_release/">Reddit</a></li>
|
||
<li><a href="https://github.com/cvigilv/esqueleto.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-pvim">
|
||
<a href="#update-pvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>pvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A portable Vim wrapper for packer based configs. it intends to contain everything to the one directory and if needed
|
||
grab the Neovim app image.</p>
|
||
</blockquote>
|
||
<p>The plugin now supports Mason and is looking to test people’s configuration. Give it a try and feel free to provide
|
||
feedback to the author!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zs288x/pvim_now_supports_mason_and_is_looking_to_test/">Reddit</a></li>
|
||
<li><a href="https://github.com/RoryNesbitt/pvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>26 Dec 2022 GMT</pubDate></item><item><title>19 Dec 2022</title><link>https://this-week-in-neovim.org/2022/Dec/19</link><description><![CDATA[
|
||
<h1 id="core"><a href="#core">Neovim Core updates</a></h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
|
||
<ul>
|
||
<li>
|
||
<p><code>vim.inspect_pos()</code>, <code>vim.show_pos()</code>, <code>:Inspect</code> and <code>:Inspect!</code> allow a user to get or show items at a given buffer
|
||
position.</p>
|
||
<p><img src="https://i.redd.it/quwhbte2em6a1.png" alt="" /></p>
|
||
<p>Currently this includes treesitter captures, semantic tokens, syntax groups and extmarks. More
|
||
<a href="https://www.reddit.com/r/neovim/comments/zou5ig/inspect_is_now_available_on_nightly/">here</a>.</p>
|
||
</li>
|
||
</ul>
|
||
|
||
<h1 id="plugins"><a href="#plugins">Neovim Plugin Community updates</a></h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
|
||
<h3 id="guide-autocompletion-snippet">
|
||
<a href="#guide-autocompletion-snippet">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>autocompletion-snippet</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/h4g0m0Iwmys" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p>A 5 minutes video show you how to add snippets and use auto-completion.</p>
|
||
<ul>
|
||
<li><a href="https://www.youtube.com/watch?v=h4g0m0Iwmys&feature=youtu.be">Youtube</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="new-based.nvim">
|
||
<a href="#new-based.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>based.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/43476566/208255795-f4f5e50a-bfff-4b5b-bb37-2b836bdd2005.mov"
|
||
>
|
||
</video>
|
||
<p><code>based.nvim</code> is a plugin for quickly viewing numbers in different bases with virtual text.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/trmckay/based.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="telescope-undo.nvim">
|
||
<a href="#telescope-undo.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>telescope-undo.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/4604331/208297854-df5a104a-2fc1-4411-9f5f-5e40454d8dac.png" alt="telescope-undo.nvim" /></p>
|
||
<p>This is a telescope extension that visualizes your undo tree and makes it searchable. Your query will filter results
|
||
according to the additions and removals of each change. If you have found the desired undo state, you can go back in
|
||
time or yank the additions or deletions for inclusion in your current version of the buffer.</p>
|
||
<ul>
|
||
<li><a href="https://old.reddit.com/r/neovim/comments/znjp56/new_plugin_telescope_extension_to_view_and_search/">Reddit</a></li>
|
||
<li><a href="https://github.com/debugloop/telescope-undo.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-nyoovm.nvim">
|
||
<a href="#new-nyoovm.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nyoovm.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Use Neovim’s builtin LuaJIT as a portable fennel interpreter and REPL.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zn5q46/nyooml_use_neovims_builtin_luajit_as_a_portable/">Reddit</a></li>
|
||
<li><a href="https://github.com/nyoom-engineering/nyoom.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-id3.nvim">
|
||
<a href="#new-id3.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>id3.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://camo.githubusercontent.com/a619d5c99177ad839cd826211a0f59e7f8ca603dc879e3153e36d110892a9ff1/687474703a2f2f692e616e6472657772616465762e636f6d2f65333036323936316461336338303261316538363065663865313463626335352e676966" alt="id3.nvim" /></p>
|
||
<p>Edit an MP3 file with this new plugin written by <a href="https://gitlab.com/itaranto">@itaranto</a> and based on
|
||
<a href="https://github.com/AndrewRadev">@AndrewRadev</a>’s <a href="https://github.com/AndrewRadev/id3.vim">id3.vim</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zntg62/id3nvim_edit_your_mp3_tags_in_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/AndrewRadev/id3.vim">GitHub (id3.vim)</a></li>
|
||
<li><a href="https://gitlab.com/itaranto/id3.nvim">GitHub (id3.nvim)</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-ai.vim">
|
||
<a href="#new-ai.vim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>ai.vim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A minimalist Neovim plugin for generating and editing text using OpenAI and GPT. By
|
||
<a href="https://github.com/adorus">@aduros</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zk1axe/aivim_plugin_for_editing_and_generating_text/">Reddit</a></li>
|
||
<li><a href="https://github.com/aduros/ai.vim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-actions.nvim">
|
||
<a href="#new-actions.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>actions.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/67372390/207181720-19dbf5f7-ed2b-40b9-9632-6ef9894c7a35.mp4"
|
||
>
|
||
</video>
|
||
<p>A Neovim plugin for managing and asynchronously running actions.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zk7g1z/actionsnvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/lpoto/actions.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-suave.lua">
|
||
<a href="#new-suave.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>suave.lua</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24765272/207277797-88682d65-fe22-41a1-9155-b20e23a0205b.mov"
|
||
>
|
||
</video>
|
||
<p>Suave.lua is all about project session automation, it can:</p>
|
||
<ul>
|
||
<li>
|
||
<p><code>.setup()</code> callbacks on session store/restore.</p>
|
||
</li>
|
||
<li>
|
||
<p><code>.session_store()</code> multiple sessions for a single project.</p>
|
||
</li>
|
||
<li>
|
||
<p><code>.session_store()</code> mutliple sessions in your project folder.</p>
|
||
</li>
|
||
<li>
|
||
<p>Add simple note on session store.</p>
|
||
</li>
|
||
<li>
|
||
<p>Use <code>autocmd</code> with %.session_store(auto=true)` to achieve project session automation:</p>
|
||
<ul>
|
||
<li>When <code>auto=true</code>, the naming process is skipped. So you can put the call inside autocmd.</li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<p>Store/restore sessions by selecting them from the menu, no more command typing.</p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://www.reddit.com/r/neovim/comments/zkrkg8/suavelua_session_lua_for_vim_enthusiasts/">Reddit</a></p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/nyngwang/suave.lua">GitHub</a></p>
|
||
</li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-esqueleto.nvim">
|
||
<a href="#new-esqueleto.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>esqueleto.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://camo.githubusercontent.com/18d47af4f59fae8b9a5161837ba80ff90cc2d750515270150643f9f9020ffafa/68747470733a2f2f692e696d6775722e636f6d2f6b62793332326c2e676966" alt="esqueleto.nvim" /></p>
|
||
<p>This is a package that intends to be a modular template manager for reducing boilerplate code. This first release is an
|
||
alpha version of the plugin, the minimum viable product. The author, <a href="https://github.com/cvigilv">@cvigilv</a>, is asking
|
||
for feedback, so expect bugs / issues!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zm1ri2/esqueletonvim_template_manager_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/cvigilv/esqueleto.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-chat-gpt.nvim">
|
||
<a href="#new-chat-gpt.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>chat-gpt.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/208536554-2704bccd-2a0f-4e9f-aaef-d4a150bb6d07.png" alt="chat-gpt.nvim" /></p>
|
||
<p>You know the trend. Everyone is talking about ChatGPT, so here’s our Neovim plugin for it, written by
|
||
<a href="https://github.com/jackMort">@jackMort</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zmireh/the_chatgptnvim_plugin_is_here_give_it_a_try/">Reddit</a></li>
|
||
<li><a href="https://github.com/jackMort/ChatGPT.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-no-neck-pain.nvim">
|
||
<a href="#update-no-neck-pain.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>no-neck-pain.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Dead simple plugin to center the currently focused buffer to the middle of the screen.</p>
|
||
</blockquote>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/20689156/207925631-deb043f4-4263-4a29-9851-f90558eea228.mp4"
|
||
>
|
||
</video>
|
||
<p>The plugin received a couple of updates. <a href="https://github.com/shortcuts/no-neck-pain.nvim/blob/main/CHANGELOG.md">Changelog
|
||
here</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zoxhup/update_noneckpainnvim_dead_simple_plugin_to/">Reddit</a></li>
|
||
<li><a href="https://github.com/shortcuts/no-neck-pain.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-navigator.nvim">
|
||
<a href="#update-navigator.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>navigator.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Smoothly navigate between Neovim and your multiplexer (tmux, etc.).</p>
|
||
</blockquote>
|
||
<p><img src="https://github.com/numToStr/Navigator.nvim" alt="navigator.nvim" /></p>
|
||
<p>The plugin now supports <a href="">wezterm</a> navigation! You can have a look at <a href="https://github.com/numToStr/Navigator.nvim/wiki/Custom-Multiplexer">this
|
||
page</a> to set it up.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zjy30g/psa_navigatornvim_now_supports_wezterm_navigation/">Reddit</a></li>
|
||
<li><a href="https://github.com/numToStr/Navigator.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>It’s time to party next week so don’t forget to chill and spend quality time with your friends, love and family. Have
|
||
fun!</p>
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>19 Dec 2022 GMT</pubDate></item><item><title>12 Dec 2022</title><link>https://this-week-in-neovim.org/2022/Dec/12</link><description><![CDATA[
|
||
<h1 id="core"><a href="#core">Neovim Core updates</a></h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
|
||
<h3 id="guide-LunarVim">
|
||
<a href="#guide-LunarVim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>LunarVim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/BHlR_GJaNbI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p>A tutorial about how to deal with your <a href="https://www.lunarvim.org/">LunarVim</a> configuration in check.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zgnhb0/lunarvim_you_can_keep_your_neovim_config/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="guide-aoc-day-05">
|
||
<a href="#guide-aoc-day-05">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>aoc-day-05</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/0y7qMuyUgpk" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p>Have you heard about <a href="https://adventofcode.com/">Advent of Code</a>? If you’re into programming and puzzles, it’s a must do
|
||
during December! Here’s a video about someone taking up the game to a visual representation within their favorite editor
|
||
directly! Written in VimL.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ze6mzs/aoc_2022_day05_animation_of_moving_crates/">Reddit</a></li>
|
||
<li><a href="https://github.com/dhruvasagar/comp/blob/master/adventofcode/2022/day05/aoc.vim">VimL source code</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="guide-NeovimConf-2022">
|
||
<a href="#guide-NeovimConf-2022">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>NeovimConf 2022</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/z9SuyhSHOWs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p>This week was <a href="https://www.neovimconf.live/">NeovimConf 2022</a> (Dec 9th/10th). An annual gathering about Neovim and its
|
||
current progress.</p>
|
||
<p>Table of content with timestamps — taken from the user <em>Samiullah Khan</em> on Youtube:</p>
|
||
<ul>
|
||
<li>17:08 - Learning with Neovim; <em>BashBunni</em></li>
|
||
<li>42:20 - Writing Plugins, Its never been easier; <em>David Kunz</em></li>
|
||
<li>1:10:30 - Building a webassembly runtime for Neovim Plugins; <em>Gustavo Sampaio</em></li>
|
||
<li>1:35:35 - A little fun</li>
|
||
<li>1:38:27 - Extending Vim with Command Line; <em>Waylon Walker</em></li>
|
||
<li>1:54:45 - The philosophy of vim; <em>Nicholas Payne</em></li>
|
||
<li>2:14:15 - Vim for Non-Programmers; <em>Jesse Atkinson</em></li>
|
||
<li>2:35:33 - Neovim ecosystem state for plugin developers; <em>Anton Kastritskiy</em></li>
|
||
<li>2:54:30 - Lua, a Primer; <em>John McBride</em></li>
|
||
<li>3:26:56 - QMK / Split KB Tips; <em>Peter DeVries</em></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="new-grpc-nvim">
|
||
<a href="#new-grpc-nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>grpc-nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://raw.githubusercontent.com/hudclark/grpc-nvim/main/assets/example.gif" alt="grpc-nvim" /></p>
|
||
<p><strong>grpc-nvim</strong>: A simple GRPC client, built using <a href="https://github.com/fullstorydev/grpcurl">grpcurl</a>.</p>
|
||
<p>Place your cursor over a valid GRPC request, then run <code>:Grpc</code>. Results will be shown in a split.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/hudclark/grpc-nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-dotenv">
|
||
<a href="#new-dotenv">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>dotenv.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A minimalist .env support for Neovim</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zdouvj/dotenvnvim_a_minimalist_env_support_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/ellisonleao/dotenv.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-no-neck-pain.nvim">
|
||
<a href="#new-no-neck-pain.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>no-neck-pain.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://camo.githubusercontent.com/3e758fb3189802efce0dd114882e8bdef28a14167b2ed864f5c69dcddb7afd0b/68747470733a2f2f692e696d6775722e636f6d2f674f53764164682e676966" alt="no-neck-pain.nvim" /></p>
|
||
<p>A plugin written by <a href="htttps://github.com/shortcuts">@shortcuts</a> to center the currently focused buffer to the middle of
|
||
the screen.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zggczl/noneckpainnvim_dead_simple_plugin_to_center_the/">Reddit</a></li>
|
||
<li><a href="https://github.com/shortcuts/no-neck-pain.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-stuff.nvim">
|
||
<a href="#new-stuff.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>stuff.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/77913442/183280043-b8e0b5bf-2fb3-41a8-b244-835743f1bdf3.gif" alt="stuff.nvim" /></p>
|
||
<p>A collection of <em>“semi-useless“</em> (according to the author) plugins. It currently contains plugins like:</p>
|
||
<ul>
|
||
<li><code>calc.lua</code></li>
|
||
<li><code>stalk.lua</code></li>
|
||
<li><code>tmpclone.lua</code></li>
|
||
<li><code>player.lua</code></li>
|
||
<li>etc.</li>
|
||
</ul>
|
||
<p>A fun addition by <a href="https://github.com/tamton-aquib">tamton-aquib</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zg7irp/stuffnvim_just_a_bunch_of_nonplugin_plugins/">Reddit</a></li>
|
||
<li><a href="https://github.com/tamton-aquib/stuff.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-hl_match_area.nvim">
|
||
<a href="#new-hl_match_area.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>hl_match_area.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/83038443/197796655-b1ff0a7a-ed5b-4922-96d4-3acc7b87e1b5.gif" alt="hl_match_area.nvim" /></p>
|
||
<p>A plugin for highlighting the area between matching delimiters. By <a href="https://github.com/rareitems">@rareitems</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zfzyic/hl_match_areanvim_plugin_for_highlighting_the/">Reddit</a></li>
|
||
<li><a href="https://github.com/rareitems/hl_match_area.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-fzf-lua-projection.nvim">
|
||
<a href="#new-fzf-lua-projection.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>fzf-lua-projection.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24765272/205894447-3d6d3726-5085-4e7f-830b-8f99c58a5289.mov"
|
||
>
|
||
</video>
|
||
<p>Manage your sessions with <a href="https://github.com/ibhagwan/fzf-lua">fzf-lua</a> +
|
||
<a href="https://github.com/GnikDroy/projections.nvim">projections.nvim</a>! By <a href="https://github.com/nyngwang">@nyngwang</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ze3pci/fzfluaprojectionsnvim_manage_your_sessions_with/">Reddit</a></li>
|
||
<li><a href="https://github.com/nyngwang/fzf-lua-projections.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-swagger-preview.nvim">
|
||
<a href="#new-swagger-preview.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>swagger-preview.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://camo.githubusercontent.com/ca3d14d45f68491d8c9d18cc75116a451ec621d9dc67e919da2454e69acc6284/68747470733a2f2f692e696d6775722e636f6d2f4c53504d4c4e732e676966" alt="swagger-preview.nvim" /></p>
|
||
<p>Live view <a href="https://swagger.io/">swagger</a> files in your browser! Written by
|
||
<a href="https://github.com/vinnymeller">@vinnymeller</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zhdvtw/swaggerpreviewnvim_live_view_swagger_files_in/">Reddit</a></li>
|
||
<li><a href="https://github.com/vinnymeller/swagger-preview.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-kreative">
|
||
<a href="#new-kreative">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>kreative</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/iXFlGD8TRTc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p>Kreative is a minimalistic approach to generating colorschemes for end users. You only need to provide 8 colors,
|
||
alongside some boilerplate code, inside a regular colorscheme file in /colors to generate a colorscheme for you.
|
||
Kreative does all the work generating shades based on them. It even comes with 16 color support alongside terminal
|
||
output for 4 popular terminals! Meaning you can take your colorscheme just about anywhere in the terminal world.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zi6so9/kreative_a_simple_gui_colorscheme_generator_has/">Reddit</a></li>
|
||
<li><a href="https://github.com/katawful/kreative/">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-legendary.nvim">
|
||
<a href="#update-legendary.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>legendary.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A legend for your keymaps, commands, and autocmds, with <a href="https://github.com/folke/which-key.nvim">which-key.nvim</a>
|
||
integration.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/8648891/200827633-7009f5f3-e126-491c-88bd-73a0287978c4.gif" alt="legendary.nvim" /></p>
|
||
<p><code>legendary.nvim</code> now supports <em>“frecency”</em> sorting, a combined measure of how frequently and how recently you’ve used an
|
||
item.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zg8w34/legendarynvim_now_supports_frecency_sorting_a/">Reddit</a></li>
|
||
<li><a href="https://github.com/mrjones2014/legendary.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-AstroNvim">
|
||
<a href="#update-AstroNvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>AstroNvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>AstroNvim is an aesthetic and feature-rich Neovim config that is extensible and easy to use with a great set of
|
||
plugins .</p>
|
||
</blockquote>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/04z9v0xMDkw" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p><code>AstroNvim</code> v2.9.0 now has out of the box debugger (<a href="https://github.com/mfussenegger/nvim-dap">nvim-dap</a> +
|
||
<a href="https://github.com/rcarriga/nvim-dap-ui">nvim-dap-ui</a>) with automatic setup
|
||
(<a href="https://github.com/williamboman/mason.nvim">mason.nvim</a> and
|
||
<a href="https://github.com/jay-babu/mason-nvim-dap.nvim">mason-nvim-dap.nvim</a>)! (mac and *nix only for now).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zg1686/astronvim_v290_now_has_out_of_the_box_debugger/">Reddit</a></li>
|
||
<li><a href="https://github.com/AstroNvim/AstroNvim/">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-grapple.nvim">
|
||
<a href="#update-grapple.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>grapple.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Grapple is a plugin that aims to provide immediate navigation to important files (and its last known cursor location)
|
||
by means of persistent file tags within a project scope. Tagged files can be bound to a keymap or selected from within
|
||
an editable popup menu.</p>
|
||
</blockquote>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/2467016/204135078-c1c59f19-49b8-4c38-a76d-2892903816db.mov"
|
||
>
|
||
</video>
|
||
<p>The plugin received a large update lately in its <strong>v0.5.1</strong> release. Among the new things:</p>
|
||
<ul>
|
||
<li>
|
||
<p>Setup is now optional!</p>
|
||
</li>
|
||
<li>
|
||
<p>Project scopes are now <a href="https://github.com/cbochs/grapple.nvim#persistent-state">saved as individual files</a>,
|
||
instead of one large JSON blob. This means:</p>
|
||
<ul>
|
||
<li>Project scopes can be loaded <strong>lazily</strong>; only the scopes used within a neovim session are loaded.</li>
|
||
<li>Load times should always be fast since a user will only tag a few files per project scope.</li>
|
||
<li>It’s as easy as deleting a file in order to cleanup old / unused project scopes (automatic pruning is in the works).</li>
|
||
<li>Unlike <a href="https://github.com/ThePrimeagen/harpoon/issues/188">harpoon</a>, grapple should not see performance degradation
|
||
over time.</li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<p>New <code>git_branch</code> scope that can save your tags to a specific git repo and branch. Useful if you use git worktrees.</p>
|
||
</li>
|
||
<li>
|
||
<p>New project <a href="https://github.com/cbochs/grapple.nvim#usage">Scope API</a> for custom scope resolution. This means:</p>
|
||
<ul>
|
||
<li>For example, users who do not use git can define their own custom scope resolution.</li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/cbochs/grapple.nvim#project-scopes">Project scopes</a> are now cached by default. This means:</p>
|
||
<ul>
|
||
<li>A project scope will only be updated when necessary (i.e. a specific autocmd event is triggered).</li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<p>Project scopes can be asynchronously determined (i.e. <code>git_branch</code>).</p>
|
||
</li>
|
||
</ul>
|
||
<p>A nice update!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zg08ab/updates_to_grapplenvim_v051/">Reddit</a></li>
|
||
<li><a href="https://github.com/cbochs/grapple.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-bob">
|
||
<a href="#update-bob">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>bob</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A version manager for Neovim.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/207028886-e13adf37-28a0-4c10-8308-cdaf4c035cde.png" alt="bob" /></p>
|
||
<p>Version <strong>v1.2.1</strong> was released! Among the changes:</p>
|
||
<ul>
|
||
<li>Code & Error handling improvements.</li>
|
||
<li>New AUR package <a href="https://aur.archlinux.org/packages/bob">bob</a> which builds bob directly from source:</li>
|
||
<li>New installation source <a href="https://crates.io/crates/bob-nvim">crates.io</a>.</li>
|
||
<li>Finally added ARM Mac(M1) upstream binary!</li>
|
||
</ul>
|
||
<p>Full changelog <a href="https://github.com/MordechaiHadad/bob/releases/tag/v1.2.1">here</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zf118d/bob_v121_release/">Reddit</a></li>
|
||
<li><a href="https://github.com/MordechaiHadad/bob/">GitHub</a></li>
|
||
<li><a href="https://aur.archlinux.org/packages/bob">AUR</a></li>
|
||
<li><a href="https://crates.io/crates/bob-nvim">crates.io</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Nothing for this week…</p>
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>12 Dec 2022 GMT</pubDate></item><item><title>5 Dec 2022</title><link>https://this-week-in-neovim.org/2022/Dec/5</link><description><![CDATA[
|
||
<h1 id="core"><a href="#core">Neovim Core updates</a></h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
|
||
<h3 id="guide-neovim-spaghetti">
|
||
<a href="#guide-neovim-spaghetti">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
</span>
|
||
<span>Neovim Spaghetti - LSP Servers, Linters, Formatters, and Treesitter</span>
|
||
</a>
|
||
</h3>
|
||
</h3>
|
||
<p>To make the most of Neovim it’s useful to understand the technologies it can leverage, how the various plugins that
|
||
manage these technologies relate to one another, and how they can be installed and configured. In this article we’ll
|
||
attempt to untangle the Neovim plugin spaghetti that turns Neovim into a more featureful modern editor.</p>
|
||
<ul>
|
||
<li><a href="https://roobert.github.io/2022/12/03/Extending-Neovim/">Blog</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="guide-appreciation-post">
|
||
<a href="#guide-appreciation-post">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Special: appreciation post</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>As author of <a href="/">This Week in Neovim</a>, I (<a href="https://github.com/phaazon">@phaazon</a>) was pleased to read
|
||
<a href="https://www.reddit.com/r/neovim/comments/zb60ms/neovim_plugins_appreciation_post/">such a post</a> on Reddit. The
|
||
community is growing fast and we can all congragulate ourselves for the new plugins and existing ecosystem that is
|
||
thriving.</p>
|
||
<p>Give it up for the plugin authors — and yourself if you are one! — and don’t hesitate to drop a comment in the
|
||
aforementioned Reddit post thread! I also use the opportunity of that post to mention that plugin authors are <strong>highly
|
||
encouraged</strong> to open pull-requests to the <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">content repository of This Week in Neovim</a>
|
||
in order to help me continue providing weekly updates!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zb60ms/neovim_plugins_appreciation_post/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="new-treesj.nvim">
|
||
<a href="#new-treesj.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>TreeSJ</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/46977173/201088511-b336cec5-cec4-437f-95b3-0208c83377fd.mov" alt="TreeSJ" /></p>
|
||
<p>Neovim plugin for splitting/joining blocks of code like arrays, hashes, statements, objects, dictionaries, etc. Written
|
||
in Lua using <a href="https://tree-sitter.github.io/tree-sitter/">tree-sitter</a>.</p>
|
||
<p>Inspired by and partly repeats the functionality of <a href="https://github.com/AndrewRadev/splitjoin.vim">splitjoin.vim</a>.</p>
|
||
<p>Features:</p>
|
||
<ul>
|
||
<li>Can be called from anywhere in the block: no need to move cursor to specified place to split/join block of code.</li>
|
||
<li>Make cursor sticky: the cursor follows the text on which it was called.</li>
|
||
<li>Autodetect mode: toggle-mode present. Split or join blocks by same key mapping.</li>
|
||
<li>Do it recursively: expand or collapse all nested nodes? Yes, you can.</li>
|
||
<li>Recognize nested languages: filetype doesn’t matter, detect language with treesitter.</li>
|
||
</ul>
|
||
<p>Created by <a href="https://github.com/Wansmer">@Wansmer</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z2iv9p/introduce_treesj_neovim_plugin_for/">Reddit</a></li>
|
||
<li><a href="https://github.com/Wansmer/treesj">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-alfreed-neovim-uitilies">
|
||
<a href="#new-alfreed-neovim-uitilies">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>alfreed-neovim-uitilies</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/205601840-6f7d9495-91ee-4a12-81e9-5290e78820dd.png" alt="alfreed-neovim-uitilies" /></p>
|
||
<p>A set of <a href="https://www.alfredapp.com/">Alfred</a> workflows created by <a href="https://github.com/chrisgrieser">@chrisgrieser</a>.
|
||
Those can:</p>
|
||
<ul>
|
||
<li>Search the online <code>:help</code> for Neovim.</li>
|
||
<li>Search Neovim plugin (powered by Neovimcraft).</li>
|
||
<li>Access your oldfiles from outside of your editor.</li>
|
||
</ul>
|
||
<p><strong>Requirements: Alfred (macOS) with powerpack.</strong></p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z7p8fe/introducing_alfred_workflow_for_searching_online/">Reddit</a></li>
|
||
<li><a href="https://github.com/chrisgrieser/alfred-neovim-utilities">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-twoslash-queries.nvim">
|
||
<a href="#new-twoslash-queries.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>twoslash-queries.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/32909388/204164892-3c1444d3-8f2d-4c6d-8c1a-b812f1e4c657.gif" alt="twoslash-queries.nvim" /></p>
|
||
<p>Inspired by <a href="https://github.com/orta/vscode-twoslash-queries">vscode-twoslash-queries</a>, this plugin allows you to print
|
||
typescript types as inline virtual text and dynamically update it instantly without having to move the cursor over the
|
||
inspected variable. By <a href="https://github.com/marilari88">@marilari88</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z7bp0k/new_plugin_twoslashqueriesnvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/marilari88/twoslash-queries.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-trashvim">
|
||
<a href="#new-trashvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>trashvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://raw.githubusercontent.com/ixahmedxi/trashvim/main/screenshot.png" alt="trashvim" /></p>
|
||
<p>A Neovim configuration focusing on TypeScript and web development, utilising LSP and other features to deliver a
|
||
powerful IDE like editing experience with the performance and productivity of neovim. Made by
|
||
<a href="https://github.com/ixahmedxi">@ixahmedxi</a> in honor to <a href="https://twitter.com/trashh_dev">@trashh_dev</a>, a content Twitch
|
||
streamer.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z6i0ts/trashvim_a_neovim_configuration_focused_on/">Reddit</a></li>
|
||
<li><a href="https://github.com/ixahmedxi/trashvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-zone.nvim">
|
||
<a href="#new-zone.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>zone.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/77913442/166483923-94488f6a-5a11-4d01-8ff2-a9b2df929964.gif" alt="zone.nvim" /></p>
|
||
<p>A set of screensavers for Neovim! One is special and coming back from the realm of your worst nightmares: will it hit
|
||
the angle? Will it not? You will sit and wait to see. Nice work <a href="https://github.com/tamton-aquib">@tamton-aquib</a>! 👏</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z73cq8/zonenvim_a_screensaver_plugin_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/tamton-aquib/zone.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-cellular-automaton.nvim">
|
||
<a href="#new-cellular-automaton.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>cellular-automaton.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/37074839/204104990-6ebd7767-92e9-43b9-878a-3493a08a3308.mov"
|
||
>
|
||
</video>
|
||
<p>This plugin is special. It’s not useful as it won’t help improve your productivity or leverage some new API. But it does
|
||
something pretty cool: it transforms the meaning of your text into a cellular automaton. You can <em>literally</em> break your
|
||
code now! Fantastic work by <a href="https://github.com/Eandrju">@Eandrju</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z70mg3/cellularautomatonnvim_my_first_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/Eandrju/cellular-automaton.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-AsciiTree.nvim">
|
||
<a href="#new-AsciiTree.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>AsciiTree.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/205605250-cf7eb222-ca43-437b-bc3e-be7d8938bbfc.png" alt="AsciiTree.nvim" /></p>
|
||
<p>Converts selected text into an ASCII tree using the <code>:AsciiTree</code> command. Inspired by the
|
||
<a href="https://marketplace.visualstudio.com/items?itemName=aprilandjan.ascii-tree-generator">VSCode Ascii Tree Generator plugin</a>.
|
||
Made by <a href="https://github.com/xorid">@xorid</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zaqrkv/asciitreenvim_convert_your_text_to_an_ascii_tree/">Reddit</a></li>
|
||
<li><a href="https://github.com/xorid/asciitree.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-duck.nvim">
|
||
<a href="#new-duck.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>duck.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/77913442/142396581-787616c0-92c9-4ddd-aa15-7bd218f6011b.gif" alt="duck.nvim" /></p>
|
||
<p>As <code>r/Jdj8af</code> said on Reddit, _“Wow finally a plugin that has a duck that waddles around my code!” A duck by
|
||
<a href="https://github.com/tamton-aquib">@tamton-aquib</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z8186k/ducknvim_a_duck_that_waddles_around_your_code/">Reddit</a></li>
|
||
<li><a href="https://github.com/tamton-aquib/duck.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-murmur.nvim">
|
||
<a href="#new-murmur.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>murmur.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24765272/204879903-44a0ee4e-6fad-4320-9a03-aa0c909eac11.mov"
|
||
>
|
||
</video>
|
||
<p><a href="https://github.com/nyngwang">@nyngwang</a> made a plugin that highlights word under the cursor in a super fast way,
|
||
supporting callbacks and more.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z8j4v0/murmurlua_superfast_cursorword_highlighting_and/">Reddit</a></li>
|
||
<li><a href="https://github.com/nyngwang/murmur.lua">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-sunset.nvim">
|
||
<a href="#new-sunset.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>sunset.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>An automatic theme switcher for Neovim that uses precise sunrise/sunset times based on your latitude and longitude.
|
||
Plugin by <a href="https://github.com/JManch">@JManch</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zanegx/sunsetnvim_an_automatic_sunrisesunset_theme/">Reddit</a></li>
|
||
<li><a href="https://github.com/JManch/sunset.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-legendary.nvim">
|
||
<a href="#update-legendary.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>legendary.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>🗺️ A legend for your keymaps, commands, and autocmds, with which-key.nvim integration</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/8648891/205471034-7b8cd04d-64e5-4de3-b913-c16209d9a984.gif" alt="legendary.nvim item groups" /></p>
|
||
<p><code>legendary.nvim</code> now supports item groups to create nested menus in the finder. Selecting an item group will open a new
|
||
finder searching the items within the selected group.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zcck4v/legendarynvim_now_supports_grouping_items_into/">Reddit</a></li>
|
||
<li><a href="https://github.com/mrjones2014/legendary.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-buffer_manager.nvim">
|
||
<a href="#update-buffer_manager.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>buffer_manager.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A simple plugin to easily manage Neovim buffers.</p>
|
||
</blockquote>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/48717183/205488331-fbd939bf-d8e2-42bf-bea5-8956e2e02f51.mp4"
|
||
>
|
||
</video>
|
||
<p>The plugin received a few features proposed by some users:</p>
|
||
<ul>
|
||
<li>Reorganize (reorder) buffers in the menu.</li>
|
||
<li>Add custom keybindings and commands to apply to buffers.</li>
|
||
<li>Disable/customize keybindings to access buffers.</li>
|
||
</ul>
|
||
<p>Nice work!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/zc94m9/buffer_managernvim_updates/">Reddit</a></li>
|
||
<li><a href="https://github.com/j-morano/buffer_manager.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Nothing for this week, unfortunately. Don’t hesitate to suggest something for next week!</p>
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>5 Dec 2022 GMT</pubDate></item><item><title>28 Nov 2022</title><link>https://this-week-in-neovim.org/2022/Nov/28</link><description><![CDATA[
|
||
<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
|
||
<ul>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/tree-sitter-vimdoc/pull/65">tree-sitter-vimdoc#65</a> Code blocks inside <code>vimdoc</code> (<code>:h doc</code>)
|
||
can now be highlighted with a specific language.</p>
|
||
<p>If you are using <code>nvim-treesitter</code>, then run <code>:TSUpdate help</code>.</p>
|
||
</li>
|
||
</ul>
|
||
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
|
||
<h3 id="help-neovim-builtin-options-survey">
|
||
<a href="help-neovim-builtin-options-survey">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>Neovim built-in options survey needs your contribution</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Survey to find out how people use Neovim built-in options</p>
|
||
</blockquote>
|
||
<p>Have you ever wondered, which leader key people use the most? Is it default <code>\</code>, <code><Space></code>, <code>,</code>, or something else? And
|
||
how about answering the eternal question “Tabs or spaces?”? This survey aims to gather data which will help answer this
|
||
type of questions. And it needs your help!</p>
|
||
<p>It should take at most 5 minutes of your time. Basically: download Lua script
|
||
(<a href="https://gist.github.com/echasnovski/493329c67050e9dcc5546815f31179d0">with this source code</a>), source it inside your
|
||
regular Neovim instance, copy output, paste in Google Form question, and submit. More information is inside post and
|
||
submission form.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z1tmjg/neovim_builtin_options_survey_needs_your/">Reddit</a></li>
|
||
<li><a href="https://forms.gle/ciFiJ6z1VaQe8iN56">Google form</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="new-nvim-cmp-vline">
|
||
<a href="#new-nvim-cmp-vline">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-cmp-vline</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/4954650/203307409-834e82c3-576d-41d0-ae5b-839b5e6524e1.png" alt="nvim-cmp-vline" /></p>
|
||
<p>Completion source for nvim-cmp using Vlime for Common Lisp completions. By
|
||
<a href="https://hiphish.github.io/blog/2022/11/22/introducing-nvim-cmp-vlime/">@HiPhish</a></p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z27cl1/introducing_nvimcmpvlime/">Reddit</a></li>
|
||
<li><a href="https://github.com/HiPhish/nvim-cmp-vlime">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-fsread.nvim">
|
||
<a href="#new-fsread.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>fsread.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/56817415/203623326-b12af198-e1ec-49d2-a170-c314241a8864.mp4"
|
||
>
|
||
</video>
|
||
<p>This is a new special plugin that allows to minimize the amount of data to read to understand the content. I was not
|
||
convinced at first… and after a couple of minutes, I was stunned to realize that actually works quite well! This is
|
||
probably more interesting if you are reading prose rather than code.</p>
|
||
<p>A really nice addition by <a href="https://github.com/nullchilly">@nullchilly</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z2x1t7/fsreadnvim_flow_state_reading_in_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/nullchilly/fsread.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-tailiscope.nvim">
|
||
<a href="#new-tailiscope.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>tailiscope.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="" alt="tailiscope.nvim" /></p>
|
||
<p>A plugin by <a href="https://github.com/danielvolchek">@danielvolchek</a> that uses
|
||
<a href="https://nerdcave.com/tailwind-cheat-sheet">nerdcave cheatsheet</a> and exposes the same info. Pretty useful if you’re
|
||
doing a lot of CSS and need a cheatsheet.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z37cxp/tailiscope_tailwindcss_cheatsheet_as_telescope/">Reddit</a></li>
|
||
<li><a href="https://github.com/danielvolchek/tailiscope.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-glance.nvim">
|
||
<a href="#new-glance.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>glance.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://camo.githubusercontent.com/5b767d2a8b8d1f9805b205323cbf3371c98fdafa86a70245229122e4e434f5d7/68747470733a2f2f692e696d6775722e636f6d2f38364b356c6a762e706e67" alt="glance.nvim" /></p>
|
||
<p>A pretty window for previewing, navigating and editing your LSP locations. By <a href="https://github.com/DNLHC">@DNLHC</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z3l5v0/glancenvim_a_pretty_window_for_previewing/">Reddit</a></li>
|
||
<li><a href="https://github.com/DNLHC/glance.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-netrw.nvim">
|
||
<a href="#new-netrw.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>netrw.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/3706527/203861361-2bead1ca-a8d2-46bf-b7ed-28ebc3b0589e.png" alt="netrw.nvim" /></p>
|
||
<p>It’s not because we use netrw that we cannot have nice things! This plugin adds a layer of ✨bling✨ and configuration
|
||
to your favorite file explorer. By <a href="https://github.com/prichrd">@prichrd</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z3usow/netrwnvim_its_not_because_we_use_netrw_that_we/">Reddit</a></li>
|
||
<li><a href="https://github.com/prichrd/netrw.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-nvim-ghengis">
|
||
<a href="#new-nvim-ghengis">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-ghengis</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Convenience file operations for Neovim, written in Lua. Among what it can do:</p>
|
||
<ul>
|
||
<li>Rename current file.</li>
|
||
<li>Trash current file.</li>
|
||
<li>Move selection to new file.</li>
|
||
<li>Copy filename / filepath.</li>
|
||
</ul>
|
||
<p>By <a href="https://github.com/chrisgrieser">@chrisgrieser</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z56ayv/nvimghengis_simple_file_operations_in_the_spirit/">Reddit</a></li>
|
||
<li><a href="https://github.com/chrisgrieser/nvim-genghis">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-nvim-ide">
|
||
<a href="#new-nvim-ide">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-ide</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/204158061-e621e310-23fa-49a3-ac79-883a64c9d1fc.png" alt="nvim-ide" /></p>
|
||
<p>This is a plugin for those looking for a VSCode-like experience in Neovim.</p>
|
||
<p>Some of the unique features:</p>
|
||
<ul>
|
||
<li>A rich set of default plugins which make up an IDE experience:</li>
|
||
<li>A panel which stacks plugins similar to VSCode:</li>
|
||
<li>The ability to swap groups of plugins into panels, similar to VSCode:</li>
|
||
<li>A well defined API for creating out-of-tree plugins and extending <code>nvim-ide</code>.</li>
|
||
</ul>
|
||
<p>Great work, <a href="https://github.com/ldelossa">@ldelossa</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z5j8uf/introducing_nvimide_an_ide_layer_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/ldelossa/nvim-ide">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-nvpunk">
|
||
<a href="#new-nvpunk">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvpunk</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://preview.redd.it/k23697wn2h2a1.png?width=900&format=png&auto=webp&s=c080dd6df4eee47d41dc1f4538739325c585e650" alt="nvpunk" /></p>
|
||
<p>Another out-of-the-box Neovim distribution. It includes a lot of plugins, offering full LSP and DAP support, treesitter,
|
||
completions (with snippets), Git integration and many UI elements such as a file tree, code outline, floating terminal
|
||
and a custom categorized right click menu to access some of tools built into Nvpunk. By
|
||
<a href="https://gitlab.com/gabmus">@gabmus</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z5y55x/introducing_nvpunk_a_completely_out_of_the_box/">Reddit</a></li>
|
||
<li><a href="https://gitlab.com/gabmus/nvpunk">GitLab</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-popui.nvim">
|
||
<a href="#update-popui.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>popui.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A tiny UI suite designed to make your Neovim workflow faster.</p>
|
||
</blockquote>
|
||
<p><img src="https://camo.githubusercontent.com/f69e6b5f8bccc9c53e3d3afa48ed1a763923e82af8f42f404aa66a1fecb4a28a/68747470733a2f2f692e696d6775722e636f6d2f6473664f556e312e706e67" alt="popui.nvim" /></p>
|
||
<p>The plugin got added a <em>marks manager</em>, allowing to add, navigate and delete them.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z32gih/popuinvim_new_marks_manager_module_out/">Reddit</a></li>
|
||
<li><a href="https://github.com/hood/popui.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>You probably know the <code>*</code> key, which allows you to search the word under your cursor. Pressing <code>n</code> will go to the next
|
||
occurrence, and pressing <code>N</code> will go backwards. If you press <code>*</code> on a word that is the last occurrenc in your buffer, it
|
||
will go back up to the top of your buffer to continue searching, probably moving your view by quite a lot of lines.</p>
|
||
<p>Did you know that there is a key that allows to search the word under your keyword immediatly in backwards mode?
|
||
Pressing <code>n</code> will continue searching backwards, and pressing <code>N</code> will go forward. That key is the <code>#</code> key!</p>
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>28 Nov 2022 GMT</pubDate></item><item><title>21 Nov 2022</title><link>https://this-week-in-neovim.org/2022/Nov/21</link><description><![CDATA[
|
||
<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
|
||
<ul>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/20956">#20956</a> <code>vim.secure.read()</code> and use it for <code>'exrc'</code></p>
|
||
<p>Add the <code>vim.secure.read()</code> function in Lua which prompts the user whether the given file is trusted or not. This
|
||
function is used to implement the <code>'exrc'</code> feature. By explicitly asking the user whether or not a <code>.nvimrc</code> or
|
||
<code>.exrc</code> file is trusted (and only sourcing the file if so), the most trivial security issues with the <code>'exrc'</code> options
|
||
are resolved and the function can be un-deprecated.</p>
|
||
</li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="new-redostr.nvim">
|
||
<a href="#new-redostr.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>redostr.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p>A new plugin providing an API to return the redo string used by <code>.</code>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/haolian9/redostr.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-paint.nvim">
|
||
<a href="#new-paint.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>paint.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/292349/202141321-0c501a4f-163a-4a6f-8d0d-0c79d11a05a3.png" alt="paint.nvim" /></p>
|
||
<p>Easily add additional highlights to your buffers. By <a href="https://github.com/folke">@folke</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ywql5v/paintnvim_simple_neovim_plugin_to_easily_add/">Reddit</a></li>
|
||
<li><a href="https://github.com/folke/paint.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-neoconf.nvim">
|
||
<a href="#new-neoconf.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>neoconf.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/292349/202160538-3711693c-14fd-4e8b-a9d1-ceda88bae00c.png" alt="neoconf.nvim" /></p>
|
||
<p>Yet another plugin by <a href="https://github.com/folke">@folke</a>. It’s a Neovim plugin to manage global and project-local
|
||
settings.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ywqhb0/neoconfnvim_a_neovim_plugin_to_manage_global_and/">Reddit</a></li>
|
||
<li><a href="https://github.com/folke/neoconf.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-scorpeon.nvim">
|
||
<a href="#new-scorpeon.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>scorpeon.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/82267684/201442856-896b3c30-e755-432e-a7dd-b6073d34df2a.png" alt="scorpeon.nvim" /></p>
|
||
<p>Syntax highlight using VSCode’s textmate grammar as is. By <a href="https://github.com/uga-rosa">@uga-rosa</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ywkxf4/new_plugin_syntax_highlight_using_vscodes/">Reddit</a></li>
|
||
<li><a href="https://github.com/uga-rosa/scorpeon.vim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-projections.nvim">
|
||
<a href="#new-projections.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>projections.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/30725674/201514449-64b3a132-2147-4e07-b069-f02e57d389e4.gif" alt="projections.nvim" /></p>
|
||
<p>A tiny project + sessions manager for neovim, written in lua. Sessions support is optional. Written by
|
||
<a href="https://github.com/GnikDroy">@GnikDroy</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yv2q8m/projectionsnvim_projects_sessions_manager/">Reddit</a></li>
|
||
<li><a href="https://github.com/GnikDroy/projections.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-styler.nvim">
|
||
<a href="#new-styler.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>styler.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/292349/201969839-b6c2e18d-4313-4fed-b020-5c7ebbce667b.png" alt="styler.nvim" /></p>
|
||
<p>Certainly, <a href="https://github.com/folke">@folke</a> likes making new plugins. Here’s a new one, which allows to set a
|
||
different <code>colorscheme</code> per <code>filetype</code>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yuwu3f/styler_new_plugin_to_set_a_colorscheme_per/">Reddit</a></li>
|
||
<li><a href="https://github.com/folke/styler.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-monark.nvim">
|
||
<a href="#new-monark.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>monark.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Show mode (normal, visual, etc.) right next to the cursor. By <a href="https://github.com/doums">@doums</a>:</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yy4jzk/i_share_a_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/doums/monark.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-anki.nvim">
|
||
<a href="#new-anki.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>anki.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/83038443/200166900-42f2be8c-15f3-4929-9a36-147ed8fc7720.gif" alt="anki.nvim" /></p>
|
||
<p>A new plugin, made by <a href="https://github.com/rareitems">@rareitems</a>, that allows creation of Anki notes directly from Neovim.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yy2npw/ankinvim_plugin_for_creating_and_adding_anki/">Reddit</a></li>
|
||
<li><a href="https://github.com/rareitems/anki.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-swap-split.nvim">
|
||
<a href="#new-swap-split.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>swap-split.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/202920428-eed86965-a0c7-4710-950a-1ec756a1cdb5.gif" alt="swap-split.nvim" /></p>
|
||
<p>A plugin for Neovim to help you easily swap your split buffers. By <a href="https://github.com/xorid">@xorid</a>:</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yxla04/swapsplitnvim_a_plugin_to_swap_split_buffers/">Reddit</a></li>
|
||
<li><a href="https://github.com/xorid/swap-split.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-kustomize.nvim">
|
||
<a href="#new-kustomize.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>kustomize.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A Neovim plugin written by <a href="https://github.com/Allaman">@Allaman</a> with some useful functions for working with
|
||
<a href="https://kustomize.io/">Kustomize</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/z029ez/new_plugin_kustomizenvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/Allaman/kustomize.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-mine-shaft">
|
||
<a href="#new-mine-shaft">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mine-shaft</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/202921655-4f91105e-4dda-4e72-99b2-7c1f02d4ce12.png" alt="mine-shaft" /></p>
|
||
<p>An accessible color scheme for Neovim written in Lua. By <a href="https://github.com/reubenlillie">@reubenlillie</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yzh5jc/mine_shaft_a_new_color_scheme_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/reubenlillie/mine-shaft">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-buffer-manager.nvim">
|
||
<a href="#new-buffer-manager.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>buffer-manager.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/202921744-69f58e6a-be44-4639-b048-dcbd68afa8f9.gif" alt="buffer-manager.nvim" /></p>
|
||
<p>A simple plugin to easily manage Neovim buffers. By <a href="https://github.com/j-morano">@j-morano</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yysqtc/buffer_managernvim_a_simple_plugin_to_easily/">Reddit</a></li>
|
||
<li><a href="https://github.com/j-morano/buffer_manager.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="lsp-format-modifications.nvim">
|
||
<a href="#lsp-format-modifications.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
</span>
|
||
<span>lsp-format-modifications.nvim</span>
|
||
</a>
|
||
</h3>
|
||
<p>LSP formatting, but only on modified text regions.</p>
|
||
<p>Many projects suggest contributors use an autoformatter to keep code style consistent. However, in larger projects with legacy code, there can be plenty of places where the style deviates from the autoformatter’s preference. In that case, you don’t want to format entire files — you’ll get very noisy diffs! But you also don’t want to comb through all of the changes you’ve made, manually applying the autoformatter.</p>
|
||
<p>The solution implemented by this plugin is to run the autoformatter over the changed lines as defined by the revision control system.</p>
|
||
<p>Created by <a href="https://github.com/joechrisellis">@joechrisellis</a>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/joechrisellis/lsp-format-modifications.nvim">GitHub</a></li>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yrcejf/lspformatmodificationsnvim_lsp_formatting_but/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-leap.nvim">
|
||
<a href="#update-leap.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>leap.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>An opinionated Neovim motion plugin in the series of sneak, with more to the table.</p>
|
||
</blockquote>
|
||
<p>The plugin received a quite extensive update, detailed <a href="https://www.reddit.com/r/neovim/comments/yzibdk/leapnvim_updates/">here</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yzibdk/leapnvim_updates/">Reddit</a></li>
|
||
<li><a href="https://github.com/ggandor/leap.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>21 Nov 2022 GMT</pubDate></item><item><title>14 Nov 2022</title><link>https://this-week-in-neovim.org/2022/Nov/14</link><description><![CDATA[
|
||
<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
|
||
<h3 id="guide-multi-cursor-preview">
|
||
<a href="#guide-multi-cursor-preview">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Multi-cursor in place renaming with preview</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A Youtube video showing how to do a multi-cursor renaming with <code>navigator</code> with preview. It uses the LSP and preview the
|
||
renaming of the symbol.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yon4b7/multicursor_in_place_renaming_symbol_with_preview/">Reddit</a></li>
|
||
<li><a href="https://www.youtube.com/watch?v=FpYfyYD8lAo">Youtube</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="new-nvim-laurel">
|
||
<a href="#new-nvim-laurel">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-laurel</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/46470475/200104542-629da3b9-41de-435c-b665-b609199a5fd4.png" alt="nvim-laurel" /></p>
|
||
<p>A plugin written by <a href="https://github.com/aileot">@aileot</a> that provides syntax sugar macros for Neovim. The macros are
|
||
developed with <a href="https://github.com/rydesun/fennel-language-server">fennel-language-server</a>, and tested with
|
||
<a href="https://github.com/notomo/vusted">vusted</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ysb3we/nvimlaurel_another_set_of_syntax_sugar_macros_in/">Reddit</a></li>
|
||
<li><a href="https://github.com/aileot/nvim-laurel">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-nvim-material-icon">
|
||
<a href="#new-nvim-material-icon">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-material-icon</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/46809008/201246284-316406cb-251c-484a-8c61-1d3f9390fdcb.png" alt="nvim-material-icon" /></p>
|
||
<p>A new set of colored icons for Neovim, written by <a href="https://github.com/DaikyXendo">@DaikyXendo</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yr1jht/nvimmaterialicon_better_file_icon_for_nvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/DaikyXendo/nvim-material-icon">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-scamp.nvim">
|
||
<a href="#new-scamp.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>scamp.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>This week, <a href="https://github.com/nat-418">@nat-418</a> made a new plugin to remotely edit files over SSH.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yqo76i/new_plugin_scampnvim_remotely_edit_files_using_scp/">Reddit</a></li>
|
||
<li><a href="https://github.com/nat-418/scamp.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-svart.nvim">
|
||
<a href="#new-svart.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>svart.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://gitlab.com/madyanov/svart.nvim/uploads/e18283000accf0281d34ac77b1a46aa4/output.gif" alt="svart.nvim" /></p>
|
||
<p>A new motion plugin written by <a href="https://gitlab.com/madyanov">@madyanov</a>. The plugin is very similar to
|
||
<a href="https://github.com/phaazon/hop.nvim">hop.nvim</a>’s <code>:HopPatternMW</code> mode, if you’re used to it. It prompts the user for a
|
||
pattern to search and allows you to select which one you want to jump.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yq9snx/svartnvim_jump_to_any_location/">Reddit</a></li>
|
||
<li><a href="https://gitlab.com/madyanov/svart.nvim">GitLab</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-NeoCodeGui">
|
||
<a href="#new-NeoCodeGui">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>NeoCodeGui</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/506592/201532583-b5a95b62-9df0-43e9-9df5-392eb3d93abf.mp4"
|
||
>
|
||
</video>
|
||
<p><a href="https://github.com/Sewdohe">@Sewdohe</a> worked on making a GUI installer for Neovim. The plugin is stil experimental and
|
||
will probably receive a release update to make it completely available in the upcoming weeks.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ytlemw/working_on_a_gui_installer_for_my_neovim_config/">Reddit</a></li>
|
||
<li><a href="https://github.com/Sewdohe/NeoCodeGUI">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-nvim-scroll-bar">
|
||
<a href="#update-nvim-scroll-bar">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-scroll-bar</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Extensible Neovim Scrollbar.</p>
|
||
</blockquote>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/889383/201465733-e93e4752-d007-4e4c-9d65-9776826b3a25.mp4"
|
||
>
|
||
</video>
|
||
<p><code>nvim-scrollbar</code> can now display git changes thanks to <a href="https://github.com/lewis6991/gitsigns.nvim">gitsigns.nvim</a>.
|
||
There is colorful information about added, removed, and changed lines in the scrollbar.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yt0v35/nvimscrollbar_and_gitsignsnvim_integration/">Reddit</a></li>
|
||
<li><a href="https://github.com/petertriho/nvim-scrollbar">GitHub</a></li>
|
||
<li><a href="https://github.com/petertriho/nvim-scrollbar/pull/60">PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-snippet-converter.nvim">
|
||
<a href="#update-snippet-converter.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>snippet-converter.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><code>snippet-converter.nvim</code> is a plugin that allows you to parse, transform and convert snippets supporting a variety of
|
||
different formats.</p>
|
||
</blockquote>
|
||
<p>The new version <strong>1.4.0</strong> now supports snippets created for the Emacs snippet engine YASnippet! If you’re an Emacs user
|
||
and want to keep using snippet collections such as
|
||
<a href="https://github.com/AndreaCrotti/yasnippet-snippets">yasnippet-snippets</a>, that is now possible by simple converting
|
||
them to a format supported by your Neovim snippet engine of choice (e.g. <code>vscode_luasnip</code> for LuaSnip).</p>
|
||
<ul>
|
||
<li><a href="https://github.com/smjonas/snippet-converter.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-haskell-tools.nvim">
|
||
<a href="#update-haskell-tools.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>haskell-tools.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Supercharge your Haskell experience in Neovim!</p>
|
||
</blockquote>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/506592/201532024-76e87d8c-6f0f-46cc-bc23-11c2ceb1ad91.mp4"
|
||
>
|
||
</video>
|
||
<p>The plugin got a set of new features included recently, among:</p>
|
||
<ul>
|
||
<li>Hole-driven development.</li>
|
||
<li>GHCi REPL.</li>
|
||
<li>Open project/package files.</li>
|
||
</ul>
|
||
<p>A nice release; congrats!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yqt92j/haskelltoolsnvim_new_feature_release_120/">Reddit</a></li>
|
||
<li><a href="https://github.com/MrcJkb/haskell-tools.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-legendary.nvim">
|
||
<a href="#update-legendary.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>legendary.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A legend for your keymaps, commands, and autocmds, with which-key.nvim integration.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/8648891/200827633-7009f5f3-e126-491c-88bd-73a0287978c4.gif" alt="legendary.nvim" /></p>
|
||
<p><code>legendary.nvim</code> just merged a new major version, which includes some new features, some API changes, and much better
|
||
performance (especially startup performance).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yqiefg/legendarynvim_now_much_faster_with_new_features/">Reddit</a></li>
|
||
<li><a href="https://github.com/mrjones2014/legendary.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-sj.nvim">
|
||
<a href="#update-sj.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>sj.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Search based navigation combined with quick jump features.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/111681540/197946515-e2818592-bf3d-439a-99f3-8c9eabd2fbce.gif" alt="sj.nvim" /></p>
|
||
<p>v0.6 was merged to the <code>main</code> branch of the project. The new feature set includes:</p>
|
||
<ul>
|
||
<li>Smartcase for <code>vim*</code> patterns.</li>
|
||
<li>No separator anymore.</li>
|
||
<li>Select the window used for the search first.</li>
|
||
</ul>
|
||
<p>A nice little update, then :).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ytl4j9/sjnvim_search_based_navigation_combined_with/">Reddit</a></li>
|
||
<li><a href="https://github.com/woosaaahh/sj.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-colorful-winseps.nvim">
|
||
<a href="#update-colorful-winseps.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>colorful-winseps.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Make your nvim window separators colorful.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/201532707-83207042-e010-463e-8da7-90634468980d.png" alt="colorful-winseps.nvim" /></p>
|
||
<p>The plugin receives a bunch of changes, among bug fixes and new features:</p>
|
||
<ul>
|
||
<li>Performance improvements.</li>
|
||
<li>A new API to show and hide the win separator: <code>NvimSeparatorShow</code> and <code>NvimSeparatorDel</code>.</li>
|
||
<li>Two new callbacks: <code>create_event</code> (called when the color separator is created) and <code>close_event</code> (called when the
|
||
color separator is deleted).</li>
|
||
</ul>
|
||
<p>Nice one!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ytbfsr/colorfulwinsepnvim_updates$/">Reddit</a></li>
|
||
<li><a href="https://github.com/nvim-zh/colorful-winsep.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Nothing for this week… 😦</p>
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>14 Nov 2022 GMT</pubDate></item><item><title>7 Nov 2022</title><link>https://this-week-in-neovim.org/2022/Nov/7</link><description><![CDATA[
|
||
<h1 id="neovim-core-updates"><a href="#neovim-core-updates">Neovim Core updates</a></h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<hr />
|
||
|
||
<h1 id="neovim-plugin-updates"><a href="#neovim-plugin-updates">Neovim Plugin Community updates</a></h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
|
||
<h3 id="help-legendary.nvim">
|
||
<a href="#help-legendary.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>legendary.nvim is requesting community feedback</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>🗺️ A legend for your keymaps, commands, and autocmds, with which-key.nvim integration</p>
|
||
</blockquote>
|
||
<p><code>legendary.nvim</code> will be introducing semantic versioning via git tags in order to safely allow for a large refactor/rewrite.
|
||
Feedback is requested to help make decisions during the rewrite.
|
||
If you are a <code>legendary.nvim</code> user, please provide feedback via this <a href="https://github.com/mrjones2014/legendary.nvim/discussions/188">GitHub discussion</a>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/mrjones2014/legendary.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
|
||
<h3 id="guide-autopairs-poll">
|
||
<a href="#guide-autopairs-poll">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>autopairs-poll</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A poll was open on Reddit to get feedback about which autopairs plugin you are using. You still have some days left to
|
||
reply!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ylqw5h/which_autopairs_plugin_are_you_using/">Reddit poll</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="guide-filtering-diagnostics">
|
||
<a href="#guide-filtering-diagnostics">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Filter Neovim diagnostics by severity</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A <a href="https://blob42.xyz/blog/neovim-diagnostic-filtering/">tutorial / blog article</a> about how to filter Neovim diagnostics
|
||
by severity.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ynkvld/tutorial_filtering_neovim_diagnostics_based_on/">Reddit</a></li>
|
||
<li><a href="https://blob42.xyz/blog/neovim-diagnostic-filtering/">Blog post</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
|
||
<h3 id="new-oh-lucy.nvim">
|
||
<a href="#new-oh-lucy.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>oh-lucy.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/200199747-8b7eb902-3783-4026-b1d7-4e802afa6970.png" alt="oh-lucy.nvim" /></p>
|
||
<p>We all love a new colorscheme, so here’s a new one, made by <a href="https://github.com/Yazeed1s">@Yazeed1s</a>! Inspired by a
|
||
<a href="https://github.com/hermitter/oh-lucy-vscode-theme">VSCode plugin of the same name</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ylhhqz/new_colorscheme/">Reddit</a></li>
|
||
<li><a href="https://github.com/Yazeed1s/oh-lucy.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-ascii.nvim">
|
||
<a href="#new-ascii.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>ascii.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/200199798-9f7a72e6-936e-464d-94f6-9902c3c82502.png" alt="ascii.nvim" /></p>
|
||
<p>A new plugin acting as a collection of ASCII arts (in the form of a Lua table). Who will be the one writing a plugin
|
||
that randomly generate string names to pick those and display them as dashboard? Nice work,
|
||
<a href="https://github.com/MaximilianLloyd">@MaximilianLloyd</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ylee4i/asciinvim_art_for_your_dashboard/">Reddit</a></li>
|
||
<li><a href="https://github.com/MaximilianLloyd/ascii.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-awesome-nvim-colorschemes">
|
||
<a href="#new-awesome-nvim-colorschemes">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>awesome-nvim-colorschemes</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Did I mention we all like colorschemes? Guess what: <a href="https://github.com/AbdelrahmanDwedar">@AbdelrahmanDwedar</a> made a
|
||
GitHub repository to list some interesting colorschemes. The list is currently very slim, so feel free to contribute.</p>
|
||
<p>A great alternative is <a href="https://github.com/rockerBOO/awesome-neovim#colorscheme">awesome-neovim</a>, which has a long list
|
||
of nice looking colorschemes.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ykpyl7/github_abdelrahmandwedarawesomenvimcolorschemes_a/">Reddit</a></li>
|
||
<li><a href="https://github.com/AbdelrahmanDwedar/awesome-nvim-colorschemes">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-nvim-unception">
|
||
<a href="#new-nvim-unception">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-unception</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/25990267/170632310-8bbee2fa-672b-4385-9dea-7ed4501a0558.mp4"
|
||
>
|
||
</video>
|
||
<p>Even though that plugin was written a few months back, we never introduced it in TWiN, so here we go!
|
||
A plugin written by <a href="https://github.com/samjwill">@samjwill</a> that leverages Neovim’s built-in RPC
|
||
functionality to simplify opening files from within Neovim’s terminal emulator without
|
||
unintentionally nesting sessions.</p>
|
||
<p>The plugin now supports Git commits, multiple sessions, and free from reliance on external tools!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ykk40d/nvimunception_update_now_supports_git_commits/">Reddit</a></li>
|
||
<li><a href="https://github.com/samjwill/nvim-unception">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-popui.nvim">
|
||
<a href="#new-popui.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>popui.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/200200361-7c9f138d-00dd-4678-a5ad-f0f32e1cd475.png" alt="popui.nvim" /></p>
|
||
<p>This plugin wasn’t introduced before it was released.
|
||
A tiny (currently 337 LoC) collection of custom UI utilities, written by <a href="https://github.com/hood">@hood</a>, to make your
|
||
NeoVim workflow faster. It consists of two (ui-overrider, input-overrider) utilities which override Neovim’s default
|
||
<code>vim.ui.select</code> and <code>vim.ui.input</code>, spawning a floating menu right where your cursor resides, and a
|
||
diagnostics-navigator utility to quickly navigate (and jump to) LSP diagnostics issues in the current buffer.</p>
|
||
<p>The plugin is also dependency free, now!</p>
|
||
<p>Alternatives are <a href="https://github.com/stevearc/dressing.nvim">dressing.nvim</a> and
|
||
<a href="https://github.com/folke/noice.nvim">noice.nvim</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yjaqt3/popuinvim_finally_depsfree/">Reddit</a></li>
|
||
<li><a href="https://github.com/hood/popui.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-portal.nvim">
|
||
<a href="#new-portal.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>portal.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/2467016/199164298-1083fdae-4d9c-480c-9962-41a853127e80.gif" alt="portal.nvim" /></p>
|
||
<p>Portal is a plugin that aims to build upon and enhance existing jumplist motions (i.e. <kbd>c-o</kbd> and
|
||
<kbd>c-i</kbd>) by surfacing contextual information with the use of
|
||
<a href="https://github.com/cbochs/portal.nvim#portals">portals</a>, and providing multiple jump options by
|
||
means of <a href="https://github.com/cbochs/portal.nvim#queries">queries</a>. That is a very interesting new kind of moving around;
|
||
definitly worth a try!</p>
|
||
<p>Plugin by <a href="https://github.com/cbochs">@cbochs</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yj9g9l/introducing_portalnvim_a_plugin_like_leap_but_for/">Reddit</a></li>
|
||
<li><a href="https://github.com/cbochs/portal.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-easy-action">
|
||
<a href="#new-easy-action">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>easy-action</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/29982556/198888179-22180ad5-6248-45ef-b494-7051b672dd80.mp4"
|
||
>
|
||
</video>
|
||
<p>A motionless motion plugin! Yep, that’s a thing. Take a motion plugin, like
|
||
<a href="https://github.com/ggandor/leap.nvim">leap.nvim</a> or <a href="https://github.com/phaazon/hop.nvim">hop.nvim</a>, and make it
|
||
possible to yank, paste, and perform various actions using the typical hints, but without moving your cursor. Plugins
|
||
can provide that, but <code>easy-action</code> does it for various plugins with a different way (plugins like Leap and Hop might
|
||
already support it, or will, but it’s nice to see something doing it using plugins’ API).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yibsdi/perform_an_action_on_where_you_can_see/">Reddit</a></li>
|
||
<li><a href="https://github.com/Weissle/easy-action">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="new-nvim-file-location">
|
||
<a href="#new-nvim-file-location">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-file-location</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/45423661/200167439-cbdc2a41-8e45-466b-b74c-83a8b474a24b.gif" alt="nvim-file-location" /></p>
|
||
<p>This plugin written by <a href="https://github.com/diegoulloao">@diegoulloao</a> allows to yank the exact location of the cursor
|
||
in the current buffer. Pretty convenient.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ynymcv/nvimfilelocation/">Reddit</a></li>
|
||
<li><a href="https://github.com/diegoulloao/nvim-file-location">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
|
||
<h3 id="update-silicon.lua">
|
||
<a href="#update-silicon.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>silicon.lua</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><code>silicon.lua</code> is a lua plugin for neovim to generate beautiful images of code snippet using <a href="https://github.com/aloxaf/silicon">silicon</a>.</p>
|
||
</blockquote>
|
||
<p><img src="" alt="silicon.lua" /></p>
|
||
<p>The plugin can now automagically matches editor’s theme, which means that you will get screenshots that look like what
|
||
you have in your editor. Pretty slick!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ym17wv/siliconlua_can_now_automagically_match_editors/">Reddit</a></li>
|
||
<li><a href="https://github.com/narutoxy/silicon.lua">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-bob">
|
||
<a href="#update-bob">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>bob</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Bob is a cross-platform and easy-to-use Neovim version manager, allowing for easy switching between versions right
|
||
from the command line.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/33547558/164478344-2707eb41-5b26-452e-ba05-c18282a3503a.gif" alt="bob" /></p>
|
||
<p><strong>Bob v1.2.0</strong> was released! Main improvements of <strong>v1.2.0</strong>:</p>
|
||
<ul>
|
||
<li>Hash-Support: By providing a commit hash from Neovim’s repo you can effortlessly build Neovim from source.</li>
|
||
<li><a href="https://aur.archlinux.org/packages/bob-bin">Added AUR package called <code>bob-bin</code></a>.</li>
|
||
<li>Stability improvements.</li>
|
||
</ul>
|
||
<p>That is such a great update!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yieu0l/bob_v120_has_been_released/">Reddit</a></li>
|
||
<li><a href="https://github.com/MordechaiHadad/bob">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h3 id="update-other.nvim">
|
||
<a href="#update-other.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>other.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Open alternative files for the current buffer</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/200201311-efface4d-248b-4d55-8cd6-8b4db6238425.png" alt="other.nvim" /></p>
|
||
<p>Some improvements for the built-in rails-mappings, including support for the <code>minitest</code> and <code>rspec</code> test frameworks.
|
||
There’s also a visual overhaul of the file picker which now support shortcut keys to open the desired file more quickly.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ynuqe4/update_to_othernvim_extensive_rails_mappings_and/">Reddit</a></li>
|
||
<li><a href="https://github.com/rgroli/other.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Have you migrated from <a href="https://github.com/williamboman/nvim-lsp-installer"><strong>nvim-lsp-installer</strong></a> to <a href="https://github.com/williamboman/mason.nvim"><strong>mason.nvim</strong></a>? <code>nvim-lsp-installer</code> installed servers to a different location than <code>mason.nvim</code> - remember to clean up the old installation directory to free up disk space! The default installation directory of <code>nvim-lsp-installer</code> are:</p>
|
||
<ul>
|
||
<li>Unix: <code>~/.local/share/nvim/lsp_servers</code></li>
|
||
<li>Windows: <code>~\AppData\Local\nvim-data\lsp_servers</code></li>
|
||
</ul>
|
||
<p>These directories can safely be removed if you’re no longer using <code>nvim-lsp-installer</code>!</p>
|
||
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>7 Nov 2022 GMT</pubDate></item><item><title>31 Oct 2022</title><link>https://this-week-in-neovim.org/2022/Oct/31</link><description><![CDATA[<h1 id="twin-updates"><a href="#twin-updates">This Week In Neovim updates</a></h1>
|
||
<blockquote>
|
||
<p>Woh, a new section?! No, this is just an exceptional section that will spawn from time to time to provide you with some
|
||
information about <a href="/">https://this-week-in-neovim.org</a> itself.</p>
|
||
</blockquote>
|
||
<p>This <strong>TWiN #16</strong> is a special weekly update, so I need to make a small announcement in your feed to ensure people read
|
||
this right away. I (<a href="https://github.com/phaazon">@phaazon</a>) took the time this week to update the Rust library I use to
|
||
parse the weekly updates (called <code>twin</code>). Next week, for <strong>TWiN #17</strong>, the contribution process changes a bit, following
|
||
the changes I introduced in <code>twin-0.2</code>. If you have already contributed to TWiN or plan to, then you will probably want
|
||
to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#structure-and-architecture">the following updated section on the
|
||
README</a>. If not, jump directly to
|
||
<a href="#neovim-core-updates">the next section</a>!</p>
|
||
<h1 id="neovim-core-updates"><a href="#neovim-core-updates">Neovim Core updates</a></h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<h1 id="neovim-plugin-updates"><a href="#neovim-plugin-updates">Neovim Plugin Community updates</a></h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<hr />
|
||
<h3 id="guide-noice.nvim">
|
||
<a href="#guide-noice.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>noice.nvim is looking for feedback</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>The plugin has been around for a couple of weeks now, and it’s time to provide some feedback on it! A poll was opened on
|
||
Reddit <a href="https://www.reddit.com/r/neovim/comments/yczda4/need_some_feedback_on_noice/">here</a> to ask people whether they
|
||
would like a single plugin or several ones to split the features. The first two options,
|
||
<em>“I’m fine with all functionality in one plugin”</em> and <em>“I prefer multiple plugins”</em> are pretty even! The poll is over
|
||
but feedback is always appreciated.</p>
|
||
<p>The background discussion is interesting, because it’s about whether we want an ecosystem thriving of new, small
|
||
plugins, or whether we want bigger, more monolithic plugins.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yczda4/need_some_feedback_on_noice/">Reddit discussion</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<h3 id="guide-neovim-rust-lua">
|
||
<a href="#guide-neovim-rust-lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
</span>
|
||
<span>An introduction and sample neovim configuration for Rust development in Lua</span>
|
||
</a>
|
||
</h3>
|
||
<p>This living blog post introduces piece by piece a sample Neovim configuration to
|
||
kickstart your configuration targeting Rust development. The blog was recently
|
||
updated to remove all VimL and uses Lua as its main configuration language.</p>
|
||
<p>The reader will learn how to setup
|
||
<a href="https://github.com/wbthomason/packer.nvim">packer.nvim</a> and install plugins such as <a href="https://github.com/simrat39/rust-tools.nvim">rust-tools.nvim</a>
|
||
to take full advantage of the built-in LSP of neovim.</p>
|
||
<ul>
|
||
<li><a href="https://sharksforarms.dev/posts/neovim-rust/">Blog</a></li>
|
||
<li><a href="https://github.com/sharksforarms/neovim-rust">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="guide-git-poll">
|
||
<a href="#guide-git-poll">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Poll about Git in Neovim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>On Reddit, <a href="https://www.reddit.com/r/neovim/comments/ycuome/which_git_plugin_do_you_use/">a poll was opened</a> to discuss
|
||
how people use Git in their Neovim workflow. You still have some time to answer the poll if you haven’t already! (but
|
||
hurry, it’s about to be closed). We will be discussing the result in the next TWiN.</p>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-query-secretary">
|
||
<a href="#new-query-secretary">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>query-secretary</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/102876811/198029879-dbb552de-05f5-41c0-baa4-eca3d718db98.mp4"
|
||
>
|
||
</video>
|
||
<p>A plugin helping you to write tree-sitter queries. By <a href="https://github.com/ziontee113">@ziontee113</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ydy23f/query_secretary_plugin_that_assists_you_in/">Reddit</a></li>
|
||
<li><a href="https://github.com/ziontee113/query-secretary">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-zippy.nvim">
|
||
<a href="#new-zippy.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>zippy.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/80820813/198012504-11da9e43-4bdd-4982-b37f-7c8670e91d37.png" alt="zippy.nvim" /></p>
|
||
<p><a href="https://github.com/PatschD">@PatschD</a> made a plugin to help with debugging by inserting meaningful print statements. A
|
||
plugin similar to the <a href="https://marketplace.visualstudio.com/items?itemName=ChakrounAnas.turbo-console-log">VS Code Turbo Console
|
||
log</a> extension.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ydw7l6/zippynvim_automate_debug_messages/">Reddit</a></li>
|
||
<li><a href="https://github.com/PatschD/zippy.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-silicon.lua">
|
||
<a href="#new-silicon.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>silicon.lua</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/79555780/198016165-7a47ac6c-e329-4025-8d66-f9b34bd52658.mp4"
|
||
>
|
||
</video>
|
||
<p>A new plugin by <a href="https://github.com/NarutoXY">@NarutoXY</a> to create screenshots of your code. Very similar to
|
||
<a href="https://github.com/krivahtoo/silicon.nvim">silicon.nvim</a>, but this new plugin is written in Lua (versus Rust for the
|
||
other one).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ydvzd8/siliconlua_snap_that_snippet_right_in_the_editor/">Reddit</a></li>
|
||
<li><a href="https://github.com/narutoxy/silicon.lua">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-haskell-tools.nvim">
|
||
<a href="#new-haskell-tools.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>haskell-tools.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/198252574-5b63ab84-5179-4b7c-a190-e7a1295f53f1.png" alt="haskell-tools.nvim" /></p>
|
||
<p><a href="https://github.com/MrcJkb">@MrcJkb</a> made a plugin for Haskellers wanting to leverage the power of both Haskell and
|
||
Neovim! Besides support for the famous <a href="https://github.com/haskell/haskell-language-server">HLS</a>, the plugin configures
|
||
the LSP client with sane and good defaults, like automatically refreshing lenses, adding the right capabilities
|
||
depending on your installed plugins, etc.</p>
|
||
<p>The plugin also supports <a href="https://hoogle.haskell.org/">Hoogle</a> so that you can search what’s under your cursor, and a
|
||
list of planned features is available
|
||
<a href="https://github.com/MrcJkb/haskell-tools.nvim/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement">here</a>.</p>
|
||
<p>Amazing work! 👏</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ydfsv9/new_plugin_supercharge_your_haskell_experience_in/">Reddit</a></li>
|
||
<li><a href="https://github.com/MrcJkb/haskell-tools.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-grapple.nvim">
|
||
<a href="#new-grapple.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>grapple.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/2467016/197600951-1f5ab942-e8b5-43b7-b53b-c97b939d3f78.mov"
|
||
>
|
||
</video>
|
||
<p>A <a href="https://github.com/ThePrimeagen/harpoon">harpoon</a> and <a href="https://github.com/kwkarlwang/bufjump.nvim">bufjump.nvim</a>
|
||
inspired plugin, written by <a href="https://github.com/cbochs">@cbochs</a>. The plugin allows you to mark files you want to
|
||
eventually go back to, and provides several ways of moving around your marked buffers.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yd6ncy/grapplenvim_a_simple_plugin_for_keeping_important/">Reddit</a></li>
|
||
<li><a href="https://github.com/cbochs/grapple.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mellow.nvim">
|
||
<a href="#new-mellow.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mellow.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/1040966/196249265-d122fee2-b14f-4c80-9678-f949487755d4.png" alt="mellow.nvim" /></p>
|
||
<p>Do you need to rest your eyes with some nice looking, sweet and soothing colors? This new theme by
|
||
<a href="https://github.com/kvrohit">@kvrohit</a> was made for you! There is something calming and relaxing with this colorscheme.
|
||
A really nice addition!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yc9gch/mellow_a_soothing_dark_colorscheme/">Reddit</a></li>
|
||
<li><a href="https://github.com/kvrohit/mellow.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-normalascii.nvim">
|
||
<a href="#new-normalascii.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>normalascii.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>It provides several Nvim lua APIs to turn on the <code>ascii mode</code> of Rime based on Fcitx5’s DBUS API. By <a href="https://github.com/haolian9">@haolian9</a>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/haolian9/normalascii.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-leap-spooky.nvim">
|
||
<a href="#new-leap-spooky.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>leap-spooky.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://github.com/ggandor/leap-spooky.nvim/blob/media/showcase.gif?raw=true" alt="leap-spooky.nvim" /></p>
|
||
<p>Spooky is a <a href="https://github.com/ggandor/leap.nvim">Leap</a> extension that allows for remote operations on Vim’s native text objects. It exposes atomic bundles of (virtual or actual) leaping motions and text object selections, so that you can e.g. yank a paragraph without leaving your position (<code>yarp<leap></code>), or fix a typo in a very short, atomic command sequence, even from another window (<code>ciRw<leap></code>). The origin of this idea can be traced to the “leaping motions” feature of <a href="https://github.com/goldfeld/vim-seek">vim-seek</a>. (The name clash is a funny coincidence. We should probably have named our feature “seeking motions” in exchange…)</p>
|
||
<p>The plugin is highly experimental at the moment - it would be great to gather as much feedback as possible. (<a href="https://github.com/ggandor">@ggandor</a>)</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ygfcw1/leapspooky_actions_at_a_distance/">Reddit</a></li>
|
||
<li><a href="https://github.com/ggandor/leap-spooky.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-scratch.nvim">
|
||
<a href="#new-scratch.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>scratch.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/95092244/198858745-b3bc9982-e3e8-44fb-b690-7edca030235e.gif" alt="scratch.nvim" /></p>
|
||
<p><a href="https://github.com/LintaoAmons">@LintaoAmons</a>’s very first plugin!, allowing to create temporary (scratch) buffers.
|
||
Useful when wanting REPL workflows, for instance.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ygfkl7/my_first_plugin_scratchnvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/LintaoAmons/scratch.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-NeoSolarized.nvim">
|
||
<a href="#update-NeoSolarized.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>NeoSolarized.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>NeoSolarized colorscheme for NeoVim with full transparency.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/70003855/197702159-2ca089e9-38d3-47dd-8069-58271e738a3d.png" alt="NeoSolarized.nvim" /></p>
|
||
<p>The theme was introduced in <a href="https://this-week-in-neovim.org/2022/Aug/08#new-NeoSolarized.nvim">TWiN #4</a>, but it
|
||
recently received some updates, like a better support for other plugins and better syntax highlightings, especially for
|
||
some specific terminals (Alacritty, Kitty and Konsole).</p>
|
||
<p>It still looks pretty good!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/ycytd2/neosolarizednvim_a_dark_and_light_neovim_theme/">Reddit</a></li>
|
||
<li><a href="https://github.com/Tsuzat/NeoSolarized.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-mini.nvim">
|
||
<a href="#update-mini.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mini.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>The ‘mini.nvim’ plugin now comes not only as a library of independent Lua modules. Thanks to the new dual distribution
|
||
model, all modules are now also available as standalone plugins in separate Git repositories. They will be updated in
|
||
sync with ‘mini.nvim’ using only commits relevant to the module.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yh7ao1/mininvim_now_has_dual_distribution_model_welcome/">Reddit</a></li>
|
||
<li><a href="https://github.com/echasnovski/mini.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-hop.nvim">
|
||
<a href="#update-hop.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>hop.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Neovim motions on speed!</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/176887058-f9c981f5-c57d-4ecd-96a4-d51e7e5101b2.png" alt="hop.nvim" /></p>
|
||
<p><code>Hop</code> was released in version <code>v2.0.3</code>. This new version is mostly about fixing some bugs and optimizing performances:</p>
|
||
<ul>
|
||
<li>Fix quitting in commands using <code>multi_windows = true</code> when a float is present.</li>
|
||
<li>Fix broken matching when magic chars are included in <code>opts.keys</code>.</li>
|
||
<li>Support motion with count, as in <code>2dw</code>.</li>
|
||
<li>Fix incorrect behavior in multi-byte chars.</li>
|
||
<li>Link <code>HopPreview</code> to <code>IncSearch</code> by default. Colorschemes can still override that (no change for them).</li>
|
||
<li>Cleanup some regexes by computing them once.</li>
|
||
<li>Lazy import all the modules.</li>
|
||
</ul>
|
||
<p>The next batch of updates will focus on virtual windows (popups, floats, etc.) which sometimes cause invalid ID buffer
|
||
errors and such, and the column bug that is present if you use some specific commands on empty lines / at the end of
|
||
lines.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/phaazon/hop.nvim/releases/tag/v2.0.3">v2.0.3 release notes</a></li>
|
||
<li><a href="https://github.com/phaazon/hop.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Are you tired of having your cursor jump all around the place when you cross the path of a line that is shorter than the
|
||
line you are currently on? Some people can be upset with that, so there is a drastic solution: <code>:set virtualedit=all</code>.
|
||
This will cause Neovim to authorize you to edit <em>anywhere</em> in the view (not only the buffer). What it means is that you
|
||
can put your cursor in an empty zone, press your insert key and add text. It will automatically fill the left part of
|
||
the line with empty space.</p>
|
||
<p>A less drastic option of <code>virtualedit</code> is the <code>onemore</code> variant (<code>:set virtualedit=onemore</code>), which allows you to edit
|
||
past the end of the line by one character. Pressing <code>$</code> will put your cursor on the last character, and pressing <code>l</code> (or
|
||
whatever key is bound for you) will move the cursor by end extra character.</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>31 Oct 2022 GMT</pubDate></item><item><title>24 Oct 2022</title><link>https://this-week-in-neovim.org/2022/Oct/24</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/20428">#20428</a> removes <code>filetype.vim</code> in favor of the now default filetype.lua.</p>
|
||
<p>(If you install from the repo, make sure to clean out <code>/usr/local/share/nvim/runtime before</code> make install.)
|
||
The filetype detection logic and tests still align with Vim, so additions or changes still need to be contributed
|
||
there first and then ported to Neovim.</p>
|
||
</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<h3 id="help-import.nvim">
|
||
<a href="#help-import.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
</span>
|
||
<span>import.nvim is looking for feedback</span>
|
||
</a>
|
||
</h3>
|
||
</h3>
|
||
<p><a href="https://github.com/miversen33">@miversen33</a> is looking for feedback regarding <code>import.nvim</code> next features. The list of things to try out can be found
|
||
<a href="https://github.com/miversen33/import.nvim/issues/15">here</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y7pimd/request_importnvim_feature_feedback/">Reddit</a></li>
|
||
<li><a href="https://github.com/miversen33/import.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<h3 id="guide-NeoMinimap">
|
||
<a href="#guide-NeoMinimap">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>NeoMinimap</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/vNyQBWfSh7c" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p>This is a journey into creating your own “minimap” using tree-sitter queries regular Vim regexes.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y88xy3/neominimap_plugins_usage_configuration_new/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="guide-neovim-kangaroo">
|
||
<a href="#guide-neovim-kangaroo">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>neovim-kangaroo</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/2KLFjhGjmbI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||
<p>A video introduction to <a href="https://github.com/ggandor/leap.nvim">leap.nvim</a> by <a href="https://www.youtube.com/channel/UCjREVt2ZJU8ql-NC9Gu-TJw">Code to The Moon</a>. The
|
||
video explains what is the plugin, its relationship to <code>lightspeed.nvim</code> and <code>sneak</code>, what you can do with it, etc. It
|
||
doesn’t go over the <a href="https://github.com/easymotion/vim-easymotion">EasyMotion</a> based plugins (such as
|
||
<a href="https://github.com/phaazon/hop.nvim">Hop</a>), so if you are looking for a comparison, that is not the right video.</p>
|
||
<p>Still a good watch if you are interested in sneak based motions.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yahvm6/become_a_neovim_kangaroo/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-nvim-zond">
|
||
<a href="#new-nvim-zond">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-zond</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/347098/197293449-01b6ffb0-e41c-4152-bec6-64699476d13b.png" alt="nvim-zond" /></p>
|
||
<p><a href="https://github.com/mrded">@mrded</a> made a plugin to locate a file and run a command on it. It uses Telescope behind the scene to locate the file.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/yagpf6/i_made_a_plugin_which_searches_a_file_and_runs_a/">Reddit</a></li>
|
||
<li><a href="https://github.com/mrded/nvim-zond">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-PyGithubDiary">
|
||
<a href="#new-PyGithubDiary">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>PyGithubDiary</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/etorth">@etorth</a>’s first plugin, a remote one, to keep your diary on GitHub – uses
|
||
<a href="https://github.com/PyGithub/PyGithub">PyGithub</a>. The plugin is written in VimL so it should also work on Vim, not only
|
||
Neovim.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y993h5/pygithubdiary_keep_diary_on_github_supported_by/">Reddit</a></li>
|
||
<li><a href="https://github.com/etorth/PyGithubDiary">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-truedark-vim">
|
||
<a href="#new-truedark-vim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>truedark-vim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/197391383-1fc40ac2-4898-4c04-abb3-de41b68db85c.png" alt="truedark-vim" /></p>
|
||
<p>A dark theme using 256-xterm colors and pure, pitch black background that even Riddick would like. By <a href="https://github.com/bratpeki">@bratpeki</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y804xi/truedarkvim_a_true_dark_theme_for_vim_duh/">Reddit</a></li>
|
||
<li><a href="https://github.com/bratpeki/truedark-vim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-dir-telescope.nvim">
|
||
<a href="#new-dir-telescope.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>dir-telescope.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/47204120/196644189-ceb442bd-9528-4069-89dc-511ab1c98788.mp4"
|
||
>
|
||
</video>
|
||
<p>A pretty exciting plugin: it allows to use <code>Telescope</code> in a specified directory. First target is probably people working
|
||
in big monorepositories (eh, that’s my case at work!). Really nice addition to the ecosystem, <a href="https://github.com/princejoogie">@princejoogie</a>!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y7xhll/introducing_dirtelescopenvim_find_or_grep_in_a/">Reddit</a></li>
|
||
<li><a href="https://github.com/princejoogie/dir-telescope.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-Codewindow.nvim">
|
||
<a href="#new-Codewindow.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>Codewindow.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/197391796-5562d622-c1f2-4cbb-849b-d53a582605a9.png" alt="Codewindow.nvim" /></p>
|
||
<p>Eh, <a href="https://github.com/gorbit99">@gorbit99</a> made a new minimap plugin! It is closely integrated with tree-sitter and the builtin LSP to display more
|
||
information to the user.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y6rlc4/introducing_codewindownvim_a_new_minimap_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/gorbit99/codewindow.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-scribe.nvim">
|
||
<a href="#new-scribe.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>scribe.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/7123333/195979769-5ff8cfb4-c7dd-4897-89fa-9c6705659f0f.gif" alt="scribe.nvim" /></p>
|
||
<p>A note taking plugin, by <a href="https://github.com/Ostralyan">@Ostralyan</a>. It allows to open and edit the same (diary) file. It belongs to the family of
|
||
plugins for organization, like <a href="https://github.com/nvim-neorg/neorg">neorg</a>,
|
||
<a href="https://github.com/vimwiki/vimwiki">vimwiki</a>, <a href="https://github.com/jceb/vim-orgmode">vim-org-mode</a> or
|
||
<a href="https://github.com/phaazon/mind.nvim">mind.nvim</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y6o2zx/a_simple_note_taking_app/">Reddit</a></li>
|
||
<li><a href="https://github.com/Ostralyan/scribe.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-termitary.nvim">
|
||
<a href="#new-termitary.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>termitary.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/197392328-201e363b-d724-4de3-82e9-efbf66aacc7a.png" alt="termitary.nvim" /></p>
|
||
<p>A plugin to remotely interact with Neovim buffers. Termitary hooks into whatever kind of floating terminal buffer plugin
|
||
or native terminal buffer you want to use and provides the ability to manipulate it without switching back and forth to and from it.
|
||
By <a href="https://github.com/nat-418">@nat-418</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y677pe/new_plugin_termitarynvim_a_remote_control/">Reddit</a></li>
|
||
<li><a href="https://github.com/nat-418/termitary.nvim">GitHub</a></li>
|
||
</ul>
|
||
<h3 id="new-reveal.nvim">
|
||
<a href="#new-reveal.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>reveal.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><code>reveal.nvim</code> is a very experimental plugin that lets users use <code>vifm</code> inside Neovim through <code>vifm</code>’s lua API.
|
||
By <a href="https://github.com/haolian9">@haolian9</a>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/haolian9/reveal.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-telescope-tabs.nvim">
|
||
<a href="#new-telescope-tabs.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>telescope-tabs.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/49213919/197358070-2a48b58f-8819-4828-90ff-78bcbef296cb.png" alt="telescope-tabs.nvim" /></p>
|
||
<p>A new plugin by <a href="https://github.com/LukasPietzschmann">@LukasPietzschmann</a> allowing you to <strong>quickly switch between your open tabs</strong>, along with other
|
||
operations you can do with tabs.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xxyvq9/telescopetabs_fly_through_your_tabs_in_neovim">Reddit</a></li>
|
||
<li><a href="https://github.com/LukasPietzschmann/telescope-tabs">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-noice.nvim">
|
||
<a href="#update-noice.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>noice.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Highly experimental plugin that completely replaces the UI for messages, cmdline and the popupmenu.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/292349/197198470-5494bb40-ba11-431e-99b5-19121705eabf.png" alt="noice.nvim" /></p>
|
||
<p>The plugin received a couple of changes lately. The list is long, so you can see by yourself
|
||
<a href="https://github.com/folke/noice.nvim/wiki/What's-New%3F">here</a> for the details. Here’s a TL;DR:</p>
|
||
<ul>
|
||
<li>An update view was added.</li>
|
||
<li>Command formatters are now sexy like never!</li>
|
||
<li>Confirm dialogs with button-like inputs.</li>
|
||
<li>Telescope theming integration.</li>
|
||
<li><code>notify-send</code> support.</li>
|
||
<li>Scrollbars and matched text for popups.</li>
|
||
</ul>
|
||
<p>And more!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y9t7z5/noicenvim_updates/">Reddit</a></li>
|
||
<li><a href="https://github.com/folke/noice.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-AstroNvim">
|
||
<a href="#update-AstroNvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>AstroNvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>AstroNvim is an æsthetic and feature-rich neovim config that is extensible and easy to use with a great set of plugins</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/197389497-a2a3dbc7-b9ce-494c-a514-4252f3265673.png" alt="astro-nvim" /></p>
|
||
<p>The plugin received significant changes lately, among several breaking changes. Changelog excerpt for the v2.4:</p>
|
||
<ul>
|
||
<li>Now uses Mason.</li>
|
||
<li><code>:AstroReload</code> for live reloading of the configuration and new changes to your user configuration without needing to restart.</li>
|
||
<li>New UI menu for toggling quick settings with <code><leader> + u</code></li>
|
||
<li>Added <code>highlights.init</code> table to add custom highlight groups that get applied to all color schemes.</li>
|
||
<li>Heirline support.</li>
|
||
<li>Winbar is added to display LSP breadcrumbs.</li>
|
||
<li><code>:AstroChangeLog</code> can be used for viewing the changelog.</li>
|
||
<li>Clickable status line components</li>
|
||
</ul>
|
||
<p>Nice update, then!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y9myoo/astronvim_24/">Reddit</a></li>
|
||
<li><a href="https://github.com/AstroNvim/AstroNvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-SJ.nvim">
|
||
<a href="#update-SJ.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>SJ.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Search based navigation combined with quick jump features.</p>
|
||
</blockquote>
|
||
<p>The plugin received a wide variety of features and fixes.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y7osle/sjnvim_search_based_navigation_combined_with/">Reddit</a></li>
|
||
<li><a href="https://github.com/woosaaahh/sj.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>This week, I (<a href="https://github.com/phaazon">@phaazon</a>) wants to bring the attention of every plugin authors to an
|
||
important matter. I have seen numerous times plugins hosting the demo screenshots, gifs and videos of their contents
|
||
directly in the Git index. <strong>Do not do that. I repeat, do not do that!</strong> A typical Neovim plugin repository is basically
|
||
a bunch of Lua files, and even big projects should rarely exceed 1 MB of disk usage (text is light and the Git history
|
||
compressed). But a single (one!), high-resolution screenshot, can sit between 10 MB to 100 MB, completely ruining your
|
||
repository. People installing your plugin will have to download that screenshot for nothing.</p>
|
||
<p>You can drag and drop your image in <strong>any GitHub project New Issue input</strong> to get a permalink to host your media files.
|
||
Use it!</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>24 Oct 2022 GMT</pubDate></item><item><title>17 Oct 2022</title><link>https://this-week-in-neovim.org/2022/Oct/17</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-copilot.lua">
|
||
<a href="#new-copilot.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>copilot.lua</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/8050659/192044631-85171e3e-0e89-4693-899e-f3792b7886fa.gif" alt="Copilot Suggestion" /></p>
|
||
<p>Pure lua replacement for <a href="https://github.com/github/copilot.vim">github/copilot.vim</a>. <code>Copilot.lua</code> has support for both Copilot Suggestion and
|
||
Copilot Panel, with custom keybindings and configurable settings. It also integrates nicely with other Lua plugins, e.g. <code>nvim-cmp</code>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/zbirenbaum/copilot.lua">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-zhiyuan.nvim">
|
||
<a href="#new-copilot.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>zhiyuan.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>zhiyuan.nvim provides a way to send system-wide notifications on linux using libnotify and lua ffi.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/haolian9/zhiyuan.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mini.map">
|
||
<a href="#new-mini.map">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mini.map</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24854248/195806215-10e05020-50b7-4bee-9447-ee5af3e971ec.mp4"
|
||
>
|
||
</video>
|
||
<p><a href="https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-map.md"><code>mini.map</code></a> is a part of
|
||
<a href="https://github.com/echasnovski/mini.nvim"><code>mini.nvim</code></a> library. Features include:</p>
|
||
<ul>
|
||
<li>Show and manage special floating window displaying automatically updated overview of current buffer text.</li>
|
||
<li>Show scrollbar next to map content.</li>
|
||
<li>Highlight map lines representing certain data in current buffer. There are pre-built generators for common integrations:
|
||
<ul>
|
||
<li>Builtin search.</li>
|
||
<li>Builtin diagnostic.</li>
|
||
<li>Git line status.</li>
|
||
</ul>
|
||
</li>
|
||
<li>Focus on map window to quickly browse current (source) buffer. Moving inside map window updates cursor position in source window
|
||
enabling fast and targeted buffer exploration.</li>
|
||
<li>Customizable:
|
||
<ul>
|
||
<li>Encoding symbols used to display binary information of different resolution (default is 3x2).</li>
|
||
<li>Scrollbar symbols, separate for line and view. Can have any width (even zero, which virtually disables scrollbar).</li>
|
||
<li>Integrations producing map line highlights.</li>
|
||
<li>Window options: side (left/right), width, ‘winblend’, and more.</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
<p>A nice new plugin by <a href="https://github.com/echasnovski">@echasnovski</a>!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y1balh/minimap_window_with_buffer_text_overview/">Reddit</a></li>
|
||
<li><a href="https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-map.md">Github</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-jc.nvim">
|
||
<a href="#new-jc.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>jc.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><code>jc.nvim</code> – successor of <a href="https://github.com/artur-shaik/vim-javacomplete2">vim-javacomplete2</a>
|
||
which uses Neovim’s built-in LSP client and <a href="https://github.com/eclipse/eclipse.jdt.ls">Eclipse JDT Language Server</a>.</p>
|
||
<p>Main goal of this project is to migrate all the functionallties of jc2 to Neovim.</p>
|
||
<p>In addition to autocompletion, it can:</p>
|
||
<ul>
|
||
<li>organize imports;</li>
|
||
<li>generate code (<code>toString</code>, <code>hashCode</code>, <code>equals</code>, constructors, accessors) with field selection;</li>
|
||
<li>add abstract methods to implementing class;</li>
|
||
<li>execute <a href="https://github.com/puremourning/vimspector">vimspector</a> debug session;</li>
|
||
<li>automatic installation of jdt.ls and java-debug extension;</li>
|
||
<li>class creation methods from <code>jc2</code>.</li>
|
||
</ul>
|
||
<p>It’s written by <a href="https://github.com/artur-shaik">@artur-shaik</a> and you can read his
|
||
<a href="https://shaik.link/posts/javacomplete-to-jc.nvim/">blog post</a> about it.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y054kd/github_arturshaikjcnvim_java_autocompletion_for">Reddit</a></li>
|
||
<li><a href="https://github.com/artur-shaik/jc.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-cmp-buffer-lines">
|
||
<a href="#new-nvim-cmp-buffer-lines">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-cmp-buffer-lines</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>This plugin uses <a href="https://github.com/hrsh7th/nvim-cmp">nvim-cmp</a> to allow you to
|
||
auto-complete with the lines in the file. By <a href="https://github.com/amarakon">@amarakon</a>.</p>
|
||
<ul>
|
||
<li><a href="https://reddit.com/r/neovim/comments/y0j4dt">Reddit</a></li>
|
||
<li><a href="https://github.com/amarakon/nvim-cmp-buffer-lines">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-modicator.nvim">
|
||
<a href="#new-modicator.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>modicator.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/15816726/195804855-fc306e59-75cb-4dee-8588-e5fb07c66b1c.gif" alt="modicator.nvim" /></p>
|
||
<p><a href="https://github.com/melkster">@melkster</a> made their first plugin, <a href="https://github.com/melkster/modicator.nvim">modicator.nvim</a>, a cursorline number <strong>mod</strong>e ind<strong>icator</strong>. It’s a simple plugin that changes the color of current line’s line number based on your mode.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xwyfvq/new_cursor_line_number_mode_indicator_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/melkster/modicator.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-s3edit.nvim">
|
||
<a href="#new-s3edit.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>s3edit.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A simple plugin by <a href="https://github.com/kiran94">@kiran94</a> that allows you to edit files from S3 directly in Neovim. It enables a workflow where you
|
||
can fuzzy search for a file in S3, edit it and then automatically upload it back all without closing Neovim.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y5oql4/new_plugin_s3editnvim_edit_files_from_s3_directly/">Reddit</a></li>
|
||
<li><a href="https://github.com/kiran94/s3edit.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-peek.nvim">
|
||
<a href="#new-peek.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>peek.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/196061895-2a415131-5e43-419e-b543-c4748df88184.png" alt="peek.nvim" /></p>
|
||
<p>A Markdown preview plugin for Neovim written by <a href="https://github.com/toppair">@toppair</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y5lr0y/wrote_a_markdown_preview_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/toppair/peek.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mongo.nvim">
|
||
<a href="#new-mongo.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mongo.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://asciinema.org/a/MHHlLdHfIGkA6Sswtp4PfW9E0" target="_blank"><img src="https://asciinema.org/a/MHHlLdHfIGkA6Sswtp4PfW9E0.svg" /></a></p>
|
||
<p>A Neovim frontend for <code>mongosh</code>, by <a href="https://github.com/jrop">@jrop</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y4ytv5/announce_mongonvim_a_neovim_frontend_for_mongosh/">Reddit</a></li>
|
||
<li><a href="https://github.com/jrop/mongo.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-resize-mode.nvim">
|
||
<a href="#new-resize-mode.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>resize-mode.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A resize mode for Neovim, which allows to resize the window into the direction you want. Written by <a href="https://github.com/dimfred">@dimfred</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y4pqq6/resizemodenvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/dimfred/resize-mode.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-neo-minimap">
|
||
<a href="#new-neo-minimap">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>neo-minimap</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/102876811/195559738-2508d4b0-c33e-44ad-a617-fa785e1c7a57.mp4"
|
||
>
|
||
</video>
|
||
<p>A plugin for Neovim that lets you create your own “minimap” from tree-sitter queries or Vim regex. By <a href="https://github.com/ziontee113">@ziontee113</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y2ubty/neominimap_create_your_own_minimap_from/">Reddit</a></li>
|
||
<li><a href="https://github.com/ziontee113/neo-minimap">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-typebreak.nvim">
|
||
<a href="#new-typebreak.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>typebreak.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/196062174-9cfc7add-49d6-4a73-8e5d-3667d879d0e8.png" alt="typebreak.nvim" /></p>
|
||
<p>A “toy and exercise” plugin in floating buffers to enhance your knowledge and speed in Neovim! Written by <a href="https://github.com/nagy135">@nagy135</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y2rptu/typebreaknvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/nagy135/typebreak.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-boole.nvim">
|
||
<a href="#new-boole.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>boole.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/196062261-ffd57a5a-26a9-4998-9307-faf1d4d6deed.png" alt="boole.nvim" /></p>
|
||
<p>Toggle various text (booleans, dates, etc.) with simple shortcuts.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y2h9sq/new_plugin_boolenvim_toggle_booleans_cycle_days/">Reddit</a></li>
|
||
<li><a href="https://github.com/nat-418/boole.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-nvim-rs">
|
||
<a href="#update-nvim-rs">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-rs</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><a href="https://crates.io/crates/nvim-rs"><code>nvim-rs</code></a> is a rust library for writing rpc clients for neovim, utilizing the async/await language feature.</p>
|
||
</blockquote>
|
||
<p>It allows to write GUIs that embed Neovim (like <a href="https://github.com/neovide/neovide">neovide</a> and <a href="https://github.com/vhakulinen/gnvim">gnvim</a>),
|
||
external clients (like <a href="https://crates.io/crates/nvim-send">nvim-send</a>), or more standard plugins (like this
|
||
<a href="https://github.com/KillTheMule/nvim-rs/blob/master/examples/scorched_earth.rs">port</a> of the iconic
|
||
<a href="https://github.com/boxofrox/neovim-scorched-earth">scorched earth</a>).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y1y87n/nvimrs_new_release_05/">Reddit</a></li>
|
||
<li><a href="https://github.com/KillTheMule/nvim-rs">Github</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-smart-splits.nvim">
|
||
<a href="#update-smart-splits.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>smart-splits.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>🧠 Smart, directional Neovim and tmux split resizing and navigation. Think about splits in terms of “up/down/left/right”.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/8648891/195688897-993d1ef1-c81e-44d0-98e1-57b00e588b56.gif" alt="smart-splits.nvim demo" /></p>
|
||
<p><code>smart-splits.nvim</code> now has a <code>tmux</code> integration for seamless navigation between Neovim splits and <code>tmux</code> panes! Use the same intuitive, directional, cyclic navigation keymaps to jump between Neovim splits and tmux panes. See <a href="https://github.com/mrjones2014/smart-splits.nvim#tmux-integration">README.md</a> for configuration.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/mrjones2014/smart-splits.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-lemmy-help">
|
||
<a href="#update-lemmy-help">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lemmy-help</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Every one needs help, so lemmy-help you! A CLI to generate Vim/Neovim help doc from <code>emmylua</code>.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/24727447/164423469-b26fea39-2ef7-497c-8156-5a4c01bc30f8.gif" alt="lemmy-help" /></p>
|
||
<p>The plugin now supports <a href="https://github.com/sumneko/lua-language-server/wiki/Annotations#documenting-types">emmylua types</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/y3uoqw/lemmyhelp_v080_emmylua_to_vimdoc_generator_now/">Reddit</a></li>
|
||
<li><a href="https://github.com/numToStr/lemmy-help">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Nothing for this week… 🙁</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>17 Oct 2022 GMT</pubDate></item><item><title>10 Oct 2022</title><link>https://this-week-in-neovim.org/2022/Oct/10</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/19243">#19243</a> <a href="https://www.reddit.com/r/neovim/comments/xx3fom/new_option_splitkeep_merged_into_master/"><code>splitkeep</code> merged upstream</a></p>
|
||
<p>This option should replace the <a href="https://github.com/luukvbaal/stabilize.nvim">stabilize.nvim</a> plugin.
|
||
A <a href="https://user-images.githubusercontent.com/506592/194828862-1b07d889-3cd6-4914-8542-c5703af58360.mp4">video</a> is
|
||
available to demonstrate that new feature.</p>
|
||
</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<h3 id="help-neotest-haskell">
|
||
<a href="#help-neotest-haskell">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
</span>
|
||
<span>neotest-haskell is looking for contributors</span>
|
||
</a>
|
||
</h3>
|
||
</h3>
|
||
<p><a href="https://github.com/mrcjkb">@mrcjkb</a> is looking for help for their <code>neotest-haskell</code> project, which is a
|
||
<a href="https://github.com/nvim-neotest/neotest">Neotest</a> adapter for Haskell (cabal-v2 or stack) with Hspec.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xztarx/neotesthaskell_looking_for_feedbackcollaboration/">Reddit</a></li>
|
||
<li><a href="https://github.com/mrcjkb/neotest-haskell">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<h3 id="guide-nvim-0.8">
|
||
<a href="#guide-nvim-0.8">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
</span>
|
||
<span>Neovim v0.8 feature tour</span>
|
||
</a>
|
||
</a>
|
||
</h3>
|
||
<p>This is a blog article compiling a list of new features released in Neovim v0.8, which was released last week. If you
|
||
don’t want to skim the changelog and just would like to know what’s new quickly, that’s a great read!</p>
|
||
<ul>
|
||
<li><a href="https://jdhao.github.io/2022/10/05/nvim-v08-release/">Blog article</a></li>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xw4kse/i_read_the_nvim_08_release_note_so_you_do_not/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-live-command.nvim">
|
||
<a href="#new-live-command.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>live-command.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/40792180/194180320-691efe71-0743-40e5-b0d7-454f142a9235.mp4"
|
||
>
|
||
</video>
|
||
<p>A new plugin by <a href="https://github.com/smjonas">@smjonas</a> that allows you to preview any command and view its effects on the buffer contents as you
|
||
type.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xx5hhp/introducing_livecommandnvim_preview_the_norm/">Reddit</a></li>
|
||
<li><a href="https://github.com/smjonas/live-command.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-silicon.nvim">
|
||
<a href="#new-silicon.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>silicon.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/194829347-39401860-6730-41af-bbe8-e10e93167c9a.png" alt="silicon.nvim" /></p>
|
||
<p>A plugin that leverages <a href="https://github.com/Aloxaf/silicon">silicon</a> to make Neovim screenshot, by <a href="https://github.com/krivahtoo">@krivahtoo</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xx031g/siliconnvim_render_beautiful_image_of_your_code/">Reddit</a></li>
|
||
<li><a href="https://github.com/krivahtoo/silicon.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-k8s.nvim">
|
||
<a href="#new-k8s.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>k8s.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Do you manage Kubernetes clusters? Are you often describing pods and deployments? Well, this new plugin by
|
||
<a href="https://github.com/arjunmahishi">@arjunmahishi</a> might be a good fit for you! Kubernetes, but in Neovim.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xwcjqm/k8snvim_a_plugin_that_lets_you_run_some_of_the/">Reddit</a></li>
|
||
<li><a href="https://github.com/arjunmahishi/k8s.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-NeoZoom.lua">
|
||
<a href="#new-NeoZoom.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>NeoZoom.lua</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24765272/194027917-dedc162c-f017-4722-9468-c4ddddbedd57.mov"
|
||
>
|
||
</video>
|
||
<p>Not strictly a new plugin but TWiN didn’t exist when it was introduced, so we present this as a new plugin. This is a
|
||
layout-preserving zoom plugin, by <a href="https://github.com/nyngwang">@nyngwang</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xw692p/neozoomlua_pop_to_the_moon_layout_preserving/">Reddit</a></li>
|
||
<li><a href="https://github.com/nyngwang/NeoZoom.lua">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-notisys.nvim">
|
||
<a href="#new-notisys.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>notisys.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="" alt="notisys.nvim" /></p>
|
||
<p>This is a new plugin that uses OSC-99, a terminal escape sequence, to forward notifications sent via <code>vim.notify</code> to
|
||
your system notification manager. Not all terminals work (tested with <a href="https://sw.kovidgoyal.net/kitty/">kitty</a>) and
|
||
some limitations exist, such as log levels are not supported, as well as icons. By <a href="https://github.com/phaazon">@phaazon</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xw61g7/announcing_notisysnvim_a_systemwide_notification/">Reddit</a></li>
|
||
<li><a href="https://github.com/phaazon/notisys.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-noice.nvim">
|
||
<a href="#new-noice.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>noice.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/292349/193263220-791847b2-516c-4f23-9802-31dd6bec5f6a.png" alt="noice.nvim" /></p>
|
||
<p>Highly experimental plugin that completely replaces the UI for messages, cmdline and the popupmenu, by <a href="https://github.com/folke">@folke</a>. It
|
||
looks really, really nice.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xujxos/noicenvim_highly_experimental_plugin_that/">Reddit</a></li>
|
||
<li><a href="https://github.com/folke/noice.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-jsonpath.nvim">
|
||
<a href="#new-jsonpath.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>jsonpath.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/39670535/194754315-57601183-fd1e-4633-982b-66c0c77fea29.webm"
|
||
>
|
||
</video>
|
||
<p>This is a Neovim plugin containing a function to return a path to access the value under the cursor by using tree-sitter.
|
||
It may help you understand how to access even deeply nested values in JSON files. By <a href="https://github.com/phelipetls">@phelipetls</a>:</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xzji54/introducing_jsonpathnvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/phelipetls/jsonpath.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-papis.nvim">
|
||
<a href="#new-papis.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>papis.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/10319377/193468827-b6468f39-47f0-4b3b-aa47-4328ea2629e4.jpeg" alt="papis.nvim" /></p>
|
||
<p>A plugin for <a href="https://github.com/papis/papis/">papis</a> allowing to manage your bibliography from within your favourite
|
||
editor. Nice work <a href="https://github.com/jghauser">@jghauser</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xyt9n1/introducing_papisnvim_manage_your_bibliography/">Reddit</a></li>
|
||
<li><a href="https://github.com/jghauser/papis.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-smartyank.nvim">
|
||
<a href="#new-smartyank.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>smartyank.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="" alt="smartyank.nvim" /></p>
|
||
<p>A plugin by <a href="https://github.com/ibhagwan">@ibhagwan</a> that is an opinionated (yet customizable) yank, utilizing the <code>TextYankPost</code> event to detect
|
||
intentional yank operations (by testing <code>vim.v.operator</code>) and:</p>
|
||
<ul>
|
||
<li>Highlight yanked text</li>
|
||
<li>Copy yanked text to system clipboard (regardless of clipboard setting)</li>
|
||
<li>If tmux is available, copy to a tmux clipboard buffer (enables history)</li>
|
||
<li>If ssh session is detected, use OSC52 to copy to the terminal host clipboard</li>
|
||
</ul>
|
||
<p>A great new plugin!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xyhc5w/new_plugin_smartyanknvim_pollute_your_clipboard/">Reddit</a></li>
|
||
<li><a href="https://github.com/ibhagwan/smartyank.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-nabla.nvim">
|
||
<a href="#update-nabla.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nabla.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>take your scientific notes ✏️ in Neovim</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/81827001/194756772-cc8c5c33-caba-4bf5-9db4-ac562e97dbe8.png" alt="nabla.nvim" /></p>
|
||
<p>Nabla.nvim now uses treesitter for detecting math.
|
||
With this many more math environments like <code>$$...$$</code>, <code>\[...\]</code> or <code>\begin{equation}...\end{equation}</code> are now supported.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/jbyuki/nabla.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-autolist.nvim">
|
||
<a href="#update-autolist.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>autolist.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Automatic list continuation and formatting for neovim, powered by lua</p>
|
||
</blockquote>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/97860672/193787598-56abba13-3710-43d1-b8b3-4fd81074dbd4.mp4"
|
||
>
|
||
</video>
|
||
<p>You can new define your own list types for Markdown and such. The plugin also now uses <kbd>tab</kbd> to indent list
|
||
instead of <kbd>c-t</kbd></p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xvbmk5/autolistnvim_now_supports_custom_list_types_and/">Reddit</a></li>
|
||
<li><a href="https://github.com/gaoDean/autolist.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-yanky.nvim">
|
||
<a href="#update-yanky.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>yanky.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Improved Yank and Put functionalities for Neovim</p>
|
||
</blockquote>
|
||
<p>You can now store the yank ring into SQLite.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xvaj1u/yankynvim_you_can_now_store_your_yanky_ring_into/">Reddit</a></li>
|
||
<li><a href="https://github.com/gbprod/yanky.nvim/">GitHub</a></li>
|
||
<li><a href="https://github.com/gbprod/yanky.nvim/pull/55">PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-kat.nvim">
|
||
<a href="#update-kat.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>kat.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>NeoVim specifc port of kat.vim, a warm blue theme, written in Fennel with Aniseed</p>
|
||
</blockquote>
|
||
<p><img src="https://raw.githubusercontent.com/katawful/RandomAssets/main/gui-2022-example.png" alt="kat.nvim" /></p>
|
||
<p>New release “Exuberant Cornish Rex” now available - major speed and quality of life improvements, Neovim 0.6 support
|
||
fully removed.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xz4p2q/katnvim_release_exuberant_cornish_rex_now/">Reddit</a></li>
|
||
<li><a href="https://github.com/katawful/kat.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Here are some mappings which help you with fixing spelling mistakes while writing. These mappings are all for insert
|
||
mode.</p>
|
||
<ul>
|
||
<li>You can use <kbd><c-g>u<Esc>[s1z=`]a<c-g>u</kbd> to fix your last spelling mistake automatically (builtin spell
|
||
checking).</li>
|
||
<li>You can use <kbd><ESC>b~hea</kbd> at the end of a word to change the case of the word.</li>
|
||
<li>With <kbd><esc>blgulhea</kbd> you can (at the end of a word) make the second letter of the word lowercase.</li>
|
||
<li>With that you can correct spelling mistakes like NEovim to Neovim.</li>
|
||
</ul>
|
||
<p>And another cool trick provided by <a href="https://www.reddit.com/r/neovim/comments/xuhvln/did_you_know_jumping_between_start_and_end_in/">this reddit
|
||
post</a>: when you are in
|
||
visual mode, you can jump to the beginning or the end of the visual selection by pressing <kbd>o</kbd>.</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>10 Oct 2022 GMT</pubDate></item><item><title>3 Oct 2022</title><link>https://this-week-in-neovim.org/2022/Oct/3</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-openingh.nvim">
|
||
<a href="#new-openingh.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>openingh.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/17254073/192883482-f04cce8e-6ea4-4037-b554-c64c5e5586c2.gif" alt="openingh.nvim" /></p>
|
||
<p><a href="https://github.com/almo7aya">@almo7aya</a>’s first plugin! This plugin gives you two simple commands <code>:OpenInGHRepo</code> and <code>:OpenInGHFile</code> to easily open the current file or repo page in GitHub.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xpqr1z/openinghnvim_open_file_or_project_in_github_for/">Reddit</a></li>
|
||
<li><a href="https://github.com/almo7aya/openingh.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-neobeans.vim">
|
||
<a href="#new-neobeans.vim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>neobeans.vim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://raw.githubusercontent.com/mweisshaupt1988/neobeans.vim/master/assets/neobeans_dark.png" alt="neobeans.vim" /></p>
|
||
<p>A new theme by <a href="https://github.com/mweisshaupt1988">@mweisshaupt1988</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xoy7ts/new_color_scheme_neobeans/">Reddit</a></li>
|
||
<li><a href="https://github.com/mweisshaupt1988/neobeans.vim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-DelayTrain.nvim">
|
||
<a href="#new-DelayTrain.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>DelayTrain.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/114582891/192774339-4dc2c4a1-b527-4288-bf5a-9342a99003b9.gif" alt="DelayTrain.nvim" /></p>
|
||
<p>Train yourself to stop repeating keys… gently.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xqbgk6/delaytrainnvim_learn_to_stop_using_hjkl_with_a">Reddit</a></li>
|
||
<li><a href="https://github.com/ja-ford/delaytrain.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-octis.nvim">
|
||
<a href="#new-octis.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>octis.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/24954962/193131998-90f51940-a307-4af5-a225-01ee94c50991.png" alt="octis.nvim" /></p>
|
||
<p>A <a href="https://github.com/liviuschera/noctis">noctis</a>-inspired high-contrast colorscheme. It has some really nice neon vibes,
|
||
loving it! Written by <a href="https://github.com/kartikp10">@kartikp10</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xrgock/noctisnvim_a_noctis_inspired_highcontrast/">Reddit</a></li>
|
||
<li><a href="https://github.com/kartikp10/noctis.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-ide.nvim">
|
||
<a href="#new-ide.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>ide.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/193472313-cb85b489-42ad-471f-972e-eb58d0cea679.png" alt="ide.nvim" /></p>
|
||
<p>A project management, build, and debug support for various type of programming languages plugin, made by <a href="https://github.com/Dax89">@Dax89</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xtu4tj/idenvim_nice_project_build_and_debug_support/">Reddit</a></li>
|
||
<li><a href="https://github.com/Dax89/ide.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-arachne.nvim">
|
||
<a href="#new-arachne.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>arachne.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<script id="asciicast-523779" src="https://asciinema.org/a/523779.js" async></script>
|
||
<p>A new note taking plugin, by <a href="https://github.com/oem">@oem</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xqg090/arachnenvim_a_minimal_notetaking_plugin_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/oem/arachne.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-python-copy-reference.vim">
|
||
<a href="#new-python-copy-reference.vim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>python-copy-reference.vim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A first plugin that allows to copy the full reference of a module, class, etc. in Python. Congrats on your first
|
||
contribution <a href="https://github.com/ranelpadon">@ranelpadon</a>!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xsfggc/my_first_plugin_pythoncopyreferencevim/">Reddit</a></li>
|
||
<li><a href="https://github.com/ranelpadon/python-copy-reference.vim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-headband">
|
||
<a href="#new-nvim-headband">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-headband</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/193479258-c4127e80-4cd5-498a-b958-45603b1c5a9a.png" alt="nvim-headband" /></p>
|
||
<p>A new winbar plugin by <a href="https://github.com/B4mbus">@B4mbus</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xt529m/nvimheadband_a_simple_and_opinionated_winbar/">Reddit</a></li>
|
||
<li><a href="https://github.com/B4mbus/nvim-headband">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-import.nvim">
|
||
<a href="#update-import.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>import.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><code>import.nvim</code> is a <code>require</code> override with niceties.</p>
|
||
</blockquote>
|
||
<p>The new version now supports dependent imports. More about it
|
||
<a href="https://github.com/miversen33/import.nvim#importimport">here</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xp211y/importnvim_now_supports_dependent_imports/">Reddit</a></li>
|
||
<li><a href="https://github.com/miversen33/import.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-Comment.nvim">
|
||
<a href="#update-Comment.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>Comment.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>comment plugin for neovim. Supports treesitter, dot repeat, left-right/up-down motions, hooks, and more.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/42532967/136532939-926a8350-84b7-4e78-b045-fe21b5947388.gif" alt="Comment.nvim" /></p>
|
||
<p>Some keybindings got deprecated. Full list <a href="https://github.com/numToStr/Comment.nvim/discussions/247">here</a></p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xqavim/announcement_deprecating_extended_keybindings_in/">Reddit</a></li>
|
||
<li><a href="https://github.com/numToStr/Comment.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>If you start selecting some text with visual mode (<kbd>v</kbd>), you can switch to line visual or block visual by
|
||
simply pressing <kbd>shift-v</kbd> or <kbd>ctrl-v</kbd> while still in a visual mode without having to go back to the
|
||
start of the selection. As long as you are in a visual mode, you can go to visual, line visual or block visual mode by
|
||
pressing the appropriate key.</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>3 Oct 2022 GMT</pubDate></item><item><title>26 Sep 2022</title><link>https://this-week-in-neovim.org/2022/Sep/26</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li><a href="https://github.com/neovim/neovim/pull/20103">#20103</a>:
|
||
The methods <code>append</code>, <code>prepend</code>, <code>remove</code> in <code>vim.opt[_local]</code> no longer return a value and now act on the option
|
||
object in-place.</li>
|
||
<li><a href="https://github.com/neovim/neovim/pull/20331">#20331</a>:
|
||
<ul>
|
||
<li>Renamed <code>vim.treesitter.get_captures_at_position</code> => <code>vim.treesitter.get_captures_at_pos</code></li>
|
||
<li>Renamed <code>vim.treesitter.get_node_at_position</code> => <code>vim.treesitter.get_node_at_pos</code></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-messages.nvim">
|
||
<a href="#new-messages.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>messages.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/23341710/190900297-3914fddd-cf39-49b1-b870-642b80b389f1.png" alt="messages.nvim" /></p>
|
||
<p>Capture and show any messages in a customisable (floating) buffer. Plugin by <a href="https://github.com/AckslD">@AckslD</a>.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/AckslD/messages.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-swenv.nvim">
|
||
<a href="#new-swenv.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>swenv.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/23341710/191020632-543e8118-4eea-4964-8d59-1556836b929f.png" alt="swenv.nvim" /></p>
|
||
<p>Tiny plugin to quickly switch python virtual environments from within neovim without restarting.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/AckslD/swenv.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-lilypond-suite">
|
||
<a href="#new-nvim-lilypond-suite">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-lilypond-suite</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/89019438/191845626-4ba6224c-46c3-484f-a355-5cf10a66889f.png" alt="nvim-lilypond-suite" /></p>
|
||
<p><a href="https://github.com/martineausimon">@martineausimon</a> made this plugin some time ago but released a feature set this week, and since we’ve never really
|
||
talked about it, we present it as a new plugin. This is a plugin for writing LilyPond scores, with asynchronous make,
|
||
midi/MP3 player, fast syntax highlighting, and support for LaTex files .</p>
|
||
<p>This releases comprises:</p>
|
||
<ul>
|
||
<li>Better syntax file for LilyPond.</li>
|
||
<li>Asynchronous <code>:make</code> - compile in background without freezing Neovim.</li>
|
||
<li>MP3 player in floating window (LilyPond only) - convert and play midi file while writing score (using <code>mpv</code>, <code>fluidsynth</code> & <code>ffmpeg</code>).</li>
|
||
<li>Simple ftplugin for LilyPond with <code>makeprg</code>, correct errorformat.</li>
|
||
<li>Compile only main file when working on multiple files project (LilyPond only).</li>
|
||
<li>ftplugin for TeX files whith detect and allows embedded LilyPond syntax, adaptive <code>makeprg</code> function for <code>lyluatex</code> or <code>lilypond-book</code>, correct errorformat.</li>
|
||
<li>Easy Point & Click configuration.</li>
|
||
</ul>
|
||
<p>A pretty awesome and surprising plugin! Keep it going!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xlupdc/nvimlilypondsuite_write_and_play_music_scores_in/">Reddit</a></li>
|
||
<li><a href="https://github.com/martineausimon/nvim-lilypond-suite">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-rename-state">
|
||
<a href="#new-nvim-rename-state">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-rename-state</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/olrtg">@olrtg</a>’s first plugin! This plugin gives you a <code>:RenameState</code> command that you can use on the getter or the setter of
|
||
a state hook with React / SolidJS and then rename the current node and the counterpart accordingly with the LSP.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xligrw/i_made_a_plugin_to_rename_the_getter_and_setter/">Reddit</a></li>
|
||
<li><a href="https://github.com/olrtg/nvim-rename-state">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mini-align">
|
||
<a href="#new-mini-align">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mini.align</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24854248/191686791-2c8b345a-2bcc-4de7-a065-5e7a36e2eb1a.mp4"
|
||
>
|
||
</video>
|
||
<p>A new module of <a href="https://github.com/echasnovski/mini.nvim">mini.nvim</a> by <a href="https://github.com/echasnovski">@echasnovski</a>. This one allows users to align
|
||
text interactively (like <a href="https://github.com/junegunn/vim-easy-align">vim-easy-align</a>, but in Lua and slightly different
|
||
mechanics). Provides rich and flexible customization of both alignment rules and user interaction. Works with charwise,
|
||
linewise, and blockwise selections in both Normal mode (on textobject/motion; with dot-repeat) and Visual mode.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xkzg7z/minialign_align_text_interactively_like/">Reddit</a></li>
|
||
<li><a href="https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-align.md">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-ofirkai.nvim">
|
||
<a href="#new-ofirkai.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>ofirkai.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/192094134-1b872330-c52f-4cc9-b727-78d08779b051.png" alt="ofirkai.nvim" /></p>
|
||
<p>Porting a Sublime Text to Neovim? Done! A new theme by <a href="https://github.com/ofirgall">@ofirgall</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xkto67/ofirkainvim_monokai_theme_that_looks_like_sublime/">Reddit</a></li>
|
||
<li><a href="https://github.com/ofirgall/ofirkai.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-flashcards.nvim">
|
||
<a href="#new-flashcards.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>flashcards.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A new plugin by <a href="https://github.com/alex-laycalvert">@alex-laycalvert</a> allowing to create subjects and flashcards directly from Neovim and do all of your
|
||
studying from there. <code>:Flashcards</code> is the entry command.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xkkl5p/flashcardsnvim_neovim_plugin_for_creating_and/">Reddit</a></li>
|
||
<li><a href="https://github.com/alex-laycalvert/flashcards.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-jqx">
|
||
<a href="#new-nvim-jqx">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-jqx</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/15387611/113495463-4bd24500-94f2-11eb-88b5-64c1ee965886.gif" alt="nvim-jqx" /></p>
|
||
<p><code>nvim-jqx</code> is a plugin made by <a href="https://github.com/gennaro-tedesco">@gennaro-tedesco</a> that lets you dynamically interact with JSON files. It exposes two
|
||
commands:</p>
|
||
<ul>
|
||
<li><code>JqxList</code> to populate the quickfix window with JSON entries, visualise and query them.</li>
|
||
<li><code>JqxQuery</code> to execute <code>jq</code> queries from command line.</li>
|
||
</ul>
|
||
<p>A promising and probably useful plugin! Congrats!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xkbfid/nvimjqx_release_v010_browse_and_preview_json/">Reddit</a></li>
|
||
<li><a href="https://github.com/gennaro-tedesco/nvim-jqx">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-guwen-nvim">
|
||
<a href="#new-guwen-nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>guwen-nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/192170878-add3c0e4-17cf-4c59-8037-69f665ecd31b.png" alt="guwen.nvim" /></p>
|
||
<p><code>guwen.nvim</code>, aka “古文”, is a plugin made by <a href="https://github.com/haolian9">@haolian9</a> that shows random chinese poetry or prose in a floating window.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/haolian9/guwen.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-lazy-lsp.nvim">
|
||
<a href="#new-lazy-lsp.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lazy-lsp.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/dundalek">@dundalek</a> released their first plugin. It can automatically install lsp servers in Neovim. It is an alternative to the
|
||
well known <a href="https://github.com/williamboman/nvim-lsp-installer">nvim-lsp-installer</a> /
|
||
<a href="https://github.com/williamboman/mason.nvim">mason.nvim</a>, but aims to minimize the need of manual intervention.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xno76g/introducing_lazylspnvim_lazily_auto_install_and/">Reddit</a></li>
|
||
<li><a href="https://github.com/dundalek/lazy-lsp.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-ror.nvim">
|
||
<a href="#new-ror.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>ror.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24854248/192152032-45b94c2b-3e24-4ad7-ac2d-4be86acf3fd1.mp4"
|
||
>
|
||
</video>
|
||
<p>If you use Ruby on Rails, this new plugin by <a href="https://github.com/weizheheng">@weizheheng</a> might be for your. It has two features (for now!): snippets
|
||
and minitest reporter integration.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xnfpwt/introducing_rornvim_nvim_meets_ruby_on_rails/">Reddit</a></li>
|
||
<li><a href="https://github.com/weizheheng/ror.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-godot.nvim">
|
||
<a href="#new-godot.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>godot.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/84206502/191308246-8d6d963f-1934-4339-ae87-dbec4d62e2f4.webm"
|
||
>
|
||
</video>
|
||
<p>Writing games with Godot Engine just got easier with this new plugin by <a href="https://github.com/Lommix">@Lommix</a>. It helps you running your application
|
||
in debug, break on error or cursor. Step, read and continue.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xmsxoo/debugger_plugin_for_the_godot_game_engine/">Reddit</a></li>
|
||
<li><a href="https://github.com/Lommix/godot.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-battery.nvim">
|
||
<a href="#update-op.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>op.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>🔑 1Password for Neovim! Built using the 1Password CLI, Go, and Lua.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/8648891/191072734-d328fc20-9fda-45ac-bffa-a2c301ec6fbe.png" alt="op.nvim secret detection" /></p>
|
||
<p><a href="https://github.com/mrjones2014">@mrjones2014</a> updated <code>op.nvim</code>, a Neovim integration with 1Password, to auto-detect hard-coded secrets in buffers and produce diagnostics.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/mrjones2014/op.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-ccc.nvim">
|
||
<a href="#update-ccc.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>ccc.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Color picker / colorizer plugin.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/82267684/190941438-9dba6f6a-fc87-4d47-8106-bfc865913b97.png" alt="ccc.nvim" /></p>
|
||
<p>The plugin now has a colorizer, similar to what you would find in
|
||
<a href="https://github.com/norcalli/nvim-colorizer.lua">nvim-colorizer.lua</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xk75hb/cccnvim_added_colors_highlighting/">Reddit</a></li>
|
||
<li><a href="https://github.com/uga-rosa/ccc.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>No tips for this week!</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>26 Sep 2022 GMT</pubDate></item><item><title>19 Sep 2022</title><link>https://this-week-in-neovim.org/2022/Sep/19</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li>
|
||
<p><a href="https://www.reddit.com/r/neovim/comments/xft3jw/08_feature_freeze_and_preliminary_release_date/">nvim-0.8 freeze</a>
|
||
(text extracted from the Reddit post by <code>u/bfredl</code>):</p>
|
||
<p>As of today, Neovim nighty is entering the feature freeze period for the upcoming 0.8 release. No further features
|
||
will be merged for 0.8, just bug fixes and documentation improvements (and possibly minor adjustments to new
|
||
features/API).</p>
|
||
<p>The preliminary release date for 0.8 is <strong>30 September</strong> (as has been our aim for some time), but might get delayed if
|
||
needed for critical bug fixes to land. As an example, <code>cmdheight=0</code> feature recently received a larger change in
|
||
implementation, is expected to need more testing and bug fixes before it is considered to be stable enough for a
|
||
general release.</p>
|
||
<p>The general advice of always updating Neovim nightly together with plugins applies. In particular, <code>nvim-treesitter</code>
|
||
and other tree-sitter dependent plugins need to be updated for changes in Neovim core.</p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/20217">#20217</a> made Lua Funcrefs work as methods in Vim script. When using a
|
||
Funcref converted from a Lua function as a method in Vim script, the result of the base expression is now passed as
|
||
the first argument instead of being ignored.</p>
|
||
</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-azy.nvim">
|
||
<a href="#new-azy.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>azy.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/39092278/190636426-0e94f07f-94a2-4226-90d8-425cfa0c38eb.gif" alt="azy.nvim" /></p>
|
||
<p>This plugin written by <a href="https://github.com/vigoux">@vigoux</a> tightly integrates the <code>fzy</code> search engine into neovim, to provide a fast and simple UI
|
||
for fuzzy searching. It is very much looking for testers and help to add more features !</p>
|
||
<ul>
|
||
<li><a href="https://github.com/vigoux/azy.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-peekup">
|
||
<a href="#new-nvim-peekup">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-peekup</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/15387611/189754642-323b574f-433f-439a-9bcb-2f20fe0bc0c3.png" alt="nvim-peekup" /></p>
|
||
<p><code>nvim-peekup</code> lets you dynamically interact with Neovim registers via floating windows, with visual selections that
|
||
help you identify the register to copy - plus some other goodies. A plugin by <a href="https://github.com/gennaro-tedesco">@gennaro-tedesco</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xcsgrg/nvimpeekup_release_v010_have_fun_with_vim/">Reddit</a></li>
|
||
<li><a href="https://github.com/gennaro-tedesco/nvim-peekup">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-ccc.nvim">
|
||
<a href="#new-ccc.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>ccc.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/82267684/190847776-81763c84-2662-4693-97df-b15e8d9115ec.gif" alt="ccc.nvim" /></p>
|
||
<p>A new plugin by <a href="https://github.com/uga-rosa">@uga-rosa</a>. The plugin is a similar plugin to all color pickers plugin, but it has some nice
|
||
evolutions, such as supporting multiple colorspaces. Serious work here, congrats!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xdsurw/new_color_picker_plugin/">Reddit (announcement)</a></li>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xg7st3/now_cccnvim_supports_the_use_of_multiple_color/">Reddit (multiple colorspaces update)</a></li>
|
||
<li><a href="https://github.com/uga-rosa/ccc.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-SmoothCursor.nvim">
|
||
<a href="#new-SmoothCursor.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>SmoothCursor.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/54583542/190581351-2e86f140-73a0-4523-80e1-f5c64d67be85.mp4"
|
||
>
|
||
</video>
|
||
<p>There are some plugins that don’t go unnoticed. <code>SmoothCursor.nvim</code> is when of them. The plugin adds a visual hint to
|
||
show the scroll direction. By <a href="https://github.com/gen740">@gen740</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xfjxoy/new_awesome_cursor_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/gen740/SmoothCursor.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-animation.nvim">
|
||
<a href="#new-animation.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>animation.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>New plugin by <a href="https://github.com/anuvyklack">@anuvyklack</a>. It helps creating scheduled execution of a callback function utilizing common animation
|
||
concepts (like duration, fps, easing).</p>
|
||
<ul>
|
||
<li><a href="https://github.com/anuvyklack/animation.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-windows.nvim">
|
||
<a href="#new-windows.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>windows.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/13056013/190786962-01047891-38b1-4e87-bd9b-e8eca9acc8b8.mp4"
|
||
>
|
||
</video>
|
||
<p>Another great plugin from <a href="https://github.com/anuvyklack">@anuvyklack</a>. This one can automatically manage width of current window… with animations!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xhembg/windowsnvim_a_new_plugin_to_set_autowidth_and/">Reddit</a></li>
|
||
<li><a href="https://github.com/anuvyklack/windows.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-vim-lichess">
|
||
<a href="#new-vim-lichess">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>vim-lichess</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/57172028/190704946-4708be17-83c0-4652-ae3e-9cb958faa557.gif" alt="vim-lichess" /></p>
|
||
<p>So how about playing chess… but inside Neovim itself? If this sounds interesting, check out this new plugin by
|
||
<a href="https://github.com/luk400">@luk400</a>. You can play Rapid or Classical games (8min and above) and set the time control, increment, variant, rating
|
||
range and whether to play rated/unrated.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xgh3rx/ever_wanted_to_play_online_chess_in_neovim_no/">Reddit</a></li>
|
||
<li><a href="https://github.com/luk400/vim-lichess">GitHub</a></li>
|
||
</ul>
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-battery.nvim">
|
||
<a href="#update-battery.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>battery.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Neovim plugin to collect and view information on battery power in your status line.</p>
|
||
</blockquote>
|
||
<p><img src="https://justinhj.github.io/images/battery/statuslineexample.png" alt="battery.nvim" /></p>
|
||
<p><a href="https://github.com/justinhj">@justinhj</a> updated battery.nvim, a pure lua battery status bar plugin, to v0.4.0 with the following improvements since
|
||
the initial release:</p>
|
||
<ul>
|
||
<li>Support for linux (requires acpi package).</li>
|
||
<li>Support for horizontal icons.</li>
|
||
</ul>
|
||
<p>You can use branch <code>v0.4.0</code> explicitly in your plugin manager or update to the latest <code>main</code> branch.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wrb34c/batterynvim_customizable_battery_info_in_your/">Reddit (original announcement)</a></li>
|
||
<li><a href="https://github.com/justinhj/battery.nvim">Github</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-FeMaco">
|
||
<a href="#update-FeMaco">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>FeMaco</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A small plugin allowing to edit injected language trees with correct filetype in a floating window. This allows you to
|
||
use all of your config for your favorite language.</p>
|
||
</blockquote>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/23341710/189546136-fc555484-76f9-46c2-bdab-937f65044c47.mp4"
|
||
>
|
||
</video>
|
||
<p><code>FeMaco</code> now supports language injections in any language (including inline).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xcauq1/femaco_now_supports_language_injections_in_any/">Reddit</a></li>
|
||
<li><a href="https://github.com/AckslD/nvim-FeMaco.lua">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-easypick.nvim">
|
||
<a href="#update-easypick.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>easypick.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A Neovim plugin that lets you easily create <a href="https://github.com/nvim-telescope/telescope.nvim">telescope.nvim</a>
|
||
pickers from arbitrary console commands.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/32141102/176906224-3b8c138e-7707-42d8-b4d1-bbe47a0afa24.png" alt="easypick.nvim" /></p>
|
||
<p>The plugin now supports a command-palette-like feature and allows users to specify custom actions and options.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xezpup/easypicknvim_new_features/">Reddit</a></li>
|
||
<li><a href="https://github.com/axkirillov/easypick.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-nvim-colorizer.lua">
|
||
<a href="#update-nvim-colorizer.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-colorizer.lua</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A high-performance color highlighter for Neovim which has no external dependencies! Written in Luajit.</p>
|
||
</blockquote>
|
||
<p><img src="https://raw.githubusercontent.com/norcalli/github-assets/master/nvim-colorizer.lua-demo-short.gif" alt="nvim-colorizer.lua" /></p>
|
||
<p>The plugin now has support for SASS variables and imports, and Tailwind colors, a CSS LSP.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xerity/nvimcolorizerlua_support_for_sass/">Reddit</a></li>
|
||
<li><a href="https://github.com/NvChad/nvim-colorizer.lua">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-SJ.nvim">
|
||
<a href="#update-SJ.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>SJ.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Search based navigation combined with quick jump features.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/190851849-a5b6c487-f3a6-4491-8274-e49ff620e4d2.png" alt="SJ.nvim" /></p>
|
||
<p>This is an update gathering the release of two versions of the plugin: <code>v0.2</code> and <code>v0.3</code>.</p>
|
||
<p>From <code>v0.2</code>:</p>
|
||
<ul>
|
||
<li>Labels position is fixed and overlap with the matches like other <em>jump</em> plugins (old behavior is still available via
|
||
an option).</li>
|
||
<li>You can now use <code><Backspace></code> to delete last characters of the pattern.t</li>
|
||
<li>You can now use <code><Alt-Backspace></code> to restore the last version of the pattern that has matches.</li>
|
||
</ul>
|
||
<p>From <code>v0.3</code>:</p>
|
||
<ul>
|
||
<li>An option was added to limit the maximum length of the pattern.</li>
|
||
<li>An option was added to reuse the last pattern.</li>
|
||
<li>A highlight was added to indicate when the next key must be for the label (when using <code>max_length_pattern</code>).</li>
|
||
</ul>
|
||
<p>A huge update, then!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xdps7p/sjnvim_02_is_out/">Reddit v0.2</a></li>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xekydc/sjnvim_03_is_out/">Reddit v0.3</a></li>
|
||
<li><a href="https://github.com/woosaaahh/sj.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>The <code>:%s</code> command substitutes text in your current buffer. For instance, <code>:%s/have/had/g</code> substitutes the word <code>have</code> by
|
||
<code>had</code> everywhere in your buffer. The <code>g</code> modifier makes it so that if you have <code>have</code> twice on the same line, both words
|
||
will be modified — omitting <code>g</code> will only replace the first occurrence on each line. You can also use <code>c</code> as an extra
|
||
modifier to be prompted with a replace confirmation for each occurrence.</p>
|
||
<p>Now, something that people might not know. Imagine you have the following buffer:</p>
|
||
<pre><code class="language-rust">let _ = 32;
|
||
let _ = 32;
|
||
let _ = 32;
|
||
|
||
let x = foo(32);
|
||
let y = bar(32);
|
||
let z = zoo(32);
|
||
let a = quux(32);
|
||
let b = tronfibulate(32);
|
||
|
||
let _ = 32;
|
||
let _ = 32;
|
||
let _ = 32;
|
||
</code></pre>
|
||
<p>And you want to replace all of the <code>32</code> arguments to functions by <code>100</code>, but you don’t want to replace couple of <code>32</code>
|
||
declarations at the top of the buffer and at the end. A way to do that would be to use <code>:%s/32/100/gc</code> and confirm only
|
||
when replacing <code>32</code> inside the functions arguments. But that’s not very practical. A better way is to use visual mode
|
||
commands! Select all the lines starting from <code>let x = …</code> to <code>let b = …</code> and press <code>:</code>. You can then enter the substitute
|
||
command to scope it to that selection; remember: <code>%</code> means the whole file; here, your command line will look like
|
||
something like <code>:'<,'></code>, which are visual marks (don’t change them!). So the substitute command will look like this:</p>
|
||
<pre><code class="language-vim">:'<,'>s/32/100/g
|
||
</code></pre>
|
||
<p>And that’s all! You can see that the replacement was limited to the portion of text you selected. That works in visual,
|
||
line and block visual modes, so have fun replacing things!</p>
|
||
<p><code>:h s_flags</code> for more information about the substitute flags.</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>19 Sep 2022 GMT</pubDate></item><item><title>12 Sep 2022</title><link>https://this-week-in-neovim.org/2022/Sep/12</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li>
|
||
<p><a href="https://www.reddit.com/r/neovim/comments/x7k7r7/spellsitter_merged_to_neovim_core/">spellsitter merged to core!</a>. A
|
||
huge contribution by <a href="https://github.com/lewis6991">@lewis6991</a> and <a href="https://github.com/vigoux">@vigoux</a>. If you did not know, <code>spellsitter</code> is a tree-sitter powered spell
|
||
checking mechanism that only checks spells for specified queries. This allows checking only relevant parts such as
|
||
comments or markdown text for spelling errors. (<a href="https://github.com/neovim/neovim/pull/19419">#19419</a>)</p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/15391">#15391</a> adds tree-sitter parsers and queries for core languages (C, Lua
|
||
and VimL).</p>
|
||
<p>Neovim now bundles parsers and highlight queries for Lua, Vimscript, and C; by default the former are installed in
|
||
<code>/usr/local/lib/nvim/parsers</code>, the latter in <code>/usr/local/share/nvim/runtime/queries</code>. Parsers and queries from plugins and
|
||
user configs should take precedence, but conflicts cannot be ruled out in some situations.</p>
|
||
<p>To enable treesitter highlighting for Lua, add <code>vim.g.ts_highlight_lua = true</code> to your <code>init.lua</code>. (Note that this
|
||
disables regex syntax highlighting, which plugins may rely on for functionality. In this case, add <code>vim.bo.syntax = 'ON'</code> to <code>ftplugin/lua.lua</code> in your config.)</p>
|
||
<p><strong>Note</strong> that this does not work with <code>brew install neovim --HEAD</code>, which doesn’t bundle parsers, see
|
||
<a href="https://github.com/orgs/Homebrew/discussions/3611">discussions/3611</a>.</p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/20039">#20039</a> updates <code>nvim_parse_cmd()</code>.</p>
|
||
<p><code>nvim_parse_cmd()</code> now returns <code>tab = -1</code> instead of <code>tab = 0</code> when <code>:tab</code> modifier is absent. This makes it possible
|
||
for <code>:[n]tab</code> to be properly forwarded to <code>nvim_cmd()</code> for all valid non-negative values.</p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/20105">#20105</a> changes tree-sitter runtime
|
||
queries.</p>
|
||
<p>The behavior of the runtime queries changed and now works as follows:</p>
|
||
<ul>
|
||
<li>The <em>first</em> query in the <code>rtp</code> without and <code>extends</code> modeline will be used as the base query (typically implies the
|
||
priority “user config > plugins > bundled runtime”).</li>
|
||
<li>All queries (without a specific order) with an <code>extends</code> modeline are concatenated with the base query, see <code>:h lua-treesitter-query</code>.</li>
|
||
</ul>
|
||
<p>This has to be done to correctly handle different version of the queries, working with different parsers following
|
||
<a href="https://github.com/neovim/neovim/pull/15391">#15391</a>.</p>
|
||
</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<p><strong>Plugins supporting <a href="https://semver.org">SemVer</a> will have a little badge on the right side of their title:
|
||
<span class="has-text-grey">SemVer</span> <span class="icon has-text-warning"><span class="fa-solid fa-star"></span></span>
|
||
Those plugins help contributing to a more stable Neovim ecosystem, and hence are put in front of others. Thank you!</strong></p>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<h3 id="help-autolist.nvim">
|
||
<a href="#help-autolist.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>What do you want for autolist.nvim?</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Automatic list continuation and formatting for neovim, powered by Lua.</p>
|
||
</blockquote>
|
||
<p><a href="https://github.com/gaoDean">@gaoDean</a> is asking the community what kind of features you want to be included in the next iteration of
|
||
<code>autolist.nvim</code>. Go help them out with the next feature set!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x8tvu1/what_do_you_want_for_autolistnvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/gaoDean/autolist.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-debulog">
|
||
<a href="#new-debulog">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>debuglog</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Have you ever used <code>print()</code> in your plugin code for debugging? This new plugin by <a href="https://github.com/smartpde">@smartpde</a> simplifies this use
|
||
case - leave log statements in the code and enable them when needed.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x78014/debuglog_for_plugin_developers/">Reddit</a></li>
|
||
<li><a href="https://github.com/smartpde/debuglog">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-telescope-recent-files">
|
||
<a href="#new-telescope-recent-files">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>telescope-recent-files</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Another new plugin by <a href="https://github.com/smartpde">@smartpde</a> for picking the recent files with Telescope. Unlike the built-in
|
||
oldfiles picker, this plugin also takes into account new buffers opened in the current session.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wzp90t/telescope_extension_for_recent_files/">Reddit</a></li>
|
||
<li><a href="https://github.com/smartpde/telescope-recent-files">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-kat.nvim">
|
||
<div class="level">
|
||
<div class="level-left">
|
||
<a href="#new-kat.nvim" class="level-item">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>kat.nvim</span>
|
||
</span>
|
||
</a>
|
||
</div>
|
||
<div class="level-right">
|
||
<span class="level-item has-text-grey">SemVer</span>
|
||
<span class="level-item icon has-text-warning">
|
||
<i class="fa-solid fa-star"></i>
|
||
</span>
|
||
</div>
|
||
</div>
|
||
</h3>
|
||
<p><img src="https://raw.githubusercontent.com/katawful/RandomAssets/main/gui-2022-example.png" alt="kat.nvim" /></p>
|
||
<p><a href="https://github.com/katawful">@katawful</a> made a colorscheme called <code>kat.nvim</code> which hit its <code>v1.0</code> version! This version is named <strong>Rotund Donskoy</strong>
|
||
— I will let you read the Reddit announcement to know why! — and it looks pretty cool!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xa698f/my_colorscheme_katnvim_has_finally_reached/">Reddit</a></li>
|
||
<li><a href="https://github.com/katawful/kat.nvim/">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-tundra">
|
||
<a href="#new-nvim-tundra">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-tundra</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/43378933/188616879-5de60642-2ee2-4632-8afe-18156fb7a16f.png" alt="nvim-tundra" /></p>
|
||
<p><a href="https://github.com/sam4llis">@sam4llis</a> released their own personal colorscheme, called <code>nvim-tundra</code>. It has native integration of other famous
|
||
plugins, such as:</p>
|
||
<ul>
|
||
<li><code>nvim-lspconfig</code></li>
|
||
<li><code>nvim-treesitter</code></li>
|
||
<li><code>nvim-treesitter-context</code></li>
|
||
<li><code>gitsigns.nvim</code></li>
|
||
<li><code>nvim-cmp</code></li>
|
||
<li><code>telescope.nvim</code></li>
|
||
<li><code>vim-dadbod-ui</code></li>
|
||
</ul>
|
||
<p>Go check it out!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x9yws0/nvimtundra_a_punchy_dark_colorscheme_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/sam4llis/nvim-tundra">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-sterm.nvim">
|
||
<a href="#new-sterm.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>sterm.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/19644160/188335145-f2afeadf-02e6-45ef-9a7c-511752c9c4d3.gif" alt="sterm.nvim" /></p>
|
||
<p>Hey, a new terminal plugin! <a href="https://github.com/Hvassaa">@Hvassaa</a> made their very first Neovim plugin, <code>sterm.nvim</code>, which stands for (s)tupid
|
||
(term)inal. It allows you to toggle between showing and hiding a terminal buffer. Simple, to the point. Congrats on your
|
||
first plugin!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x9blfo/stermnvim_a_stupid_terminal_and_my_first_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/Hvassaa/sterm.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-coal.nvim">
|
||
<a href="#new-coal.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>coal.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/77539239/189206233-957c2175-79a0-4cec-84e7-0444564439f1.png" alt="coal.nvim" /></p>
|
||
<p>Are you sick of colors? Do you enjoy monochromatic themes? Here’s a new theme for you then, made by
|
||
<a href="https://github.com/cranberry-clockworks">@cranberry-clockworks</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x99gsd/yet_another_dark_theme/">Reddit</a></li>
|
||
<li><a href="https://github.com/cranberry-clockworks/coal.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-last-color.nvim">
|
||
<a href="#new-last-color.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>last-color.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/25364469/189385514-563ca684-41c9-42db-a2a6-12921f4f3095.gif" alt="last-color.nvim" /></p>
|
||
<p>Procrastinating instead of doing their university duty, <a href="https://github.com/raddari">@raddari</a> made a fun Neovim plugin to recall your last call to
|
||
<code>:colorscheme</code>. You can then reuse it as you wish, and even automatically set your colorscheme based on the last
|
||
session.</p>
|
||
<p>But really, do your homework!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xaoxyb/lastcolornvim_remember_your_last_call_to/">Reddit</a></li>
|
||
<li><a href="https://github.com/raddari/last-color.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-lualine-lsp-progress.nvim">
|
||
<a href="#new-lualine-lsp-progress.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lualine-lsp-progress.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/56053130/115862312-b4b12c80-a3cf-11eb-9a0f-3cd67160d732.PNG" alt="lualine-lsp-progress.nvim" /></p>
|
||
<p>A plugin that shows the LSP progress inside <a href="https://github.com/nvim-lualine/lualine.nvim">lualine</a> statusline, by
|
||
<a href="https://github.com/WhoIsSethDaniel">@WhoIsSethDaniel</a>. I don’t know who they are, but that looks pretty cool!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xaj94i/lualinelspprogressnvim_a_lualine_lsp_progress/">Reddit</a></li>
|
||
<li><a href="https://github.com/WhoIsSethDaniel/lualine-lsp-progress.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-telescope-makefile.nvim">
|
||
<a href="#new-telescope-makefile.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>telescope-makefile.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://camo.githubusercontent.com/17715b57aa0174a310bb55553e6c59d42d019f5113710b7c01378d24fe2d9c3f/68747470733a2f2f676973742e6769746875622e636f6d2f70746574686e672f37616337663963393161343466303135643866616465613337336630303064322f7261772f666264666136386661336239313333383834626436653430323839383232346462363230656262302f626f782d3231303830392d323333362d33362e676966" alt="telescope-makefile" /></p>
|
||
<p>Do you use Makefile with lots of targets? If yes, try <a href="https://github.com/ptethng">@ptethng</a>’s first plugin. With help from
|
||
<a href="https://github.com/nvim-telescope/telescope.nvim">telescope.nvim</a> it can show and run available <code>make</code> targets.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x93zvg/working_in_makefile_just_got_easier_with_telescope/">Reddit</a></li>
|
||
<li><a href="https://github.com/ptethng/telescope-makefile">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mason-null-ls.nvim">
|
||
<a href="#new-mason-null-ls.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mason-null-ls.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/jayp0521">@jayp0521</a>’s first plugin! It can automatically install/upgrade tools needed for
|
||
<a href="https://github.com/jose-elias-alvarez/null-ls.nvim">null-ls</a> (with help from
|
||
<a href="https://github.com/williamboman/mason.nvim">mason.nvim</a>, hence the name).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xacyxr/jayp0521masonnulllsnvim_bridge_between_mason/">Reddit</a></li>
|
||
<li><a href="https://github.com/jayp0521/mason-null-ls.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-markid">
|
||
<a href="#new-markid">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>markid</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe
|
||
width="560"
|
||
height="315"
|
||
src="https://www.youtube.com/embed/6xNy07EIF2Q"
|
||
title="YouTube video player"
|
||
frameborder="0"
|
||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||
allowfullscreen>
|
||
</iframe>
|
||
<p>A Neovim plugin to highlight same-name identifiers with the same color, by <a href="https://github.com/David-Kunz">@David-Kunz</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xbk0kc/better_syntax_highlighting_markid_neovim_extension/">Reddit</a></li>
|
||
<li><a href="https://github.com/David-Kunz/markid">GitHub</a></li>
|
||
<li><a href="https://www.youtube.com/watch?v=6xNy07EIF2Q">Youtube</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-SJ.nvim">
|
||
<a href="#new-SJ.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>SJ.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/189609369-3703140e-f741-4dcb-b797-e86934fb9e50.png" alt="SJ.nvim" /></p>
|
||
<p><a href="https://github.com/woosaaahh">@woosaaahh</a> made a search based navigation combined with quick jump features plugin. Congrats! The name is two o and
|
||
three a, for people struggling installing the plugin!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/xbeyog/sjnvim_search_based_navigation_combined_with/">Reddit</a></li>
|
||
<li><a href="https://github.com/woosaaahh/sj.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-inc-rename.nvim">
|
||
<a href="#update-inc-rename.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>inc-rename.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><code>inc-rename.nvim</code> is a small plugin that lets you preview Neovim <code>vim.lsp.buf.rename</code> command as you type (nightly
|
||
only). It will highlight all occurrences of the variable in your buffers as you rename it.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/40792180/188309667-0d7e8086-ae48-4a25-8b01-df11d229b8c6.png" alt="inc_rename.nvim" /></p>
|
||
<p><code>inc-rename.nvim</code> released a new update which adds proper support for the popular
|
||
<a href="https://github.com/stevearc/dressing.nvim">dressing.nvim</a> plugin that enhances the appearance of Neovim’s default
|
||
<code>vim.ui.input</code>. Now, the new name of a variable will be mirrored in <code>dressing</code>’s input buffer as you type in the command
|
||
line. There is still a small issue with the UI though that can only be fixed in Neovim itself (see
|
||
<a href="https://github.com/neovim/neovim/issues/14735">#14735</a>).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x8fm48/increnamenvim_now_supports_dressingnvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/smjonas/inc-rename.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-diffview.nvim">
|
||
<a href="#update-diffview.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>diffview.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A plugin that uses the strengths of Neovim builtin <code>diff-mode</code> and offers some nice interfaces for viewing git-diffs
|
||
for any git revision, as well as exploring file history.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/2786478/188286293-13bbf0ab-3595-425d-ba4a-12f514c17eb6.png" alt="diffview.nvim" /></p>
|
||
<p>The plugin now has a merge tool! Also, that screenshot looks really nice, doesn’t it?! Congrats on the update,
|
||
<a href="https://github.com/sindrets">@sindrets</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x7iw4m/update_diffviewnvim_now_has_a_merge_tool/">Reddit</a></li>
|
||
<li><a href="https://github.com/sindrets/diffview.nvim">GitHub</a></li>
|
||
<li><a href="https://github.com/sindrets/diffview.nvim/pull/205">PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Nothing for this week…</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>12 Sep 2022 GMT</pubDate></item><item><title>5 Sep 2022</title><link>https://this-week-in-neovim.org/2022/Sep/5</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li><a href="https://github.com/neovim/neovim/pull/20020">#20020</a> introduced the following breaking changes:
|
||
<ul>
|
||
<li><code>nvim_get_keymap</code> now always returns a LuaRef object as <code>callback</code> for a Lua mapping regardless of how it is
|
||
called. The LuaRef object can be called from Lua and Vim script, but is lost over RPC.</li>
|
||
<li><code>maparg()</code> now returns a Funcref instead of a ref number as <code>callback</code> for a Lua mapping. The Funcref can be
|
||
called from Lua and Vim script, but is lost over RPC.</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-colortils.nvim">
|
||
<a href="#new-colortils.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>colortils.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/81827001/187237256-e8b736cc-17f3-4521-a2ad-3c814b503481.mov"
|
||
>
|
||
</video>
|
||
<p>A neovim plugin for working with colors. It has different tools for modifying and/or creating new colors. There are
|
||
also some utilities for working with css colors.
|
||
Tools include a picker for rgb values, picking colors on a gradient, lighten/darken a color and make a color more grey.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x0s3ku/colortilsnvim_work_with_colors_in_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/nvim-colortils/colortils.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-actually.nvim">
|
||
<a href="#new-actually.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>actually.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/187986258-a0a4ad5d-3409-462c-8d4a-77bb1f7fc7e5.gif" alt="actually.nvim" /></p>
|
||
<p><a href="https://github.com/mong8se">@mong8se</a> ported <a href="https://github.com/EinfachToll/DidYouMean">DidYouMean</a>, a Vim plugin, to Lua and thus Neovim.
|
||
Originally, the plugin is used when you open Neovim with a file that doesn’t exist. It then tries to suggest the real
|
||
file. A fun and useful plugin.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x1yd26/i_ported_didyoumean_to_lua_not_because_of_the_why/">Reddit</a></li>
|
||
<li><a href="https://github.com/mong8se/actually.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-hierarchy.nvim">
|
||
<a href="#new-hierarchy.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>hierarchy.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/187986713-22343f43-cc77-49b4-8134-6cfd32250ec7.gif" alt="hierarchy.nvim" /></p>
|
||
<p>A plugin by <a href="https://github.com/Slyces">@Slyces</a> providing something similar to what the LSP <em>type hierarchy</em> protocol could be… ahead of time.
|
||
This is similar to “implementations” of a given function interface, but for types. Probably very useful for OOP
|
||
languages. It’s easy to imagine that it would probably useful for interface dependencies as well (think of Haskell’s
|
||
classes, Rust traits, etc. etc.).</p>
|
||
<p>The plugin is still a WIP but it’s promising!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x1u1wh/type_hierarchy_find_child_methods/">Reddit</a></li>
|
||
<li><a href="https://github.com/Slyces/hierarchy.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-bob">
|
||
<a href="#new-bob">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>Bob</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/33547558/164478344-2707eb41-5b26-452e-ba05-c18282a3503a.gif" alt="bob" /></p>
|
||
<p>Struggle to keep your Neovim versions in check? <a href="https://github.com/MordechaiHadad/bob">Bob</a> provides an easy way to
|
||
install and switch versions on any system! Bob is a cross-platform and easy-to-use Neovim version manager, allowing for
|
||
easy switching between versions right from the command line. Similar to tools like <a href="https://rustup.rs/">rustup</a>,
|
||
<a href="https://www.haskell.org/ghcup/">ghcup</a>, <a href="https://github.com/nvm-sh/nvm">nvm</a>, etc.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x37b87/neovim_version_manager_looking_for_testers/">Reddit</a></li>
|
||
<li><a href="https://github.com/MordechaiHadad/bob">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-web-tools.nvim">
|
||
<a href="#new-web-tools.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>web-tools.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/1681295/187396525-82a387c8-addc-4776-9a03-78da40834d45.mov"
|
||
>
|
||
</video>
|
||
<p><a href="https://github.com/ray-x">@ray-x</a> has created a Neovim wrapper for <a href="https://github.com/BrowserSync/browser-sync">browser-sync</a> and HTTP/CSS LSP.
|
||
View your HTML/CSS files with a live web server locally.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/ray-x/web-tools.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-tint.nvim">
|
||
<a href="#new-tint.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>tint.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/31262046/188242698-3588074d-176b-4926-834f-ab9cf6302cd2.gif" alt="tint.nvim" /></p>
|
||
<p><a href="https://github.com/levouh">@levouh</a> saw some interest in utilizing recently merged <a href="https://github.com/neovim/neovim/pull/13457">support for per window highlight
|
||
namespaces</a> and made <code>tint.nvim</code>. It makes inactive windows… well,
|
||
tinted compared to an active one. Note that this plugin requires relatively fresh development Neovim version.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x4i18b/unfocused_window_dimming_using_new_windowlocal/">Reddit</a></li>
|
||
<li><a href="https://github.com/levouh/tint.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-ascii-blocks.nvim">
|
||
<a href="#new-ascii-blocks.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>ascii-blocks.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/24854248/188322078-dc4b8b81-ea6b-427d-918e-0c3faf479197.gif" alt="ascii-blocks.nvim" /></p>
|
||
<p><a href="https://github.com/superhawk610">@superhawk610</a> wrote their first plugin! It quickly converts ASCII boxes into more visually appealing extended UTF-8
|
||
boxes (with a help from <a href="https://github.com/Stepets/utf8.lua">utf8.lua</a>). Although it’s way easier to just type <code>+</code> and
|
||
<code>|</code>, the extended UTF-8 box drawing characters look so much nicer! Great job!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x4q2zs/asciiblocksnvim_my_first_lua_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/superhawk610/ascii-blocks.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-vim-smartq">
|
||
<a href="#new-vim-smartq">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>vim-smartq</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/marklcrns">@marklcrns</a> released a new version of <code>vim-smartq</code>! <code>vim-smartq</code> is a plugin to exit / delete buffers with respect to
|
||
window splits and tabs, and other types of buffer.</p>
|
||
<p>This new release adds a couple of new things:</p>
|
||
<ul>
|
||
<li>Support for <a href="https://github.com/folke/zen-mode.nvim">zen-mode.nvim</a>.</li>
|
||
<li>Support for floating windows.</li>
|
||
</ul>
|
||
<p>And a couple of performance / bug fixes. Good job!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x5zycz/github_marklcrnsvimsmartq_master_key_for_exiting/">Reddit</a></li>
|
||
<li><a href="https://github.com/marklcrns/vim-smartq">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-confiture.nvim">
|
||
<a href="#new-confiture.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>confiture.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Oh this is a nice name for a plugin! <a href="https://github.com/romainchapou">@romainchapou</a> made <code>confiture.nvim</code>, a new plugin to save and launch project
|
||
specific commands.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x5toku/confiturenvim_a_simple_way_to_save_and_launch/">Reddit</a></li>
|
||
<li><a href="https://github.com/romainchapou/confiture.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-compiler-explorer.nvim">
|
||
<a href="#new-compiler-explorer.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>compiler-explorer.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/188337753-bfea5024-655a-4d7d-9c68-255e5a66baa0.gif" alt="compiler-explorer.nvim" /></p>
|
||
<p>A new Neovim Lua plugin for interacting with <a href="https://godbolt.org">godbolt</a>, by <a href="https://github.com/krady21">@krady21</a></p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x5tajn/compilerexplorernvim_lua_plugin_for_interacting/">Reddit</a></li>
|
||
<li><a href="https://github.com/krady21/compiler-explorer.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-command-t">
|
||
<a href="#update-command-t">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>command-t</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://raw.githubusercontent.com/wincent/command-t/media/command-t.gif" alt="command-t" /></p>
|
||
<p>This is an erratum from last week, because an important update was not included and it should have been. <a href="https://github.com/wincent">@wincent</a>
|
||
rewrote <a href="https://github.com/wincent/command-t">command-t</a> in Lua! The plugin provides an extremely fast “fuzzy”
|
||
mechanism for:</p>
|
||
<ul>
|
||
<li>Opening files and buffers.</li>
|
||
<li>Jumping to tags and help.</li>
|
||
<li>Running commands, or previous searches and commands.</li>
|
||
</ul>
|
||
<p>Shout out to <a href="https://github.com/wincent">@wincent</a> for taking the time to convert that Vim plugin to Lua and Neovim! 👏</p>
|
||
<ul>
|
||
<li><a href="https://github.com/wincent/command-t">GitHub</a></li>
|
||
<li><a href="https://github.com/wincent/command-t/issues/391">Release plan for Lua</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-op.nvim">
|
||
<a href="#update-op.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>op.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/mrjones2014/op.nvim">op.nvim</a>, made by <a href="https://github.com/mrjones2014">@mrjones2014</a>, just got support to edit passwords directly
|
||
in Neovim. Pretty cool!</p>
|
||
<ul>
|
||
<li><a href="https://github.com/mrjones2014/op.nvim#secure-notes-editor">Secure Notes Editor</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-mind.nvim">
|
||
<a href="#update-mind.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mind.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/506592/188315191-15ce1b45-b01c-44c9-8ef4-6bdea23677c7.mp4"
|
||
>
|
||
</video>
|
||
<p><a href="https://github.com/phaazon">@phaazon</a> updated <code>Mind</code> to version <code>v2.2.0</code>, fixing bugs and adding a couple of new features. Here’s the changelog:</p>
|
||
<ul>
|
||
<li>Update requirements in the README (mainly <code>plenary.nvim</code>).</li>
|
||
<li>Clean and fix documentation typos and instructions.</li>
|
||
<li>Remove some deprecated warnings.</li>
|
||
<li>Fix state JSON deserialization for prettified JSON.</li>
|
||
<li>Fix change_icon_menu that didn’t correctly save the tree.</li>
|
||
<li>Add <code>:MindClose</code>.</li>
|
||
<li>Fix closing the tree with <code>:q</code>.</li>
|
||
<li>Fix opening global project (i.e. a cwd-based project living in the main persistence place).</li>
|
||
<li>Add smart project trees. Smart project trees are regular project trees, either global or local, but the interaction
|
||
depends on their existence. If no project tree exists for the current cwd, the user is prompted which kind of tree
|
||
they want (local / global). After that, <code>:MindOpenSmartProject</code> detects whether it must open a local or a global
|
||
tree, with a priority on local trees.</li>
|
||
</ul>
|
||
<p>All of that is available as part of <code>mind-v2.2.0</code>, so if you were using <code>branch = 'v2'</code>, you’re already covered.
|
||
Otherwise, you need to update to <code>branch = 'v2.2'</code> — no need to pin the patch version.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x5mk6v/announcement_mind_v22/">Reddit</a></li>
|
||
<li><a href="https://github.com/phaazon/mind.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-nvim-colorizer.lua">
|
||
<a href="#update-nvim-colorizer.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-colorizer.lua</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Although <a href="https://github.com/norcalli/nvim-colorizer.lua">norcalli/nvim-colorizer.lua</a> is pretty stable already, there
|
||
is now a more maintained fork: <a href="https://github.com/NvChad/nvim-colorizer.lua">NvChad/nvim-colorizer.lua</a>. It got merged
|
||
several pending PRs with some nice functionality. Check it out!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x4zjoa/nvimcolorizerlua_maintained_fork/">Reddit</a></li>
|
||
<li><a href="https://github.com/NvChad/nvim-colorizer.lua">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-heirline.nvim">
|
||
<a href="#new-heirline.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>heirline.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/36300441/187192460-18c0e9f0-3a82-4850-8eb5-0e47274187e8.gif" alt="heirline_tabline" /></p>
|
||
<p><a href="https://github.com/rebelot">@rebelot</a> made an update of <code>heirline.nvim</code> with a new tabline cookbook. You can take full control on buffer and tab
|
||
rendering (visible/active/inactive buffers, icons, file flags, git status, diagnostics, create the components you
|
||
like!), make buffer list to automatically paginate, and more.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x01sr9/to_anyone_liking_heirline_and_tablines_surprise_mo/">Reddit</a></li>
|
||
<li><a href="https://github.com/rebelot/heirline.nvim/blob/master/cookbook.md#tabline">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-packer">
|
||
<a href="#update-packer">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>packer</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/23341710/188269763-642014e1-9d2e-480b-bc0a-7525dd7e6ac0.mp4"
|
||
>
|
||
</video>
|
||
<p>You can now do <code>PackerUpdate --preview</code> (<a href="https://github.com/wbthomason/packer.nvim/pull/975">#975</a>) to first preview
|
||
possible changes, choose which plugins to actually update and then continue, instead of first updating and then checking
|
||
changes.</p>
|
||
<p>This together with two other recent changes:</p>
|
||
<ul>
|
||
<li>A compact setting to default to folding results to one line per plugin (<a href="https://github.com/wbthomason/packer.nvim/pull/1035">#1035</a>).</li>
|
||
<li>Ability to show diff of a range of commits (<a href="https://github.com/wbthomason/packer.nvim/pull/1034">#1034</a>).</li>
|
||
</ul>
|
||
<p>Gives a pretty neat update flow :):</p>
|
||
<p>Huge shoutout to <a href="https://github.com/akinsho">@akinsho</a> and <a href="https://github.com/wbthomason">@wbthomason</a> for reviews, ideas and testing!!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/x5uqfv/preview_flag_added_to_packerupdate/">Reddit</a></li>
|
||
<li><a href="https://github.com/wbthomason/packer.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>No tips for this week. 😦</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>5 Sep 2022 GMT</pubDate></item><item><title>29 Aug 2022</title><link>https://this-week-in-neovim.org/2022/Aug/29</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/19862">#19862</a> changed the behavior of <code>fargs</code> in Lua callbacks for
|
||
<code>nvim_create_user_command</code> with <code>nargs='?'</code> to match the behavior of <code>nargs='*'</code> if no arguments were provided
|
||
(<code>fargs = {}</code> instead of <code>fargs = { "" }</code>).</p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/19743">#19743</a> changed Vim functions <code>winheight()</code>, <code>winwidth()</code>,
|
||
<code>getwininfo()</code> to return inner window width and height. In non-multigrid UI the only change is that the returned
|
||
height now excludes winbar, and this is compatible with Vim. In multigrid UI this means the return value of these
|
||
functions now reflect the space available for buffer lines in a window. No change in <code>nvim_win_get_height</code> and
|
||
<code>nvim_win_get_width</code>.</p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/19931">#19931</a> modified the rules for defining highlights in tree-sitter
|
||
highlights.scm.</p>
|
||
<p>Previously the following two mechanisms were available</p>
|
||
<ul>
|
||
<li>use a capture name with initial uppercase. <code>@WarningMsg.foo</code> automatically mapped to highlight group <code>WarningMsg</code></li>
|
||
<li>(undocumented but often used) extend the <code>vim.treesitter.highlighter.hl_map</code> dict to translate lowercase groups.</li>
|
||
</ul>
|
||
<p><strong>Both of these are now removed</strong>. Instead capture names, <em>including</em> the initial <code>@</code>, are now directly usable as
|
||
highlight groups, both using ex commands and the api:</p>
|
||
<pre><code> :hi link @foo.bar MyHighlight
|
||
:lua vim.api.nvim_set_hl(0, "@string.special", {fg="Green"})
|
||
</code></pre>
|
||
<p>There are no special behaviour for upper-case names (case-insensitive just like all highlight group names). The same
|
||
fallback rule still applies: if a highlight is defined for <code>@foo</code> but not for <code>@foo.bar</code>, the former is used for
|
||
<code>@foo.bar</code> captures.</p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/neovim/neovim/pull/19830">#19830</a> made some highlight group names modifications.</p>
|
||
<p>Previously if a highlight group with a name outside the regexp <code>[a-zA-Z0-9_]</code> was defined, Nvim would emit an invalid
|
||
character warning message. This has now been promoted to an error with the code <code>E5248</code>.</p>
|
||
<p>Additionally the ASCII character period (<code>.</code>) and at-sign (<code>@</code>) has been added to the allowed list of characters of a
|
||
highlight group name to support the application of defining hierarchical highlight groups, e.g. <code>@keyword</code>.</p>
|
||
</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<hr />
|
||
<h3 id="help-autolist.nvim">
|
||
<a href="#help-autolist.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>Testers wanted for autolist.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/97860672/186395300-2225ce49-af81-45cc-8ec0-87f14fc80cd4.mp4"
|
||
>
|
||
</video>
|
||
<p>The author of <code>autolist.nvim</code>, <a href="https://github.com/gaoDean">@gaoDean</a> is asking for Markdown testers, before starting to support other filetypes.
|
||
The goal is to stabilize the current state of the plugin for Markdown, then switch to other types of lists from other
|
||
filetypes.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wynye9/testers_wanted_for_autolistnvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/gaoDean/autolist.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="help-regex.nvim">
|
||
<a href="#help-regex.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>Calling for regex.nvim testers!</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/Djancyp">@Djancyp</a> is asking for volunteers to install and try their <code>regex.nvim</code> plugin. The plugin helps you live test your
|
||
regex from within your code.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wym9fi/regex_nvim_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/Djancyp/regex.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="help-catppuccin.nvim">
|
||
<a href="#help-catppuccin.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>catppuccin.nvim is looking for new collaborators</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>With retirement of <a href="https://github.com/nullchilly">@nullchilly</a>, <code>catppuccin.nvim</code> is looking for new collaborators.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/catppuccin/nvim/discussions/261">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-better-comment.nvim">
|
||
<a href="#new-better-comment.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>better-comment.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/186279417-1ffb86cd-0f56-47cc-9707-9b84a00a88d8.png" alt="better-comment.nvim" /></p>
|
||
<p>This week is starting pretty good, with a new plugin by <a href="https://github.com/Djancyp">@Djancyp</a>! <code>better-comment.nvim</code> is a plugin that modifies the
|
||
highlighting of your comments to make them pop-out, along with virtual text. It’s based on tree-sitter.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wvpaiq/better_comments_nvim_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/Djancyp/better-comments.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-prettierrc.nvim">
|
||
<a href="#new-prettierrc.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>prettierrc.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/numToStr">@numToStr</a> made this new plugin that reads <code>.prettier</code> configuration and applies the content to your Neovim options.
|
||
Interesting idea! The motivation came from <a href="https://github.com/gpanders/editorconfig.nvim">editorconfig.nvim</a></p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wuuemq/prettierrcnvim_editor_setting_via_prettier_config/">Reddit</a></li>
|
||
<li><a href="https://github.com/numToStr/prettierrc.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-notifier.nvim">
|
||
<a href="#new-notifier.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>notifier.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/39092278/186714682-f51ea665-6fca-4442-bad8-8cc7fda2f138.gif" alt="https://github.com/vigoux/notifier.nvim" /></p>
|
||
<p>A minimalistic plugin by <a href="https://github.com/vigoux">@vigoux</a> that hooks in both <code>vim.notify</code> and LSP status updates, and reports it in a non-intrusive UI.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/vigoux/notifier.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-neoscopes">
|
||
<a href="#new-neoscopes">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>neoscopes</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A new plugin by <a href="https://github.com/smartpde">@smartpde</a> for simple project management and getting around in large monorepositories.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wwcdys/neoscopes_lightweight_project_management_in_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/smartpde/neoscopes">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-go.nvim">
|
||
<a href="#update-go.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>go.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe
|
||
width="560"
|
||
height="315"
|
||
src="https://www.youtube.com/embed/tsLnEfYTgcM"
|
||
title="YouTube video player"
|
||
frameborder="0"
|
||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||
allowfullscreen
|
||
></iframe>
|
||
<p><code>go.nvim</code> received some updates lately. Among the new features:</p>
|
||
<ul>
|
||
<li>
|
||
<p><code>luasnips</code> support with dynamic nodes.</p>
|
||
</li>
|
||
<li>
|
||
<p>Go package outline sidebar.</p>
|
||
</li>
|
||
<li>
|
||
<p>JSON to go struct.</p>
|
||
</li>
|
||
<li>
|
||
<p>Generate return variables for function call.</p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://www.reddit.com/r/neovim/comments/wvma2t/new_features_for_gonvim/">Reddit</a></p>
|
||
</li>
|
||
<li>
|
||
<p><a href="https://github.com/ray-x/go.nvim">GitHub</a></p>
|
||
</li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-mind.nvim">
|
||
<a href="#update-mind.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mind.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/187027396-22994e72-a0ba-4de4-bee7-289bcfce548a.png" alt="mind.nvim v2.1" /></p>
|
||
<p><a href="https://github.com/phaazon">@phaazon</a> released <strong>Mind v2.1</strong>, which adds a lot of new features and stabilizes already existing features. The
|
||
feature set is quite large for this minor release so feel free to have a look at the Reddit announcement. Among the new
|
||
features, Mind can now be used with <strong>Neovim 0.7.2</strong>, doesn’t require a window-picker plugin anymore, supports tree
|
||
indexing and allows to create, search, change icons and operate trees and nodes via fuzzy searching the index, or even
|
||
supports getting nodes’ links (either data path or URL) to insert them in your document.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wxt6gx/announcement_mindnvim_v21_is_out/">Reddit</a></li>
|
||
<li><a href="https://github.com/phaazon/mind.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-luasnip">
|
||
<a href="#update-luasnip">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>LuaSnip</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/41961280/122515860-5179fa00-d00e-11eb-91f7-331893f61fbf.mp4"
|
||
>
|
||
</video>
|
||
<p>Luasnip now supports vimscript-evaluation in snipmate-snippets and regex-transformations in lsp-snippets.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/L3MON4D3/LuaSnip">GitHub</a></li>
|
||
<li><a href="https://github.com/L3MON4D3/LuaSnip/blob/master/DOC.md#snipmate-parser">Snipmate</a></li>
|
||
<li><a href="https://github.com/L3MON4D3/LuaSnip/blob/master/DOC.md#transformations">Transformations</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-mini.surround">
|
||
<a href="#update-mini.surround">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mini.surround</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24854248/187073376-ae7aaddf-7295-46e2-a6b5-f3a6b16e73f2.mp4"
|
||
>
|
||
</video>
|
||
<p><a href="https://github.com/echasnovski">@echasnovski</a> made a massive update of <code>mini.surround</code>. It is now more aligned with <code>mini.ai</code> (other <code>mini.nvim</code>
|
||
module). Some of new features:</p>
|
||
<ul>
|
||
<li>New surrounding specification format. This is a <strong>breaking change</strong> for those who defined custom input surroundings.
|
||
Previous format will work until next release and transition to new one <a href="https://github.com/echasnovski/mini.nvim/blob/085baefa6aca44526be621b15e7b688f996c2daf/doc/mini.txt#L5411-L5420">is pretty
|
||
straightforward</a>.</li>
|
||
<li>Tree-sitter support. Thanks to new specification format you can now use tree-sitter based surroundings. More
|
||
information is in the <a href="https://github.com/echasnovski/mini.nvim/blob/085baefa6aca44526be621b15e7b688f996c2daf/doc/mini.txt#L5727-L5826">help file</a>.</li>
|
||
<li>“Last”/“next” extended mappings. With the same idea as in <code>mini.ai</code>, you can now use mappings with special suffixes to
|
||
operate on previous or next surrounding.</li>
|
||
<li>Support of <code>v:count</code> for input surrounding.</li>
|
||
<li>For ‘tpope/vim-surround’ lovers, open bracket identifiers (<code>(</code>, <code>[</code>, <code>{</code>, <code><</code>) now include inner padding.</li>
|
||
</ul>
|
||
<p>Here is a <a href="https://github.com/echasnovski/mini.nvim/blob/main/CHANGELOG.md#minisurround">full list of changes</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wzpzei/minisurround_new_features_treesitter_support/">Reddit</a></li>
|
||
<li><a href="https://github.com/echasnovski/mini.nvim#minisurround">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-nvim-treesitter-textobjects">
|
||
<a href="#update-nvim-treesitter-textobjects">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-treesitter-textobjects</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>The <code>@call.inner</code> capture is now unified across all languages. It generally means “all arguments, without parenthesis,
|
||
of function call”.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/nvim-treesitter/nvim-treesitter-textobjects/">GitHub</a></li>
|
||
<li><a href="https://github.com/nvim-treesitter/nvim-treesitter-textobjects/pull/250">PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-vimtex">
|
||
<a href="#update-vimtex">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>vimtex</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>The <code>vimtex</code> plugin by <a href="https://github.com/lervag">@lervag</a> got a new 2.11 release. Nothing huge, but still nice!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wwurqf/vimtex_v211/">Reddit</a></li>
|
||
<li><a href="https://github.com/lervag/vimtex/releases/tag/v2.11">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Macros are one of the most powerful tools of Vim / Neovim. They allow to <em>record</em> a series of Neovim commands and
|
||
actions, and replay them later. You start recording to a record register by pressing <code>q</code> and the register (like <code>a</code>, so
|
||
<code>qa</code>), then you perform some actions and once you are done, you press <code>q</code> again to register all those actions to the
|
||
<code>a</code> macro.</p>
|
||
<p>Then, you can invoke the macro with <code>@a</code>, or with a number in front of it if you want to repeat the macro several times,
|
||
like <code>10@a</code>.</p>
|
||
<p>Here’s a short video to demonstrate how powerful macros can be. Their power is almost unlimited, especially since you
|
||
can even play macros inside recorded macros!</p>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/506592/187097948-cefaab70-bf74-4cc6-9f40-e9d7e4debf62.mp4"
|
||
>
|
||
</video>
|
||
<p>That’s all for this week. See you all next month, on the <strong>5th Sep 2022</strong> for a new full batch of Neovim updates.</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>29 Aug 2022 GMT</pubDate></item><item><title>22 Aug 2022</title><link>https://this-week-in-neovim.org/2022/Aug/22</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<p>Nothing much this week… 🤷</p>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<h3 id="help-nvim-surround">
|
||
<a href="#help-nvim-surround">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>nvim-surround: testers wanted!</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/48545987/178679494-c7d58bdd-d8ca-4802-a01c-a9444b8b882f.mp4"
|
||
>
|
||
</video>
|
||
<p><a href="https://github.com/kylechui/nvim-surround">@kylechui</a> is calling for helpers to stress, test and polish their plugin!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wpj2po/nvimsurround_testers_wanted/">Reddit</a></li>
|
||
<li><a href="https://github.com/kylechui/nvim-surround">GitHub</a></li>
|
||
<li><a href="https://github.com/kylechui/nvim-surround/discussions/141">Pre v2.0.0 release discussion</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="help-ccls.nvim">
|
||
<a href="#help-ccls.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>ccls.nvim: testers wanted!</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>A plugin to configure the <code>ccls</code> language server and use its extensions. <code>ccls</code> is a language server for C, C++ and
|
||
variants that offers comparable features as <code>clangd</code>.</p>
|
||
</blockquote>
|
||
<p><a href="https://github.com/ranjithshegde">@ranjithshegde</a> is looking for people wanting to stress-test their plugin before going to production!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wtx3gt/new_plugin_cclsnvim_calling_for_testers_almost/">Reddit</a></li>
|
||
<li><a href="https://github.com/ranjithshegde/ccls.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<h3 id="guide-ascii-welcome-screen">
|
||
<a href="#guide-ascii-welcome-screen">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>Add an ASCII art welcome screen to Neovim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/184591043-d0821ae2-5bb8-4bcd-ac18-474cb41f2283.gif" alt="" /></p>
|
||
<p>A blog article by Jake Manger about how to add ASCII art welcome screens to Neovim! <code>r/unixporn</code> are peeps are jealous.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wossms/i_made_a_guide_on_how_to_add_an_ascii_art_welcome/">Reddit</a></li>
|
||
<li><a href="https://betterprogramming.pub/how-to-show-an-ascii-art-welcome-screen-at-the-top-of-the-vim-terminal-b8787f6ea9f4?sk=2da30eea0be93e36af652fdad0656efe&gi=e14a8b9b4f4f">Blog article</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="guide-inject-syntax-highlighting-treesitter">
|
||
<a href="#guide-inject-syntax-highlighting-treesitter">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>Inject syntax highlighting from/to any language using nvim-treesitter</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A Youtube video explaining how to inject syntax highlighting easily for embedding languages in others, using
|
||
tree-sitter.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wq4jr4/inject_syntax_highlighting_from_a_different/">Reddit</a></li>
|
||
<li><a href="https://www.youtube.com/watch?v=NdVK9JvRZe4">Youtube</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="nvim-FeMaco.lua">
|
||
<a href="#nvim-FeMaco.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-FeMaco.lua</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/23341710/182566777-492c5e81-95fc-4443-ae6a-23ba2519960e.png" alt="nvim-FeMaco.lua" /></p>
|
||
<p>A small plugin allowing to edit markdown code-blocks with correct filetype in a floating window. This allows you to use
|
||
all of your config for your favorite language. The buffer will be also linked to a temporary file in order to allow LSPs
|
||
to work properly.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wfut6c/introducing_femaco_catalyze_your_fenced_markdown/">Reddit</a></li>
|
||
<li><a href="https://github.com/AckslD/nvim-FeMaco.lua/">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-document-color.nvim">
|
||
<a href="#new-document-color.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>document-color.nvim 🌈</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/40532058/184640748-8e71ad1e-c300-4040-b4f2-8a5bba3e9588.gif" alt="document-color.nvim demo" /></p>
|
||
<p>A new colorizer plugin for <a href="https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#tailwindcss">tailwindcss</a>
|
||
and any LSP servers that support <a href="https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_documentColor"><code>textDocument/documentColor</code></a>!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/woyyrz/documentcolornvim_lspbased_colorizer_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/mrshmllow/document-color.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-battery.nvim">
|
||
<a href="#new-battery.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>battery.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/185641622-5166c141-2867-44a1-8c24-44b0e0403561.png" alt="battery.nvim" /></p>
|
||
<p>Nice, a newcomer! For their first plugin, <a href="https://github.com/justinhj">@justinhj</a> made a plugin to display the battery status of your laptop in your
|
||
favorite statusline. That’s pretty neat honestly, so congrats on your first plugin!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wrb34c/batterynvim_customizable_battery_info_in_your/">Reddit</a></li>
|
||
<li><a href="https://github.com/justinhj/battery.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-textmate">
|
||
<a href="#new-nvim-textmate">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-textmate</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://raw.githubusercontent.com/icedman/nvim-textmate/main/screenshots/Screenshot%20from%202022-08-18%2010-15-03.png" alt="nvim-textmate" /></p>
|
||
<p>A textmate-based syntax highlighter to nvim, compatible with VScode themes and grammars, by <a href="https://github.com/icedman/nvim-textmate">@icedman</a> (not to be
|
||
confused with the Top Gun™ pilot, though).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wr7wyu/syntax_highlighting_with_textmatevscode_grammars/">Reddit</a></li>
|
||
<li><a href="https://github.com/icedman/nvim-textmate">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-image.nvim">
|
||
<a href="#new-image.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>image.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/185643732-61699305-8ebb-41db-8a31-bcbfb090877a.gif" alt="image.nvim" /></p>
|
||
<p>An ASCII art image viewer, by <a href="https://github.com/samodostal/image.nvim">@samodostal</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wq48r4/introducing_imagenvim_image_viewer_as_ascii_art/">Reddit</a></li>
|
||
<li><a href="https://github.com/samodostal/image.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-toggler">
|
||
<a href="#new-nvim-toggler">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-toggler</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/185644428-c1f1d273-a003-4f80-a8be-9c3992b7953d.gif" alt="nvim-toggler" /></p>
|
||
<p>And another new fun plugin — by <a href="https://github.com/nguyenvukhang">@nguyenvukhang</a>! What does it do? Well, it inverts the word / text under the cursor.
|
||
<code>on</code> becomes <code>off</code>, <code>true</code> becomes <code>false</code>, <code>false</code> becomes <code>file_not_found</code>, etc.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wpywpn/nvimtoggler_invert_words_with_two_keystrokes/">Reddit</a></li>
|
||
<li><a href="https://github.com/nguyenvukhang/nvim-toggler">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-starry.nvim">
|
||
<a href="#new-starry.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>starry.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/1681295/185341657-8dd31ed7-e9de-4710-8a20-c3d85ca02c1c.png" alt="dark-solar" /></p>
|
||
<p>This is not really a new plugin but instead, a new colorscheme, by <a href="https://github.com/ray-x">@ray-x</a>. The new coloscheme is named <code>dark-solar</code>
|
||
and is a more vivid version of the famous <code>solarized</code>. Don’t forget the sunscreen. 😎</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wsrdps/darksolar_a_vivid_version_of_solarized_nvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/ray-x/starry.nvim#dark-solar">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-emoji_picker.nvim">
|
||
<a href="#new-emoji_picker.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>emoji_picker</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/87934749/185742547-6f7c73d9-1998-47a2-ac83-64233ec252c4.mp4"
|
||
>
|
||
</video>
|
||
<p>A new plugin by <a href="https://github.com/WilsonOh">@WilsonOh</a>. Wait 🤯, not only a new plugin, but their very first plugin 🥡! It’s an emoji picker for
|
||
Neovim! It uses a float to display a list of emoji and it’s very slick and simple 🤪, so if you like emoji 💮,
|
||
let’s go! 🚀</p>
|
||
<p>Congrats on your first plugin and for contributing to the Neovim ecosystem!🥇</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wt4jtw/emoji_pickernvim_simple_emoji_picker_plugin/">Reddit</a></li>
|
||
<li><a href="https://github.com/WilsonOh/emoji_picker-nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-vim-illuminate">
|
||
<a href="#new-vim-illuminate">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>vim-illuminate</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A plugin for automatically highlighting other uses of the word under the cursor using either LSP, tree-sitter, or regex
|
||
matching. Think of <a href="https://github.com/anhpt379/nvim-cursorword">nvim-cursorword</a> or
|
||
<a href="https://github.com/itchyny/vim-cursorword">vim-cursorword</a>, but different. And this is the <code>v2</code>!</p>
|
||
<p>A plugin by <a href="https://github.com/RRethy">@RRethy</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wssjnc/vimilluminate_v2_full_lua_rewrite_with/">Reddit</a></li>
|
||
<li><a href="https://github.com/RRethy/vim-illuminate">GitHub</a></li>
|
||
<li><a href="https://github.com/RRethy/vim-illuminate/issues/111">Migration guid from v1</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-suit.nvim">
|
||
<a href="#new-suit.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>suit.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/185754086-22622722-fcab-4692-ba97-5f76c1319fd2.png" alt="suit.nvim" /></p>
|
||
<p>A plugin by <a href="https://github.com/doums">@doums</a> to enhance the <code>vim.ui.input</code> and <code>vim.ui.select</code> Neovim new UI hooks. Pretty cool.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wsgshl/suitnvim_a_plugin_to_enhance_the_default/">Reddit</a></li>
|
||
<li><a href="https://github.com/doums/suit.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mind.nvim">
|
||
<a href="#new-mind.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mind.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/185793543-e12baf93-8329-4e3b-96d2-da38547691ee.png" alt="mind.nvim" /></p>
|
||
<p>A new plugin by <a href="https://github.com/phaazon">@phaazon</a> – myself! <code>mind.nvim</code> is an organizer plugin based on tree views, interactive and actionable
|
||
nodes to implement a large variety of workflows, from note taking, journaling to tasks management and links collection!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wucubc/announcement_mindnvim_v20/">Reddit</a></li>
|
||
<li><a href="https://github.com/phaazon/mind.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-nvim-treesitter-textobjects">
|
||
<a href="update-nvim-treesitter-textobjects">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-treesitter-textobjects</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>One can now optionally configure <a href="https://github.com/nvim-treesitter/nvim-treesitter-textobjects/"><code>nvim-treesitter-textobjects</code></a> to include preceding xor succeeding whitespace.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/nvim-treesitter/nvim-treesitter-textobjects/">GitHub</a></li>
|
||
<li><a href="https://github.com/nvim-treesitter/nvim-treesitter-textobjects/pull/235">PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-mini.nvim">
|
||
<a href="update-mini.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mini.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><code>mini.nvim</code> is a collection of minimal, independent, and fast Lua modules dedicated to improve Neovim (version 0.5 and
|
||
higher) experience.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/185640433-500443a8-f1dc-4e9a-a960-2209a3c7a394.png" alt="mini.nvim" /></p>
|
||
<p>This week, <a href="https://github.com/echasnovski">@echasnovski</a> made some color updates:</p>
|
||
<ul>
|
||
<li><a href="https://github.com/echasnovski/mini.nvim#minibase16">mini.base16</a> got new 25 plugin integrations along with option to
|
||
granularly control what highlight groups are created.</li>
|
||
<li>There is a new <code>'minicyan'</code> color scheme!</li>
|
||
</ul>
|
||
<p>Great update!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wsboke/mininvim_color_updates_25_new_plugin_integrations/">Reddit</a></li>
|
||
<li><a href="https://github.com/echasnovski/mini.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-autolist.nvim">
|
||
<a href="update-autolist.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>autolist.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p>Minimal automatic list continuation for neovim, powered by lua.</p>
|
||
</blockquote>
|
||
<p>The plugin now supports context-aware renumbering/remarking of lists.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wsa8k7/autolistnvim_now_supports_contextaware/">Reddit</a></li>
|
||
<li><a href="https://github.com/gaoDean/autolist.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-nvim-symbols-outline.nvim">
|
||
<a href="update-nvim-symbols-outline.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-symbols-outline</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>An update by <a href="https://github.com/simrat39">@simrat39</a>. The plugin now supports JSX and TSX!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wpd2sz/symbolsoutlinenvim_jsxtsx_support/">Reddit</a></li>
|
||
<li><a href="https://github.com/simrat39/symbols-outline.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p>Neovim has the concept of <em>registers</em> (<code>:h registers</code>). Lots of those registers have a semantic use, like the unnamed
|
||
register (<code>""</code>), that is used by default by all the <code>d</code>, <code>c</code>, <code>s</code>, <code>x</code> and <code>p</code> commands. It is recommended to read the
|
||
helpe pages for all the registers, but a couple of interesting things:</p>
|
||
<ul>
|
||
<li>You can select the register you want to use one the listed commands above with by using the <code>"</code> key. So <code>"a</code> is the
|
||
<code>a</code> register. This is super powerful, because you can for instance put a couple of lines, functions, etc. in a couple
|
||
of different registers, and paste them later at once, without having to go back and forth (<code>"ap</code>, <code>"bp</code>, etc.).</li>
|
||
<li>A pretty cool thing to know: in <em>insert</em> mode, the <kbd>C-r</kbd> keybinding allows you to paste the content of any
|
||
register. So you can press <kbd>C-r a</kbd> to insert the content of <code>"a</code> in <em>insert</em> mode!</li>
|
||
<li>Finally, don’t forget that you can use all of the above while writing <em>macros</em>, making them incredibly powerful (and
|
||
that’s probably one of the main reason why we don’t really need multi cursor in Vim / Neovim!).</li>
|
||
</ul>
|
||
<p>That’s all for this week. See you next week for another batch of Neovim news!</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>22 Aug 2022 GMT</pubDate></item><item><title>15 Aug 2022</title><link>https://this-week-in-neovim.org/2022/Aug/15</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li>Following HEAD: breaking changes on master (<a href="https://github.com/neovim/neovim/issues/14090">#14090</a>)
|
||
<ul>
|
||
<li><a href="https://github.com/neovim/neovim/pull/19693">#19693</a>: changed the nightly (and release) builds and
|
||
appimages to be built on Ubuntu 20.04 instead of Ubuntu 18.04, which is
|
||
<a href="https://github.blog/changelog/2022-08-09-github-actions-the-ubuntu-18-04-actions-runner-image-is-being-deprecated-and-will-be-removed-by-12-1-22/">being deprecated by Github</a>.
|
||
This means that Linux releases (including app images) from now on require GLIBC 2.29 or above. Users that cannot
|
||
upgrade their distribution need to
|
||
<a href="https://github.com/neovim/neovim/wiki/Building-Neovim#building">build from source</a> instead.</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<h3 id="help-luasnip.nvim">
|
||
<a href="#help-luasnip.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>LuaSnip is looking for testers</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/L3MON4D3">@L3MON4D3</a> is looking for help to test a “biiiig PR” about optionally using a <a href="https://github.com/kmarius/jsregexp">jsregexp</a>
|
||
for better snippet parsing.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wnetwo/luasnip_need_help_testing_a_biiiig_pr/">Reddit</a></li>
|
||
<li><a href="https://github.com/L3MON4D3/LuaSnip">GitHub</a></li>
|
||
<li><a href="https://github.com/L3MON4D3/LuaSnip/pull/445">Tester PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<h3 id="article-dot-repeat">
|
||
<a href="#article-dot-repeat">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Add dot-repeat support to your plugins</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://gist.github.com/kylechui">@kylechui</a> wrote a Gist on how to add dot-repeat support to your plugin. They extend on using <code>opfunc</code> (see
|
||
<code>:h opfunc</code> in your Neovim instance) to make dot-repeat even more usable. A great short article to read!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wkqkzf/adding_dotrepeat_to_plugins/">Reddit</a></li>
|
||
<li><a href="https://gist.github.com/kylechui/a5c1258cd2d86755f97b10fc921315c3">Gist</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="article-5-years-retro">
|
||
<a href="#article-5-years-retro">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>5 years of (Neo)vim - A personal retrospective</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://gist.github.com/jackpordi">@jackpordi</a> reflects on his 5 years of using Vim and Neovim, from his early days of being a complete newcomer, all the
|
||
way rewriting everything in Lua and switching over to Neovim LSP. A piece containing lessons learnt over the years as
|
||
well as future hopes and dreams.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wmn6on/5_years_of_neovim_a_personal_retrospective/">Reddit</a></li>
|
||
<li><a href="https://jackpordi.com/posts/5-years-of-vim-retro">Blog</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="guide-execute-anything-in-neovim">
|
||
<a href="#guide-execute-anything-in-neovim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
</span>
|
||
<span>Execute anything in Neovim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Another video by the <a href="https://github.com/tjdevries">@tjdevries</a> about executing stuff in Neovim thanks to Lua.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wmwway/execute_anything_in_neovim_now_customizable_part_2/">Reddit</a></li>
|
||
<li><a href="https://www.youtube.com/watch?v=HlfjpstqXwE&t=32s">Youtube</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="article-lightspeed-leap-blog">
|
||
<a href="#article-lightspeed-leap-blog">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Lightspeed / Leap: rethinking visual and operator pending keymaps</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/ggandor">@ggandor</a> made a proposal to change the way Lightspeed and Leap work regarding visual and operator-pending modes.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wo7481/lightspeedleap_rethinking_visual_and/">Reddit</a></li>
|
||
<li><a href="https://github.com/ggandor/leap.nvim/discussions/41">GitHub article</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-overlength.nvim">
|
||
<a href="#new-overlength.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>overlength.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/183854699-81a73232-01c2-4b5a-8ce8-33f8ff1deafe.png" alt="overlength.nvim" /></p>
|
||
<p>A new (and first!) plugin by <a href="https://github.com/lcheylus">@lcheylus</a>. <code>overlength.nvim</code> helps highlighting the part of a line that doesn’t fit into
|
||
<code>textwidth</code> (or any kind of width you like).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wk2eja/overlengthnvim_plugin_to_highlight_the_part_of_a/">Reddit</a></li>
|
||
<li><a href="https://github.com/lcheylus/overlength.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-winpick.nvim">
|
||
<a href="#new-winpick.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>winpick.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/184544135-496212ba-261e-4d1c-bade-9df65936dc77.png" alt="winpick.nvim" /></p>
|
||
<p><a href="https://github.com/gbrlsnchs">@gbrlsnchs</a> made a new window picker plugin! Being used to
|
||
<a href="https://github.com/s1n7ax/nvim-window-picker">nvim-window-picker</a>, I can’t say it’s <em>that</em> similar, as the design
|
||
choice of <code>winpick.nvim</code> is to put the jump shortcut as a float in the middle of the window. Quite similar, quite not.
|
||
Eh. Nice work <a href="https://github.com/gbrlsnchs">@gbrlsnchs</a>!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wl7413/winpicknvim_plugin_for_picking_a_window/">Reddit</a></li>
|
||
<li><a href="https://github.com/gbrlsnchs/winpick.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-exrc.nvim">
|
||
<a href="#new-exrc.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>exrc.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A nice plugin by <a href="https://github.com/MunifTanjim">@MunifTanjim</a> for local configuration with confirmation, which can be super useful depending on the
|
||
project you work on. The announcement also has a blog article explaining the why and how of the plugin.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wl3x9g/exrcnvim_secure_project_local_config_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/MunifTanjim/exrc.nvim">GitHub</a></li>
|
||
<li><a href="https://muniftanjim.dev/blog/neovim-project-local-config-with-exrc-nvim/">Blog article</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-template-string.nvim">
|
||
<a href="#new-template-string.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>template-string.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/184544657-cd4345d8-63a2-490a-8425-8ee0eb555680.gif" alt="template-string.nvim" /></p>
|
||
<p>Woah, a new comer! Congrats to <a href="https://github.com/axelvc">@axelvc</a> for their first plugin, which is a template string converter which goal is to
|
||
do the same as the <a href="https://marketplace.visualstudio.com/items?itemName=meganrogge.template-string-converter">VS Code Template String converter
|
||
plugin</a>. Nice work!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wmag59/first_plugin_template_string_converter_javascript/">Reddit</a></li>
|
||
<li><a href="https://github.com/axelvc/template-string.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-op.nvim">
|
||
<a href="#new-op.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>op.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://github.com/mrjones2014/demo-gifs/raw/master/op-nvim-plugin-v2.gif" alt="op.nvim" /></p>
|
||
<p>It’s 1Password, but it’s in Neovim. And it’s by <a href="https://github.com/mrjones2014">@mrjones2014</a>. Neat.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wm08ac/opnvim_1password_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/mrjones2014/op.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-debugprint.nvim">
|
||
<a href="#new-debugprint.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>debugprint.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/107015/184187236-34f80a31-9626-4a3b-8d03-0f52752781e6.mp4"
|
||
>
|
||
</video>
|
||
<p>Inspired by <a href="https://github.com/bergercookie/vim-debugstring">vim-debugstring</a>, <a href="https://github.com/andrewferrier">@andrewferrier</a> built this new plugin
|
||
that does what its name says. It inserts debug statements via print calls. Long live <code>print('aaaaaaaaaaaaa')</code>!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wlwofb/announcing_debugprintnvim_debug_via_print/">Reddit</a></li>
|
||
<li><a href="https://github.com/andrewferrier/debugprint.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-cool-substitute.nvim">
|
||
<a href="#new-cool-substitute.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>cool-substitute.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/184544870-70c36a91-46d1-48b9-bb4a-555139884cd6.gif" alt="cool-substitute.nvim" /></p>
|
||
<p>You know <code>sed</code>? <a href="https://github.com/otavioschwanck">@otavioschwanck</a> made something similar but more user-friendly, with support for multi-cursor, etc.,
|
||
and it’s in Neovim, of course. Great job.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wld7wv/new_plugin_coolsubstitute/">Reddit</a></li>
|
||
<li><a href="https://github.com/otavioschwanck/cool-substitute.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mix.nvim">
|
||
<a href="#new-mix.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mix.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/10671410/181785935-dee6da82-f1d2-4ced-a214-dcc202caba45.gif" alt="mix.nvim" /></p>
|
||
<p>New plugin for Elixir developers which adds a <code>:Mix</code> (or just <code>:M</code>) command to call any arbitrary Mix command. By <a href="https://github.com/brendalf">@brendalf</a>. 👏</p>
|
||
<ul>
|
||
<li><a href="https://github.com/brendalf/mix.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-nvim-ts-rainbow">
|
||
<a href="#update-nvim-ts-rainbow">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-ts-rainbow</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/889383/183246789-1f322e79-aca2-499b-979e-2ff81feeefc6.png" alt="nvim-ts-rainbow" /></p>
|
||
<p><code>nvim-ts-rainbow</code> gained improved support for highlighting JSX elements in JSX and TSX files in <code>extended_mode</code>. Only
|
||
the tag names and angle brackets are highlighted. Props retain their usual highlighting, which makes them easier to
|
||
read.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wj35b4/nvimtsrainbow_improved_highlighting_of_jsx/">Reddit</a></li>
|
||
<li><a href="https://github.com/p00f/nvim-ts-rainbow">GitHub</a></li>
|
||
<li><a href="https://github.com/p00f/nvim-ts-rainbow/pull/125">PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-rust-tools.nvim">
|
||
<a href="#update-rust-tools.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>rust-tools.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><code>rust-tools.nvim</code> got some breaking changes that you should know about. The announcement was made on Reddit by <a href="https://github.com/simrat39">@simrat39</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wjo1z3/rusttools_breaking_changes">Reddit</a></li>
|
||
<li><a href="https://github.com/simrat39/rust-tools.nvim">GitHub</a></li>
|
||
<li><a href="https://github.com/simrat39/rust-tools.nvim/issues/232">Breaking change issue</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-debugpy.nvim">
|
||
<a href="#update-debugpy.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>debugpy.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><code>debugpy.nvim</code> 0.6.0 now defines a <code>python</code> debug adapter on startup if there is no such adapter registered in
|
||
<a href="https://github.com/mfussenegger/nvim-dap">nvim-dap</a>. This allows it to debug tests out of the box with
|
||
<a href="https://github.com/nvim-neotest/neotest">Neotest</a>.</p>
|
||
<ul>
|
||
<li><a href="https://gitlab.com/HiPhish/debugpy.nvim">Gitlab</a></li>
|
||
<li><a href="https://github.com/HiPhish/debugpy.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-nvim-ufo">
|
||
<a href="#update-nvim-ufo">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-ufo</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/17562139/173796287-9842fb3a-37c2-47fb-8968-6e7600c0fcef.mp4"
|
||
>
|
||
</video>
|
||
<p><code>nvim-ufo</code> was updated to version <code>v1.1.0</code>! A super nice and interesting plugin by <a href="https://github.com/kevinhwang91">@kevinhwang91</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wmql98/nvimufo_v110_has_been_released/">Reddit</a></li>
|
||
<li><a href="https://github.com/kevinhwang91/nvim-ufo">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<p><a href="https://github.com/hrsh7th/nvim-cmp">nvim-cmp</a> is a well known and widely used plugin for completion. But did you know
|
||
that Neovim (Vim) already supports a wide variety of completion? Among the most useful ones, in insert mode:</p>
|
||
<ul>
|
||
<li>The key sequence <code>C-x C-n</code> gives you words in the current file / buffer.</li>
|
||
<li>The key sequence <code>C-x s</code> brings a completion menu for <em>spelling</em> (to enable with <code>:set spell</code>).</li>
|
||
<li>A super useful one, <code>C-x C-f</code> gives you path completion, which is super useful!</li>
|
||
</ul>
|
||
<p>More on that in your Neovim instance with <code>:h ins-completion</code>.</p>
|
||
<p>See you all next time for a full batch of Neovim updates on the <strong>22nd Aug 2022</strong>!</p>
|
||
<hr />
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>15 Aug 2022 GMT</pubDate></item><item><title>8 Aug 2022</title><link>https://this-week-in-neovim.org/2022/Aug/8</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<blockquote>
|
||
<p><strong>Important</strong>: if you are a plugin author, you are strongly advised to follow the
|
||
<a href="https://github.com/neovim/neovim/issues/14090">#14090 breaking changes on master</a> GitHub thread, as it contains
|
||
important breaking changes information.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li><a href="https://github.com/neovim/neovim/pull/19598">#19598</a> changed <code>vim.keymap.set()</code> to always replace keycodes in the
|
||
result of <code><expr></code> mappings by default (previously, this was only the default for Lua functions as RHS). Pass
|
||
<code>replace_keycodes = false</code> in <code>opts</code> explicitly to disable this behavior.</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="need-help"><a href="#need-help">Need help</a></h2>
|
||
<h3 id="help-rust-tools.nvim">
|
||
<a href="#help-rust-tools.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-handshake-angle"></i>
|
||
</span>
|
||
<span>rust-tools.nvim is looking for testers</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><code>rust-tools.nvim</code> is a plugin which goal is to provide a better experience at developing Rust in Neovim by using the
|
||
internal LSP client and additional extra tools, such as inlay hints, crate graph, workspace support, etc. etc.</p>
|
||
</blockquote>
|
||
<p><a href="https://github.com/simrat39">@simrat39</a> is looking for testers before merging a new refactoring of the plugin. If you are a Rust programmer and
|
||
interested into enhancing their plugin, you should probably have a look.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wesoi5/rusttoolsnvim_looking_for_testers/">Reddit</a></li>
|
||
<li><a href="https://github.com/simrat39/rust-tools.nvim">GitHub</a></li>
|
||
<li><a href="https://github.com/simrat39/rust-tools.nvim/issues/227">Tester issue</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<h3 id="guide-ultisnips-to-luasnips">
|
||
<a href="#guide-ultisnips-to-luasnips">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>(blog) From UltiSnips to LuaSnip</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Let’s start this week with a nice blog article by <a href="https://github.com/cljoly/">@cljoly</a> about migrating from <a href="https://github.com/sirver/UltiSnips">UltiSnips</a> to <a href="https://github.com/L3MON4D3/LuaSnip">Luasnip</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/weonip/from_ultisnips_to_luasnip/">Reddit</a></li>
|
||
<li><a href="https://cj.rs/blog/ultisnips-to-luasnip/">Blog article</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-foldcus.nvim">
|
||
<a href="#new-foldcus.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>foldcus.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/182554215-0c77e8df-16a1-461e-9468-29e1be4a4d51.gif" alt="foldcus" /></p>
|
||
<p>A brand and fresh new plugin by <a href="https://github.com/Vonr">@Vonr</a> to fold multiline comments.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wdi8ve/foldcusnvim_a_minimal_plugin_for_neovim_for/">Reddit</a></li>
|
||
<li><a href="https://github.com/Vonr/foldcus.nvim/">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mcc.nvim">
|
||
<a href="#new-mcc.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mcc.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/41671631/182332280-813dd765-6b77-4f56-904d-0053aaa22c80.gif" alt="mcc.nvim" /></p>
|
||
<p>A new plugin allowing to map multiple char sequences to one key.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/glepnir/mcc.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-iswap.nvim">
|
||
<a href="#new-iswap.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>iswap.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/44309097/179374981-b5cc59a9-6922-496f-9559-3b6be51893e1.mov"
|
||
>
|
||
</video>
|
||
<p><a href="https://github.com/mizlan">@mizlan</a> made a plugin to interactively swap things in Neovim! It can handle symbols like function arguments, list
|
||
elements, function parameters, and more. Powered by tree-sitter.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wencec/postoperation_flashing_and_arbitrary_node_swapping/">Reddit</a></li>
|
||
<li><a href="https://github.com/mizlan/iswap.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-NeoSolarized.nvim">
|
||
<a href="#new-NeoSolarized.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>NeoSolarized.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/70003855/183027428-6a4bf646-b629-4fc9-9429-cb732acb5d68.png" alt="NeoSolarized.nvim" /></p>
|
||
<p>A new theme by <a href="https://github.com/Tsuzat">@Tsuzat</a>, based on the super famous <code>solarized</code> plugin.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wfeinn/yet_another_neosolarized_theme/">Reddit</a></li>
|
||
<li><a href="https://github.com/Tsuzat/NeoSolarized.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-oxocarbon-lua.nvim">
|
||
<a href="#new-oxocarbon-lua.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>oxocarbon-lua.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/183068652-e690c1a8-1e6b-4c7e-9760-7928f9a1dfc0.png" alt="oxocarbon-lua.nvim" /></p>
|
||
<p><a href="https://github.com/B4mbus">@B4mbus</a> made a theme based on <a href="https://github.com/shaunsingh/oxocarbon.nvim">oxocarbon.nvim</a>, which is a theme made
|
||
in Rust with <a href="https://github.com/noib3/nvim-oxi">nvim-oxi</a>. Because the author didn’t want to have to install the Rust
|
||
toolchain for a theme, they came up with a Lua version.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wg50y4/oxocarbonnvim_lua_rewrite/">Reddit</a></li>
|
||
<li><a href="https://github.com/B4mbus/oxocarbon-lua.nvim">GitHub</a></li>
|
||
<li><a href="https://github.com/shaunsingh/oxocarbon.nvim">GitHub (original theme)</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-pre-commit.nvim">
|
||
<a href="#new-pre-commit.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>pre-commit.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A new plugin by <a href="https://github.com/Ttibsi">@Ttibsi</a> to run various pre-commit logics (from LSP, formatters, linters, etc.). It’s designed to
|
||
only work within a git repository that already has a .pre-commit-config.yaml file.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wgdcv4/i_made_an_nvim_plugin_to_run_the_precommit/">Reddit</a></li>
|
||
<li><a href="https://github.com/Ttibsi/pre-commit.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-pvim">
|
||
<a href="#new-pvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>pvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Hey, a new plugin! This one is by <a href="https://github.com/RoryNesbitt">@RoryNesbitt</a> and is a all-in-one Neovim configuration wrapper inside the same
|
||
directory.. It’s also known as <code>seanvim</code> – a reference to <a href="https://github.com/seandewar">@seandewar</a> who helped with the plugin development. The
|
||
plugin is still under heavy development, so if you want to test it out and provide feedback to <a href="https://github.com/RoryNesbitt">@RoryNesbitt</a>, feel
|
||
free to install and experiment!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/whrsrb/introducing_pvim_a_portable_neovim_wrapper/">Reddit</a></li>
|
||
<li><a href="https://github.com/RoryNesbitt/pvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-coverage">
|
||
<a href="#nvim-coverage">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-coverage</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/542263/159128732-8189b89d-4f71-4a34-8c6a-176e40fcd48d.png" alt="nvim-coverage" /></p>
|
||
<p>Plugin by <a href="https://github.com/andythigpen">@andythigpen</a> for displaying test coverage. It can display coverage information in the sign column and coverage summary report
|
||
in a pop-up window. <em>Note:</em> This plugin does not run tests. It justs loads/displays a coverage report generated
|
||
by a test suite.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/andythigpen/nvim-coverage">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-NeovimKeys">
|
||
<a href="#update-NeovimKeys">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>Neovim Keys</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><strong>Neovim Keys</strong> is an application to help new Neovim users to get used to using <code>HJKL</code>a and switching between modes.</p>
|
||
</blockquote>
|
||
<p><strong>Neovim Keys v2.1</strong> is out! The application is built with Java AWT (a graphics library). It might be interesting if you
|
||
are new to Neovim. An application by <a href="https://github.com/BooleanCube">@BooleanCube</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wewyhh/neovim_keys_v21_is_out/">Reddit</a></li>
|
||
<li><a href="https://github.com/BooleanCube/NeovimKeys">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-import.nvim">
|
||
<a href="#update-import.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>import.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>This week, <a href="https://github.com/miversen33">@miversen33</a> and the contributors of <code>import.nvim</code> added support for <a href="https://github.com/nvim-lualine/lualine.nvim">lualine.nvim</a>, along with <code>on_click</code>
|
||
support. A great addition!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/weu6wh/importnvim_now_has_lualine_integration/">Reddit</a></li>
|
||
<li><a href="https://github.com/miversen33/import.nvim">GitHub</a></li>
|
||
<li><a href="https://github.com/miversen33/import.nvim/pull/6">PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-lspsaga.nvim">
|
||
<a href="#update-lspsaga.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lspsaga.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/506592/183072307-a407552f-e000-4a3b-872a-dfdf6024bc59.mp4"
|
||
>
|
||
</video>
|
||
<p>A great update for <code>lspsaga.nvim</code> this week by <a href="https://github.com/glepnir">@glepnir</a>. This is about asynchrous requests. The plugin now has a
|
||
<em>loading / progress bar</em> kind of thing that will provide some useful visual feedback that a request is currently going
|
||
on.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wf3gp2/loading_bar_in_lspsaga_finder/">Reddit</a></li>
|
||
<li><a href="https://github.com/glepnir/lspsaga.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-nvim-surround">
|
||
<a href="#update-nvim-surround">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-surround</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><code>nvim-surround</code> released version 1.0.0 which supports Lua pattern-based modifications.
|
||
Users can now delete/change quite complex manually defined surrounding pairs.
|
||
This caused some <a href="https://github.com/kylechui/nvim-surround/issues/77#issuecomment-1207085499">breaking changes</a> which
|
||
users might need to address.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/whaeii/update_to_nvimsurround_lua_patternbased/">Reddit</a></li>
|
||
<li><a href="https://github.com/kylechui/nvim-surround/releases/tag/v1.0.0">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-mini.ai">
|
||
<a href="#update-mini.ai">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mini.ai</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24854248/183292147-7368881f-76d8-44a4-96eb-6a85fb14fc91.mp4"
|
||
>
|
||
</video>
|
||
<p><code>mini.ai</code> now supports text-objects based on tree-sitter.
|
||
<a href="https://github.com/echasnovski/mini.nvim/blob/c173c9fa0cecdf287787501679ce0bad058096d5/doc/mini.txt#L336-L345">Here</a> is
|
||
a short comparison between <code>mini.ai</code>’s text-objects and <code>nvim-treesitter-textobjects</code>’ ones.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wiamjt/miniai_now_supports_textobjects_based_on/">Reddit</a></li>
|
||
<li><a href="https://github.com/echasnovski/mini.nvim#miniai">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-auto-session">
|
||
<a href="#update-auto-session">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>auto-session</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>The plugin by <a href="https.//github.com/rmagatti">@rmagatti</a> now supports <code>cwd</code> tracking. This feature is nothing more than knowing when the <code>cwd</code> is about
|
||
to change and then making sure the current session is saved correctly – and that buffers and jumplists are cleared
|
||
before attempting to load the next session.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wiab14/auto_session_updated_to_track_cwd_changes/">Reddit</a></li>
|
||
<li><a href="https://github.com/rmagatti/auto-session/pull/153">PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1 id="tips"><a href="#tips">Did you know?</a></h1>
|
||
<blockquote>
|
||
<p>This section is about various Neovim tips. People are free to contribute any tips they have on their mind. Tips are
|
||
intended for any Neovim user, should they be beginners or advanced users.</p>
|
||
</blockquote>
|
||
<p>Neovim has the support of <em>text-objects</em>, which are used in visual or operator-pending mode. <code>w</code> for instance stands for
|
||
the text-object <em>word</em>. When you are in operator pending mode, for instance right after pressing <code>d</code> for delete, pressing
|
||
<code>w</code> (so <code>dw</code>) will delete from the cursor position to the end of the word. Two modifiers exist to create more powerful
|
||
text-objects: <code>a</code> (for <em>around</em>) and <code>i</code> (for <em>inner</em>). The former will act on the text-object on its right plus its
|
||
surroundings delimiters (for a word, it’s basically the whitespaces). The latter, <code>i</code>, will apply the operation only
|
||
<em>inside</em> the text-object. For a word, it means just the word, ignoring the whitespace around it.</p>
|
||
<p>With this, you can do really powerful editing. For instance, if you have this HTML code:</p>
|
||
<pre><code class="language-html"><div class="stuff">I like cookies</div>
|
||
</code></pre>
|
||
<p>And you want to change <code>I like cookies</code> to <code>I love pasta</code>, you can simply put your cursor anywhere in that text, and
|
||
press <code>cit</code>, which translates to:</p>
|
||
<pre><code>c = change
|
||
i = inner
|
||
t = tag
|
||
</code></pre>
|
||
<p><code>t</code> is a text-object native to Neovim that can recognize “tags” of the filetype you are editing (here, HTML tags). So
|
||
that command will change the text inside the tag. If you wanted to completely replace the whole tag with another one,
|
||
you could have pressed <code>cat</code>, which would have removed the surroundings (i.e. the <code><div></code> and <code></div></code>).</p>
|
||
<blockquote>
|
||
<p>If you have any tips that have not been shared yet (or it was a while ago), please feel free to share to the
|
||
<a href="https://github.com/phaazon/this-week-in-neovim-contents">contents repository</a>. Thanks!</p>
|
||
</blockquote>
|
||
<p>And that’s all for this week! See you all next time for a full batch of <strong>Neovim</strong> updates on the 15th Aug 2022!</p>
|
||
<h1 id="contribute"><a href="#contribute">Want to contribute?</a></h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>8 Aug 2022 GMT</pubDate></item><item><title>1 Aug 2022</title><link>https://this-week-in-neovim.org/2022/Aug/1</link><description><![CDATA[<blockquote>
|
||
<p><strong>Disclaimer</strong>: the beginning of this third edition of TWiN requires a small disclaimer about licensing. From the very
|
||
first commit in <a href="https://github.com/phaazon/this-week-in-neovim.org">TWiN</a> and the first commit in the
|
||
<a href="https://github.com/phaazon/this-week-in-neovim-contents">contents repository</a>, all the work has been licensed BSD-3
|
||
New Clause. It was brought to my attention that even though that license is fine for code, it does not really apply to
|
||
prose content.</p>
|
||
<p>For this reason, all the contributions made to the contents repository are licensed CC-BY-SA-4.0. You can find the
|
||
license <a href="https://github.com/phaazon/this-week-in-neovim-contents/blob/master/LICENSE">here</a>.</p>
|
||
<p>And now, let’s get a full batch of Neovim news!</p>
|
||
</blockquote>
|
||
<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<p>Nothing much this week… 🤷</p>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="guides"><a href="#guides">Guides, tours, articles, etc.</a></h2>
|
||
<h3 id="guide-lua-auto-cmds">
|
||
<a href="#guide-lua-auto-cmds">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Lua autocmd and project testing</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe
|
||
width="560"
|
||
height="315"
|
||
src="https://www.youtube.com/embed/9gUatBHuXE0"
|
||
title="YouTube video player"
|
||
frameborder="0"
|
||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||
allowfullscreen>
|
||
</iframe>
|
||
<p>This week, <a href="https://github.com/tjdevries">@tjdevries</a> teaches you how to use Lua autocmds to test your project on save.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w7o24h/use_lua_autocmds_to_test_your_project_on_save/">Reddit</a></li>
|
||
<li><a href="https://www.youtube.com/embed/9gUatBHuXE0">Youtube</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="guide-auto-generate-help-docs-lua-plugins">
|
||
<a href="#guide-auto-generate-help-docs-lua-plugins">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Auto generate help docs for your Lua plugins</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/24727447/164423469-b26fea39-2ef7-497c-8156-5a4c01bc30f8.gif" alt="lemmy-help" /></p>
|
||
<p>With the storm of awesome Lua plugins, there is one thing that most plugin authors don’t consider is <strong>:help</strong> docs.
|
||
Which is understandable, as help docs are tedious to write. So, why not auto-generate your plugin’s help doc
|
||
from <a href="https://github.com/numToStr/lemmy-help">emmylua</a>. Using <a href="https://github.com/numToStr/lemmy-help"><code>lemmy-help</code></a>
|
||
you can autogenerate help for lua API docs, create custom section, table-of-contents and more.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/numToStr/lemmy-help">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="guide-overseer.nvim">
|
||
<a href="#guide-overseer.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>Use Overseer.nvim to run commands on save</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe
|
||
width="560"
|
||
height="315"
|
||
src="https://www.youtube.com/embed/aq3mU_Oqd6Q"
|
||
title="YouTube video player"
|
||
frameborder="0"
|
||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||
allowfullscreen>
|
||
</iframe>
|
||
<p><a href="https://github.com/stevearc">@stevearc</a> shows us how to use their plugin to run commands on save!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w8n831/use_overseernvim_to_run_commands_on_save/">Reddit</a></li>
|
||
<li><a href="https://github.com/stevearc/overseer.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="guide-blog-lsp-neovim-retrospective">
|
||
<a href="#guide-blog-lsp-neovim-retrospective">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-lightbulb"></i>
|
||
</span>
|
||
<span>(blog) LSP and Neovim, a retrospective</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/numToStr">@numToStr</a> writes about their personal experience from going from <a href="https://github.com/neoclide/coc.nvim">CoC</a> (a very
|
||
famous completion framework for Vim and Neovim, which now can do lots of things like managing extensions, implementing
|
||
an LSP client, etc. etc.) to the native Neovim LSP. A chill read to look back on how we used to deal with code
|
||
intelligence between the era of the native LSP.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wa29wx/blog_lsp_and_neovim_a_retrospective/">Reddit</a></li>
|
||
<li><a href="https://www.vikasraj.dev/blog/lsp-neovim-retrospective">Blog</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-nvim-osc52">
|
||
<a href="#new-nvim-osc52">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-osc52</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>This week, we have a new plugin and it’s about system clipboards! <code>nvim-osc52</code> uses the ANSI OSC52 sequence to copy
|
||
directly into your system clipboard, wherever you are (local machine, remote, etc.). The way it works is by writing what
|
||
you want to copy to the system clipboard into Neovim’s <code>stderr</code> stream. When the OSC52 sequence is read by your terminal,
|
||
it does the job to copy that content to your system clipboard.</p>
|
||
<p>The main advantage of this is being able to copy text whatever your <code>pty</code> is (so it works through SSH!).</p>
|
||
<p>A plugin by <a href="https://github.com/ojroques">@ojroques</a>, which is a rewrite of their older <a href="https://github.com/ojroques/vim-oscyank">vim-oscyank</a> plugin.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w7ksiy/nvimosc52_copy_text_from_remote_ssh_sessions_with/">Reddit</a></li>
|
||
<li><a href="https://github.com/ojroques/nvim-osc52">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-ltex_extra.nvim">
|
||
<a href="#new-ltex_extra.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>ltex_extra.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/48270301/177694689-b6b12b4a-3981-47fe-aa88-567697f797bd.mp4"
|
||
type="video/mp4"
|
||
>
|
||
</video>
|
||
<p>A plugin written by <a href="https://github.com/barreiroleo">@barreiroleo</a>, providing external LTeX file handling (off-spec LSP) and other functions.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w8r216/ltex_extranvim_provides_external_ltex_file/">Reddit</a></li>
|
||
<li><a href="https://github.com/barreiroleo/ltex_extra.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-eswpoch">
|
||
<a href="#new-nvim-eswpoch">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-eswpoch</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/506592/181486665-4b413b51-0512-4525-9a51-c0a64810bc0f.mp4"
|
||
type="video/mp4"
|
||
>
|
||
</video>
|
||
<p>A new plugin to perform conversions between epoch timestamps, by <a href="https://github.com/hlucco">@hlucco</a>. If you work a lot with different epoch
|
||
timestamps, that might be a very interesting plugin to try out! (Yes, I’m looking at you, cryptocurrency developers,
|
||
with your crazy epochs).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w9vylk/eswpoch_inline_epoch_conversion_in_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/hlucco/nvim-eswpoch">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-cbfmt">
|
||
<a href="#new-cbfmt">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>cbfmt</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><a href="https://github.com/lukas-reineke">@lukas-reineke</a> made a new plugin this week: <code>cbfmt</code>. That plugin allows to format embedded codeblocks inside Markdown
|
||
and Org documents. It’s not a plugin per-se — it’s a CLI tool — but it was worth mentioning it there.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wa0prx/codeblock_formatting_in_markdown_and_org_with/">Reddit</a></li>
|
||
<li><a href="https://github.com/lukas-reineke/cbfmt">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-projector.nvim">
|
||
<a href="#new-projector.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>projector.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A plugin by <a href="https://github.com/smolovk">@smolovk</a> to create and manage multiple sub-configs for projects. It currently has two commands: one to
|
||
load a configuration, and one to edit it. The plugin stores the configurations in <code>stdpath('data')</code> — which is most of
|
||
the time in <code>~/.local/share/nvim</code>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wa4cy4/projectornvim_configurations_manager_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/smolovk/projector.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mini.ai">
|
||
<a href="#new-mini.ai">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mini.ai</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/24854248/181909691-b6f6b677-c37f-468f-85db-8eb8b1e1314e.mp4"
|
||
type="video/mp4"
|
||
>
|
||
</video>
|
||
<p>A module of <a href="https://github.com/echasnovski/mini.nvim">mini.nvim</a> (by <a href="https://github.com/echasnovski">@echasnovski</a>) for extending and creating
|
||
<code>a</code> / <code>i</code> textobjects (like in <code>di(</code> or <code>va"</code>). It enhances some built-in textobjects (like <code>a(</code>, <code>a)</code>, <code>a'</code>,
|
||
and more), creates new ones (like <code>a*</code>, <code>a<Space></code>, <code>af</code>, <code>a?</code>, and more), and allows users to create their own.
|
||
Supports dot-repeat, <code>v:count</code>, different search methods, consecutive application, and customization via Lua
|
||
patterns or functions. The plugin has built-ins for brackets, quotes, function calls, arguments, tasg, user
|
||
prompts, and any punctuation / digit / whitespace character.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wa819w/miniai_extend_and_create_ai_textobjects_like/">Reddit</a></li>
|
||
<li><a href="https://github.com/echasnovski/mini.nvim#miniai">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-true-zen.nvim">
|
||
<a href="#new-true-zen.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>true-zen.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/58336662/181860318-8834446a-e28f-4a75-acdc-c880082ef3a8.mp4"
|
||
type="video/mp4"
|
||
>
|
||
</video>
|
||
<p>This is a plugin that is doing something a bit different than the plugins we announced in TWiN lately. According to its
|
||
author, <a href="https://github.com/Pocco81">@Pocco81</a>, it <em>“de-clutters NeoVim’s UI to enhance your coding experience”</em>. The plugin provides four main
|
||
features, implemented as modes:</p>
|
||
<ul>
|
||
<li><em>Ataraxis</em>: good ol’ zen mode.</li>
|
||
<li><em>Minimalist</em>: disable ui components (e.g. numbers, tabline, statusline).</li>
|
||
<li><em>Narrow</em>: narrow a text region for better focus.</li>
|
||
<li><em>Focus</em>: focus the current window.</li>
|
||
</ul>
|
||
<p>Clearly a plugin to try out!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wbkpi2/truezennvim_rewrite_clean_and_elegant/">Reddit</a></li>
|
||
<li><a href="https://github.com/Pocco81/true-zen.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-neo-tree.nvim">
|
||
<a href="#new-neo-tree.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>neo-tree.nvim + neo-tree-diagnostics.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><a href="https://github.com/nvim-neo-tree/neo-tree.nvim">neo-tree.nvim</a>, which has been around since the 1st of January 2022,
|
||
is a tree view plugin similar to (and inspired by) <a href="https://github.com/kyazdani42/nvim-tree.lua">nvim-tree.lua</a>.</p>
|
||
</blockquote>
|
||
<p><img src="https://user-images.githubusercontent.com/62466569/181661222-8548e37d-d5d2-4f44-938f-39789ff9d4dc.png" alt="neo-tree-diagnostics.nvim" /></p>
|
||
<p>A new companion plugin was introduced by <a href="https://github.com/mrbjarksen">@mrbjarksen</a>: <code>neo-tree-diagnostics.nvim</code>. The look is similar to
|
||
<a href="https://github.com/folke/trouble.nvim">trouble.nvim</a>. The plugin has some candies, such as sidebars, float windows,
|
||
etc.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/warzo4/neotreediagnosticsnvim_a_diagnostics_source_for/">Reddit</a></li>
|
||
<li><a href="https://github.com/mrbjarksen/neo-tree-diagnostics.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-nvim-tree.lua">
|
||
<a href="#update-nvim-tree.lua">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-tree.lua</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>The plugin now has a public API module.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/kyazdani42/nvim-tree.lua/pull/1432">GitHub PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-Comment.nvim">
|
||
<a href="#update-Comment.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>Comment.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Add support for <code>jsonnet</code>, <code>elvish</code> and <code>glsl</code> support.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/numToStr/Comment.nvim">GitHub</a></li>
|
||
<li><a href="https://github.com/numToStr/Comment.nvim/pull/186">jsonnet PR</a></li>
|
||
<li><a href="https://github.com/numToStr/Comment.nvim/pull/185">elvish PR</a></li>
|
||
<li><a href="https://github.com/numToStr/Comment.nvim/pull/184">GLSL PR</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-gopher.nvim">
|
||
<a href="#update-gopher.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>gopher.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>The plugin got a couple of changes:</p>
|
||
<ul>
|
||
<li>Comment generator.</li>
|
||
<li><code>if err != nil</code> generator.</li>
|
||
<li>Add setup support.</li>
|
||
</ul>
|
||
<p><a href="https://github.com/olexsmir">@olexsmir</a> is also looking for help and any new idea for their plugin. If you have any, feel free to open an issue or a
|
||
PR <a href="https://github.com/olexsmir/gopher.nvim">here</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w70koz/updates_of_gophernvim/">Reddit</a></li>
|
||
<li><a href="https://github.com/olexsmir/gopher.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-lsp-zero.nvim">
|
||
<a href="#update-lsp-zero.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lsp-zero.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><code>lsp-zero</code> is a plugin that handles the configuration of <code>nvim-lspconfig</code> and <code>nvim-cmp</code>, so you don’t have to. The
|
||
goal is to be able to start using the built-in LSP client quickly with minimal configuration (three lines of
|
||
configuration is the minimal needed).</p>
|
||
</blockquote>
|
||
<p><code>lsp-zero.nvim</code> just got support for <a href="https://github.com/williamboman/mason.nvim">mason.nvim</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w8ijzt/support_for_masonnvim_has_been_added_to_lspzero/">Reddit</a></li>
|
||
<li><a href="https://github.com/VonHeikemen/lsp-zero.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-lab.nvim">
|
||
<a href="#update-lab.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lab.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><code>lab.nvim</code> provides a collection of unique prototyping tools for Neovim, a bit similar to what you have with
|
||
<a href="https://runjs.app/">runjs</a>, <a href="https://quokkajs.com/">quokka</a> and such.</p>
|
||
</blockquote>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/106625318/181047786-ca256229-bafa-471f-a8ca-420068a4de7d.mp4"
|
||
type="video/mp4"
|
||
>
|
||
</video>
|
||
<p><code>lab.nvim</code> now supports TypeScript, Python and Lua. The initial discussion started in
|
||
<a href="https://old.reddit.com/r/neovim/comments/vvz6fm/labnvim_prototyping_toolset_for_neovim/">this Reddit thread</a>, if you
|
||
are interested.</p>
|
||
<p>That new release also adds support for <em>quick data</em>, a way to insert data into your buffer quickly by randomizing it
|
||
(automatically insert email addresses, people names, cities, etc.).</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w8oba0/labnvim_now_supports_typescript_python_and_lua/">Reddit</a></li>
|
||
<li><a href="https://github.com/0x100101/lab.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-nvim-docker">
|
||
<a href="#update-nvim-docker">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>docker-nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>This week, <code>nvim-docker</code> received a huge update. <a href="https://github.com/dgrbrady">@dgrbrady</a> announced on Reddit the feature list part of the update:</p>
|
||
<ul>
|
||
<li>Bring a container up with the <kbd>u</kbd> key.</li>
|
||
<li>Bring a container down with the <kbd>d</kbd> key.</li>
|
||
<li>Restart a container with the <kbd>r</kbd> key.</li>
|
||
<li>Delete a container by pressing <kbd>dd</kbd>.</li>
|
||
<li>Tail a container’s logs by pressing <kbd>t</kbd>.</li>
|
||
<li>Focus the log popup by pressing <kbd>tab</kbd>.</li>
|
||
<li>Toggle whether the cursor should stick to the bottom of the log popup by pressing <kbd>t</kbd> while inside the log popup.</li>
|
||
<li>Focus the main popup by pressing <kbd>shift-tab</kbd>.</li>
|
||
</ul>
|
||
<p>Lots of internal cleanups and improvements as well.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/wa2199/huge_nvimdocker_updates/">Reddit</a></li>
|
||
<li><a href="https://github.com/dgrbrady/nvim-docker">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-packer.nvim">
|
||
<a href="#update-packer.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>packer.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>The plugin now allows for adding mapping descriptions.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/wbthomason/packer.nvim/commit/213ed031490ab5318e7996a594b52131e5c1c06f">Commit</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-hop.nvim">
|
||
<a href="#update-hop.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>hop.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<blockquote>
|
||
<p><code>hop.nvim</code> is a motion plugin written by <a href="https://github.com/phaazon">@phaazon</a> made to move anywhere in the buffers with as few keystrokes as
|
||
possible. It was made to replace <a href="https://github.com/easymotion/vim-easymotion">EasyMotion</a> in the context of
|
||
Neovim and its API (using virtual text, etc.) and be extensible and full-featured.</p>
|
||
</blockquote>
|
||
<p>This week, it’s a patch version release (<code>hop-v2.0.2</code>). This update is all about fixing bugs, among:</p>
|
||
<ul>
|
||
<li>Fix “col value outside range” error, which occurred when trying to hop
|
||
at the very beginning or very last of a line / empty line with some
|
||
special combination of options.</li>
|
||
<li>Make <key>ctrl-c</key> equivalent to <key>esc</key> in <code>HopPattern</code> prompt.</li>
|
||
<li>Support <key>nl</key> and <key>ctrl-h</key> in <code>HopPattern</code> prompt.</li>
|
||
<li>Fix pending operation column increment so that we can correctly use <kbd>f</kbd>
|
||
/ <kbd>t</kbd> and <kbd>F</kbd> / <kbd>T</kbd> in operator-pending modes.</li>
|
||
</ul>
|
||
<p>Happy hopping!</p>
|
||
<ul>
|
||
<li><a href="https://github.com/phaazon/hop.nvim/releases/tag/v2.0.2">Release</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h1>Want to contribute?</h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>1 Aug 2022 GMT</pubDate></item><item><title>25 Jul 2022</title><link>https://this-week-in-neovim.org/2022/Jul/25</link><description><![CDATA[<h1>Neovim Core updates</h1>
|
||
<blockquote>
|
||
<p>Updates of <a href="https://neovim.org">Neovim</a> itself, which are available on Neovim nightly.</p>
|
||
</blockquote>
|
||
<ul>
|
||
<li>Following HEAD: breaking changes on master (<a href="https://github.com/neovim/neovim/issues/14090">#14090</a>)
|
||
<ul>
|
||
<li><a href="https://github.com/neovim/neovim/pull/19357">#19357</a>: <code>input()</code> and <code>inputdialog()</code> no longer convert the value of
|
||
<code>cancelreturn</code> to a string if it is passed in an <code>opts</code> dictionary. It is still converted to a string if it is the
|
||
third argument of <code>inputdialog()</code>.</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
<h1>Neovim Plugin Community updates</h1>
|
||
<blockquote>
|
||
<p>Neovim is full of active plugins. This section is about the community and what is going on.</p>
|
||
</blockquote>
|
||
<h2 id="new-plugins"><a href="#new-plugins">New plugins</a></h2>
|
||
<h3 id="new-nvim-oxi">
|
||
<a href="#new-nvim-oxi">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-oxi</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>This week introduced <code>nvim-oxi</code>, first-class Rust bindings to Neovim internals.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w19jul/introducing_nvimoxi_firstclass_rust_bindings_to/">Reddit</a></li>
|
||
<li><a href="https://github.com/noib3/nvim-oxi">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-buffertag">
|
||
<a href="#new-buffertag">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>buffertag</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<iframe width="560"
|
||
height="315"
|
||
src="https://www.youtube.com/embed/NhhsLYnYjRU"
|
||
title="YouTube video player"
|
||
frameborder="0"
|
||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||
allowfullscreen>
|
||
</iframe>
|
||
<p>Introducing <code>buffertag</code>, a plugin to show the name of the buffer as a float. Useful if you use <code>laststatus=3</code>. Similar
|
||
to <a href="https://github.com/b0o/incline.nvim">incline.nvim</a>, then.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w0unus/introducing_buffertag_keep_an_eye_on_your_buffers/">Reddit</a></li>
|
||
<li><a href="https://github.com/ldelossa/buffertag">GitHub</a></li>
|
||
<li><a href="https://www.youtube.com/watch?v=NhhsLYnYjRU">Youtube</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-minimal.nvim">
|
||
<a href="#new-minimal.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>minimal.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/180602207-7690c255-f9a7-450c-a6ba-230f7951d6b4.png" alt="" /></p>
|
||
<p>Two new colorschemes this week, inspired by the great <code>base16-tomorrow-night</code> and <code>monokai-pro</code>.</p>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/180602211-a4286da9-ac3b-4735-8d00-cec50c1f18a1.png" alt="" /></p>
|
||
<p>They do look really great!</p>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/180602214-b740794d-6a0e-48a7-a746-f622f4df39a2.png" alt="" /></p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w0q698/hi_guys_i_designed_two_amazing_colorschemes_for/">Reddit</a></li>
|
||
<li><a href="https://github.com/Yazeed1s/minimal.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-databasehelper">
|
||
<a href="#new-nvim-databasehelper">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-databasehelper</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Switch database on demand without restarting anything manually. It works by communicating with
|
||
<a href="https://github.com/tpope/vim-dadbod">vim-dadbod</a> as well as LSP (restarting it). An interesting plugin to discover.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w0jrnz/first_plugin_switch_database_on_demand_without/">Reddit</a></li>
|
||
<li><a href="https://github.com/abenz1267/nvim-databasehelper">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-retrail">
|
||
<a href="#new-nvim-retrail">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-retrail</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Retrail is a small Neovim plugin for managing trailing whitespaces. It has two main features: highlighting trailing
|
||
whitespaces and trimming them upon <code>:write</code>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w3znvz/nvimretrail_whitespace_management_for_neovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/zakharykaplan/nvim-retrail">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-docker">
|
||
<a href="#new-nvim-docker">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-docker</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/38011308/180091781-a23adf85-a159-4caa-b2a9-4abe021a1ff4.gif" alt="" /></p>
|
||
<p>Introducing <code>nvim-docker</code> the missing docker management Lua plugin!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w3z8ev/introducing_nvimdocker_the_missing_docker/">Reddit</a></li>
|
||
<li><a href="https://github.com/dgrbrady/nvim-docker">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-nvim-highlight-colors">
|
||
<a href="#new-nvim-highlight-colors">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-highlight-colors</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/180602342-339b4e1a-45a0-4fa5-8d71-06bfefaf1c5b.png" alt="" /></p>
|
||
<p>A new plugin to highlight colors in your editor! Pretty similar to
|
||
<a href="https://github.com/norcalli/nvim-colorizer.lua">nvim-colorizer</a>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w3m30r/highlight_colors_in_your_editor_with/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-gdoc.vim">
|
||
<a href="#new-gdoc.vim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>gdoc.vim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Google docs integration for vim & neovim!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w0k2k3/gdocvim_google_docs_integration_for_vimneovim/">Reddit</a></li>
|
||
<li><a href="https://github.com/aadv1k/gdoc.vim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-mason.nvim">
|
||
<a href="#new-mason.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>mason.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><code>mason.nvim</code> is the next generation version of <a href="https://github.com/williamboman/nvim-lsp-installer">nvim-lsp-installer</a>.
|
||
It builds on top of the very same foundation as <code>nvim-lsp-installer</code>, but with a majority of internals refactored to
|
||
improve extensibility and testability.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/williamboman/nvim-lsp-installer/discussions/876">Announcement</a></li>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w6w5ij/introducing_masonnvim/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-overseer.nvim">
|
||
<a href="#new-overseer.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>overseer.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A task runner and job management plugin for Neovim.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/stevearc/overseer.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-fold-preview.nvim">
|
||
<a href="#new-fold-preview.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>fold-preview.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/13056013/148261501-56677c8f-24a7-4c45-b008-8c1863bf06e8.mp4"
|
||
type="video/mp4"
|
||
>
|
||
</video>
|
||
<p>Preview closed folds, without opening them.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/anuvyklack/fold-preview.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="new-stay-in-place.nvim">
|
||
<a href="#new-stay-in-place.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>stay-in-place.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Neovim plugin that prevents cursor from moving when using shift and filter actions.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/gbprod/stay-in-place.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="updates"><a href="#updates">Updates</a></h2>
|
||
<h3 id="update-Netman">
|
||
<a href="#update-Netman">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>Netman</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Update on the state of <code>Netman</code>.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w1fg2e/update_on_the_state_of_netman/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-catppuccin.nvim">
|
||
<a href="#update-catppuccin.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>catppuccin.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>The colorscheme now supports precompiled cache.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w15zim/catppuccinnvim_now_supports_precompiled_cache/">Reddit</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-nvim-surround">
|
||
<a href="#update-nvim-surround">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-surround</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Update about dot-repeat, buffer-local maps, complex surrounds and more!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/vxxp0i/update_to_nvimsurround_dotrepeat_bufferlocal_maps/">Reddit</a></li>
|
||
<li><a href="https://github.com/kylechui/nvim-surround">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-hop.nvim">
|
||
<a href="#update-hop.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>hop.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>A blog article about the useful <code>Hop</code> commands you need to know in 2022 (commands, options, wiki, etc.).</p>
|
||
<p>Also, the features planned for Hop v2.1 are now available!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w20six/hopnvim_useful_hop_in_2022/">Reddit</a></li>
|
||
<li><a href="https://github.com/phaazon/hop.nvim">GitHub</a></li>
|
||
<li><a href="https://phaazon.net/blog/hop-2022">Blog</a></li>
|
||
<li><a href="https://github.com/phaazon/hop.nvim/issues/273">Features for v2.1</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-hydra.nvim">
|
||
<a href="#update-hydra.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>hydra.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Complete internal rewrite of <code>Hydra</code> mechanics; allows Neovim to wait for users in <code>Hydra</code> and more.</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w20cl1/hydra_update/">Reddit</a></li>
|
||
<li><a href="https://github.com/anuvyklack/hydra.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-lspsaga.nvim">
|
||
<a href="#update-lspsaga.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lspsaga.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/506592/180602553-c666e557-8da9-4d78-9839-bdbaeb4c3884.mp4"
|
||
type="video/mp4"
|
||
>
|
||
</video>
|
||
<p><code>Lspsaga</code> now has a code outline!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w36rqi/lspsaga_outline_support/">Reddit</a></li>
|
||
<li><a href="https://github.com/glepnir/lspsaga.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-leap.nvim">
|
||
<a href="#update-leap.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>leap.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>This week announces multi-cursor support for <code>Leap</code>.</p>
|
||
<video controls>
|
||
<source
|
||
src="https://user-images.githubusercontent.com/506592/180602639-3d0fc52f-b44a-4b63-a22a-8fa03270221f.mp4"
|
||
type="video/mp4"
|
||
>
|
||
</video>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w2oqy0/multicursor_magic_with_leap/">Reddit</a></li>
|
||
<li><a href="https://github.com/ggandor/leap.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-lualine.nvim">
|
||
<a href="#update-lualine.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lualine.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><code>Lualine</code> now supports clickable components, as well as winbar!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w4gcek/lualine_now_supports_clickable_components/">Reddit (clickable components)</a></li>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w5fm5w/lualine_now_supports_winbar/">Reddit (winbar)</a></li>
|
||
<li><a href="https://github.com/nvim-lualine/lualine.nvim/pull/742">PR (clickable components)</a></li>
|
||
<li><a href="https://github.com/nvim-lualine/lualine.nvim/pull/736">PR (winbar)</a></li>
|
||
<li><a href="https://github.com/nvim-lualine/lualine.nvim">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-neogit">
|
||
<a href="#update-neogit">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>neogit</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Add support for interactive rebase.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/TimUntersberger/neogit/commit/b2752b3d134656d5e5fa25721c52a9276ba9b2d1">Commit</a></li>
|
||
<li><a href="https://github.com/TimUntersberger/neogit">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-nvim-tree">
|
||
<a href="#update-nvim-tree">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>nvim-tree</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Introduce a new option to filter buffers by filetype.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/kyazdani42/nvim-tree.lua/commit/79434c2b3cd86aebc652db042c17f3b433bfd47c">Commit</a></li>
|
||
<li><a href="https://github.com/kyazdani42/nvim-tree.lua">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-goto-preview">
|
||
<a href="#update-goto-preview">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>goto-preview</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p>Add type definition previewer.</p>
|
||
<ul>
|
||
<li><a href="https://github.com/rmagatti/goto-preview/commit/57c4cefb6f7862dd8af25632b861c7208721986c">Commit</a></li>
|
||
<li><a href="https://github.com/rmagatti/goto-preview">GitHub</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h3 id="update-lsp_lines.nvim">
|
||
<a href="#update-lsp_lines.nvim">
|
||
<span class="icon-text">
|
||
<span class="icon">
|
||
<i class="fa-solid fa-book"></i>
|
||
</span>
|
||
<span>lsp_lines.nvim</span>
|
||
</span>
|
||
</a>
|
||
</h3>
|
||
<p><img src="https://user-images.githubusercontent.com/506592/180602710-fa03ec66-a61d-4c8e-b572-604efca8eed4.png" alt="" /></p>
|
||
<p>The v2 is out!</p>
|
||
<ul>
|
||
<li><a href="https://www.reddit.com/r/neovim/comments/w5h9tl/lsp_linesnvim_v2_is_out/">Reddit</a></li>
|
||
<li><a href="https://git.sr.ht/~whynothugo/lsp_lines.nvim">Git</a></li>
|
||
</ul>
|
||
<hr />
|
||
<p>See you on the 1st of August 2022 for a new batch of community updates!</p>
|
||
<h1>Want to contribute?</h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a>
|
||
to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>25 Jul 2022 GMT</pubDate></item><item><title>15 Jul 2022</title><link>https://this-week-in-neovim.org/2022/Jul/15</link><description><![CDATA[<h1>Welcome to This Week In Neovim! (TWiN)</h1>
|
||
<p>Hey! This is the very first news to be released on <a href="https://this-week-in-neovim.org">TWiN</a>! The goal of this news is to
|
||
explain what the project is about, what it is not, and how you can contribute to it.</p>
|
||
<h1>What is TWiN?</h1>
|
||
<p>This project is a <em>“This Week in…”</em> newsletter. It allows you to get a brief summary of what happened lately in the
|
||
<a href="https://neovim.io">Neovim</a> world. Both “core” (i.e. the editor itself) and the “plugin” community, which is expanding
|
||
quickly. As time flies, more and more plugins get updated, with new features, deprecations and ideas. Keeping up with
|
||
all that is rather hard, especially if you are using your editor to be productive without caring too much about keeping
|
||
your configuration updated. If you are a plugin author depending on other plugins (or on the Neovim Core API), this
|
||
newsletter format might be interesting for you as well.</p>
|
||
<p>The format is simple. Every week, you get delivered with what happened in the past week. You have two possibilities:</p>
|
||
<ul>
|
||
<li>Get your routine by visiting TWiN from time to time. Instead of having to skim around and look for updates, everything
|
||
is centralized there so it’s much easier to know what happened.</li>
|
||
<li>Subscribe to the RSS feed.</li>
|
||
</ul>
|
||
<h1>Want to contribute?</h1>
|
||
<p>You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to
|
||
share with us! You can open a PR at <a href="https://github.com/phaazon/this-week-in-neovim-contents">This Week In Neovim Contents</a>.</p>
|
||
<p>Feel free to read <a href="https://github.com/phaazon/this-week-in-neovim-contents#how-to-contribute">how to contribute</a> to get started.</p>
|
||
]]></description><author>Dimitri 'phaazon' Sabadie <dimitri.sabadie@gmail.com></author><pubDate>15 Jul 2022 GMT</pubDate></item></channel></rss> |