diff options
| author | 2026-04-21 01:23:18 +0100 | |
|---|---|---|
| committer | 2026-04-21 01:23:18 +0100 | |
| commit | d00bf2cb2d5087164fa509a4f20a2be62a519044 (patch) | |
| tree | e788986ca341fa7a9d7327b48c58d2e0c0c43115 /dot_config/nvim/lua/plugins/init.lua | |
| parent | 9b2af4dd6c73ea57cc921f41120db7a2700e806d (diff) | |
| download | dotfiles-d00bf2cb2d5087164fa509a4f20a2be62a519044.tar.gz dotfiles-d00bf2cb2d5087164fa509a4f20a2be62a519044.tar.bz2 dotfiles-d00bf2cb2d5087164fa509a4f20a2be62a519044.zip | |
refactor: restructure to chezmoi source state
Rename home/ contents to chezmoi naming conventions:
- dot_ prefix for dotfiles and dot-dirs
- private_dot_ for .gnupg and .ssh directories
- private_ for 0600 files (nym.pub)
- executable_ for scripts in .local/bin and display-toggle.sh
- symlink_ for mimeapps.list symlink
Diffstat (limited to 'dot_config/nvim/lua/plugins/init.lua')
| -rw-r--r-- | dot_config/nvim/lua/plugins/init.lua | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/dot_config/nvim/lua/plugins/init.lua b/dot_config/nvim/lua/plugins/init.lua new file mode 100644 index 0000000..b106b6e --- /dev/null +++ b/dot_config/nvim/lua/plugins/init.lua @@ -0,0 +1,58 @@ +-- Seamless navigation between neovim splits and zellij panes +require("smart-splits").setup({}) +vim.keymap.set("n", "<C-h>", require("smart-splits").move_cursor_left, { desc = "Move to left split/pane" }) +vim.keymap.set("n", "<C-j>", require("smart-splits").move_cursor_down, { desc = "Move to below split/pane" }) +vim.keymap.set("n", "<C-k>", require("smart-splits").move_cursor_up, { desc = "Move to above split/pane" }) +vim.keymap.set("n", "<C-l>", require("smart-splits").move_cursor_right, { desc = "Move to right split/pane" }) + +require("which-key").setup({ + spec = { + { "g", group = "[G]oto" }, + { "yo", group = "Toggle options" }, + { "]", group = "Navigate to next" }, + { "[", group = "Navigate to previous" }, + { "<leader>c", group = "[C]ode", mode = { "n", "x" } }, + { "<leader>g", group = "[G]it" }, + { "<leader>h", group = "Git [H]unk", mode = { "n", "v" } }, + { "<leader>o", group = "[O]verseer" }, + { "<leader>r", group = "[R]efactor" }, + { "<leader>w", group = "[W]orkspace" }, + { "<leader>t", group = "[T]oggle" }, + }, +}) + +vim.keymap.set("n", "<leader>?", function() + require("which-key").show({ global = false }) +end, { desc = "Buffer Local Keymaps (which-key)" }) + +require("quicker").setup({ + keys = { + { + ">", + function() + require("quicker").expand({ + before = 2, + after = 2, + add_to_existing = true, + }) + end, + desc = "Expand quickfix context", + }, + { + "<", + function() + require("quicker").collapse() + end, + desc = "Collapse quickfix context", + }, + }, +}) + +vim.keymap.set("n", "<leader>tq", function() + require("quicker").toggle() +end, { desc = "[T]oggle [Q]uickfix" }) +vim.keymap.set("n", "<leader>tl", function() + require("quicker").toggle({ loclist = true }) +end, { desc = "[T]oggle [L]oclist" }) + +require("oil").setup({}) |
