This commit is contained in:
NotAShelf 2024-07-20 08:31:31 +00:00
parent 2117bd5553
commit ac94aaf066
3 changed files with 92 additions and 85 deletions

File diff suppressed because one or more lines are too long

View file

@ -1735,38 +1735,6 @@ null or string</p>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-vim.configRC"></a><a class="term" href="options.html#opt-vim.configRC"><code class="option">vim.configRC</code>
</a>
</span>
</dt>
<dd>
<p>Contents of vimrc, either as a string or a DAG.</p><p>If this option is passed as a DAG, it will be resolved
according to the DAG resolution rules (e.g. entryBefore
or entryAfter) as per the <span class="strong"><strong>nvf</strong></span> extended library.</p>
<p><span class="emphasis"><em>Type:</em></span>
(DAG of strings concatenated with “\n”) or string</p>
<p><span class="emphasis"><em>Default:</em></span>
<code class="literal">{ }</code></p>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting vim">&quot; Set the tab size to 4 spaces
set tabstop=4
set shiftwidth=4
set expandtab
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/notashelf/nvf/blob/main/modules/wrapper/rc/options.nix" target="_top">
&lt;nvf/modules/wrapper/rc/options.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-vim.cursorlineOpt"></a><a class="term" href="options.html#opt-vim.cursorlineOpt"><code class="option">vim.cursorlineOpt</code>
@ -7877,8 +7845,8 @@ boolean</p>
<dd>
<p>An attribute set containing global variable values
for storing vim variables as early as possible. If
populated, this soption will set vim variables in the
built configRC as the first item.</p><p>E.g. {foo = “bar”} will set <code class="literal">g:foo</code> to “bar” where
populated, this option will set vim variables in the
built luaConfigRC as the first item.</p><p>E.g. {foo = “bar”} will set <code class="literal">vim.g.foo</code> to “bar” where
the type of <code class="literal">bar</code> in the resulting vimscript will be
infered from the type of the value in the <code class="literal">{name = value}</code>
pair.</p>
@ -13507,13 +13475,13 @@ package</p>
</span>
</dt>
<dd>
<p>The leader key to be used internally</p>
<p>The leader key used for <code class="literal">&lt;leader&gt;</code> mappings</p>
<p><span class="emphasis"><em>Type:</em></span>
null or string</p>
string</p>
<p><span class="emphasis"><em>Default:</em></span>
<code class="literal">null</code></p>
<code class="literal">&quot; &quot;</code></p>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
@ -15384,30 +15352,6 @@ list of string</p>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-vim.mapLeaderSpace"></a><a class="term" href="options.html#opt-vim.mapLeaderSpace"><code class="option">vim.mapLeaderSpace</code>
</a>
</span>
</dt>
<dd>
<p>Map the space key to leader key</p>
<p><span class="emphasis"><em>Type:</em></span>
boolean</p>
<p><span class="emphasis"><em>Default:</em></span>
<code class="literal">true</code></p>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/notashelf/nvf/blob/main/modules/neovim/init/basic.nix" target="_top">
&lt;nvf/modules/neovim/init/basic.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-vim.mapTimeout"></a><a class="term" href="options.html#opt-vim.mapTimeout"><code class="option">vim.mapTimeout</code>
@ -19047,6 +18991,30 @@ list of (null or package or one of “alpha-nvim”, “bufdelete-nvim”, “ca
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-vim.pluginRC"></a><a class="term" href="options.html#opt-vim.pluginRC"><code class="option">vim.pluginRC</code>
</a>
</span>
</dt>
<dd>
<p>The DAG used to configure plugins. If a string is passed, entryAnywhere is automatically applied.</p>
<p><span class="emphasis"><em>Type:</em></span>
(DAG of strings concatenated with “\n”) or string</p>
<p><span class="emphasis"><em>Default:</em></span>
<code class="literal">{ }</code></p>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/notashelf/nvf/blob/main/modules/wrapper/rc/options.nix" target="_top">
&lt;nvf/modules/wrapper/rc/options.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-vim.presence.neocord.enable"></a><a class="term" href="options.html#opt-vim.presence.neocord.enable"><code class="option">vim.presence.neocord.enable</code>
@ -24504,7 +24472,7 @@ strings concatenated with “\n”</p>
</span>
</dt>
<dd>
<p>Supported themes can be found in <code class="literal">supported_themes.nix</code></p>
<p>Supported themes can be found in <code class="literal">supportedThemes.nix</code></p>
<p><span class="emphasis"><em>Type:</em></span>
one of “catppuccin”, “dracula”, “gruvbox”, “onedark”, “oxocarbon”, “rose-pine”, “tokyonight”</p>

View file

@ -141,19 +141,27 @@ a lua function. The default is “compact”, but you may change it according to
nvim-notify documentation.</p></li></ul></div>
</div>
</div><div class="chapter"> <div class="titlepage"> <div> <div> <h2 id="sec-release-0.7" class="title" >Release 0.7 </h2> </div> </div></div><div class="toc"> <p><strong>Table of Contents</strong></p> <dl class="toc"> <dt> <span class="section"> <a href="release-notes.html#sec-release-0.7-changelog">Changelog</a> </span></dt> </dl></div><p>Release notes for release 0.7</p><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-0.7-changelog" class="title" style="clear: both">Changelog </h2> </div> </div></div><p><a class="link" href="https://github.com/ItsSorae" target="_top">ItsSorae</a>:</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>Add support for <a class="link" href="https://typst.app/" target="_top">typst</a> under <code class="literal">vim.languages.typst</code> This
</div><div class="chapter"> <div class="titlepage"> <div> <div> <h2 id="sec-release-0.7" class="title" >Release 0.7 </h2> </div> </div></div><div class="toc"> <p><strong>Table of Contents</strong></p> <dl class="toc"> <dt> <span class="section"> <a href="release-notes.html#sec-breaking-changes-and-migration-guide-0-7">Breaking Changes and Migration Guide</a> </span></dt><dt> <span class="section"> <a href="release-notes.html#sec-release-0.7-changelog">Changelog</a> </span></dt> </dl></div><p>Release notes for release 0.7</p><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-breaking-changes-and-migration-guide-0-7" class="title" style="clear: both">Breaking Changes and Migration Guide </h2> </div> </div></div><p>In v0.7 we are removing <code class="literal">vim.configRC</code> in favor of making <code class="literal">vim.luaConfigRC</code> the
top-level DAG, and thereby making the entire configuration Lua based. This
change introduces a few breaking changes:</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p><code class="literal">vim.configRC</code> has been removed, which means that you have to convert all of
your custom vimscript-based configuration to Lua. As for how to do that, you
will have to consult the Neovim documentation and your search engine.</p></li><li class="listitem"><p>After migrating your Vimscript-based configuration to Lua, you might not be
able to use the same entry names in <code class="literal">vim.luaConfigRC</code>, because those have also
slightly changed. See the new <a class="link" href="/index.xhtml#ch-dag-entries" target="_top">DAG entries in nvf manual</a> for more details.</p></li></ul></div><p><span class="strong"><strong>Why?</strong></span></p><p>Neovim being an aggressive refactor of Vim, is designed to be mainly Lua based;
making good use of its extensive Lua API. Additionally, Vimscript is slow and
brings unnecessary performance overhead while working with different
configuration formats.</p>
</div><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-0.7-changelog" class="title" style="clear: both">Changelog </h2> </div> </div></div><p><a class="link" href="https://github.com/ItsSorae" target="_top">ItsSorae</a>:</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>Add support for <a class="link" href="https://typst.app/" target="_top">typst</a> under <code class="literal">vim.languages.typst</code> This
will enable the <code class="literal">typst-lsp</code> language server, and the <code class="literal">typstfmt</code> formatter</p></li></ul></div><p><a class="link" href="https://github.com/frothymarrow" target="_top">frothymarrow</a>:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Modified type for
<a class="link" href="options.html#opt-vim.visuals.fidget-nvim.setupOpts.progress.display.overrides" >vim.visuals.fidget-nvim.setupOpts.progress.display.overrides</a>
from <code class="literal">anything</code> to a <code class="literal">submodule</code> for better type checking.</p></li><li class="listitem"><p>Fix null <code class="literal">vim.lsp.mappings</code> generating an error and not being filtered out.</p></li><li class="listitem"><p>Add basic transparency support for <code class="literal">oxocarbon</code> theme by setting the highlight
<a class="xref" href="options.html#opt-vim.visuals.fidget-nvim.setupOpts.progress.display.overrides" ><code class="option">vim.visuals.fidget-nvim.setupOpts.progress.display.overrides</code></a> from
<code class="literal">anything</code> to a <code class="literal">submodule</code> for better type checking.</p></li><li class="listitem"><p>Fix null <code class="literal">vim.lsp.mappings</code> generating an error and not being filtered out.</p></li><li class="listitem"><p>Add basic transparency support for <code class="literal">oxocarbon</code> theme by setting the highlight
group for <code class="literal">Normal</code>, <code class="literal">NormalFloat</code>, <code class="literal">LineNr</code>, <code class="literal">SignColumn</code> and optionally
<code class="literal">NvimTreeNormal</code> to <code class="literal">none</code>.</p></li><li class="listitem"><p>Fix
<a class="link" href="options.html#opt-vim.ui.smartcolumn.setupOpts.custom_colorcolumn" >vim.ui.smartcolumn.setupOpts.custom_colorcolumn</a>
using the wrong type <code class="literal">int</code> instead of the expected type <code class="literal">string</code>.</p></li><li class="listitem"><p>Fix unused src and version attributes in <code class="literal">buildPlug</code>.</p></li></ul></div><p><a class="link" href="https://github.com/horriblename" target="_top">horriblename</a>:</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>Fix broken treesitter-context keybinds in visual mode</p></li><li class="listitem"><p>Deprecate use of <code class="literal">__empty</code> to define empty tables in lua. Empty attrset are no
longer filtered and thus should be used instead.</p></li><li class="listitem"><p>Add dap-go for better dap configurations</p></li><li class="listitem"><p>Make noice.nvim customizable</p></li><li class="listitem"><p>Switch from <a class="link" href="https://github.com/simrat39/rust-tools.nvim" target="_top">rust-tools.nvim</a>
to the more feature-packed [rustacean.nvim](https://github.com/mrcjkb/rustaceanvim.
This switch entails a whole bunch of new features and options, so you are
recommended to go through rustacean.nvims README to take a closer look at
its features and usage.</p></li></ul></div><p><a class="link" href="https://github.com/jacekpoz" target="_top">jacekpoz</a>:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Add <a class="link" href="https://github.com/ocaml/ocaml-lsp" target="_top">ocaml-lsp</a> support.</p></li><li class="listitem"><p>Fix Emac typo</p></li></ul></div><p><a class="link" href="https://github.com/diniamo" target="_top">diniamo</a>:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Move the <code class="literal">theme</code> dag entry to before <code class="literal">luaScript</code>.</p></li><li class="listitem"><p>Add rustfmt as the default formatter for Rust.</p></li><li class="listitem"><p>Enabled the terminal integration of catppuccin for theming Neovims built-in
<code class="literal">NvimTreeNormal</code> to <code class="literal">none</code>.</p></li><li class="listitem"><p>Fix <a class="xref" href="options.html#opt-vim.ui.smartcolumn.setupOpts.custom_colorcolumn" ><code class="option">vim.ui.smartcolumn.setupOpts.custom_colorcolumn</code></a> using the wrong
type <code class="literal">int</code> instead of the expected type <code class="literal">string</code>.</p></li><li class="listitem"><p>Fix unused src and version attributes in <code class="literal">buildPlug</code>.</p></li></ul></div><p><a class="link" href="https://github.com/horriblename" target="_top">horriblename</a>:</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>Fix broken treesitter-context keybinds in visual mode</p></li><li class="listitem"><p>Deprecate use of <code class="literal">__empty</code> to define empty tables in Lua. Empty attrset are no
longer filtered and thus should be used instead.</p></li><li class="listitem"><p>Add dap-go for better dap configurations</p></li><li class="listitem"><p>Make noice.nvim customizable</p></li></ul></div><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>Switch from <a class="link" href="https://github.com/simrat39/rust-tools.nvim" target="_top">rust-tools.nvim</a> to the more feature-packed <a class="link" href="https://github.com/mrcjkb/rustaceanvim" target="_top">rustaceanvim</a>. This
switch entails a whole bunch of new features and options, so you are
recommended to go through rustacean.nvims README to take a closer look at its
features and usage</p></li></ul></div><p><a class="link" href="https://github.com/jacekpoz" target="_top">jacekpoz</a>:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Add <a class="link" href="https://github.com/ocaml/ocaml-lsp" target="_top">ocaml-lsp</a> support</p></li><li class="listitem"><p>Fix “Emac” typo</p></li></ul></div><p><a class="link" href="https://github.com/diniamo" target="_top">diniamo</a>:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Move the <code class="literal">theme</code> dag entry to before <code class="literal">luaScript</code>.</p></li><li class="listitem"><p>Add rustfmt as the default formatter for Rust.</p></li><li class="listitem"><p>Enabled the terminal integration of catppuccin for theming Neovims built-in
terminal (this also affects toggleterm).</p></li><li class="listitem"><p>Migrate bufferline to setupOpts for more customizability</p></li><li class="listitem"><p>Use <code class="literal">clangd</code> as the default language server for C languages</p></li><li class="listitem"><p>Expose <code class="literal">lib.nvim.types.pluginType</code>, which for example allows the user to
create abstractions for adding plugins</p></li><li class="listitem"><p>Migrate indent-blankline to setupOpts for more customizability. While the
plugins options can now be found under <code class="literal">indentBlankline.setupOpts</code>, the
@ -162,13 +170,19 @@ which have been removed for the time being. These are:</p><div class="itemizedli
yourself by adding <code class="literal">vim.opt.listchars:append({ space = &#x27;&lt;char&gt;&#x27; })</code> to your
lua configuration</p></li><li class="listitem"><p><code class="literal">eolChar</code> - this also had nothing to do with the plugin, please configure it
yourself by adding <code class="literal">vim.opt.listchars:append({ eol = &#x27;&lt;char&gt;&#x27; })</code> to your
lua configuration</p></li></ul></div></li></ul></div><p><a class="link" href="https://github.com/notashelf" target="_top">NotAShelf</a>:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Add <code class="literal">deno fmt</code> as the default Markdown formatter. This will be enabled
lua configuration</p></li></ul></div></li></ul></div><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>Make Neovims configuration file entirely Lua based. This comes with a few
breaking changes:</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: circle;"><li class="listitem"><p><code class="literal">vim.configRC</code> has been removed. You will need to migrate your entries to
Neovim-compliant Lua code, and add them to <code class="literal">vim.luaConfigRC</code> instead.
Existing vimscript configurations may be preserved in <code class="literal">vim.cmd</code> functions.
Please see <a class="link" href="https://neovim.io/doc/user/lua.html#vim.cmd()" target="_top">Neovim documentation on <code class="literal">vim.cmd</code></a></p></li><li class="listitem"><p><code class="literal">vim.luaScriptRC</code> is now the top-level DAG, and the internal <code class="literal">vim.pluginRC</code>
has been introduced for setting up internal plugins. See the “DAG entries in
nvf” manual page for more information.</p></li></ul></div></li></ul></div><p><a class="link" href="https://github.com/notashelf" target="_top">NotAShelf</a>:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Add <code class="literal">deno fmt</code> as the default Markdown formatter. This will be enabled
automatically if you have autoformatting enabled, but can be disabled manually
if you choose to.</p></li><li class="listitem"><p>Add <code class="literal">vim.extraLuaFiles</code> for optionally sourcing additional lua files in your
configuration.</p></li><li class="listitem"><p>Refactor <code class="literal">programs.languages.elixir</code> to use lspconfig and none-ls for LSP and
formatter setups respectively. Diagnostics support is considered, and may be
added once the <a class="link" href="https://github.com/rrrene/credo" target="_top">credo</a> linter has been added
to nixpkgs. A pull request is currently open.</p></li><li class="listitem"><p>Remove vim-tidal and friends.</p></li><li class="listitem"><p>Clean up Lualine module to reduce theme dependency on Catppuccin, and fixed
added once the <a class="link" href="https://github.com/rrrene/credo" target="_top">credo</a> linter has been added to nixpkgs. A pull request is
currently open.</p></li><li class="listitem"><p>Remove vim-tidal and friends.</p></li><li class="listitem"><p>Clean up Lualine module to reduce theme dependency on Catppuccin, and fixed
blending issues in component separators.</p></li><li class="listitem"><p>Add [ts-ereror-translator.nvim] extension of the TS language module, under
<code class="literal">vim.languages.ts.extensions.ts-error-translator</code> to aid with Typescript
development.</p></li><li class="listitem"><p>Add [neo-tree.nvim] as an alternative file-tree plugin. It will be available