Age | Commit message (Collapse) | Author |
|
Problem: Cannot make Vim fail on an internal error.
Solution: Add IEMSG() and IEMSG2(). (Domenique Pelle) Avoid reporting an
internal error without mentioning where.
|
|
Problem: Vim does not build on VMS systems.
Solution: Various changes for VMS. (Zoltan Arpadffy)
|
|
Problem: In diff mode the cursor may end up below the last line, resulting
in an ml_get error.
Solution: Check the line to be valid.
|
|
Problem: Detecting that a job has finished may take a while.
Solution: Check for a finished job more often (Ozaki Kiichi)
|
|
Problem: Order of matches for 'omnifunc' is messed up. (Danny Su)
Solution: Do not set compl_curr_match when called from complete_check().
(closes #1168)
|
|
Problem: No completion for ":messages".
Solution: Complete "clear" argument. (Hirohito Higashi)
|
|
Problem: Code for MS-Windows is complicated because of the exceptions for
old systems.
Solution: Drop support for MS-Windows older than Windows XP. (Ken Takata)
|
|
Problem: A channel is closed when reading on stderr or stdout fails, but
there may still be something to read on another part.
Solution: Turn ch_to_be_closed into a bitfield. (Ozaki Kiichi)
|
|
Problem: When using ":sleep" channel input is not handled.
Solution: When there is a channel check for input also when not in raw mode.
Check every 100 msec.
|
|
Problem: Can't tell which part of a channel has "buffered" status.
Solution: Add an optional argument to ch_status(). Let ch_info() also
return "buffered" for out_status and err_status.
|
|
Problem: Crash when stop_timer() is called in a callback of a callback.
Vim hangs when the timer callback uses too much time.
Solution: Set tr_id to -1 when a timer is to be deleted. Don't keep calling
callbacks forever. (Ozaki Kiichi)
|
|
Problem: Using CTRL-X CTRL-V to complete a command line from Insert mode
does not work after entering an expression on the command line.
Solution: Don't use "ccline" when not actually using a command line. (test
by Hirohito Higashi)
|
|
Problem: Illegal memory access when Visual selection starts in invalid
position. (Dominique Pelle)
Solution: Correct position when needed.
|
|
Problem: Crash when autocommand moves to another tab. (Dominique Pelle)
Solution: When navigating to another window halfway the :edit command go
back to the right window.
|
|
Problem: It is not possible to close the "in" part of a channel.
Solution: Add ch_close_in().
|
|
Problem: Generated files are outdated.
Solution: Generate the files. Avoid errors when generating prototypes.
|
|
Problem: Starting diff mode with the cursor in the last line might end up
only showing one closed fold. (John Beckett)
Solution: Scroll the window to show the same relative cursor position.
|
|
Problem: Check for Windows 3.1 will always return false. (Christian
Brabandt)
Solution: Remove the dead code.
|
|
Problem: Adding pattern to ":oldfiles" is not a generic solution.
Solution: Add the ":filter /pat/ cmd" command modifier. Only works for some
commands right now.
|
|
Problem: Warning for assigning negative value to unsigned. (Danek Duvall)
Solution: Make cterm_normal_fg_gui_color and _bg_ guicolor_T, cast to long_u
only when an unsigned is needed.
|
|
Problem: Warning for missing declaration of skip_vimgrep_pat(). (John
Marriott)
Solution: Move it to another file.
|
|
Problem: ":oldfiles" output is a very long list.
Solution: Add a pattern argument. (Coot, closes #575)
|
|
Problem: There is no equivalent of 'smartcase' for a tag search.
Solution: Add value "followscs" and "smart" to 'tagcase'. (Christian
Brabandt, closes #712) Turn tagcase test into new style.
|
|
Problem: Startup test fails on Solaris.
Solution: Recognize a character device. (Danek Duvall)
|
|
Problem: Sourcing a script where a character has 0x80 as a second byte does
not work. (Filipe L B Correia)
Solution: Turn 0x80 into K_SPECIAL KS_SPECIAL KE_FILLER. (Christian
Brabandt, closes #728) Add a test case.
|
|
Problem: Mark " is not set when closing a window in another tab. (Guraga)
Solution: Check all tabs for the window to be valid. (based on patch by
Hirohito Higashi, closes #974)
|
|
Problem: Cannot map <M-">. (Stephen Riehm)
Solution: Solve the memory access problem in another way. (Dominique Pelle)
Allow for using <M-\"> in a string.
|
|
Problem: It is not easy to get information about buffers, windows and
tabpages.
Solution: Add getbufinfo(), getwininfo() and gettabinfo(). (Yegappan
Lakshmanan)
|
|
Problem: The sign column disappears when the last sign is deleted.
Solution: Add the 'signcolumn' option. (Christian Brabandt)
|
|
Problem: Cannot get all information about a quickfix list.
Solution: Add an optional argument to get/set loc/qf list(). (Yegappan
Lakshmanan)
|
|
Problem: In the GUI the cursor is hidden when redrawing any window,
causing flicker.
Solution: Only undraw the cursor when updating the window it's in.
|
|
Problem: With Gnome when the GUI can't start test_startup hangs.
Solution: Call gui_mch_early_init_check(). (Hirohito Higashi)
|
|
Problem: Generating prototypes with Cygwin doesn't work well.
Solution: Change #ifdefs. (Ken Takata)
|
|
Problem: No automatic prototype for vim_main2().
Solution: Move the #endif. (Ken Takata)
|
|
Problem: There is no easy way to stop all timers. There is no way to
temporary pause a timer.
Solution: Add timer_stopall() and timer_pause().
|
|
Problem: #ifdefs in main() are complicated.
Solution: Always define vim_main2(). Move params to the file level.
(suggested by Ken Takata)
|
|
Problem: Cannot get information about timers.
Solution: Add timer_info().
|
|
Problem: A funccal is garbage collected while it can still be used.
Solution: Set copyID in all referenced functions. Do not list lambda
functions with ":function".
|
|
Problem: Coverity reports bogus NULL check.
Solution: When checking for a variable in the funccal scope don't pass the
varname.
|
|
Problem: Using function() with a name will find another function when it is
redefined.
Solution: Add funcref(). Refer to lambda using a partial. Fix several
reference counting issues.
|
|
Problem: No error for using function() badly.
Solution: Check for passing wrong function name. (Ken Takata)
|
|
Problem: Pending timers cause false memory leak reports.
Solution: Free all timers on exit.
|
|
Problem: User defined functions can't be a closure.
Solution: Add the "closure" argument. Allow using :unlet on a bound
variable. (Yasuhiro Matsumoto, Ken Takata)
|
|
Problem: Closures are not supported.
Solution: Capture variables in lambdas from the outer scope. (Yasuhiro
Matsumoto, Ken Takata)
|
|
Problem: When a keymap is active only "(lang)" is displayed. (Ilya
Dogolazky)
Solution: Show the keymap name. (Dmitri Vereshchagin, closes #933)
|
|
Problem: Man test fails when run with the GUI.
Solution: Adjust for different behavior of GUI. Add assert_inrange().
|
|
Problem: Using submatch() in a lambda passed to substitute() is verbose.
Solution: Use a static list and pass it as an optional argument to the
function. Fix memory leak.
|
|
Problem: When using PERROR() on some systems assert_fails() does not see
the error.
Solution: Make PERROR() always report the error.
|
|
Problem: substitute() does not support a Funcref argument.
Solution: Support a Funcref like it supports a string starting with "\=".
|
|
Problem: spell.c is too big.
Solution: Split it in spell file handling and spell checking.
|