Compare commits

..

No commits in common. "main" and "v14.14.0" have entirely different histories.

35 changed files with 91 additions and 117 deletions

View file

@ -1,3 +1,3 @@
{
".": "14.15.0"
".": "14.14.0"
}

View file

@ -1,24 +1,5 @@
# Changelog
## [14.15.0](https://github.com/LazyVim/LazyVim/compare/v14.14.0...v14.15.0) (2025-05-12)
### Features
* **chezmoi:** enhance fzf-lua chezmoi picker and add snacks.dasbhoard entry ([#5275](https://github.com/LazyVim/LazyVim/issues/5275)) ([759a19e](https://github.com/LazyVim/LazyVim/commit/759a19e785735eb8513b4f8d4483ec5ab1b75307))
* **keymaps:** show lang when opening treesitter inspect ([9c59668](https://github.com/LazyVim/LazyVim/commit/9c596681f684c549e69652a5c77a68bd5ecc93e3))
* **octo:** add support for snacks picker ([#5625](https://github.com/LazyVim/LazyVim/issues/5625)) ([16a7724](https://github.com/LazyVim/LazyVim/commit/16a772452a515790c3304b358dd66a618fda3260))
* **snippets:** mini.snippets standalone and blink.resubscribe ([#5507](https://github.com/LazyVim/LazyVim/issues/5507)) ([f2f2aea](https://github.com/LazyVim/LazyVim/commit/f2f2aea6722b530281b476c08ec60f2d320f1c3d))
### Bug Fixes
* **blink:** make sure to use `LazyVim.config.icons.kinds` ([#5668](https://github.com/LazyVim/LazyVim/issues/5668)) ([771089f](https://github.com/LazyVim/LazyVim/commit/771089f6928512ab0f431e9db04e7dc802a5e1a5))
* **blink:** remove unnecessary `sources` from `cmdline` ([#5620](https://github.com/LazyVim/LazyVim/issues/5620)) ([5b94baa](https://github.com/LazyVim/LazyVim/commit/5b94baa1d2e7d8ec7e9a9cab82fabd8c3655d369))
* **copilot-chat:** switch from deprecated picker integrations ([#5707](https://github.com/LazyVim/LazyVim/issues/5707)) ([b0334fd](https://github.com/LazyVim/LazyVim/commit/b0334fd57cdb920e03afab3c1940114ad43e4fbe))
* **mason:** rename and pin to v1 ([c20c402](https://github.com/LazyVim/LazyVim/commit/c20c4022958780617424a090eee2360d560eb939))
* **snacks.picker:** remove redundant leader-gc keymap. Closes [#5646](https://github.com/LazyVim/LazyVim/issues/5646) ([606b964](https://github.com/LazyVim/LazyVim/commit/606b96466eeb39b1c1bb576c9b99041b64705f43))
## [14.14.0](https://github.com/LazyVim/LazyVim/compare/v14.13.0...v14.14.0) (2025-02-15)

View file

@ -1,4 +1,4 @@
*LazyVim.txt* For Neovim Last change: 2025 May 12
*LazyVim.txt* For Neovim Last change: 2025 February 15
==============================================================================
Table of Contents *LazyVim-table-of-contents*

View file

@ -3,7 +3,7 @@ _G.LazyVim = require("lazyvim.util")
---@class LazyVimConfig: LazyVimOptions
local M = {}
M.version = "14.15.0" -- x-release-please-version
M.version = "14.14.0" -- x-release-please-version
LazyVim.config = M
---@class LazyVimOptions

View file

@ -179,7 +179,7 @@ map("n", "<leader>qq", "<cmd>qa<cr>", { desc = "Quit All" })
-- highlights under cursor
map("n", "<leader>ui", vim.show_pos, { desc = "Inspect Pos" })
map("n", "<leader>uI", function() vim.treesitter.inspect_tree() vim.api.nvim_input("I") end, { desc = "Inspect Tree" })
map("n", "<leader>uI", "<cmd>InspectTree<cr>", { desc = "Inspect Tree" })
-- LazyVim Changelog
map("n", "<leader>L", function() LazyVim.news.changelog() end, { desc = "LazyVim Changelog" })

View file

@ -1,3 +1,28 @@
local M = {}
---@param kind string
function M.pick(kind)
return function()
local actions = require("CopilotChat.actions")
local items = actions[kind .. "_actions"]()
if not items then
LazyVim.warn("No " .. kind .. " found on the current line")
return
end
local map = {
telescope = "telescope",
fzf = "fzflua",
snacks = "snacks",
}
for _, def in pairs(LazyVim.config.get_defaults()) do
if def.enabled and map[def.name] then
return require("CopilotChat.integrations." .. map[def.name]).pick(items)
end
end
Snacks.notify.error("No picker found")
end
end
return {
{
"CopilotC-Nvim/CopilotChat.nvim",
@ -37,25 +62,16 @@ return {
{
"<leader>aq",
function()
vim.ui.input({
prompt = "Quick Chat: ",
}, function(input)
if input ~= "" then
require("CopilotChat").ask(input)
end
end)
local input = vim.fn.input("Quick Chat: ")
if input ~= "" then
require("CopilotChat").ask(input)
end
end,
desc = "Quick Chat (CopilotChat)",
mode = { "n", "v" },
},
{
"<leader>ap",
function()
require("CopilotChat").select_prompt()
end,
desc = "Prompt Actions (CopilotChat)",
mode = { "n", "v" },
},
-- Show prompts actions with telescope
{ "<leader>ap", M.pick("prompt"), desc = "Prompt Actions (CopilotChat)", mode = { "n", "v" } },
},
config = function(_, opts)
local chat = require("CopilotChat")

View file

@ -83,6 +83,7 @@ return {
cmdline = {
enabled = false,
sources = {},
},
keymap = {
@ -143,7 +144,6 @@ return {
items = transform_items and transform_items(ctx, items) or items
for _, item in ipairs(items) do
item.kind = kind_idx or item.kind
item.kind_icon = LazyVim.config.icons.kinds[item.kind_name] or item.kind_icon or nil
end
return items
end

View file

@ -140,25 +140,21 @@ return {
end
-- Standalone --
local blink = require("blink.cmp")
expand_select_override = function(snippets, insert)
-- Schedule, otherwise blink's virtual text is not removed on vim.ui.select
blink.cancel()
require("blink.cmp").cancel()
vim.schedule(function()
MiniSnippets.default_select(snippets, insert)
end)
end
--
-- Blink performs a require on blink.cmp.sources.snippets.default
-- By removing the source, that default engine will not be used
-- By removing the source, the default engine will not be used
opts.sources.default = vim.tbl_filter(function(source)
return source ~= "snippets"
end, opts.sources.default)
opts.snippets = { -- need to repeat blink's preset here
expand = function(snippet)
expand_from_lsp(snippet)
blink.resubscribe()
end,
expand = expand_from_lsp,
active = function()
return MiniSnippets.session.get(false) ~= nil
end,

View file

@ -72,6 +72,7 @@ return {
{ "<leader>fR", function() Snacks.picker.recent({ filter = { cwd = true }}) end, desc = "Recent (cwd)" },
{ "<leader>fp", function() Snacks.picker.projects() end, desc = "Projects" },
-- git
{ "<leader>gc", function() Snacks.picker.git_log() end, desc = "Git Log" },
{ "<leader>gd", function() Snacks.picker.git_diff() end, desc = "Git Diff (hunks)" },
{ "<leader>gs", function() Snacks.picker.git_status() end, desc = "Git Status" },
{ "<leader>gS", function() Snacks.picker.git_stash() end, desc = "Git Stash" },

View file

@ -24,7 +24,7 @@ local supported = {
return {
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "biome" } },
},

View file

@ -1,6 +1,6 @@
return {
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = function(_, opts)
table.insert(opts.ensure_installed, "black")
end,

View file

@ -58,7 +58,7 @@ M.has_parser = LazyVim.memoize(M.has_parser)
return {
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "prettier" } },
},

View file

@ -6,7 +6,7 @@ return {
})
end,
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "ansible-lint" } },
},
{

View file

@ -117,7 +117,7 @@ return {
optional = true,
dependencies = {
-- Ensure C/C++ debugger is installed
"mason-org/mason.nvim",
"williamboman/mason.nvim",
optional = true,
opts = { ensure_installed = { "codelldb" } },
},

View file

@ -10,7 +10,7 @@ return {
},
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "elm-format" } },
},

View file

@ -75,7 +75,7 @@ return {
},
-- Ensure Go tools are installed
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "goimports", "gofumpt" } },
},
{
@ -83,7 +83,7 @@ return {
optional = true,
dependencies = {
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "gomodifytags", "impl" } },
},
},
@ -111,7 +111,7 @@ return {
optional = true,
dependencies = {
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "delve" } },
},
{

View file

@ -28,7 +28,7 @@ return {
},
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "haskell-language-server" } },
},
@ -37,7 +37,7 @@ return {
optional = true,
dependencies = {
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "haskell-debug-adapter" } },
},
},

View file

@ -56,7 +56,7 @@ return {
end,
dependencies = {
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "java-debug-adapter", "java-test" } },
},
},

View file

@ -14,7 +14,7 @@ return {
end,
-- Add packages(linting, debug adapter)
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "ktlint" } },
},
-- Add syntax highlighting
@ -35,7 +35,7 @@ return {
{
"mfussenegger/nvim-lint",
optional = true,
dependencies = "mason-org/mason.nvim",
dependencies = "williamboman/mason.nvim",
opts = {
linters_by_ft = { kotlin = { "ktlint" } },
},
@ -64,7 +64,7 @@ return {
{
"mfussenegger/nvim-dap",
optional = true,
dependencies = "mason-org/mason.nvim",
dependencies = "williamboman/mason.nvim",
opts = function()
local dap = require("dap")
if not dap.adapters.kotlin then

View file

@ -40,7 +40,7 @@ return {
},
},
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "markdownlint-cli2", "markdown-toc" } },
},
{

View file

@ -36,7 +36,7 @@ return {
},
},
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "csharpier", "netcoredbg" } },
},
{

View file

@ -35,7 +35,7 @@ return {
},
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = {
ensure_installed = {
"phpcs",

View file

@ -48,7 +48,7 @@ return {
},
},
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "erb-formatter", "erb-lint" } },
},
{

View file

@ -43,7 +43,7 @@ return {
-- Ensure Rust debugger is installed
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
optional = true,
opts = function(_, opts)
opts.ensure_installed = opts.ensure_installed or {}

View file

@ -143,7 +143,7 @@ return {
-- Linters & formatters
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "sqlfluff" } },
},
{

View file

@ -20,7 +20,7 @@ return {
},
-- ensure terraform tools are installed
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "tflint" } },
},
{

View file

@ -194,7 +194,7 @@ return {
optional = true,
dependencies = {
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = function(_, opts)
opts.ensure_installed = opts.ensure_installed or {}
table.insert(opts.ensure_installed, "js-debug-adapter")

View file

@ -3,12 +3,22 @@ local pick_chezmoi = function()
require("telescope").extensions.chezmoi.find_files()
elseif LazyVim.pick.picker.name == "fzf" then
local fzf_lua = require("fzf-lua")
local actions = {
["enter"] = function(selected)
fzf_lua.actions.vimcmd_entry("ChezmoiEdit", selected, { cwd = os.getenv("HOME") })
end,
local results = require("chezmoi.commands").list()
local chezmoi = require("chezmoi.commands")
local opts = {
fzf_opts = {},
fzf_colors = true,
actions = {
["default"] = function(selected)
chezmoi.edit({
targets = { "~/" .. selected[1] },
args = { "--watch" },
})
end,
},
}
fzf_lua.files({ cmd = "chezmoi managed --include=files,symlinks", actions = actions })
fzf_lua.fzf_exec(results, opts)
elseif LazyVim.pick.picker.name == "snacks" then
local results = require("chezmoi.commands").list({
args = {
@ -55,7 +65,6 @@ return {
},
{
"xvzc/chezmoi.nvim",
cmd = { "ChezmoiEdit" },
keys = {
{
"<leader>sz",
@ -111,27 +120,6 @@ return {
table.insert(opts.config.center, 5, projects)
end,
},
{
"folke/snacks.nvim",
optional = true,
opts = function(_, opts)
local chezmoi_entry = {
icon = "",
key = "c",
desc = "Config",
action = pick_chezmoi,
}
local config_index
for i = #opts.dashboard.preset.keys, 1, -1 do
if opts.dashboard.preset.keys[i].key == "c" then
table.remove(opts.dashboard.preset.keys, i)
config_index = i
break
end
end
table.insert(opts.dashboard.preset.keys, config_index, chezmoi_entry)
end,
},
-- Filetype icons
{

View file

@ -18,7 +18,7 @@ return {
},
},
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "shellcheck" } },
},
-- add some stuff to treesitter

View file

@ -2,7 +2,7 @@ return {
-- Ensure GitUI tool is installed
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
opts = { ensure_installed = { "gitui" } },
keys = {
{

View file

@ -42,14 +42,12 @@ return {
"pwntester/octo.nvim",
opts = function(_, opts)
vim.treesitter.language.register("markdown", "octo")
if LazyVim.has_extra("editor.telescope") then
if LazyVim.has("telescope.nvim") then
opts.picker = "telescope"
elseif LazyVim.has_extra("editor.fzf") then
elseif LazyVim.has("fzf-lua") then
opts.picker = "fzf-lua"
elseif LazyVim.has_extra("editor.snacks_picker") then
opts.picker = "snacks"
else
LazyVim.error("`octo.nvim` requires `telescope.nvim` or `fzf-lua` or `snacks.nvim`")
LazyVim.error("`octo.nvim` requires `telescope.nvim` or `fzf-lua`")
end
-- Keep some empty windows in sessions

View file

@ -5,7 +5,7 @@ return {
event = "LazyFile",
dependencies = {
"mason.nvim",
{ "mason-org/mason-lspconfig.nvim", config = function() end },
{ "williamboman/mason-lspconfig.nvim", config = function() end },
},
opts = function()
---@class PluginLspOpts
@ -257,7 +257,7 @@ return {
-- cmdline tools and lsp servers
{
"mason-org/mason.nvim",
"williamboman/mason.nvim",
cmd = "Mason",
keys = { { "<leader>cm", "<cmd>Mason<cr>", desc = "Mason" } },
build = ":MasonUpdate",
@ -292,8 +292,4 @@ return {
end)
end,
},
-- pin to v1 for now
{ "mason-org/mason.nvim", version = "^1.0.0" },
{ "mason-org/mason-lspconfig.nvim", version = "^1.0.0" },
}

View file

@ -35,8 +35,6 @@ M.renames = {
["romgrk/nvim-treesitter-context"] = "nvim-treesitter/nvim-treesitter-context",
["glepnir/dashboard-nvim"] = "nvimdev/dashboard-nvim",
["markdown.nvim"] = "render-markdown.nvim",
["williamboman/mason.nvim"] = "mason-org/mason.nvim",
["williamboman/mason-lspconfig.nvim"] = "mason-org/mason-lspconfig.nvim",
}
function M.save_core()

View file

@ -44,7 +44,7 @@ describe("Extra", function()
local mod = require(extra.modname)
assert.is_not_nil(mod)
local spec = Plugin.Spec.new({
{ "mason-org/mason.nvim", opts = { ensure_installed = {} } },
{ "williamboman/mason.nvim", opts = { ensure_installed = {} } },
{ "nvim-treesitter/nvim-treesitter", opts = { ensure_installed = {} } },
mod,
}, { optional = true })
@ -60,7 +60,7 @@ describe("Extra", function()
local mod = require(extra.modname)
local spec = Plugin.Spec.new({
{ "mason-org/mason.nvim", opts = { ensure_installed = {} } },
{ "williamboman/mason.nvim", opts = { ensure_installed = {} } },
{ "nvim-treesitter/nvim-treesitter", opts = { ensure_installed = {} } },
mod,
}, { optional = true })

View file

@ -7,10 +7,10 @@ load(vim.fn.system("curl -s https://raw.githubusercontent.com/folke/lazy.nvim/ma
require("lazy.minit").setup({
spec = {
{ dir = vim.uv.cwd() },
{ "LazyVim/starter" },
{ "nvim-treesitter/nvim-treesitter" },
{ "mason-org/mason-lspconfig.nvim", version = "^1.0.0" },
{ "mason-org/mason.nvim", version = "^1.0.0" },
"LazyVim/starter",
"williamboman/mason-lspconfig.nvim",
"williamboman/mason.nvim",
"nvim-treesitter/nvim-treesitter",
{ "echasnovski/mini.icons", opts = {} },
},
})