aboutsummaryrefslogtreecommitdiff
path: root/alacritty/src/config
diff options
context:
space:
mode:
Diffstat (limited to 'alacritty/src/config')
-rw-r--r--alacritty/src/config/bindings.rs2
-rw-r--r--alacritty/src/config/mod.rs1
-rw-r--r--alacritty/src/config/ui_config.rs14
3 files changed, 15 insertions, 2 deletions
diff --git a/alacritty/src/config/bindings.rs b/alacritty/src/config/bindings.rs
index dc648541..91fcd7a0 100644
--- a/alacritty/src/config/bindings.rs
+++ b/alacritty/src/config/bindings.rs
@@ -383,6 +383,8 @@ pub fn default_key_bindings() -> Vec<KeyBinding> {
Action::Esc("\x0c".into());
Tab, ModifiersState::SHIFT, ~BindingMode::VI, ~BindingMode::SEARCH;
Action::Esc("\x1b[Z".into());
+ Tab, ModifiersState::SHIFT|ModifiersState::LOGO, ~BindingMode::VI, ~BindingMode::SEARCH;
+ Action::Esc("\x1b[Z".into());
Back, ModifiersState::ALT, ~BindingMode::VI, ~BindingMode::SEARCH;
Action::Esc("\x1b\x7f".into());
Back, ModifiersState::SHIFT, ~BindingMode::VI, ~BindingMode::SEARCH;
diff --git a/alacritty/src/config/mod.rs b/alacritty/src/config/mod.rs
index 4a3c0ae9..8e834278 100644
--- a/alacritty/src/config/mod.rs
+++ b/alacritty/src/config/mod.rs
@@ -27,6 +27,7 @@ pub use crate::config::bindings::{
};
#[cfg(test)]
pub use crate::config::mouse::{ClickHandler, Mouse};
+pub use crate::config::ui_config::AltBehavior;
use crate::config::ui_config::UiConfig;
/// Maximum number of depth for the configuration file imports.
diff --git a/alacritty/src/config/ui_config.rs b/alacritty/src/config/ui_config.rs
index f05b243c..72d62c87 100644
--- a/alacritty/src/config/ui_config.rs
+++ b/alacritty/src/config/ui_config.rs
@@ -27,6 +27,13 @@ use crate::config::window::WindowConfig;
const URL_REGEX: &str = "(ipfs:|ipns:|magnet:|mailto:|gemini:|gopher:|https:|http:|news:|file:|git:|ssh:|ftp:)\
[^\u{0000}-\u{001F}\u{007F}-\u{009F}<>\"\\s{-}\\^⟨⟩`]+";
+#[derive(Deserialize, Debug, PartialEq)]
+pub enum AltBehavior {
+ NONE,
+ SEND_ESC,
+ TERMKEY,
+}
+
#[derive(ConfigDeserialize, Debug, PartialEq)]
pub struct UiConfig {
/// Font configuration.
@@ -41,7 +48,7 @@ pub struct UiConfig {
pub debug: Debug,
/// Send escape sequences using the alt key.
- pub alt_send_esc: bool,
+ pub alt_behavior: AltBehavior,
/// Live config reload.
pub live_config_reload: bool,
@@ -62,6 +69,8 @@ pub struct UiConfig {
/// Regex hints for interacting with terminal content.
pub hints: Hints,
+ pub logo_key_prefix: String,
+
/// Keybindings.
key_bindings: KeyBindings,
@@ -76,7 +85,7 @@ pub struct UiConfig {
impl Default for UiConfig {
fn default() -> Self {
Self {
- alt_send_esc: true,
+ alt_behavior: AltBehavior::SEND_ESC,
live_config_reload: true,
font: Default::default(),
window: Default::default(),
@@ -88,6 +97,7 @@ impl Default for UiConfig {
background_opacity: Default::default(),
bell: Default::default(),
colors: Default::default(),
+ logo_key_prefix: "\x1b[24;8~".into(),
draw_bold_text_with_bright_colors: Default::default(),
hints: Default::default(),
}