···11+//
22+// THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /Users/suri/.config/zellij/config.kdl.bak.2
33+//
44+15keybinds clear-defaults=true {
26 normal {
33- // Switch to different modes with Super key
77+ bind "Super m" { SwitchToMode "move"; }
88+ bind "Super o" { SwitchToMode "session"; }
49 bind "Super p" { SwitchToMode "pane"; }
55- bind "Super t" { SwitchToMode "tab"; }
610 bind "Super r" { SwitchToMode "resize"; }
77- bind "Super m" { SwitchToMode "move"; }
1111+ bind "Super t" { SwitchToMode "tab"; }
812 bind "Super v" { SwitchToMode "scroll"; }
99- bind "Super o" { SwitchToMode "session"; }
1013 }
1111-1214 locked {
1315 bind "Super g" { SwitchToMode "normal"; }
1616+ bind "Super o" { MoveTab "right"; }
1417 }
1515-1618 pane {
1719 bind "left" { MoveFocus "left"; }
1820 bind "down" { MoveFocus "down"; }
···3436 bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
3537 bind "tab" { SwitchFocus; }
3638 }
3737-3839 tab {
3940 bind "left" { GoToPreviousTab; }
4041 bind "down" { GoToNextTab; }
···6364 bind "x" { CloseTab; SwitchToMode "normal"; }
6465 bind "tab" { ToggleTab; }
6566 }
6666-6767 resize {
6868 bind "left" { Resize "Increase left"; }
6969 bind "down" { Resize "Increase down"; }
···8282 bind "l" { Resize "Increase right"; }
8383 bind "r" { SwitchToMode "normal"; }
8484 }
8585-8685 move {
8786 bind "left" { MovePane "left"; }
8887 bind "down" { MovePane "down"; }
···9796 bind "p" { MovePaneBackwards; }
9897 bind "tab" { MovePane; }
9998 }
100100-10199 scroll {
102100 bind "Alt left" { MoveFocusOrTab "left"; SwitchToMode "normal"; }
103101 bind "Alt down" { MoveFocus "down"; SwitchToMode "normal"; }
···111109 bind "Alt l" { MoveFocusOrTab "right"; SwitchToMode "normal"; }
112110 bind "s" { SwitchToMode "normal"; }
113111 }
114114-115112 search {
116113 bind "c" { SearchToggleOption "CaseSensitivity"; }
117114 bind "n" { Search "down"; }
···119116 bind "p" { Search "up"; }
120117 bind "w" { SearchToggleOption "Wrap"; }
121118 }
122122-123119 session {
124120 bind "c" {
125121 LaunchOrFocusPlugin "configuration" {
···145141 SwitchToMode "normal"
146142 }
147143 }
148148-149144 shared_among "normal" "locked" {
150150- bind "Super [" { PreviousSwapLayout; }
151151- bind "Super ]" { NextSwapLayout; }
152152- bind "Super f" { ToggleFloatingPanes; }
153153-154145 bind "Super left" { MoveFocusOrTab "left"; }
155146 bind "Super down" { MoveFocus "down"; }
156147 bind "Super up" { MoveFocus "up"; }
157148 bind "Super right" { MoveFocusOrTab "right"; }
158158-149149+ bind "Super 1" { GoToTab 1; }
150150+ bind "Super 2" { GoToTab 2; }
151151+ bind "Super 3" { GoToTab 3; }
152152+ bind "Super 4" { GoToTab 4; }
153153+ bind "Super 5" { GoToTab 5; }
154154+ bind "Super 6" { GoToTab 6; }
155155+ bind "Super 7" { GoToTab 7; }
156156+ bind "Super 8" { GoToTab 8; }
157157+ bind "Super 9" { GoToTab 9; }
158158+ bind "Super [" { PreviousSwapLayout; }
159159+ bind "Super ]" { NextSwapLayout; }
160160+ bind "Super f" { ToggleFloatingPanes; }
159161 bind "Super h" { MoveFocusOrTab "left"; }
162162+ bind "Super i" { MoveTab "left"; }
160163 bind "Super j" { MoveFocus "down"; }
161164 bind "Super k" { MoveFocus "up"; }
162165 bind "Super l" { MoveFocusOrTab "right"; }
163163-164166 bind "Super n" { NewPane; }
165165- bind "Super x" { CloseFocus; }
166167 bind "Super s" {
167168 LaunchOrFocusPlugin "session-manager" {
168169 floating true
169170 move_to_focused_tab true
170171 }
171172 }
172172-173173- bind "Super o" { MoveTab "right"; }
174174- bind "Super i" { MoveTab "left"; }
175175-176176- bind "Super 1" { GoToTab 1; }
177177- bind "Super 2" { GoToTab 2; }
178178- bind "Super 3" { GoToTab 3; }
179179- bind "Super 4" { GoToTab 4; }
180180- bind "Super 5" { GoToTab 5; }
181181- bind "Super 6" { GoToTab 6; }
182182- bind "Super 7" { GoToTab 7; }
183183- bind "Super 8" { GoToTab 8; }
184184- bind "Super 9" { GoToTab 9; }
173173+ bind "Super x" { CloseFocus; }
185174 }
186186-187175 shared_except "locked" "renametab" "renamepane" {
188176 bind "Ctrl g" { SwitchToMode "locked"; }
189177 bind "Ctrl q" { Quit; }
190178 }
191191-192179 shared_except "normal" "locked" "entersearch" {
193180 bind "enter" { SwitchToMode "normal"; }
194181 }
195195-196182 shared_except "normal" "locked" "entersearch" "renametab" "renamepane" {
197183 bind "esc" { SwitchToMode "normal"; }
198184 }
199199-200185 shared_among "scroll" "search" {
201186 bind "PageDown" { PageScrollDown; }
202187 bind "PageUp" { PageScrollUp; }
···214199 bind "l" { PageScrollDown; }
215200 bind "u" { HalfPageScrollUp; }
216201 }
217217-218202 entersearch {
219203 bind "Ctrl c" { SwitchToMode "scroll"; }
220204 bind "esc" { SwitchToMode "scroll"; }
221205 bind "enter" { SwitchToMode "search"; }
222206 }
223223-224207 renametab {
225208 bind "esc" { UndoRenameTab; SwitchToMode "tab"; }
226209 }
227227-228210 shared_among "renametab" "renamepane" {
229211 bind "Ctrl c" { SwitchToMode "normal"; }
230212 }
231231-232213 renamepane {
233214 bind "esc" { UndoRenamePane; SwitchToMode "pane"; }
234215 }
235216}
236217218218+// Plugin aliases - can be used to change the implementation of Zellij
219219+// changing these requires a restart to take effect
237220plugins {
221221+ about location="zellij:about"
238222 compact-bar location="zellij:compact-bar"
239223 configuration location="zellij:configuration"
240224 filepicker location="zellij:strider" {
···250234 }
251235}
252236237237+// Plugins to load in the background when a new session starts
238238+// eg. "file:/path/to/my-plugin.wasm"
239239+// eg. "https://example.com/my-plugin.wasm"
253240load_plugins {
254241}
255255-256256-// theme "onedark"
242242+web_client {
243243+ font "monospace"
244244+}
245245+246246+// Use a simplified UI without special fonts (arrow glyphs)
247247+// Options:
248248+// - true
249249+// - false (Default)
250250+//
251251+// simplified_ui true
252252+253253+// Enable OSC8 hyperlink output
254254+// Options:
255255+// - true (Default)
256256+// - false
257257+//
258258+// osc8_hyperlinks true
259259+260260+// Choose the theme that is specified in the themes section.
261261+// Default: default
262262+//
257263theme "ayu_dark"
258258-259259-// Changed from "locked" to "normal"
264264+265265+// Choose the base input mode of zellij.
266266+// Default: normal
267267+//
260268default_mode "normal"
261261-269269+270270+// Choose the path to the default shell that zellij will use for opening new panes
271271+// Default: $SHELL
272272+//
273273+// default_shell "fish"
274274+275275+// Choose the path to override cwd that zellij will use for opening new panes
276276+//
277277+// default_cwd "/tmp"
278278+279279+// The name of the default layout to load on startup
280280+// Default: "default"
281281+//
282282+// default_layout "compact"
283283+284284+// The folder in which Zellij will look for layouts
285285+// (Requires restart)
286286+//
287287+// layout_dir "/tmp"
288288+289289+// The folder in which Zellij will look for themes
290290+// (Requires restart)
291291+//
292292+// theme_dir "/tmp"
293293+294294+// Toggle enabling the mouse mode.
295295+// On certain configurations, or terminals this could
296296+// potentially interfere with copying text.
297297+// Options:
298298+// - true (default)
299299+// - false
300300+//
301301+// mouse_mode false
302302+303303+// Toggle having pane frames around the panes
304304+// Options:
305305+// - true (default, enabled)
306306+// - false
307307+//
262308pane_frames false
309309+310310+// When attaching to an existing session with other users,
311311+// should the session be mirrored (true)
312312+// or should each user have their own cursor (false)
313313+// (Requires restart)
314314+// Default: false
315315+//
316316+// mirror_session true
317317+318318+// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
319319+// eg. when terminal window with an active zellij session is closed
320320+// (Requires restart)
321321+// Options:
322322+// - detach (Default)
323323+// - quit
324324+//
325325+// on_force_close "quit"
326326+327327+// Configure the scroll back buffer size
328328+// This is the number of lines zellij stores for each pane in the scroll back
329329+// buffer. Excess number of lines are discarded in a FIFO fashion.
330330+// (Requires restart)
331331+// Valid values: positive integers
332332+// Default value: 10000
333333+//
334334+// scroll_buffer_size 10000
335335+336336+// Provide a command to execute when copying text. The text will be piped to
337337+// the stdin of the program to perform the copy. This can be used with
338338+// terminal emulators which do not support the OSC 52 ANSI control sequence
339339+// that will be used by default if this option is not set.
340340+// Examples:
341341+//
342342+// copy_command "xclip -selection clipboard" // x11
343343+// copy_command "wl-copy" // wayland
344344+// copy_command "pbcopy" // osx
345345+//
346346+// copy_command "pbcopy"
347347+348348+// Choose the destination for copied text
349349+// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
350350+// Does not apply when using copy_command.
351351+// Options:
352352+// - system (default)
353353+// - primary
354354+//
355355+// copy_clipboard "primary"
356356+357357+// Enable automatic copying (and clearing) of selection when releasing mouse
358358+// Default: true
359359+//
360360+// copy_on_select true
361361+362362+// Path to the default editor to use to edit pane scrollbuffer
363363+// Default: $EDITOR or $VISUAL
364364+// scrollback_editor "/usr/bin/vim"
365365+366366+// A fixed name to always give the Zellij session.
367367+// Consider also setting `attach_to_session true,`
368368+// otherwise this will error if such a session exists.
369369+// Default: <RANDOM>
370370+//
371371+// session_name "My singleton session"
372372+373373+// When `session_name` is provided, attaches to that session
374374+// if it is already running or creates it otherwise.
375375+// Default: false
376376+//
377377+// attach_to_session true
378378+379379+// Toggle between having Zellij lay out panes according to a predefined set of layouts whenever possible
380380+// Options:
381381+// - true (default)
382382+// - false
383383+//
384384+// auto_layout false
385385+386386+// Whether sessions should be serialized to the cache folder (including their tabs/panes, cwds and running commands) so that they can later be resurrected
387387+// Options:
388388+// - true (default)
389389+// - false
390390+//
391391+// session_serialization false
392392+393393+// Whether pane viewports are serialized along with the session, default is false
394394+// Options:
395395+// - true
396396+// - false (default)
397397+//
398398+// serialize_pane_viewport false
399399+400400+// Scrollback lines to serialize along with the pane viewport when serializing sessions, 0
401401+// defaults to the scrollback size. If this number is higher than the scrollback size, it will
402402+// also default to the scrollback size. This does nothing if `serialize_pane_viewport` is not true.
403403+//
404404+scrollback_lines_to_serialize 10000
405405+406406+// Enable or disable the rendering of styled and colored underlines (undercurl).
407407+// May need to be disabled for certain unsupported terminals
408408+// (Requires restart)
409409+// Default: true
410410+//
411411+// styled_underlines false
412412+413413+// How often in seconds sessions are serialized
414414+//
415415+// serialization_interval 10000
416416+417417+// Enable or disable writing of session metadata to disk (if disabled, other sessions might not know
418418+// metadata info on this session)
419419+// (Requires restart)
420420+// Default: false
421421+//
422422+// disable_session_metadata false
423423+424424+// Enable or disable support for the enhanced Kitty Keyboard Protocol (the host terminal must also support it)
425425+// (Requires restart)
426426+// Default: true (if the host terminal supports it)
427427+//
428428+// support_kitty_keyboard_protocol false
429429+// Whether to make sure a local web server is running when a new Zellij session starts.
430430+// This web server will allow creating new sessions and attaching to existing ones that have
431431+// opted in to being shared in the browser.
432432+// When enabled, navigate to http://127.0.0.1:8082
433433+// (Requires restart)
434434+//
435435+// Note: a local web server can still be manually started from within a Zellij session or from the CLI.
436436+// If this is not desired, one can use a version of Zellij compiled without
437437+// `web_server_capability`
438438+//
439439+// Possible values:
440440+// - true
441441+// - false
442442+// Default: false
443443+//
444444+// web_server false
445445+// Whether to allow sessions started in the terminal to be shared through a local web server, assuming one is
446446+// running (see the `web_server` option for more details).
447447+// (Requires restart)
448448+//
449449+// Note: This is an administrative separation and not intended as a security measure.
450450+//
451451+// Possible values:
452452+// - "on" (allow web sharing through the local web server if it
453453+// is online)
454454+// - "off" (do not allow web sharing unless sessions explicitly opt-in to it)
455455+// - "disabled" (do not allow web sharing and do not permit sessions started in the terminal to opt-in to it)
456456+// Default: "off"
457457+//
458458+// web_sharing "off"
459459+// A path to a certificate file to be used when setting up the web client to serve the
460460+// connection over HTTPs
461461+//
462462+// web_server_cert "/path/to/cert.pem"
463463+// A path to a key file to be used when setting up the web client to serve the
464464+// connection over HTTPs
465465+//
466466+// web_server_key "/path/to/key.pem"
467467+/// Whether to enforce https connections to the web server when it is bound to localhost
468468+/// (127.0.0.0/8)
469469+///
470470+/// Note: https is ALWAYS enforced when bound to non-local interfaces
471471+///
472472+/// Default: false
473473+//
474474+// enforce_https_for_localhost false
475475+476476+// Whether to stack panes when resizing beyond a certain size
477477+// Default: true
478478+//
479479+// stacked_resize false
480480+481481+// Whether to show tips on startup
482482+// Default: true
483483+//
484484+show_startup_tips false
485485+486486+// Whether to show release notes on first version run
487487+// Default: true
488488+//
489489+// show_release_notes false
490490+491491+// Whether to enable mouse hover effects and pane grouping functionality
492492+// default is true
493493+// advanced_mouse_actions false
494494+495495+// Whether to enable mouse hover visual effects (frame highlight and help text)
496496+// default is true
497497+// mouse_hover_effects false
498498+499499+// Whether to show visual bell indicators (pane/tab frame flash and [!] suffix)
500500+// default is true
501501+// visual_bell true
502502+503503+// Whether to focus panes on mouse hover
504504+// default is false
505505+// focus_follows_mouse false
506506+507507+// Whether clicking a pane to focus it also sends the click into the pane
508508+// default is false
509509+// mouse_click_through false
510510+511511+// The ip address the web server should listen on when it starts
512512+// Default: "127.0.0.1"
513513+// (Requires restart)
514514+// web_server_ip "127.0.0.1"
515515+516516+// The port the web server should listen on when it starts
517517+// Default: 8082
518518+// (Requires restart)
519519+// web_server_port 8082
520520+521521+// A command to run (will be wrapped with sh -c and provided the RESURRECT_COMMAND env variable)
522522+// after Zellij attempts to discover a command inside a pane when resurrecting sessions, the STDOUT
523523+// of this command will be used instead of the discovered RESURRECT_COMMAND
524524+// can be useful for removing wrappers around commands
525525+// Note: be sure to escape backslashes and similar characters properly
526526+// post_command_discovery_hook "echo $RESURRECT_COMMAND | sed <your_regex_here>"
263527264264-scrollback_lines_to_serialize 10000
528528+// Number of async worker tasks to spawn per active client.
529529+//
530530+// Allocating few tasks may result in resource contention and lags. Small values (around 4) should
531531+// typically work best. Set to 0 to use the number of (physical) CPU cores.
532532+// Note: This only applies to web clients at the moment.
533533+// client_async_worker_tasks 4