| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Problem: The vgetorpeek() function is too long.
Solution: Split off the part that handles mappings, with fix.
|
|
|
|
|
| |
Problem: Tests are flaky.
Solution: Undo the change to vgetorpeek().
|
|
|
|
|
| |
Problem: The vgetorpeek() function is too long.
Solution: Split off the part that handles mappings.
|
|
|
|
|
|
| |
Problem: Map functionality mixed with character input.
Solution: Move the map functionality to a separate file. (Yegappan
Lakshmanan, closes #4740) Graduate the +localmap feature.
|
|
|
|
|
| |
Problem: No mode char for terminal mapping from maparg().
Solution: Check for TERMINAL mode. (closes #4735)
|
|
|
|
|
| |
Problem: The CursorHold autocommand takes down a balloon. (Paul Jolly)
Solution: Ignore the CursorHold pseudo-key.
|
|
|
|
|
|
| |
Problem: On error garbage collection may free memory in use.
Solution: Reset may_garbage_collect when evaluating expression mapping.
Add tests. (Ozaki Kiichi, closes #4579)
|
|
|
|
|
| |
Problem: Popup window filter not yet implemented.
Solution: Implement the popup filter.
|
|
|
|
|
|
| |
Problem: Alloc() returning "char_u *" causes a lot of type casts.
Solution: Have it return "void *". (Mike Williams) Define ALLOC_ONE() to
check the simple allocations.
|
|
|
|
|
| |
Problem: Unessesary type casts for lalloc().
Solution: Remove type casts. Change lalloc(size, TRUE) to alloc(size).
|
|
|
|
|
|
| |
Problem: Using "int" for alloc() often results in compiler warnings.
Solution: Use "size_t" and remove type casts. Remove alloc_check(), Vim
only works with 32 bit ints anyway.
|
|
|
|
|
| |
Problem: Source command doesn't check for the sandbox. (Armin Razmjou)
Solution: Check for the sandbox when sourcing a file.
|
|
|
|
|
|
| |
Problem: Cannot enter character with a CSI byte.
Solution: Only check "gui.in_use" when VIMDLL is defined. (Ken Takata,
closes #4396)
|
|
|
|
|
|
|
| |
Problem: MS-Windows GUI: multibyte chars with a 0x80 byte do not work when
compiled with VIMDLL.
Solution: Adjust the condition for fixing the input buffer. (Ken Takata,
closes #4330)
|
|
|
|
|
| |
Problem: No test for completion of mapping keys.
Solution: Add a test. Also clean up the code.
|
|
|
|
|
|
| |
Problem: Key with byte sequence containing CSI does not work.
Solution: Do not recognize CSI as special unless the GUI is active. (Ken
Takata, closes #4318)
|
|
|
|
|
|
| |
Problem: A lot of code is shared between vim.exe and gvim.exe.
Solution: Optionally put the shared code in vim.dll. (Ken Takata,
closes #4287)
|
|
|
|
|
|
| |
Problem: Output of :command is hard to read.
Solution: Make some columns wider, some narrower. Truncate the command when
listing all.
|
|
|
|
|
|
| |
Problem: Mapping for CTRL-X is inconsistent.
Solution: Map CTRL-X to "*d also for the MS-Windows console. (Ken Takata,
closes #4265)
|
|
|
|
|
| |
Problem: A couple of conditions are hard to understand.
Solution: Split the conditions into pieces. (Ozaki Kiichi, closes #3879)
|
|
|
|
|
|
| |
Problem: Too many curly braces.
Solution: Remove curly braces where they are not needed. (Hirohito Higashi,
closes #3982)
|
|
|
|
|
| |
Problem: Playing back recorded key sequence mistakes key code.
Solution: Insert a <Nop> after the <Esc>. (closes #4068)
|
|
|
|
|
|
| |
Problem: Indenting is off.
Solution: Make indenting consistent and update comments. (Ozaki Kiichi,
closes #4079)
|
|
|
|
|
|
|
| |
Problem: Macros for MS-Windows are inconsistent, using "32", "3264 and
others.
Solution: Use MSWIN for all MS-Windows builds. Use FEAT_GUI_MSWIN for the
GUI build. (Hirohito Higashi, closes #3932)
|
|
|
|
|
| |
Problem: Farsi support is outdated and unused.
Solution: Delete the Farsi support.
|
|
|
|
|
|
| |
Problem: Peeking and flushing output slows down execution.
Solution: Do not update the mode message when global_busy is set. Do not
flush when only peeking for a character. (Ken Takata)
|
|
|
|
|
| |
Problem: Too many #ifdefs.
Solution: Graduate FEAT_MBYTE, part 4.
|
|
|
|
|
|
| |
Problem: Depending on the configuration some functions are unused.
Solution: Add more #ifdefs, remove unused functions. (Dominique Pelle,
closes #3822)
|
|
|
|
|
| |
Problem: Argument for message functions is inconsistent.
Solution: Make first argument to msg() "char *".
|
|
|
|
|
|
|
|
| |
Problem: Giving error messages is not flexible.
Solution: Add semsg(). Change argument from "char_u *" to "char *", also
for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes
#3302) Also make emsg() accept a "char *" argument. Get rid of
an enormous number of type casts.
|
|
|
|
|
| |
Problem: Autocmd test fails.
Solution: Do call inchar() when flushing typeahead.
|
|
|
|
|
| |
Problem: Unnecessary static function prototypes.
Solution: Remove unnecessary prototypes.
|
|
|
|
|
|
|
| |
Problem: Recursive use of getcmdline() still not protected.
Solution: Instead of saving the command buffer when making a call which may
cause recursiveness, save the buffer when actually being called
recursively.
|
|
|
|
|
|
| |
Problem: Cannot get the script line number when executing a function.
Solution: Store the line number besides the script ID. (Ozaki Kiichi,
closes #3362) Also display the line number with ":verbose set".
|
|
|
|
|
| |
Problem: Part of file not indented properly.
Solution: Adjust the indent. (Ken Takata)
|
|
|
|
|
| |
Problem: Recording into a register has focus events. (Michael Naumann)
Solution: Don't record K_FOCUSGAINED and K_FOCUSLOST. (closes #3143)
|
|
|
|
|
|
| |
Problem: When a mapping to <Nop> times out the next mapping is skipped.
Solution: Reset "timedout" when waiting for a character. (Christian
Brabandt, closes #2921)
|