From 2d82780a407d48be473aaf53496d5f8b18727a4d Mon Sep 17 00:00:00 2001 From: Practicalli Engineering Date: Wed, 25 Feb 2026 00:42:06 +0000 Subject: [PATCH 1/7] astronvim: update to version 6 Update AstroNvim/AstroNvim to version v6 using its branch of the same name (its not release yet) Add specific versions of astrocore, astrolsp and astroui to work with astronvim v6 Update astrocommunity to use v6 branch --- lua/community.lua | 3 ++- lua/lazy_setup.lua | 3 ++- lua/plugins/astronvim.lua | 5 +++++ 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 lua/plugins/astronvim.lua diff --git a/lua/community.lua b/lua/community.lua index 7d52164..a3bbc13 100644 --- a/lua/community.lua +++ b/lua/community.lua @@ -13,8 +13,9 @@ return { -- Astrocommunity - include one of the following -- Astrocommunity Git Repository - "AstroNvim/astrocommunity", + -- "AstroNvim/astrocommunity", -- default release + { "AstroNvim/astrocommunity", branch = "v6" }, -- AstroNvim v6 -- Local plugin development - Astrocommunity fork in ~/project/astrocommunity -- { "AstroNvim/astrocommunity", dev = true }, diff --git a/lua/lazy_setup.lua b/lua/lazy_setup.lua index 2e53597..eef2355 100644 --- a/lua/lazy_setup.lua +++ b/lua/lazy_setup.lua @@ -1,7 +1,8 @@ require("lazy").setup({ { "AstroNvim/AstroNvim", - version = "^5", -- Remove version tracking to elect for nightly AstroNvim + -- version = "^5", -- Remove version tracking to elect for nightly AstroNvim + branch = "v6", -- Use branch until AstroNvim v6 released import = "astronvim.plugins", opts = { -- AstroNvim options must be set here with the `import` key mapleader = " ", -- This ensures the leader key must be configured before Lazy is set up diff --git a/lua/plugins/astronvim.lua b/lua/plugins/astronvim.lua new file mode 100644 index 0000000..ca513ed --- /dev/null +++ b/lua/plugins/astronvim.lua @@ -0,0 +1,5 @@ +return { + { "AstroNvim/astrocore", version = false, branch = "v3" }, + { "AstroNvim/astrolsp", version = false, branch = "v4" }, + { "AstroNvim/astroui", version = false, branch = "v4" }, +} From 0e4636f5d6d2d97934badde75e1f2f00bd5d3529 Mon Sep 17 00:00:00 2001 From: Practicalli Engineering Date: Tue, 31 Mar 2026 12:11:08 +0100 Subject: [PATCH 2/7] plugin: use nvimtools/none-ls.nvim and add tools via opts.sources --- lua/plugins/none-ls.lua | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/lua/plugins/none-ls.lua b/lua/plugins/none-ls.lua index 3b5e96e..cbc1d11 100644 --- a/lua/plugins/none-ls.lua +++ b/lua/plugins/none-ls.lua @@ -1,8 +1,12 @@ -- --------------------------------------------------------- --- Configure format & lint tools +-- Customize None-ls sources for format & lint tools -- -- Ensure tools are installed via Mason -- Pass configuration files to each tool + +-- Supported formatters and linters +-- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/formatting +-- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/diagnostics -- --------------------------------------------------------- -- if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE @@ -16,14 +20,25 @@ return { -- use mason-lspconfig to configure LSP installations -- use mason-null-ls to configure Formatters/Linter installation for null-ls sources { - "jay-babu/mason-null-ls.nvim", - -- overrides `require("mason-null-ls").setup(...)` + "nvimtools/none-ls.nvim", opts = function(_, opts) -- add more things to the ensure_installed table protecting against community packs modifying it - opts.ensure_installed = require("astrocore").list_insert_unique(opts.ensure_installed, { - "markdownlint", - -- add more arguments for adding more null-ls sources + + local null_ls = require "null-ls" + + -- Only insert new sources, do not replace the existing ones + -- (If you wish to replace, use `opts.sources = {}` instead of the `list_insert_unique` function) + opts.sources = require("astrocore").list_insert_unique(opts.sources, { + -- Set a formatter + -- null_ls.builtins.formatting.stylua, + -- null_ls.builtins.formatting.prettier, + null_ls.builtins.diagnostics.markdownlint, -- from none-ls docs }) + + -- opts.ensure_installed = require("astrocore").list_insert_unique(opts.ensure_installed, { + -- "markdownlint", + -- -- add more arguments for adding more null-ls sources + -- }) opts.handlers = { markdownlint = function(source_name, methods) local null_ls = require "null-ls" From 8510db228becb3b66efd26d91a6e812fd7d166c7 Mon Sep 17 00:00:00 2001 From: Practicalli Engineering Date: Tue, 31 Mar 2026 16:25:26 +0100 Subject: [PATCH 3/7] astronvim: switch to released v6 --- init.lua | 10 +++++++++- lua/lazy_setup.lua | 3 +-- lua/plugins/astronvim.lua | 5 ----- 3 files changed, 10 insertions(+), 8 deletions(-) delete mode 100644 lua/plugins/astronvim.lua diff --git a/init.lua b/init.lua index 8af3817..41f55f3 100644 --- a/init.lua +++ b/init.lua @@ -1,10 +1,18 @@ -- This file simply bootstraps the installation of Lazy.nvim and then calls other files for execution -- This file doesn't necessarily need to be touched, BE CAUTIOUS editing this file and proceed at your own risk. local lazypath = vim.env.LAZY or vim.fn.stdpath "data" .. "/lazy/lazy.nvim" + if not (vim.env.LAZY or (vim.uv or vim.loop).fs_stat(lazypath)) then -- stylua: ignore - vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath }) + local result = vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath }) + if vim.v.shell_error ~= 0 then + -- stylua: ignore + vim.api.nvim_echo({ { ("Error cloning lazy.nvim:\n%s\n"):format(result), "ErrorMsg" }, { "Press any key to exit...", "MoreMsg" } }, true, {}) + vim.fn.getchar() + vim.cmd.quit() + end end + vim.opt.rtp:prepend(lazypath) -- validate that lazy is available diff --git a/lua/lazy_setup.lua b/lua/lazy_setup.lua index eef2355..e3708d9 100644 --- a/lua/lazy_setup.lua +++ b/lua/lazy_setup.lua @@ -1,8 +1,7 @@ require("lazy").setup({ { "AstroNvim/AstroNvim", - -- version = "^5", -- Remove version tracking to elect for nightly AstroNvim - branch = "v6", -- Use branch until AstroNvim v6 released + version = "^6", -- Remove version tracking to elect for nightly AstroNvim import = "astronvim.plugins", opts = { -- AstroNvim options must be set here with the `import` key mapleader = " ", -- This ensures the leader key must be configured before Lazy is set up diff --git a/lua/plugins/astronvim.lua b/lua/plugins/astronvim.lua deleted file mode 100644 index ca513ed..0000000 --- a/lua/plugins/astronvim.lua +++ /dev/null @@ -1,5 +0,0 @@ -return { - { "AstroNvim/astrocore", version = false, branch = "v3" }, - { "AstroNvim/astrolsp", version = false, branch = "v4" }, - { "AstroNvim/astroui", version = false, branch = "v4" }, -} From 16fa5894de1dc1d9323deef3faaf89b49bf16848 Mon Sep 17 00:00:00 2001 From: Practicalli Engineering Date: Tue, 31 Mar 2026 16:26:50 +0100 Subject: [PATCH 4/7] community: add markdown pack including marksman tool Drop support for markdownlint which needed custom config to avoid drowning in diagnostics feedback --- lua/community.lua | 1 + lua/plugins/none-ls.lua | 53 ----------------------------------------- 2 files changed, 1 insertion(+), 53 deletions(-) delete mode 100644 lua/plugins/none-ls.lua diff --git a/lua/community.lua b/lua/community.lua index a3bbc13..0677e45 100644 --- a/lua/community.lua +++ b/lua/community.lua @@ -61,6 +61,7 @@ return { -- Packs (code-runner, treesitter, lsp & lint/format support) { import = "astrocommunity.pack.clojure" }, + { import = "astrocommunity.pack.markdown" }, { import = "astrocommunity.pack.json" }, { import = "astrocommunity.pack.lua" }, -- ---------------------------------------------- diff --git a/lua/plugins/none-ls.lua b/lua/plugins/none-ls.lua deleted file mode 100644 index cbc1d11..0000000 --- a/lua/plugins/none-ls.lua +++ /dev/null @@ -1,53 +0,0 @@ --- --------------------------------------------------------- --- Customize None-ls sources for format & lint tools --- --- Ensure tools are installed via Mason --- Pass configuration files to each tool - --- Supported formatters and linters --- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/formatting --- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/diagnostics --- --------------------------------------------------------- - --- if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE - --- INFO: Config in this file skipped if `PRACTICALLI_NONELS_CONFIG` environment variable is not set to true -local nonels_config = vim.env.PRACTICALLI_NONELS_CONFIG -if nonels_config ~= "true" then return {} end - ----@type LazySpec -return { - -- use mason-lspconfig to configure LSP installations - -- use mason-null-ls to configure Formatters/Linter installation for null-ls sources - { - "nvimtools/none-ls.nvim", - opts = function(_, opts) - -- add more things to the ensure_installed table protecting against community packs modifying it - - local null_ls = require "null-ls" - - -- Only insert new sources, do not replace the existing ones - -- (If you wish to replace, use `opts.sources = {}` instead of the `list_insert_unique` function) - opts.sources = require("astrocore").list_insert_unique(opts.sources, { - -- Set a formatter - -- null_ls.builtins.formatting.stylua, - -- null_ls.builtins.formatting.prettier, - null_ls.builtins.diagnostics.markdownlint, -- from none-ls docs - }) - - -- opts.ensure_installed = require("astrocore").list_insert_unique(opts.ensure_installed, { - -- "markdownlint", - -- -- add more arguments for adding more null-ls sources - -- }) - opts.handlers = { - markdownlint = function(source_name, methods) - local null_ls = require "null-ls" - null_ls.register(null_ls.builtins.diagnostics.markdownlint.with { - -- extra_args = { "--config", "~/.config/markdownlint.yaml" }, - extra_args = { "--config", "~/.config/markdown-lint.jsonc" }, - }) - end, - } - end, - }, -} From 16698d3e13beb7c3f243f05fa1b123940173482d Mon Sep 17 00:00:00 2001 From: Practicalli Engineering Date: Tue, 31 Mar 2026 16:29:30 +0100 Subject: [PATCH 5/7] practicalli: remove neo-tree, replace with snacks.picker.explorer --- lua/plugins/practicalli.lua | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lua/plugins/practicalli.lua b/lua/plugins/practicalli.lua index bae86f8..a0300bc 100644 --- a/lua/plugins/practicalli.lua +++ b/lua/plugins/practicalli.lua @@ -90,6 +90,8 @@ return { }, -- ------------------------------------------ + { "nvim-neo-tree/neo-tree.nvim", enabled = false }, + -- ------------------------------------------ -- Editor tools @@ -205,7 +207,8 @@ return { ["[b"] = { function() require("astrocore.buffer").nav(-vim.v.count1) end, desc = "Previous buffer" }, -- snacks file explorer - ["E"] = { "lua Snacks.picker.explorer()", desc = "Snacks Explorer" }, + ["e"] = { "lua Snacks.picker.explorer()", desc = "Snacks Explorer" }, + -- Save prompting for file name ["W"] = { ":write ", desc = "Save as file" }, From 60974d75532e67bf371485a8067d3bff69f6fb27 Mon Sep 17 00:00:00 2001 From: Practicalli Engineering Date: Wed, 1 Apr 2026 22:34:20 +0100 Subject: [PATCH 6/7] community: add bash pack to support zsh and bash scripts --- lua/community.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/lua/community.lua b/lua/community.lua index 0677e45..d2ac28d 100644 --- a/lua/community.lua +++ b/lua/community.lua @@ -60,6 +60,7 @@ return { -- ---------------------------------------------- -- Packs (code-runner, treesitter, lsp & lint/format support) + { import = "astrocommunity.pack.bash" }, { import = "astrocommunity.pack.clojure" }, { import = "astrocommunity.pack.markdown" }, { import = "astrocommunity.pack.json" }, From e35b5da9e794b9cacc842f0ee192aca63063d38f Mon Sep 17 00:00:00 2001 From: Practicalli Engineering Date: Sun, 5 Apr 2026 23:44:15 +0100 Subject: [PATCH 7/7] community: astrocommunity v6 changes released --- lua/community.lua | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lua/community.lua b/lua/community.lua index d2ac28d..2a048e7 100644 --- a/lua/community.lua +++ b/lua/community.lua @@ -13,9 +13,7 @@ return { -- Astrocommunity - include one of the following -- Astrocommunity Git Repository - -- "AstroNvim/astrocommunity", -- default release - - { "AstroNvim/astrocommunity", branch = "v6" }, -- AstroNvim v6 + "AstroNvim/astrocommunity", -- default release -- Local plugin development - Astrocommunity fork in ~/project/astrocommunity -- { "AstroNvim/astrocommunity", dev = true },