By default Neovim searched a Luajit instalation and linked against
the luajit library.
In practice Neovim only requires luajit to run the unit tests. All other
targets only require lua and the correct lua modules. This commit:
1. Remove the strict dependency on Luajit
2. Makes the unittest target depend on the lua 'ffi' module.
If the module is not available the target is not enabled
and a message is displayed.
Problem: Only terminals with up to 256 colors work properly.
Solution: Use the 256 color behavior for all terminals with 256 or more
colors. (Robert de Bath)
fa03fd6c4a
patch 7.4.1728
Problem: The help for functions require a space after the "(".
Solution: Make CTRL-] on a function name ignore the arguments. (Hirohito
Higashi)
81edd171a9
...and small refactorings:
- Style changes
- Variable renames
- Changes in variable scope
This change won't bring new problems (undefined behavior) as `memcpy` is
already being used in the function.
The only data loss should be, if a process forked a child that keeps
sending data after the parent terminated.
While not in teardown mode we could keep reading child data, but then
`:!cmd` would block after `cmd` exited. In teardown mode we want to exit
nvim so we cannot keep reading child data.
The whole stream buffer is now put on screen at once instead of only
data up to the last newline. This has some advantages:
* RBuffer cannot wrap around, so we never forget to output second
half of the buffer.
* Stream data is not delayed anymore, because we don't have to wait for
a newline.
This works by remembering the last used screen column.
Problem: Using "q!" when there is a modified hidden buffer does not unload
the current buffer, resulting in the need to abandon it again.
Solution: When using "q!" unload the current buffer when needed. (Yasuhiro
Matsumoto, Hirohito Higashi)
027387f70c
This was noticed due to a user issue (#4750) when building Neovim 0.1.4
via ports. The crux of the issue is that we did not detect the
be64toh() macro, because there is no endian.h on FreeBSD (along with
several other BSDs). So we were defaulting to our builtin version of
be64toh(). However, it appears that sys/endian.h was being picked up by
an include (likely msgpack.h) and so be64toh() was actually defined and
corrupting our definition of it.
So the answer here was to use the correct include file in our check, and
export that information in the config.h. Then we use that information
to include the right header in shada.c.
This fixes#4750.
Problem: ":argadd" without argument is supposed to add the current buffer
name to the arglist.
Solution: Make it work as documented. (Coot, closesvim/vim#577)
2faa29f896
Problem: Using ":argadd" when there are no arguments results in the second
argument to be the current one. (Yegappan Lakshmanan)
Solution: Correct the w_arg_idx value.
a24f0a550f