Commit Graph

13466 Commits

Author SHA1 Message Date
Felipe Oliveira Carvalho
5209d2271b Replace ga->ga_len == 0 checks with GA_EMPTY(ga)
Used Coccinelle to perform the changes

@@
expression E;
@@

<...
(
// E.ga_len == 0 is isomorphic to !E.ga_len
- E.ga_len == 0
+ GA_EMPTY(&E)
|
- E->ga_len == 0
+ GA_EMPTY(E)
)
...>
2014-05-17 07:02:44 -03:00
Felipe Oliveira Carvalho
b4efff6523 Replace ga->ga_len > 0 checks with !GA_EMPTY(ga)
Used Coccinelle to perform the changes

```diff
@@
expression E;
@@

<...
(
- E.ga_len > 0
+ !GA_EMPTY(&E)
|
- E->ga_len > 0
+ !GA_EMPTY(E)
)
...>
```

`spatch --in-place --sp-file ga_empty.cocci <C_FILE>`
2014-05-17 07:02:44 -03:00
Felipe Oliveira Carvalho
659cd0e99a s/GA_EMPTY/GA_EMPTY_INIT_VALUE/
I'm about to implement a `GA_EMPTY` macro that checks if the GA is empty or not.
2014-05-17 07:02:44 -03:00
Eliseo Martínez
5f795225dc Introduce nvim namespace: Fix define guards.
Change define guards from NEOVIM_XXX_H to NVIM_XXX_H:
- Change header files.
- Change clint correct guard name calculation.
2014-05-15 20:46:02 +02:00
Eliseo Martínez
71c79b5b70 Introduce nvim namespace: Fix contrib youcompleteme.
- Fix instructions to install youcompleteme configuration.
2014-05-15 20:46:02 +02:00
Eliseo Martínez
3b523ec699 Introduce nvim namespace: Fix localization.
- Fix executable path.
- Make po file title similar as others.
2014-05-15 20:46:02 +02:00
Eliseo Martínez
575deff66d Introduce nvim namespace: Fix clint.
- Fix path to clint-checked files.
- Fix mechanism to calculate define guard names.
2014-05-15 20:46:02 +02:00
Eliseo Martínez
2ababe5a99 Introduce nvim namespace: Fix functional tests.
Fix some paths to new locations:
- Makefile: Fix nvim binary path.
- test49  : 459: Fix nvim binary path.
- test89  :  62: Fix testdir root.
                 Fix corresponding expected result.
- test105 :  10: Testing fnamemodify to reduce path to use ~ prefix.
                 Fix faked home directory.
                 Fix corresponding expected result.
             26: Testing fnamemodify with r modifier.
                 Fix out-of-project prefix removal.
                 Fix corresponding expected result.
2014-05-15 20:46:02 +02:00
Eliseo Martínez
74b9396043 Introduce nvim namespace: Fix unit tests.
Point cimports to new locations.
2014-05-15 20:46:02 +02:00
Eliseo Martínez
762a8ad0f3 Introduce nvim namespace: Fix unmasked strings.h issue.
Problem:  Now that nvim/strings.h is correctly namespaced, an issue
          that had been masked until now arises:

          When compiling, we get a lot of errors because of everywhere
          the functions in nvim/strings.h are used, there's no include
          to import them.

          But, how could this compile and work previously, then? It
          turns out that:
          - In every such case, we are also including vim.h, which in
            turn includes os_unix_defs.h.
          - os_unix_defs.h includes <string.h> and also <strings.h> in
            some systems (e.g. OSX).
          - Build had been modified previously to (even when importing
            system headers), prefer equally-named local ones. That was
            in fact done as a previous attempt to solve the same issue
            we are trying to solve another way now.

          So, we were including our "strings.h" as a side-effect of
          including <strings.h> through "vim.h" --> "os_unix_defs.h".

Solution: Correctly include "nvim/strings.h" in every file needing it.
2014-05-15 20:46:02 +02:00
Eliseo Martínez
409cc138f2 Introduce nvim namespace: Fix project-local includes.
Prepend 'nvim/' in all project-local (non-system) includes.
2014-05-15 20:46:01 +02:00
Eliseo Martínez
e731a5edf8 Introduce nvim namespace: Fix relative includes.
Problem:  Some newly introduced files used includes relative to the
          current file, both of the form `include "../XXX.h"` and
          `include "XXX.h"`.
          Preferred form is relative to include root (src/ in our case).
Solution: Change includes to preferred form.
Note:     This is also done to ease next commit (prepend 'nvim/ to all
          project-local includes).
