return { { "brenton-leighton/multiple-cursors.nvim", version = "*", -- Use the latest tagged version opts = {}, -- This causes the plugin setup function to be called keys = { { "", "MultipleCursorsAddDown", mode = { "n", "x" }, desc = "Add cursor and move down" }, { "", "MultipleCursorsAddUp", mode = { "n", "x" }, desc = "Add cursor and move up" }, { "", "MultipleCursorsAddUp", mode = { "n", "i", "x" }, desc = "Add cursor and move up" }, { "", "MultipleCursorsAddDown", mode = { "n", "i", "x" }, desc = "Add cursor and move down", }, { "", "MultipleCursorsMouseAddDelete", mode = { "n", "i" }, desc = "Add or remove cursor on mouse click", }, { "", "MultipleCursorsAddDelete", mode = { "n" }, desc = "Add a locked cursor or remove an existing cursor", }, { "m", "MultipleCursorsAddVisualArea", mode = { "x" }, desc = "Add cursors to the lines of the visual area", }, { "a", "MultipleCursorsAddMatches", mode = { "n", "x" }, desc = "Add cursors to cword" }, { "A", "MultipleCursorsAddMatchesV", mode = { "n", "x" }, desc = "Add cursors to cword in previous area", }, { "d", "MultipleCursorsAddJumpNextMatch", mode = { "n", "x" }, desc = "Add cursor and jump to next cword", }, { "D", "MultipleCursorsJumpNextMatch", mode = { "n", "x" }, desc = "Jump to next cword" }, { "l", "MultipleCursorsLock", mode = { "n", "x" }, desc = "Lock virtual cursors" }, }, }, }