mirror of
https://github.com/LazyVim/LazyVim.git
synced 2026-07-25 14:01:06 +00:00
Merge branch 'main' into lean
This commit is contained in:
commit
ec8002c5c8
12 changed files with 115 additions and 54 deletions
2
.github/.release-please-manifest.json
vendored
2
.github/.release-please-manifest.json
vendored
|
|
@ -1,3 +1,3 @@
|
||||||
{
|
{
|
||||||
".": "12.30.0"
|
".": "12.32.0"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
29
CHANGELOG.md
29
CHANGELOG.md
|
|
@ -1,5 +1,34 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## [12.32.0](https://github.com/LazyVim/LazyVim/compare/v12.31.0...v12.32.0) (2024-07-18)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* **edgy:** added support for grug-far.nvim ([b1a4740](https://github.com/LazyVim/LazyVim/commit/b1a47405b9fa5eb9f5222876e81be73206b80792))
|
||||||
|
* **terminal:** clear search highlight when opening a terminal ([#4090](https://github.com/LazyVim/LazyVim/issues/4090)) ([b5290fd](https://github.com/LazyVim/LazyVim/commit/b5290fd92935d2e96fa2249cfd09bdd853972869))
|
||||||
|
* **toggle:** move toggle notifs to toggle function ([c1b76ee](https://github.com/LazyVim/LazyVim/commit/c1b76ee235a2cccff6370ecfca57bdacd5fe6258))
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* **autcmds:** desc for close_with_q ([d6561fd](https://github.com/LazyVim/LazyVim/commit/d6561fd27c17806ca972cbfc18573ca81d13e346))
|
||||||
|
* **ui:** another typo ([b8bdebe](https://github.com/LazyVim/LazyVim/commit/b8bdebe5be7eba91db23e43575fc1226075f6a56))
|
||||||
|
* **ui:** typo ([4ac249b](https://github.com/LazyVim/LazyVim/commit/4ac249beaae3462d606128ca21db79cb85a8c65b))
|
||||||
|
|
||||||
|
## [12.31.0](https://github.com/LazyVim/LazyVim/compare/v12.30.0...v12.31.0) (2024-07-17)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* **keymaps:** proxy leader-w to ctrl-w ([bab5440](https://github.com/LazyVim/LazyVim/commit/bab54406dc312947e4e03bb728498503c09231ca))
|
||||||
|
* **R:** added new which-key group for new install feature ([#4078](https://github.com/LazyVim/LazyVim/issues/4078)) ([5339aca](https://github.com/LazyVim/LazyVim/commit/5339acacec0996968d64fdbaf9fe8187bfea1b47))
|
||||||
|
* **toggle:** make toggles callable. Fixes [#4081](https://github.com/LazyVim/LazyVim/issues/4081) ([150523b](https://github.com/LazyVim/LazyVim/commit/150523b77b6e848c4135a97a5fd8f6f79a6f4443))
|
||||||
|
* **treesitter-context:** which-key toggle ([#4059](https://github.com/LazyVim/LazyVim/issues/4059)) ([ab01350](https://github.com/LazyVim/LazyVim/commit/ab0135093bc18ccf82325bc8ee14c25230a71786))
|
||||||
|
* **which-key:** dynamic buffer mappings under leader-b ([8d9f2ad](https://github.com/LazyVim/LazyVim/commit/8d9f2ad97ee0d495135380975438ab8a8ae62b14))
|
||||||
|
* **which-key:** dynamic window mappings under leader-w ([66bba78](https://github.com/LazyVim/LazyVim/commit/66bba787b83afdd85b5ee95aa589fbe9fbb95535))
|
||||||
|
* **which-key:** leader-w-space starts hydra mode for window mappings ([865bf15](https://github.com/LazyVim/LazyVim/commit/865bf15f1cf4d4f6a3eda6d7509f94a59752fb36))
|
||||||
|
|
||||||
## [12.30.0](https://github.com/LazyVim/LazyVim/compare/v12.29.2...v12.30.0) (2024-07-15)
|
## [12.30.0](https://github.com/LazyVim/LazyVim/compare/v12.29.2...v12.30.0) (2024-07-15)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
*LazyVim.txt* For Neovim Last change: 2024 July 16
|
*LazyVim.txt* For Neovim Last change: 2024 July 18
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
Table of Contents *LazyVim-table-of-contents*
|
Table of Contents *LazyVim-table-of-contents*
|
||||||
|
|
|
||||||
|
|
@ -71,7 +71,11 @@ vim.api.nvim_create_autocmd("FileType", {
|
||||||
},
|
},
|
||||||
callback = function(event)
|
callback = function(event)
|
||||||
vim.bo[event.buf].buflisted = false
|
vim.bo[event.buf].buflisted = false
|
||||||
vim.keymap.set("n", "q", "<cmd>close<cr>", { buffer = event.buf, silent = true })
|
vim.keymap.set("n", "q", "<cmd>close<cr>", {
|
||||||
|
buffer = event.buf,
|
||||||
|
silent = true,
|
||||||
|
desc = "Quit buffer",
|
||||||
|
})
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ _G.LazyVim = require("lazyvim.util")
|
||||||
---@class LazyVimConfig: LazyVimOptions
|
---@class LazyVimConfig: LazyVimOptions
|
||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
M.version = "12.30.0" -- x-release-please-version
|
M.version = "12.32.0" -- x-release-please-version
|
||||||
LazyVim.config = M
|
LazyVim.config = M
|
||||||
|
|
||||||
---@class LazyVimOptions
|
---@class LazyVimOptions
|
||||||
|
|
|
||||||
|
|
@ -174,13 +174,11 @@ map("t", "<C-/>", "<cmd>close<cr>", { desc = "Hide Terminal" })
|
||||||
map("t", "<c-_>", "<cmd>close<cr>", { desc = "which_key_ignore" })
|
map("t", "<c-_>", "<cmd>close<cr>", { desc = "which_key_ignore" })
|
||||||
|
|
||||||
-- windows
|
-- windows
|
||||||
map("n", "<leader>ww", "<C-W>p", { desc = "Other Window", remap = true })
|
map("n", "<leader>w", "<c-w>", { desc = "Windows", remap = true })
|
||||||
map("n", "<leader>wd", "<C-W>c", { desc = "Delete Window", remap = true })
|
|
||||||
map("n", "<leader>w-", "<C-W>s", { desc = "Split Window Below", remap = true })
|
|
||||||
map("n", "<leader>w|", "<C-W>v", { desc = "Split Window Right", remap = true })
|
|
||||||
map("n", "<leader>-", "<C-W>s", { desc = "Split Window Below", remap = true })
|
map("n", "<leader>-", "<C-W>s", { desc = "Split Window Below", remap = true })
|
||||||
map("n", "<leader>|", "<C-W>v", { desc = "Split Window Right", remap = true })
|
map("n", "<leader>|", "<C-W>v", { desc = "Split Window Right", remap = true })
|
||||||
LazyVim.toggle.map("<leader>wm", LazyVim.toggle.maximize)
|
map("n", "<c-w>d", "<C-W>c", { desc = "Delete Window", remap = true })
|
||||||
|
LazyVim.toggle.map("<c-w>m", LazyVim.toggle.maximize)
|
||||||
|
|
||||||
-- tabs
|
-- tabs
|
||||||
map("n", "<leader><tab>l", "<cmd>tablast<cr>", { desc = "Last Tab" })
|
map("n", "<leader><tab>l", "<cmd>tablast<cr>", { desc = "Last Tab" })
|
||||||
|
|
|
||||||
|
|
@ -47,6 +47,7 @@ vim.g.deprecation_warnings = false
|
||||||
vim.g.bigfile_size = 1024 * 1024 * 1.5 -- 1.5 MB
|
vim.g.bigfile_size = 1024 * 1024 * 1.5 -- 1.5 MB
|
||||||
|
|
||||||
-- Show the current document symbols location from Trouble in lualine
|
-- Show the current document symbols location from Trouble in lualine
|
||||||
|
-- You can disable this for a buffer by setting `vim.b.trouble_lualine = false`
|
||||||
vim.g.trouble_lualine = true
|
vim.g.trouble_lualine = true
|
||||||
|
|
||||||
local opt = vim.opt
|
local opt = vim.opt
|
||||||
|
|
|
||||||
|
|
@ -169,7 +169,13 @@ return {
|
||||||
{
|
{
|
||||||
mode = { "n", "v" },
|
mode = { "n", "v" },
|
||||||
{ "<leader><tab>", group = "tabs" },
|
{ "<leader><tab>", group = "tabs" },
|
||||||
{ "<leader>b", group = "buffer" },
|
{
|
||||||
|
"<leader>b",
|
||||||
|
group = "buffer",
|
||||||
|
expand = function()
|
||||||
|
return require("which-key.extras").expand.buf()
|
||||||
|
end,
|
||||||
|
},
|
||||||
{ "<leader>c", group = "code" },
|
{ "<leader>c", group = "code" },
|
||||||
{ "<leader>f", group = "file/find" },
|
{ "<leader>f", group = "file/find" },
|
||||||
{ "<leader>g", group = "git" },
|
{ "<leader>g", group = "git" },
|
||||||
|
|
@ -177,7 +183,14 @@ return {
|
||||||
{ "<leader>q", group = "quit/session" },
|
{ "<leader>q", group = "quit/session" },
|
||||||
{ "<leader>s", group = "search" },
|
{ "<leader>s", group = "search" },
|
||||||
{ "<leader>u", group = "ui", icon = { icon = " ", color = "cyan" } },
|
{ "<leader>u", group = "ui", icon = { icon = " ", color = "cyan" } },
|
||||||
{ "<leader>w", group = "windows" },
|
{
|
||||||
|
"<leader>w",
|
||||||
|
group = "windows",
|
||||||
|
proxy = "<c-w>",
|
||||||
|
expand = function()
|
||||||
|
return require("which-key.extras").expand.win()
|
||||||
|
end,
|
||||||
|
},
|
||||||
{ "<leader>x", group = "diagnostics/quickfix", icon = { icon = " ", color = "green" } },
|
{ "<leader>x", group = "diagnostics/quickfix", icon = { icon = " ", color = "green" } },
|
||||||
{ "[", group = "prev" },
|
{ "[", group = "prev" },
|
||||||
{ "]", group = "next" },
|
{ "]", group = "next" },
|
||||||
|
|
@ -195,6 +208,13 @@ return {
|
||||||
end,
|
end,
|
||||||
desc = "Buffer Keymaps (which-key)",
|
desc = "Buffer Keymaps (which-key)",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"<c-w><space>",
|
||||||
|
function()
|
||||||
|
require("which-key").show({ keys = "<c-w>", loop = true })
|
||||||
|
end,
|
||||||
|
desc = "Window Hydra Mode (which-key)",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
config = function(_, opts)
|
config = function(_, opts)
|
||||||
local wk = require("which-key")
|
local wk = require("which-key")
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,9 @@ return {
|
||||||
{ title = "Neotest Summary", ft = "neotest-summary" },
|
{ title = "Neotest Summary", ft = "neotest-summary" },
|
||||||
-- "neo-tree",
|
-- "neo-tree",
|
||||||
},
|
},
|
||||||
|
right = {
|
||||||
|
{ title = "Grug Far", ft = "grug-far", size = { width = 0.4 } },
|
||||||
|
},
|
||||||
keys = {
|
keys = {
|
||||||
-- increase width
|
-- increase width
|
||||||
["<c-Right>"] = function(win)
|
["<c-Right>"] = function(win)
|
||||||
|
|
|
||||||
|
|
@ -198,10 +198,10 @@ return {
|
||||||
}
|
}
|
||||||
|
|
||||||
-- do not add trouble symbols if aerial is enabled
|
-- do not add trouble symbols if aerial is enabled
|
||||||
|
-- And allow it to be overriden for some buffer types (see autocmds)
|
||||||
if vim.g.trouble_lualine and LazyVim.has("trouble.nvim") then
|
if vim.g.trouble_lualine and LazyVim.has("trouble.nvim") then
|
||||||
local trouble = require("trouble")
|
local trouble = require("trouble")
|
||||||
local symbols = trouble.statusline
|
local symbols = trouble.statusline({
|
||||||
and trouble.statusline({
|
|
||||||
mode = "symbols",
|
mode = "symbols",
|
||||||
groups = {},
|
groups = {},
|
||||||
title = false,
|
title = false,
|
||||||
|
|
@ -211,7 +211,9 @@ return {
|
||||||
})
|
})
|
||||||
table.insert(opts.sections.lualine_c, {
|
table.insert(opts.sections.lualine_c, {
|
||||||
symbols and symbols.get,
|
symbols and symbols.get,
|
||||||
cond = symbols and symbols.has,
|
cond = function()
|
||||||
|
return vim.b.trouble_lualine ~= false and symbols.has()
|
||||||
|
end,
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -87,6 +87,8 @@ function M.open(cmd, opts)
|
||||||
vim.cmd.startinsert()
|
vim.cmd.startinsert()
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
vim.cmd("noh")
|
||||||
end
|
end
|
||||||
|
|
||||||
return terminals[termkey]
|
return terminals[termkey]
|
||||||
|
|
|
||||||
|
|
@ -5,21 +5,32 @@ local M = {}
|
||||||
---@field name string
|
---@field name string
|
||||||
---@field get fun():boolean
|
---@field get fun():boolean
|
||||||
---@field set fun(state:boolean)
|
---@field set fun(state:boolean)
|
||||||
---@overload fun()
|
|
||||||
local T = {}
|
|
||||||
T.__index = T
|
|
||||||
|
|
||||||
---@param lhs string
|
---@class lazyvim.Toggle.wrap: lazyvim.Toggle
|
||||||
|
---@operator call:boolean
|
||||||
|
|
||||||
---@param toggle lazyvim.Toggle
|
---@param toggle lazyvim.Toggle
|
||||||
function M.map(lhs, toggle)
|
function M.wrap(toggle)
|
||||||
LazyVim.safe_keymap_set("n", lhs, function()
|
return setmetatable(toggle, {
|
||||||
local state = not toggle.get()
|
__call = function()
|
||||||
toggle.set(state)
|
toggle.set(not toggle.get())
|
||||||
|
local state = toggle.get()
|
||||||
if state then
|
if state then
|
||||||
LazyVim.info("Enabled " .. toggle.name, { title = toggle.name })
|
LazyVim.info("Enabled " .. toggle.name, { title = toggle.name })
|
||||||
else
|
else
|
||||||
LazyVim.warn("Disabled " .. toggle.name, { title = toggle.name })
|
LazyVim.warn("Disabled " .. toggle.name, { title = toggle.name })
|
||||||
end
|
end
|
||||||
|
return state
|
||||||
|
end,
|
||||||
|
}) --[[@as lazyvim.Toggle.wrap]]
|
||||||
|
end
|
||||||
|
|
||||||
|
---@param lhs string
|
||||||
|
---@param toggle lazyvim.Toggle
|
||||||
|
function M.map(lhs, toggle)
|
||||||
|
local t = M.wrap(toggle)
|
||||||
|
LazyVim.safe_keymap_set("n", lhs, function()
|
||||||
|
t()
|
||||||
end, { desc = "Toggle " .. toggle.name })
|
end, { desc = "Toggle " .. toggle.name })
|
||||||
M.wk(lhs, toggle)
|
M.wk(lhs, toggle)
|
||||||
end
|
end
|
||||||
|
|
@ -41,8 +52,7 @@ function M.wk(lhs, toggle)
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
---@type lazyvim.Toggle
|
M.treesitter = M.wrap({
|
||||||
M.treesitter = {
|
|
||||||
name = "Treesitter Highlight",
|
name = "Treesitter Highlight",
|
||||||
get = function()
|
get = function()
|
||||||
return vim.b.ts_highlight
|
return vim.b.ts_highlight
|
||||||
|
|
@ -54,12 +64,11 @@ M.treesitter = {
|
||||||
vim.treesitter.stop()
|
vim.treesitter.stop()
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
}
|
})
|
||||||
|
|
||||||
---@param buf? boolean
|
---@param buf? boolean
|
||||||
function M.format(buf)
|
function M.format(buf)
|
||||||
---@type lazyvim.Toggle
|
return M.wrap({
|
||||||
local ret = {
|
|
||||||
name = "Auto Format (" .. (buf and "Buffer" or "Global") .. ")",
|
name = "Auto Format (" .. (buf and "Buffer" or "Global") .. ")",
|
||||||
get = function()
|
get = function()
|
||||||
if not buf then
|
if not buf then
|
||||||
|
|
@ -70,8 +79,7 @@ function M.format(buf)
|
||||||
set = function(state)
|
set = function(state)
|
||||||
LazyVim.format.enable(state, buf)
|
LazyVim.format.enable(state, buf)
|
||||||
end,
|
end,
|
||||||
}
|
})
|
||||||
return ret
|
|
||||||
end
|
end
|
||||||
|
|
||||||
---@param opts? {values?: {[1]:any, [2]:any}, name?: string}
|
---@param opts? {values?: {[1]:any, [2]:any}, name?: string}
|
||||||
|
|
@ -80,8 +88,7 @@ function M.option(option, opts)
|
||||||
local name = opts.name or option
|
local name = opts.name or option
|
||||||
local on = opts.values and opts.values[2] or true
|
local on = opts.values and opts.values[2] or true
|
||||||
local off = opts.values and opts.values[1] or false
|
local off = opts.values and opts.values[1] or false
|
||||||
---@type lazyvim.Toggle
|
return M.wrap({
|
||||||
local ret = {
|
|
||||||
name = name,
|
name = name,
|
||||||
get = function()
|
get = function()
|
||||||
return vim.opt_local[option]:get() == on
|
return vim.opt_local[option]:get() == on
|
||||||
|
|
@ -89,13 +96,11 @@ function M.option(option, opts)
|
||||||
set = function(state)
|
set = function(state)
|
||||||
vim.opt_local[option] = state and on or off
|
vim.opt_local[option] = state and on or off
|
||||||
end,
|
end,
|
||||||
}
|
})
|
||||||
return ret
|
|
||||||
end
|
end
|
||||||
|
|
||||||
local nu = { number = true, relativenumber = true }
|
local nu = { number = true, relativenumber = true }
|
||||||
---@type lazyvim.Toggle
|
M.number = M.wrap({
|
||||||
M.number = {
|
|
||||||
name = "Line Numbers",
|
name = "Line Numbers",
|
||||||
get = function()
|
get = function()
|
||||||
return vim.opt_local.number:get() or vim.opt_local.relativenumber:get()
|
return vim.opt_local.number:get() or vim.opt_local.relativenumber:get()
|
||||||
|
|
@ -110,19 +115,17 @@ M.number = {
|
||||||
vim.opt_local.relativenumber = false
|
vim.opt_local.relativenumber = false
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
}
|
})
|
||||||
|
|
||||||
---@type lazyvim.Toggle
|
M.diagnostics = M.wrap({
|
||||||
M.diagnostics = {
|
|
||||||
name = "Diagnostics",
|
name = "Diagnostics",
|
||||||
get = function()
|
get = function()
|
||||||
return vim.diagnostic.is_enabled and vim.diagnostic.is_enabled()
|
return vim.diagnostic.is_enabled and vim.diagnostic.is_enabled()
|
||||||
end,
|
end,
|
||||||
set = vim.diagnostic.enable,
|
set = vim.diagnostic.enable,
|
||||||
}
|
})
|
||||||
|
|
||||||
---@type lazyvim.Toggle
|
M.inlay_hints = M.wrap({
|
||||||
M.inlay_hints = {
|
|
||||||
name = "Inlay Hints",
|
name = "Inlay Hints",
|
||||||
get = function()
|
get = function()
|
||||||
return vim.lsp.inlay_hint.is_enabled({ bufnr = 0 })
|
return vim.lsp.inlay_hint.is_enabled({ bufnr = 0 })
|
||||||
|
|
@ -130,12 +133,11 @@ M.inlay_hints = {
|
||||||
set = function(state)
|
set = function(state)
|
||||||
vim.lsp.inlay_hint.enable(state, { bufnr = 0 })
|
vim.lsp.inlay_hint.enable(state, { bufnr = 0 })
|
||||||
end,
|
end,
|
||||||
}
|
})
|
||||||
|
|
||||||
---@type {k:string, v:any}[]
|
---@type {k:string, v:any}[]
|
||||||
M._maximized = nil
|
M._maximized = nil
|
||||||
---@type lazyvim.Toggle
|
M.maximize = M.wrap({
|
||||||
M.maximize = {
|
|
||||||
name = "Maximize",
|
name = "Maximize",
|
||||||
get = function()
|
get = function()
|
||||||
return M._maximized ~= nil
|
return M._maximized ~= nil
|
||||||
|
|
@ -170,7 +172,7 @@ M.maximize = {
|
||||||
vim.cmd("wincmd =")
|
vim.cmd("wincmd =")
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
}
|
})
|
||||||
|
|
||||||
setmetatable(M, {
|
setmetatable(M, {
|
||||||
__call = function(m, ...)
|
__call = function(m, ...)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue