diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/config.rs | 3 | ||||
-rw-r--r-- | src/input.rs | 7 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/config.rs b/src/config.rs index 05147631..d08b801b 100644 --- a/src/config.rs +++ b/src/config.rs @@ -352,7 +352,7 @@ impl de::Deserialize for ActionWrapper { type Value = ActionWrapper; fn expecting(&self, f: &mut fmt::Formatter) -> fmt::Result { - f.write_str("Paste, Copy, or PasteSelection") + f.write_str("Paste, Copy, PasteSelection, or Quit") } fn visit_str<E>(self, value: &str) -> ::std::result::Result<ActionWrapper, E> @@ -362,6 +362,7 @@ impl de::Deserialize for ActionWrapper { "Paste" => Action::Paste, "Copy" => Action::Copy, "PasteSelection" => Action::PasteSelection, + "Quit" => Action::Quit, _ => return Err(E::invalid_value(Unexpected::Str(value), &self)), })) } diff --git a/src/input.rs b/src/input.rs index 491a91cc..92126387 100644 --- a/src/input.rs +++ b/src/input.rs @@ -137,6 +137,9 @@ pub enum Action { /// Paste contents of selection buffer PasteSelection, + + /// Quits Alacritty. + Quit, } impl Action { @@ -165,6 +168,10 @@ impl Action { warn!("Error loading data from clipboard. {}", Red(err)); }); }, + Action::Quit => { + // FIXME should do a more graceful shutdown + ::std::process::exit(0); + }, } } |