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