Commit Graph

512 Commits

Author SHA1 Message Date
Thiago de Arruda
4a13143263 Bump LuaJIT to version 2.0.3
This update should fix some build problems as shown in the changelog:
http://luajit.org/changes.html
2014-04-14 17:41:14 -03:00
Thiago de Arruda
5eae88d0fa Add more commented patch numbers to version.c
This should help reduce conflicts when merging patches from upstream
2014-04-14 17:19:40 -03:00
oni-link
71e1cccc7a vim-patch:7.4.207
Problem:    The cursor report sequence is sometimes not recognized and results
            in entering replace mode.
Solution:   Also check for the cursor report when not asked for.

https://code.google.com/p/vim/source/detail?r=2aa909427e44cd3aac7def024b66e41d0c9d0e0d
2014-04-14 16:57:44 -03:00
Thiago de Arruda
78fd9386b6 Fix unit tests
Apparently busted 1.11.0 is broken(https://github.com/Olivine-Labs/busted/issues/236)
in a way that is causing the unit tests to fail. This pins the version to 1.10.0
and also fixes a wrong variable set when msgpack was added as a dependency
2014-04-14 16:46:16 -03:00
Will Tange
ed73da9f0e Bring neovim up to date with recent libuv changes
As of v0.11.23 libuv's uv_timer_cb, uv_async_cb, uv_prepare_cb, uv_check_cb and
uv_idle_cb no longer require a status parameter (this went unused in the first
place).

Bump third-party dependency `libuv` up to 0.11.23 and remove the extra
parameters from the callbacks.
2014-04-14 12:59:55 -03:00
oni-link
a881273dad vim-patch:7.4.191
Problem:    Escaping a file name for shell commands can't be done without a
            function.
Solution:   Add the :S file name modifier.

https://code.google.com/p/vim/source/detail?r=40f18a1c1592c8b4047f6f2a413557f48a99c55f
2014-04-14 09:54:40 -03:00
oni-link
644ccdafe0 vim-patch:7.4.205
Problem:    ":mksession" writes command to move to second argument while it
            does not exist.  When it does exist the order might be wrong.
Solution:   Use ":argadd" for each argument instead of using ":args" with a
            list of names. (Nobuhiro Takasaki)

https://code.google.com/p/vim/source/detail?r=0ace3a24c2a0153f0aaf9b619d3958e7f486705f
2014-04-14 09:53:02 -03:00
oni-link
30cd02301e vim-patch:7.4.204
Problem:    A mapping where the second byte is 0x80 doesn't work.
Solution:   Unescape before checking for incomplete multi-byte char. (Nobuhiro
            Takasaki)

https://code.google.com/p/vim/source/detail?r=f5120cbf16b9a9c6e0fbb599a6524e05ecf11393
2014-04-14 09:47:59 -03:00
Thiago de Arruda
4fb45579b5 Add lpeg as explicit third-party dependency
It was being installed because of moonscript, but now it's listed as a
dependency explicitly.
2014-04-13 07:32:52 -03:00
Thiago de Arruda
15f3bae801 Add checks for lpeg/cmsgpack lua packages
These checks will stop the build process with meaningful error messages if
any of those packages are not installed.
2014-04-13 07:32:52 -03:00
Thiago de Arruda
3ee5683a78 Use cmake to find a lua executable
A lua executable is now required for the build process since a lpeg-based script
is used for generating a dispatch function and metadata for the msgpack API
frontend. This removes the need for setting the LUA_BINARY environment variable.
Fixes #518.
2014-04-13 07:32:52 -03:00
oni-link
a1dd6a6dd8 vim-patch:7.4.203
Problem:    Parsing 'errorformat' is not correct.
Solution:   Reset "multiignore" at the start of a multi-line message. (Lcd)

https://code.google.com/p/vim/source/detail?r=fb24b025c7cf07db79a559a3091db42e02c1af86
2014-04-13 07:30:05 -03:00
Chris Watkins
2e393110ad Rename os_total_mem to os_get_total_mem_kib.
Also removed an unused parameter.
2014-04-12 16:52:14 -03:00
oni-link
77c2c69479 vim-patch:7.4.167
Problem:    Fixes are not tested.
Solution:   Add a test for not autoloading on assignment. (Yukihiro Nakadaira)

https://code.google.com/p/vim/source/detail?r=22387c8eec43ea8b1b704cad49c8f7187e2fd579
2014-04-12 16:48:09 -03:00
oni-link
1e7dfc8c90 vim-patch:7.4.193
Problem:    Typos in messages.
Solution:   "then" -> "than". (Dominique Pelle)

https://code.google.com/p/vim/source/detail?r=a8650e2a0b5a5936f7d503429180df47df2aa775
2014-04-12 16:41:30 -03:00
Keerthan Jaic
d4acb0df2f vim-patch 7.4.199
Problem:    ]P doesn't paste over Visual selection.
Solution:   Handle Visual mode specifically. (Christian Brabandt)

