changelog shortlog graph tags branches files raw help

Mercurial > infra / changeset: zellij layout init

changeset 180: 08ecf3acf2ca
parent 179: d0308ab72ec8
child 181: d6dcfcb6b805
author: Richard Westhaver <ellis@rwest.io>
date: Thu, 01 Feb 2024 15:52:16 -0500
files: etc/skel/.config/zellij/config.kdl etc/zellij/box-layout.kdl
description: zellij layout init
     1.1--- a/etc/skel/.config/zellij/config.kdl	Thu Feb 01 15:00:36 2024 -0500
     1.2+++ b/etc/skel/.config/zellij/config.kdl	Thu Feb 01 15:52:16 2024 -0500
     1.3@@ -1,35 +1,184 @@
     1.4-// If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true"
     1.5-keybinds {
     1.6+keybinds clear-defaults=true {
     1.7     normal {
     1.8+        // uncomment this and adjust key if using copy_on_select=false
     1.9+        // bind "Alt c" { Copy; }
    1.10     }
    1.11     locked {
    1.12         bind "Esc" { SwitchToMode "Normal"; }
    1.13     }
    1.14     resize {
    1.15+        bind "Ctrl n" { SwitchToMode "Normal"; }
    1.16+        bind "h" "Left" { Resize "Increase Left"; }
    1.17+        bind "j" "Down" { Resize "Increase Down"; }
    1.18+        bind "k" "Up" { Resize "Increase Up"; }
    1.19+        bind "l" "Right" { Resize "Increase Right"; }
    1.20+        bind "H" { Resize "Decrease Left"; }
    1.21+        bind "J" { Resize "Decrease Down"; }
    1.22+        bind "K" { Resize "Decrease Up"; }
    1.23+        bind "L" { Resize "Decrease Right"; }
    1.24+        bind "=" "+" { Resize "Increase"; }
    1.25+        bind "-" { Resize "Decrease"; }
    1.26     }
    1.27     pane {
    1.28+        bind "Ctrl p" { SwitchToMode "Normal"; }
    1.29+        bind "h" "Left" { MoveFocus "Left"; }
    1.30+        bind "l" "Right" { MoveFocus "Right"; }
    1.31+        bind "j" "Down" { MoveFocus "Down"; }
    1.32+        bind "k" "Up" { MoveFocus "Up"; }
    1.33+        bind "p" { SwitchFocus; }
    1.34+        bind "n" { NewPane; SwitchToMode "Normal"; }
    1.35+        bind "d" { NewPane "Down"; SwitchToMode "Normal"; }
    1.36+        bind "r" { NewPane "Right"; SwitchToMode "Normal"; }
    1.37+        bind "x" { CloseFocus; SwitchToMode "Normal"; }
    1.38+        bind "f" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
    1.39+        bind "z" { TogglePaneFrames; SwitchToMode "Normal"; }
    1.40+        bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; }
    1.41+        bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; }
    1.42+        bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0;}
    1.43     }
    1.44     move {
    1.45+        bind "Ctrl h" { SwitchToMode "Normal"; }
    1.46+        bind "n" "Tab" { MovePane; }
    1.47+        bind "p" { MovePaneBackwards; }
    1.48+        bind "h" "Left" { MovePane "Left"; }
    1.49+        bind "j" "Down" { MovePane "Down"; }
    1.50+        bind "k" "Up" { MovePane "Up"; }
    1.51+        bind "l" "Right" { MovePane "Right"; }
    1.52     }
    1.53     tab {
    1.54+        bind "Ctrl t" { SwitchToMode "Normal"; }
    1.55+        bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
    1.56+        bind "h" "Left" "Up" "k" { GoToPreviousTab; }
    1.57+        bind "l" "Right" "Down" "j" { GoToNextTab; }
    1.58+        bind "n" { NewTab; SwitchToMode "Normal"; }
    1.59+        bind "x" { CloseTab; SwitchToMode "Normal"; }
    1.60+        bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; }
    1.61+        bind "b" { BreakPane; SwitchToMode "Normal"; }
    1.62+        bind "]" { BreakPaneRight; SwitchToMode "Normal"; }
    1.63+        bind "[" { BreakPaneLeft; SwitchToMode "Normal"; }
    1.64+        bind "1" { GoToTab 1; SwitchToMode "Normal"; }
    1.65+        bind "2" { GoToTab 2; SwitchToMode "Normal"; }
    1.66+        bind "3" { GoToTab 3; SwitchToMode "Normal"; }
    1.67+        bind "4" { GoToTab 4; SwitchToMode "Normal"; }
    1.68+        bind "5" { GoToTab 5; SwitchToMode "Normal"; }
    1.69+        bind "6" { GoToTab 6; SwitchToMode "Normal"; }
    1.70+        bind "7" { GoToTab 7; SwitchToMode "Normal"; }
    1.71+        bind "8" { GoToTab 8; SwitchToMode "Normal"; }
    1.72+        bind "9" { GoToTab 9; SwitchToMode "Normal"; }
    1.73+        bind "Tab" { ToggleTab; }
    1.74     }
    1.75     scroll {
    1.76+        bind "Ctrl s" { SwitchToMode "Normal"; }
    1.77+        bind "e" { EditScrollback; SwitchToMode "Normal"; }
    1.78+        bind "s" { SwitchToMode "EnterSearch"; SearchInput 0; }
    1.79+        bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
    1.80+        bind "j" "Down" { ScrollDown; }
    1.81+        bind "k" "Up" { ScrollUp; }
    1.82+        bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
    1.83+        bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
    1.84+        bind "d" { HalfPageScrollDown; }
    1.85+        bind "u" { HalfPageScrollUp; }
    1.86+        // uncomment this and adjust key if using copy_on_select=false
    1.87+        // bind "Alt c" { Copy; }
    1.88     }
    1.89     search {
    1.90+        bind "Ctrl s" { SwitchToMode "Normal"; }
    1.91+        bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
    1.92+        bind "j" "Down" { ScrollDown; }
    1.93+        bind "k" "Up" { ScrollUp; }
    1.94+        bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
    1.95+        bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
    1.96+        bind "d" { HalfPageScrollDown; }
    1.97+        bind "u" { HalfPageScrollUp; }
    1.98+        bind "n" { Search "down"; }
    1.99+        bind "p" { Search "up"; }
   1.100+        bind "c" { SearchToggleOption "CaseSensitivity"; }
   1.101+        bind "w" { SearchToggleOption "Wrap"; }
   1.102+        bind "o" { SearchToggleOption "WholeWord"; }
   1.103     }
   1.104     entersearch {
   1.105+        bind "Ctrl c" "Esc" { SwitchToMode "Scroll"; }
   1.106+        bind "Enter" { SwitchToMode "Search"; }
   1.107     }
   1.108     renametab {
   1.109+        bind "Ctrl c" { SwitchToMode "Normal"; }
   1.110+        bind "Esc" { UndoRenameTab; SwitchToMode "Tab"; }
   1.111     }
   1.112     renamepane {
   1.113+        bind "Ctrl c" { SwitchToMode "Normal"; }
   1.114+        bind "Esc" { UndoRenamePane; SwitchToMode "Pane"; }
   1.115     }
   1.116     session {
   1.117+        bind "Ctrl o" { SwitchToMode "Normal"; }
   1.118+        bind "Ctrl s" { SwitchToMode "Scroll"; }
   1.119+        bind "d" { Detach; }
   1.120+        bind "w" {
   1.121+            LaunchOrFocusPlugin "zellij:session-manager" {
   1.122+                floating true
   1.123+                move_to_focused_tab true
   1.124+            };
   1.125+            SwitchToMode "Normal"
   1.126+        }
   1.127     }
   1.128     tmux {
   1.129+        bind "[" { SwitchToMode "Scroll"; }
   1.130+        bind "Ctrl b" { Write 2; SwitchToMode "Normal"; }
   1.131+        bind "\"" { NewPane "Down"; SwitchToMode "Normal"; }
   1.132+        bind "%" { NewPane "Right"; SwitchToMode "Normal"; }
   1.133+        bind "z" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
   1.134+        bind "c" { NewTab; SwitchToMode "Normal"; }
   1.135+        bind "," { SwitchToMode "RenameTab"; }
   1.136+        bind "p" { GoToPreviousTab; SwitchToMode "Normal"; }
   1.137+        bind "n" { GoToNextTab; SwitchToMode "Normal"; }
   1.138+        bind "Left" { MoveFocus "Left"; SwitchToMode "Normal"; }
   1.139+        bind "Right" { MoveFocus "Right"; SwitchToMode "Normal"; }
   1.140+        bind "Down" { MoveFocus "Down"; SwitchToMode "Normal"; }
   1.141+        bind "Up" { MoveFocus "Up"; SwitchToMode "Normal"; }
   1.142+        bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; }
   1.143+        bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; }
   1.144+        bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; }
   1.145+        bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; }
   1.146+        bind "o" { FocusNextPane; }
   1.147+        bind "d" { Detach; }
   1.148+        bind "Space" { NextSwapLayout; }
   1.149+        bind "x" { CloseFocus; SwitchToMode "Normal"; }
   1.150     }
   1.151     shared_except "locked" {
   1.152         bind "Esc" { SwitchToMode "Locked"; }
   1.153+        bind "Ctrl q" { Quit; }
   1.154+        bind "Alt n" { NewPane; }
   1.155+        bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
   1.156+        bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
   1.157+        bind "Alt j" "Alt Down" { MoveFocus "Down"; }
   1.158+        bind "Alt k" "Alt Up" { MoveFocus "Up"; }
   1.159+        bind "Alt =" "Alt +" { Resize "Increase"; }
   1.160+        bind "Alt -" { Resize "Decrease"; }
   1.161+        bind "Alt [" { PreviousSwapLayout; }
   1.162+        bind "Alt ]" { NextSwapLayout; }
   1.163     }
   1.164+    shared_except "normal" "locked" {
   1.165+        bind "Enter" "Esc" { SwitchToMode "Normal"; }
   1.166+    }
   1.167+    shared_except "pane" "locked" {
   1.168+        bind "Ctrl p" { SwitchToMode "Pane"; }
   1.169+    }
   1.170+    shared_except "resize" "locked" {
   1.171+        bind "Ctrl n" { SwitchToMode "Resize"; }
   1.172+    }
   1.173+    shared_except "scroll" "locked" {
   1.174+        bind "Ctrl s" { SwitchToMode "Scroll"; }
   1.175+    }
   1.176+    shared_except "session" "locked" {
   1.177+        bind "Ctrl o" { SwitchToMode "Session"; }
   1.178+    }
   1.179+    shared_except "tab" "locked" {
   1.180+        bind "Ctrl t" { SwitchToMode "Tab"; }
   1.181+    }
   1.182+    shared_except "move" "locked" {
   1.183+        bind "Ctrl h" { SwitchToMode "Move"; }
   1.184+    }
   1.185+    shared_except "tmux" "locked" {
   1.186+     }
   1.187 }
   1.188 
   1.189 plugins {
   1.190@@ -52,7 +201,7 @@
   1.191 
   1.192 // Default: $SHELL
   1.193 //
   1.194-// default_shell "nu"
   1.195+default_shell "nu"
   1.196 
   1.197 // default_cwd "/stash"
   1.198 
   1.199@@ -66,23 +215,23 @@
   1.200 
   1.201 // scrollback_lines_to_serialize 10000
   1.202 
   1.203-// themes {
   1.204-//     dracula {
   1.205-//         fg 248 248 242
   1.206-//         bg 40 42 54
   1.207-//         red 255 85 85
   1.208-//         green 80 250 123
   1.209-//         yellow 241 250 140
   1.210-//         blue 98 114 164
   1.211-//         magenta 255 121 198
   1.212-//         orange 255 184 108
   1.213-//         cyan 139 233 253
   1.214-//         black 0 0 0
   1.215-//         white 255 255 255
   1.216-//     }
   1.217-// }
   1.218+themes {
   1.219+    dracula {
   1.220+        fg 248 248 242
   1.221+        bg 40 42 54
   1.222+        red 255 85 85
   1.223+        green 80 250 123
   1.224+        yellow 241 250 140
   1.225+        blue 98 114 164
   1.226+        magenta 255 121 198
   1.227+        orange 255 184 108
   1.228+        cyan 139 233 253
   1.229+        black 0 0 0
   1.230+        white 255 255 255
   1.231+    }
   1.232+}
   1.233 
   1.234-// theme "default"
   1.235+theme "dracula"
   1.236 
   1.237 // The name of the default layout to load on startup
   1.238 // Default: "default"
     2.1--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2+++ b/etc/zellij/box-layout.kdl	Thu Feb 01 15:52:16 2024 -0500
     2.3@@ -0,0 +1,17 @@
     2.4+layout {
     2.5+    pane size=1 borderless=true {
     2.6+        plugin location="zellij:tab-bar"
     2.7+    }
     2.8+    pane split_direction="vertical" {
     2.9+      pane command="nu" {
    2.10+        args "-e" "(sys).host"
    2.11+      }
    2.12+      pane split_direction="horizontal" stacked=true {
    2.13+        pane command="emacsclient" {
    2.14+          args "-a=''" "-nw" "."
    2.15+        }
    2.16+        pane command="sbcl"
    2.17+        pane command="btm"
    2.18+      }
    2.19+    }
    2.20+}
    2.21\ No newline at end of file