aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/dot_config/zellij
diff options
context:
space:
mode:
authorLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-04-21 01:23:18 +0100
committerLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-04-21 01:23:18 +0100
commitd00bf2cb2d5087164fa509a4f20a2be62a519044 (patch)
treee788986ca341fa7a9d7327b48c58d2e0c0c43115 /dot_config/zellij
parent9b2af4dd6c73ea57cc921f41120db7a2700e806d (diff)
downloaddotfiles-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/zellij')
-rw-r--r--dot_config/zellij/config.kdl81
1 files changed, 81 insertions, 0 deletions
diff --git a/dot_config/zellij/config.kdl b/dot_config/zellij/config.kdl
new file mode 100644
index 0000000..87ba6d1
--- /dev/null
+++ b/dot_config/zellij/config.kdl
@@ -0,0 +1,81 @@
+// Gruvbox dark theme (built-in)
+theme "gruvbox-dark"
+
+// Session resurrection
+serialize_pane_viewport true
+
+// Scrollback
+scroll_buffer_size 50000
+
+// Clipboard: copy to system clipboard on selection (OSC 52)
+copy_on_select true
+
+// Auto-attach to existing session with the same name instead of erroring
+attach_to_session true
+
+// Disable startup popups that overwrite stow-managed config when dismissed
+show_startup_tips false
+show_release_notes false
+
+// Clean UI: no pane borders, compact single-line status bar
+pane_frames false
+default_layout "compact"
+
+// Custom keybindings (merged with defaults)
+keybinds {
+ shared_except "locked" {
+ // Direct tab access (Alt+number)
+ bind "Alt 1" { GoToTab 1; }
+ bind "Alt 2" { GoToTab 2; }
+ bind "Alt 3" { GoToTab 3; }
+ bind "Alt 4" { GoToTab 4; }
+ bind "Alt 5" { GoToTab 5; }
+ bind "Alt 6" { GoToTab 6; }
+ bind "Alt 7" { GoToTab 7; }
+ bind "Alt 8" { GoToTab 8; }
+ bind "Alt 9" { GoToTab 9; }
+
+ // Tab management
+ bind "Alt t" { NewTab; }
+ bind "Alt [" { GoToPreviousTab; }
+ bind "Alt ]" { GoToNextTab; }
+
+ // Pane management
+ bind "Alt w" { ToggleFocusFullscreen; }
+ bind "Alt x" { CloseFocus; }
+ bind "Alt e" { EditScrollback; }
+
+ // Session
+ bind "Alt q" { Detach; }
+
+ // Quick resize without entering resize mode
+ bind "Alt -" { Resize "Decrease"; }
+ bind "Alt =" { Resize "Increase"; }
+
+ // Seamless vim/zellij pane navigation (requires smart-splits.nvim)
+ bind "Ctrl h" {
+ MessagePlugin "https://github.com/hiasr/vim-zellij-navigator/releases/download/0.3.0/vim-zellij-navigator.wasm" {
+ name "move_focus"
+ payload "left"
+ }
+ }
+ bind "Ctrl j" {
+ MessagePlugin "https://github.com/hiasr/vim-zellij-navigator/releases/download/0.3.0/vim-zellij-navigator.wasm" {
+ name "move_focus"
+ payload "down"
+ }
+ }
+ bind "Ctrl k" {
+ MessagePlugin "https://github.com/hiasr/vim-zellij-navigator/releases/download/0.3.0/vim-zellij-navigator.wasm" {
+ name "move_focus"
+ payload "up"
+ }
+ }
+ bind "Ctrl l" {
+ MessagePlugin "https://github.com/hiasr/vim-zellij-navigator/releases/download/0.3.0/vim-zellij-navigator.wasm" {
+ name "move_focus"
+ payload "right"
+ }
+ }
+ }
+}