Commit Graph

9161 Commits

Author SHA1 Message Date
ZyX
3735537a50 viml/parser/expressions: Fix call inside nested parenthesis
It may have incorrectly tried to call everything because of essentially “value” 
nodes being treated as not such.
2017-10-15 19:13:48 +03:00
ZyX
f33543377e viml/parser/expressions: Add a way to represent tokens from C code 2017-10-15 19:13:47 +03:00
ZyX
f265066081 unittests: Add support for dumping “expected” state
Purpose is similar to that of `screen:snapshot_util()`, but in different domain.
2017-10-08 22:25:09 +03:00
ZyX
9fa8f7fc0a viml/parser/expressions: Add a way to adjust lexer
It also adds support for kExprLexOr which for some reason was forgotten.

It was only made sure that KLEE test compiles in non-KLEE mode, not that
something works or that KLEE is able to run tests.
2017-10-08 22:25:08 +03:00
ZyX
0987d3b10f viml/parser/expressions: Make curly braces name actually work 2017-10-08 22:25:07 +03:00
ZyX
3cc65ac054 viml/parser/expressions: Make commas actually work when calling 2017-10-08 22:25:07 +03:00
ZyX
d4782fb1ca viml/parser/expressions: Make commas actually work when calling 2017-10-08 22:25:06 +03:00
ZyX
7980614650 viml/parser/expressions: Add support for figure braces (three kinds) 2017-10-08 22:25:06 +03:00
ZyX
7c97f78393 klee: Start preparing for klee tests
First stage: something compiling without klee, but with a buch of dirty
hacks - done.
Second stage: something running under klee, able to emit useful results,
but still using dirty hacks - done.

Third stage: make CMake care about clang argumnets - not done, may be
omitted if proves to be too hard. Not that klee can be run on CI in any
case.
2017-10-08 22:25:05 +03:00
ZyX
430e516d3a viml/parser/expressions: Start creating expressions parser
Currently supported nodes:

- Register as it is one of the simplest value nodes (even numbers are
  not that simple with that dot handling).
- Plus, both unary and binary.
- Parenthesis, both nesting and calling.

Note regarding unit tests: it stores data for AST in highlighting in
strings in place of tables because luassert fails to do a good job at
representing big tables. Squashing a bunch of data into a single string
simply yields more readable result.
2017-10-08 22:25:03 +03:00
ZyX
919223c23a unittests: Move some functions into helpers modules 2017-10-08 22:12:00 +03:00
ZyX
1265da0288 viml/parser: Add helper functions for highlighting 2017-10-08 22:12:00 +03:00
ZyX
2d8b9937de viml/parser: Handle encoding conversions 2017-10-08 22:11:59 +03:00
ZyX
0300c4d109 viml/expressions: Add lexer with some basic tests 2017-10-08 22:11:57 +03:00
ZyX
ad58e50b45 kvec: Add kv_Z which is like kv_A, but zero is the last value 2017-10-08 22:11:57 +03:00
ZyX
e479f3b944 kvec: Add kv_drop() which is to be used like (void)kv_pop(kvec) 2017-09-29 01:21:22 +03:00
ZyX
190c8516f5 unittests: Add a way to print trace on regular error 2017-09-29 01:21:13 +03:00
ZyX
520c0b91a5 test/helpers: Add format_string and format_luav
First intended to provide %r functionality like in Python (and also support for 
%*.*s, but this was not checked), second adds nice table formatting for use in 
cases similar to screen:snapshot_util().
2017-09-29 01:21:07 +03:00
Justin M. Keyes
5b32bce73c Merge #7007 'Windows :terminal'
References #6383
Closes #4748
2017-08-16 21:35:51 +02:00
James McCoy
cea1248f7d Merge pull request #7052 from ckelsel/vim-8.0.0044
vim-patch:8.0.0044
2017-08-16 15:35:22 -04:00
James McCoy
6844ff7561 Merge pull request #7145 from ckelsel/vim-8.0.0174
vim-patch:8.0.0174
2017-08-16 15:16:19 -04:00
James McCoy
370602a8f5 Merge pull request #6928 from justinmk/vim-patch-8.0.0678
vim-patch:8.0.0678 closing a window does not trigger resizing
2017-08-16 14:49:09 -04:00
ckelsel
8dddf55907 vim-patch:8.0.0044
Problem:    In diff mode the cursor may end up below the last line, resulting
            in an ml_get error.
Solution:   Check the line to be valid.

025e3e0baf
2017-08-16 12:48:58 -04:00
James McCoy
8e2096c3df Merge pull request #7174 from jamessan/appveyor-allow-cov-failure
ci: Ignore MINGW_64-gcov failures in overall ci status
2017-08-16 12:43:11 -04:00
Justin M. Keyes
1fb3339844 vim-patch:8.0.0679
Problem:    Using freed memory.
Solution:   Get the parent frame pointer earlier.

41cc038ff8
2017-08-16 12:22:41 -04:00
James McCoy
9a9d9a187f ci: Ignore MINGW_64-gcov failures in overall ci status 2017-08-16 11:24:12 -04:00
Justin M. Keyes
f0a9b7ff63 vim-patch:8.0.0678 closing a window does not trigger resizing
Closes #6748

