os/input.c: parse keycodes in non-string context #7411

cb02137dfa had two mistakes, of the same nature: trans_special() must
be invoked with in_string=false unless the parsing context is a VimL
string. replace_termcodes() and input_enqueue() are low-level
mechanisms where VimL strings do not exist.

keymap.c: adjust double-quote case to satisfy keymap_spec.lua

closes #7410
This commit is contained in:
lePerdu
2017-10-18 18:27:31 -04:00
committed by Justin M. Keyes
parent 8fc437ef43
commit bc17ad31dc
4 changed files with 85 additions and 5 deletions

View File

@@ -5,6 +5,7 @@ local feed = helpers.feed
local meths = helpers.meths
local clear = helpers.clear
local command = helpers.command
local expect = helpers.expect
describe(':*map', function()
before_each(clear)
@@ -18,4 +19,10 @@ describe(':*map', function()
feed('\24\25<C-x><C-y>')
eq(4, meths.get_var('counter'))
end)
it(':imap <M-">', function()
command('imap <M-"> foo')
feed('i-<M-">-')
expect('-foo-')
end)
end)