update commit

This commit is contained in:
2026-01-08 18:35:56 +08:00
parent 91caa45aca
commit 66fae977bb
2 changed files with 74 additions and 21 deletions

View File

@@ -32,7 +32,12 @@ vim.keymap.set("n", "<leader>vs", "<cmd>vsplit<cr>", { desc = "Vertical split" }
vim.keymap.set("n", "<leader>hs", "<cmd>split<cr>", { desc = "Horizontal split" })
vim.keymap.set("n", "<leader>sx", "<cmd>close<cr>", { desc = "Close split" })
vim.keymap.set("n", "<leader>so", "<cmd>only<cr>", { desc = "Only this split" })
vim.keymap.set("i", "jj", "<Esc>", { noremap = true, silent = true})
vim.keymap.set("i", "jj", function()
vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("<Esc>", true, false, true), "n", false)
if vim.bo.modified and vim.bo.buftype == "" and vim.fn.expand("%") ~= "" then
vim.cmd("silent update")
end
end, { noremap = true, silent = true})
vim.keymap.set("i", "<M-h>", "<Left>", { noremap = true, silent = true })
vim.keymap.set("i", "<M-j>", "<Down>", { noremap = true, silent = true })
vim.keymap.set("i", "<M-k>", "<Up>", { noremap = true, silent = true })
@@ -41,6 +46,15 @@ vim.keymap.set("n", "<M-j>", ":m .+1<CR>==", { noremap = true, silent = true })
vim.keymap.set("n", "<M-k>", ":m .-2<CR>==", { noremap = true, silent = true })
vim.keymap.set("v", "<M-j>", ":m '>+1<CR>gv=gv", { noremap = true, silent = true })
vim.keymap.set("v", "<M-k>", ":m '<-2<CR>gv=gv", { noremap = true, silent = true })
vim.keymap.set("n", "<leader>tn", "<cmd>tabnew<cr>", { desc = "tabnew" })
-- 切换tab
for i = 1, 9 do
vim.keymap.set("n", "<leader>" .. i, i .. "gt", { desc = "Go to tab " .. i })
end
vim.keymap.set("n", "<leader>th", "gT", { desc = "Prev tab" })
vim.keymap.set("n", "<leader>tl", "gt", { desc = "Next tab" })
-- edit vim config --
vim.keymap.set("n", "<leader>ev", function()
vim.cmd("edit " .. vim.fn.stdpath("config") .. "/init.lua")
@@ -137,8 +151,19 @@ vim.filetype.add({
},
})
-- QML / QMLJS LSP (Qt qmlls)
local qml_cmd = vim.fn.exepath("qmlls")
if qml_cmd == "" then
qml_cmd = vim.fn.exepath("qmlls6")
end
vim.lsp.config("qmlls", {
cmd = { qml_cmd },
filetypes = { "qml", "qmljs" },
root_markers = { ".qmlls.ini", "qmldir", ".git" },
})
-- enable lsp --
vim.lsp.enable({ "clangd", "rust_analyzer", "zls", "jsonls", "glslls", "build"})
vim.lsp.enable({ "clangd", "rust_analyzer", "zls", "jsonls", "glslls", "build", "qmlls"})
-- ===== Auto save on leave =====
vim.api.nvim_create_autocmd({
@@ -316,19 +341,6 @@ require("lazy").setup({
vim.keymap.set("n", "<leader>fS", builtin.lsp_workspace_symbols,{ desc = "Symbols (workspace)" })
end,
},
{
"stevearc/oil.nvim",
config = function()
require("oil").setup()
vim.keymap.set("n", "-", "<cmd>Oil<cr>", { desc = "Open parent directory (Oil)" })
vim.api.nvim_create_autocmd("FileType", {
pattern = "oil",
callback = function()
vim.keymap.set("n", "q", "<cmd>bd<cr>", { buffer = true })
end,
})
end
},
{
"echasnovski/mini.pairs",
version = false,
@@ -359,5 +371,44 @@ require("lazy").setup({
})
end,
},
{
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons",
"MunifTanjim/nui.nvim",
},
config = function()
require("neo-tree").setup({
close_if_last_window = true,
popup_border_style = "rounded",
enable_git_status = true,
enable_diagnostics = true,
window = {
position = "left",
width = 32,
mapping = {
["l"] = "open",
["h"] = "close_node",
["<space>"] = "toggle_node",
},
},
filesystem = {
filtered_items = {
visible = true,
hide_dotfiles = false,
hide_gitignored = false,
},
follow_current_file = {
enable = true,
},
},
})
vim.keymap.set("n", "<leader>fe", "<cmd>Neotree toggle left<cr>", { desc = "Explorer (Neo-tree)"})
vim.keymap.set("n", "-", "<cmd>Neotree toggle left<cr>", { desc = "Explorer (Neo-tree)"})
end,
},
})