update commit
This commit is contained in:
81
init.lua
81
init.lua
@@ -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,
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user