| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
| |
It's a 1-byte loss of memory but it allows us to skip copying and
NULL-terminating strings when interacting with vim functions that accept C
strings. This lowers the pressure on the allocator and saves lines of code
(no more dup/free pairs).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
mb_string2cells was always called like mb_string2cells(..., -1) so that was
the only codepath that was tested. @tarruda was the first to try to input an
actual length, after which valgrind detected that funny business was going
on.
It's not even possible to do the right thing with the current text codec
infrastructure: they all assume to be working with C strings. Meaning that
if there is no NUL-terminator, they will happily keep on reading past the
end of Pascal strings. Ergo, passing the length parameter is moot. The
condition in the for-loop was wrong as well (but that's no longer relevant).
Also change the return value to size_t, by analogy with strlen.
ref:
https://github.com/neovim/neovim/commit/677d30d7966dd2766bbf20665791c568dacc427a
|
|
|
|
|
|
| |
Most of these functions don't modify their strings, let's make the contract
a bit clearer. In some cases I've tried to get rid of C89-style variable
declarations at the start of functions, now that I was there.
|
|
|
|
|
|
|
|
|
| |
Problem: A non-greedy match followed by a branch is too greedy. (Ingo
Karkat)
Solution: Add NFA_MATCH when it is already in the state list if the position
differs.
https://code.google.com/p/vim/source/detail?r=b871734bf54ea185dbd2cc759d86dbfbe21cde26
|
|
|
|
|
|
|
|
|
|
| |
Problem: Searching for "a" does not match accented "a" with new regexp
engine, does match with old engine. (David Bürgin)
"ca" does not match "ca" with accented "a" with either engine.
Solution: Change the old engine, check for following composing character
also for single-byte patterns.
https://code.google.com/p/vim/source/detail?r=60cdaa05a6ad31cef55eb6b3dc1f57ecac6fcf79
|
|
|
|
| |
These features are only used by legacy Mac OS.
|
|
|
|
| |
This should help reduce conflicts when merging patches from upstream.
|
|
|
|
|
|
|
|
|
| |
Problem: Pattern with repeated backreference does not match with new regexp
engine. (Urtica Dioica)
Solution: Also check the end of a submatch when deciding to put a state in
the state list.
https://code.google.com/p/vim/source/detail?r=99374096a76b96d1128f5e6aa1fa92b4ba70fee9
|
|
|
|
|
|
|
| |
Problem: When 'spellfile' is set the screen is not redrawn.
Solution: Redraw when updating the spelling info. (Christian Brabandt)
https://code.google.com/p/vim/source/detail?r=7965cb6a435ae1ea331c7c2f8740d3d4c3625f3b
|
|
|
|
|
|
|
| |
Problem: Error messages are inconsistant. (ZyX)
Solution: Change "Lists" to "list".
https://code.google.com/p/vim/source/detail?r=be19015ef43cc17825929206790696c2e716035d
|
|
|
|
|
|
|
|
| |
Problem: Setting 'langmap' in the modeline can cause trouble. E.g. mapping
":" breaks many commands. (Jens-Wolfhard Schicke-Uffmann)
Solution: Disallow setting 'langmap' from the modeline.
https://code.google.com/p/vim/source/detail?r=3c35ca9666e88a8024af6dab585b8e79ab295f83
|
|
|
|
|
|
|
| |
Problem: Test 97 fails on Mac.
Solution: Do not ignore case in file names. (Jun Takimoto)
https://code.google.com/p/vim/source/detail?r=6d0a1132dd71c7f55f7ed53fe99e97c79bfd05a4
|
|
|
|
|
|
|
|
| |
Problem: When a session file has more than one tabpage and 'showtabline' is
one the positions may be slightly off.
Solution: Set 'showtabline' to two while positioning windows.
https://code.google.com/p/vim/source/detail?r=24c90f1fec859b54cf2b854b98c4c9e614c46061
|
|
|
|
|
|
|
|
| |
Problem: When using a session file the relative position of the cursor is
not restored if there is another tab. (Nobuhiro Takasaki)
Solution: Update w_wrow before calculating the fraction.
https://code.google.com/p/vim/source/detail?r=daf7e98675cf395e1ef96f8040567affb2782a11
|
|
|
|
|
|
|
|
|
|
| |
Problem: When changing the type of a sign that hasn't been
placed ther is no error message.
Solution: Add an error message. (Christian Brabandt)
Author: Bram Moolenaar
https://code.google.com/p/vim/source/detail?r=8a3117a4887c1e12a1165c9719491f96753
|
|
|
|
|
|
|
|
| |
Problem: Using ":sign unplace *" may leave the cursor in the wrong position
(Christian Brabandt)
Solution: Update the cursor position when removing all signs.
https://code.google.com/p/vim/source/detail?r=373204662d82e894b27ee76bc3319bc62c91f6ae
|
| |
|
| |
|
| |
|
|
|
|
| |
Otherwise FUNC_ATTR_* macros may appear empty
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
So that they do the last nvim/func_attr.h include
|
|
|
|
| |
Required for FUNC_ATTR_UNUSED to work in lib/k*
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- The 'stripdecls.py' script replaces declarations in all headers by includes to
generated headers.
`ag '#\s*if(?!ndef NEOVIM_).*((?!#\s*endif).*\n)*#ifdef INCLUDE_GENERATED'`
was used for this.
- Add and integrate gendeclarations.lua into the build system to generate the
required includes.
- Add -Wno-unused-function
- Made a bunch of old-style definitions ANSI
This adds a requirement: all type and structure definitions must be present
before INCLUDE_GENERATED_DECLARATIONS-protected include.
Warning: mch_expandpath (path.h.generated.h) was moved manually. So far it is
the only exception.
|
|
|
|
| |
Uses a perl script to move it (scripts/movedocs.pl)
|
| |
|
|
|
|
|
| |
- New command line option prints the binary API metadata object
and exits
|
|
|
|
|
|
| |
Occurs when compiling with:
rm -rf build/ && make clean && make cmake CFLAGS='-DNDEBUG' && make
^--important
|
|
|
|
|
| |
fix #778
thanks @genisaguilar
|
|
|
|
|
| |
To replace `Map(T)`, a new macro `PMap(T)` was defined as `Map(T, ptr_t)` for
writing maps that store pointers with less boilerplate
|
| |
|
| |
|
|
|
|
| |
'title' and 'icon' options
|
|
|
|
| |
Support for message translations using gettext()
|
|
|
|
| |
Printing using PostScript file output
|
|
|
|
| |
Support for floating point variables
|
|
|
|
|
| |
'statusline', 'rulerformat' and special format of 'titlestring' and
'iconstring' options
|
|
|
|
| |
Support for :mksession command
|
|
|
|
|
| |
Support for gf(edit the file whose name is under or after the cursor)
and <cfile>(is replaced with the path name under the cursor).
|
|
|
|
| |
Support for :menu command. It can be used in terminal Vim too.
|
|
|
|
|
| |
Vim commands for the buffer list and the argument list: ":buffer",
":bnext", ":bdel", ":argdelete", etc.
|
|
|
|
| |
Vim's extra Ex commands: :center, :left, :normal, :retab and :right
|
|
|
|
| |
Support for VimScript, :let, :if, etc.
|
|
|
|
| |
Synchronization of cursor in split windows for diff mode
|