Set up better pane/buffer navigation
This commit is contained in:
parent
064e8ad1b4
commit
a4addb63da
9
init.lua
9
init.lua
|
@ -185,10 +185,10 @@ vim.keymap.set('t', '<Esc><Esc>', '<C-\\><C-n>', { desc = 'Exit terminal mode' }
|
||||||
-- Use CTRL+<hjkl> to switch between windows
|
-- Use CTRL+<hjkl> to switch between windows
|
||||||
--
|
--
|
||||||
-- See `:help wincmd` for a list of all window commands
|
-- See `:help wincmd` for a list of all window commands
|
||||||
vim.keymap.set('n', '<C-h>', '<C-w><C-h>', { desc = 'Move focus to the left window' })
|
-- vim.keymap.set('n', '<C-h>', '<C-w><C-h>', { desc = 'Move focus to the left window' })
|
||||||
vim.keymap.set('n', '<C-l>', '<C-w><C-l>', { desc = 'Move focus to the right window' })
|
-- vim.keymap.set('n', '<C-l>', '<C-w><C-l>', { desc = 'Move focus to the right window' })
|
||||||
vim.keymap.set('n', '<C-j>', '<C-w><C-j>', { desc = 'Move focus to the lower window' })
|
-- vim.keymap.set('n', '<C-j>', '<C-w><C-j>', { desc = 'Move focus to the lower window' })
|
||||||
vim.keymap.set('n', '<C-k>', '<C-w><C-k>', { desc = 'Move focus to the upper window' })
|
-- vim.keymap.set('n', '<C-k>', '<C-w><C-k>', { desc = 'Move focus to the upper window' })
|
||||||
|
|
||||||
vim.keymap.set('n', '<leader>v', ':vsplit<CR>', { noremap = true, silent = true, desc = 'Create vertical split' })
|
vim.keymap.set('n', '<leader>v', ':vsplit<CR>', { noremap = true, silent = true, desc = 'Create vertical split' })
|
||||||
vim.keymap.set('n', '<leader>h', ':split<CR>', { noremap = true, silent = true, desc = 'Create horizontal split' })
|
vim.keymap.set('n', '<leader>h', ':split<CR>', { noremap = true, silent = true, desc = 'Create horizontal split' })
|
||||||
|
@ -871,6 +871,7 @@ require('lazy').setup({
|
||||||
--
|
--
|
||||||
-- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`.
|
-- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`.
|
||||||
'rebelot/kanagawa.nvim',
|
'rebelot/kanagawa.nvim',
|
||||||
|
lazy = false,
|
||||||
priority = 10000, -- Make sure to load this before all the other start plugins.
|
priority = 10000, -- Make sure to load this before all the other start plugins.
|
||||||
init = function()
|
init = function()
|
||||||
-- Load the colorscheme here.
|
-- Load the colorscheme here.
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
"LuaSnip": { "branch": "master", "commit": "45db5addf8d0a201e1cf247cae4cdce605ad3768" },
|
"LuaSnip": { "branch": "master", "commit": "45db5addf8d0a201e1cf247cae4cdce605ad3768" },
|
||||||
"barbar.nvim": { "branch": "master", "commit": "c20691d686addb0d6ea87896d186c082324b01f8" },
|
"barbar.nvim": { "branch": "master", "commit": "c20691d686addb0d6ea87896d186c082324b01f8" },
|
||||||
"bufferline.nvim": { "branch": "main", "commit": "0b2fd861eee7595015b6561dade52fb060be10c4" },
|
"bufferline.nvim": { "branch": "main", "commit": "0b2fd861eee7595015b6561dade52fb060be10c4" },
|
||||||
|
"bufresize.nvim": { "branch": "master", "commit": "3b19527ab936d6910484dcc20fb59bdb12322d8b" },
|
||||||
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
|
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
|
||||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||||
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
|
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
|
||||||
|
@ -33,13 +34,14 @@
|
||||||
"nvim-ts-context-commentstring": { "branch": "main", "commit": "375c2d86cee6674afd75b4f727ce3a80065552f7" },
|
"nvim-ts-context-commentstring": { "branch": "main", "commit": "375c2d86cee6674afd75b4f727ce3a80065552f7" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "3722e3d1fb5fe1896a104eb489e8f8651260b520" },
|
"nvim-web-devicons": { "branch": "master", "commit": "3722e3d1fb5fe1896a104eb489e8f8651260b520" },
|
||||||
"plenary.nvim": { "branch": "master", "commit": "ec289423a1693aeae6cd0d503bac2856af74edaa" },
|
"plenary.nvim": { "branch": "master", "commit": "ec289423a1693aeae6cd0d503bac2856af74edaa" },
|
||||||
|
"smart-splits.nvim": { "branch": "master", "commit": "aee30930689ae427729aad41568ccaae57c167fe" },
|
||||||
"telescope-fzf-native.nvim": { "branch": "main", "commit": "cf48d4dfce44e0b9a2e19a008d6ec6ea6f01a83b" },
|
"telescope-fzf-native.nvim": { "branch": "main", "commit": "cf48d4dfce44e0b9a2e19a008d6ec6ea6f01a83b" },
|
||||||
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
|
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
|
||||||
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
|
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
|
||||||
"todo-comments.nvim": { "branch": "main", "commit": "319c01b99b7a8c9ac2066bf0efd4d6ec68fef444" },
|
"todo-comments.nvim": { "branch": "main", "commit": "319c01b99b7a8c9ac2066bf0efd4d6ec68fef444" },
|
||||||
"tokyonight.nvim": { "branch": "main", "commit": "b0e7c7382a7e8f6456f2a95655983993ffda745e" },
|
"tokyonight.nvim": { "branch": "main", "commit": "b0e7c7382a7e8f6456f2a95655983993ffda745e" },
|
||||||
|
"trouble.nvim": { "branch": "main", "commit": "6efc446226679fda0547c0fd6a7892fd5f5b15d8" },
|
||||||
"ts-comments.nvim": { "branch": "main", "commit": "98d7d4dec0af1312d38e288f800bbf6ff562b6ab" },
|
"ts-comments.nvim": { "branch": "main", "commit": "98d7d4dec0af1312d38e288f800bbf6ff562b6ab" },
|
||||||
"vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" },
|
"vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" },
|
||||||
"vim-tmux-navigator": { "branch": "master", "commit": "5b3c701686fb4e6629c100ed32e827edf8dad01e" },
|
|
||||||
"which-key.nvim": { "branch": "main", "commit": "bfec3d6bc0a9b0b2cb11644642f78c2c3915eef0" }
|
"which-key.nvim": { "branch": "main", "commit": "bfec3d6bc0a9b0b2cb11644642f78c2c3915eef0" }
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,5 +2,22 @@
|
||||||
return {
|
return {
|
||||||
'akinsho/bufferline.nvim',
|
'akinsho/bufferline.nvim',
|
||||||
enabled = true,
|
enabled = true,
|
||||||
opts = {},
|
opts = {
|
||||||
|
options = {
|
||||||
|
mode = 'buffers',
|
||||||
|
themable = true,
|
||||||
|
diagnostics = 'nvim_lsp',
|
||||||
|
offsets = {
|
||||||
|
{
|
||||||
|
filetype = 'neo-tree',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
config = function(_, opts)
|
||||||
|
require('bufferline').setup(opts)
|
||||||
|
|
||||||
|
vim.keymap.set('n', '<Tab>', ':BufferLineCycleNext<CR>', { noremap = true, silent = true, desc = 'Move to next buffer' })
|
||||||
|
vim.keymap.set('n', '<S-Tab>', ':BufferLineCyclePrev<CR>', { noremap = true, silent = true, desc = 'Move to previous buffer' })
|
||||||
|
end,
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
return {
|
||||||
|
'mrjones2014/smart-splits.nvim',
|
||||||
|
dependencies = {
|
||||||
|
{ 'kwkarlwang/bufresize.nvim', config = true },
|
||||||
|
},
|
||||||
|
config = function()
|
||||||
|
require('smart-splits').setup {
|
||||||
|
resize_mode = {
|
||||||
|
hooks = {
|
||||||
|
on_leave = require('bufresize').register,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
local smart_splits = require 'smart-splits'
|
||||||
|
vim.keymap.set('n', '<A-h>', smart_splits.resize_left)
|
||||||
|
vim.keymap.set('n', '<A-j>', smart_splits.resize_down)
|
||||||
|
vim.keymap.set('n', '<A-k>', smart_splits.resize_up)
|
||||||
|
vim.keymap.set('n', '<A-l>', smart_splits.resize_right)
|
||||||
|
-- moving between splits
|
||||||
|
vim.keymap.set('n', '<C-h>', smart_splits.move_cursor_left)
|
||||||
|
vim.keymap.set('n', '<C-j>', smart_splits.move_cursor_down)
|
||||||
|
vim.keymap.set('n', '<C-k>', smart_splits.move_cursor_up)
|
||||||
|
vim.keymap.set('n', '<C-l>', smart_splits.move_cursor_right)
|
||||||
|
vim.keymap.set('n', '<C-\\>', smart_splits.move_cursor_previous)
|
||||||
|
-- swapping buffers between windows
|
||||||
|
vim.keymap.set('n', '<leader><leader>h', smart_splits.swap_buf_left)
|
||||||
|
vim.keymap.set('n', '<leader><leader>j', smart_splits.swap_buf_down)
|
||||||
|
vim.keymap.set('n', '<leader><leader>k', smart_splits.swap_buf_up)
|
||||||
|
vim.keymap.set('n', '<leader><leader>l', smart_splits.swap_buf_right)
|
||||||
|
end,
|
||||||
|
}
|
|
@ -1,18 +0,0 @@
|
||||||
return {
|
|
||||||
'christoomey/vim-tmux-navigator',
|
|
||||||
cmd = {
|
|
||||||
'TmuxNavigateLeft',
|
|
||||||
'TmuxNavigateDown',
|
|
||||||
'TmuxNavigateUp',
|
|
||||||
'TmuxNavigateRight',
|
|
||||||
'TmuxNavigatePrevious',
|
|
||||||
},
|
|
||||||
keys = {
|
|
||||||
{ '<c-h>', '<cmd>TmuxNavigateLeft<cr>' },
|
|
||||||
{ '<c-j>', '<cmd>TmuxNavigateDown<cr>' },
|
|
||||||
{ '<c-k>', '<cmd>TmuxNavigateUp<cr>' },
|
|
||||||
{ '<c-l>', '<cmd>TmuxNavigateRight<cr>' },
|
|
||||||
{ '<c-\\>', '<cmd>TmuxNavigatePrevious<cr>' },
|
|
||||||
},
|
|
||||||
}
|
|
||||||
-- vim: ts=2 sts=2 sw=2 et
|
|
Loading…
Reference in New Issue