2014-05-15 20:46:01 +02:00
Eliseo Martínez
a6734844ca Introduce nvim namespace: Fix build process.
- Leave src as include dir (for includes to recognize 'nvim/' prefix).
- Change subdirectory from src to src/nvim.
- Fix msgpack generation.
- Fix some other paths to new locations.
2014-05-15 20:46:01 +02:00
Eliseo Martínez
da51dc9cf2 Introduce nvim namespace: Move files.
Move files from src/ to src/nvim/.
- src/nvim/ becomes the new root dir for nvim executable sources.
- src/libnvim/ is planned to become root dir of the neovim library.
2014-05-15 20:46:01 +02:00
Thiago de Arruda
ffe61e5ba1 Tell cmake to use -isystem third-party includes
This adds the `SYSTEM` parameter to `include_directories`, which will tell cmake
to use `-isystem` instead of `-I` for specifying include directories. One
advantage is that compilers won't emit warnings for included files that belong
to dependencies.
2014-05-15 08:21:13 -03:00
John Szakmeister
21bd990603 Don't allow undefined references under Linux.
Many other systems expect this already, but on Linux the default is to
allow them.  Let's turn that off.
2014-05-14 21:14:28 -04:00
Thiago de Arruda
0d1094d709 Add ${API_SOURCES} to nvim-test cmake target.
Fixes #720
2014-05-14 16:41:42 -03:00
Thiago de Arruda
f0f4ab5500 Use platform check for correct selection of khash type in helpers.c 2014-05-13 14:11:32 -03:00
Thiago de Arruda
f69b0a1dc7 API: Implement vim_get_vvar 2014-05-13 14:11:32 -03:00
Thiago de Arruda
5d0cb370f6 API: Refactor vim_{get,set}_var
- Change in dict_set_value: Passing 'nil' as value will delete the
  variable.
- Change in dict_get_value: Removed 'pop' parameter, now values can be popped
  by passing 'nil' to dict_set_value
- Update {buffer,window,tabpage}_get_var to reflect the changes
2014-05-13 14:11:32 -03:00
Thiago de Arruda
40c82ed7cd API: Implement tabpage_get_window_count 2014-05-13 14:11:32 -03:00
Thiago de Arruda
a6baf32a2c API: Implement tabpage_is_valid 2014-05-13 14:11:32 -03:00
Thiago de Arruda
14f2a3d533 API: Implement tabpage_get_window 2014-05-13 14:11:32 -03:00
Thiago de Arruda
e026be46af API: Implement tabpage_{get,set}_var 2014-05-13 14:11:32 -03:00
Thiago de Arruda
bfe3b6712e API: Implement window_is_valid 2014-05-13 14:11:32 -03:00
Thiago de Arruda
3ed2ddf726 API: Implement window_get_position 2014-05-13 14:11:32 -03:00
Thiago de Arruda
6226ac34fd API: Implement window_{get,set}_option 2014-05-13 14:11:32 -03:00
Thiago de Arruda
17053bbc39 API: Implement window_{get,set}_var 2014-05-13 14:11:32 -03:00
Thiago de Arruda
a132effd35 API: Implement window_{get,set}_{height,width} 2014-05-13 14:11:32 -03:00
Thiago de Arruda
b7c5d294c1 API: Implement window_{get,set}_cursor 2014-05-13 14:11:32 -03:00
Thiago de Arruda
6c850bd6b9 API: Implement window_get_buffer 2014-05-13 14:11:31 -03:00
Thiago de Arruda
9d18533ca3 Add new files to clint and fix reported errors 2014-05-13 14:11:31 -03:00
Thiago de Arruda
60043da29f API: Implement buffer_get_mark 2014-05-13 14:11:31 -03:00
Thiago de Arruda
6afc245305 API: Implement buffer_is_valid 2014-05-13 14:11:31 -03:00
Thiago de Arruda
550938e498 API: Implement buffer_insert 2014-05-13 14:11:27 -03:00
Thiago de Arruda
0e3aa877c0 API: Implement buffer_{get,set}_name 2014-05-13 14:11:27 -03:00
Thiago de Arruda
978755eb90 API: Implement buffer_{get,set}_option 2014-05-13 14:11:27 -03:00
Thiago de Arruda
63da1f948a API: Implement buffer_{get,set}_var 2014-05-13 14:11:26 -03:00
Thiago de Arruda
607d4acfb2 API: Implement functions for deleting lines 2014-05-13 14:11:26 -03:00
Thiago de Arruda
8eb67404f0 API: Refactor buffer_{get,set}_line
They are now implemented on top of the buffer_{get,set}_slice functions
2014-05-13 14:11:26 -03:00
Thiago de Arruda
4dc34bc0e0 API: Implement buffer_{get,set}_slice 2014-05-13 14:11:22 -03:00
Thiago de Arruda
417a61f54f API: Implement buffer_get_length 2014-05-13 09:33:41 -03:00
Thiago de Arruda
73dbb97f8e API: Implement window/tabpage switching functions
Also moved `find_buffer` to 'api/helpers.c' and removed unnecessary declaration
in 'window.h'
2014-05-13 09:33:41 -03:00
Thiago de Arruda
9dd1d2cd00 API: Implement buffer switching functions 2014-05-13 09:33:41 -03:00
Thiago de Arruda
c001cfdba0 API: Implement vim_get_buffer_count 2014-05-13 09:33:41 -03:00
Thiago de Arruda
c1d3539fb4 API: Implement vim_{out,err}_write 2014-05-13 09:33:41 -03:00
Thiago de Arruda
d2b715bf1d API: Implement vim_{get,set}_option
Some functions from upstream VIM were reintegrated for this:
- get_option_value_strict
- set_option_value_err
- set_option_value_for
- unset_global_local_option
2014-05-13 09:33:41 -03:00
Thiago de Arruda
7c01d5ff92 API: Implement vim_{get,set}_var 2014-05-13 09:33:41 -03:00
Thiago de Arruda
5f5e39323e API: Move vim_to_object to helpers.c 2014-05-13 09:33:41 -03:00
Thiago de Arruda
57df213b86 API: Implement vim_set_current_line 2014-05-13 09:33:41 -03:00