mappings: Do not use j,k mappings in operator mode
This commit is contained in:
parent
fb9a7b9206
commit
fa68c66454
|
@ -7,17 +7,6 @@ end
|
||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
M.general = {
|
M.general = {
|
||||||
[""] = {
|
|
||||||
-- Allow moving the cursor through wrapped lines with j, k, <Up> and <Down>
|
|
||||||
-- http<cmd> ://www.reddit.com/r/vim/comments/2k4cbr/problem_with_gj_and_gk/
|
|
||||||
-- empty mode is same as using <cmd> :map
|
|
||||||
-- also don't use g[j|k] when in operator pending mode, so it doesn't alter d, y or c behaviour
|
|
||||||
["j"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', opts = { expr = true } },
|
|
||||||
["k"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', opts = { expr = true } },
|
|
||||||
["<Up>"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', opts = { expr = true } },
|
|
||||||
["<Down>"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', opts = { expr = true } },
|
|
||||||
},
|
|
||||||
|
|
||||||
i = {
|
i = {
|
||||||
|
|
||||||
-- go to beginning and end
|
-- go to beginning and end
|
||||||
|
@ -61,6 +50,15 @@ M.general = {
|
||||||
|
|
||||||
" toggle theme",
|
" toggle theme",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
-- Allow moving the cursor through wrapped lines with j, k, <Up> and <Down>
|
||||||
|
-- http://www.reddit.com/r/vim/comments/2k4cbr/problem_with_gj_and_gk/
|
||||||
|
-- empty mode is same as using <cmd> :map
|
||||||
|
-- also don't use g[j|k] when in operator pending mode, so it doesn't alter d, y or c behaviour
|
||||||
|
["j"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', opts = { expr = true } },
|
||||||
|
["k"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', opts = { expr = true } },
|
||||||
|
["<Up>"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', opts = { expr = true } },
|
||||||
|
["<Down>"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', opts = { expr = true } },
|
||||||
},
|
},
|
||||||
|
|
||||||
t = {
|
t = {
|
||||||
|
@ -68,6 +66,10 @@ M.general = {
|
||||||
},
|
},
|
||||||
|
|
||||||
v = {
|
v = {
|
||||||
|
["j"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', opts = { expr = true } },
|
||||||
|
["k"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', opts = { expr = true } },
|
||||||
|
["<Up>"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', opts = { expr = true } },
|
||||||
|
["<Down>"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', opts = { expr = true } },
|
||||||
-- Don't copy the replaced text after pasting in visual mode
|
-- Don't copy the replaced text after pasting in visual mode
|
||||||
-- https://vim.fandom.com/wiki/Replace_a_word_with_yanked_text#Alternative_mapping_for_paste
|
-- https://vim.fandom.com/wiki/Replace_a_word_with_yanked_text#Alternative_mapping_for_paste
|
||||||
["p"] = { 'p:let @+=@0<CR>:let @"=@0<CR>', opts = { silent = true } },
|
["p"] = { 'p:let @+=@0<CR>:let @"=@0<CR>', opts = { silent = true } },
|
||||||
|
|
Loading…
Reference in New Issue