https://code.google.com/p/vim/source/detail?r=54b1a90c937380195fad6a52408aa3b4eed6d8d1
2014-04-12 16:29:51 -03:00
Stefan Hoffmann
69d7e864e9 updated readme header 2014-04-11 15:02:37 -03:00
Thiago de Arruda
35ff53c6b0 Add msgpack_rpc_dispatch/metadata generator
This adds a lua script which parses the contents of 'api.h'. After the api is
parsed into a metadata table. After that, it will generate:

- A msgpack blob for the metadata table. This msgpack object contains everything
  scripting engines need to generate their own wrappers for the remote API.
- The `msgpack_rpc_dispatch` function, which takes care of validating msgpack
  requests, converting arguments to C types and passing control to the
  appropriate 'api.h' function. The result is then serialized back to msgpack
  and returned to the client.

This approach was used because:

- It automatically modifies `msgpack_rpc_dispatch` to reflect API changes.
- Scripting engines that generate remote call wrappers using the msgpack
  metadata will also adapt automatically to API changes
2014-04-11 14:07:45 -03:00
Thiago de Arruda
6eeb006c4a Implement msgpack-rpc helper module
Still missing the `msgpack_rpc_dispatch` function which will be automatically
generated by a script
2014-04-11 14:07:45 -03:00
Thiago de Arruda
eab3a4fafb Add empty implementations of the remote API 2014-04-11 14:07:44 -03:00
Thiago de Arruda
a68ca46382 Configure cmake option to download/install msgpack 2014-04-11 14:07:44 -03:00
Thiago de Arruda
878e6e661d Add cmake module for finding msgpack 2014-04-11 14:07:44 -03:00
oni-link
00a27a808c vim-patch:7.4.192
Problem:    Memory leak when giving E853.
Solution:   Free the argument. (Dominique Pelle)

https://code.google.com/p/vim/source/detail?r=04c4ef8c0a1b757494500e46400552b135135e94
2014-04-11 13:35:22 -03:00
Stefan Hoffmann
c1961ee0df removed vim_mkdir macro 2014-04-11 13:31:48 -03:00
Stefan Hoffmann
96ddc0198d removed mch_rmdir macro 2014-04-11 13:31:48 -03:00
Stefan Hoffmann
a1df458524 removed mch_remove macro 2014-04-11 13:31:48 -03:00
Stefan Hoffmann
445f31f076 port vim_mkdir, mch_rmdir and mch_remove to libuv 2014-04-11 13:31:48 -03:00
Felipe Oliveira Carvalho
136e5e5b84 No error condition in push_current_state() 2014-04-11 12:58:00 -03:00
Felipe Oliveira Carvalho
949d1c407c No error condition in store_loop_line() 2014-04-11 12:58:00 -03:00
Felipe Oliveira Carvalho
a5efbd3140 No error condition in get_arg_list() 2014-04-11 12:58:00 -03:00
Felipe Oliveira Carvalho
a583bcc76e alist_add_list() doesn't return -1 anymore 2014-04-11 12:58:00 -03:00
Felipe Oliveira Carvalho
3c3200fc7a No error condition in foldInsert() 2014-04-11 12:58:00 -03:00
Felipe Oliveira Carvalho
f6b0e335e1 Remove OOM error handling code after ga_grow() calls 2014-04-11 12:57:59 -03:00
Felipe Oliveira Carvalho
457bb26151 Remove OOM error handling code after calls to mf_hash_grow() 2014-04-11 12:57:59 -03:00
Felipe Oliveira Carvalho
b4545740fd Remove OOM error handling code after calls to transstr()
transstr() doesn't return NULL anymore.
2014-04-11 12:57:59 -03:00
Felipe Oliveira Carvalho
b8bda77e39 Remove OOM error handling code after calls to diff_alloc_new() 2014-04-11 12:57:59 -03:00
Felipe Oliveira Carvalho
86279cefae Remove more OOM error handling code
From the functions:

 - ExpandBufnames
 - buf_modname()
 - do_autocmd_event()
 - ff_create_stack_element()
 - ff_get_visited_list()
 - ins_complete()
 - msg_show_console_dialog()
 - prt_find_resource()
 - vim_findfile_init()

