Problem: When waiting for a character is interrupted by receiving channel
data and the first character of a mapping was typed, the mapping
times out. (Ramel Eshed)
Solution: When dealing with channel data don't return from mch_inchar().
Problem: Using old function name in comment. More functions should start
with test_.
Solution: Rename function in comment. (Higashi Higashi) Rename
disable_char_avail_for_testing() to test_disable_char_avail().
And alloc_fail() to test_alloc_fail().
Problem: Cannot detect a crash in tests when caused by garbagecollect().
Solution: Add garbagecollect_for_testing(). Do not free a job if is still
useful.
Problem: 'langmap' applies to the first character typed in Select mode.
(David Watson)
Solution: Check for SELECTMODE. (Christian Brabandt, closes#572)
Add the 'x' flag to feedkeys().
Problem: May get into an invalid state when using getchar() in an
expression mapping.
Solution: Anticipate mod_mask to change. (idea by Yukihiro Nakadaira)
Problem: Crash when changing the 'tags' option from a remote command.
(Benjamin Fritz)
Solution: Instead of executing messages immediately, use a queue, like for
netbeans. (James Kolb)
Problem: 'langmap' is used in command-line mode when checking for mappings.
Issue 376.
Solution: Do not use 'langmap' in command-line mode. (Larry Velazquez)
Problem: Having CTRL-C interrupt or not does not check the mode of the
mapping. (Ingo Karkat)
Solution: Use a bitmask with the map mode. (Christian Brabandt)
Problem: Cannot wrap lines taking indent into account.
Solution: Add the 'breakindent' option. (many authors, final improvements by
Christian Brabandt)
Problem: When using 'pastetoggle' the status lines are not updated. (Samuel
Ferencik, Jan Christoph Ebersbach)
Solution: Update the status lines. (Nobuhiro Takasaki)
Problem: A buffer-local language mapping from a keymap stops a global
insert mode mapping from working. (Ron Aaron)
Solution: Do not wait for more characters to be typed only when the mapping
was defined with <nowait>.
Problem: When a global mapping starts with the same characters as a
buffer-local mapping Vim waits for a character to be typed to find
out whether the global mapping is to be used. (Andy Wokula)
Solution: Use the local mapping without waiting. (Michael Henry)
Problem: Many #ifdefs for MB_MAXBYTES.
Solution: Also define MB_MAXBYTES without the +multi_byte feature. Fix
places where the buffer didn't include space for a NUL byte.
Problem: CTRL-] in Insert mode does not expand abbreviation when used in a
mapping. (Yichao Zhou)
Solution: Special case using CTRL-]. (Christian Brabandt)
Problem: Fetching a key at a prompt may be confused by escape sequences.
Especially when getting a prompt at a VimEnter autocommand.
(Alex Efros)
Solution: Properly handle escape sequences deleted by check_termcode().
Problem: When 'cpoptions' includes "E" "c0" in the first column is an
error. The redo register is then set to the errornous command.
Solution: Do not set the redo register if the command fails because of an
empty region. (Hideki Eiraku)
Problem: When using an expression mapping on the command line the cursor
ends up in the wrong place. (Yasuhiro Matsumoto)
Solution: Save and restore msg_col and msg_row when evaluating the
expression.
Problem: The str2special() function doesn't handle multi-byte characters
properly.
Solution: Recognize multi-byte characters. (partly by Vladimir Vichniakov)
Problem: An expression mapping with a multi-byte character containing a
0x80 byte gets messed up. (ZyX)
Solution: Unescape the expression before evaluating it (Yukihiro Nakadaira)
Problem: When the second argument of input() contains a CR the text up to
that is used without asking the user. (Yasuhiro Matsumoto)
Solution: Change CR, NL and ESC in the text to a space.