From 0fa7b8d53d602c3979295811afc46711434a23c0 Mon Sep 17 00:00:00 2001 From: NotAShelf Date: Sun, 31 Dec 2023 10:07:30 +0300 Subject: [PATCH] docs/manual: convert release notes to markdown --- docs/manual.nix | 11 +-- docs/manual/default-configs/maximal.md | 4 +- docs/manual/hacking/guidelines.md | 9 ++- docs/manual/hacking/keybinds.md | 8 +- docs/manual/manual.md | 4 + docs/release-notes/release-notes.adoc | 14 ---- docs/release-notes/release-notes.md | 12 +++ docs/release-notes/rl-0.1.adoc | 32 -------- docs/release-notes/rl-0.1.md | 40 +++++++++ docs/release-notes/rl-0.2.adoc | 46 ----------- docs/release-notes/rl-0.2.md | 53 ++++++++++++ docs/release-notes/rl-0.3.adoc | 75 ----------------- docs/release-notes/rl-0.3.md | 81 +++++++++++++++++++ docs/release-notes/rl-0.4.adoc | 72 ----------------- docs/release-notes/rl-0.4.md | 73 +++++++++++++++++ docs/release-notes/rl-0.5.adoc | 104 ------------------------ docs/release-notes/rl-0.5.md | 107 +++++++++++++++++++++++++ docs/release-notes/rl-0.6.adoc | 12 --- docs/release-notes/rl-0.6.md | 19 +++++ 19 files changed, 408 insertions(+), 368 deletions(-) delete mode 100644 docs/release-notes/release-notes.adoc create mode 100644 docs/release-notes/release-notes.md delete mode 100644 docs/release-notes/rl-0.1.adoc create mode 100644 docs/release-notes/rl-0.1.md delete mode 100644 docs/release-notes/rl-0.2.adoc create mode 100644 docs/release-notes/rl-0.2.md delete mode 100644 docs/release-notes/rl-0.3.adoc create mode 100644 docs/release-notes/rl-0.3.md delete mode 100644 docs/release-notes/rl-0.4.adoc create mode 100644 docs/release-notes/rl-0.4.md delete mode 100644 docs/release-notes/rl-0.5.adoc create mode 100644 docs/release-notes/rl-0.5.md delete mode 100644 docs/release-notes/rl-0.6.adoc create mode 100644 docs/release-notes/rl-0.6.md diff --git a/docs/manual.nix b/docs/manual.nix index 76adfd4ec..6455e738d 100644 --- a/docs/manual.nix +++ b/docs/manual.nix @@ -10,11 +10,10 @@ }: stdenv.mkDerivation { name = "neovim-flake-manual"; + src = ./manual; nativeBuildInputs = [nixos-render-docs]; - src = ./manual; - buildPhase = '' mkdir -p out/media @@ -35,9 +34,11 @@ stdenv.mkDerivation { '@VERSION@' \ ${revision} - cp ${nmd}/static/style.css out/style.css - cp -t out/highlightjs ${nmd}/static/highlightjs/tomorrow-night.min.css - cp ${./highlight-style.css} out/highlightjs/highlight-style.css + cp -v ${nmd}/static/style.css out/style.css + cp -vt out/highlightjs ${nmd}/static/highlightjs/tomorrow-night.min.css + cp -v ${./highlight-style.css} out/highlightjs/highlight-style.css + + cp -vr ${./release-notes} release-notes nixos-render-docs manual html \ --manpage-urls ./manpage-urls.json \ diff --git a/docs/manual/default-configs/maximal.md b/docs/manual/default-configs/maximal.md index 58256eb35..78b8e2582 100644 --- a/docs/manual/default-configs/maximal.md +++ b/docs/manual/default-configs/maximal.md @@ -6,6 +6,8 @@ $ nix shell github:notashelf/neovim-flake#maximal test.nix It is the same fully configured neovim as with the [Nix](#sec-default-nix) config, but with every supported language enabled. -::: note +:::{.note} + Running the maximal config will download _a lot_ of packages as it is downloading language servers, formatters, and more. + ::: diff --git a/docs/manual/hacking/guidelines.md b/docs/manual/hacking/guidelines.md index 49f35c8ac..7c55e19c0 100644 --- a/docs/manual/hacking/guidelines.md +++ b/docs/manual/hacking/guidelines.md @@ -15,7 +15,10 @@ Most, if not all, changes warrant changes to the documentation. Module options s [Nixpkgs-flavoured Markdown](https://nixos.org/manual/nixpkgs/unstable/#sec-contributing-markup), albeit with exceptions. :::{.note} -As of v0.6, neovim-flake is itself documented using full markdown in both module options and the manual. + +As of v0.5, neovim-flake is itself documented using full markdown in both module options and the manual. With +v0.6, this manual has also been converted to markdown in full. + ::: The HTML version of this manual containing both the module option descriptions and the documentation of neovim-flake @@ -57,11 +60,11 @@ A commit message ideally, but not necessarily, follow the given template from ho where `{component}` refers to the code component (or module) your change affects, `{description}` is a very brief description of your change, and `{long description}` is an optional clarifying description. As a rare exception, if there is no clear component, or your change affects many components, then the `{component}` part is optional. -See <> for a commit message that fulfills these requirements. +See [example commit message](#ex-commit-message) for a commit message that fulfills these requirements. ## Example Commit {#sec-guidelines-ex-commit-message} -The commit {example-commit-message}[69f8e47e9e74c8d3d060ca22e18246b7f7d988ef] contains the commit message +The commit [69f8e47e9e74c8d3d060ca22e18246b7f7d988ef](https://github.com/nix-community/home-manager/commit/69f8e47e9e74c8d3d060ca22e18246b7f7d988ef) contains the commit message ``` diff --git a/docs/manual/hacking/keybinds.md b/docs/manual/hacking/keybinds.md index f6c594741..6114274e4 100644 --- a/docs/manual/hacking/keybinds.md +++ b/docs/manual/hacking/keybinds.md @@ -1,13 +1,11 @@ # Keybinds {#sec-keybinds} As of 0.4, there exists an API for writing your own keybinds and a couple of useful utility functions are available in -the https://github.com/NotAShelf/neovim-flake/tree/main/lib[extended standard library]. The following section contains +the [extended standard library](https://github.com/NotAShelf/neovim-flake/tree/main/lib). The following section contains a general overview to how you may utilize said functions. ## Custom Key Mappings Support for a Plugin {#sec-custom-key-mappings} -:maps: https://notashelf.github.io/neovim-flake/options.html#opt-vim.maps.command._name_.action - To set a mapping, you should define it in `vim.maps.<>`. The available modes are: @@ -37,7 +35,9 @@ An example, simple keybinding, can look like this: } ``` -There are many settings available in the options. Please refer to the {maps}[documentation] to see a list of them. +There are many settings available in the options. Please refer to the +[documentation](https://notashelf.github.io/neovim-flake/options.html#opt-vim.maps.command._name_.action) +to see a list of them. `neovim-flake` provides a list of helper commands, so that you don't have to write the mapping attribute sets every time: diff --git a/docs/manual/manual.md b/docs/manual/manual.md index e0268240c..c9d1043cd 100644 --- a/docs/manual/manual.md +++ b/docs/manual/manual.md @@ -20,3 +20,7 @@ hacking.md ```{=include=} appendix html:into-file=//options.html options.md ``` + +```{=include=} appendix html:into-file=//release-notes.html +release-notes/release-notes.md +``` diff --git a/docs/release-notes/release-notes.adoc b/docs/release-notes/release-notes.adoc deleted file mode 100644 index 340fa8dda..000000000 --- a/docs/release-notes/release-notes.adoc +++ /dev/null @@ -1,14 +0,0 @@ -[[ch-release-notes]] -[appendix] -== Release Notes - -This section lists the release notes for tagged version of neovim-flake and current main. - -:leveloffset: 1 - -include::rl-0.1.adoc[] -include::rl-0.2.adoc[] -include::rl-0.3.adoc[] -include::rl-0.4.adoc[] -include::rl-0.5.adoc[] -include::rl-0.6.adoc[] diff --git a/docs/release-notes/release-notes.md b/docs/release-notes/release-notes.md new file mode 100644 index 000000000..6784727a1 --- /dev/null +++ b/docs/release-notes/release-notes.md @@ -0,0 +1,12 @@ +# Release Notes {#ch-release-notes} + +This section lists the release notes for tagged version of neovim-flake and current main. + +```{=include=} chapters +rl-0.1.md +rl-0.2.md +rl-0.3.md +rl-0.4.md +rl-0.5.md +rl-0.6.md +``` diff --git a/docs/release-notes/rl-0.1.adoc b/docs/release-notes/rl-0.1.adoc deleted file mode 100644 index 0ab1a252c..000000000 --- a/docs/release-notes/rl-0.1.adoc +++ /dev/null @@ -1,32 +0,0 @@ -[[sec-release-0.1]] -== Release 0.1 - -This is the current master branch and information here is not final. These are changes from the v0.01 tag. - -Special thanks to https://github.com/nix-community/home-manager/[home-manager] for this release. Docs/manual generation, the new module evaluation system, and DAG implementation are from them. - -[[sec-release-0.1-changelog]] -=== Changelog - -https://github.com/jordanisaacs[jordanisaacs]: - -* Removed hare language support (lsp/tree-sitter/etc). `vim.lsp.hare` is no longer defined. If you use hare and would like it added back, please file an issue. - -* <> & <> are now an enum of `string` for options sourced from the flake inputs. Users can still provide vim plugin packages. -+ -If you are contributing and adding a new plugin, add the plugin name to `availablePlugins` in https://github.com/jordanisaacs/neovim-flake/blob/20cec032bd74bc3d20ac17ce36cd84786a04fd3e/modules/lib/types-plugin.nix[types-plugin.nix]. - -* `neovimBuilder` has been removed for configuration. Using an overlay is no longer required. See the manual for the new way to configuration. - -* Treesitter grammars are now configurable with <>. Utilizes the nixpkgs `nvim-treesitter` plugin rather than a custom input in order to take advantage of build support of pinned versions. See https://discourse.nixos.org/t/psa-if-you-are-on-unstable-try-out-nvim-treesitter-withallgrammars/23321?u=snowytrees[discourse] for more information. Packages can be found under the `vimPlugins.nvim-treesitter.builtGrammars` namespace. - -* <> and <> are now of type DAG lines. This allows for ordering of the config. Usage is the same is in home-manager's `home.activation` option. -+ -[source,nix] ----- -vim.luaConfigRC = lib.nvim.dag.entryAnywhere "config here" ----- - -https://github.com/MoritzBoehme[MoritzBoehme]: - -* `catppuccin` theme is now available as a neovim theme <> and lualine theme <>. diff --git a/docs/release-notes/rl-0.1.md b/docs/release-notes/rl-0.1.md new file mode 100644 index 000000000..99daa5b14 --- /dev/null +++ b/docs/release-notes/rl-0.1.md @@ -0,0 +1,40 @@ +# Release 0.1 {#sec-release-0.1} + +This is the current master branch and information here is not final. These are changes from the v0.01 tag. + +Special thanks to [home-manager](https://github.com/nix-community/home-manager/) for this release. +Docs/manual generation, the new module evaluation system, and DAG implementation are from them. + +## Changelog {#sec-release-0.1-changelog} + +[jordanisaacs](https://github.com/jordanisaacs): + +- Removed hare language support (lsp/tree-sitter/etc). `vim.lsp.hare` is no longer defined. + If you use hare and would like it added back, please file an issue. + +- [vim.stratPlugins](opt-vim.startPlugins) & [vim.optPlugins](opt-vim.optPlugins) are now + an enum of `string` for options sourced from the flake inputs. Users can still provide vim + plugin packages. + + - If you are contributing and adding a new plugin, add the plugin name to `availablePlugins` in + [types-plugin.nix](https://github.com/jordanisaacs/neovim-flake/blob/20cec032bd74bc3d20ac17ce36cd84786a04fd3e/modules/lib/types-plugin.nix). + +- `neovimBuilder` has been removed for configuration. Using an overlay is no longer required. + See the manual for the new way to configuration. + +- Treesitter grammars are now configurable with [vim.treesitter.grammars](opt-vim.treesitter.grammars). + Utilizes the nixpkgs `nvim-treesitter` plugin rather than a custom input in order to take advantage of build support of pinned versions. + See [relevant discourse post](https://discourse.nixos.org/t/psa-if-you-are-on-unstable-try-out-nvim-treesitter-withallgrammars/23321?u=snowytrees) + for more information. Packages can be found under the `vimPlugins.nvim-treesitter.builtGrammars` namespace. + +- [vim.configRC](opt-vim.configRC) and [vim.luaConfigRC](opt-vim.luaConfigRC) are now of type DAG lines. + This allows for ordering of the config. Usage is the same is in home-manager's `home.activation` option. + +```nix +vim.luaConfigRC = lib.nvim.dag.entryAnywhere "config here" +``` + +[MoritzBoehme](https://github.com/MoritzBoehme): + +- `catppuccin` theme is now available as a neovim theme [vim.theme.style](opt-vim.theme.style) and lualine theme + [vim.statusline.lualine.theme](opt-vim.statusline.lualine.theme). diff --git a/docs/release-notes/rl-0.2.adoc b/docs/release-notes/rl-0.2.adoc deleted file mode 100644 index 3b609cce5..000000000 --- a/docs/release-notes/rl-0.2.adoc +++ /dev/null @@ -1,46 +0,0 @@ -[[sec-release-0.2]] -== Release 0.2 - -Release notes for release 0.2 - - -[[sec-release-0.2-changelog]] -=== Changelog - -https://github.com/notashelf[notashelf]: - -* Added two minimap plugins under `vim.minimap`. `codewindow.nvim` is enabled by default, while `minimap.vim` is available with its code-minimap dependency. - -* A complementary plugin, `obsidian.nvim` and the Neovim alternative for Emacs' orgmode with `orgmode.nvim` have been added. Both will be disabled by default. - -* Smooth scrolling for ANY movement command is now available with `cinnamon.nvim` - -* You will now notice a dashboard on startup. This is provided by the `alpha.nvim` plugin. You can use any of the three available dashboard plugins, or disable them entirely. - -* There is now a scrollbar on active buffers, which can highlight errors by hooking to your LSPs. This is on by default, but can be toggled off under `vim.visuals` if seen necessary. - -* Discord Rich Presence has been added through `presence.nvim` for those who want to flex that they are using the *superior* text editor. - -* An icon picker is now available with telescope integration. You can use `:IconPickerInsert` or `:IconPickerYank` to add icons to your code. - -* A general purpose cheatsheet has been added through `cheatsheet.nvim`. Forget no longer! - -* `ccc.nvim` has been added to the default plugins to allow picking colors with ease. - -* Most UI components of Neovim have been replaced through the help of `noice.nvim`. There are also notifications and custom UI elements available for Neovim messages and prompts. - -* A (floating by default) terminal has been added through `toggleterm.nvim`. - -* Harness the power of ethical (`tabnine.nvim`) and not-so-ethical (`copilot.lua`) AI by those new assistant plugins. Both are off by default, TabNine needs to be wrapped before it's working. - -* Experimental mouse gestures have been addede through `gesture.nvim`. See plugin page and the relevant module for more details on how to use. - -* Re-open last visited buffers via `nvim-session-manager`. Disabled by default as deleting buffers seems to be problematic at the moment. - -* Most of NvimTree's configuration options have been changed with some options being toggled to off by default. - -* Lualine had its configuration simplified and style toned down. Less color, more info. - -* Modules where multiple plugin configurations were in the same directory have been simplified. Each plugin inside a single module gets its own directory to be imported. - -* Separate config options with the same parent attribute have been merged into one for simplicity. diff --git a/docs/release-notes/rl-0.2.md b/docs/release-notes/rl-0.2.md new file mode 100644 index 000000000..acb0e3c86 --- /dev/null +++ b/docs/release-notes/rl-0.2.md @@ -0,0 +1,53 @@ +# Release 0.2 {#sec-release-0.2} + +Release notes for release 0.2 + +## Changelog {#sec-release-0.2-changelog} + +[notashelf](https://github.com/notashelf): + +- Added two minimap plugins under `vim.minimap`. `codewindow.nvim` is enabled by default, while `minimap.vim` is + available with its code-minimap dependency. +- A complementary plugin, `obsidian.nvim` and the Neovim alternative for Emacs' orgmode with `orgmode.nvim` have been + added. Both will be disabled by default. + +- Smooth scrolling for ANY movement command is now available with `cinnamon.nvim` + +- You will now notice a dashboard on startup. This is provided by the `alpha.nvim` plugin. You can use any of the + three available dashboard plugins, or disable them entirely. + +- There is now a scrollbar on active buffers, which can highlight errors by hooking to your LSPs. This is on by + default, but can be toggled off under `vim.visuals` if seen necessary. + +- Discord Rich Presence has been added through `presence.nvim` for those who want to flex that they are using + the _superior_ text editor. + +- An icon picker is now available with telescope integration. You can use `:IconPickerInsert` or `:IconPickerYank` + to add icons to your code. + +- A general-purpose cheatsheet has been added through `cheatsheet.nvim`. Forget no longer! + +- `ccc.nvim` has been added to the default plugins to allow picking colors with ease. + +- Most UI components of Neovim have been replaced through the help of `noice.nvim`. There are also notifications + and custom UI elements available for Neovim messages and prompts. + +- A (floating by default) terminal has been added through `toggleterm.nvim`. + +- Harness the power of ethical (`tabnine.nvim`) and not-so-ethical (`copilot.lua`) AI by those new assistant plugins. + Both are off by default, TabNine needs to be wrapped before it's working. + +- Experimental mouse gestures have been added through `gesture.nvim`. See plugin page and the relevant module for + more details on how to use. + +- Re-open last visited buffers via `nvim-session-manager`. Disabled by default as deleting buffers seems to be + problematic at the moment. + +- Most of NvimTree's configuration options have been changed with some options being toggled to off by default. + +- Lualine had its configuration simplified and style toned down. Less color, more info. + +- Modules where multiple plugin configurations were in the same directory have been simplified. Each plugin inside + a single module gets its directory to be imported. + +- Separate config options with the same parent attribute have been merged into one for simplicity. diff --git a/docs/release-notes/rl-0.3.adoc b/docs/release-notes/rl-0.3.adoc deleted file mode 100644 index da0f00a5c..000000000 --- a/docs/release-notes/rl-0.3.adoc +++ /dev/null @@ -1,75 +0,0 @@ -[[sec-release-0.3]] -== Release 0.3 - -Release 0.3 had to come out beore I wanted it to due to Neovim 0.9 dropping into nixpkgs-unstable. The treesitter changes -have prompted a treesitter rework, which was followed by reworking the languages system. Most of the changes to those are downstreamed -from the original repository. The feature requests that was originally planned for 0.3 have been moved to 0.4, which -should come out soon. - -[[sec-release-0.3-changelog]] -=== Changelog - -* We have transitioned to flake-parts, from flake-utils to extend the flexibility of this flake. This means the flake structure -is different than usual, but the functionality remains the same. - -* We now provide a home-manager module. Do note that it is still far from perfect, but it works. - -* `nodejs_16` is now bundled with `Copilot.lua` if the user has enabled Copilot assistant. - -* which-key section titles have been fixed. This is to be changed once again in a possible keybind rewrite, but now it should -display the correct titles instad of `+prefix` - -* Most of `presence.nvim`'s options have been made fully configurable through your configuration file. - -* Most of the modules have been refactored to separate `config` and `options` attributes. - -* Darwin has been deprecated as the zig package is marked as broken. We will attempt to use the zig overlay to return Darwin -support. - -* `Fidget.nvim` has been added as a neat visual addition for LSP installations. - -* `diffview.nvim` has been added to provide a convenient diff utility. - -* Treesitter grammars are now configurable with <>. Utilizes the nixpkgs `nvim-treesitter` plugin rather than a custom input in order to take advantage of build support of pinned versions. See https://discourse.nixos.org/t/psa-if-you-are-on-unstable-try-out-nvim-treesitter-withallgrammars/23321?u=snowytrees[discourse] for more information. Packages can be found under the `pkgs.vimPlugins.nvim-treesitter.builtGrammars` attribute. Treesitter grammars for supported languages should be enabled within the module. By default no grammars are installed, thus the following grammars which do not have a language section are not included anymore: comment, toml, make, html, css, graphql, json. - -* A new section has been added for language support: `vim.languages.`. The options <>, <>, etc. will enable the respective section for all languages that have been enabled. -** All LSP languages have been moved here -** `plantuml` and `markdown` have been moved here -** A new section has been added for `html`. The old `vim.treesitter.autotagHtml` can be found at <>. - -* <> has been added allowing you to turn on gitsigns codeactions. - -* Removed the plugins document in the docs. Was too unwieldy to keep updated. - -* `vim.visual.lspkind` has been moved to <> - -* Improved handling of completion formatting. When setting <>, can also include optional menu mapping. And can provide your own function with <>. - -* For <> and <> turning them off should use `null` rather than `""` now. - -* Transparency has been made optional and has been disabled by default. <> option can be used to enable or -disable transparency for your configuration. - -* Fixed deprecated configuration method for Tokyonight, and added new style "moon" - -* Dart language support as well as extended flutter support has been added. Thanks to @FlafyDev for his contributions towards Dart -language support. - -* Elixir language support has been added through `elixir-tools.nvim`. - -* `hop.nvim` and `leap.nvim` have been added for fast navigation. - -* `modes.nvim` has been added to the UI plugins as a minor error highlighter. - -* `smartcollumn.nvim` has been added to dynamically display a colorcolumn when the limit has been exceeded, providing -per-buftype column position and more. - -* `project.nvim` has been added for better project management inside Neovim. - -* More configuration options have been added to `nvim-session-manager`. - -* Editorconfig support has been added to the core functionality, with an enable option. - -* `venn-nvim` has been dropped due to broken keybinds. - - diff --git a/docs/release-notes/rl-0.3.md b/docs/release-notes/rl-0.3.md new file mode 100644 index 000000000..0eefcb82f --- /dev/null +++ b/docs/release-notes/rl-0.3.md @@ -0,0 +1,81 @@ +# Release 0.3 {#sec-release-0.3} + +Release 0.3 had to come out beore I wanted it to due to Neovim 0.9 dropping into nixpkgs-unstable. +The treesitter changes have prompted a treesitter rework, which was followed by reworking the languages system. +Most of the changes to those are downstreamed from the original repository. The feature requests that was originally +planned for 0.3 have been moved to 0.4, which should come out soon. + +## Changelog {#sec-release-0.3-changelog} + +- We have transitioned to flake-parts, from flake-utils to extend the flexibility of this flake. This means the flake structure + is different than usual, but the functionality remains the same. + +- We now provide a home-manager module. Do note that it is still far from perfect, but it works. + +- `nodejs_16` is now bundled with `Copilot.lua` if the user has enabled Copilot assistant. + +- which-key section titles have been fixed. This is to be changed once again in a possible keybind rewrite, but now it should + display the correct titles instad of `+prefix` + +- Most of `presence.nvim`'s options have been made fully configurable through your configuration file. + +- Most of the modules have been refactored to separate `config` and `options` attributes. + +- Darwin has been deprecated as the zig package is marked as broken. We will attempt to use the zig overlay to return Darwin + support. + +- `Fidget.nvim` has been added as a neat visual addition for LSP installations. + +- `diffview.nvim` has been added to provide a convenient diff utility. + +- Treesitter grammars are now configurable with [vim.treesitter.grammars](vim.treesitter.grammars). + Utilizes the nixpkgs `nvim-treesitter` plugin rather than a custom input in order to take advantage of build support of pinned versions. + See [discourse](https://discourse.nixos.org/t/psa-if-you-are-on-unstable-try-out-nvim-treesitter-withallgrammars/23321?u=snowytrees) for more information. + Packages can be found under the `pkgs.vimPlugins.nvim-treesitter.builtGrammars` attribute. Treesitter grammars for supported languages should be + enabled within the module. By default no grammars are installed, thus the following grammars which do not have a language section are not included anymore: + **comment**, **toml**, **make**, **html**, **css**, **graphql**, **json**. + +- A new section has been added for language support: `vim.languages.`. + + - The options [vim.languages.enableLSP](vim.languages.enableLSP), [vim.languages.enableTreesitter](vim.languages.enableTreesitter), etc. + will enable the respective section for all languages that have been enabled. + - All LSP languages have been moved here + - `plantuml` and `markdown` have been moved here + - A new section has been added for `html`. The old `vim.treesitter.autotagHtml` can be found at <>. + +- [vim.git.gitsigns.codeActions](vim.git.gitsigns.codeActions) has been added allowing you to turn on gitsigns codeactions. + +- Removed the plugins document in the docs. Was too unwieldy to keep updated. + +- `vim.visual.lspkind` has been moved to [vim.lsp.lspkind.enable](vim.lsp.lspkind.enable) + +- Improved handling of completion formatting. When setting [vim.autocomplete.sources](vim.autocomplete.sources), can also include optional menu mapping. + And can provide your own function with [vim.autocomplete.formatting.format](vim.autocomplete.formatting.format). + +- For [vim.visuals.indentBlankline.fillChar](vim.visuals.indentBlankline.fillChar) and [vim.visuals.indentBlankline.eolChar](vim.visuals.indentBlankline.eolChar) + turning them off should use `null` rather than `""` now. + +- Transparency has been made optional and has been disabled by default. [vim.theme.transparent](vim.theme.transparent) option can be used to enable or + disable transparency for your configuration. + +- Fixed deprecated configuration method for Tokyonight, and added new style "moon" + +- Dart language support as well as extended flutter support has been added. Thanks to @FlafyDev for his contributions towards Dart + language support. + +- Elixir language support has been added through `elixir-tools.nvim`. + +- `hop.nvim` and `leap.nvim` have been added for fast navigation. + +- `modes.nvim` has been added to the UI plugins as a minor error highlighter. + +- `smartcollumn.nvim` has been added to dynamically display a colorcolumn when the limit has been exceeded, providing + per-buftype column position and more. + +- `project.nvim` has been added for better project management inside Neovim. + +- More configuration options have been added to `nvim-session-manager`. + +- Editorconfig support has been added to the core functionality, with an enable option. + +- `venn-nvim` has been dropped due to broken keybinds. diff --git a/docs/release-notes/rl-0.4.adoc b/docs/release-notes/rl-0.4.adoc deleted file mode 100644 index ce96e1e20..000000000 --- a/docs/release-notes/rl-0.4.adoc +++ /dev/null @@ -1,72 +0,0 @@ -[[sec-release-0.4]] -== Release 0.4 -Following the release of v0.3, I have decided to release v0.4 with a massive new change: customizable keybinds. As of the 0.4 release, keybinds will no longer be hardcoded and instead provided by each module's own keybinds section. The old keybind system (`vim.keybinds = {}`) is now considered deprecated and the new lib functions are recommended to be used for adding keybinds for new plugins, or adding keybinds to existing plugins. - -Alongside customizable keybinds, there are a few quality of life updates, such as `lazygit` integration and the new experimental Lua loader of Neovim 0.9 thanks to our awesome contributors who made this update possible during my absence. - - -[[sec-release-0.4-changelog]] -=== Changelog - -https://github.com/n3oney[n3oney]: - -* Streamlined keybind adding process towards new functions in extended stdlib. - -* Moved default keybinds into keybinds section of each module - -* Simplified luaConfigRC and configRC setting - they can now just take strings - -* Refactored the resolveDag function - you can just provide a string now, which will default to dag.entryAnywhere - -* Fixed formatting sometimes removing parts of files - -* Made formatting synchronous - -* Gave null-ls priority over other formatters - -https://github.com/horriblename[horriblename]: - -* Added `clangd` as alternative lsp for C/++. - -* Added `toggleterm` integration for `lazygit`. - -* Added new option `enableluaLoader` to enable neovim's experimental module loader for faster startup time. - -* Fixed bug where flutter-tools can't find `dart` LSP - -* Added Debug Adapter (DAP) support for clang, rust, go, python and dart. - -https://github.com/notashelf[notashelf]: - -* Made Copilot's Node package configurable. It is recommended to keep as default, but providing a different NodeJS version is now possible. - -* Added <> for configuring Neovim's cursorlineOpt. - -* Added `filetree.nvimTreeLua.view.cursorline`, default false, to enable cursorline in nvimtre. - -* Added Fidget.nvim support for the Catppuccin theme. - -* Updated bundled NodeJS version used by `Copilot.lua`. v16 is now marked as insecure on Nixpkgs, and we updated to v18 - -* Enabled Catppuccin modules for plugins available by default. - -* Added experimental Svelte support under `vim.languages`. - -* Removed unnecessary scrollbar element from notifications and codeaction warning UI. - -* `vim.utility.colorizer` has been renamed to `vim.utility.ccc` after the plugin it uses - -* Color preview via `nvim-colorizer.lua` - -* Updated Lualine statusline UI - -* Added vim-illuminate for smart highlighting - -* Added a module for enabling Neovim's spellchecker - -* Added prettierd as an alternative formatter to prettier - currently defaults to prettier - -* Fixed presence.nvim inheriting the wrong client id - -* Cleaned up documentation - diff --git a/docs/release-notes/rl-0.4.md b/docs/release-notes/rl-0.4.md new file mode 100644 index 000000000..2f7b0a635 --- /dev/null +++ b/docs/release-notes/rl-0.4.md @@ -0,0 +1,73 @@ +# Release 0.4 {#sec-release-0.4} + +Following the release of v0.3, I have decided to release v0.4 with a massive new change: customizable keybinds. +As of the 0.4 release, keybinds will no longer be hardcoded and instead provided by each module's own keybinds section. +The old keybind system (`vim.keybinds = {}`) is now considered deprecated and the new lib functions are recommended to be +used for adding keybinds for new plugins, or adding keybinds to existing plugins. + +Alongside customizable keybinds, there are a few quality of life updates, such as `lazygit` integration and the +new experimental Lua loader of Neovim 0.9 thanks to our awesome contributors who made this update possible during my absence. + +## Changelog {#sec-release-0.4-changelog} + +[n3oney](https://github.com/n3oney): + +- Streamlined keybind adding process towards new functions in extended stdlib. + +- Moved default keybinds into keybinds section of each module + +- Simplified luaConfigRC and configRC setting - they can now just take strings + +- Refactored the resolveDag function - you can just provide a string now, which will default to dag.entryAnywhere + +- Fixed formatting sometimes removing parts of files + +- Made formatting synchronous + +- Gave null-ls priority over other formatters + +[horriblename](https://github.com/horriblename): + +- Added `clangd` as alternative lsp for C/++. + +- Added `toggleterm` integration for `lazygit`. + +- Added new option `enableluaLoader` to enable neovim's experimental module loader for faster startup time. + +- Fixed bug where flutter-tools can't find `dart` LSP + +- Added Debug Adapter (DAP) support for clang, rust, go, python and dart. + +[notashelf](https://github.com/notashelf): + +- Made Copilot's Node package configurable. It is recommended to keep as default, but providing a different NodeJS version is now possible. + +- Added [vim.cursorlineOpt](vim.cursorlineOpt) for configuring Neovim's cursorlineOpt. + +- Added `filetree.nvimTreeLua.view.cursorline`, default false, to enable cursorline in nvimtre. + +- Added Fidget.nvim support for the Catppuccin theme. + +- Updated bundled NodeJS version used by `Copilot.lua`. v16 is now marked as insecure on Nixpkgs, and we updated to v18 + +- Enabled Catppuccin modules for plugins available by default. + +- Added experimental Svelte support under `vim.languages`. + +- Removed unnecessary scrollbar element from notifications and codeaction warning UI. + +- `vim.utility.colorizer` has been renamed to `vim.utility.ccc` after the plugin it uses + +- Color preview via `nvim-colorizer.lua` + +- Updated Lualine statusline UI + +- Added vim-illuminate for smart highlighting + +- Added a module for enabling Neovim's spellchecker + +- Added prettierd as an alternative formatter to prettier - currently defaults to prettier + +- Fixed presence.nvim inheriting the wrong client id + +- Cleaned up documentation diff --git a/docs/release-notes/rl-0.5.adoc b/docs/release-notes/rl-0.5.adoc deleted file mode 100644 index e3d52aa8f..000000000 --- a/docs/release-notes/rl-0.5.adoc +++ /dev/null @@ -1,104 +0,0 @@ -[[sec-release-0.5]] -== Release 0.5 - - -[[sec-release-0.5-changelog]] -=== Changelog - -https://github.com/vagahbond[vagahbond]: -* Added phan language server for PHP - -* Added phpactor language server for PHP - -https://github.com/horriblename[horriblename]: - -* Added transparency support for tokyonight theme - -* Fixed a bug where cmp's close and scrollDocs mappings wasn't working - -* Streamlined and simplified extra plugin API with the addition of <> - -* Allow using command names in place of LSP packages to avoid automatic installation - -* Add lua LSP and treesitter support, and neodev.nvim plugin support - -* Add <> keybind - -https://github.com/amanse[amanse]: - -* Added daily notes options for obsidian plugin - -* Added jdt-language-server for Java - -https://github.com/yavko[yavko]: - -* Added Deno Language Server for javascript/typescript - -* Added support for multiple languages <>, and added vim-dirtytalk <> - -https://github.com/FrothyMarrow[frothymarrow]: - -* Renamed `vim.visuals.cursorWordline` to <> - -* Added <> to display cursorline only in the presence of line numbers - -* Added Oxocarbon to the list of available themes. - -https://github.com/notashelf[notashelf]: - -* Added GitHub Copilot to nvim-cmp completion sources. - -* Added <> for global and individual plugin border configuration. - -* LSP integrated breadcrumbs with <> through nvim-navic - -* LSP navigation helper with nvim-navbuddy, depends on nvim-navic (automatically enabled) - -* Addeed nvim-navic integration for catppuccin theme - -* Fixed mismatching zig language description - -* Added support for `statix` and `deadnix` through <> - -* Added lsp_lines plugin for showing diagnostic messages - -* Added a configuration option for choosing the leader key - -* The package used for neovim is now customizable by the user, using <>. For best results, always use an unwrapped package - -* Added highlight-undo plugin for highlighting undo/redo targets - -* Added bash LSP and formatter support - -* Disabled Lualine LSP status indicator for toggleterm buffer - -* Added `nvim-docs-view`, a plugin to display lsp hover documentation in a side panel - -* Switched to `nixosOptionsDoc` in option documentation. -To quote home-manager commit: "Output is mostly unchanged aside from some minor typographical and -formatting changes, along with better source links." - -* Updated indent-blankine.nvim to v3 - this comes with a few option changes, which will be migrated with `renamedOptionModule` - - -https://github.com/jacekpoz[jacekpoz]: - -* Fixed scrollOffset not being used - -* Updated clangd to 16 - -* Disabled `useSystemClipboard` by default - -https://github.com/ksonj[ksonj]: - -* Add support to change mappings to utility/surround - -* Add black-and-isort python formatter - -* Removed redundant "Enable ..." in `mkEnableOption` descriptions - -* Add options to modify LSP key bindings and add proper whichkey descriptions - -* Changed type of `statusline.lualine.activeSection` and `statusline.lualine.inactiveSection` from `attrsOf str` to `attrsOf (listOf str)` - -* Added `statusline.lualine.extraActiveSection` and `statusline.lualine.extraInactiveSection` diff --git a/docs/release-notes/rl-0.5.md b/docs/release-notes/rl-0.5.md new file mode 100644 index 000000000..083d9d586 --- /dev/null +++ b/docs/release-notes/rl-0.5.md @@ -0,0 +1,107 @@ +# Release 0.5 {#sec-release-0.5} + +Release notes for release 0.5 + +## Changelog {#sec-release-0.5-changelog} + +[vagahbond](https://github.com/vagahbond): + +- Added phan language server for PHP + +- Added phpactor language server for PHP + +[horriblename](https://github.com/horriblename): + +- Added transparency support for tokyonight theme + +- Fixed a bug where cmp's close and scrollDocs mappings wasn't working + +- Streamlined and simplified extra plugin API with the addition of [vim.extraPlugins](vim.extraPlugins) + +- Allow using command names in place of LSP packages to avoid automatic installation + +- Add lua LSP and treesitter support, and neodev.nvim plugin support + +- Add [vim.lsp.mappings.toggleFormatOnSave](vim.lsp.mappings.toggleFormatOnSave) keybind + +[amanse](https://github.com/amanse): + +- Added daily notes options for obsidian plugin + +- Added jdt-language-server for Java + +[yavko](https://github.com/yavko): + +- Added Deno Language Server for javascript/typescript + +- Added support for multiple languages [vim.spellChecking.languages](vim.spellChecking.languages), and added + vim-dirtytalk through [vim.spellChecking.enableProgrammingWordList](vim.spellChecking.enableProgrammingWordList) + +[frothymarrow](https://github.com/FrothyMarrow): + +- Renamed `vim.visuals.cursorWordline` to [vim.visuals.cursorline.enable](vim.visuals.cursorline.enable) + +- Added [vim.visuals.cursorline.lineNumbersOnly](vim.visuals.cursorline.lineNumbersOnly) to display cursorline + only in the presence of line numbers + +- Added Oxocarbon to the list of available themes. + +[notashelf](https://github.com/notashelf): + +- Added GitHub Copilot to nvim-cmp completion sources. + +- Added [vim.ui.borders.enable](vim.ui.borders.enable) for global and individual plugin border configuration. + +- LSP integrated breadcrumbs with [vim.ui.breadcrumbs.enable](vim.ui.breadcrumbs.enable) through nvim-navic + +- LSP navigation helper with nvim-navbuddy, depends on nvim-navic (automatically enabled if navic is enabled) + +- Addeed nvim-navic integration for catppuccin theme + +- Fixed mismatching zig language description + +- Added support for `statix` and `deadnix` through [vim.languages.nix.extraDiagnostics.types](vim.languages.nix.extraDiagnostics.types) + +- Added `lsp_lines` plugin for showing diagnostic messages + +- Added a configuration option for choosing the leader key + +- The package used for neovim is now customizable by the user, using [vim.package](vim.package). + For best results, always use an unwrapped package + +- Added highlight-undo plugin for highlighting undo/redo targets + +- Added bash LSP and formatter support + +- Disabled Lualine LSP status indicator for toggleterm buffer + +- Added `nvim-docs-view`, a plugin to display lsp hover documentation in a side panel + +- Switched to `nixosOptionsDoc` in option documentation. + To quote home-manager commit: "Output is mostly unchanged aside from some minor typographical and + formatting changes, along with better source links." + +- Updated indent-blankine.nvim to v3 - this comes with a few option changes, which will be migrated with `renamedOptionModule` + +[jacekpoz](https://github.com/jacekpoz): + +- Fixed scrollOffset not being used + +- Updated clangd to 16 + +- Disabled `useSystemClipboard` by default + +[ksonj](https://github.com/ksonj): + +- Add support to change mappings to utility/surround + +- Add black-and-isort python formatter + +- Removed redundant "Enable ..." in `mkEnableOption` descriptions + +- Add options to modify LSP key bindings and add proper whichkey descriptions + +- Changed type of `statusline.lualine.activeSection` and `statusline.lualine.inactiveSection` + from `attrsOf str` to `attrsOf (listOf str)` + +- Added `statusline.lualine.extraActiveSection` and `statusline.lualine.extraInactiveSection` diff --git a/docs/release-notes/rl-0.6.adoc b/docs/release-notes/rl-0.6.adoc deleted file mode 100644 index fa9d30284..000000000 --- a/docs/release-notes/rl-0.6.adoc +++ /dev/null @@ -1,12 +0,0 @@ -[[sec-release-0.6]] -== Release 0.6 - -Release notes for release 0.6 - - -[[sec-release-0.6-changelog]] -=== Changelog - -https://github.com/ksonj[ksonj]: - -* Add Terraform language support diff --git a/docs/release-notes/rl-0.6.md b/docs/release-notes/rl-0.6.md new file mode 100644 index 000000000..95a736306 --- /dev/null +++ b/docs/release-notes/rl-0.6.md @@ -0,0 +1,19 @@ +# Release 0.6 {#sec-release-0.6} + +Release notes for release 0.6 + +## Changelog {#sec-release-0.6-changelog} + +[ksonj](https://github.com/ksonj): + +- Add Terraform language support + +[horriblename](https://github.com/horriblename): + +- Fixed empty winbar when breadcrumbs are disabled + +[notashelf](https://github.com/notashelf): + +- Finished moving to `nixosOptionsDoc` in the documentation and changelog. We are fully free of asciidoc now + +- Bumped plugin inputs to their latest versions