summaryrefslogtreecommitdiff
path: root/src/input_handler.cc
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2017-09-23 13:13:51 +0900
committerMaxime Coste <mawww@kakoune.org>2017-09-23 13:13:51 +0900
commit002e77534f23890ccf7a2dfd31b76d4962f657ff (patch)
treef903afb1e4d2a0315dc38145abafee476e11dd6a /src/input_handler.cc
parent81070875107c9705e79e79c3b6e4225d92b70991 (diff)
parenta20ecf6b005350b42be60ce74d1c3d0354ee74ee (diff)
Merge remote-tracking branch 'occivink/quit-on-esc'
Diffstat (limited to 'src/input_handler.cc')
-rw-r--r--src/input_handler.cc40
1 files changed, 21 insertions, 19 deletions
diff --git a/src/input_handler.cc b/src/input_handler.cc
index eae424da..65330487 100644
--- a/src/input_handler.cc
+++ b/src/input_handler.cc
@@ -260,15 +260,15 @@ public:
{
on_next_key_with_autoinfo(context(), KeymapMode::None,
[this](Key key, Context& context) {
- if (auto cp = key.codepoint())
- {
- if (*cp <= 127)
- m_params.reg = *cp;
- else
- context.print_status(
- { format("invalid register '{}'", *cp),
- get_face("Error") });
- }
+ auto cp = key.codepoint();
+ if (not cp or key == Key::Escape)
+ return;
+ if (*cp <= 127)
+ m_params.reg = *cp;
+ else
+ context.print_status(
+ { format("invalid register '{}'", *cp),
+ get_face("Error") });
}, "enter target register", register_doc);
}
else
@@ -755,14 +755,14 @@ public:
{
on_next_key_with_autoinfo(context(), KeymapMode::None,
[this](Key key, Context&) {
- if (auto cp = key.codepoint())
- {
- StringView reg = context().main_sel_register_value(String{*cp});
- m_line_editor.insert(reg);
-
- display();
- m_line_changed = true;
- }
+ auto cp = key.codepoint();
+ if (not cp or key == Key::Escape)
+ return;
+ StringView reg = context().main_sel_register_value(String{*cp});
+ m_line_editor.insert(reg);
+
+ display();
+ m_line_changed = true;
}, "enter register name", register_doc);
display();
return;
@@ -1183,8 +1183,10 @@ public:
{
on_next_key_with_autoinfo(context(), KeymapMode::None,
[this](Key key, Context&) {
- if (auto cp = key.codepoint())
- insert(RegisterManager::instance()[*cp].get(context()));
+ auto cp = key.codepoint();
+ if (not cp or key == Key::Escape)
+ return;
+ insert(RegisterManager::instance()[*cp].get(context()));
}, "enter register name", register_doc);
update_completions = false;
}