Age | Commit message (Collapse) | Author |
|
Problem: Using the same loop in many places.
Solution: Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339)
|
|
Problem: Time and timer related code is spread out.
Solution: Move time and timer related code to a new file. (Yegappan
Lakshmanan, closes #5604)
|
|
Problem: Saving and restoring called_emsg is clumsy.
Solution: Count the number of error messages.
|
|
Problem: Using old C style comments.
Solution: Use // comments where appropriate.
|
|
Problem: Some global functions can be local to the file.
Solution: Add "static". (Yegappan Lakshmanan, closes #4917)
|
|
Problem: The evalfunc.c file is still too big.
Solution: Move f_pathshorten() to filepath.c. Move f_cscope_connection() to
if_cscope.c. Move diff_ functions to diff.c. Move timer_
functions to ex_cmds2.c. move callback functions to evalvars.c.
|
|
Problem: Code for dealing with script files is spread out.
Solution: Move the code to scriptfile.c. (Yegappan Lakshmanan, closes #4861)
|
|
Problem: The +cmdline_compl feature is not in the tiny version.
Solution: Graduate the +cmdline_compl feature.
|
|
Problem: Code for the argument list is spread out.
Solution: Put argument list code in arglist.c. (Yegappan Lakshmanan,
closes #4819)
|
|
Problem: Function call functions have too many arguments.
Solution: Pass values in a funcexe_T struct.
|
|
Problem: No syntax HL after splitting windows with :bufdo. (Yasuhiro
Matsumoto)
Solution: Trigger Syntax autocommands in buffers that are active.
(closes #4761)
|
|
Problem: Profiling code is spread out.
Solution: Move more profiling code to profiler.c. (Yegappan Lakshmanan,
closes #4668)
|
|
Problem: Profiling functionality is spread out.
Solution: Put profiling functionality in profiling.c. (Yegappan Lakshmanan,
closes #4666)
|
|
Problem: Script line numbers are not exactly right.
Solution: Handle heredoc and continuation lines better. (Ozaki Kiichi,
closes #4611, closes #4511)
|
|
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: In :let-heredoc line continuation is recognized.
Solution: Do not consume line continuation. (Ozaki Kiichi, closes #4580)
|
|
Problem: Callbacks may be garbage collected.
Solution: Set reference in callbacks. (Ozaki Kiichi, closes #4564)
|
|
Problem: NOT_IN_POPUP_WINDOW is confusing. (Andy Massimino)
Solution: Rename to ERROR_IF_POPUP_WINDOW().
|
|
Problem: ":write" increments b:changedtick even though nothing changed.
(Daniel Hahler)
Solution: Only increment b:changedtick if the modified flag is reset.
|
|
Problem: Some commands cause trouble in a popup window.
Solution: Add NOT_IN_POPUP_WINDOW.
|
|
Problem: Code to handle callbacks is duplicated.
Solution: Add callback_T and functions to deal with it.
|
|
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: Unnecessary type casts.
Solution: Remove type casts from alloc() and lalloc() calls. (Mike Williams)
|
|
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: Cannot recover from a swap file.
Solution: Do not expand environment variables in the swap file name.
Do not check the extension when we already know a file is a swap
file. (Ken Takata, closes 4415, closes #4369)
|
|
Problem: ":vert options" does not make a vertical split.
Solution: Pass the right modifiers in $OPTWIN_CMD. (Ken Takata,
closes #4401)
|
|
Problem: Computing function length name in many places.
Solution: compute name length in call_func().
|
|
Problem: Coverity warning for using uninitialized variable.
Solution: Clear exarg_T.
|
|
Problem: In a terminal 'ballooneval' does not work right away.
Solution: Flush output after drawing the balloon. Add the <Ignore> key
code. Add a test.
|
|
Problem: No error for quickfix commands with negative range.
Solution: Add ADDR_UNSIGNED and use it for quickfix commands. Make
assert_fails() show the command if the error doesn't match.
|
|
Problem: Vim script debugger functionality needs cleanup.
Solution: Move debugger code to a separate file. Add more tests. (Yegappan
Lakshmanan, closes #4285)
|
|
Problem: Not all Vim variables require the v: prefix.
Solution: When scriptversion is 3 all Vim variables can only be used with
the v: prefix. (Ken Takata, closes #4274)
|
|
Problem: Build failure without the +eval feature.
Solution: Add #ifdef.
|
|
Problem: Cannot enforce a Vim script style.
Solution: Add the :scriptversion command. (closes #3857)
|
|
Problem: Various small code ugliness.
Solution: Remove pointless NULL checks. Fix function calls. Fix typos.
(Dominique Pelle, closes #4060)
|
|
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: Stray log function call.
Solution: Remove the log function call.
|
|
Problem: USE_CR is never defined.
Solution: Remove usage of USE_CR. (Ken Takata, closes #3958)
|
|
Problem: Too many #ifdefs.
Solution: Graduate FEAT_MBYTE, part 2.
|
|
Problem: Too many #ifdefs.
Solution: Graduate FEAT_MBYTE, part 1.
|
|
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: Cannot build without the eval feature.
Solution: Make a copy of the sourced file name.
|
|
Problem: There is a SourcePre autocommand event but not a SourcePost.
Solution: Add the SourcePost autocommand event. (closes #3739)
|
|
Problem: :args \"foo works like :args without argument.
Solution: Fix check for empty argument. (closes #3728)
|
|
Problem: It is not easy to edit a script that was sourced.
Solution: Add a count to ":scriptnames", so that ":script 40" edits the
script with script ID 40.
|
|
Problem: Reloading a script gives errors for existing functions.
Solution: Allow redefining a function once when reloading a script.
|
|
Problem: 'helplang' default is inconsistent for C and C.UTF-8.
Solution: Don't accept a value unless it starts with two letters.
|
|
Problem: Memory not freed on exit when quit in autocmd.
Solution: Remember funccal stack when executing autocmd.
|