Commit Graph

7445 Commits

Author SHA1 Message Date
Shougo
4e21311f9c vim-patch:8.0.0341 (#6151)
Problem:    When using complete() and typing a character undo is saved after
            the character was inserted. (Shougo)
Solution:   Save for undo before inserting the character.

d56a79d339
2017-02-23 12:37:46 +01:00
Koichi Shiraishi
34e24cb2f7 terminal: Initialize colors in reverse order (#6160)
Closes #3601

Signed-off-by: Koichi Shiraishi <zchee.io@gmail.com>
2017-02-23 11:44:09 +01:00
James McCoy
ddab4661f7 strings.h: Include <stdarg.h> for vim_vsnprintf's use of va_list
This fully resolves #6141.
2017-02-20 11:54:58 -05:00
James McCoy
a667972568
string.c: Include <stdarg.h> for va_list type and va_* macros
Closes #6141
2017-02-19 18:40:33 -05:00
Justin M. Keyes
3a2ae17062 globals.h: Avoid expression in array definition.
See aa56b24ee6 (commitcomment-20949000)
2017-02-19 02:55:27 +01:00
Justin M. Keyes
22337b1c01 Merge #6137 from justinmk/cmdline-ctrl-r
cmdline: CTRL-R: Omit trailing ^M character
2017-02-19 14:20:52 +01:00
Justin M. Keyes
baab49ee89 cmdline: CTRL-R: Omit trailing <CR>.
The "technically correct" interpretation is to execute the first line
that is seen (and this is what happens on middle-click paste in Vim).
^M is only intended to "defuse" the newline, so the user can review it.

The parent commit changed the behavior to insert <Space> between lines,
but that's a higher-risk change: it is arguably possible that some user
*wants* the literal ^M chars when e.g. assigning to a register:
    :let @a='<C-R>b'

To avoid that risk, keep the old behavior and only omit the last ^M.
This makes `yy:<C-R>0` nicer at no cost.
2017-02-18 23:24:35 +01:00
Justin M. Keyes
308ccb6f5e cmdline: CTRL-R: <Space> instead of CR between lines.
^M isn't any more "correct" than space: the "technically correct"
interpretation is to execute the first line that is seen (and this is
what happens on middle-click paste in Vim). ^M is only intended to
defuse the newline, so that the user can review the command. We can do
that with a space instead, and then the command can be executed without
having to fix it up first.
2017-02-18 14:49:05 +01:00
Kurt Bonatz
b0bbe82a60 eval.c: has("unnamedplus"). (#6136)
Return 1 for UNIX  with a functioning clipboard provider.

Closes #6103
2017-02-18 14:04:46 +01:00
Justin M. Keyes
158ea52854 options: Remove 'esckeys' (#6138)
This was never supported and it does not make sense for Nvim.
2017-02-18 14:01:20 +01:00
Justin M. Keyes
b49a74a1af doc: README.md 2017-02-17 17:44:10 +01:00
Justin M. Keyes
59254e4ae7 doc: README.md 2017-02-17 17:41:30 +01:00
Justin M. Keyes
c1bc784ad8 Merge #6110 'refactor: Move vim_*printf to strings.c'. 2017-02-17 16:25:19 +01:00
timeyyy
f017ae6115 doc/provider: python virtualenvs #6135
Closes #1887

Helped-by: Tommy Allen <tommy@esdf.io>
2017-02-17 03:44:05 +01:00
Justin M. Keyes
706b01ba79 Merge #6114 'Partial string handling refactoring'. 2017-02-17 02:08:21 +01:00
Justin M. Keyes
4a107a11a1 Merge #6105 from justinmk/win32-bindeps
Windows: ship with common tools
2017-02-16 16:53:34 +01:00
Justin M. Keyes
0095ad5693 win/CI: Cache dependencies. 2017-02-16 16:23:18 +01:00
Justin M. Keyes
ab9298ec15 win/package: Copy externals without analyzing.
These are just blobs that we jammed into the package. find_program() and
WindowsDllCopy.cmake do not make sense here, they search include paths
and try to determine DLL dependencies (GetPrerequisites).
2017-02-16 16:23:18 +01:00
Justin M. Keyes
3378ffac8a win/package: nvim-qt GUI
Closes #6126
2017-02-16 16:23:18 +01:00
Justin M. Keyes
2fbc42aa8a win/package: provide common tools
References #1507
Closes #1811

curl.exe curl_7_52_1_openssl_nghttp2_x86.7z from https://winampplugins.co.uk/curl/
    curl 7.52.1 (x86_64-pc-win32) libcurl/7.52.1 OpenSSL/1.0.2k zlib/1.2.8 nghttp2/1.19.0
    Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
    Features: AsynchDNS IPv6 Largefile NTLM SSL libz HTTP2 HTTPS-proxy

tidy.exe http://tidybatchfiles.info
    HTML Tidy for Windows
    tidy version 5.3.14 date 2017.01.09 compiled for Windows win32 x86.

7za.exe http://www.7-zip.org
    7-Zip 16.04 (2016-10-04)

cat.exe http://unxutils.sourceforge.net

from gVim:
    diff.exe GNU diffutils version 2.7
    xxd.exe V1.10 27oct98 by Juergen Weigert (Win32)
    ye olde hacked-up tee.exe
2017-02-16 16:23:18 +01:00
Rui Abreu Ferreira
7caaa106e3 win/build: Download winpty
Winpty has x86/x64 binary builds, download them when building
Neovim.
2017-02-16 16:23:18 +01:00
Rui Abreu Ferreira
bddea0caff win/build: Fix libuv recipe for Windows/NMake X86_64
The 64bit check for the libuv recipe worked for the VS generator
but not for NMake.
2017-02-16 16:23:18 +01:00
Rui Abreu Ferreira
91205d219a win/build: detect architecture 2017-02-16 16:23:17 +01:00
svaante
a05690ae2d tui.c: Handle missing "key_dc" terminfo entry (#6128)
Closes #6025
2017-02-16 11:59:01 +01:00
Kurt Bonatz
0e44916fff ex_docmd.c: Allow unescaped spaces in :edit filename (#6119)
This makes :edit consistent on all platforms. 
Also affects :argedit, et al. Wild (tab) completion doesn't work, though.

Closes #6010
2017-02-15 11:12:31 +01:00
Nikolai Aleksandrovich Pavlov
64c375c589 unittest: Filter out standard defines so that they do not spam stderr (#6113) 2017-02-15 01:21:06 +01:00
ZyX
095e6cc2e0 *: Fix linter errors 2017-02-15 03:15:47 +03:00
ZyX
efa2682e3b *: Partial string handling refactoring
Main points:

- Replace `char_u` with `char` in some cases.
- Remove `str[len] = NUL` hack in some cases when `str` may be considered
  `const`.
2017-02-15 02:48:33 +03:00
ZyX
ee16f78fa9 strings: Fix “unexpected format specifier: %lp” ASAN error 2017-02-15 00:45:04 +03:00
Justin M. Keyes
2a50ff7e2f Merge #6108 from ZyX-I/pr-5678
Better core dumps checking
2017-02-14 21:43:01 +01:00
James McCoy
eaf9caaf43 Merge pull request #6118 from lonerover/vim-patch
scripts/vim-patch.sh: don't ignore runtime/doc/tagsrch.txt
2017-02-14 06:02:21 -05:00
lonerover
891d412d6c vim-patch.sh: don't ignore runtime/doc/tagsrch.txt 2017-02-14 16:14:41 +08:00
Nikolai Aleksandrovich Pavlov
6e881872f4 api/helpers: Remove NULL dereference (#6109)
Even though all used compilers can swallow this code, it is still
undefined behaviour.
2017-02-14 00:09:49 +01:00
Justin M. Keyes
2f38ed11c9 providers: Disable if g:loaded_* exists.
The exists('g:loaded_foo') convention is rather common, and may be
relied upon in some cases. It's also very unlikely that a user or plugin
has any reason to set g:loaded_foo to zero, so the principle of least
surprise can be brushed aside here.

https://github.com/neovim/neovim/issues/6107#issuecomment-279532143
2017-02-14 00:02:50 +01:00
ZyX
a429235b6d message,strings: Move vim_*printf functions to strings.c
Allows eval/typval.h to #include message.h.
2017-02-14 00:53:03 +03:00
ZyX
943531cf9e ci: Make sure core* is the last component of path 2017-02-14 00:33:52 +03:00
Justin M. Keyes
59f12e7d61 ui_detach: Do not redraw during teardown/exit. 2017-02-14 00:33:52 +03:00
ZyX
d670591887 ci: Better core dump checking
- Do not exclude any directories from `find` search, remove dumps before tests
  instead.
- Install `apport` on travis so that linux tests should produce core dumps
  (based on information from travis-ci/travis-ci#3754, not sure whether it still
  applies).
- Check cores in lua so that one has an idea which test is failing exactly. Do
  this only 10% of time on linux because traversing the file system is slow.

Unit tests are still not touched, though it is what `app` argument in
`check_cores` is for.

TODO? consider using `find`, it may be faster. Consider retiring `os.execute`,
      dealing with escaping is bad.
2017-02-14 00:33:52 +03:00
ZyX
3e94510570 ci: Try checking for core dumps
Note: can’t use `dbg_cmd` string because I need arguments with spaces (i.e. `bt
all` and `thread apply all bt full`).
2017-02-14 00:33:20 +03:00
ZyX
da2139296d ci: Extract prepare_build() from build_nvim() 2017-02-14 00:32:52 +03:00
Justin M. Keyes
9451647d9b health.vim: Do not check intentionally disabled providers.
Closes #6107
2017-02-13 22:21:23 +01:00
Justin M. Keyes
4a511de881 ci: Do not use oldtest target on Travis. (#6101)
We must invoke src/nvim/testdir/Makefile directly.
Explained in 3d1084f264:
> Running tests from the top-level Makefile will use the third-party
> dependencies from .deps instead of the ones from the Travis cache.

If we could run `oldtest` with CMake, we would not need to do this. Need
USES_TERMINAL feature (CMake 3.2+) for that.
2017-02-13 15:07:49 +01:00
Justin M. Keyes
b5965bbd24 Merge #6106 from justinmk/health.vim
health.vim: Reduce visual noise.
2017-02-13 02:33:50 +01:00
Justin M. Keyes
770d60d904 coverity/13728: Null pointer dereference (#6100)
coverity claims that `valid_tabpage(NULL)` can return true...
2017-02-12 21:09:52 +01:00
Justin M. Keyes
2ddadaa28c Merge #6084 from justinmk/fix-coverity-155968
coverity/155968: resource leak
2017-02-12 21:09:16 +01:00
Justin M. Keyes
f50de5be41 health.vim: ruby provider advice 2017-02-12 12:51:54 +01:00
Justin M. Keyes
c43ba671c3 health.vim: Reduce visual noise.
- SUCCESS should be extra green, regardless of colorscheme.
- Do not highlight INFO and SUGGESTIONS, they should not demand the
  user's attention.
2017-02-12 11:38:28 +01:00
Justin M. Keyes
aa56b24ee6 os/*: Use os_buf instead of NameBuff, IObuff. 2017-02-12 06:25:27 +01:00
Justin M. Keyes
30826cb2d6 build: oldtest target: TEST_FILE, NVIM_PRG (#6098)
- Add support for TEST_FILE to the `oldtest` target, for consistency
  with the busted/lua tests.
  Caveat: with the busted/lua tests TEST_FILE takes a full path, whereas
  for `oldtest` it must be "test_foo.res".
- Add support for NVIM_PRG, again so that all test-related targets are
  consistent.
- Use consistent name for NVIM_PRG. But still need to support NVIM_PROG
  for QuickBuild CI.

Note: The `oldtest` target is driven by the top-level Makefile, because
it requires a TTY. CMake 3.2 added a USES_TERMINAL flag to
add_custom_target(). But we support CMake 2.8...

    add_custom_target(oldtest
      COMMAND make clean
      COMMAND make NVIM_PRG=$<TARGET_FILE:nvim> $ENV{MAKEOVERRIDES}
      DEPENDS nvim
      WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/src/nvim/testdir"
      USES_TERMINAL true
    )
2017-02-12 01:02:54 +01:00
Nikolai Aleksandrovich Pavlov
abdbfd26bc eval: Add id() function and make printf("%p") return something useful (#6095) 2017-02-11 19:47:02 +01:00