45 lines
1.8 KiB
Lua
45 lines
1.8 KiB
Lua
-- ============================================================================
|
|
-- VIM-VISUAL-MULTI: Multiple cursors like VS Code
|
|
-- ============================================================================
|
|
-- Select multiple occurrences and edit them simultaneously. <C-d> to select
|
|
-- word under cursor (like VS Code), <C-Down/Up> to add cursors vertically.
|
|
-- q to skip, Q to remove cursor. Vimscript plugin with some verbose log noise.
|
|
-- ============================================================================
|
|
return {
|
|
"mg979/vim-visual-multi",
|
|
branch = "master",
|
|
event = { "BufReadPost", "BufNewFile" },
|
|
init = function()
|
|
-- Configuration must be set before plugin loads
|
|
vim.g.VM_default_mappings = 1
|
|
vim.g.VM_mouse_mappings = 1
|
|
vim.g.VM_theme = "iceblue"
|
|
|
|
-- Only set PERMANENT mappings here to avoid E716 errors
|
|
-- Buffer mappings (Skip Region, Remove Region, Undo, Redo) use plugin defaults
|
|
vim.g.VM_maps = {
|
|
["Find Under"] = "<C-d>", -- Like VS Code Ctrl+D
|
|
["Find Subword Under"] = "<C-d>", -- Like VS Code Ctrl+D
|
|
["Select All"] = "<C-S-l>", -- Like VS Code Ctrl+Shift+L
|
|
["Add Cursor Down"] = "<C-Down>", -- Like VS Code
|
|
["Add Cursor Up"] = "<C-Up>", -- Like VS Code
|
|
["Select Cursor Down"] = "", -- Disable (reserved for buffer navigation)
|
|
["Select Cursor Up"] = "", -- Disable (reserved for buffer navigation)
|
|
}
|
|
|
|
-- Highlight settings
|
|
vim.g.VM_Mono_hl = "DiffText"
|
|
vim.g.VM_Extend_hl = "DiffAdd"
|
|
vim.g.VM_Cursor_hl = "Visual"
|
|
vim.g.VM_Insert_hl = "DiffChange"
|
|
|
|
-- Other settings
|
|
vim.g.VM_leader = "\\"
|
|
vim.g.VM_show_warnings = 1
|
|
vim.g.VM_silent_exit = 0
|
|
vim.g.VM_quit_after_leaving_insert_mode = 0
|
|
vim.g.VM_skip_empty_lines = 1
|
|
vim.g.VM_case_setting = "smart"
|
|
end,
|
|
}
|