aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/home/.config
diff options
context:
space:
mode:
authorLibravatar sommerfeld <[email protected]>2026-04-17 10:53:38 +0100
committerLibravatar sommerfeld <[email protected]>2026-04-17 10:53:38 +0100
commitf8d471a07736b899dbffe0f4339e4f97748fd5e6 (patch)
treea0c377fb25819bedf20c01f83cfa5b880a98384a /home/.config
parentbc2edabb376d62c50445e4eda25f872db3ea9814 (diff)
downloaddotfiles-f8d471a07736b899dbffe0f4339e4f97748fd5e6.tar.gz
dotfiles-f8d471a07736b899dbffe0f4339e4f97748fd5e6.tar.bz2
dotfiles-f8d471a07736b899dbffe0f4339e4f97748fd5e6.zip
refactor: replace tmux.nvim with smart-splits.nvim for zellij
- Swap aserowy/tmux.nvim for mrjones2014/smart-splits.nvim in init.lua - Configure Ctrl h/j/k/l navigation keymaps (same keys as before) - Add vim-zellij-navigator WASM plugin keybindings to zellij config - Remove tmux treesitter parser (no longer needed) smart-splits.nvim auto-detects zellij as the multiplexer and provides seamless split/pane navigation across neovim and zellij boundaries.
Diffstat (limited to 'home/.config')
-rw-r--r--home/.config/nvim/init.lua2
-rw-r--r--home/.config/nvim/lua/plugins/init.lua11
-rw-r--r--home/.config/nvim/lua/plugins/treesitter.lua1
-rw-r--r--home/.config/nvim/nvim-pack-lock.json3
-rw-r--r--home/.config/zellij/config.kdl31
5 files changed, 41 insertions, 7 deletions
diff --git a/home/.config/nvim/init.lua b/home/.config/nvim/init.lua
index 63c1586..fc3271b 100644
--- a/home/.config/nvim/init.lua
+++ b/home/.config/nvim/init.lua
@@ -97,7 +97,7 @@ vim.pack.add({
-- Misc
gh("iamcco/markdown-preview.nvim"),
- gh("aserowy/tmux.nvim"),
+ gh("mrjones2014/smart-splits.nvim"),
gh("folke/which-key.nvim"),
gh("stevearc/quicker.nvim"),
gh("stevearc/oil.nvim"),
diff --git a/home/.config/nvim/lua/plugins/init.lua b/home/.config/nvim/lua/plugins/init.lua
index 8dce4cd..a0a6d49 100644
--- a/home/.config/nvim/lua/plugins/init.lua
+++ b/home/.config/nvim/lua/plugins/init.lua
@@ -1,8 +1,9 @@
-require("tmux").setup({
- resize = {
- enable_default_keybindings = false,
- },
-})
+-- 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 = {
diff --git a/home/.config/nvim/lua/plugins/treesitter.lua b/home/.config/nvim/lua/plugins/treesitter.lua
index 8355a07..8e72384 100644
--- a/home/.config/nvim/lua/plugins/treesitter.lua
+++ b/home/.config/nvim/lua/plugins/treesitter.lua
@@ -59,7 +59,6 @@ require("nvim-treesitter").install({
"strace",
"sxhkdrc",
"tablegen",
- "tmux",
"todotxt",
"toml",
"typescript",
diff --git a/home/.config/nvim/nvim-pack-lock.json b/home/.config/nvim/nvim-pack-lock.json
new file mode 100644
index 0000000..a5b818f
--- /dev/null
+++ b/home/.config/nvim/nvim-pack-lock.json
@@ -0,0 +1,3 @@
+{
+ "plugins": []
+}
diff --git a/home/.config/zellij/config.kdl b/home/.config/zellij/config.kdl
index 3d7f976..f3d3aa7 100644
--- a/home/.config/zellij/config.kdl
+++ b/home/.config/zellij/config.kdl
@@ -20,3 +20,34 @@ copy_command "wl-copy"
// Auto-attach to existing session with the same name instead of erroring
attach_to_session true
+
+// Seamless navigation between neovim splits and zellij panes (Ctrl h/j/k/l).
+// Requires smart-splits.nvim on the neovim side.
+keybinds {
+ shared_except "locked" {
+ bind "Ctrl h" {
+ MessagePlugin "https://github.com/hiasr/vim-zellij-navigator/releases/download/0.2.1/vim-zellij-navigator.wasm" {
+ name "move_focus";
+ payload "left";
+ };
+ }
+ bind "Ctrl j" {
+ MessagePlugin "https://github.com/hiasr/vim-zellij-navigator/releases/download/0.2.1/vim-zellij-navigator.wasm" {
+ name "move_focus";
+ payload "down";
+ };
+ }
+ bind "Ctrl k" {
+ MessagePlugin "https://github.com/hiasr/vim-zellij-navigator/releases/download/0.2.1/vim-zellij-navigator.wasm" {
+ name "move_focus";
+ payload "up";
+ };
+ }
+ bind "Ctrl l" {
+ MessagePlugin "https://github.com/hiasr/vim-zellij-navigator/releases/download/0.2.1/vim-zellij-navigator.wasm" {
+ name "move_focus";
+ payload "right";
+ };
+ }
+ }
+}