diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2013-04-03 19:14:38 +0200 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2013-04-03 19:14:38 +0200 |
| commit | c6262fc5e1aa9ca226cf0c6b6aeb86e519fa66e2 (patch) | |
| tree | c25f422b2d7928584e56477faaaea13c17e86f98 /src | |
| parent | d56f6444b5ff1e16b4f84d5052e02346d68684ca (diff) | |
use Y for concatenated yank
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/main.cc b/src/main.cc index e4219515..1ae2da8f 100644 --- a/src/main.cc +++ b/src/main.cc @@ -257,6 +257,15 @@ void do_yank(Context& context) RegisterManager::instance()['"'] = context.editor().selections_content(); } +void do_cat_yank(Context& context) +{ + auto sels = context.editor().selections_content(); + String str; + for (auto& sel : sels) + str += sel; + RegisterManager::instance()['"'] = memoryview<String>(str); +} + void do_erase(Context& context) { RegisterManager::instance()['"'] = context.editor().selections_content(); @@ -647,6 +656,7 @@ std::unordered_map<Key, std::function<void (Context& context)>> keymap = { { Key::Modifiers::None, 'G' }, do_go<SelectMode::Extend> }, { { Key::Modifiers::None, 'y' }, do_yank }, + { { Key::Modifiers::None, 'Y' }, do_cat_yank }, { { Key::Modifiers::None, 'p' }, repeated(do_paste<InsertMode::Append>) }, { { Key::Modifiers::None, 'P' }, repeated(do_paste<InsertMode::Insert>) }, { { Key::Modifiers::Alt, 'p' }, do_paste<InsertMode::Replace> }, |