Problem:    When 'equalalways' is set and closing a window in a separate
            frame, not all window sizes are adjusted. (Glacambre)
Solution:   Resize all windows if the new current window is not in the same
            frame as the closed window. (closes vim/vim#1707)

8eeeba8c02
2017-08-16 10:39:50 -04:00
Justin M. Keyes
9a6eb71eba test/win: give up on this one 2017-08-16 09:13:45 +02:00
Justin M. Keyes
dbb404542b test/win: place cursor at edge to tickle SIGWINCH 2017-08-16 09:13:44 +02:00
Justin M. Keyes
91c85a6378 test: tty-test.c: keep tty_out handle around
Now the window_split_tab_spec.lua test seems to work.
Also do some cleanup.
2017-08-16 09:13:44 +02:00
Justin M. Keyes
d2d76882f7 win/test: enable more :terminal tests
To deal with SIGWINCH limitations on Windows, change some resize tests
to _shrink_ the screen width. ... But this didn't work, so still
ignoring those tests on Windows.
2017-08-16 09:13:44 +02:00
Justin M. Keyes
e0763e94ad test: tty-test.c: restore win32 SIGWINCH handler 2017-08-16 09:13:44 +02:00
Justin M. Keyes
6a90f53862 test: cleanup 2017-08-16 09:13:44 +02:00
Justin M. Keyes
8642f05fd9 single-includes: ignore os/pty_process_win.h 2017-08-16 09:13:44 +02:00
erw7
8c1782b840 pty_process_win: avoid quoting for cmd.exe 2017-08-16 09:13:44 +02:00
erw7
d3a8c4f992 win/pty: log errors 2017-08-16 09:13:44 +02:00
erw7
84fb794da6 win/pyt: cleanup 2017-08-16 09:13:44 +02:00
erw7
1614e805b3 win/test: tty-test: print screen size explicitly with CTRL-Q
tty-test.exe causes abnormal termination with low repeatability, try
changing it so as not to use SIGWINCH.
2017-08-16 09:13:44 +02:00
erw7
3b992f1688 win/pty: quote_cmd_arg(): check bounds 2017-08-16 09:13:43 +02:00
erw7
e635754e8e win/pty: jobstart, jobstop: fix null-pointer dereference
- Make sure that proc->in is not NULL, because nvim crashed when
  starting a job with pty.
- Make sure that proc->out is not NULL, because nvim crashed when stopping
  a job opened with pty.
2017-08-16 09:13:43 +02:00
erw7
4b1f21de75 win: support :terminal 2017-08-16 09:13:43 +02:00
Rui Abreu Ferreira
a797856755 win/install: winpty-agent.exe 2017-08-16 09:13:43 +02:00
Ryan Prichard
7f22a27a10 win: integrate winpty (WIP)
Handling of process exit is still broken.  It detects the moment when the
child process exits, then quickly stops polling for process output.  It
should continue polling for output until the agent has scraped all of the
process' output.  This problem is easy to notice by running a command like
"dir && exit", but even typing "exit<ENTER>" can manifest the problem --
the "t" might not appear.

winpty's Cygwin adapter handles shutdown by waiting for the agent to close
the CONOUT pipe, which it does after it has scraped the child's last
output.  AFAIK, neovim doesn't do anything interesting when winpty closes
the CONOUT pipe.
2017-08-16 09:13:43 +02:00
James McCoy
30cb66e8ba Merge pull request #7168 from teto/fix_coverty
Closes #7149
2017-08-15 19:55:24 -04:00
Justin M. Keyes
bb70eec177 Merge #6364 'command-line color hook' 2017-08-16 00:20:37 +02:00
Matthieu Coudron
1f4090011e coverty: solve  #7149 2017-08-15 21:43:23 +02:00
James McCoy
ab72063a52 Merge pull request #7167 from jamessan/codecov
ci: Rename .codecov.yml → codecov.yml
2017-08-15 13:35:11 -04:00
James McCoy
ca4b3f3fda ci: Rename .codecov.yml → codecov.yml
According to codecov/support#431 the comment setting isn't honored when
the yaml file is named .codecov.yml.
2017-08-15 12:03:45 -04:00
Justin M. Keyes
44dc8bbb13 ci/win: list build permutations explicitly (#7163)
This avoids changing the matrix permutations for the old non-gcov
builds, so that old URLs continue to work:

https://ci.appveyor.com/api/projects/neovim/neovim/artifacts/build/Neovim.zip?branch=master&job=Configuration%3A%20MINGW_32
https://ci.appveyor.com/api/projects/neovim/neovim/artifacts/build/Neovim.zip?branch=master&job=Configuration%3A%20MINGW_64
2017-08-15 11:06:51 +02:00
James McCoy
bdc72c7c44 Merge pull request #7161 from jamessan/codecov
ci: Upload coverage data to codecov.io

Closes #7162
2017-08-14 11:03:26 -04:00