diff --git a/config/nvim/lua/aleidk/plugins/init.lua b/config/nvim/lua/aleidk/plugins/init.lua index d2858a7..dd0a6c2 100644 --- a/config/nvim/lua/aleidk/plugins/init.lua +++ b/config/nvim/lua/aleidk/plugins/init.lua @@ -18,10 +18,10 @@ return { -- Useful status updates for LSP -- NOTE: `opts = {}` is the same as calling `require('fidget').setup({})` - { "j-hui/fidget.nvim", opts = {} }, + { "j-hui/fidget.nvim", opts = {} }, -- Additional lua configuration, makes nvim stuff amazing! - { "folke/neodev.nvim", opts = {} }, + { "folke/neodev.nvim", opts = {} }, }, }, @@ -64,4 +64,38 @@ return { require("illuminate").configure(opts) end, }, + { + "mrjones2014/smart-splits.nvim", + opts = { ignored_filetypes = { "nofile", "quickfix", "qf", "prompt" }, ignored_buftypes = { "nofile" } }, + keys = { + { + "", + function() + require("smart-splits").move_cursor_left() + end, + desc = "Move to left window", + }, + { + "", + function() + require("smart-splits").move_cursor_down() + end, + desc = "Move to bottom window", + }, + { + "", + function() + require("smart-splits").move_cursor_up() + end, + desc = "Move to upper window", + }, + { + "", + function() + require("smart-splits").move_cursor_right() + end, + desc = "Move to right window", + }, + }, + }, } diff --git a/config/nvim/lua/aleidk/plugins/smart-splits.lua b/config/nvim/lua/aleidk/plugins/smart-splits.lua new file mode 100644 index 0000000..c58890c --- /dev/null +++ b/config/nvim/lua/aleidk/plugins/smart-splits.lua @@ -0,0 +1,65 @@ +-- Move to windows with Ctrl and hjkl +-- Resize to windows with Alt and hjkl +-- Tmux aware +return { + "mrjones2014/smart-splits.nvim", + opts = { ignored_filetypes = { "nofile", "quickfix", "qf", "prompt" }, ignored_buftypes = { "nofile" } }, + keys = { + { + "", + function() + require("smart-splits").move_cursor_left() + end, + desc = "Move to left window", + }, + { + "", + function() + require("smart-splits").move_cursor_down() + end, + desc = "Move to bottom window", + }, + { + "", + function() + require("smart-splits").move_cursor_up() + end, + desc = "Move to upper window", + }, + { + "", + function() + require("smart-splits").move_cursor_right() + end, + desc = "Move to right window", + }, + { + "", + function() + require("smart-splits").resize_left() + end, + desc = "Move to left window", + }, + { + "", + function() + require("smart-splits").resize_down() + end, + desc = "Move to bottom window", + }, + { + "", + function() + require("smart-splits").resize_up() + end, + desc = "Move to upper window", + }, + { + "", + function() + require("smart-splits").resize_right() + end, + desc = "Move to right window", + }, + }, +}