diff options
Diffstat (limited to 'alacritty/src/config')
-rw-r--r-- | alacritty/src/config/bindings.rs | 2 | ||||
-rw-r--r-- | alacritty/src/config/mod.rs | 1 | ||||
-rw-r--r-- | alacritty/src/config/ui_config.rs | 14 |
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(), } |