diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua index 9e2c549..fd08252 100644 --- a/nvim/.config/nvim/init.lua +++ b/nvim/.config/nvim/init.lua @@ -89,6 +89,9 @@ vim.g.vimtex_view_general_options = '--unique \\@pdf\\#src:@tex:@line:@col' vim.g.toggle_list_no_mappings = 1 -- Enable rainbow brackets everywhere vim.g.rainbow_active = 1 +-- Needs to be set before nvim-peekup +vim.g.peekup_paste_before = 'P' +vim.g.peekup_paste_after = 'p' -- Settings using nvim.api -- Needs to be set before vim-sneak is loaded diff --git a/nvim/.config/nvim/lua/keymappings.lua b/nvim/.config/nvim/lua/keymappings.lua index abef46f..f57cbe0 100644 --- a/nvim/.config/nvim/lua/keymappings.lua +++ b/nvim/.config/nvim/lua/keymappings.lua @@ -121,5 +121,20 @@ remap('v', '<', '', '>gv', { noremap = true }) -- Copy whole buffer -remap('', '', ':norm gg0VG$cp', { noremap = false }) -remap('i', '', ':norm jkgg0VG$cp', { noremap = false }) +remap('', '', ':norm gg0VG$"*y', { noremap = false }) +remap('i', '', ':norm jkgg0VG$"*y', { noremap = false }) + +-- Marks +-- '0 - Position of cursor when last exited Vim. +-- '" - Position of cursor when last exited the current buffer. +-- '. - Position of last change. +-- '< & '> - Start/end of visual selection. +-- '[ & '] - Start/end of last change or yank. +-- '^ - Position of cursor when last Vim last left insert mode - This is how gi command works. +-- '' - Position before last jump (Super useful!). See :h ''. +-- Map gm to `. Instead of `a, hit gma. See :help mark-motions as to why we use backtick. +remap('n', 'gm', '`', { noremap = false }) +-- Jump using marks to last change, left insert, jump. +remap('n', 'mc', ':norm `.', { noremap = true }) +remap('n', 'mi', ':norm `^', { noremap = true }) +remap('n', 'mj', ':norm `\'', { noremap = true }) diff --git a/nvim/.config/nvim/lua/plugins.lua b/nvim/.config/nvim/lua/plugins.lua index bd50aa4..17e7538 100644 --- a/nvim/.config/nvim/lua/plugins.lua +++ b/nvim/.config/nvim/lua/plugins.lua @@ -95,8 +95,6 @@ local init = function () 'liuchengxu/vim-which-key', config = "require('modules.which_key')" } - -- Clipboard - use 'christoomey/vim-system-copy' -- Toggle terminal use { 'voldikss/vim-floaterm', @@ -158,6 +156,11 @@ local init = function () config = "require('modules.statusline')", requires = { 'kyazdani42/nvim-web-devicons' } } + -- Marks and registers + use { + 'kshenoy/vim-signature', + 'gennaro-tedesco/nvim-peekup' + } end return require('packer').startup(init)