summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2017-06-29 07:29:32 +0100
committerMaxime Coste <mawww@kakoune.org>2017-06-29 07:29:32 +0100
commit9bbab690ba2e260bbc9e17f6cc37b5c1ba09c0dd (patch)
tree6bf25a42c890fe57aeffd3d220da015bf28f74ed /src
parentcc946764ed16ea36c651aff6716c2f96e5471909 (diff)
parentb1735ae76ed730698c9b25b9534a96c625f52b03 (diff)
Merge remote-tracking branch 'danr/Expose-last-entered-command-in-register'
Diffstat (limited to 'src')
-rw-r--r--src/input_handler.cc3
-rw-r--r--src/main.cc2
-rw-r--r--src/normal.cc1
3 files changed, 4 insertions, 2 deletions
diff --git a/src/input_handler.cc b/src/input_handler.cc
index 2a14fc71..98719132 100644
--- a/src/input_handler.cc
+++ b/src/input_handler.cc
@@ -151,7 +151,8 @@ constexpr StringView register_doc =
" * @: default macro register\n"
" * /: default search register\n"
" * ^: default mark register\n"
- " * |: default shell command register\n";
+ " * |: default shell command register\n"
+ " * :: last entered command\n";
class Normal : public InputMode
{
diff --git a/src/main.cc b/src/main.cc
index b5b5cddc..cf2c051a 100644
--- a/src/main.cc
+++ b/src/main.cc
@@ -181,7 +181,7 @@ void register_registers()
{
RegisterManager& register_manager = RegisterManager::instance();
- for (auto c : "abcdefghijklmnopqrstuvwxyz/\"|^@")
+ for (auto c : "abcdefghijklmnopqrstuvwxyz/\"|^@:")
register_manager.add_register(c, make_unique<StaticRegister>());
using StringList = Vector<String, MemoryDomain::Registers>;
diff --git a/src/normal.cc b/src/normal.cc
index 033eef34..57581d53 100644
--- a/src/normal.cc
+++ b/src/normal.cc
@@ -450,6 +450,7 @@ void command(Context& context, NormalParams params)
}
if (event == PromptEvent::Validate)
{
+ RegisterManager::instance()[':'].set(context, cmdline.str());
EnvVarMap env_vars = {
{ "count", to_string(params.count) },
{ "register", String{&params.reg, 1} }