Merge remote-tracking branch 'topisani/fix-3600'
This commit is contained in:
commit
e56ffd9d36
|
@ -1582,7 +1582,7 @@ void InputHandler::repeat_last_insert()
|
||||||
// refill last_insert, this is very inefficient, but necessary at the moment
|
// refill last_insert, this is very inefficient, but necessary at the moment
|
||||||
// to properly handle insert completion
|
// to properly handle insert completion
|
||||||
m_last_insert.keys.push_back(key);
|
m_last_insert.keys.push_back(key);
|
||||||
current_mode().handle_key(key, true);
|
handle_key(key);
|
||||||
}
|
}
|
||||||
kak_assert(dynamic_cast<InputModes::Normal*>(¤t_mode()) != nullptr);
|
kak_assert(dynamic_cast<InputModes::Normal*>(¤t_mode()) != nullptr);
|
||||||
}
|
}
|
||||||
|
@ -1655,11 +1655,12 @@ void InputHandler::handle_key(Key key)
|
||||||
auto dec = on_scope_end([this]{ --m_handle_key_level;} );
|
auto dec = on_scope_end([this]{ --m_handle_key_level;} );
|
||||||
|
|
||||||
auto process_key = [&](Key key, bool synthesized) {
|
auto process_key = [&](Key key, bool synthesized) {
|
||||||
if (m_last_insert.recording)
|
|
||||||
m_last_insert.keys.push_back(key);
|
|
||||||
current_mode().handle_key(key, synthesized);
|
current_mode().handle_key(key, synthesized);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (m_last_insert.recording and m_handle_key_level <= 1)
|
||||||
|
m_last_insert.keys.push_back(key);
|
||||||
|
|
||||||
const auto keymap_mode = current_mode().keymap_mode();
|
const auto keymap_mode = current_mode().keymap_mode();
|
||||||
KeymapManager& keymaps = m_context.keymaps();
|
KeymapManager& keymaps = m_context.keymaps();
|
||||||
if (keymaps.is_mapped(key, keymap_mode) and not m_context.keymaps_disabled())
|
if (keymaps.is_mapped(key, keymap_mode) and not m_context.keymaps_disabled())
|
||||||
|
|
1
test/normal/repeat-insert/repeat-insert-hooks/cmd
Normal file
1
test/normal/repeat-insert/repeat-insert-hooks/cmd
Normal file
|
@ -0,0 +1 @@
|
||||||
|
:hook -group h g InsertChar f %{exec FINSERTED}<ret>ifoo<esc>.\.\ifoo<esc>.
|
1
test/normal/repeat-insert/repeat-insert-hooks/out
Normal file
1
test/normal/repeat-insert/repeat-insert-hooks/out
Normal file
|
@ -0,0 +1 @@
|
||||||
|
fFINSERTEDoofFINSERTEDoofoofoofoo
|
1
test/normal/repeat-insert/repeat-insert-mapped/cmd
Normal file
1
test/normal/repeat-insert/repeat-insert-mapped/cmd
Normal file
|
@ -0,0 +1 @@
|
||||||
|
ixyz<esc>.
|
1
test/normal/repeat-insert/repeat-insert-mapped/out
Normal file
1
test/normal/repeat-insert/repeat-insert-mapped/out
Normal file
|
@ -0,0 +1 @@
|
||||||
|
zzxx
|
1
test/normal/repeat-insert/repeat-insert-mapped/rc
Normal file
1
test/normal/repeat-insert/repeat-insert-mapped/rc
Normal file
|
@ -0,0 +1 @@
|
||||||
|
map global insert y '<a-;>gh'
|
1
test/normal/repeat-insert/repeat-normal-exec/cmd
Normal file
1
test/normal/repeat-insert/repeat-normal-exec/cmd
Normal file
|
@ -0,0 +1 @@
|
||||||
|
i<a-;>:execute-keys foo<ret><esc>.
|
1
test/normal/repeat-insert/repeat-normal-exec/out
Normal file
1
test/normal/repeat-insert/repeat-normal-exec/out
Normal file
|
@ -0,0 +1 @@
|
||||||
|
foofoo
|
1
test/normal/repeat-insert/repeat-normal-movement/cmd
Normal file
1
test/normal/repeat-insert/repeat-normal-movement/cmd
Normal file
|
@ -0,0 +1 @@
|
||||||
|
ifoo<a-;>ghbar<esc>.
|
1
test/normal/repeat-insert/repeat-normal-movement/out
Normal file
1
test/normal/repeat-insert/repeat-normal-movement/out
Normal file
|
@ -0,0 +1 @@
|
||||||
|
barbarfoofoo
|
Loading…
Reference in New Issue
Block a user