| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Problem: ml_delete() often called with FALSE argument.
Solution: Use ml_delete_flags(x, ML_DEL_MESSAGE) when argument is TRUE.
|
|
|
|
|
| |
Problem: Clearing a struct is verbose.
Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER().
|
|
|
|
|
| |
Problem: Using the same loop in many places.
Solution: Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339)
|
|
|
|
|
|
| |
Problem: Highlighting for :s wrong when using different separator.
Solution: Use separat argument for search direction and separator. (Rob
Pilling, closes #5665)
|
|
|
|
|
| |
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: Searchit() has too many arguments.
Solution: Move optional arguments to a struct. Add the "wrapped" argument.
|
|
|
|
|
| |
Problem: Crash when allocating memory fails. (Zu-Ming Jiang)
Solution: Check that 'spellcapcheck' is not NULL. (closes #5048)
|
|
|
|
|
|
| |
Problem: Some MB_ macros are more complicated than necessary. (Dominique
Pelle)
Solution: Simplify the macros. Expand inline.
|
|
|
|
|
|
| |
Problem: The spell.c file is too big.
Solution: Move the code for spell suggestions to a separate file. (Yegappan
Lakshmanan, closes #4988)
|
|
|
|
|
|
| |
Problem: Some code in options.c fits better elsewhere.
Solution: Move functions from options.c to other files. (Yegappan
Lakshmanan, closes #4889)
|
|
|
|
|
| |
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: Crash when correctly spelled word is very long. (Ben Kraft)
Solution: Check word length before copying. (closes #4778)
|
|
|
|
|
|
| |
Problem: Emoji characters are seen as word characters for spelling. (Gautam
Iyer)
Solution: Exclude class 3 from word characters.
|
|
|
|
|
|
| |
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: 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: Borland support is outdated and doesn't work.
Solution: Remove Borland support, there are other (free) compilers
available. (Thomas Dziedzic, Ken Takata, closes #4364)
|
|
|
|
|
| |
Problem: May pass weird strings to file name expansion.
Solution: Check for matching characters. Disallow control characters.
|
|
|
|
|
| |
Problem: Insert completion flags are mixed up.
Solution: Clean up flags use of ins_compl_add() and cp_flags.
|
|
|
|
|
|
| |
Problem: Too many curly braces.
Solution: Remove curly braces where they are not needed. (Hirohito Higashi,
closes #3982)
|
|
|
|
|
|
| |
Problem: File for Insert mode is much too big.
Solution: Split off the code for Insert completion. (Yegappan Lakshmanan,
closes #4044)
|
|
|
|
|
| |
Problem: Too many #ifdefs.
Solution: Graduate FEAT_VIRTUALEDIT. Adds about 10Kbyte to the code.
|
|
|
|
|
| |
Problem: Too many #ifdefs.
Solution: Graduate FEAT_MBYTE, part 4.
|
|
|
|
|
| |
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: Various typos in comments.
Solution: Fix the typos.
|
|
|
|
|
| |
Problem: Unnecessary static function prototypes.
Solution: Remove unnecessary prototypes.
|
|
|
|
|
|
| |
Problem: Too many #ifdefs.
Solution: Graduate the +autocmd feature. Takes away 450 #ifdefs and
increases code size of tiny Vim by only 40 Kbyte.
|
|
|
|
|
| |
Problem: Dead code found.
Solution: Remove the useless lines. (CodeAi, closes #2656)
|
|
|
|
|
|
| |
Problem: Clearing a pointer takes two lines.
Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi,
closes #2629)
|
|
|
|
|
| |
Problem: Newer gcc warns for implicit fallthrough.
Solution: Consistently use a FALLTHROUGH comment. (Christian Brabandt)
|
|
|
|
|
|
| |
Problem: FEAT_WINDOWS adds a lot of #ifdefs while it is nearly always
enabled and only adds 7% to the binary size of the tiny build.
Solution: Graduate FEAT_WINDOWS.
|
|
|
|
|
|
| |
Problem: Bogus characters appear when indenting kicks in while doing a
visual-block append.
Solution: Recompute when indenting is done. (Christian Brabandt)
|
|
|
|
|
|
|
|
| |
Problem: When 'hlsearch' is set and matching with the last search pattern
is very slow, Vim becomes unusable. Cannot quit search by
pressing CTRL-C.
Solution: When the search times out set a flag and don't try again. Check
for timeout and CTRL-C in NFA loop that adds states.
|
|
|
|
|
|
| |
Problem: Illegal memory access with z= command. (Dominique Pelle)
Solution: Avoid case folded text to be longer than the original text. Use
MB_PTR2LEN() instead of MB_BYTE2LEN().
|
|
|
|
|
|
|
| |
Problem: Using a function pointer instead of the actual function, which we
know.
Solution: Change mb_ functions to utf_ functions when already checked for
Unicode. (Dominique Pelle, closes #1582)
|
|
|
|
|
| |
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case.
|
|
|
|
|
|
| |
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case. Avoid lower case macros use an
argument twice.
|
|
|
|
|
| |
Problem: Some macros are in lower case, which can be confusing.
Solution: Make a few lower case macros upper case.
|
|
|
|
|
|
|
| |
Problem: ]s does not move cursor with two spell errors in one line. (Manuel
Ortega)
Solution: Don't stop search immediately when wrapped, search the line first.
(Ken Takata) Add a test.
|
|
|
|
|
|
| |
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: 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: Modelines in source code are inconsistant.
Solution: Use the same line in most files. Add 'noet'. (Naruhiko Nishino)
|
|
|
|
|
| |
Problem: Some error message cannot be translated.
Solution: Enclose them in _() and N_(). (Dominique Pelle)
|
|
|
|
|
| |
Problem: Buffer overflow when using latin1 character with feedkeys().
Solution: Check for an illegal character. Add a test.
|
|
|
|
|
| |
Problem: Looping over windows, buffers and tab pages is inconsistant.
Solution: Use FOR_ALL_ macros everywhere. (Yegappan Lakshmanan)
|
|
|
|
|
| |
Problem: spell.c is too big.
Solution: Split it in spell file handling and spell checking.
|