Age | Commit message (Collapse) | Author |
|
Problem: CTRL-V U doesn't work to enter a Unicode character when
modifyOtherKeys is effective. (Ken Takata)
Solution: Add a flag to get_literal() for the shift key. (closes #7413)
|
|
Problem: <Cmd> does not handle CTRL-V.
Solution: Call get_literal() after encountering CTRL-V. (closes #7387)
|
|
Problem: Redoing a mapping with <Cmd> doesn't work properly.
Solution: Fill the redo buffer. Use "<SNR>" instead of a key code.
(closes #7282)
|
|
Problem: Coverity warns for not using the ga_grow() return value.
Solution: Bail out if ga_grow() fails. (Yegappan Lakshmanan, closes #7303)
|
|
Problem: Making a mapping work in all modes is complicated.
Solution: Add the <Cmd> special key. (Yegappan Lakshmanan, closes #7282,
closes 4784, based on patch by Bjorn Linse)
|
|
Problem: GUI: crash when handling message while closing a window. (Srinath
Avadhanula)
Solution: Don't handle message while closing a window. (closes #7250)
|
|
Problem: A popup filter interferes with using :normal to move the cursor in
a popup.
Solution: Do not invoke the filter when ex_normal_busy is set.
|
|
Problem: Endless loop when ":normal" feeds popup window filter.
Solution: Add the ex_normal_busy_done flag.
|
|
Problem: Vim9: getchar() test fails with GUI.
Solution: Avoid that getchar(0) gets stuck on K_IGNORE.
|
|
Problem: Vim9: cannot use "true" with getchar().
Solution: use tv_get_bool_chk(). (closes #6874)
|
|
Problem: Triggering the ATTENTION prompt causes typeahead to be messed up.
Solution: Increment tb_change_cnt. (closes #6541)
|
|
Problem: Once mouse move events are enabled getchar() returns them.
Solution: Ignore K_MOUSEMOVE in getchar(). (closes #6424)
|
|
Problem: No simple way to interrupt Vim.
Solution: Add the SigUSR1 autocommand, triggered by SIGUSR1. (Jacob Hayes,
closes #1718)
|
|
Problem: Merging modifier for modifyOtherKeys is done twice.
Solution: Remove the merging done in vgetc().
|
|
Problem: Mapping with partly modifyOtherKeys code does not work.
Solution: If there is no mapping with a separate modifier include the
modifier in the key and then try mapping again. (closes #6200)
|
|
Problem: Assuming modifyOtherKeys for rhs of mapping.
Solution: Ignore seenModifyOtherKeys for mapped characters. (closes #6200)
|
|
Problem: Can't distinguish <M-a> from accented "a" in the GUI.
Solution: Use another way to make mapping <C-bslash> work. (closes #6163)
|
|
Problem: Dropping modifier when putting a character back in typeahead.
Solution: Add modifier to ins_char_typebuf(). (closes #6158)
|
|
Problem: Motif: mapping <C-bslash> still doesn't work.
Solution: Accept CSI for K_SPECIAL. Do not apply CTRL to the character
early. (closes #6150)
|
|
Problem: Haiku: channel and terminal do not work.
Solution: Close files when the job has finished. (Ozaki Kiichi,
closes #6039)
|
|
Problem: Some source files are too big.
Solution: Move text formatting functions to a new file. (Yegappan
Lakshmanan, closes #6021)
|
|
Problem: Several global functions are used in only one file.
Solution: Make the functions static. (Yegappan Lakshmanan, closes #5884)
|
|
Problem: The typebuf_was_filled flag is sometimes not reset, which may
cause a hang.
Solution: Make sure typebuf_was_filled is reset when the typeahead buffer is
empty.
|
|
Problem: MS-Windows: feedkeys() with VIMDLL cannot handle CSI correctly.
Solution: Modify mch_inchar() to encode CSI bytes. (Ozaki Kiichi, Ken
Takata, closes #5726)
|
|
Problem: Hang with combination of feedkeys(), Ex mode and :global.
(Yegappan Lakshmanan)
Solution: Add the pending_exmode_active flag.
|
|
Problem: Various typos in source files and tests.
Solution: Fix the typos. (Emir Sari, closes #5532)
|
|
Problem: Using old C style comments.
Solution: Use // comments where appropriate.
|
|
Problem: FEAT_TEXT_PROP is a confusing name.
Solution: Use FEAT_PROP_POPUP. (Naruhiko Nishino, closes #5291)
|
|
Problem: Other text for CTRL-V in Insert mode with modifyOtherKeys.
Solution: Convert the Escape sequence back to key as if modifyOtherKeys is
not set, and use CTRL-SHIFT-V to get the Escape sequence itself.
(closes #5254)
|
|
Problem: When an expr mapping moves the cursor it is not restored.
Solution: Position the cursor after an expr mapping. (closes #5256)
|
|
Problem: With modifyOtherKeys CTRL-^ doesn't work.
Solution: Handle the exception.
|
|
Problem: Typos in comments.
Solution: Fix the typos. (Dominique Pelle, closes #5160) Also adjust
formatting a bit.
|
|
Problem: Crash when memory allocation fails.
Solution: Check for NULL curwin and curbuf. (Christian Brabandt,
closes #4839)
|
|
Problem: When using modifyOtherKeys CTRL-X mode may not work.
Solution: Recognize a control character also in the form with a modifier.
|
|
Problem: Mouse support not always available.
Solution: Enable mouse support also in tiny version. Do not define
FEAT_MOUSE_XTERM on MS-Windows (didn't really work).
|
|
Problem: Cannot map <C-H> when modifyOtherKeys is enabled.
Solution: Add the <C-H> mapping twice, both with modifier and as 0x08. Use
only the first one when modifyOtherKeys has been detected.
|
|
Problem: With modifyOtherKeys Alt-a does not work properly.
Solution: Remove the ALT modifier. Get multi-byte after applying ALT.
|
|
Problem: Modifier keys are not always recognized.
Solution: Handle key codes generated by xterm with modifyOtherKeys set.
Add this to libvterm so we can debug it.
|
|
Problem: Some MB_ macros are more complicated than necessary. (Dominique
Pelle)
Solution: Simplify the macros. Expand inline.
|
|
Problem: CTRL-C closes two popups instead of one.
Solution: Reset got_int when the filter consumed the key.
|
|
Problem: Double free when memory allocation fails. (Zu-Ming Jiang)
Solution: Use VIM_CLEAR() instead of vim_free(). (closes #4991)
|
|
Problem: SafeStateAgain not triggered if callback uses feedkeys().
Solution: Check for safe state in the input loop. Make log messages easier
to find. Add 'S' flag to state().
|
|
Problem: Not clear why SafeState and SafeStateAgain are not triggered.
Solution: Add log statements.
|
|
Problem: SafeState may be triggered at the wrong moment.
Solution: Move it up higher to after where messages are processed. Add a
SafeStateAgain event to tigger there.
|
|
Problem: The evalfunc.c file is too big.
Solution: Move getchar() and parse_queued_messages() to getchar.c.
|
|
Problem: The +insert_expand feature is not always available.
Solution: Graduate the +insert_expand feature.
|
|
Problem: Functions used in one file are global.
Solution: Add "static". (Yegappan Lakshmanan, closes #4840)
|
|
Problem: Allocating more memory than needed for extended structs.
Solution: Use offsetof() instead of sizeof(). (Dominique Pelle,
closes #4786)
|
|
Problem: Cannot avoid mapping for a popup window.
Solution: Add the "mapping" property, default TRUE.
|
|
Problem: Warning for unused variable in tiny version. (Tony Mechelynck)
Solution: Move inside #ifdef. Reformat code.
|