zellij

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

config.kdl.bak.1 (20059B)


      1 //
      2 // THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /Users/minerva/.config/zellij/config.kdl.bak
      3 //
      4 
      5 keybinds clear-defaults=true {
      6     locked {
      7         bind "Ctrl g" { SwitchToMode "normal"; }
      8     }
      9     pane {
     10         bind "left" { MoveFocus "left"; }
     11         bind "down" { MoveFocus "down"; }
     12         bind "up" { MoveFocus "up"; }
     13         bind "right" { MoveFocus "right"; }
     14         bind "c" { SwitchToMode "renamepane"; PaneNameInput 0; }
     15         bind "d" { NewPane "down"; SwitchToMode "normal"; }
     16         bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
     17         bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
     18         bind "h" { MoveFocus "left"; }
     19         bind "i" { TogglePanePinned; SwitchToMode "normal"; }
     20         bind "j" { MoveFocus "down"; }
     21         bind "k" { MoveFocus "up"; }
     22         bind "l" { MoveFocus "right"; }
     23         bind "n" { NewPane; SwitchToMode "normal"; }
     24         bind "p" { SwitchFocus; }
     25         bind "Ctrl p" { SwitchToMode "normal"; }
     26         bind "r" { NewPane "right"; SwitchToMode "normal"; }
     27         bind "s" { NewPane "stacked"; SwitchToMode "normal"; }
     28         bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
     29         bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
     30     }
     31     tab {
     32         bind "left" { GoToPreviousTab; }
     33         bind "down" { GoToNextTab; }
     34         bind "up" { GoToPreviousTab; }
     35         bind "right" { GoToNextTab; }
     36         bind "1" { GoToTab 1; SwitchToMode "normal"; }
     37         bind "2" { GoToTab 2; SwitchToMode "normal"; }
     38         bind "3" { GoToTab 3; SwitchToMode "normal"; }
     39         bind "4" { GoToTab 4; SwitchToMode "normal"; }
     40         bind "5" { GoToTab 5; SwitchToMode "normal"; }
     41         bind "6" { GoToTab 6; SwitchToMode "normal"; }
     42         bind "7" { GoToTab 7; SwitchToMode "normal"; }
     43         bind "8" { GoToTab 8; SwitchToMode "normal"; }
     44         bind "9" { GoToTab 9; SwitchToMode "normal"; }
     45         bind "[" { BreakPaneLeft; SwitchToMode "normal"; }
     46         bind "]" { BreakPaneRight; SwitchToMode "normal"; }
     47         bind "b" { BreakPane; SwitchToMode "normal"; }
     48         bind "h" { GoToPreviousTab; }
     49         bind "j" { GoToNextTab; }
     50         bind "k" { GoToPreviousTab; }
     51         bind "l" { GoToNextTab; }
     52         bind "n" { NewTab; SwitchToMode "normal"; }
     53         bind "r" { SwitchToMode "renametab"; TabNameInput 0; }
     54         bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
     55         bind "Ctrl t" { SwitchToMode "normal"; }
     56         bind "x" { CloseTab; SwitchToMode "normal"; }
     57         bind "tab" { ToggleTab; }
     58     }
     59     resize {
     60         bind "left" { Resize "Increase left"; }
     61         bind "down" { Resize "Increase down"; }
     62         bind "up" { Resize "Increase up"; }
     63         bind "right" { Resize "Increase right"; }
     64         bind "+" { Resize "Increase"; }
     65         bind "-" { Resize "Decrease"; }
     66         bind "=" { Resize "Increase"; }
     67         bind "H" { Resize "Decrease left"; }
     68         bind "J" { Resize "Decrease down"; }
     69         bind "K" { Resize "Decrease up"; }
     70         bind "L" { Resize "Decrease right"; }
     71         bind "h" { Resize "Increase left"; }
     72         bind "j" { Resize "Increase down"; }
     73         bind "k" { Resize "Increase up"; }
     74         bind "l" { Resize "Increase right"; }
     75         bind "Ctrl n" { SwitchToMode "normal"; }
     76     }
     77     move {
     78         bind "left" { MovePane "left"; }
     79         bind "down" { MovePane "down"; }
     80         bind "up" { MovePane "up"; }
     81         bind "right" { MovePane "right"; }
     82         bind "h" { MovePane "left"; }
     83         bind "Ctrl h" { SwitchToMode "normal"; }
     84         bind "j" { MovePane "down"; }
     85         bind "k" { MovePane "up"; }
     86         bind "l" { MovePane "right"; }
     87         bind "n" { MovePane; }
     88         bind "p" { MovePaneBackwards; }
     89         bind "tab" { MovePane; }
     90     }
     91     scroll {
     92         bind "Alt left" { MoveFocusOrTab "left"; SwitchToMode "normal"; }
     93         bind "Alt down" { MoveFocus "down"; SwitchToMode "normal"; }
     94         bind "Alt up" { MoveFocus "up"; SwitchToMode "normal"; }
     95         bind "Alt right" { MoveFocusOrTab "right"; SwitchToMode "normal"; }
     96         bind "e" { EditScrollback; SwitchToMode "normal"; }
     97         bind "Alt h" { MoveFocusOrTab "left"; SwitchToMode "normal"; }
     98         bind "Alt j" { MoveFocus "down"; SwitchToMode "normal"; }
     99         bind "Alt k" { MoveFocus "up"; SwitchToMode "normal"; }
    100         bind "Alt l" { MoveFocusOrTab "right"; SwitchToMode "normal"; }
    101         bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
    102     }
    103     search {
    104         bind "c" { SearchToggleOption "CaseSensitivity"; }
    105         bind "n" { Search "down"; }
    106         bind "o" { SearchToggleOption "WholeWord"; }
    107         bind "p" { Search "up"; }
    108         bind "w" { SearchToggleOption "Wrap"; }
    109     }
    110     session {
    111         bind "a" {
    112             LaunchOrFocusPlugin "zellij:about" {
    113                 floating true
    114                 move_to_focused_tab true
    115             }
    116             SwitchToMode "normal"
    117         }
    118         bind "c" {
    119             LaunchOrFocusPlugin "configuration" {
    120                 floating true
    121                 move_to_focused_tab true
    122             }
    123             SwitchToMode "normal"
    124         }
    125         bind "l" {
    126             LaunchOrFocusPlugin "zellij:layout-manager" {
    127                 floating true
    128                 move_to_focused_tab true
    129             }
    130             SwitchToMode "normal"
    131         }
    132         bind "Ctrl o" { SwitchToMode "normal"; }
    133         bind "p" {
    134             LaunchOrFocusPlugin "plugin-manager" {
    135                 floating true
    136                 move_to_focused_tab true
    137             }
    138             SwitchToMode "normal"
    139         }
    140         bind "s" {
    141             LaunchOrFocusPlugin "zellij:share" {
    142                 floating true
    143                 move_to_focused_tab true
    144             }
    145             SwitchToMode "normal"
    146         }
    147         bind "w" {
    148             LaunchOrFocusPlugin "session-manager" {
    149                 floating true
    150                 move_to_focused_tab true
    151             }
    152             SwitchToMode "normal"
    153         }
    154     }
    155     shared_except "locked" {
    156         bind "Alt +" { Resize "Increase"; }
    157         bind "Alt -" { Resize "Decrease"; }
    158         bind "Alt =" { Resize "Increase"; }
    159         bind "Alt [" { PreviousSwapLayout; }
    160         bind "Alt ]" { NextSwapLayout; }
    161         bind "Alt f" { ToggleFloatingPanes; }
    162         bind "Ctrl g" { SwitchToMode "locked"; }
    163         bind "Alt i" { MoveTab "left"; }
    164         bind "Alt n" { NewPane; }
    165         bind "Alt o" { MoveTab "right"; }
    166         bind "Alt p" { TogglePaneInGroup; }
    167         bind "Alt Shift p" { ToggleGroupMarking; }
    168         bind "Ctrl q" { Quit; }
    169     }
    170     shared_except "locked" "move" {
    171         bind "Ctrl h" { SwitchToMode "move"; }
    172     }
    173     shared_except "locked" "session" {
    174         bind "Ctrl o" { SwitchToMode "session"; }
    175     }
    176     shared_except "locked" "scroll" {
    177         bind "Alt left" { MoveFocusOrTab "left"; }
    178         bind "Alt down" { MoveFocus "down"; }
    179         bind "Alt up" { MoveFocus "up"; }
    180         bind "Alt right" { MoveFocusOrTab "right"; }
    181         bind "Alt h" { MoveFocusOrTab "left"; }
    182         bind "Alt j" { MoveFocus "down"; }
    183         bind "Alt k" { MoveFocus "up"; }
    184         bind "Alt l" { MoveFocusOrTab "right"; }
    185     }
    186     shared_except "locked" "scroll" "search" "tmux" {
    187         bind "Ctrl b" { SwitchToMode "tmux"; }
    188     }
    189     shared_except "locked" "scroll" "search" {
    190         bind "Ctrl s" { SwitchToMode "scroll"; }
    191     }
    192     shared_except "locked" "tab" {
    193         bind "Ctrl t" { SwitchToMode "tab"; }
    194     }
    195     shared_except "locked" "pane" {
    196         bind "Ctrl p" { SwitchToMode "pane"; }
    197     }
    198     shared_except "locked" "resize" {
    199         bind "Ctrl n" { SwitchToMode "resize"; }
    200     }
    201     shared_except "normal" "locked" "entersearch" {
    202         bind "enter" { SwitchToMode "normal"; }
    203     }
    204     shared_except "normal" "locked" "entersearch" "renametab" "renamepane" {
    205         bind "esc" { SwitchToMode "normal"; }
    206     }
    207     shared_among "pane" "tmux" {
    208         bind "x" { CloseFocus; SwitchToMode "normal"; }
    209     }
    210     shared_among "scroll" "search" {
    211         bind "PageDown" { PageScrollDown; }
    212         bind "PageUp" { PageScrollUp; }
    213         bind "left" { PageScrollUp; }
    214         bind "down" { ScrollDown; }
    215         bind "up" { ScrollUp; }
    216         bind "right" { PageScrollDown; }
    217         bind "Ctrl b" { PageScrollUp; }
    218         bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
    219         bind "d" { HalfPageScrollDown; }
    220         bind "Ctrl f" { PageScrollDown; }
    221         bind "h" { PageScrollUp; }
    222         bind "j" { ScrollDown; }
    223         bind "k" { ScrollUp; }
    224         bind "l" { PageScrollDown; }
    225         bind "Ctrl s" { SwitchToMode "normal"; }
    226         bind "u" { HalfPageScrollUp; }
    227     }
    228     entersearch {
    229         bind "Ctrl c" { SwitchToMode "scroll"; }
    230         bind "esc" { SwitchToMode "scroll"; }
    231         bind "enter" { SwitchToMode "search"; }
    232     }
    233     renametab {
    234         bind "esc" { UndoRenameTab; SwitchToMode "tab"; }
    235     }
    236     shared_among "renametab" "renamepane" {
    237         bind "Ctrl c" { SwitchToMode "normal"; }
    238     }
    239     renamepane {
    240         bind "esc" { UndoRenamePane; SwitchToMode "pane"; }
    241     }
    242     shared_among "session" "tmux" {
    243         bind "d" { Detach; }
    244     }
    245     tmux {
    246         bind "left" { MoveFocus "left"; SwitchToMode "normal"; }
    247         bind "down" { MoveFocus "down"; SwitchToMode "normal"; }
    248         bind "up" { MoveFocus "up"; SwitchToMode "normal"; }
    249         bind "right" { MoveFocus "right"; SwitchToMode "normal"; }
    250         bind "space" { NextSwapLayout; }
    251         bind "\"" { NewPane "down"; SwitchToMode "normal"; }
    252         bind "%" { NewPane "right"; SwitchToMode "normal"; }
    253         bind "," { SwitchToMode "renametab"; }
    254         bind "[" { SwitchToMode "scroll"; }
    255         bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
    256         bind "c" { NewTab; SwitchToMode "normal"; }
    257         bind "h" { MoveFocus "left"; SwitchToMode "normal"; }
    258         bind "j" { MoveFocus "down"; SwitchToMode "normal"; }
    259         bind "k" { MoveFocus "up"; SwitchToMode "normal"; }
    260         bind "l" { MoveFocus "right"; SwitchToMode "normal"; }
    261         bind "n" { GoToNextTab; SwitchToMode "normal"; }
    262         bind "o" { FocusNextPane; }
    263         bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
    264         bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
    265     }
    266 }
    267 
    268 // Plugin aliases - can be used to change the implementation of Zellij
    269 // changing these requires a restart to take effect
    270 plugins {
    271     about location="zellij:about"
    272     compact-bar location="zellij:compact-bar"
    273     configuration location="zellij:configuration"
    274     filepicker location="zellij:strider" {
    275         cwd "/"
    276     }
    277     plugin-manager location="zellij:plugin-manager"
    278     session-manager location="zellij:session-manager"
    279     status-bar location="zellij:status-bar"
    280     strider location="zellij:strider"
    281     tab-bar location="zellij:tab-bar"
    282     welcome-screen location="zellij:session-manager" {
    283         welcome_screen true
    284     }
    285 }
    286 
    287 // Plugins to load in the background when a new session starts
    288 // eg. "file:/path/to/my-plugin.wasm"
    289 // eg. "https://example.com/my-plugin.wasm"
    290 load_plugins {
    291     zellij:link
    292 }
    293 web_client {
    294     font "monospace"
    295 }
    296  
    297 // Use a simplified UI without special fonts (arrow glyphs)
    298 // Options:
    299 //   - true
    300 //   - false (Default)
    301 // 
    302 // simplified_ui true
    303  
    304 // Enable OSC8 hyperlink output
    305 // Options:
    306 //   - true (Default)
    307 //   - false
    308 // 
    309 // osc8_hyperlinks true
    310  
    311 // Choose the theme that is specified in the themes section.
    312 // Default: default
    313 // 
    314 // theme "dracula"
    315  
    316 // Choose the base input mode of zellij.
    317 // Default: normal
    318 // 
    319 default_mode "normal"
    320  
    321 // Choose the path to the default shell that zellij will use for opening new panes
    322 // Default: $SHELL
    323 // 
    324 // default_shell "fish"
    325  
    326 // Choose the path to override cwd that zellij will use for opening new panes
    327 // 
    328 // default_cwd "/tmp"
    329  
    330 // The name of the default layout to load on startup
    331 // Default: "default"
    332 // 
    333 // default_layout "compact"
    334  
    335 // The folder in which Zellij will look for layouts
    336 // (Requires restart)
    337 // 
    338 // layout_dir "/tmp"
    339  
    340 // The folder in which Zellij will look for themes
    341 // (Requires restart)
    342 // 
    343 // theme_dir "/tmp"
    344  
    345 // Toggle enabling the mouse mode.
    346 // On certain configurations, or terminals this could
    347 // potentially interfere with copying text.
    348 // Options:
    349 //   - true (default)
    350 //   - false
    351 // 
    352 // mouse_mode false
    353  
    354 // Toggle having pane frames around the panes
    355 // Options:
    356 //   - true (default, enabled)
    357 //   - false
    358 // 
    359 // pane_frames false
    360  
    361 // When attaching to an existing session with other users,
    362 // should the session be mirrored (true)
    363 // or should each user have their own cursor (false)
    364 // (Requires restart)
    365 // Default: false
    366 // 
    367 // mirror_session true
    368  
    369 // Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
    370 // eg. when terminal window with an active zellij session is closed
    371 // (Requires restart)
    372 // Options:
    373 //   - detach (Default)
    374 //   - quit
    375 // 
    376 // on_force_close "quit"
    377  
    378 // Configure the scroll back buffer size
    379 // This is the number of lines zellij stores for each pane in the scroll back
    380 // buffer. Excess number of lines are discarded in a FIFO fashion.
    381 // (Requires restart)
    382 // Valid values: positive integers
    383 // Default value: 10000
    384 // 
    385 // scroll_buffer_size 10000
    386  
    387 // Provide a command to execute when copying text. The text will be piped to
    388 // the stdin of the program to perform the copy. This can be used with
    389 // terminal emulators which do not support the OSC 52 ANSI control sequence
    390 // that will be used by default if this option is not set.
    391 // Examples:
    392 //
    393 // copy_command "xclip -selection clipboard" // x11
    394 // copy_command "wl-copy"                    // wayland
    395 // copy_command "pbcopy"                     // osx
    396 // 
    397 // copy_command "pbcopy"
    398  
    399 // Choose the destination for copied text
    400 // Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
    401 // Does not apply when using copy_command.
    402 // Options:
    403 //   - system (default)
    404 //   - primary
    405 // 
    406 // copy_clipboard "primary"
    407  
    408 // Enable automatic copying (and clearing) of selection when releasing mouse
    409 // Default: true
    410 // 
    411 // copy_on_select true
    412  
    413 // Path to the default editor to use to edit pane scrollbuffer
    414 // Default: $EDITOR or $VISUAL
    415 // scrollback_editor "/usr/bin/vim"
    416  
    417 // A fixed name to always give the Zellij session.
    418 // Consider also setting `attach_to_session true,`
    419 // otherwise this will error if such a session exists.
    420 // Default: <RANDOM>
    421 // 
    422 // session_name "My singleton session"
    423  
    424 // When `session_name` is provided, attaches to that session
    425 // if it is already running or creates it otherwise.
    426 // Default: false
    427 // 
    428 // attach_to_session true
    429  
    430 // Toggle between having Zellij lay out panes according to a predefined set of layouts whenever possible
    431 // Options:
    432 //   - true (default)
    433 //   - false
    434 // 
    435 // auto_layout false
    436  
    437 // Whether sessions should be serialized to the cache folder (including their tabs/panes, cwds and running commands) so that they can later be resurrected
    438 // Options:
    439 //   - true (default)
    440 //   - false
    441 // 
    442 // session_serialization false
    443  
    444 // Whether pane viewports are serialized along with the session, default is false
    445 // Options:
    446 //   - true
    447 //   - false (default)
    448 // 
    449 // serialize_pane_viewport false
    450  
    451 // Scrollback lines to serialize along with the pane viewport when serializing sessions, 0
    452 // defaults to the scrollback size. If this number is higher than the scrollback size, it will
    453 // also default to the scrollback size. This does nothing if `serialize_pane_viewport` is not true.
    454 // 
    455 // scrollback_lines_to_serialize 10000
    456  
    457 // Enable or disable the rendering of styled and colored underlines (undercurl).
    458 // May need to be disabled for certain unsupported terminals
    459 // (Requires restart)
    460 // Default: true
    461 // 
    462 // styled_underlines false
    463  
    464 // How often in seconds sessions are serialized
    465 // 
    466 // serialization_interval 10000
    467  
    468 // Enable or disable writing of session metadata to disk (if disabled, other sessions might not know
    469 // metadata info on this session)
    470 // (Requires restart)
    471 // Default: false
    472 // 
    473 // disable_session_metadata false
    474  
    475 // Enable or disable support for the enhanced Kitty Keyboard Protocol (the host terminal must also support it)
    476 // (Requires restart)
    477 // Default: true (if the host terminal supports it)
    478 // 
    479 // support_kitty_keyboard_protocol false
    480 // Whether to make sure a local web server is running when a new Zellij session starts.
    481 // This web server will allow creating new sessions and attaching to existing ones that have
    482 // opted in to being shared in the browser.
    483 // When enabled, navigate to http://127.0.0.1:8082
    484 // (Requires restart)
    485 // 
    486 // Note: a local web server can still be manually started from within a Zellij session or from the CLI.
    487 // If this is not desired, one can use a version of Zellij compiled without
    488 // `web_server_capability`
    489 // 
    490 // Possible values:
    491 // - true
    492 // - false
    493 // Default: false
    494 // 
    495 // web_server false
    496 // Whether to allow sessions started in the terminal to be shared through a local web server, assuming one is
    497 // running (see the `web_server` option for more details).
    498 // (Requires restart)
    499 // 
    500 // Note: This is an administrative separation and not intended as a security measure.
    501 // 
    502 // Possible values:
    503 // - "on" (allow web sharing through the local web server if it
    504 // is online)
    505 // - "off" (do not allow web sharing unless sessions explicitly opt-in to it)
    506 // - "disabled" (do not allow web sharing and do not permit sessions started in the terminal to opt-in to it)
    507 // Default: "off"
    508 // 
    509 // web_sharing "off"
    510 // A path to a certificate file to be used when setting up the web client to serve the
    511 // connection over HTTPs
    512 // 
    513 // web_server_cert "/path/to/cert.pem"
    514 // A path to a key file to be used when setting up the web client to serve the
    515 // connection over HTTPs
    516 // 
    517 // web_server_key "/path/to/key.pem"
    518 /// Whether to enforce https connections to the web server when it is bound to localhost
    519 /// (127.0.0.0/8)
    520 ///
    521 /// Note: https is ALWAYS enforced when bound to non-local interfaces
    522 ///
    523 /// Default: false
    524 // 
    525 // enforce_https_for_localhost false
    526  
    527 // Whether to stack panes when resizing beyond a certain size
    528 // Default: true
    529 // 
    530 // stacked_resize false
    531  
    532 // Whether to show tips on startup
    533 // Default: true
    534 // 
    535 // show_startup_tips false
    536  
    537 // Whether to show release notes on first version run
    538 // Default: true
    539 // 
    540 // show_release_notes false
    541  
    542 // Whether to enable mouse hover effects and pane grouping functionality
    543 // default is true
    544 // advanced_mouse_actions false
    545  
    546 // Whether to enable mouse hover visual effects (frame highlight and help text)
    547 // default is true
    548 // mouse_hover_effects false
    549  
    550 // Whether to show visual bell indicators (pane/tab frame flash and [!] suffix)
    551 // default is true
    552 // visual_bell true
    553  
    554 // Whether to focus panes on mouse hover
    555 // default is false
    556 // focus_follows_mouse false
    557  
    558 // Whether clicking a pane to focus it also sends the click into the pane
    559 // default is false
    560 // mouse_click_through false
    561  
    562 // The ip address the web server should listen on when it starts
    563 // Default: "127.0.0.1"
    564 // (Requires restart)
    565 // web_server_ip "127.0.0.1"
    566  
    567 // The port the web server should listen on when it starts
    568 // Default: 8082
    569 // (Requires restart)
    570 // web_server_port 8082
    571  
    572 // A command to run (will be wrapped with sh -c and provided the RESURRECT_COMMAND env variable) 
    573 // after Zellij attempts to discover a command inside a pane when resurrecting sessions, the STDOUT
    574 // of this command will be used instead of the discovered RESURRECT_COMMAND
    575 // can be useful for removing wrappers around commands
    576 // Note: be sure to escape backslashes and similar characters properly
    577 // post_command_discovery_hook "echo $RESURRECT_COMMAND | sed <your_regex_here>"
    578 
    579 // Number of async worker tasks to spawn per active client.
    580 //
    581 // Allocating few tasks may result in resource contention and lags. Small values (around 4) should
    582 // typically work best. Set to 0 to use the number of (physical) CPU cores.
    583 // Note: This only applies to web clients at the moment.
    584 // client_async_worker_tasks 4