TODO: refactor msg_show_console_dialog() to make sure it doesn't ever return
NULL.
2014-04-11 12:57:59 -03:00
John Schmidt
3fcdb2ab29 Replace alloc_check by xmalloc
`alloc_check` is just a wrapper around xmalloc, so we can remove it and use
xmalloc directly. ref #487 / #488

The call was replaced in the following files:

- ex_cmds.c
- misc1.c
- ops.c
2014-04-10 17:03:50 -03:00
Hinidu
321c67d610 vim-patch:7.4.187
Problem:    Delete that crosses line break splits multi-byte character.
Solution:   Advance a character instead of a byte. (Cade Foster)

https://code.google.com/p/vim/source/detail?r=a1c07956171a133583df42627d3498f935e59988
2014-04-10 16:56:42 -03:00
John Schmidt
2a0c6ff3ef Fix broken build due to unit test include order
Commit 4348d1e6f7
 introduced a bug that breaks the unit tests unless
 they run in a certain order. Both path.moon
 and os/fs.moon tries to include the same Enum, which
 fails since ffi.cdef can only include definitions once.

 This solves the bug by using Lua variables instead of
 ffi.cdef Enums.
2014-04-09 17:17:26 -03:00
oni-link
d11f805150 vim-patch:7.4.186
Problem:    Insert in Visual mode sometimes gives incorrect results.
            (Dominique Pelle)
Solution:   Remember the original insert start position. (Christian Brabandt,
            Dominique Pelle)

https://code.google.com/p/vim/source/detail?r=4d12112c5efae071aecbeed1a7196f18950457b3
2014-04-08 21:58:13 -03:00
John Schmidt
ac62041138 Move exe functions back to os/fs.c 2014-04-08 21:56:05 -03:00
John Schmidt
6fb58d1c5c Change prefix from os_* to path_* 2014-04-08 21:56:05 -03:00
John
aa7218b646 Move and adapt os_get_absolute_path unit tests to vim_FullName
* Add two new unit tests to `vim_FullName`
* Make `os_get_absolute_path` static
2014-04-08 21:56:05 -03:00
John Schmidt
4348d1e6f7 Move functions from os/fs.c into path.c
Move unit tests from os/fs.moon to path.moon
2014-04-08 21:56:05 -03:00
Thiago de Arruda
49f5e5d0b1 Add some missing backers and remove duplicates 2014-04-08 15:54:13 -03:00
Thiago de Arruda
63c2dad0ea Sort backers.md 2014-04-08 15:51:05 -03:00
Thiago de Arruda
5f0e134a42 Remove donation value from backers.md 2014-04-08 15:50:08 -03:00
Thiago de Arruda
e7d83cb81a Remove old comment from job.c 2014-04-08 14:17:18 -03:00
Thiago de Arruda
fe38baed38 Define special key for asynchronous events
K_EVENT/KE_EVENT are used to signal any loop that reads user input(scattered
across normal.c edit.c , ex_getln.c and message.c) of asynchronous events that
were not initiated by the user.

Representing non-user asynchronous events as special keys has the following
advantages:

- We reuse the normal vim redrawing code. As far as the rest of the code in
  edit.c/normal.c is concerned, it's just the user pressing another key.
- Assume less about vim tolerance for "out-of-band" modifications to its
  internal state.
- We still have a very complex codebase and it's hard to predict what bugs may
  be introduced by these changes. With this we implement asynchronicity in a way
  that will be more "natural" to the editor and has less chance of causing
  unpredictable behavior.

As the code is refactored, we will be able to treat user input as an 'event
type' and not the other way around(With this we are treating arbitrary events as
a special case of user input).
2014-04-08 14:17:18 -03:00