Refactor config: fix conflicts, add features, update docs
- Fix keymap conflicts: session (<leader>sS/sR), substitute (<leader>sl) - Remove duplicate keymaps (window, resize) and options (synmaxcol, foldmethod) - Add which-key group names for better keymap organization - Add auto-format on save with smart filtering (conform.nvim) - Add diagnostic float on hover (CursorHold) - Add safe buffer close with unsaved changes confirmation - Add quickfix/location list navigation keymaps - Add startup config validation (nvim version, executables) - Enable plugin update notifications in lazy.nvim - Clean up: remove temporary files (kkk, cleanup script) - Clean up: remove commented code and fix double function loading - Update README.md with comprehensive documentation - Add CHANGELOG.md tracking all changes
This commit is contained in:
@@ -32,7 +32,22 @@ return {
|
||||
dbml = { "dbml" }, -- DBML formatting
|
||||
sql = { "sqlfluff" }, -- SQL formatting
|
||||
},
|
||||
format_on_save = false, -- Set to true if you want auto-formatting on save
|
||||
format_on_save = function(bufnr)
|
||||
-- Disable autoformat for certain filetypes
|
||||
local ignore_filetypes = { "sql", "markdown" }
|
||||
if vim.tbl_contains(ignore_filetypes, vim.bo[bufnr].filetype) then
|
||||
return
|
||||
end
|
||||
-- Disable for files in certain paths
|
||||
local bufname = vim.api.nvim_buf_get_name(bufnr)
|
||||
if bufname:match("/node_modules/") then
|
||||
return
|
||||
end
|
||||
return {
|
||||
timeout_ms = 2000,
|
||||
lsp_fallback = true,
|
||||
}
|
||||
end,
|
||||
})
|
||||
|
||||
vim.keymap.set({ "n", "v" }, "<leader>mm", function()
|
||||
@@ -41,6 +56,16 @@ return {
|
||||
async = false,
|
||||
timeout_ms = 2000,
|
||||
})
|
||||
end, { desc = "Format file or range (in visual mode)" })
|
||||
end, { desc = "Format: File or range (in visual mode)" })
|
||||
|
||||
-- Toggle auto-format on save
|
||||
vim.api.nvim_create_user_command("FormatToggle", function()
|
||||
vim.g.disable_autoformat = not vim.g.disable_autoformat
|
||||
if vim.g.disable_autoformat then
|
||||
vim.notify("Auto-format on save disabled", vim.log.levels.INFO)
|
||||
else
|
||||
vim.notify("Auto-format on save enabled", vim.log.levels.INFO)
|
||||
end
|
||||
end, { desc = "Toggle auto-format on save" })
|
||||
end,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user