Fix keymaps and fold
This commit is contained in:
@@ -1,3 +1,32 @@
|
|||||||
-- Autocmds are automatically loaded on the VeryLazy event
|
-- Autocmds are automatically loaded on the VeryLazy event
|
||||||
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
|
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
|
||||||
-- Add any additional autocmds here
|
-- Add any additional autocmds here
|
||||||
|
|
||||||
|
local augroup = vim.api.nvim_create_augroup
|
||||||
|
local autocmd = vim.api.nvim_create_autocmd
|
||||||
|
local view_group = augroup("auto_view", { clear = true })
|
||||||
|
|
||||||
|
autocmd({ "BufWinLeave", "BufWritePost", "WinLeave" }, {
|
||||||
|
desc = "Save view with mkview for real files",
|
||||||
|
group = view_group,
|
||||||
|
callback = function(args)
|
||||||
|
if vim.b[args.buf].view_activated then
|
||||||
|
vim.cmd.mkview({ mods = { emsg_silent = true } })
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
autocmd("BufWinEnter", {
|
||||||
|
desc = "Try to load file view if available and enable view saving for real files",
|
||||||
|
group = view_group,
|
||||||
|
callback = function(args)
|
||||||
|
if not vim.b[args.buf].view_activated then
|
||||||
|
local filetype = vim.api.nvim_get_option_value("filetype", { buf = args.buf })
|
||||||
|
local buftype = vim.api.nvim_get_option_value("buftype", { buf = args.buf })
|
||||||
|
local ignore_filetypes = { "gitcommit", "gitrebase", "svg", "hgcommit" }
|
||||||
|
if buftype == "" and filetype and filetype ~= "" and not vim.tbl_contains(ignore_filetypes, filetype) then
|
||||||
|
vim.b[args.buf].view_activated = true
|
||||||
|
vim.cmd.loadview({ mods = { emsg_silent = true } })
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|||||||
@@ -9,17 +9,11 @@ map("n", "<leader>bn", ":bnext<CR>", { noremap = true, silent = true, desc = "Ne
|
|||||||
map("n", "<leader>bp", ":bprevious<CR>", { noremap = true, silent = true, desc = "Previous buffer" })
|
map("n", "<leader>bp", ":bprevious<CR>", { noremap = true, silent = true, desc = "Previous buffer" })
|
||||||
map("n", "<leader>bd", ":bdelete<CR>", { noremap = true, silent = true, desc = "Delete buffer" })
|
map("n", "<leader>bd", ":bdelete<CR>", { noremap = true, silent = true, desc = "Delete buffer" })
|
||||||
|
|
||||||
-- Window navigation (splits)
|
|
||||||
map("n", "<leader>sh", "<C-w>h", { noremap = true, silent = true, desc = "Window left" })
|
|
||||||
map("n", "<leader>sj", "<C-w>j", { noremap = true, silent = true, desc = "Window down" })
|
|
||||||
map("n", "<leader>sk", "<C-w>k", { noremap = true, silent = true, desc = "Window up" })
|
|
||||||
map("n", "<leader>sl", "<C-w>l", { noremap = true, silent = true, desc = "Window right" })
|
|
||||||
|
|
||||||
-- Quick save
|
|
||||||
map("n", "<leader>w", ":w<CR>", { noremap = true, silent = true, desc = "Save file" })
|
|
||||||
|
|
||||||
-- Copy to system clipboard (if not already mapped)
|
-- Copy to system clipboard (if not already mapped)
|
||||||
map({ "n", "v" }, "<leader>y", [["+y]], { noremap = true, silent = true, desc = "Copy to system clipboard" })
|
map({ "n", "v" }, "<leader>y", [["+y]], { noremap = true, silent = true, desc = "Copy to system clipboard" })
|
||||||
|
|
||||||
-- Paste from system clipboard
|
-- Paste from system clipboard
|
||||||
map("n", "<leader>p", [["+p]], { noremap = true, silent = true, desc = "Paste from system clipboard" })
|
map("n", "<leader>p", [["+p]], { noremap = true, silent = true, desc = "Paste from system clipboard" })
|
||||||
|
|
||||||
|
-- Markdown menu
|
||||||
|
map("n", "<leader>M", [["+M]], { noremap = true, silent = true, desc = "Markdown" })
|
||||||
|
|||||||
@@ -45,11 +45,6 @@ opt.statusline = "%f %m %r %=%-14.(%l,%c%V%) %P"
|
|||||||
-- Persistent signcolumn to avoid text shifting
|
-- Persistent signcolumn to avoid text shifting
|
||||||
opt.signcolumn = "yes"
|
opt.signcolumn = "yes"
|
||||||
|
|
||||||
-- Fold method
|
|
||||||
opt.foldmethod = "expr"
|
|
||||||
opt.foldexpr = "nvim_treesitter#foldexpr()"
|
|
||||||
opt.foldlevel = 99 -- open all folds by default
|
|
||||||
|
|
||||||
-- Show file name and modified flag in the window bar
|
-- Show file name and modified flag in the window bar
|
||||||
opt.winbar = "%=%m %f"
|
opt.winbar = "%=%m %f"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user