diff options
author | 2010-10-13 21:28:11 -0400 | |
---|---|---|
committer | 2010-10-13 21:28:11 -0400 | |
commit | f6b7e710829962be40236494a175a09224bac7c2 (patch) | |
tree | 2598ec05e0f0495ad3b6912bad29bca4d425636a /modules | |
parent | fbc722360864470cfe5fc2afafd148e874f40c71 (diff) | |
download | textadept-f6b7e710829962be40236494a175a09224bac7c2.tar.gz textadept-f6b7e710829962be40236494a175a09224bac7c2.zip |
Think before clearing key command statusbar updates; modules/textadept/keys.lua
Diffstat (limited to 'modules')
-rw-r--r-- | modules/textadept/keys.lua | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/modules/textadept/keys.lua b/modules/textadept/keys.lua index 8cda6fb0..87c82a28 100644 --- a/modules/textadept/keys.lua +++ b/modules/textadept/keys.lua @@ -625,7 +625,15 @@ local function keypress(code, shift, control, alt) for i = SCOPES_ENABLED and 1 or 2, #order do status = run_key_command(order[i][1] and lexer, order[i][2] and scope) if status > 0 then -- CHAIN or HALT - if status == HALT then clear_key_sequence() end + if status == HALT then + -- Clear the key sequence, but keep any status messages from the key + -- command itself. + keychain = {} + if not (gui.statusbar_text == locale.INVALID or + gui.statusbar_text:find('^'..locale.KEYCHAIN)) then + gui.statusbar_text = '' + end + end return true end success = success or status ~= -1 |