diff options
| author | Maxime Coste <mawww@kakoune.org> | 2017-02-14 00:02:01 +0000 |
|---|---|---|
| committer | Maxime Coste <mawww@kakoune.org> | 2017-02-14 00:02:01 +0000 |
| commit | d470bd2cc9d5fb4081f998c752b8207deef857f8 (patch) | |
| tree | 0af03989ea1fc4d8ab54732fcadae8e5a4de6b19 /src/main.cc | |
| parent | e3a04dfa651ea4b32af64f207291ca8818adbf32 (diff) | |
Make numeric registers setable
Fixes #1214
Diffstat (limited to 'src/main.cc')
| -rw-r--r-- | src/main.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/main.cc b/src/main.cc index 7aba8f26..09902b5d 100644 --- a/src/main.cc +++ b/src/main.cc @@ -186,6 +186,19 @@ void register_registers() for (auto& sel : context.selections()) result.emplace_back(i < sel.captures().size() ? sel.captures()[i] : ""); return result; + }, + [i](Context& context, ConstArrayView<String> values) { + if (values.empty()) + return; + + auto& sels = context.selections(); + for (size_t sel_index = 0; sel_index < sels.size(); ++sel_index) + { + auto& sel = sels[sel_index]; + if (sel.captures().size() < i+1) + sel.captures().resize(i+1); + sel.captures()[i] = values[std::min(sel_index, values.size()-1)]; + } })); } |
