| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| |
| |
| | |
Problem: Using freed memory when exiting while compiled with EXITFREE.
Solution: Set curwin to NULL and check for that. (Dominique Pelle)
https://code.google.com/p/vim/source/detail?r=v7-4-369
|
|\ \
| | |
| | | |
vim-patch:7.4.368
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Restoring the window sizes after closing the command line window
doesn't work properly if there are nested splits.
Solution: Restore the sizes twice. (Hirohito Higashi)
https://code.google.com/p/vim/source/detail?r=v7-4-368
|
|/ / |
|
|\ \
| | |
| | | |
vim-patch:7.4.341, 7.4.347, 7.4.351, 7.4.358
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Sort is not always stable.
Solution: Add an index instead of relying on the pointer to remain the same.
Idea by Jun Takimoto.
https://code.google.com/p/vim/source/detail?r=v7-4-358
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: sort() is not stable.
Solution: When the items are identical, compare the pointers.
https://code.google.com/p/vim/source/detail?r=v7-4-351
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: test55 fails on some systems.
Solution: Remove the elements that all result in zero and can end up in an arbitrary position.
https://code.google.com/p/vim/source/detail?r=v7-4-347
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: sort() doesn't handle numbers well.
Solution: Add an argument to specify sorting on numbers. (Christian Brabandt)
https://code.google.com/p/vim/source/detail?r=adc4a84f72eb44dae657af713922a6e2c1f64ae3
|
|\ \ \
| | | |
| | | | |
vim-patch:7.4.387
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: "4gro" replaces one character then executes "ooo". (Urtica
Dioica)
Solution: Write the ESC in the second stuff buffer.
https://code.google.com/p/vim/source/detail?r=v7-4-387
|
| | | |
| | | |
| | | |
| | | | |
To follow the convention of 'nvim' for technical references
|
|\ \ \ \
| |/ / /
|/| | | |
vim-patch:7.4.312
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Cannot figure out what argument list is being used for a window.
Solution: Add the arglistid() function. (Marcin Szamotulski)
https://code.google.com/p/vim/source/detail?r=v7-4-312
|
|\ \ \
| | | |
| | | | |
7.4.371.
|
| |/ / |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
To follow the pattern of using NVIM for technical descriptions, it was renamed
to NVIM_LISTEN_ADDRESS
|
|/ /
| |
| |
| | |
fix condition while iterating over all buffers
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Popup menu flickers too much.
Solution: Remove the forced redraw. (Hirohito Higashi)
https://code.google.com/p/vim/source/detail?r=v7-4-376
Includes: vim-patch:7.4.357 vim-patch:7.4.367 vim-patch:7.4.376
|
| |
| |
| |
| |
| |
| |
| |
| | |
Adapt gendeclarations.lua/msgpack-gen.lua to allow the `ArrayOf(...)` and
`DictionaryOf(...)` types in function headers. These are simple macros that
expand to Array and Dictionary respectively, but the information is kept in the
metadata object, which is useful for building clients in statically typed
languages.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of building all metadata from msgpack-gen.lua, we now merge the
generated part with manual information(such as types and features). The metadata
is accessible through the api method `vim_get_api_info`.
This was done to simplify the generator while also increasing flexibility(by
being able to add more metadata)
|
| |
| |
| |
| |
| | |
This function is used to report errors caused by remote functions called by
channel_send_call
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Providers for features are now registered as a unit. For example, instead of
calling `register_provider("clipboard_get")` and
`register_provider("clipboard_set")`, clients call
`register_provider("clipboard")` and nvim will assume it implements all
methods of the "clipboard" feature
- Bootstrapping code was removed. With the `api_spawn` function exposed to
vimscript, it's no longer necessary and will be handled by plugins
distributed with nvim.
- Now the `has` function will return true if there's a live channel that
has registered as a provider for the feature.
- 'initpython'/'initclipboard' options were removed
- A new API function was exposed: `vim_discover_features` which returns an
object with information about pluggable features such as 'python' or
'clipboard'
|
| |
| |
| |
| | |
Simple function for closing a channel by id
|
| |
| |
| |
| | |
The current code was leading to an invalid free when the wstream was closed
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
--embedded-mode -> --embed
--api-msgpack-metadata -> --api-info
|
| |
| |
| |
| |
| |
| | |
- Move helpers that are specific to API types to api/private/helpers.{c,h}
- Include headers with generated declarations
- Delete unused macros
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Enhance msgpack-gen.lua to extract custom api type codes from the ObjectType
enum in api/private/defs.h. The type information is made available from the api
metadata and clients can use to correctly serialize/deserialize these types
using msgpack EXT type.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Specialized array types(BufferArray, WindowArray, etc) were added to the API for
two main reasons:
- msgpack used to lack a way of serializing appliaction-specific types and there
was no obvious way of making an API function accept/return arrays of custom
objects such as buffers(which are represented as integers, so clients didn't
have a way to distinguish from normal numbers)
- Let clients in statically-typed languages that support generics have a better
typed API
With msgpack 2.0 EXT type the first item is no longer a factor and this commit
starts by removing the specialized array types. The second item will be
addressed in the future by making the API metadata return extra useful
information for statically-typed languages.
|
| |
| |
| |
| |
| |
| |
| | |
The `msgpack_rpc_unpack` function was created to work around a deficiency in the
msgpack unpack API, which did not let the caller know if parsing failed due to
needing more data or to invalid input. The deficiency does not exist in the
latest version of `msgpack_unpacker_next`, so it can safely be removed.
|
| | |
|
| |
| |
| |
| |
| | |
There's no need to have integer and string ids, and since we now fully support
msgpack-RPC, support for integer ids was removed.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A new method is now exposed via msgpack-rpc: "get_api_metadata". This method has
the same job as the old method '0', it returns an object with API metadata for
use by generators.
There's one difference in the return value though: instead of returning a
string containing another serialized msgpack document, the metadata object is
returned directly(a separate deserialization step by clients is not required).
|
| |
| |
| |
| |
| | |
Since that function is not automatically generated, it's best to place it in a
normal C module
|
| |
| |
| |
| |
| |
| |
| |
| | |
Use Map(String, rpc_method_handler_fn) for storing/retrieving rpc method
handlers in msgpack_rpc_init and msgpack_rpc_dispatch.
Also refactor serialization/validation functions in the
msgpack_rpc.c/msgpack_rpc_helpers.c modules to accept the new STR and BIN types.
|
| |
| |
| |
| |
| | |
The new map type uses `String` instances as keys to avoid unnecessary copying to
zero-terminated buffers.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Using msgpack v5 will let nvim be more compatible with msgpack libraries for
other platforms.
This also replaces "raw" references by "bin" which is the new name for msgpack
binary data type
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: When there are matches to highlight the whole window is redrawn,
which is slow.
Solution: Only redraw everything when lines were inserted or deleted.
Reset b_mod_xlines when needed. (Alexey Radkov)
https://code.google.com/p/vim/source/detail?r=v7-4-349
|
| |
| |
| |
| |
| |
| |
| | |
Problem: When using "J1" in 'cinoptions' a line below a continuation line gets too much indent.
Solution: Fix parenthesis in condition.
https://code.google.com/p/vim/source/detail?r=v7-4-348
|
|\ \
| | |
| | | |
vim-patch:7.4.345
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Indent is not updated when deleting indent.
Solution: Remember changedtick.
https://code.google.com/p/vim/source/detail?r=v7-4-345
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Problem: When there is an error preparing to edit the command line, the
command won't be executed. (Hirohito Higashi)
Solution: Reset did_emsg before editing.
https://code.google.com/p/vim/source/detail?r=v7-4-337
|
|\ \
| | |
| | | |
Fix #1147 version numbers
|