diff options
| author | Dan Rosén <dan.rosen@gu.se> | 2017-05-25 21:39:05 +0200 |
|---|---|---|
| committer | Dan Rosén <dan.rosen@gu.se> | 2017-05-25 21:48:41 +0200 |
| commit | b1735ae76ed730698c9b25b9534a96c625f52b03 (patch) | |
| tree | 97c4d6922fa39b8917fa52d8e6aa2ea286e70301 /src | |
| parent | 55d1d1020d215730737554045537cf3a8877c46a (diff) | |
Expose last entered command in register :
Diffstat (limited to 'src')
| -rw-r--r-- | src/input_handler.cc | 3 | ||||
| -rw-r--r-- | src/main.cc | 2 | ||||
| -rw-r--r-- | src/normal.cc | 1 |
3 files changed, 4 insertions, 2 deletions
diff --git a/src/input_handler.cc b/src/input_handler.cc index 9a4d8c83..18da32d7 100644 --- a/src/input_handler.cc +++ b/src/input_handler.cc @@ -149,7 +149,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 1dc5bf16..5bd1afe5 100644 --- a/src/main.cc +++ b/src/main.cc @@ -171,7 +171,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 6b2b568a..aa2c3903 100644 --- a/src/normal.cc +++ b/src/normal.cc @@ -451,6 +451,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{¶ms.reg, 1} } |
