mirror of
https://github.com/zellij-org/zellij.git
synced 2026-10-11 22:50:07 +00:00
More dependency upgrades for debian (#5421)
* upgrade insta, rand, sha2, strum, thiserror, tokio-tungstenite, toml, which; drop unused semver and typetag * upgrade sysinfo to 0.39.5, bump toolchain (msrv) to 1.95.0 * remote legacy yaml config converter and thus drop serde_yaml * upgrade unicode-width to 0.2.2 * fix(tests): run ipc roundtrip test on a larger stack
This commit is contained in:
Generated
+280
-277
File diff suppressed because it is too large
Load Diff
+8
-8
@@ -34,7 +34,7 @@ isahc = { workspace = true }
|
||||
embed-resource = "3"
|
||||
|
||||
[dev-dependencies]
|
||||
insta = { version = "1.6.0", features = ["backtrace"] }
|
||||
insta = "1.48"
|
||||
ssh2 = "0.9.1"
|
||||
rand = { workspace = true }
|
||||
regex = { workspace = true }
|
||||
@@ -72,7 +72,7 @@ license = "MIT"
|
||||
repository = "https://github.com/zellij-org/zellij"
|
||||
version = "0.45.0"
|
||||
# NOTE: When updating this, modify `channel` in `rust-toolchain.toml` accordingly
|
||||
rust-version = "1.92"
|
||||
rust-version = "1.95"
|
||||
|
||||
[workspace.dependencies]
|
||||
ansi_term = { version = "0.12.1", default-features = false }
|
||||
@@ -98,27 +98,27 @@ notify = { version = "8.2", default-features = false, features = ["macos_kqueue"
|
||||
num_cpus = { version = "1.16", default-features = false }
|
||||
pretty-bytes = { version = "0.2.2", default-features = false }
|
||||
prost = { version = "0.12.6", default-features = false, features = ["std", "prost-derive"] }
|
||||
rand = { version = "0.9", default-features = false, features = ["std", "std_rng", "thread_rng"] }
|
||||
rand = { version = "0.10.2", default-features = false, features = ["std", "std_rng", "thread_rng"] }
|
||||
regex = { version = "1.5.5", default-features = false, features = ["perf", "std", "unicode-perl"] }
|
||||
serde = { version = "1.0", default-features = false, features = ["derive", "std"] }
|
||||
serde_json = { version = "1.0", default-features = false, features = ["std"] }
|
||||
signal-hook = { version = "0.3", default-features = false, features = ["iterator"] }
|
||||
strip-ansi-escapes = { version = "0.2.1", default-features = false }
|
||||
strum = { version = "0.27.2", default-features = false, features = ["std"] }
|
||||
strum_macros = { version = "0.27.2", default-features = false }
|
||||
strum = { version = "0.28.0", default-features = false, features = ["std"] }
|
||||
strum_macros = { version = "0.28.0", default-features = false }
|
||||
suggest = { version = "0.5.1", default-features = false }
|
||||
tempfile = { version = "3.2.0", default-features = false }
|
||||
tokio = { version = "1.40", default-features = false, features = ["fs", "rt-multi-thread", "macros", "time", "process", "signal", "io-util", "io-std", "net"] }
|
||||
thiserror = { version = "1.0.40", default-features = false }
|
||||
thiserror = { version = "2.0.18", default-features = false, features = ["std"] }
|
||||
tokio-util = { version = "0.7.15" }
|
||||
unicode-width = { version = "0.1.8", default-features = false }
|
||||
unicode-width = { version = "0.2.2", default-features = false }
|
||||
url = { version = "2.2.2", default-features = false, features = ["serde"] }
|
||||
uuid = { version = "1.4.1", default-features = false, features = ["serde", "v4", "std"] }
|
||||
vte = { version = "0.15", default-features = false, features = ["std"] }
|
||||
windows-sys = { version = "0.59", default-features = false }
|
||||
names = { version = "0.14.0", default-features = false }
|
||||
include_dir = { version = "0.7.3", default-features = false }
|
||||
sha2 = { version = "0.10", default-features = false }
|
||||
sha2 = { version = "0.11", default-features = false }
|
||||
zellij-utils = { path = "zellij-utils/", version = "0.45.0" }
|
||||
|
||||
[profile.dev]
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
# This file is updated by `update-toolchain.sh`
|
||||
[toolchain]
|
||||
# NOTE: When updating this, modify `rust-version` in `Cargo.toml` accordingly
|
||||
channel = "1.92.0"
|
||||
channel = "1.95.0"
|
||||
components = ["rustfmt", "clippy"]
|
||||
# NOTE: Change this with care, this is also used by the CI pipeline
|
||||
targets = ["wasm32-wasip1", "x86_64-unknown-linux-musl"]
|
||||
|
||||
+2
-77
@@ -1,16 +1,12 @@
|
||||
use dialoguer::Confirm;
|
||||
use std::net::IpAddr;
|
||||
use std::{fs::File, io::prelude::*, path::PathBuf, process, time::Duration};
|
||||
use std::{path::PathBuf, process, time::Duration};
|
||||
|
||||
#[cfg(feature = "web_server_capability")]
|
||||
use isahc::{config::RedirectPolicy, prelude::*, HttpClient, Request};
|
||||
|
||||
use zellij_client::{
|
||||
old_config_converter::{
|
||||
config_yaml_to_config_kdl, convert_old_yaml_files, layout_yaml_to_layout_kdl,
|
||||
},
|
||||
os_input_output::get_client_os_input,
|
||||
start_client as start_client_impl, ClientInfo,
|
||||
os_input_output::get_client_os_input, start_client as start_client_impl, ClientInfo,
|
||||
};
|
||||
|
||||
use zellij_utils::sessions::{
|
||||
@@ -511,75 +507,6 @@ pub(crate) fn subscribe_to_session(
|
||||
);
|
||||
}
|
||||
|
||||
pub(crate) fn convert_old_config_file(old_config_file: PathBuf) {
|
||||
match File::open(&old_config_file) {
|
||||
Ok(mut handle) => {
|
||||
let mut raw_config_file = String::new();
|
||||
let _ = handle.read_to_string(&mut raw_config_file);
|
||||
match config_yaml_to_config_kdl(&raw_config_file, false) {
|
||||
Ok(kdl_config) => {
|
||||
println!("{}", kdl_config);
|
||||
process::exit(0);
|
||||
},
|
||||
Err(e) => {
|
||||
eprintln!("Failed to convert config: {}", e);
|
||||
process::exit(1);
|
||||
},
|
||||
}
|
||||
},
|
||||
Err(e) => {
|
||||
eprintln!("Failed to open file: {}", e);
|
||||
process::exit(1);
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
pub(crate) fn convert_old_layout_file(old_layout_file: PathBuf) {
|
||||
match File::open(&old_layout_file) {
|
||||
Ok(mut handle) => {
|
||||
let mut raw_layout_file = String::new();
|
||||
let _ = handle.read_to_string(&mut raw_layout_file);
|
||||
match layout_yaml_to_layout_kdl(&raw_layout_file) {
|
||||
Ok(kdl_layout) => {
|
||||
println!("{}", kdl_layout);
|
||||
process::exit(0);
|
||||
},
|
||||
Err(e) => {
|
||||
eprintln!("Failed to convert layout: {}", e);
|
||||
process::exit(1);
|
||||
},
|
||||
}
|
||||
},
|
||||
Err(e) => {
|
||||
eprintln!("Failed to open file: {}", e);
|
||||
process::exit(1);
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
pub(crate) fn convert_old_theme_file(old_theme_file: PathBuf) {
|
||||
match File::open(&old_theme_file) {
|
||||
Ok(mut handle) => {
|
||||
let mut raw_config_file = String::new();
|
||||
let _ = handle.read_to_string(&mut raw_config_file);
|
||||
match config_yaml_to_config_kdl(&raw_config_file, true) {
|
||||
Ok(kdl_config) => {
|
||||
println!("{}", kdl_config);
|
||||
process::exit(0);
|
||||
},
|
||||
Err(e) => {
|
||||
eprintln!("Failed to convert config: {}", e);
|
||||
process::exit(1);
|
||||
},
|
||||
}
|
||||
},
|
||||
Err(e) => {
|
||||
eprintln!("Failed to open file: {}", e);
|
||||
process::exit(1);
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
fn attach_with_cli_client(
|
||||
cli_action: zellij_utils::cli::CliAction,
|
||||
session_name: &str,
|
||||
@@ -683,8 +610,6 @@ fn attach_with_session_name(
|
||||
}
|
||||
|
||||
pub(crate) fn start_client(opts: CliArgs) {
|
||||
// look for old YAML config/layout/theme files and convert them to KDL
|
||||
convert_old_yaml_files(&opts);
|
||||
let (
|
||||
config,
|
||||
client_layout_info,
|
||||
|
||||
-12
@@ -203,18 +203,6 @@ fn main() {
|
||||
commands::send_action_to_session(command_cli_action, opts.session, config);
|
||||
std::process::exit(0);
|
||||
}
|
||||
if let Some(Command::Sessions(Sessions::ConvertConfig { old_config_file })) = opts.command {
|
||||
commands::convert_old_config_file(old_config_file);
|
||||
std::process::exit(0);
|
||||
}
|
||||
if let Some(Command::Sessions(Sessions::ConvertLayout { old_layout_file })) = opts.command {
|
||||
commands::convert_old_layout_file(old_layout_file);
|
||||
std::process::exit(0);
|
||||
}
|
||||
if let Some(Command::Sessions(Sessions::ConvertTheme { old_theme_file })) = opts.command {
|
||||
commands::convert_old_theme_file(old_theme_file);
|
||||
std::process::exit(0);
|
||||
}
|
||||
if let Some(Command::Sessions(Sessions::Pipe {
|
||||
name,
|
||||
payload,
|
||||
|
||||
@@ -13,7 +13,7 @@ use zellij_utils::{
|
||||
position::{Column, Line, Position},
|
||||
};
|
||||
|
||||
use rand::Rng;
|
||||
use rand::RngExt;
|
||||
use regex::Regex;
|
||||
|
||||
use std::fmt::Write;
|
||||
|
||||
+2
-2
@@ -8,8 +8,8 @@ edition.workspace = true
|
||||
anyhow = { workspace = true }
|
||||
serde_json = { workspace = true }
|
||||
prost-build = { version = "0.12.6", default-features = false }
|
||||
toml = { version = "0.5", default-features = false }
|
||||
which = { version = "4.2", default-features = false }
|
||||
toml = { version = "1.1.2", default-features = false, features = ["parse", "serde", "std"] }
|
||||
which = "8"
|
||||
xflags = { version = "0.3.2", default-features = false }
|
||||
# TODO(hartan): Update this once we get a new release. See:
|
||||
# <https://github.com/matklad/xshell/issues/63>
|
||||
|
||||
@@ -268,7 +268,7 @@ pub fn publish(sh: &Shell, flags: flags::Publish) -> anyhow::Result<()> {
|
||||
let manifest = sh
|
||||
.read_file(project_dir.join("Cargo.toml"))
|
||||
.context(err_context)?
|
||||
.parse::<toml::Value>()
|
||||
.parse::<toml::Table>()
|
||||
.context(err_context)?;
|
||||
// Version of the core crate
|
||||
let version = manifest
|
||||
|
||||
@@ -30,7 +30,6 @@ num_cpus = { workspace = true }
|
||||
regex = { workspace = true }
|
||||
serde = { workspace = true }
|
||||
serde_json = { workspace = true }
|
||||
serde_yaml = { version = "0.8", default-features = false }
|
||||
url = { workspace = true }
|
||||
uuid = { workspace = true }
|
||||
include_dir = { workspace = true }
|
||||
@@ -38,7 +37,7 @@ zellij-utils = { workspace = true }
|
||||
tokio = { workspace = true }
|
||||
tokio-util = { workspace = true }
|
||||
isahc = { workspace = true }
|
||||
tokio-tungstenite = "0.20"
|
||||
tokio-tungstenite = "0.28"
|
||||
rustls = { version = "0.23", default-features = false, features = ["std"] }
|
||||
tokio-rustls = "0.26"
|
||||
rustls-pemfile = "2"
|
||||
@@ -63,7 +62,7 @@ windows-sys = { workspace = true, features = [
|
||||
] }
|
||||
|
||||
[dev-dependencies]
|
||||
insta = "1.6.0"
|
||||
insta = "1.48"
|
||||
rcgen = "0.13"
|
||||
serde_json = "1.0"
|
||||
serial_test = "3.0"
|
||||
|
||||
@@ -12,7 +12,6 @@ mod command_is_executing;
|
||||
mod input_handler;
|
||||
mod keyboard_parser;
|
||||
mod nested_reannounce;
|
||||
pub mod old_config_converter;
|
||||
#[cfg(feature = "web_server_capability")]
|
||||
pub mod remote_attach;
|
||||
mod stdin_ansi_parser;
|
||||
@@ -558,7 +557,8 @@ pub async fn run_remote_client_terminal_loop(
|
||||
web_client_id: connections.web_client_id.clone(),
|
||||
payload: WebClientToWebServerControlMessagePayload::TerminalResize(size),
|
||||
})
|
||||
.unwrap(),
|
||||
.unwrap()
|
||||
.into(),
|
||||
)
|
||||
};
|
||||
|
||||
@@ -604,7 +604,8 @@ pub async fn run_remote_client_terminal_loop(
|
||||
payload_bytes,
|
||||
},
|
||||
})
|
||||
.unwrap(),
|
||||
.unwrap()
|
||||
.into(),
|
||||
);
|
||||
if let Err(e) = connections.control_ws.send(control_msg).await {
|
||||
log::error!("Failed to forward nested session frame over control WebSocket: {}", e);
|
||||
@@ -614,7 +615,7 @@ pub async fn run_remote_client_terminal_loop(
|
||||
}
|
||||
}
|
||||
if !cleaned.is_empty() {
|
||||
if let Err(e) = connections.terminal_ws.send(Message::Binary(cleaned)).await {
|
||||
if let Err(e) = connections.terminal_ws.send(Message::Binary(cleaned.into())).await {
|
||||
log::error!("Failed to send stdin to terminal WebSocket: {}", e);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1,354 +0,0 @@
|
||||
use super::{config_yaml_to_config_kdl, layout_yaml_to_layout_kdl};
|
||||
use std::path::PathBuf;
|
||||
use zellij_utils::{
|
||||
cli::CliArgs,
|
||||
home::{find_default_config_dir, get_layout_dir, get_theme_dir},
|
||||
};
|
||||
|
||||
const OLD_CONFIG_NAME: &str = "config.yaml";
|
||||
|
||||
pub fn convert_old_yaml_files(opts: &CliArgs) {
|
||||
let config_dir = opts.config_dir.clone().or_else(find_default_config_dir);
|
||||
let layout_dir = get_layout_dir(config_dir.clone());
|
||||
let theme_dir = get_theme_dir(find_default_config_dir());
|
||||
let specified_config_location = opts.config.as_ref();
|
||||
|
||||
let mut layout_files_to_convert = vec![];
|
||||
let mut theme_files_to_convert = vec![];
|
||||
if let Some(layout) = opts.layout.as_ref() {
|
||||
if layout.extension().map(|s| s.to_string_lossy().to_string()) == Some("yaml".into()) {
|
||||
if layout.exists() {
|
||||
layout_files_to_convert.push((layout.clone(), true));
|
||||
}
|
||||
}
|
||||
}
|
||||
layout_files_to_convert.dedup();
|
||||
if let Some(layout_dir) = layout_dir {
|
||||
if let Ok(files) = std::fs::read_dir(layout_dir) {
|
||||
for file in files {
|
||||
if let Ok(file) = file {
|
||||
if file
|
||||
.path()
|
||||
.extension()
|
||||
.map(|s| s.to_string_lossy().to_string())
|
||||
== Some("yaml".into())
|
||||
{
|
||||
let mut new_file_path = file.path().clone();
|
||||
new_file_path.set_extension("kdl");
|
||||
if !new_file_path.exists() {
|
||||
layout_files_to_convert.push((file.path().clone(), false));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if let Some(theme_dir) = theme_dir {
|
||||
if theme_dir.is_dir() {
|
||||
if let Ok(files) = std::fs::read_dir(theme_dir) {
|
||||
for entry in files.flatten() {
|
||||
if let Some(extension) = entry.path().extension() {
|
||||
if extension == "yaml" {
|
||||
let mut new_file_path = entry.path().clone();
|
||||
new_file_path.set_extension("kdl");
|
||||
if !new_file_path.exists() {
|
||||
theme_files_to_convert.push(entry.path())
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if let Some(config_dir) = config_dir {
|
||||
let yaml_config_location = specified_config_location.cloned().filter(|c| {
|
||||
c.extension().map(|s| s.to_string_lossy().to_string()) == Some("yaml".into())
|
||||
});
|
||||
let specified_yaml_config_location = yaml_config_location.is_some();
|
||||
let config_location =
|
||||
yaml_config_location.unwrap_or_else(|| config_dir.join(OLD_CONFIG_NAME));
|
||||
match convert_yaml(
|
||||
config_location,
|
||||
layout_files_to_convert,
|
||||
theme_files_to_convert,
|
||||
specified_yaml_config_location,
|
||||
) {
|
||||
Ok(should_exit) => {
|
||||
if should_exit {
|
||||
std::process::exit(0);
|
||||
}
|
||||
},
|
||||
Err(e) => {
|
||||
eprintln!("");
|
||||
eprintln!("\u{1b}[1;31mFailed to convert yaml config\u{1b}[m: {}", e);
|
||||
eprintln!("");
|
||||
std::process::exit(1);
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn print_conversion_title_message() {
|
||||
println!("");
|
||||
println!("\u{1b}[1mZellij has moved to a new configuration format (KDL - https://kdl.dev) and has now been run with an old YAML configuration/layout/theme file.\u{1b}[m");
|
||||
}
|
||||
|
||||
fn print_converting_config_message(old_file_name: String, new_file_name: String) {
|
||||
println!(
|
||||
"- Converting configuration file: \u{1b}[1;36m{}\u{1b}[m to the new configuration format at the same location: \u{1b}[1;36m{}\u{1b}[m",
|
||||
old_file_name,
|
||||
new_file_name
|
||||
);
|
||||
}
|
||||
|
||||
fn print_conversion_layouts_message(layout_files_to_convert: Vec<(PathBuf, bool)>) {
|
||||
println!("- Converting the following layout YAML files to KDL files in the same location:");
|
||||
for (layout_file, _was_explicitly_set) in layout_files_to_convert.iter() {
|
||||
let mut new_layout_file_name = layout_file.clone();
|
||||
new_layout_file_name.set_extension("kdl");
|
||||
println!(
|
||||
"\u{1b}[1;36m{}\u{1b}[m => \u{1b}[1;36m{}\u{1b}[m",
|
||||
layout_file.as_path().as_os_str().to_string_lossy(),
|
||||
new_layout_file_name.as_path().as_os_str().to_string_lossy()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
fn print_conversion_themes_message(theme_files_to_convert: Vec<PathBuf>) {
|
||||
println!("- Converting the following theme YAML files to KDL files in the same location:");
|
||||
for theme_file in theme_files_to_convert.iter() {
|
||||
let mut new_theme_file_name = theme_file.clone();
|
||||
new_theme_file_name.set_extension("kdl");
|
||||
println!(
|
||||
"\u{1b}[1;36m{}\u{1b}[m => \u{1b}[1;36m{}\u{1b}[m",
|
||||
theme_file.as_path().as_os_str().to_string_lossy(),
|
||||
new_theme_file_name.as_path().as_os_str().to_string_lossy()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
fn print_no_actions_and_wait_for_user_input() -> Result<(), String> {
|
||||
println!("\u{1b}[1;32mNo actions are required of you. Press ENTER to continue.\u{1b}[m");
|
||||
std::io::stdin()
|
||||
.read_line(&mut String::new())
|
||||
.map_err(|e| format!("Failed to read from STDIN: {:?}", e))?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn print_remain_unmodified_message(will_exit: bool) {
|
||||
println!("The original file(s) will remain unmodified.");
|
||||
if !will_exit {
|
||||
println!("Will then use the new converted file(s) for this and the next runs.");
|
||||
}
|
||||
println!("");
|
||||
}
|
||||
|
||||
fn print_flag_help_message(
|
||||
layout_files_to_convert: Vec<(PathBuf, bool)>,
|
||||
yaml_config_file: &PathBuf,
|
||||
yaml_config_was_explicitly_set: bool,
|
||||
) -> Result<(), String> {
|
||||
println!("\u{1b}[1;32mWhat do you need to do?\u{1b}[m");
|
||||
match layout_files_to_convert
|
||||
.iter()
|
||||
.find(|(_f, explicit)| *explicit)
|
||||
{
|
||||
Some((explicitly_specified_layout, _)) => {
|
||||
let mut kdl_config_file_path = yaml_config_file.clone();
|
||||
let mut kdl_explicitly_specified_layout = explicitly_specified_layout.clone();
|
||||
kdl_config_file_path.set_extension("kdl");
|
||||
kdl_explicitly_specified_layout.set_extension("kdl");
|
||||
if yaml_config_was_explicitly_set {
|
||||
println!("Since both the YAML config and a YAML layout file were explicitly specified, you'll need to re-run Zellij and point it to the new files:");
|
||||
println!(
|
||||
"\u{1b}[1;33mzellij --config {} --layout {}\u{1b}[m",
|
||||
kdl_config_file_path
|
||||
.as_path()
|
||||
.as_os_str()
|
||||
.to_string_lossy()
|
||||
.to_string(),
|
||||
kdl_explicitly_specified_layout
|
||||
.as_path()
|
||||
.as_os_str()
|
||||
.to_string_lossy()
|
||||
.to_string(),
|
||||
);
|
||||
} else {
|
||||
println!("Since a YAML layout was explicitly specified, you'll need to re-run Zellij and point it to the new layout:");
|
||||
println!(
|
||||
"\u{1b}[1;33mzellij --layout {}\u{1b}[m",
|
||||
kdl_explicitly_specified_layout
|
||||
.as_path()
|
||||
.as_os_str()
|
||||
.to_string_lossy()
|
||||
.to_string(),
|
||||
);
|
||||
}
|
||||
},
|
||||
None => {
|
||||
if yaml_config_was_explicitly_set {
|
||||
let mut kdl_config_file_path = yaml_config_file.clone();
|
||||
kdl_config_file_path.set_extension("kdl");
|
||||
println!("Since the YAML config was explicitly specified, you'll need to re-run Zellij and point it to the new config:");
|
||||
println!(
|
||||
"\u{1b}[1;33mzellij --config {}\u{1b}[m",
|
||||
kdl_config_file_path
|
||||
.as_path()
|
||||
.as_os_str()
|
||||
.to_string_lossy()
|
||||
.to_string(),
|
||||
);
|
||||
}
|
||||
},
|
||||
}
|
||||
println!("");
|
||||
println!("\u{1b}[1;32mPress ENTER to continue.\u{1b}[m");
|
||||
std::io::stdin()
|
||||
.read_line(&mut String::new())
|
||||
.map_err(|e| format!("Failed to read from STDIN: {:?}", e))?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn convert_layouts(layout_files_to_convert: Vec<(PathBuf, bool)>) -> Result<(), String> {
|
||||
for (layout_file, _was_explicitly_set) in layout_files_to_convert {
|
||||
let raw_layout_file = std::fs::read_to_string(&layout_file)
|
||||
.map_err(|e| format!("Failed to read layout file {:?}: {:?}", layout_file, e))?;
|
||||
let kdl_layout = layout_yaml_to_layout_kdl(&raw_layout_file)?;
|
||||
let mut new_layout_file = layout_file.clone();
|
||||
new_layout_file.set_extension("kdl");
|
||||
std::fs::write(&new_layout_file, kdl_layout).map_err(|e| {
|
||||
format!(
|
||||
"Failed to write new layout file to {:?}: {:?}",
|
||||
new_layout_file, e
|
||||
)
|
||||
})?;
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn convert_themes(theme_files_to_convert: Vec<PathBuf>) -> Result<(), String> {
|
||||
for theme_file in theme_files_to_convert {
|
||||
let raw_theme_file = std::fs::read_to_string(&theme_file)
|
||||
.map_err(|e| format!("Failed to read theme file {:?}: {:?}", theme_file, e))?;
|
||||
let kdl_theme = config_yaml_to_config_kdl(&raw_theme_file, true)?;
|
||||
let mut new_theme_file = theme_file.clone();
|
||||
new_theme_file.set_extension("kdl");
|
||||
std::fs::write(&new_theme_file, kdl_theme).map_err(|e| {
|
||||
format!(
|
||||
"Failed to write new theme file to {:?}: {:?}",
|
||||
new_theme_file, e
|
||||
)
|
||||
})?;
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn convert_config(yaml_config_file: PathBuf, new_config_file: PathBuf) -> Result<(), String> {
|
||||
if yaml_config_file.exists() && !new_config_file.exists() {
|
||||
let raw_config_file = std::fs::read_to_string(&yaml_config_file)
|
||||
.map_err(|e| format!("Failed to read config file {:?}: {:?}", yaml_config_file, e))?;
|
||||
let kdl_config = config_yaml_to_config_kdl(&raw_config_file, false)?;
|
||||
std::fs::write(&new_config_file, kdl_config).map_err(|e| {
|
||||
format!(
|
||||
"Failed to write new config file to {:?}: {:?}",
|
||||
new_config_file, e
|
||||
)
|
||||
})?;
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn convert_yaml(
|
||||
yaml_config_file: PathBuf,
|
||||
layout_files_to_convert: Vec<(PathBuf, bool)>,
|
||||
theme_files_to_convert: Vec<PathBuf>,
|
||||
yaml_config_was_explicitly_set: bool,
|
||||
) -> Result<bool, String> {
|
||||
let mut should_exit = false;
|
||||
let mut new_config_file = yaml_config_file.clone();
|
||||
new_config_file.set_extension("kdl");
|
||||
let yaml_config_file_exists = yaml_config_file.exists();
|
||||
let explicitly_set_layout_file = layout_files_to_convert
|
||||
.iter()
|
||||
.find(|(_l, was_explicitly_set)| *was_explicitly_set);
|
||||
let layout_was_explicitly_set = explicitly_set_layout_file.is_some();
|
||||
let explicitly_set_layout_files_kdl_equivalent_exists = explicitly_set_layout_file
|
||||
.map(|(layout_file, _)| {
|
||||
let mut layout_file = layout_file.clone();
|
||||
layout_file.set_extension("kdl");
|
||||
if layout_file.exists() {
|
||||
Some(true)
|
||||
} else {
|
||||
None
|
||||
}
|
||||
})
|
||||
.is_some();
|
||||
let new_config_file_exists = new_config_file.exists();
|
||||
let no_need_to_convert_config =
|
||||
(new_config_file_exists && !yaml_config_was_explicitly_set) || !yaml_config_file_exists;
|
||||
if no_need_to_convert_config
|
||||
&& layout_files_to_convert.is_empty()
|
||||
&& theme_files_to_convert.is_empty()
|
||||
&& !layout_was_explicitly_set
|
||||
{
|
||||
// Nothing to do...
|
||||
return Ok(should_exit);
|
||||
}
|
||||
print_conversion_title_message();
|
||||
if yaml_config_file_exists && !new_config_file_exists {
|
||||
print_converting_config_message(
|
||||
yaml_config_file
|
||||
.as_path()
|
||||
.as_os_str()
|
||||
.to_string_lossy()
|
||||
.to_string(),
|
||||
new_config_file
|
||||
.as_path()
|
||||
.as_os_str()
|
||||
.to_string_lossy()
|
||||
.to_string(),
|
||||
);
|
||||
} else if yaml_config_file_exists && new_config_file_exists && yaml_config_was_explicitly_set {
|
||||
return Err(
|
||||
format!(
|
||||
"Specified old YAML format config (--config {}) but a new KDL file exists in that location. To fix, point to it the new file instead: zellij --config {}",
|
||||
yaml_config_file.as_path().as_os_str().to_string_lossy().to_string(),
|
||||
new_config_file.as_path().as_os_str().to_string_lossy().to_string()
|
||||
)
|
||||
);
|
||||
} else if layout_was_explicitly_set && explicitly_set_layout_files_kdl_equivalent_exists {
|
||||
let explicitly_set_layout_file = explicitly_set_layout_file.unwrap().0.clone();
|
||||
let mut explicitly_set_layout_file_kdl_equivalent = explicitly_set_layout_file.clone();
|
||||
explicitly_set_layout_file_kdl_equivalent.set_extension("kdl");
|
||||
return Err(
|
||||
format!(
|
||||
"Specified old YAML format layout (--layout {}) but a new KDL file exists in that location. To fix, point to it the new file instead: zellij --layout {}",
|
||||
explicitly_set_layout_file.display(),
|
||||
explicitly_set_layout_file_kdl_equivalent.display()
|
||||
)
|
||||
);
|
||||
}
|
||||
if !layout_files_to_convert.is_empty() {
|
||||
print_conversion_layouts_message(layout_files_to_convert.clone());
|
||||
}
|
||||
if !theme_files_to_convert.is_empty() {
|
||||
print_conversion_themes_message(theme_files_to_convert.clone());
|
||||
}
|
||||
print_remain_unmodified_message(layout_was_explicitly_set || yaml_config_was_explicitly_set);
|
||||
if layout_was_explicitly_set || yaml_config_was_explicitly_set {
|
||||
print_flag_help_message(
|
||||
layout_files_to_convert.clone(),
|
||||
&yaml_config_file,
|
||||
yaml_config_was_explicitly_set,
|
||||
)?;
|
||||
should_exit = true;
|
||||
} else {
|
||||
print_no_actions_and_wait_for_user_input()?;
|
||||
}
|
||||
convert_layouts(layout_files_to_convert)?;
|
||||
convert_themes(theme_files_to_convert)?;
|
||||
convert_config(yaml_config_file, new_config_file)?;
|
||||
Ok(should_exit)
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
mod convert_old_yaml_files;
|
||||
mod old_config;
|
||||
mod old_layout;
|
||||
pub use convert_old_yaml_files::convert_old_yaml_files;
|
||||
pub use old_config::config_yaml_to_config_kdl;
|
||||
pub use old_layout::layout_yaml_to_layout_kdl;
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,565 +0,0 @@
|
||||
// This is a converter from the old yaml layout to the new KDL layout.
|
||||
//
|
||||
// It is supposed to be mostly self containing - please refrain from adding to it, importing
|
||||
// from it or changing it
|
||||
use super::old_config::{config_yaml_to_config_kdl, OldConfigFromYaml, OldRunCommand};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use std::vec::Vec;
|
||||
use std::{fmt, path::PathBuf};
|
||||
use url::Url;
|
||||
|
||||
fn pane_line(
|
||||
pane_name: Option<&String>,
|
||||
split_size: Option<OldSplitSize>,
|
||||
focus: Option<bool>,
|
||||
borderless: bool,
|
||||
) -> String {
|
||||
let mut pane_line = format!("pane");
|
||||
if let Some(pane_name) = pane_name {
|
||||
// we use debug print here so that quotes and backslashes will be escaped
|
||||
pane_line.push_str(&format!(" name={:?}", pane_name));
|
||||
}
|
||||
if let Some(split_size) = split_size {
|
||||
pane_line.push_str(&format!(" size={}", split_size));
|
||||
}
|
||||
if let Some(focus) = focus {
|
||||
pane_line.push_str(&format!(" focus={}", focus));
|
||||
}
|
||||
if borderless {
|
||||
pane_line.push_str(" borderless=true");
|
||||
}
|
||||
pane_line
|
||||
}
|
||||
|
||||
fn tab_line(
|
||||
pane_name: Option<&String>,
|
||||
split_size: Option<OldSplitSize>,
|
||||
focus: Option<bool>,
|
||||
borderless: bool,
|
||||
) -> String {
|
||||
let mut pane_line = format!("tab");
|
||||
if let Some(pane_name) = pane_name {
|
||||
// we use debug print here so that quotes and backslashes will be escaped
|
||||
pane_line.push_str(&format!(" name={:?}", pane_name));
|
||||
}
|
||||
if let Some(split_size) = split_size {
|
||||
pane_line.push_str(&format!(" size={}", split_size));
|
||||
}
|
||||
if let Some(focus) = focus {
|
||||
pane_line.push_str(&format!(" focus={}", focus));
|
||||
}
|
||||
if borderless {
|
||||
pane_line.push_str(" borderless=true");
|
||||
}
|
||||
pane_line
|
||||
}
|
||||
|
||||
fn pane_line_with_children(
|
||||
pane_name: Option<&String>,
|
||||
split_size: Option<OldSplitSize>,
|
||||
focus: Option<bool>,
|
||||
borderless: bool,
|
||||
split_direction: OldDirection,
|
||||
) -> String {
|
||||
let mut pane_line = format!("pane");
|
||||
if let Some(pane_name) = pane_name {
|
||||
// we use debug print here so that quotes and backslashes will be escaped
|
||||
pane_line.push_str(&format!(" name={:?}", pane_name));
|
||||
}
|
||||
if let Some(split_size) = split_size {
|
||||
pane_line.push_str(&format!(" size={}", split_size));
|
||||
}
|
||||
if let Some(focus) = focus {
|
||||
pane_line.push_str(&format!(" focus={}", focus));
|
||||
}
|
||||
pane_line.push_str(&format!(" split_direction=\"{}\"", split_direction));
|
||||
if borderless {
|
||||
pane_line.push_str(" borderless=true");
|
||||
}
|
||||
pane_line
|
||||
}
|
||||
|
||||
fn pane_command_line(
|
||||
pane_name: Option<&String>,
|
||||
split_size: Option<OldSplitSize>,
|
||||
focus: Option<bool>,
|
||||
borderless: bool,
|
||||
command: &PathBuf,
|
||||
) -> String {
|
||||
let mut pane_line = format!("pane command={:?}", command);
|
||||
if let Some(pane_name) = pane_name {
|
||||
// we use debug print here so that quotes and backslashes will be escaped
|
||||
pane_line.push_str(&format!(" name={:?}", pane_name));
|
||||
}
|
||||
if let Some(split_size) = split_size {
|
||||
pane_line.push_str(&format!(" size={}", split_size));
|
||||
}
|
||||
if let Some(focus) = focus {
|
||||
pane_line.push_str(&format!(" focus={}", focus));
|
||||
}
|
||||
if borderless {
|
||||
pane_line.push_str(" borderless=true");
|
||||
}
|
||||
pane_line
|
||||
}
|
||||
|
||||
fn tab_line_with_children(
|
||||
pane_name: Option<&String>,
|
||||
split_size: Option<OldSplitSize>,
|
||||
focus: Option<bool>,
|
||||
borderless: bool,
|
||||
split_direction: OldDirection,
|
||||
) -> String {
|
||||
let mut pane_line = format!("tab");
|
||||
if let Some(pane_name) = pane_name {
|
||||
// we use debug print here so that quotes and backslashes will be escaped
|
||||
pane_line.push_str(&format!(" name={:?}", pane_name));
|
||||
}
|
||||
if let Some(split_size) = split_size {
|
||||
pane_line.push_str(&format!(" size={}", split_size));
|
||||
}
|
||||
if let Some(focus) = focus {
|
||||
pane_line.push_str(&format!(" focus={}", focus));
|
||||
}
|
||||
pane_line.push_str(&format!(" split_direction=\"{}\"", split_direction));
|
||||
if borderless {
|
||||
pane_line.push_str(" borderless=true");
|
||||
}
|
||||
pane_line
|
||||
}
|
||||
|
||||
fn stringify_template(
|
||||
template: &OldLayoutTemplate,
|
||||
indentation: String,
|
||||
has_no_tabs: bool,
|
||||
is_base: bool,
|
||||
) -> String {
|
||||
let mut stringified = if is_base {
|
||||
String::new()
|
||||
} else {
|
||||
String::from("\n")
|
||||
};
|
||||
if is_base && !template.parts.is_empty() && template.direction == OldDirection::Vertical {
|
||||
// we don't support specifying the split direction in the layout node
|
||||
// eg. layout split_direction="Vertical" { .. } <== this is not supported!!
|
||||
// so we need to add a child wrapper with the split direction instead:
|
||||
// layout {
|
||||
// pane split_direction="Vertical" { .. }
|
||||
// }
|
||||
let child_indentation = format!("{} ", &indentation);
|
||||
stringified.push_str(&stringify_template(
|
||||
template,
|
||||
child_indentation,
|
||||
has_no_tabs,
|
||||
false,
|
||||
));
|
||||
} else if !template.parts.is_empty() {
|
||||
if !is_base {
|
||||
stringified.push_str(&format!(
|
||||
"{}{} {{",
|
||||
indentation,
|
||||
pane_line_with_children(
|
||||
template.pane_name.as_ref(),
|
||||
template.split_size,
|
||||
template.focus,
|
||||
template.borderless,
|
||||
template.direction
|
||||
)
|
||||
));
|
||||
}
|
||||
for part in &template.parts {
|
||||
let child_indentation = format!("{} ", &indentation);
|
||||
stringified.push_str(&stringify_template(
|
||||
&part,
|
||||
child_indentation,
|
||||
has_no_tabs,
|
||||
false,
|
||||
));
|
||||
}
|
||||
if !is_base {
|
||||
stringified.push_str(&format!("\n{}}}", indentation));
|
||||
}
|
||||
} else if template.body && !has_no_tabs {
|
||||
stringified.push_str(&format!("{}children", indentation));
|
||||
} else {
|
||||
match template.run.as_ref() {
|
||||
Some(OldRunFromYaml::Plugin(plugin_from_yaml)) => {
|
||||
stringified.push_str(&format!(
|
||||
"{}{} {{\n",
|
||||
&indentation,
|
||||
pane_line(
|
||||
template.pane_name.as_ref(),
|
||||
template.split_size,
|
||||
template.focus,
|
||||
template.borderless
|
||||
)
|
||||
));
|
||||
stringified.push_str(&format!(
|
||||
"{} plugin location=\"{}\"\n",
|
||||
&indentation, plugin_from_yaml.location
|
||||
));
|
||||
stringified.push_str(&format!("{}}}", &indentation));
|
||||
},
|
||||
Some(OldRunFromYaml::Command(command_from_yaml)) => {
|
||||
stringified.push_str(&format!(
|
||||
"{}{}",
|
||||
&indentation,
|
||||
&pane_command_line(
|
||||
template.pane_name.as_ref(),
|
||||
template.split_size,
|
||||
template.focus,
|
||||
template.borderless,
|
||||
&command_from_yaml.command
|
||||
)
|
||||
));
|
||||
if let Some(cwd) = command_from_yaml.cwd.as_ref() {
|
||||
stringified.push_str(&format!(" cwd={:?}", cwd));
|
||||
}
|
||||
if !command_from_yaml.args.is_empty() {
|
||||
stringified.push_str(" {\n");
|
||||
stringified.push_str(&format!(
|
||||
"{} args {}\n",
|
||||
&indentation,
|
||||
command_from_yaml
|
||||
.args
|
||||
.iter()
|
||||
// we use debug print here so that quotes and backslashes will be
|
||||
// escaped
|
||||
.map(|s| format!("{:?}", s))
|
||||
.collect::<Vec<String>>()
|
||||
.join(" ")
|
||||
));
|
||||
stringified.push_str(&format!("{}}}", &indentation));
|
||||
}
|
||||
},
|
||||
None => {
|
||||
stringified.push_str(&format!(
|
||||
"{}{}",
|
||||
&indentation,
|
||||
pane_line(
|
||||
template.pane_name.as_ref(),
|
||||
template.split_size,
|
||||
template.focus,
|
||||
template.borderless
|
||||
)
|
||||
));
|
||||
},
|
||||
};
|
||||
}
|
||||
stringified
|
||||
}
|
||||
|
||||
fn stringify_tabs(tabs: Vec<OldTabLayout>) -> String {
|
||||
let mut stringified = String::new();
|
||||
for tab in tabs {
|
||||
let child_indentation = String::from(" ");
|
||||
if !tab.parts.is_empty() {
|
||||
stringified.push_str(&format!(
|
||||
"\n{}{} {{",
|
||||
child_indentation,
|
||||
tab_line_with_children(
|
||||
tab.pane_name.as_ref(),
|
||||
tab.split_size,
|
||||
tab.focus,
|
||||
tab.borderless,
|
||||
tab.direction
|
||||
)
|
||||
));
|
||||
let tab_template = OldLayoutTemplate::from(tab);
|
||||
stringified.push_str(&stringify_template(
|
||||
&tab_template,
|
||||
child_indentation.clone(),
|
||||
true,
|
||||
true,
|
||||
));
|
||||
stringified.push_str(&format!("\n{}}}", child_indentation));
|
||||
} else {
|
||||
stringified.push_str(&format!(
|
||||
"\n{}{}",
|
||||
child_indentation,
|
||||
tab_line(
|
||||
tab.pane_name.as_ref(),
|
||||
tab.split_size,
|
||||
tab.focus,
|
||||
tab.borderless
|
||||
)
|
||||
));
|
||||
}
|
||||
}
|
||||
stringified
|
||||
}
|
||||
|
||||
pub fn layout_yaml_to_layout_kdl(raw_yaml_layout: &str) -> Result<String, String> {
|
||||
// returns the raw kdl config
|
||||
let layout_from_yaml: OldLayoutFromYamlIntermediate = serde_yaml::from_str(raw_yaml_layout)
|
||||
.map_err(|e| format!("Failed to parse yaml: {:?}", e))?;
|
||||
let mut kdl_layout = String::new();
|
||||
kdl_layout.push_str("layout {");
|
||||
let template = layout_from_yaml.template;
|
||||
let tabs = layout_from_yaml.tabs;
|
||||
let has_no_tabs = tabs.is_empty()
|
||||
|| tabs.len() == 1 && tabs.get(0).map(|t| t.parts.is_empty()).unwrap_or(false);
|
||||
if has_no_tabs {
|
||||
let indentation = String::from("");
|
||||
kdl_layout.push_str(&stringify_template(
|
||||
&template,
|
||||
indentation,
|
||||
has_no_tabs,
|
||||
true,
|
||||
));
|
||||
} else {
|
||||
kdl_layout.push_str("\n default_tab_template {");
|
||||
let indentation = String::from(" ");
|
||||
kdl_layout.push_str(&stringify_template(
|
||||
&template,
|
||||
indentation,
|
||||
has_no_tabs,
|
||||
true,
|
||||
));
|
||||
kdl_layout.push_str("\n }");
|
||||
kdl_layout.push_str(&stringify_tabs(tabs));
|
||||
}
|
||||
kdl_layout.push_str("\n}");
|
||||
let layout_config = config_yaml_to_config_kdl(raw_yaml_layout, true)?;
|
||||
if let Some(session_name) = layout_from_yaml.session.name {
|
||||
// we use debug print here so that quotes and backslashes will be escaped
|
||||
kdl_layout.push_str(&format!("\nsession_name {:?}", session_name));
|
||||
if let Some(attach_to_session) = layout_from_yaml.session.attach {
|
||||
kdl_layout.push_str(&format!("\nattach_to_session {}", attach_to_session));
|
||||
}
|
||||
}
|
||||
if !layout_config.is_empty() {
|
||||
kdl_layout.push('\n');
|
||||
}
|
||||
kdl_layout.push_str(&layout_config);
|
||||
Ok(kdl_layout)
|
||||
}
|
||||
|
||||
#[derive(Debug, PartialEq, Eq, Serialize, Deserialize, Clone, Copy)]
|
||||
pub enum OldDirection {
|
||||
#[serde(alias = "horizontal")]
|
||||
Horizontal,
|
||||
#[serde(alias = "vertical")]
|
||||
Vertical,
|
||||
}
|
||||
|
||||
impl fmt::Display for OldDirection {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> Result<(), fmt::Error> {
|
||||
match self {
|
||||
Self::Horizontal => write!(f, "Horizontal"),
|
||||
Self::Vertical => write!(f, "Vertical"),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, Clone, Copy, PartialEq, Eq)]
|
||||
pub enum OldSplitSize {
|
||||
#[serde(alias = "percent")]
|
||||
Percent(u64), // 1 to 100
|
||||
#[serde(alias = "fixed")]
|
||||
Fixed(usize), // An absolute number of columns or rows
|
||||
}
|
||||
|
||||
impl fmt::Display for OldSplitSize {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> Result<(), fmt::Error> {
|
||||
match self {
|
||||
Self::Percent(percent) => write!(f, "\"{}%\"", percent),
|
||||
Self::Fixed(fixed_size) => write!(f, "{}", fixed_size),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq, Eq)]
|
||||
pub enum OldRunFromYaml {
|
||||
#[serde(rename = "plugin")]
|
||||
Plugin(OldRunPluginFromYaml),
|
||||
#[serde(rename = "command")]
|
||||
Command(OldRunCommand),
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq, Eq)]
|
||||
pub struct OldRunPluginFromYaml {
|
||||
#[serde(default)]
|
||||
pub _allow_exec_host_cmd: bool,
|
||||
pub location: Url,
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
|
||||
#[serde(default)]
|
||||
pub struct OldLayoutFromYamlIntermediate {
|
||||
#[serde(default)]
|
||||
pub template: OldLayoutTemplate,
|
||||
#[serde(default)]
|
||||
pub borderless: bool,
|
||||
#[serde(default)]
|
||||
pub tabs: Vec<OldTabLayout>,
|
||||
#[serde(default)]
|
||||
pub session: OldSessionFromYaml,
|
||||
#[serde(flatten)]
|
||||
pub config: Option<OldConfigFromYaml>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq, Default)]
|
||||
#[serde(default)]
|
||||
pub struct OldLayoutFromYaml {
|
||||
#[serde(default)]
|
||||
pub session: OldSessionFromYaml,
|
||||
#[serde(default)]
|
||||
pub template: OldLayoutTemplate,
|
||||
#[serde(default)]
|
||||
pub borderless: bool,
|
||||
#[serde(default)]
|
||||
pub tabs: Vec<OldTabLayout>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Default, Serialize, Deserialize, Clone, PartialEq)]
|
||||
pub struct OldSessionFromYaml {
|
||||
pub name: Option<String>,
|
||||
#[serde(default = "default_as_some_true")]
|
||||
pub attach: Option<bool>,
|
||||
}
|
||||
|
||||
fn default_as_some_true() -> Option<bool> {
|
||||
Some(true)
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
|
||||
pub struct OldLayoutTemplate {
|
||||
pub direction: OldDirection,
|
||||
#[serde(default)]
|
||||
pub pane_name: Option<String>,
|
||||
#[serde(default)]
|
||||
pub borderless: bool,
|
||||
#[serde(default)]
|
||||
pub parts: Vec<OldLayoutTemplate>,
|
||||
#[serde(default)]
|
||||
pub body: bool,
|
||||
pub split_size: Option<OldSplitSize>,
|
||||
pub focus: Option<bool>,
|
||||
pub run: Option<OldRunFromYaml>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq, Eq)]
|
||||
pub struct OldTabLayout {
|
||||
#[serde(default)]
|
||||
pub direction: OldDirection,
|
||||
pub pane_name: Option<String>,
|
||||
#[serde(default)]
|
||||
pub borderless: bool,
|
||||
#[serde(default)]
|
||||
pub parts: Vec<OldTabLayout>,
|
||||
pub split_size: Option<OldSplitSize>,
|
||||
#[serde(default)]
|
||||
pub name: String,
|
||||
pub focus: Option<bool>,
|
||||
pub run: Option<OldRunFromYaml>,
|
||||
}
|
||||
|
||||
impl From<OldTabLayout> for OldLayoutTemplate {
|
||||
fn from(old_tab_layout: OldTabLayout) -> Self {
|
||||
OldLayoutTemplate {
|
||||
direction: old_tab_layout.direction,
|
||||
pane_name: old_tab_layout.pane_name.clone(),
|
||||
borderless: old_tab_layout.borderless,
|
||||
parts: old_tab_layout.parts.iter().map(|o| o.into()).collect(),
|
||||
split_size: old_tab_layout.split_size,
|
||||
focus: old_tab_layout.focus,
|
||||
run: old_tab_layout.run.clone(),
|
||||
body: false,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<&OldTabLayout> for OldLayoutTemplate {
|
||||
fn from(old_tab_layout: &OldTabLayout) -> Self {
|
||||
OldLayoutTemplate {
|
||||
direction: old_tab_layout.direction,
|
||||
pane_name: old_tab_layout.pane_name.clone(),
|
||||
borderless: old_tab_layout.borderless,
|
||||
parts: old_tab_layout.parts.iter().map(|o| o.into()).collect(),
|
||||
split_size: old_tab_layout.split_size,
|
||||
focus: old_tab_layout.focus,
|
||||
run: old_tab_layout.run.clone(),
|
||||
body: false,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<&mut OldTabLayout> for OldLayoutTemplate {
|
||||
fn from(old_tab_layout: &mut OldTabLayout) -> Self {
|
||||
OldLayoutTemplate {
|
||||
direction: old_tab_layout.direction,
|
||||
pane_name: old_tab_layout.pane_name.clone(),
|
||||
borderless: old_tab_layout.borderless,
|
||||
parts: old_tab_layout.parts.iter().map(|o| o.into()).collect(),
|
||||
split_size: old_tab_layout.split_size,
|
||||
focus: old_tab_layout.focus,
|
||||
run: old_tab_layout.run.clone(),
|
||||
body: false,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<OldLayoutFromYamlIntermediate> for OldLayoutFromYaml {
|
||||
fn from(layout_from_yaml_intermediate: OldLayoutFromYamlIntermediate) -> Self {
|
||||
Self {
|
||||
template: layout_from_yaml_intermediate.template,
|
||||
borderless: layout_from_yaml_intermediate.borderless,
|
||||
tabs: layout_from_yaml_intermediate.tabs,
|
||||
session: layout_from_yaml_intermediate.session,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<OldLayoutFromYaml> for OldLayoutFromYamlIntermediate {
|
||||
fn from(layout_from_yaml: OldLayoutFromYaml) -> Self {
|
||||
Self {
|
||||
template: layout_from_yaml.template,
|
||||
borderless: layout_from_yaml.borderless,
|
||||
tabs: layout_from_yaml.tabs,
|
||||
config: None,
|
||||
session: layout_from_yaml.session,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Default for OldLayoutFromYamlIntermediate {
|
||||
fn default() -> Self {
|
||||
OldLayoutFromYaml::default().into()
|
||||
}
|
||||
}
|
||||
|
||||
impl Default for OldLayoutTemplate {
|
||||
fn default() -> Self {
|
||||
Self {
|
||||
direction: OldDirection::Horizontal,
|
||||
pane_name: None,
|
||||
body: false,
|
||||
borderless: false,
|
||||
parts: vec![OldLayoutTemplate {
|
||||
direction: OldDirection::Horizontal,
|
||||
pane_name: None,
|
||||
body: true,
|
||||
borderless: false,
|
||||
split_size: None,
|
||||
focus: None,
|
||||
run: None,
|
||||
parts: vec![],
|
||||
}],
|
||||
split_size: None,
|
||||
focus: None,
|
||||
run: None,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Default for OldDirection {
|
||||
fn default() -> Self {
|
||||
OldDirection::Horizontal
|
||||
}
|
||||
}
|
||||
|
||||
// The unit test location.
|
||||
#[path = "./unit/convert_layout_tests.rs"]
|
||||
#[cfg(test)]
|
||||
mod convert_layout_test;
|
||||
@@ -1,126 +0,0 @@
|
||||
use crate::old_config_converter::config_yaml_to_config_kdl;
|
||||
use insta::assert_snapshot;
|
||||
use std::path::PathBuf;
|
||||
use std::{fs::File, io::prelude::*};
|
||||
|
||||
#[test]
|
||||
fn properly_convert_default_config() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_default_yaml_config.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = config_yaml_to_config_kdl(&raw_config_file, false)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn convert_config_with_custom_options() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_yaml_config_with_custom_options.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = config_yaml_to_config_kdl(&raw_config_file, false)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn convert_config_with_keybind_unbinds_in_mode() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_yaml_config_with_unbinds_in_mode.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = config_yaml_to_config_kdl(&raw_config_file, false)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn convert_config_with_global_keybind_unbinds() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!("{}/src/old_config_converter/unit/fixtures/old_yaml_config_with_global_keybind_unbinds.yaml", env!("CARGO_MANIFEST_DIR")));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = config_yaml_to_config_kdl(&raw_config_file, false)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn convert_config_with_unbind_all_keys_per_mode() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!("{}/src/old_config_converter/unit/fixtures/old_yaml_config_with_unbind_all_keys_per_mode.yaml", env!("CARGO_MANIFEST_DIR")));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = config_yaml_to_config_kdl(&raw_config_file, false)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn convert_config_with_env_variables() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_yaml_config_with_env_variables.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = config_yaml_to_config_kdl(&raw_config_file, false)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn convert_config_with_ui_config() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_yaml_config_with_ui.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = config_yaml_to_config_kdl(&raw_config_file, false)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn convert_config_with_themes_config() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_yaml_config_with_themes.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = config_yaml_to_config_kdl(&raw_config_file, false)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
@@ -1,158 +0,0 @@
|
||||
use crate::old_config_converter::layout_yaml_to_layout_kdl;
|
||||
use insta::assert_snapshot;
|
||||
use std::path::PathBuf;
|
||||
use std::{fs::File, io::prelude::*};
|
||||
|
||||
#[test]
|
||||
fn properly_convert_default_layout() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_default_yaml_layout.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn properly_convert_layout_with_session_name() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_yaml_layout_with_session_name.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn properly_convert_layout_with_session_name_and_attach_false() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!("{}/src/old_config_converter/unit/fixtures/old_yaml_layout_with_session_name_and_attach_false.yaml", env!("CARGO_MANIFEST_DIR")));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn properly_convert_layout_with_config() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_yaml_layout_with_config.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn properly_convert_layout_with_config_and_session_name() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!("{}/src/old_config_converter/unit/fixtures/old_yaml_layout_with_config_and_session_name.yaml", env!("CARGO_MANIFEST_DIR")));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn properly_convert_layout_example_1() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/multiple_tabs_layout.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn properly_convert_layout_example_2() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/multiple_tabs_layout_htop_command.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn properly_convert_layout_example_3() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/run_htop_layout.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn properly_convert_layout_example_4() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/run_htop_layout_with_plugins.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn properly_convert_layout_with_command_quoted_args() -> Result<(), String> {
|
||||
let fixture = PathBuf::from(format!(
|
||||
"{}/src/old_config_converter/unit/fixtures/old_yaml_layout_with_quoted_args.yaml",
|
||||
env!("CARGO_MANIFEST_DIR")
|
||||
));
|
||||
let mut handle = File::open(&fixture).map_err(|e| format!("{}", e))?;
|
||||
let mut raw_config_file = String::new();
|
||||
handle
|
||||
.read_to_string(&mut raw_config_file)
|
||||
.map_err(|e| format!("{}", e))?;
|
||||
let kdl_config = layout_yaml_to_layout_kdl(&raw_config_file)?;
|
||||
assert_snapshot!(format!("{}", kdl_config));
|
||||
Ok(())
|
||||
}
|
||||
@@ -1,90 +0,0 @@
|
||||
---
|
||||
template:
|
||||
direction: Horizontal
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Fixed: 1
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:tab-bar"
|
||||
borderless: true
|
||||
- direction: Vertical
|
||||
body: true
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Fixed: 2
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:status-bar"
|
||||
borderless: true
|
||||
|
||||
tabs:
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Horizontal
|
||||
split_size:
|
||||
Percent: 50
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
- direction: Vertical
|
||||
- direction: Vertical
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 20
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:strider"
|
||||
- direction: Horizontal
|
||||
split_size:
|
||||
Percent: 80
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 40
|
||||
- direction: Horizontal
|
||||
split_size:
|
||||
Percent: 60
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
-93
@@ -1,93 +0,0 @@
|
||||
---
|
||||
template:
|
||||
direction: Horizontal
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Fixed: 1
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:tab-bar"
|
||||
borderless: true
|
||||
- direction: Vertical
|
||||
body: true
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Fixed: 2
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:status-bar"
|
||||
borderless: true
|
||||
|
||||
tabs:
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
run:
|
||||
command: {cmd: htop}
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Horizontal
|
||||
split_size:
|
||||
Percent: 50
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
- direction: Vertical
|
||||
run:
|
||||
command: {cmd: htop, args: ["-C"]}
|
||||
- direction: Vertical
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 20
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:strider"
|
||||
- direction: Horizontal
|
||||
split_size:
|
||||
Percent: 80
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 40
|
||||
- direction: Horizontal
|
||||
split_size:
|
||||
Percent: 60
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
@@ -1,639 +0,0 @@
|
||||
---
|
||||
# Configuration for zellij.
|
||||
|
||||
# In order to troubleshoot your configuration try using the following command:
|
||||
# `zellij setup --check`
|
||||
# It should show current config locations and features that are enabled.
|
||||
|
||||
keybinds:
|
||||
unbind: true
|
||||
normal:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [NewPane: ]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right ]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up, ]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
locked:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'g',]
|
||||
resize:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'n', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [Resize: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [Resize: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [Resize: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [Resize: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [Resize: Increase,]
|
||||
key: [Char: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Char: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [Char: '-']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
pane:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'p', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [MoveFocus: Left,]
|
||||
key: [ Char: 'h', Left,]
|
||||
- action: [MoveFocus: Right,]
|
||||
key: [ Char: 'l', Right,]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Char: 'j', Down,]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Char: 'k', Up,]
|
||||
- action: [SwitchFocus,]
|
||||
key: [Char: 'p']
|
||||
- action: [NewPane: , SwitchToMode: Normal,]
|
||||
key: [Char: 'n',]
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: 'r',]
|
||||
- action: [CloseFocus, SwitchToMode: Normal,]
|
||||
key: [Char: 'x',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'f',]
|
||||
- action: [TogglePaneFrames, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [ToggleFloatingPanes, SwitchToMode: Normal,]
|
||||
key: [Char: 'w']
|
||||
- action: [TogglePaneEmbedOrFloating, SwitchToMode: Normal,]
|
||||
key: [Char: 'e']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: RenamePane, PaneNameInput: [0],]
|
||||
key: [Char: 'c']
|
||||
move:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'h', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [MovePane: ,]
|
||||
key: [Char: 'n', Char: "\t",]
|
||||
- action: [MovePane: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [MovePane: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [MovePane: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [MovePane: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tab:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 't', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: 'r']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [GoToPreviousTab,]
|
||||
key: [ Char: 'h', Left, Up, Char: 'k',]
|
||||
- action: [GoToNextTab,]
|
||||
key: [ Char: 'l', Right,Down, Char: 'j']
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'n',]
|
||||
- action: [CloseTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'x',]
|
||||
- action: [ToggleActiveSyncTab, SwitchToMode: Normal,]
|
||||
key: [Char: 's']
|
||||
- action: [GoToTab: 1, SwitchToMode: Normal,]
|
||||
key: [ Char: '1',]
|
||||
- action: [GoToTab: 2, SwitchToMode: Normal,]
|
||||
key: [ Char: '2',]
|
||||
- action: [GoToTab: 3, SwitchToMode: Normal,]
|
||||
key: [ Char: '3',]
|
||||
- action: [GoToTab: 4, SwitchToMode: Normal,]
|
||||
key: [ Char: '4',]
|
||||
- action: [GoToTab: 5, SwitchToMode: Normal,]
|
||||
key: [ Char: '5',]
|
||||
- action: [GoToTab: 6, SwitchToMode: Normal,]
|
||||
key: [ Char: '6',]
|
||||
- action: [GoToTab: 7, SwitchToMode: Normal,]
|
||||
key: [ Char: '7',]
|
||||
- action: [GoToTab: 8, SwitchToMode: Normal,]
|
||||
key: [ Char: '8',]
|
||||
- action: [GoToTab: 9, SwitchToMode: Normal,]
|
||||
key: [ Char: '9',]
|
||||
- action: [ToggleTab]
|
||||
key: [ Char: "\t" ]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
scroll:
|
||||
- action: [EditScrollback, SwitchToMode: Normal]
|
||||
key: [Char: 'e']
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
entersearch:
|
||||
- action: [SwitchToMode: Search,]
|
||||
key: [Char: "\n"]
|
||||
- action: [SearchInput: [27], SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 'c', Esc]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
search:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
- action: [Search: Down]
|
||||
key: [Char: 'n']
|
||||
- action: [Search: Up]
|
||||
key: [Char: 'p']
|
||||
- action: [SearchToggleOption: CaseSensitivity]
|
||||
key: [Char: 'c']
|
||||
- action: [SearchToggleOption: Wrap]
|
||||
key: [Char: 'w']
|
||||
- action: [SearchToggleOption: WholeWord]
|
||||
key: [Char: 'o']
|
||||
renametab:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenameTab , SwitchToMode: Tab,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
renamepane:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenamePane , SwitchToMode: Pane,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
session:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tmux:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [ Char: '[']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Write: [2,], SwitchToMode: Normal]
|
||||
key: [Ctrl: 'b']
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: "\"",]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: '%',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'c',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: ',']
|
||||
- action: [GoToPreviousTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'p']
|
||||
- action: [GoToNextTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'n']
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Left,]
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Right,]
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Down,]
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Up,]
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Char: 'h']
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Char: 'l']
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Char: 'j']
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Char: 'k']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [FocusNextPane,]
|
||||
key: [ Char: 'o']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
plugins:
|
||||
- path: tab-bar
|
||||
tag: tab-bar
|
||||
- path: status-bar
|
||||
tag: status-bar
|
||||
- path: strider
|
||||
tag: strider
|
||||
- path: compact-bar
|
||||
tag: compact-bar
|
||||
|
||||
# Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
# eg. when terminal window with an active zellij session is closed
|
||||
# Options:
|
||||
# - detach (Default)
|
||||
# - quit
|
||||
# on_force_close: quit
|
||||
|
||||
# Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
# Options:
|
||||
# - true
|
||||
# - false (Default)
|
||||
# simplified_ui: true
|
||||
|
||||
# Choose the path to the default shell that zellij will use for opening new panes
|
||||
# Default: $SHELL
|
||||
# default_shell: fish
|
||||
|
||||
# Toggle between having pane frames around the panes
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#pane_frames: true
|
||||
|
||||
# Choose the theme that is specified in the themes section.
|
||||
# For some examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||
# Default: default
|
||||
#theme: default
|
||||
|
||||
# Choose the mode that zellij uses when starting up.
|
||||
# Default: normal
|
||||
#default_mode: locked
|
||||
|
||||
# Toggle enabling the mouse mode.
|
||||
# On certain configurations, or terminals this could
|
||||
# potentially interfere with copying text.
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#mouse_mode: false
|
||||
|
||||
# Configure the scroll back buffer size
|
||||
# This is the number of lines zellij stores for each pane in the scroll back
|
||||
# buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
# Valid values: positive integers
|
||||
# Default value: 10000
|
||||
#scroll_buffer_size: 10000
|
||||
|
||||
# Provide a command to execute when copying text. The text will be piped to
|
||||
# the stdin of the program to perform the copy. This can be used with
|
||||
# terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
# that will be used by default if this option is not set.
|
||||
# Examples:
|
||||
#copy_command: "xclip -selection clipboard" # x11
|
||||
#copy_command: "wl-copy" # wayland
|
||||
#copy_command: "pbcopy" # osx
|
||||
|
||||
# Choose the destination for copied text
|
||||
# Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
# Does not apply when using copy_command.
|
||||
# Options:
|
||||
# - system (default)
|
||||
# - primary
|
||||
#copy_clipboard: primary
|
||||
|
||||
# Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
#copy_on_select: true
|
||||
|
||||
# Path to the default editor to use to edit pane scrollbuffer
|
||||
# scrollback_editor: /usr/bin/nano
|
||||
@@ -1,22 +0,0 @@
|
||||
---
|
||||
template:
|
||||
direction: Horizontal
|
||||
parts:
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 1
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:tab-bar"
|
||||
- direction: Vertical
|
||||
body: true
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 2
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:status-bar"
|
||||
tabs:
|
||||
- direction: Vertical
|
||||
-639
@@ -1,639 +0,0 @@
|
||||
---
|
||||
# Configuration for zellij.
|
||||
|
||||
# In order to troubleshoot your configuration try using the following command:
|
||||
# `zellij setup --check`
|
||||
# It should show current config locations and features that are enabled.
|
||||
|
||||
keybinds:
|
||||
unbind: true
|
||||
normal:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [NewPane: ]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right ]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up, ]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
locked:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'g',]
|
||||
resize:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'n', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [Resize: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [Resize: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [Resize: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [Resize: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [Resize: Increase,]
|
||||
key: [Char: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Char: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [Char: '-']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
pane:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'p', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [MoveFocus: Left,]
|
||||
key: [ Char: 'h', Left,]
|
||||
- action: [MoveFocus: Right,]
|
||||
key: [ Char: 'l', Right,]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Char: 'j', Down,]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Char: 'k', Up,]
|
||||
- action: [SwitchFocus,]
|
||||
key: [Char: 'p']
|
||||
- action: [NewPane: , SwitchToMode: Normal,]
|
||||
key: [Char: 'n',]
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: 'r',]
|
||||
- action: [CloseFocus, SwitchToMode: Normal,]
|
||||
key: [Char: 'x',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'f',]
|
||||
- action: [TogglePaneFrames, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [ToggleFloatingPanes, SwitchToMode: Normal,]
|
||||
key: [Char: 'w']
|
||||
- action: [TogglePaneEmbedOrFloating, SwitchToMode: Normal,]
|
||||
key: [Char: 'e']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: RenamePane, PaneNameInput: [0],]
|
||||
key: [Char: 'c']
|
||||
move:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'h', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [MovePane: ,]
|
||||
key: [Char: 'n', Char: "\t",]
|
||||
- action: [MovePane: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [MovePane: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [MovePane: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [MovePane: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tab:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 't', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: 'r']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [GoToPreviousTab,]
|
||||
key: [ Char: 'h', Left, Up, Char: 'k',]
|
||||
- action: [GoToNextTab,]
|
||||
key: [ Char: 'l', Right,Down, Char: 'j']
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'n',]
|
||||
- action: [CloseTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'x',]
|
||||
- action: [ToggleActiveSyncTab, SwitchToMode: Normal,]
|
||||
key: [Char: 's']
|
||||
- action: [GoToTab: 1, SwitchToMode: Normal,]
|
||||
key: [ Char: '1',]
|
||||
- action: [GoToTab: 2, SwitchToMode: Normal,]
|
||||
key: [ Char: '2',]
|
||||
- action: [GoToTab: 3, SwitchToMode: Normal,]
|
||||
key: [ Char: '3',]
|
||||
- action: [GoToTab: 4, SwitchToMode: Normal,]
|
||||
key: [ Char: '4',]
|
||||
- action: [GoToTab: 5, SwitchToMode: Normal,]
|
||||
key: [ Char: '5',]
|
||||
- action: [GoToTab: 6, SwitchToMode: Normal,]
|
||||
key: [ Char: '6',]
|
||||
- action: [GoToTab: 7, SwitchToMode: Normal,]
|
||||
key: [ Char: '7',]
|
||||
- action: [GoToTab: 8, SwitchToMode: Normal,]
|
||||
key: [ Char: '8',]
|
||||
- action: [GoToTab: 9, SwitchToMode: Normal,]
|
||||
key: [ Char: '9',]
|
||||
- action: [ToggleTab]
|
||||
key: [ Char: "\t" ]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
scroll:
|
||||
- action: [EditScrollback, SwitchToMode: Normal]
|
||||
key: [Char: 'e']
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
entersearch:
|
||||
- action: [SwitchToMode: Search,]
|
||||
key: [Char: "\n"]
|
||||
- action: [SearchInput: [27], SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 'c', Esc]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
search:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
- action: [Search: Down]
|
||||
key: [Char: 'n']
|
||||
- action: [Search: Up]
|
||||
key: [Char: 'p']
|
||||
- action: [SearchToggleOption: CaseSensitivity]
|
||||
key: [Char: 'c']
|
||||
- action: [SearchToggleOption: Wrap]
|
||||
key: [Char: 'w']
|
||||
- action: [SearchToggleOption: WholeWord]
|
||||
key: [Char: 'o']
|
||||
renametab:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenameTab , SwitchToMode: Tab,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
renamepane:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenamePane , SwitchToMode: Pane,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
session:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tmux:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [ Char: '[']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Write: [2,], SwitchToMode: Normal]
|
||||
key: [Ctrl: 'b']
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: "\"",]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: '%',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'c',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: ',']
|
||||
- action: [GoToPreviousTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'p']
|
||||
- action: [GoToNextTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'n']
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Left,]
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Right,]
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Down,]
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Up,]
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Char: 'h']
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Char: 'l']
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Char: 'j']
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Char: 'k']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [FocusNextPane,]
|
||||
key: [ Char: 'o']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
plugins:
|
||||
- path: tab-bar
|
||||
tag: tab-bar
|
||||
- path: status-bar
|
||||
tag: status-bar
|
||||
- path: strider
|
||||
tag: strider
|
||||
- path: compact-bar
|
||||
tag: compact-bar
|
||||
|
||||
# Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
# eg. when terminal window with an active zellij session is closed
|
||||
# Options:
|
||||
# - detach (Default)
|
||||
# - quit
|
||||
on_force_close: quit
|
||||
|
||||
# Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
# Options:
|
||||
# - true
|
||||
# - false (Default)
|
||||
simplified_ui: true
|
||||
|
||||
# Choose the path to the default shell that zellij will use for opening new panes
|
||||
# Default: $SHELL
|
||||
default_shell: fish
|
||||
|
||||
# Toggle between having pane frames around the panes
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
pane_frames: true
|
||||
|
||||
# Choose the theme that is specified in the themes section.
|
||||
# For some examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||
# Default: default
|
||||
theme: default
|
||||
|
||||
# Choose the mode that zellij uses when starting up.
|
||||
# Default: normal
|
||||
default_mode: locked
|
||||
|
||||
# Toggle enabling the mouse mode.
|
||||
# On certain configurations, or terminals this could
|
||||
# potentially interfere with copying text.
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
mouse_mode: false
|
||||
|
||||
# Configure the scroll back buffer size
|
||||
# This is the number of lines zellij stores for each pane in the scroll back
|
||||
# buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
# Valid values: positive integers
|
||||
# Default value: 10000
|
||||
scroll_buffer_size: 10000
|
||||
|
||||
# Provide a command to execute when copying text. The text will be piped to
|
||||
# the stdin of the program to perform the copy. This can be used with
|
||||
# terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
# that will be used by default if this option is not set.
|
||||
# Examples:
|
||||
#copy_command: "xclip -selection clipboard" # x11
|
||||
#copy_command: "wl-copy" # wayland
|
||||
copy_command: "pbcopy" # osx
|
||||
|
||||
# Choose the destination for copied text
|
||||
# Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
# Does not apply when using copy_command.
|
||||
# Options:
|
||||
# - system (default)
|
||||
# - primary
|
||||
copy_clipboard: primary
|
||||
|
||||
# Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
copy_on_select: true
|
||||
|
||||
# Path to the default editor to use to edit pane scrollbuffer
|
||||
scrollback_editor: /usr/bin/nano
|
||||
-644
@@ -1,644 +0,0 @@
|
||||
---
|
||||
# Configuration for zellij.
|
||||
|
||||
# In order to troubleshoot your configuration try using the following command:
|
||||
# `zellij setup --check`
|
||||
# It should show current config locations and features that are enabled.
|
||||
|
||||
keybinds:
|
||||
unbind: true
|
||||
normal:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [NewPane: ]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right ]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up, ]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
locked:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'g',]
|
||||
resize:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'n', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [Resize: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [Resize: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [Resize: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [Resize: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [Resize: Increase,]
|
||||
key: [Char: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Char: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [Char: '-']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
pane:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'p', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [MoveFocus: Left,]
|
||||
key: [ Char: 'h', Left,]
|
||||
- action: [MoveFocus: Right,]
|
||||
key: [ Char: 'l', Right,]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Char: 'j', Down,]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Char: 'k', Up,]
|
||||
- action: [SwitchFocus,]
|
||||
key: [Char: 'p']
|
||||
- action: [NewPane: , SwitchToMode: Normal,]
|
||||
key: [Char: 'n',]
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: 'r',]
|
||||
- action: [CloseFocus, SwitchToMode: Normal,]
|
||||
key: [Char: 'x',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'f',]
|
||||
- action: [TogglePaneFrames, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [ToggleFloatingPanes, SwitchToMode: Normal,]
|
||||
key: [Char: 'w']
|
||||
- action: [TogglePaneEmbedOrFloating, SwitchToMode: Normal,]
|
||||
key: [Char: 'e']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: RenamePane, PaneNameInput: [0],]
|
||||
key: [Char: 'c']
|
||||
move:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'h', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [MovePane: ,]
|
||||
key: [Char: 'n', Char: "\t",]
|
||||
- action: [MovePane: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [MovePane: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [MovePane: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [MovePane: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tab:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 't', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: 'r']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [GoToPreviousTab,]
|
||||
key: [ Char: 'h', Left, Up, Char: 'k',]
|
||||
- action: [GoToNextTab,]
|
||||
key: [ Char: 'l', Right,Down, Char: 'j']
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'n',]
|
||||
- action: [CloseTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'x',]
|
||||
- action: [ToggleActiveSyncTab, SwitchToMode: Normal,]
|
||||
key: [Char: 's']
|
||||
- action: [GoToTab: 1, SwitchToMode: Normal,]
|
||||
key: [ Char: '1',]
|
||||
- action: [GoToTab: 2, SwitchToMode: Normal,]
|
||||
key: [ Char: '2',]
|
||||
- action: [GoToTab: 3, SwitchToMode: Normal,]
|
||||
key: [ Char: '3',]
|
||||
- action: [GoToTab: 4, SwitchToMode: Normal,]
|
||||
key: [ Char: '4',]
|
||||
- action: [GoToTab: 5, SwitchToMode: Normal,]
|
||||
key: [ Char: '5',]
|
||||
- action: [GoToTab: 6, SwitchToMode: Normal,]
|
||||
key: [ Char: '6',]
|
||||
- action: [GoToTab: 7, SwitchToMode: Normal,]
|
||||
key: [ Char: '7',]
|
||||
- action: [GoToTab: 8, SwitchToMode: Normal,]
|
||||
key: [ Char: '8',]
|
||||
- action: [GoToTab: 9, SwitchToMode: Normal,]
|
||||
key: [ Char: '9',]
|
||||
- action: [ToggleTab]
|
||||
key: [ Char: "\t" ]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
scroll:
|
||||
- action: [EditScrollback, SwitchToMode: Normal]
|
||||
key: [Char: 'e']
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
entersearch:
|
||||
- action: [SwitchToMode: Search,]
|
||||
key: [Char: "\n"]
|
||||
- action: [SearchInput: [27], SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 'c', Esc]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
search:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
- action: [Search: Down]
|
||||
key: [Char: 'n']
|
||||
- action: [Search: Up]
|
||||
key: [Char: 'p']
|
||||
- action: [SearchToggleOption: CaseSensitivity]
|
||||
key: [Char: 'c']
|
||||
- action: [SearchToggleOption: Wrap]
|
||||
key: [Char: 'w']
|
||||
- action: [SearchToggleOption: WholeWord]
|
||||
key: [Char: 'o']
|
||||
renametab:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenameTab , SwitchToMode: Tab,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
renamepane:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenamePane , SwitchToMode: Pane,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
session:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tmux:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [ Char: '[']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Write: [2,], SwitchToMode: Normal]
|
||||
key: [Ctrl: 'b']
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: "\"",]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: '%',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'c',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: ',']
|
||||
- action: [GoToPreviousTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'p']
|
||||
- action: [GoToNextTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'n']
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Left,]
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Right,]
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Down,]
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Up,]
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Char: 'h']
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Char: 'l']
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Char: 'j']
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Char: 'k']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [FocusNextPane,]
|
||||
key: [ Char: 'o']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
plugins:
|
||||
- path: tab-bar
|
||||
tag: tab-bar
|
||||
- path: status-bar
|
||||
tag: status-bar
|
||||
- path: strider
|
||||
tag: strider
|
||||
- path: compact-bar
|
||||
tag: compact-bar
|
||||
|
||||
env:
|
||||
foo: bar
|
||||
bar: baz
|
||||
RUST_BACKTRACE: "1"
|
||||
|
||||
# Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
# eg. when terminal window with an active zellij session is closed
|
||||
# Options:
|
||||
# - detach (Default)
|
||||
# - quit
|
||||
# on_force_close: quit
|
||||
|
||||
# Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
# Options:
|
||||
# - true
|
||||
# - false (Default)
|
||||
# simplified_ui: true
|
||||
|
||||
# Choose the path to the default shell that zellij will use for opening new panes
|
||||
# Default: $SHELL
|
||||
# default_shell: fish
|
||||
|
||||
# Toggle between having pane frames around the panes
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#pane_frames: true
|
||||
|
||||
# Choose the theme that is specified in the themes section.
|
||||
# For some examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||
# Default: default
|
||||
#theme: default
|
||||
|
||||
# Choose the mode that zellij uses when starting up.
|
||||
# Default: normal
|
||||
#default_mode: locked
|
||||
|
||||
# Toggle enabling the mouse mode.
|
||||
# On certain configurations, or terminals this could
|
||||
# potentially interfere with copying text.
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#mouse_mode: false
|
||||
|
||||
# Configure the scroll back buffer size
|
||||
# This is the number of lines zellij stores for each pane in the scroll back
|
||||
# buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
# Valid values: positive integers
|
||||
# Default value: 10000
|
||||
#scroll_buffer_size: 10000
|
||||
|
||||
# Provide a command to execute when copying text. The text will be piped to
|
||||
# the stdin of the program to perform the copy. This can be used with
|
||||
# terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
# that will be used by default if this option is not set.
|
||||
# Examples:
|
||||
#copy_command: "xclip -selection clipboard" # x11
|
||||
#copy_command: "wl-copy" # wayland
|
||||
#copy_command: "pbcopy" # osx
|
||||
|
||||
# Choose the destination for copied text
|
||||
# Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
# Does not apply when using copy_command.
|
||||
# Options:
|
||||
# - system (default)
|
||||
# - primary
|
||||
#copy_clipboard: primary
|
||||
|
||||
# Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
#copy_on_select: true
|
||||
|
||||
# Path to the default editor to use to edit pane scrollbuffer
|
||||
# scrollback_editor: /usr/bin/nano
|
||||
-639
@@ -1,639 +0,0 @@
|
||||
---
|
||||
# Configuration for zellij.
|
||||
|
||||
# In order to troubleshoot your configuration try using the following command:
|
||||
# `zellij setup --check`
|
||||
# It should show current config locations and features that are enabled.
|
||||
|
||||
keybinds:
|
||||
unbind: [Ctrl: 'g', Char: ' ']
|
||||
normal:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [NewPane: ]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right ]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up, ]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
locked:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'g',]
|
||||
resize:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'n', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [Resize: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [Resize: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [Resize: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [Resize: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [Resize: Increase,]
|
||||
key: [Char: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Char: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [Char: '-']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
pane:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'p', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [MoveFocus: Left,]
|
||||
key: [ Char: 'h', Left,]
|
||||
- action: [MoveFocus: Right,]
|
||||
key: [ Char: 'l', Right,]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Char: 'j', Down,]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Char: 'k', Up,]
|
||||
- action: [SwitchFocus,]
|
||||
key: [Char: 'p']
|
||||
- action: [NewPane: , SwitchToMode: Normal,]
|
||||
key: [Char: 'n',]
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: 'r',]
|
||||
- action: [CloseFocus, SwitchToMode: Normal,]
|
||||
key: [Char: 'x',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'f',]
|
||||
- action: [TogglePaneFrames, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [ToggleFloatingPanes, SwitchToMode: Normal,]
|
||||
key: [Char: 'w']
|
||||
- action: [TogglePaneEmbedOrFloating, SwitchToMode: Normal,]
|
||||
key: [Char: 'e']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: RenamePane, PaneNameInput: [0],]
|
||||
key: [Char: 'c']
|
||||
move:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'h', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [MovePane: ,]
|
||||
key: [Char: 'n', Char: "\t",]
|
||||
- action: [MovePane: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [MovePane: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [MovePane: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [MovePane: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tab:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 't', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: 'r']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [GoToPreviousTab,]
|
||||
key: [ Char: 'h', Left, Up, Char: 'k',]
|
||||
- action: [GoToNextTab,]
|
||||
key: [ Char: 'l', Right,Down, Char: 'j']
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'n',]
|
||||
- action: [CloseTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'x',]
|
||||
- action: [ToggleActiveSyncTab, SwitchToMode: Normal,]
|
||||
key: [Char: 's']
|
||||
- action: [GoToTab: 1, SwitchToMode: Normal,]
|
||||
key: [ Char: '1',]
|
||||
- action: [GoToTab: 2, SwitchToMode: Normal,]
|
||||
key: [ Char: '2',]
|
||||
- action: [GoToTab: 3, SwitchToMode: Normal,]
|
||||
key: [ Char: '3',]
|
||||
- action: [GoToTab: 4, SwitchToMode: Normal,]
|
||||
key: [ Char: '4',]
|
||||
- action: [GoToTab: 5, SwitchToMode: Normal,]
|
||||
key: [ Char: '5',]
|
||||
- action: [GoToTab: 6, SwitchToMode: Normal,]
|
||||
key: [ Char: '6',]
|
||||
- action: [GoToTab: 7, SwitchToMode: Normal,]
|
||||
key: [ Char: '7',]
|
||||
- action: [GoToTab: 8, SwitchToMode: Normal,]
|
||||
key: [ Char: '8',]
|
||||
- action: [GoToTab: 9, SwitchToMode: Normal,]
|
||||
key: [ Char: '9',]
|
||||
- action: [ToggleTab]
|
||||
key: [ Char: "\t" ]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
scroll:
|
||||
- action: [EditScrollback, SwitchToMode: Normal]
|
||||
key: [Char: 'e']
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
entersearch:
|
||||
- action: [SwitchToMode: Search,]
|
||||
key: [Char: "\n"]
|
||||
- action: [SearchInput: [27], SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 'c', Esc]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
search:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
- action: [Search: Down]
|
||||
key: [Char: 'n']
|
||||
- action: [Search: Up]
|
||||
key: [Char: 'p']
|
||||
- action: [SearchToggleOption: CaseSensitivity]
|
||||
key: [Char: 'c']
|
||||
- action: [SearchToggleOption: Wrap]
|
||||
key: [Char: 'w']
|
||||
- action: [SearchToggleOption: WholeWord]
|
||||
key: [Char: 'o']
|
||||
renametab:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenameTab , SwitchToMode: Tab,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
renamepane:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenamePane , SwitchToMode: Pane,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
session:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tmux:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [ Char: '[']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Write: [2,], SwitchToMode: Normal]
|
||||
key: [Ctrl: 'b']
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: "\"",]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: '%',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'c',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: ',']
|
||||
- action: [GoToPreviousTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'p']
|
||||
- action: [GoToNextTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'n']
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Left,]
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Right,]
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Down,]
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Up,]
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Char: 'h']
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Char: 'l']
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Char: 'j']
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Char: 'k']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [FocusNextPane,]
|
||||
key: [ Char: 'o']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
plugins:
|
||||
- path: tab-bar
|
||||
tag: tab-bar
|
||||
- path: status-bar
|
||||
tag: status-bar
|
||||
- path: strider
|
||||
tag: strider
|
||||
- path: compact-bar
|
||||
tag: compact-bar
|
||||
|
||||
# Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
# eg. when terminal window with an active zellij session is closed
|
||||
# Options:
|
||||
# - detach (Default)
|
||||
# - quit
|
||||
# on_force_close: quit
|
||||
|
||||
# Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
# Options:
|
||||
# - true
|
||||
# - false (Default)
|
||||
# simplified_ui: true
|
||||
|
||||
# Choose the path to the default shell that zellij will use for opening new panes
|
||||
# Default: $SHELL
|
||||
# default_shell: fish
|
||||
|
||||
# Toggle between having pane frames around the panes
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#pane_frames: true
|
||||
|
||||
# Choose the theme that is specified in the themes section.
|
||||
# For some examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||
# Default: default
|
||||
#theme: default
|
||||
|
||||
# Choose the mode that zellij uses when starting up.
|
||||
# Default: normal
|
||||
#default_mode: locked
|
||||
|
||||
# Toggle enabling the mouse mode.
|
||||
# On certain configurations, or terminals this could
|
||||
# potentially interfere with copying text.
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#mouse_mode: false
|
||||
|
||||
# Configure the scroll back buffer size
|
||||
# This is the number of lines zellij stores for each pane in the scroll back
|
||||
# buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
# Valid values: positive integers
|
||||
# Default value: 10000
|
||||
#scroll_buffer_size: 10000
|
||||
|
||||
# Provide a command to execute when copying text. The text will be piped to
|
||||
# the stdin of the program to perform the copy. This can be used with
|
||||
# terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
# that will be used by default if this option is not set.
|
||||
# Examples:
|
||||
#copy_command: "xclip -selection clipboard" # x11
|
||||
#copy_command: "wl-copy" # wayland
|
||||
#copy_command: "pbcopy" # osx
|
||||
|
||||
# Choose the destination for copied text
|
||||
# Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
# Does not apply when using copy_command.
|
||||
# Options:
|
||||
# - system (default)
|
||||
# - primary
|
||||
#copy_clipboard: primary
|
||||
|
||||
# Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
#copy_on_select: true
|
||||
|
||||
# Path to the default editor to use to edit pane scrollbuffer
|
||||
# scrollback_editor: /usr/bin/nano
|
||||
-677
@@ -1,677 +0,0 @@
|
||||
---
|
||||
# Configuration for zellij.
|
||||
|
||||
# In order to troubleshoot your configuration try using the following command:
|
||||
# `zellij setup --check`
|
||||
# It should show current config locations and features that are enabled.
|
||||
|
||||
keybinds:
|
||||
unbind: true
|
||||
normal:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [NewPane: ]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right ]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up, ]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
locked:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'g',]
|
||||
resize:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'n', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [Resize: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [Resize: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [Resize: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [Resize: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [Resize: Increase,]
|
||||
key: [Char: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Char: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [Char: '-']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
pane:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'p', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [MoveFocus: Left,]
|
||||
key: [ Char: 'h', Left,]
|
||||
- action: [MoveFocus: Right,]
|
||||
key: [ Char: 'l', Right,]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Char: 'j', Down,]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Char: 'k', Up,]
|
||||
- action: [SwitchFocus,]
|
||||
key: [Char: 'p']
|
||||
- action: [NewPane: , SwitchToMode: Normal,]
|
||||
key: [Char: 'n',]
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: 'r',]
|
||||
- action: [CloseFocus, SwitchToMode: Normal,]
|
||||
key: [Char: 'x',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'f',]
|
||||
- action: [TogglePaneFrames, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [ToggleFloatingPanes, SwitchToMode: Normal,]
|
||||
key: [Char: 'w']
|
||||
- action: [TogglePaneEmbedOrFloating, SwitchToMode: Normal,]
|
||||
key: [Char: 'e']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: RenamePane, PaneNameInput: [0],]
|
||||
key: [Char: 'c']
|
||||
move:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'h', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [MovePane: ,]
|
||||
key: [Char: 'n', Char: "\t",]
|
||||
- action: [MovePane: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [MovePane: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [MovePane: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [MovePane: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tab:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 't', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: 'r']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [GoToPreviousTab,]
|
||||
key: [ Char: 'h', Left, Up, Char: 'k',]
|
||||
- action: [GoToNextTab,]
|
||||
key: [ Char: 'l', Right,Down, Char: 'j']
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'n',]
|
||||
- action: [CloseTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'x',]
|
||||
- action: [ToggleActiveSyncTab, SwitchToMode: Normal,]
|
||||
key: [Char: 's']
|
||||
- action: [GoToTab: 1, SwitchToMode: Normal,]
|
||||
key: [ Char: '1',]
|
||||
- action: [GoToTab: 2, SwitchToMode: Normal,]
|
||||
key: [ Char: '2',]
|
||||
- action: [GoToTab: 3, SwitchToMode: Normal,]
|
||||
key: [ Char: '3',]
|
||||
- action: [GoToTab: 4, SwitchToMode: Normal,]
|
||||
key: [ Char: '4',]
|
||||
- action: [GoToTab: 5, SwitchToMode: Normal,]
|
||||
key: [ Char: '5',]
|
||||
- action: [GoToTab: 6, SwitchToMode: Normal,]
|
||||
key: [ Char: '6',]
|
||||
- action: [GoToTab: 7, SwitchToMode: Normal,]
|
||||
key: [ Char: '7',]
|
||||
- action: [GoToTab: 8, SwitchToMode: Normal,]
|
||||
key: [ Char: '8',]
|
||||
- action: [GoToTab: 9, SwitchToMode: Normal,]
|
||||
key: [ Char: '9',]
|
||||
- action: [ToggleTab]
|
||||
key: [ Char: "\t" ]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
scroll:
|
||||
- action: [EditScrollback, SwitchToMode: Normal]
|
||||
key: [Char: 'e']
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
entersearch:
|
||||
- action: [SwitchToMode: Search,]
|
||||
key: [Char: "\n"]
|
||||
- action: [SearchInput: [27], SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 'c', Esc]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
search:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
- action: [Search: Down]
|
||||
key: [Char: 'n']
|
||||
- action: [Search: Up]
|
||||
key: [Char: 'p']
|
||||
- action: [SearchToggleOption: CaseSensitivity]
|
||||
key: [Char: 'c']
|
||||
- action: [SearchToggleOption: Wrap]
|
||||
key: [Char: 'w']
|
||||
- action: [SearchToggleOption: WholeWord]
|
||||
key: [Char: 'o']
|
||||
renametab:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenameTab , SwitchToMode: Tab,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
renamepane:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenamePane , SwitchToMode: Pane,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
session:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tmux:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [ Char: '[']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Write: [2,], SwitchToMode: Normal]
|
||||
key: [Ctrl: 'b']
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: "\"",]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: '%',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'c',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: ',']
|
||||
- action: [GoToPreviousTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'p']
|
||||
- action: [GoToNextTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'n']
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Left,]
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Right,]
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Down,]
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Up,]
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Char: 'h']
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Char: 'l']
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Char: 'j']
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Char: 'k']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [FocusNextPane,]
|
||||
key: [ Char: 'o']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
plugins:
|
||||
- path: tab-bar
|
||||
tag: tab-bar
|
||||
- path: status-bar
|
||||
tag: status-bar
|
||||
- path: strider
|
||||
tag: strider
|
||||
- path: compact-bar
|
||||
tag: compact-bar
|
||||
|
||||
# Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
# eg. when terminal window with an active zellij session is closed
|
||||
# Options:
|
||||
# - detach (Default)
|
||||
# - quit
|
||||
# on_force_close: quit
|
||||
|
||||
# Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
# Options:
|
||||
# - true
|
||||
# - false (Default)
|
||||
# simplified_ui: true
|
||||
|
||||
# Choose the path to the default shell that zellij will use for opening new panes
|
||||
# Default: $SHELL
|
||||
# default_shell: fish
|
||||
|
||||
# Toggle between having pane frames around the panes
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#pane_frames: true
|
||||
|
||||
# Choose the theme that is specified in the themes section.
|
||||
# For some examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||
# Default: default
|
||||
#theme: default
|
||||
|
||||
# Choose the mode that zellij uses when starting up.
|
||||
# Default: normal
|
||||
#default_mode: locked
|
||||
|
||||
# Toggle enabling the mouse mode.
|
||||
# On certain configurations, or terminals this could
|
||||
# potentially interfere with copying text.
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#mouse_mode: false
|
||||
|
||||
# Configure the scroll back buffer size
|
||||
# This is the number of lines zellij stores for each pane in the scroll back
|
||||
# buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
# Valid values: positive integers
|
||||
# Default value: 10000
|
||||
#scroll_buffer_size: 10000
|
||||
|
||||
# Provide a command to execute when copying text. The text will be piped to
|
||||
# the stdin of the program to perform the copy. This can be used with
|
||||
# terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
# that will be used by default if this option is not set.
|
||||
# Examples:
|
||||
#copy_command: "xclip -selection clipboard" # x11
|
||||
#copy_command: "wl-copy" # wayland
|
||||
#copy_command: "pbcopy" # osx
|
||||
|
||||
# Choose the destination for copied text
|
||||
# Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
# Does not apply when using copy_command.
|
||||
# Options:
|
||||
# - system (default)
|
||||
# - primary
|
||||
#copy_clipboard: primary
|
||||
|
||||
# Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
#copy_on_select: true
|
||||
|
||||
# Path to the default editor to use to edit pane scrollbuffer
|
||||
# scrollback_editor: /usr/bin/nano
|
||||
#
|
||||
themes:
|
||||
nord:
|
||||
fg: "D8DEE9"
|
||||
bg: "#2E3440"
|
||||
black: "#3B4252"
|
||||
red: "#BF616A"
|
||||
green: "#A3BE8C"
|
||||
yellow: "#EBCB8B"
|
||||
blue: "#81A1C1"
|
||||
magenta: "#B48EAD"
|
||||
cyan: "#88C0D0"
|
||||
white: "#E5E9F0"
|
||||
orange: "#D08770"
|
||||
molokai-dark:
|
||||
bg: [27, 29, 30]
|
||||
red: [255, 0, 0]
|
||||
green: [0, 140, 0]
|
||||
yellow: [255, 255, 0]
|
||||
blue: [102, 217, 239]
|
||||
magenta: [174, 129, 255]
|
||||
orange: [253, 151, 31]
|
||||
fg: [248, 248, 240]
|
||||
cyan: [0, 255, 255]
|
||||
black: [0, 0, 0]
|
||||
white: [255, 255, 255]
|
||||
some-eightbit-theme:
|
||||
bg: 0
|
||||
red: 2
|
||||
green: 3
|
||||
yellow: 4
|
||||
blue: 5
|
||||
magenta: 6
|
||||
orange: 7
|
||||
fg: 8
|
||||
cyan: 9
|
||||
black: 10
|
||||
white: 255
|
||||
@@ -1,643 +0,0 @@
|
||||
---
|
||||
# Configuration for zellij.
|
||||
|
||||
# In order to troubleshoot your configuration try using the following command:
|
||||
# `zellij setup --check`
|
||||
# It should show current config locations and features that are enabled.
|
||||
|
||||
keybinds:
|
||||
unbind: true
|
||||
normal:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [NewPane: ]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right ]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up, ]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
locked:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'g',]
|
||||
resize:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'n', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [Resize: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [Resize: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [Resize: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [Resize: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [Resize: Increase,]
|
||||
key: [Char: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Char: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [Char: '-']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
pane:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'p', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [MoveFocus: Left,]
|
||||
key: [ Char: 'h', Left,]
|
||||
- action: [MoveFocus: Right,]
|
||||
key: [ Char: 'l', Right,]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Char: 'j', Down,]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Char: 'k', Up,]
|
||||
- action: [SwitchFocus,]
|
||||
key: [Char: 'p']
|
||||
- action: [NewPane: , SwitchToMode: Normal,]
|
||||
key: [Char: 'n',]
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: 'r',]
|
||||
- action: [CloseFocus, SwitchToMode: Normal,]
|
||||
key: [Char: 'x',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'f',]
|
||||
- action: [TogglePaneFrames, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [ToggleFloatingPanes, SwitchToMode: Normal,]
|
||||
key: [Char: 'w']
|
||||
- action: [TogglePaneEmbedOrFloating, SwitchToMode: Normal,]
|
||||
key: [Char: 'e']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: RenamePane, PaneNameInput: [0],]
|
||||
key: [Char: 'c']
|
||||
move:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'h', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [MovePane: ,]
|
||||
key: [Char: 'n', Char: "\t",]
|
||||
- action: [MovePane: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [MovePane: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [MovePane: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [MovePane: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tab:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 't', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: 'r']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [GoToPreviousTab,]
|
||||
key: [ Char: 'h', Left, Up, Char: 'k',]
|
||||
- action: [GoToNextTab,]
|
||||
key: [ Char: 'l', Right,Down, Char: 'j']
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'n',]
|
||||
- action: [CloseTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'x',]
|
||||
- action: [ToggleActiveSyncTab, SwitchToMode: Normal,]
|
||||
key: [Char: 's']
|
||||
- action: [GoToTab: 1, SwitchToMode: Normal,]
|
||||
key: [ Char: '1',]
|
||||
- action: [GoToTab: 2, SwitchToMode: Normal,]
|
||||
key: [ Char: '2',]
|
||||
- action: [GoToTab: 3, SwitchToMode: Normal,]
|
||||
key: [ Char: '3',]
|
||||
- action: [GoToTab: 4, SwitchToMode: Normal,]
|
||||
key: [ Char: '4',]
|
||||
- action: [GoToTab: 5, SwitchToMode: Normal,]
|
||||
key: [ Char: '5',]
|
||||
- action: [GoToTab: 6, SwitchToMode: Normal,]
|
||||
key: [ Char: '6',]
|
||||
- action: [GoToTab: 7, SwitchToMode: Normal,]
|
||||
key: [ Char: '7',]
|
||||
- action: [GoToTab: 8, SwitchToMode: Normal,]
|
||||
key: [ Char: '8',]
|
||||
- action: [GoToTab: 9, SwitchToMode: Normal,]
|
||||
key: [ Char: '9',]
|
||||
- action: [ToggleTab]
|
||||
key: [ Char: "\t" ]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
scroll:
|
||||
- action: [EditScrollback, SwitchToMode: Normal]
|
||||
key: [Char: 'e']
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
entersearch:
|
||||
- action: [SwitchToMode: Search,]
|
||||
key: [Char: "\n"]
|
||||
- action: [SearchInput: [27], SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 'c', Esc]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
search:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
- action: [Search: Down]
|
||||
key: [Char: 'n']
|
||||
- action: [Search: Up]
|
||||
key: [Char: 'p']
|
||||
- action: [SearchToggleOption: CaseSensitivity]
|
||||
key: [Char: 'c']
|
||||
- action: [SearchToggleOption: Wrap]
|
||||
key: [Char: 'w']
|
||||
- action: [SearchToggleOption: WholeWord]
|
||||
key: [Char: 'o']
|
||||
renametab:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenameTab , SwitchToMode: Tab,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
renamepane:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenamePane , SwitchToMode: Pane,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
session:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tmux:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [ Char: '[']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Write: [2,], SwitchToMode: Normal]
|
||||
key: [Ctrl: 'b']
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: "\"",]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: '%',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'c',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: ',']
|
||||
- action: [GoToPreviousTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'p']
|
||||
- action: [GoToNextTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'n']
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Left,]
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Right,]
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Down,]
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Up,]
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Char: 'h']
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Char: 'l']
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Char: 'j']
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Char: 'k']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [FocusNextPane,]
|
||||
key: [ Char: 'o']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
plugins:
|
||||
- path: tab-bar
|
||||
tag: tab-bar
|
||||
- path: status-bar
|
||||
tag: status-bar
|
||||
- path: strider
|
||||
tag: strider
|
||||
- path: compact-bar
|
||||
tag: compact-bar
|
||||
|
||||
ui:
|
||||
pane_frames:
|
||||
rounded_corners: true
|
||||
# Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
# Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
# eg. when terminal window with an active zellij session is closed
|
||||
# Options:
|
||||
# - detach (Default)
|
||||
# - quit
|
||||
# on_force_close: quit
|
||||
|
||||
# Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
# Options:
|
||||
# - true
|
||||
# - false (Default)
|
||||
# simplified_ui: true
|
||||
|
||||
# Choose the path to the default shell that zellij will use for opening new panes
|
||||
# Default: $SHELL
|
||||
# default_shell: fish
|
||||
|
||||
# Toggle between having pane frames around the panes
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#pane_frames: true
|
||||
|
||||
# Choose the theme that is specified in the themes section.
|
||||
# For some examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||
# Default: default
|
||||
#theme: default
|
||||
|
||||
# Choose the mode that zellij uses when starting up.
|
||||
# Default: normal
|
||||
#default_mode: locked
|
||||
|
||||
# Toggle enabling the mouse mode.
|
||||
# On certain configurations, or terminals this could
|
||||
# potentially interfere with copying text.
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#mouse_mode: false
|
||||
|
||||
# Configure the scroll back buffer size
|
||||
# This is the number of lines zellij stores for each pane in the scroll back
|
||||
# buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
# Valid values: positive integers
|
||||
# Default value: 10000
|
||||
#scroll_buffer_size: 10000
|
||||
|
||||
# Provide a command to execute when copying text. The text will be piped to
|
||||
# the stdin of the program to perform the copy. This can be used with
|
||||
# terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
# that will be used by default if this option is not set.
|
||||
# Examples:
|
||||
#copy_command: "xclip -selection clipboard" # x11
|
||||
#copy_command: "wl-copy" # wayland
|
||||
#copy_command: "pbcopy" # osx
|
||||
|
||||
# Choose the destination for copied text
|
||||
# Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
# Does not apply when using copy_command.
|
||||
# Options:
|
||||
# - system (default)
|
||||
# - primary
|
||||
#copy_clipboard: primary
|
||||
|
||||
# Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
#copy_on_select: true
|
||||
|
||||
# Path to the default editor to use to edit pane scrollbuffer
|
||||
# scrollback_editor: /usr/bin/nano
|
||||
-639
@@ -1,639 +0,0 @@
|
||||
---
|
||||
# Configuration for zellij.
|
||||
|
||||
# In order to troubleshoot your configuration try using the following command:
|
||||
# `zellij setup --check`
|
||||
# It should show current config locations and features that are enabled.
|
||||
|
||||
keybinds:
|
||||
normal:
|
||||
- unbind: true
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [NewPane: ]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right ]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up, ]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
locked:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'g',]
|
||||
resize:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'n', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [Resize: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [Resize: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [Resize: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [Resize: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [Resize: Increase,]
|
||||
key: [Char: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Char: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [Char: '-']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
pane:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'p', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [MoveFocus: Left,]
|
||||
key: [ Char: 'h', Left,]
|
||||
- action: [MoveFocus: Right,]
|
||||
key: [ Char: 'l', Right,]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Char: 'j', Down,]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Char: 'k', Up,]
|
||||
- action: [SwitchFocus,]
|
||||
key: [Char: 'p']
|
||||
- action: [NewPane: , SwitchToMode: Normal,]
|
||||
key: [Char: 'n',]
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: 'r',]
|
||||
- action: [CloseFocus, SwitchToMode: Normal,]
|
||||
key: [Char: 'x',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'f',]
|
||||
- action: [TogglePaneFrames, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [ToggleFloatingPanes, SwitchToMode: Normal,]
|
||||
key: [Char: 'w']
|
||||
- action: [TogglePaneEmbedOrFloating, SwitchToMode: Normal,]
|
||||
key: [Char: 'e']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: RenamePane, PaneNameInput: [0],]
|
||||
key: [Char: 'c']
|
||||
move:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'h', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [MovePane: ,]
|
||||
key: [Char: 'n', Char: "\t",]
|
||||
- action: [MovePane: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [MovePane: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [MovePane: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [MovePane: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tab:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 't', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: 'r']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [GoToPreviousTab,]
|
||||
key: [ Char: 'h', Left, Up, Char: 'k',]
|
||||
- action: [GoToNextTab,]
|
||||
key: [ Char: 'l', Right,Down, Char: 'j']
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'n',]
|
||||
- action: [CloseTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'x',]
|
||||
- action: [ToggleActiveSyncTab, SwitchToMode: Normal,]
|
||||
key: [Char: 's']
|
||||
- action: [GoToTab: 1, SwitchToMode: Normal,]
|
||||
key: [ Char: '1',]
|
||||
- action: [GoToTab: 2, SwitchToMode: Normal,]
|
||||
key: [ Char: '2',]
|
||||
- action: [GoToTab: 3, SwitchToMode: Normal,]
|
||||
key: [ Char: '3',]
|
||||
- action: [GoToTab: 4, SwitchToMode: Normal,]
|
||||
key: [ Char: '4',]
|
||||
- action: [GoToTab: 5, SwitchToMode: Normal,]
|
||||
key: [ Char: '5',]
|
||||
- action: [GoToTab: 6, SwitchToMode: Normal,]
|
||||
key: [ Char: '6',]
|
||||
- action: [GoToTab: 7, SwitchToMode: Normal,]
|
||||
key: [ Char: '7',]
|
||||
- action: [GoToTab: 8, SwitchToMode: Normal,]
|
||||
key: [ Char: '8',]
|
||||
- action: [GoToTab: 9, SwitchToMode: Normal,]
|
||||
key: [ Char: '9',]
|
||||
- action: [ToggleTab]
|
||||
key: [ Char: "\t" ]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
scroll:
|
||||
- action: [EditScrollback, SwitchToMode: Normal]
|
||||
key: [Char: 'e']
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
entersearch:
|
||||
- action: [SwitchToMode: Search,]
|
||||
key: [Char: "\n"]
|
||||
- action: [SearchInput: [27], SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 'c', Esc]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
search:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
- action: [Search: Down]
|
||||
key: [Char: 'n']
|
||||
- action: [Search: Up]
|
||||
key: [Char: 'p']
|
||||
- action: [SearchToggleOption: CaseSensitivity]
|
||||
key: [Char: 'c']
|
||||
- action: [SearchToggleOption: Wrap]
|
||||
key: [Char: 'w']
|
||||
- action: [SearchToggleOption: WholeWord]
|
||||
key: [Char: 'o']
|
||||
renametab:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenameTab , SwitchToMode: Tab,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
renamepane:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenamePane , SwitchToMode: Pane,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
session:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tmux:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [ Char: '[']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Write: [2,], SwitchToMode: Normal]
|
||||
key: [Ctrl: 'b']
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: "\"",]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: '%',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'c',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: ',']
|
||||
- action: [GoToPreviousTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'p']
|
||||
- action: [GoToNextTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'n']
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Left,]
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Right,]
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Down,]
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Up,]
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Char: 'h']
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Char: 'l']
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Char: 'j']
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Char: 'k']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [FocusNextPane,]
|
||||
key: [ Char: 'o']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
plugins:
|
||||
- path: tab-bar
|
||||
tag: tab-bar
|
||||
- path: status-bar
|
||||
tag: status-bar
|
||||
- path: strider
|
||||
tag: strider
|
||||
- path: compact-bar
|
||||
tag: compact-bar
|
||||
|
||||
# Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
# eg. when terminal window with an active zellij session is closed
|
||||
# Options:
|
||||
# - detach (Default)
|
||||
# - quit
|
||||
# on_force_close: quit
|
||||
|
||||
# Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
# Options:
|
||||
# - true
|
||||
# - false (Default)
|
||||
# simplified_ui: true
|
||||
|
||||
# Choose the path to the default shell that zellij will use for opening new panes
|
||||
# Default: $SHELL
|
||||
# default_shell: fish
|
||||
|
||||
# Toggle between having pane frames around the panes
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#pane_frames: true
|
||||
|
||||
# Choose the theme that is specified in the themes section.
|
||||
# For some examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||
# Default: default
|
||||
#theme: default
|
||||
|
||||
# Choose the mode that zellij uses when starting up.
|
||||
# Default: normal
|
||||
#default_mode: locked
|
||||
|
||||
# Toggle enabling the mouse mode.
|
||||
# On certain configurations, or terminals this could
|
||||
# potentially interfere with copying text.
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#mouse_mode: false
|
||||
|
||||
# Configure the scroll back buffer size
|
||||
# This is the number of lines zellij stores for each pane in the scroll back
|
||||
# buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
# Valid values: positive integers
|
||||
# Default value: 10000
|
||||
#scroll_buffer_size: 10000
|
||||
|
||||
# Provide a command to execute when copying text. The text will be piped to
|
||||
# the stdin of the program to perform the copy. This can be used with
|
||||
# terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
# that will be used by default if this option is not set.
|
||||
# Examples:
|
||||
#copy_command: "xclip -selection clipboard" # x11
|
||||
#copy_command: "wl-copy" # wayland
|
||||
#copy_command: "pbcopy" # osx
|
||||
|
||||
# Choose the destination for copied text
|
||||
# Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
# Does not apply when using copy_command.
|
||||
# Options:
|
||||
# - system (default)
|
||||
# - primary
|
||||
#copy_clipboard: primary
|
||||
|
||||
# Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
#copy_on_select: true
|
||||
|
||||
# Path to the default editor to use to edit pane scrollbuffer
|
||||
# scrollback_editor: /usr/bin/nano
|
||||
-640
@@ -1,640 +0,0 @@
|
||||
---
|
||||
# Configuration for zellij.
|
||||
|
||||
# In order to troubleshoot your configuration try using the following command:
|
||||
# `zellij setup --check`
|
||||
# It should show current config locations and features that are enabled.
|
||||
|
||||
keybinds:
|
||||
unbind: true
|
||||
normal:
|
||||
- unbind: [Ctrl: 'a', Char: "\n"]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [NewPane: ]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right ]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up, ]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
locked:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'g',]
|
||||
resize:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'n', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [Resize: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [Resize: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [Resize: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [Resize: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [Resize: Increase,]
|
||||
key: [Char: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Char: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [Char: '-']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
pane:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'p', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [MoveFocus: Left,]
|
||||
key: [ Char: 'h', Left,]
|
||||
- action: [MoveFocus: Right,]
|
||||
key: [ Char: 'l', Right,]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Char: 'j', Down,]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Char: 'k', Up,]
|
||||
- action: [SwitchFocus,]
|
||||
key: [Char: 'p']
|
||||
- action: [NewPane: , SwitchToMode: Normal,]
|
||||
key: [Char: 'n',]
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: 'r',]
|
||||
- action: [CloseFocus, SwitchToMode: Normal,]
|
||||
key: [Char: 'x',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'f',]
|
||||
- action: [TogglePaneFrames, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [ToggleFloatingPanes, SwitchToMode: Normal,]
|
||||
key: [Char: 'w']
|
||||
- action: [TogglePaneEmbedOrFloating, SwitchToMode: Normal,]
|
||||
key: [Char: 'e']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: RenamePane, PaneNameInput: [0],]
|
||||
key: [Char: 'c']
|
||||
move:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'h', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [Quit]
|
||||
key: [Ctrl: 'q']
|
||||
- action: [MovePane: ,]
|
||||
key: [Char: 'n', Char: "\t",]
|
||||
- action: [MovePane: Left,]
|
||||
key: [Char: 'h', Left,]
|
||||
- action: [MovePane: Down,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [MovePane: Up,]
|
||||
key: [Char: 'k', Up, ]
|
||||
- action: [MovePane: Right,]
|
||||
key: [Char: 'l', Right,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tab:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 't', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: 'r']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [GoToPreviousTab,]
|
||||
key: [ Char: 'h', Left, Up, Char: 'k',]
|
||||
- action: [GoToNextTab,]
|
||||
key: [ Char: 'l', Right,Down, Char: 'j']
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'n',]
|
||||
- action: [CloseTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'x',]
|
||||
- action: [ToggleActiveSyncTab, SwitchToMode: Normal,]
|
||||
key: [Char: 's']
|
||||
- action: [GoToTab: 1, SwitchToMode: Normal,]
|
||||
key: [ Char: '1',]
|
||||
- action: [GoToTab: 2, SwitchToMode: Normal,]
|
||||
key: [ Char: '2',]
|
||||
- action: [GoToTab: 3, SwitchToMode: Normal,]
|
||||
key: [ Char: '3',]
|
||||
- action: [GoToTab: 4, SwitchToMode: Normal,]
|
||||
key: [ Char: '4',]
|
||||
- action: [GoToTab: 5, SwitchToMode: Normal,]
|
||||
key: [ Char: '5',]
|
||||
- action: [GoToTab: 6, SwitchToMode: Normal,]
|
||||
key: [ Char: '6',]
|
||||
- action: [GoToTab: 7, SwitchToMode: Normal,]
|
||||
key: [ Char: '7',]
|
||||
- action: [GoToTab: 8, SwitchToMode: Normal,]
|
||||
key: [ Char: '8',]
|
||||
- action: [GoToTab: 9, SwitchToMode: Normal,]
|
||||
key: [ Char: '9',]
|
||||
- action: [ToggleTab]
|
||||
key: [ Char: "\t" ]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
scroll:
|
||||
- action: [EditScrollback, SwitchToMode: Normal]
|
||||
key: [Char: 'e']
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
# uncomment this and adjust key if using copy_on_select=false
|
||||
# - action: [Copy: ]
|
||||
# key: [ Alt: 'c']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
entersearch:
|
||||
- action: [SwitchToMode: Search,]
|
||||
key: [Char: "\n"]
|
||||
- action: [SearchInput: [27], SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 'c', Esc]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
search:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 's', Char: ' ', Char: "\n", Esc]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Session,]
|
||||
key: [Ctrl: 'o',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [ScrollToBottom, SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'c',]
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [ScrollDown,]
|
||||
key: [Char: 'j', Down,]
|
||||
- action: [ScrollUp,]
|
||||
key: [Char: 'k', Up,]
|
||||
- action: [PageScrollDown,]
|
||||
key: [Ctrl: 'f', PageDown, Right, Char: 'l',]
|
||||
- action: [PageScrollUp,]
|
||||
key: [Ctrl: 'b', PageUp, Left, Char: 'h',]
|
||||
- action: [HalfPageScrollDown,]
|
||||
key: [Char: 'd',]
|
||||
- action: [HalfPageScrollUp,]
|
||||
key: [Char: 'u',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left] # The Alt: Left etc. variants are temporary hacks and will be removed in the future - please do not rely on them!
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [SwitchToMode: EnterSearch, SearchInput: [0],]
|
||||
key: [Char: 's']
|
||||
- action: [Search: Down]
|
||||
key: [Char: 'n']
|
||||
- action: [Search: Up]
|
||||
key: [Char: 'p']
|
||||
- action: [SearchToggleOption: CaseSensitivity]
|
||||
key: [Char: 'c']
|
||||
- action: [SearchToggleOption: Wrap]
|
||||
key: [Char: 'w']
|
||||
- action: [SearchToggleOption: WholeWord]
|
||||
key: [Char: 'o']
|
||||
renametab:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenameTab , SwitchToMode: Tab,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
renamepane:
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Char: "\n", Ctrl: 'c', Esc]
|
||||
- action: [UndoRenamePane , SwitchToMode: Pane,]
|
||||
key: [Esc,]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
session:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tmux,]
|
||||
key: [Ctrl: 'b',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
tmux:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g']
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Move,]
|
||||
key: [Ctrl: 'h',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
- action: [SwitchToMode: Normal,]
|
||||
key: [Ctrl: 'o', Char: "\n", Char: ' ', Esc]
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [Ctrl: 's']
|
||||
- action: [SwitchToMode: Scroll,]
|
||||
key: [ Char: '[']
|
||||
- action: [Quit,]
|
||||
key: [Ctrl: 'q',]
|
||||
- action: [Write: [2,], SwitchToMode: Normal]
|
||||
key: [Ctrl: 'b']
|
||||
- action: [NewPane: Down, SwitchToMode: Normal,]
|
||||
key: [Char: "\"",]
|
||||
- action: [NewPane: Right, SwitchToMode: Normal,]
|
||||
key: [Char: '%',]
|
||||
- action: [ToggleFocusFullscreen, SwitchToMode: Normal,]
|
||||
key: [Char: 'z',]
|
||||
- action: [NewTab: , SwitchToMode: Normal,]
|
||||
key: [ Char: 'c',]
|
||||
- action: [SwitchToMode: RenameTab, TabNameInput: [0],]
|
||||
key: [Char: ',']
|
||||
- action: [GoToPreviousTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'p']
|
||||
- action: [GoToNextTab, SwitchToMode: Normal,]
|
||||
key: [ Char: 'n']
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Left,]
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Right,]
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Down,]
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Up,]
|
||||
- action: [MoveFocus: Left, SwitchToMode: Normal,]
|
||||
key: [ Char: 'h']
|
||||
- action: [MoveFocus: Right, SwitchToMode: Normal,]
|
||||
key: [ Char: 'l']
|
||||
- action: [MoveFocus: Down, SwitchToMode: Normal,]
|
||||
key: [ Char: 'j']
|
||||
- action: [MoveFocus: Up, SwitchToMode: Normal,]
|
||||
key: [ Char: 'k']
|
||||
- action: [NewPane: ,]
|
||||
key: [ Alt: 'n',]
|
||||
- action: [MoveFocusOrTab: Left,]
|
||||
key: [ Alt: 'h', Alt: Left]
|
||||
- action: [MoveFocusOrTab: Right,]
|
||||
key: [ Alt: 'l', Alt: Right]
|
||||
- action: [MoveFocus: Down,]
|
||||
key: [ Alt: 'j', Alt: Down]
|
||||
- action: [MoveFocus: Up,]
|
||||
key: [ Alt: 'k', Alt: Up]
|
||||
- action: [FocusNextPane,]
|
||||
key: [ Char: 'o']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '=']
|
||||
- action: [Resize: Increase,]
|
||||
key: [ Alt: '+']
|
||||
- action: [Resize: Decrease,]
|
||||
key: [ Alt: '-']
|
||||
- action: [Detach,]
|
||||
key: [Char: 'd',]
|
||||
plugins:
|
||||
- path: tab-bar
|
||||
tag: tab-bar
|
||||
- path: status-bar
|
||||
tag: status-bar
|
||||
- path: strider
|
||||
tag: strider
|
||||
- path: compact-bar
|
||||
tag: compact-bar
|
||||
|
||||
# Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
# eg. when terminal window with an active zellij session is closed
|
||||
# Options:
|
||||
# - detach (Default)
|
||||
# - quit
|
||||
# on_force_close: quit
|
||||
|
||||
# Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
# Options:
|
||||
# - true
|
||||
# - false (Default)
|
||||
# simplified_ui: true
|
||||
|
||||
# Choose the path to the default shell that zellij will use for opening new panes
|
||||
# Default: $SHELL
|
||||
# default_shell: fish
|
||||
|
||||
# Toggle between having pane frames around the panes
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#pane_frames: true
|
||||
|
||||
# Choose the theme that is specified in the themes section.
|
||||
# For some examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||
# Default: default
|
||||
#theme: default
|
||||
|
||||
# Choose the mode that zellij uses when starting up.
|
||||
# Default: normal
|
||||
#default_mode: locked
|
||||
|
||||
# Toggle enabling the mouse mode.
|
||||
# On certain configurations, or terminals this could
|
||||
# potentially interfere with copying text.
|
||||
# Options:
|
||||
# - true (default)
|
||||
# - false
|
||||
#mouse_mode: false
|
||||
|
||||
# Configure the scroll back buffer size
|
||||
# This is the number of lines zellij stores for each pane in the scroll back
|
||||
# buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
# Valid values: positive integers
|
||||
# Default value: 10000
|
||||
#scroll_buffer_size: 10000
|
||||
|
||||
# Provide a command to execute when copying text. The text will be piped to
|
||||
# the stdin of the program to perform the copy. This can be used with
|
||||
# terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
# that will be used by default if this option is not set.
|
||||
# Examples:
|
||||
#copy_command: "xclip -selection clipboard" # x11
|
||||
#copy_command: "wl-copy" # wayland
|
||||
#copy_command: "pbcopy" # osx
|
||||
|
||||
# Choose the destination for copied text
|
||||
# Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
# Does not apply when using copy_command.
|
||||
# Options:
|
||||
# - system (default)
|
||||
# - primary
|
||||
#copy_clipboard: primary
|
||||
|
||||
# Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
#copy_on_select: true
|
||||
|
||||
# Path to the default editor to use to edit pane scrollbuffer
|
||||
# scrollback_editor: /usr/bin/nano
|
||||
@@ -1,34 +0,0 @@
|
||||
---
|
||||
template:
|
||||
direction: Horizontal
|
||||
parts:
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 1
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:tab-bar"
|
||||
- direction: Vertical
|
||||
body: true
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 2
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:status-bar"
|
||||
tabs:
|
||||
- direction: Vertical
|
||||
default_shell: fish
|
||||
keybinds:
|
||||
unbind: true
|
||||
normal:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
-36
@@ -1,36 +0,0 @@
|
||||
---
|
||||
template:
|
||||
direction: Horizontal
|
||||
parts:
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 1
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:tab-bar"
|
||||
- direction: Vertical
|
||||
body: true
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 2
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:status-bar"
|
||||
tabs:
|
||||
- direction: Vertical
|
||||
session:
|
||||
name: foo
|
||||
default_shell: fish
|
||||
keybinds:
|
||||
unbind: true
|
||||
normal:
|
||||
- action: [SwitchToMode: Locked,]
|
||||
key: [Ctrl: 'g',]
|
||||
- action: [SwitchToMode: Pane,]
|
||||
key: [Ctrl: 'p',]
|
||||
- action: [SwitchToMode: Resize,]
|
||||
key: [Ctrl: 'n',]
|
||||
- action: [SwitchToMode: Tab,]
|
||||
key: [Ctrl: 't',]
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
tabs:
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
run:
|
||||
command: {cmd: bash, args: ["-c", "exec bash --init-file <(echo \"echo hi\") -i"]}
|
||||
-24
@@ -1,24 +0,0 @@
|
||||
---
|
||||
template:
|
||||
direction: Horizontal
|
||||
parts:
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 1
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:tab-bar"
|
||||
- direction: Vertical
|
||||
body: true
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 2
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:status-bar"
|
||||
tabs:
|
||||
- direction: Vertical
|
||||
session:
|
||||
name: foo
|
||||
-25
@@ -1,25 +0,0 @@
|
||||
---
|
||||
template:
|
||||
direction: Horizontal
|
||||
parts:
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 1
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:tab-bar"
|
||||
- direction: Vertical
|
||||
body: true
|
||||
- direction: Vertical
|
||||
borderless: true
|
||||
split_size:
|
||||
Fixed: 2
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:status-bar"
|
||||
tabs:
|
||||
- direction: Vertical
|
||||
session:
|
||||
name: foo
|
||||
attach: false
|
||||
@@ -1,21 +0,0 @@
|
||||
---
|
||||
tabs:
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Horizontal
|
||||
split_size:
|
||||
Percent: 50
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
run:
|
||||
command: {cmd: htop}
|
||||
- direction: Horizontal
|
||||
split_size:
|
||||
Percent: 50
|
||||
run:
|
||||
command: {cmd: htop}
|
||||
-35
@@ -1,35 +0,0 @@
|
||||
---
|
||||
tabs:
|
||||
- direction: Horizontal
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Fixed: 1
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:tab-bar"
|
||||
borderless: true
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
parts:
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
run:
|
||||
command: {cmd: htop}
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Percent: 50
|
||||
run:
|
||||
command: {cmd: htop, args: ["-C", "--tree"]}
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Fixed: 5
|
||||
- direction: Vertical
|
||||
split_size:
|
||||
Fixed: 2
|
||||
run:
|
||||
plugin:
|
||||
location: "zellij:status-bar"
|
||||
borderless: true
|
||||
-411
@@ -1,411 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_config_tests.rs
|
||||
assertion_line: 24
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl p" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { MoveFocus "Left"; }
|
||||
bind "l" "Right" { MoveFocus "Right"; }
|
||||
bind "j" "Down" { MoveFocus "Down"; }
|
||||
bind "k" "Up" { MoveFocus "Up"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "d" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||
}
|
||||
tab {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
bind "Tab" { ToggleTab; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
resize {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { Resize "Left"; }
|
||||
bind "j" "Down" { Resize "Down"; }
|
||||
bind "k" "Up" { Resize "Up"; }
|
||||
bind "l" "Right" { Resize "Right"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
move {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl h" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "n" "Tab" { MovePane; }
|
||||
bind "h" "Left" { MovePane "Left"; }
|
||||
bind "j" "Down" { MovePane "Down"; }
|
||||
bind "k" "Up" { MovePane "Up"; }
|
||||
bind "l" "Right" { MovePane "Right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
}
|
||||
session {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "d" { Detach; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
search {
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "n" { Search "Down"; }
|
||||
bind "p" { Search "Up"; }
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Enter" { SwitchToMode "search"; }
|
||||
bind "Ctrl c" "Esc" { SearchInput 27; SwitchToMode "scroll"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenameTab {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenamePane {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
tmux {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
|
||||
bind "\"" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "%" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "n" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "Left" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "Right" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "Down" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "Up" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "o" { FocusNextPane; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
}
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
on_force_close "quit"
|
||||
|
||||
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
simplified_ui true
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
default_shell "fish"
|
||||
|
||||
// Toggle between having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
pane_frames true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
theme "default"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
// default_layout "compact"
|
||||
|
||||
// Choose the mode that zellij uses when starting up.
|
||||
// Default: normal
|
||||
//
|
||||
default_mode "locked"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
mouse_mode false
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
copy_command "pbcopy"
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
copy_clipboard "primary"
|
||||
|
||||
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
copy_on_select true
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
//
|
||||
scrollback_editor "/usr/bin/nano"
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
//
|
||||
// layout_dir /path/to/my/layout_dir
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
//
|
||||
// theme_dir "/path/to/my/theme_dir"
|
||||
|
||||
plugins {
|
||||
tab-bar { path "tab-bar"; }
|
||||
status-bar { path "status-bar"; }
|
||||
strider { path "strider"; }
|
||||
compact-bar { path "compact-bar"; }
|
||||
}
|
||||
|
||||
-415
@@ -1,415 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_config_tests.rs
|
||||
assertion_line: 68
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl p" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { MoveFocus "Left"; }
|
||||
bind "l" "Right" { MoveFocus "Right"; }
|
||||
bind "j" "Down" { MoveFocus "Down"; }
|
||||
bind "k" "Up" { MoveFocus "Up"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "d" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||
}
|
||||
tab {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
bind "Tab" { ToggleTab; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
resize {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { Resize "Left"; }
|
||||
bind "j" "Down" { Resize "Down"; }
|
||||
bind "k" "Up" { Resize "Up"; }
|
||||
bind "l" "Right" { Resize "Right"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
move {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl h" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "n" "Tab" { MovePane; }
|
||||
bind "h" "Left" { MovePane "Left"; }
|
||||
bind "j" "Down" { MovePane "Down"; }
|
||||
bind "k" "Up" { MovePane "Up"; }
|
||||
bind "l" "Right" { MovePane "Right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
}
|
||||
session {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "d" { Detach; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
search {
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "n" { Search "Down"; }
|
||||
bind "p" { Search "Up"; }
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Enter" { SwitchToMode "search"; }
|
||||
bind "Ctrl c" "Esc" { SearchInput 27; SwitchToMode "scroll"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenameTab {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenamePane {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
tmux {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
|
||||
bind "\"" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "%" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "n" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "Left" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "Right" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "Down" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "Up" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "o" { FocusNextPane; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
}
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
// on_force_close "quit"
|
||||
|
||||
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
// simplified_ui true
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Toggle between having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// pane_frames true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
// theme "default"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
// default_layout "compact"
|
||||
|
||||
// Choose the mode that zellij uses when starting up.
|
||||
// Default: normal
|
||||
//
|
||||
// default_mode "locked"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// mouse_mode false
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
// scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
// copy_on_select false
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
//
|
||||
// scrollback_editor "/usr/bin/vim"
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
//
|
||||
// layout_dir /path/to/my/layout_dir
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
//
|
||||
// theme_dir "/path/to/my/theme_dir"
|
||||
env {
|
||||
RUST_BACKTRACE "1"
|
||||
bar "baz"
|
||||
foo "bar"
|
||||
}
|
||||
|
||||
plugins {
|
||||
tab-bar { path "tab-bar"; }
|
||||
status-bar { path "status-bar"; }
|
||||
strider { path "strider"; }
|
||||
compact-bar { path "compact-bar"; }
|
||||
}
|
||||
|
||||
-411
@@ -1,411 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_config_tests.rs
|
||||
assertion_line: 46
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
keybinds {
|
||||
unbind "Ctrl g" "Space"
|
||||
normal {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl p" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { MoveFocus "Left"; }
|
||||
bind "l" "Right" { MoveFocus "Right"; }
|
||||
bind "j" "Down" { MoveFocus "Down"; }
|
||||
bind "k" "Up" { MoveFocus "Up"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "d" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||
}
|
||||
tab {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
bind "Tab" { ToggleTab; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
resize {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { Resize "Left"; }
|
||||
bind "j" "Down" { Resize "Down"; }
|
||||
bind "k" "Up" { Resize "Up"; }
|
||||
bind "l" "Right" { Resize "Right"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
move {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl h" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "n" "Tab" { MovePane; }
|
||||
bind "h" "Left" { MovePane "Left"; }
|
||||
bind "j" "Down" { MovePane "Down"; }
|
||||
bind "k" "Up" { MovePane "Up"; }
|
||||
bind "l" "Right" { MovePane "Right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
}
|
||||
session {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "d" { Detach; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
search {
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "n" { Search "Down"; }
|
||||
bind "p" { Search "Up"; }
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Enter" { SwitchToMode "search"; }
|
||||
bind "Ctrl c" "Esc" { SearchInput 27; SwitchToMode "scroll"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenameTab {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenamePane {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
tmux {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
|
||||
bind "\"" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "%" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "n" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "Left" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "Right" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "Down" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "Up" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "o" { FocusNextPane; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
}
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
// on_force_close "quit"
|
||||
|
||||
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
// simplified_ui true
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Toggle between having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// pane_frames true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
// theme "default"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
// default_layout "compact"
|
||||
|
||||
// Choose the mode that zellij uses when starting up.
|
||||
// Default: normal
|
||||
//
|
||||
// default_mode "locked"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// mouse_mode false
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
// scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
// copy_on_select false
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
//
|
||||
// scrollback_editor "/usr/bin/vim"
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
//
|
||||
// layout_dir /path/to/my/layout_dir
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
//
|
||||
// theme_dir "/path/to/my/theme_dir"
|
||||
|
||||
plugins {
|
||||
tab-bar { path "tab-bar"; }
|
||||
status-bar { path "status-bar"; }
|
||||
strider { path "strider"; }
|
||||
compact-bar { path "compact-bar"; }
|
||||
}
|
||||
|
||||
-411
@@ -1,411 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_config_tests.rs
|
||||
assertion_line: 35
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
unbind "Ctrl a" "Enter"
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl p" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { MoveFocus "Left"; }
|
||||
bind "l" "Right" { MoveFocus "Right"; }
|
||||
bind "j" "Down" { MoveFocus "Down"; }
|
||||
bind "k" "Up" { MoveFocus "Up"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "d" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||
}
|
||||
tab {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
bind "Tab" { ToggleTab; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
resize {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { Resize "Left"; }
|
||||
bind "j" "Down" { Resize "Down"; }
|
||||
bind "k" "Up" { Resize "Up"; }
|
||||
bind "l" "Right" { Resize "Right"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
move {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl h" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "n" "Tab" { MovePane; }
|
||||
bind "h" "Left" { MovePane "Left"; }
|
||||
bind "j" "Down" { MovePane "Down"; }
|
||||
bind "k" "Up" { MovePane "Up"; }
|
||||
bind "l" "Right" { MovePane "Right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
}
|
||||
session {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "d" { Detach; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
search {
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "n" { Search "Down"; }
|
||||
bind "p" { Search "Up"; }
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Enter" { SwitchToMode "search"; }
|
||||
bind "Ctrl c" "Esc" { SearchInput 27; SwitchToMode "scroll"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenameTab {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenamePane {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
tmux {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
|
||||
bind "\"" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "%" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "n" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "Left" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "Right" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "Down" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "Up" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "o" { FocusNextPane; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
}
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
// on_force_close "quit"
|
||||
|
||||
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
// simplified_ui true
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Toggle between having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// pane_frames true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
// theme "default"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
// default_layout "compact"
|
||||
|
||||
// Choose the mode that zellij uses when starting up.
|
||||
// Default: normal
|
||||
//
|
||||
// default_mode "locked"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// mouse_mode false
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
// scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
// copy_on_select false
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
//
|
||||
// scrollback_editor "/usr/bin/vim"
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
//
|
||||
// layout_dir /path/to/my/layout_dir
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
//
|
||||
// theme_dir "/path/to/my/theme_dir"
|
||||
|
||||
plugins {
|
||||
tab-bar { path "tab-bar"; }
|
||||
status-bar { path "status-bar"; }
|
||||
strider { path "strider"; }
|
||||
compact-bar { path "compact-bar"; }
|
||||
}
|
||||
|
||||
-451
@@ -1,451 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_config_tests.rs
|
||||
assertion_line: 90
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl p" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { MoveFocus "Left"; }
|
||||
bind "l" "Right" { MoveFocus "Right"; }
|
||||
bind "j" "Down" { MoveFocus "Down"; }
|
||||
bind "k" "Up" { MoveFocus "Up"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "d" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||
}
|
||||
tab {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
bind "Tab" { ToggleTab; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
resize {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { Resize "Left"; }
|
||||
bind "j" "Down" { Resize "Down"; }
|
||||
bind "k" "Up" { Resize "Up"; }
|
||||
bind "l" "Right" { Resize "Right"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
move {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl h" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "n" "Tab" { MovePane; }
|
||||
bind "h" "Left" { MovePane "Left"; }
|
||||
bind "j" "Down" { MovePane "Down"; }
|
||||
bind "k" "Up" { MovePane "Up"; }
|
||||
bind "l" "Right" { MovePane "Right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
}
|
||||
session {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "d" { Detach; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
search {
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "n" { Search "Down"; }
|
||||
bind "p" { Search "Up"; }
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Enter" { SwitchToMode "search"; }
|
||||
bind "Ctrl c" "Esc" { SearchInput 27; SwitchToMode "scroll"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenameTab {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenamePane {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
tmux {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
|
||||
bind "\"" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "%" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "n" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "Left" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "Right" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "Down" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "Up" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "o" { FocusNextPane; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
}
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
// on_force_close "quit"
|
||||
|
||||
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
// simplified_ui true
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Toggle between having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// pane_frames true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
// theme "default"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
// default_layout "compact"
|
||||
|
||||
// Choose the mode that zellij uses when starting up.
|
||||
// Default: normal
|
||||
//
|
||||
// default_mode "locked"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// mouse_mode false
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
// scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
// copy_on_select false
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
//
|
||||
// scrollback_editor "/usr/bin/vim"
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
//
|
||||
// layout_dir /path/to/my/layout_dir
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
//
|
||||
// theme_dir "/path/to/my/theme_dir"
|
||||
|
||||
plugins {
|
||||
tab-bar { path "tab-bar"; }
|
||||
status-bar { path "status-bar"; }
|
||||
strider { path "strider"; }
|
||||
compact-bar { path "compact-bar"; }
|
||||
}
|
||||
themes {
|
||||
molokai-dark {
|
||||
fg 248 248 240
|
||||
bg 27 29 30
|
||||
black 0 0 0
|
||||
red 255 0 0
|
||||
green 0 140 0
|
||||
yellow 255 255 0
|
||||
blue 102 217 239
|
||||
magenta 174 129 255
|
||||
cyan 0 255 255
|
||||
white 255 255 255
|
||||
orange 253 151 31
|
||||
}
|
||||
nord {
|
||||
fg 216 222 233
|
||||
bg 46 52 64
|
||||
black 59 66 82
|
||||
red 191 97 106
|
||||
green 163 190 140
|
||||
yellow 235 203 139
|
||||
blue 129 161 193
|
||||
magenta 180 142 173
|
||||
cyan 136 192 208
|
||||
white 229 233 240
|
||||
orange 208 135 112
|
||||
}
|
||||
some-eightbit-theme {
|
||||
fg 8
|
||||
bg 0
|
||||
black 10
|
||||
red 2
|
||||
green 3
|
||||
yellow 4
|
||||
blue 5
|
||||
magenta 6
|
||||
cyan 9
|
||||
white 255
|
||||
orange 7
|
||||
}
|
||||
}
|
||||
|
||||
-416
@@ -1,416 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_config_tests.rs
|
||||
assertion_line: 79
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl p" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { MoveFocus "Left"; }
|
||||
bind "l" "Right" { MoveFocus "Right"; }
|
||||
bind "j" "Down" { MoveFocus "Down"; }
|
||||
bind "k" "Up" { MoveFocus "Up"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "d" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||
}
|
||||
tab {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
bind "Tab" { ToggleTab; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
resize {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { Resize "Left"; }
|
||||
bind "j" "Down" { Resize "Down"; }
|
||||
bind "k" "Up" { Resize "Up"; }
|
||||
bind "l" "Right" { Resize "Right"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
move {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl h" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "n" "Tab" { MovePane; }
|
||||
bind "h" "Left" { MovePane "Left"; }
|
||||
bind "j" "Down" { MovePane "Down"; }
|
||||
bind "k" "Up" { MovePane "Up"; }
|
||||
bind "l" "Right" { MovePane "Right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
}
|
||||
session {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "d" { Detach; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
search {
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "n" { Search "Down"; }
|
||||
bind "p" { Search "Up"; }
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Enter" { SwitchToMode "search"; }
|
||||
bind "Ctrl c" "Esc" { SearchInput 27; SwitchToMode "scroll"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenameTab {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenamePane {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
tmux {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
|
||||
bind "\"" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "%" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "n" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "Left" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "Right" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "Down" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "Up" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "o" { FocusNextPane; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
}
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
// on_force_close "quit"
|
||||
|
||||
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
// simplified_ui true
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Toggle between having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// pane_frames true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
// theme "default"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
// default_layout "compact"
|
||||
|
||||
// Choose the mode that zellij uses when starting up.
|
||||
// Default: normal
|
||||
//
|
||||
// default_mode "locked"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// mouse_mode false
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
// scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
// copy_on_select false
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
//
|
||||
// scrollback_editor "/usr/bin/vim"
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
//
|
||||
// layout_dir /path/to/my/layout_dir
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
//
|
||||
// theme_dir "/path/to/my/theme_dir"
|
||||
|
||||
plugins {
|
||||
tab-bar { path "tab-bar"; }
|
||||
status-bar { path "status-bar"; }
|
||||
strider { path "strider"; }
|
||||
compact-bar { path "compact-bar"; }
|
||||
}
|
||||
|
||||
ui {
|
||||
pane_frames {
|
||||
rounded_corners true
|
||||
}
|
||||
}
|
||||
|
||||
-410
@@ -1,410 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_config_tests.rs
|
||||
assertion_line: 57
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
keybinds {
|
||||
normal clear-defaults=true {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl p" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { MoveFocus "Left"; }
|
||||
bind "l" "Right" { MoveFocus "Right"; }
|
||||
bind "j" "Down" { MoveFocus "Down"; }
|
||||
bind "k" "Up" { MoveFocus "Up"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "d" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||
}
|
||||
tab {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
bind "Tab" { ToggleTab; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
resize {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { Resize "Left"; }
|
||||
bind "j" "Down" { Resize "Down"; }
|
||||
bind "k" "Up" { Resize "Up"; }
|
||||
bind "l" "Right" { Resize "Right"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
move {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl h" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "n" "Tab" { MovePane; }
|
||||
bind "h" "Left" { MovePane "Left"; }
|
||||
bind "j" "Down" { MovePane "Down"; }
|
||||
bind "k" "Up" { MovePane "Up"; }
|
||||
bind "l" "Right" { MovePane "Right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
}
|
||||
session {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "d" { Detach; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
search {
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "n" { Search "Down"; }
|
||||
bind "p" { Search "Up"; }
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Enter" { SwitchToMode "search"; }
|
||||
bind "Ctrl c" "Esc" { SearchInput 27; SwitchToMode "scroll"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenameTab {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenamePane {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
tmux {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
|
||||
bind "\"" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "%" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "n" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "Left" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "Right" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "Down" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "Up" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "o" { FocusNextPane; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
}
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
// on_force_close "quit"
|
||||
|
||||
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
// simplified_ui true
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Toggle between having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// pane_frames true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
// theme "default"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
// default_layout "compact"
|
||||
|
||||
// Choose the mode that zellij uses when starting up.
|
||||
// Default: normal
|
||||
//
|
||||
// default_mode "locked"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// mouse_mode false
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
// scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
// copy_on_select false
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
//
|
||||
// scrollback_editor "/usr/bin/vim"
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
//
|
||||
// layout_dir /path/to/my/layout_dir
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
//
|
||||
// theme_dir "/path/to/my/theme_dir"
|
||||
|
||||
plugins {
|
||||
tab-bar { path "tab-bar"; }
|
||||
status-bar { path "status-bar"; }
|
||||
strider { path "strider"; }
|
||||
compact-bar { path "compact-bar"; }
|
||||
}
|
||||
|
||||
-410
@@ -1,410 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_config_tests.rs
|
||||
assertion_line: 13
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl p" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { MoveFocus "Left"; }
|
||||
bind "l" "Right" { MoveFocus "Right"; }
|
||||
bind "j" "Down" { MoveFocus "Down"; }
|
||||
bind "k" "Up" { MoveFocus "Up"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "d" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||
}
|
||||
tab {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
bind "Tab" { ToggleTab; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
resize {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "h" "Left" { Resize "Left"; }
|
||||
bind "j" "Down" { Resize "Down"; }
|
||||
bind "k" "Up" { Resize "Up"; }
|
||||
bind "l" "Right" { Resize "Right"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
move {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl h" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "n" "Tab" { MovePane; }
|
||||
bind "h" "Left" { MovePane "Left"; }
|
||||
bind "j" "Down" { MovePane "Down"; }
|
||||
bind "k" "Up" { MovePane "Up"; }
|
||||
bind "l" "Right" { MovePane "Right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
}
|
||||
session {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "d" { Detach; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
search {
|
||||
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||
bind "Ctrl o" { SwitchToMode "session"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "j" "Down" { ScrollDown; }
|
||||
bind "k" "Up" { ScrollUp; }
|
||||
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "n" { Search "Down"; }
|
||||
bind "p" { Search "Up"; }
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Enter" { SwitchToMode "search"; }
|
||||
bind "Ctrl c" "Esc" { SearchInput 27; SwitchToMode "scroll"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenameTab {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
RenamePane {
|
||||
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
}
|
||||
tmux {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl h" { SwitchToMode "move"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "Ctrl q" { Quit; }
|
||||
bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
|
||||
bind "\"" { NewPane "Down"; SwitchToMode "normal"; }
|
||||
bind "%" { NewPane "Right"; SwitchToMode "normal"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "n" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "Left" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "Right" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "Down" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "Up" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "Left"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||
bind "o" { FocusNextPane; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
}
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
// on_force_close "quit"
|
||||
|
||||
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
// simplified_ui true
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Toggle between having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// pane_frames true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
// theme "default"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
// default_layout "compact"
|
||||
|
||||
// Choose the mode that zellij uses when starting up.
|
||||
// Default: normal
|
||||
//
|
||||
// default_mode "locked"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// mouse_mode false
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
// scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
// copy_on_select false
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
//
|
||||
// scrollback_editor "/usr/bin/vim"
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
//
|
||||
// layout_dir /path/to/my/layout_dir
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
//
|
||||
// theme_dir "/path/to/my/theme_dir"
|
||||
|
||||
plugins {
|
||||
tab-bar { path "tab-bar"; }
|
||||
status-bar { path "status-bar"; }
|
||||
strider { path "strider"; }
|
||||
compact-bar { path "compact-bar"; }
|
||||
}
|
||||
|
||||
-14
@@ -1,14 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 13
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
pane size=1 borderless=true {
|
||||
plugin location="zellij:tab-bar"
|
||||
}
|
||||
pane
|
||||
pane size=2 borderless=true {
|
||||
plugin location="zellij:status-bar"
|
||||
}
|
||||
}
|
||||
-61
@@ -1,61 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 68
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
default_tab_template {
|
||||
pane size=1 borderless=true {
|
||||
plugin location="zellij:tab-bar"
|
||||
}
|
||||
children
|
||||
pane size=2 borderless=true {
|
||||
plugin location="zellij:status-bar"
|
||||
}
|
||||
}
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
tab
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="50%"
|
||||
pane size="50%" split_direction="Horizontal" {
|
||||
pane size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
}
|
||||
tab
|
||||
tab
|
||||
tab
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="20%" {
|
||||
plugin location="zellij:strider"
|
||||
}
|
||||
pane size="80%" split_direction="Horizontal" {
|
||||
pane size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
}
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="40%"
|
||||
pane size="60%" split_direction="Horizontal" {
|
||||
pane size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
-60
@@ -1,60 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 79
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
default_tab_template {
|
||||
pane size=1 borderless=true {
|
||||
plugin location="zellij:tab-bar"
|
||||
}
|
||||
children
|
||||
pane size=2 borderless=true {
|
||||
plugin location="zellij:status-bar"
|
||||
}
|
||||
}
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane command="htop" size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="50%"
|
||||
pane size="50%" split_direction="Horizontal" {
|
||||
pane size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
}
|
||||
tab
|
||||
tab
|
||||
tab
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="20%" {
|
||||
plugin location="zellij:strider"
|
||||
}
|
||||
pane size="80%" split_direction="Horizontal" {
|
||||
pane size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
}
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="40%"
|
||||
pane size="60%" split_direction="Horizontal" {
|
||||
pane size="50%"
|
||||
pane size="50%"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
-19
@@ -1,19 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 90
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
default_tab_template {
|
||||
children
|
||||
}
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane size="50%" split_direction="Horizontal" {
|
||||
pane size="50%"
|
||||
pane command="htop" size="50%"
|
||||
}
|
||||
pane command="htop" size="50%"
|
||||
}
|
||||
}
|
||||
}
|
||||
-27
@@ -1,27 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 101
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
default_tab_template {
|
||||
children
|
||||
}
|
||||
tab split_direction="Horizontal" {
|
||||
pane size=1 borderless=true {
|
||||
plugin location="zellij:tab-bar"
|
||||
}
|
||||
pane split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane command="htop" size="50%"
|
||||
pane command="htop" size="50%" {
|
||||
args "-C" "--tree"
|
||||
}
|
||||
}
|
||||
}
|
||||
pane size=5
|
||||
pane size=2 borderless=true {
|
||||
plugin location="zellij:status-bar"
|
||||
}
|
||||
}
|
||||
}
|
||||
-17
@@ -1,17 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 156
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
default_tab_template {
|
||||
children
|
||||
}
|
||||
tab split_direction="Vertical" {
|
||||
pane split_direction="Vertical" {
|
||||
pane command="bash" {
|
||||
args "-c" "exec bash --init-file <(echo \"echo hi\") -i"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
-24
@@ -1,24 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 46
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
pane size=1 borderless=true {
|
||||
plugin location="zellij:tab-bar"
|
||||
}
|
||||
pane
|
||||
pane size=2 borderless=true {
|
||||
plugin location="zellij:status-bar"
|
||||
}
|
||||
}
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
}
|
||||
}
|
||||
default_shell "fish"
|
||||
|
||||
-26
@@ -1,26 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 57
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
pane size=1 borderless=true {
|
||||
plugin location="zellij:tab-bar"
|
||||
}
|
||||
pane
|
||||
pane size=2 borderless=true {
|
||||
plugin location="zellij:status-bar"
|
||||
}
|
||||
}
|
||||
session_name "foo"
|
||||
attach_to_session true
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||
}
|
||||
}
|
||||
default_shell "fish"
|
||||
|
||||
-16
@@ -1,16 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 24
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
pane size=1 borderless=true {
|
||||
plugin location="zellij:tab-bar"
|
||||
}
|
||||
pane
|
||||
pane size=2 borderless=true {
|
||||
plugin location="zellij:status-bar"
|
||||
}
|
||||
}
|
||||
session_name "foo"
|
||||
attach_to_session true
|
||||
-16
@@ -1,16 +0,0 @@
|
||||
---
|
||||
source: zellij-client/src/old_config_converter/./unit/convert_layout_tests.rs
|
||||
assertion_line: 35
|
||||
expression: "format!(\"{}\", kdl_config)"
|
||||
---
|
||||
layout {
|
||||
pane size=1 borderless=true {
|
||||
plugin location="zellij:tab-bar"
|
||||
}
|
||||
pane
|
||||
pane size=2 borderless=true {
|
||||
plugin location="zellij:status-bar"
|
||||
}
|
||||
}
|
||||
session_name "foo"
|
||||
attach_to_session false
|
||||
@@ -254,15 +254,19 @@ mod mock_ws_server {
|
||||
let recv_task = tokio::spawn(async move {
|
||||
while let Some(Ok(axum_msg)) = ws_rx.next().await {
|
||||
let tungstenite_msg = match axum_msg {
|
||||
axum::extract::ws::Message::Text(text) => Message::Text(text.to_string()),
|
||||
axum::extract::ws::Message::Binary(data) => Message::Binary(data.to_vec()),
|
||||
axum::extract::ws::Message::Ping(data) => Message::Ping(data.to_vec()),
|
||||
axum::extract::ws::Message::Pong(data) => Message::Pong(data.to_vec()),
|
||||
axum::extract::ws::Message::Text(text) => {
|
||||
Message::Text(text.to_string().into())
|
||||
},
|
||||
axum::extract::ws::Message::Binary(data) => {
|
||||
Message::Binary(data.to_vec().into())
|
||||
},
|
||||
axum::extract::ws::Message::Ping(data) => Message::Ping(data.to_vec().into()),
|
||||
axum::extract::ws::Message::Pong(data) => Message::Pong(data.to_vec().into()),
|
||||
axum::extract::ws::Message::Close(frame) => {
|
||||
if let Some(f) = frame {
|
||||
Message::Close(Some(tokio_tungstenite::tungstenite::protocol::CloseFrame {
|
||||
code: tokio_tungstenite::tungstenite::protocol::frame::coding::CloseCode::from(f.code),
|
||||
reason: std::borrow::Cow::Owned(f.reason.to_string()),
|
||||
reason: f.reason.to_string().into(),
|
||||
}))
|
||||
} else {
|
||||
Message::Close(None)
|
||||
@@ -278,10 +282,18 @@ mod mock_ws_server {
|
||||
match msg {
|
||||
Ok(tungstenite_msg) => {
|
||||
let axum_msg = match tungstenite_msg {
|
||||
Message::Text(text) => axum::extract::ws::Message::Text(text.into()),
|
||||
Message::Binary(data) => axum::extract::ws::Message::Binary(data.into()),
|
||||
Message::Ping(data) => axum::extract::ws::Message::Ping(data.into()),
|
||||
Message::Pong(data) => axum::extract::ws::Message::Pong(data.into()),
|
||||
Message::Text(text) => {
|
||||
axum::extract::ws::Message::Text(text.to_string().into())
|
||||
},
|
||||
Message::Binary(data) => {
|
||||
axum::extract::ws::Message::Binary(data.to_vec().into())
|
||||
},
|
||||
Message::Ping(data) => {
|
||||
axum::extract::ws::Message::Ping(data.to_vec().into())
|
||||
},
|
||||
Message::Pong(data) => {
|
||||
axum::extract::ws::Message::Pong(data.to_vec().into())
|
||||
},
|
||||
Message::Close(frame) => {
|
||||
if let Some(f) = frame {
|
||||
axum::extract::ws::Message::Close(Some(
|
||||
@@ -429,7 +441,7 @@ async fn test_terminal_output_written_to_stdout() {
|
||||
let test_output = "Hello from terminal";
|
||||
server
|
||||
.terminal_to_client_tx
|
||||
.send(Message::Text(test_output.to_string()))
|
||||
.send(Message::Text(test_output.to_string().into()))
|
||||
.unwrap();
|
||||
|
||||
tokio::time::sleep(Duration::from_millis(200)).await;
|
||||
@@ -712,7 +724,9 @@ async fn test_control_message_handling() {
|
||||
let query_msg = WebServerToWebClientControlMessage::QueryTerminalSize;
|
||||
server
|
||||
.control_to_client_tx
|
||||
.send(Message::Text(serde_json::to_string(&query_msg).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&query_msg).unwrap().into(),
|
||||
))
|
||||
.unwrap();
|
||||
|
||||
tokio::time::sleep(Duration::from_millis(200)).await;
|
||||
@@ -744,7 +758,9 @@ async fn test_control_message_handling() {
|
||||
};
|
||||
server
|
||||
.control_to_client_tx
|
||||
.send(Message::Text(serde_json::to_string(&log_msg).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&log_msg).unwrap().into(),
|
||||
))
|
||||
.unwrap();
|
||||
|
||||
tokio::time::sleep(Duration::from_millis(100)).await;
|
||||
|
||||
@@ -392,7 +392,9 @@ mod web_client_tests {
|
||||
};
|
||||
|
||||
control_sink
|
||||
.send(Message::Text(serde_json::to_string(&resize_msg).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&resize_msg).unwrap().into(),
|
||||
))
|
||||
.await
|
||||
.expect("Failed to send resize message");
|
||||
|
||||
@@ -411,7 +413,7 @@ mod web_client_tests {
|
||||
let (mut terminal_sink, _terminal_stream) = terminal_ws.split();
|
||||
|
||||
terminal_sink
|
||||
.send(Message::Text("echo hello\n".to_string()))
|
||||
.send(Message::Text("echo hello\n".to_string().into()))
|
||||
.await
|
||||
.expect("Failed to send terminal input");
|
||||
|
||||
@@ -809,7 +811,9 @@ mod web_client_tests {
|
||||
};
|
||||
|
||||
control_sink
|
||||
.send(Message::Text(serde_json::to_string(&resize_msg).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&resize_msg).unwrap().into(),
|
||||
))
|
||||
.await
|
||||
.expect("Failed to send resize message");
|
||||
|
||||
@@ -965,12 +969,16 @@ mod web_client_tests {
|
||||
};
|
||||
|
||||
control_sink_1
|
||||
.send(Message::Text(serde_json::to_string(&resize_msg_1).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&resize_msg_1).unwrap().into(),
|
||||
))
|
||||
.await
|
||||
.expect("Failed to send resize message for client 1");
|
||||
|
||||
control_sink_2
|
||||
.send(Message::Text(serde_json::to_string(&resize_msg_2).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&resize_msg_2).unwrap().into(),
|
||||
))
|
||||
.await
|
||||
.expect("Failed to send resize message for client 2");
|
||||
|
||||
@@ -1009,7 +1017,7 @@ mod web_client_tests {
|
||||
|
||||
let send_result = control_sink_2
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&resize_msg_2_again).unwrap(),
|
||||
serde_json::to_string(&resize_msg_2_again).unwrap().into(),
|
||||
))
|
||||
.await;
|
||||
|
||||
@@ -1099,7 +1107,7 @@ mod web_client_tests {
|
||||
let (mut terminal_sink, mut terminal_stream) = terminal_ws.split();
|
||||
|
||||
terminal_sink
|
||||
.send(Message::Text("test input\n".to_string()))
|
||||
.send(Message::Text("test input\n".to_string().into()))
|
||||
.await
|
||||
.expect("Failed to send terminal input");
|
||||
|
||||
@@ -1235,7 +1243,7 @@ mod web_client_tests {
|
||||
let (mut terminal_sink, mut terminal_stream) = terminal_ws.split();
|
||||
|
||||
terminal_sink
|
||||
.send(Message::Text("echo test\n".to_string()))
|
||||
.send(Message::Text("echo test\n".to_string().into()))
|
||||
.await
|
||||
.expect("Failed to send terminal input");
|
||||
|
||||
@@ -1893,7 +1901,9 @@ mod web_client_tests {
|
||||
}),
|
||||
};
|
||||
control_sink
|
||||
.send(Message::Text(serde_json::to_string(&resize_msg).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&resize_msg).unwrap().into(),
|
||||
))
|
||||
.await
|
||||
.expect("Failed to send resize message");
|
||||
|
||||
@@ -2066,7 +2076,9 @@ mod web_client_tests {
|
||||
}),
|
||||
};
|
||||
control_sink
|
||||
.send(Message::Text(serde_json::to_string(&resize_msg).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&resize_msg).unwrap().into(),
|
||||
))
|
||||
.await
|
||||
.expect("Failed to send resize message");
|
||||
|
||||
@@ -2396,7 +2408,9 @@ mod web_client_tests {
|
||||
};
|
||||
|
||||
control_sink
|
||||
.send(Message::Text(serde_json::to_string(&resize_msg).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&resize_msg).unwrap().into(),
|
||||
))
|
||||
.await
|
||||
.expect("Failed to send resize message");
|
||||
|
||||
@@ -2499,7 +2513,9 @@ mod web_client_tests {
|
||||
};
|
||||
|
||||
control_sink
|
||||
.send(Message::Text(serde_json::to_string(&resize_msg).unwrap()))
|
||||
.send(Message::Text(
|
||||
serde_json::to_string(&resize_msg).unwrap().into(),
|
||||
))
|
||||
.await
|
||||
.expect("Failed to send resize message");
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ anyhow = { workspace = true }
|
||||
async-trait = { workspace = true }
|
||||
crossbeam = { version = "0.8", default-features = false, features = ["crossbeam-channel", "std"] }
|
||||
interprocess = { workspace = true }
|
||||
insta = { version = "1.6.0", features = ["backtrace"] }
|
||||
insta = "1.48"
|
||||
log = { workspace = true }
|
||||
regex = { workspace = true }
|
||||
tokio = { workspace = true }
|
||||
|
||||
@@ -28,15 +28,13 @@ log = { workspace = true }
|
||||
notify-debouncer-full = { workspace = true }
|
||||
prost = { workspace = true }
|
||||
regex = { workspace = true }
|
||||
semver = { version = "0.11.0", default-features = false }
|
||||
serde = { workspace = true }
|
||||
serde_json = { workspace = true }
|
||||
sixel-image = { version = "0.2.1", default-features = false }
|
||||
sixel-tokenizer = { version = "0.1.0", default-features = false }
|
||||
sysinfo = { version = "0.37", default-features = false, features = ["system"] }
|
||||
sysinfo = { version = "0.39.5", default-features = false, features = ["system"] }
|
||||
tempfile = { workspace = true }
|
||||
tokio = { workspace = true }
|
||||
typetag = { version = "0.1.7", default-features = false }
|
||||
unicode-width = { workspace = true }
|
||||
url = { workspace = true }
|
||||
uuid = { workspace = true }
|
||||
@@ -69,7 +67,7 @@ windows-sys = { workspace = true, features = [
|
||||
] }
|
||||
|
||||
[dev-dependencies]
|
||||
insta = "1.6.0"
|
||||
insta = "1.48"
|
||||
tempfile = "3.2.0"
|
||||
wasmi = { version = "1.1.0", features = ["std"] }
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ winapi = { version = "0.3.9", default-features = false }
|
||||
dunce = "1.0"
|
||||
|
||||
[dev-dependencies]
|
||||
insta = { version = "1.6.0", features = ["backtrace"] }
|
||||
insta = "1.48"
|
||||
expect-test = "1.4.1"
|
||||
|
||||
[features]
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -640,15 +640,6 @@ pub enum Sessions {
|
||||
)]
|
||||
tab_id: Option<usize>,
|
||||
},
|
||||
ConvertConfig {
|
||||
old_config_file: PathBuf,
|
||||
},
|
||||
ConvertLayout {
|
||||
old_layout_file: PathBuf,
|
||||
},
|
||||
ConvertTheme {
|
||||
old_theme_file: PathBuf,
|
||||
},
|
||||
/// Send data to one or more plugins, launch them if they are not running.
|
||||
#[clap(override_usage(
|
||||
r#"
|
||||
|
||||
@@ -772,7 +772,7 @@ mod not_wasm {
|
||||
const MAX_THREAD_CALL_STACK: usize = 6;
|
||||
|
||||
#[derive(Debug, ThisError, Diagnostic)]
|
||||
#[error("{0}{}", self.show_backtrace())]
|
||||
#[error("{0}{backtrace}", backtrace = self.show_backtrace())]
|
||||
#[diagnostic(help("{}", self.show_help()))]
|
||||
struct Panic(String);
|
||||
|
||||
|
||||
@@ -26,10 +26,19 @@ use crate::position::Position;
|
||||
use std::collections::{BTreeMap, BTreeSet};
|
||||
use std::path::PathBuf;
|
||||
|
||||
const ROUNDTRIP_TEST_STACK_SIZE: usize = 32 * 1024 * 1024;
|
||||
|
||||
#[test]
|
||||
fn server_client_contract() {
|
||||
test_client_messages();
|
||||
test_server_messages();
|
||||
std::thread::Builder::new()
|
||||
.stack_size(ROUNDTRIP_TEST_STACK_SIZE)
|
||||
.spawn(|| {
|
||||
test_client_messages();
|
||||
test_server_messages();
|
||||
})
|
||||
.expect("failed to spawn roundtrip test thread")
|
||||
.join()
|
||||
.expect("roundtrip test thread panicked");
|
||||
}
|
||||
|
||||
fn test_client_messages() {
|
||||
|
||||
@@ -136,7 +136,11 @@ fn init_db(conn: &Connection) -> Result<()> {
|
||||
pub fn hash_token(token: &str) -> String {
|
||||
let mut hasher = Sha256::new();
|
||||
hasher.update(token.as_bytes());
|
||||
format!("{:x}", hasher.finalize())
|
||||
hasher
|
||||
.finalize()
|
||||
.iter()
|
||||
.map(|byte| format!("{:02x}", byte))
|
||||
.collect()
|
||||
}
|
||||
|
||||
pub fn create_token(name: Option<String>, read_only: bool) -> Result<(String, String)> {
|
||||
|
||||
Reference in New Issue
Block a user