Matt Kline
09cd4d0a43
use wchar_t instead of WCHAR #6998
...
wchar_t has better cross-platform support and seems to fix an issue
on MinGW when building with `-std=c99`.
2018-06-18 19:24:34 +02:00
Justin M. Keyes
66a39fce6c
Merge #8502 from janlazo/vim-8.0.0481
2018-06-17 23:52:55 +02:00
Justin M. Keyes
c1c14faad9
Merge #8520 'Ex mode: always "improved" (gQ)'
2018-06-17 23:19:59 +02:00
Justin M. Keyes
487cf98c0b
startup: fix -E/-Es without -u NONE
...
Before this change, -E/-Es without `-u NONE` reads stdin as Ex commands.
It should always read stdin as text (into buffer 1), like this:
echo foo | nvim -Es +'%p'
foo
echo foo | nvim -Es -u NORC +'%p'
foo
2018-06-17 14:50:53 +02:00
Justin M. Keyes
9c2099d585
Ex mode: use getexline() instead of getexmodeline()
...
This changes Ex mode (Q, -e) to work like Vim's "improved Ex mode"
(gQ, -E). That brings some small behavior differences, but should not
impact most Ex scripts (unless, for example, they depend on mappings
being disabled--but that can be solved for -e by skipping user config).
Before this change:
* the screen test hangs.
After this change:
* Q acts like gQ.
* -e/-es differs from -E/-Es only in its treatment of stdin.
This moves towards potentially removing getexmodeline().
(HINT: That does NOT mean "removing Ex mode", it means removing the
Vi-compatible Ex mode, which differs from Vim's "improved Ex mode" only
in some minor details (e.g. mappings are disabled).)
ref #1089 :-)~
2018-06-17 14:50:53 +02:00
Ahmed El Gabri
3cc3506965
checkhealth: node.js: also search yarn #8528
...
- "neovim" package may be installed with yarn. Check yarn if npm fails.
- Use filereadable() instead of glob(). closes #8552
2018-06-17 13:05:55 +02:00
Jan Edmund Lazo
8192267dea
vim-patch:8.0.0609: some people still don't know how to quit ( #8571 )
...
Problem: For some people the hint about quitting is not sufficient.
Solution: Put <Enter> separately. Also use ":qa!" to get out even when
there are changes.
28a8193e31
2018-06-17 12:51:03 +02:00
Jan Edmund Lazo
367343ae6e
vim-patch:8.0.0625: shellescape() always escapes a newline ( #8573 )
...
Problem: shellescape() always escapes a newline, which does not work with
some shells. (Harm te Hennepe)
Solution: Only escape a newline when the "special" argument is non-zero.
(Christian Brabandt, closes vim/vim#1590 )
206155280d
2018-06-17 12:20:42 +02:00
Justin M. Keyes
b006771cba
Merge #8570 'gen_events.lua: define NUM_EVENTS as enum'
2018-06-16 19:57:28 +02:00
Justin M. Keyes
a503349e20
Merge #8569 from janlazo/vim-8.0.0602
2018-06-16 18:24:54 +02:00
Justin M. Keyes
26dc628ab3
Merge #8567 from ckelsel/vim-8.0.0530
2018-06-16 18:21:14 +02:00
Jan Edmund Lazo
de022d2570
vim-patch:8.0.0604: gF test fails still on MS-Windows
...
Problem: gF test fails still on MS-Windows.
Solution: Use : before the line number and remove it from 'isfname'.
712598f210
2018-06-16 11:37:13 -04:00
Jan Edmund Lazo
0d3557ad72
vim-patch:8.0.0603: gF test fails on MS-Windows
...
Problem: gF test fails on MS-Windows.
Solution: Use @ instead of : before the line number
d7aca7a71c
2018-06-16 11:37:13 -04:00
Jan Edmund Lazo
440c33343d
vim-patch:8.0.0602: when gF fails to edit the file the cursor still moves
...
Problem: When gF fails to edit the file the cursor still moves to the found
line number.
Solution: Check the return value of do_ecmd(). (Michael Hwang)
2a79ed293c
2018-06-16 11:37:12 -04:00
Jan Edmund Lazo
dd2e1e9445
syntax: refactor syn_finish_line to return bool
2018-06-16 10:22:20 -04:00
Jan Edmund Lazo
2add88eedc
vim-patch:8.0.0481: unnecessary if statement
...
Problem: Unnecessary if statement.
Solution: Remove the statement. Fix "it's" vs "its" mistakes. (Dominique
Pelle, closes vim/vim#1568 )
aab93b12cb
2018-06-16 10:20:18 -04:00
ckelsel
33596d5d07
fix lint
2018-06-16 19:46:41 +08:00
ckelsel
bbf00120f7
vim-patch:8.0.0545: edit test may fail on some systems
...
Problem: Edit test may fail on some systems.
Solution: If creating a directory with a very long path fails, bail out.
15ecbd6f3d
2018-06-16 19:43:01 +08:00
ckelsel
3ff1907593
vim-patch:8.0.0543: test_edit causes older xfce4-terminal to close
...
Problem: Test_edit causes older xfce4-terminal to close. (Dominique Pelle)
Solution: Reduce number of columns to 2000. Try to restore the window
position.
ba6ec18297
2018-06-16 19:41:58 +08:00
ckelsel
264725c25f
vim-patch:8.0.0532: test with long directory name fails on Mac
...
Problem: Test with long directory name fails on Mac.
Solution: Skip the test on Mac systems.
c77d675747
2018-06-16 19:41:18 +08:00
ckelsel
9a1234e57f
vim-patch:8.0.0531: test with long directory name fails on non-unix systems
...
Problem: Test with long directory name fails on non-unix systems.
Solution: Skip the test on non-unix systems.
9b81079ddd
2018-06-16 19:40:46 +08:00
ckelsel
ebc7f69d92
vim-patch:8.0.0530: buffer overflow when 'columns' is very big
...
Problem: Buffer overflow when 'columns' is very big. (Nikolai Pavlov)
Solution: Correctly compute where to truncate. Fix translation.
(closes vim/vim#1600 )
658a3a2caf
2018-06-16 19:39:40 +08:00
Justin M. Keyes
eeeaf04c5e
Merge #8565 from janlazo/vim-8.0.0575
2018-06-16 12:42:05 +02:00
Justin M. Keyes
4bb039e225
Merge #8543 from janlazo/vim-8.0.0596
2018-06-16 12:01:09 +02:00
Justin M. Keyes
4c3c04d03c
Merge #8526 from janlazo/vim-8.0.0451
2018-06-16 11:55:40 +02:00
Jan Edmund Lazo
f4dffe7181
vim-patch:8.0.0577: warning for uninitialized variable
...
Problem: Warning for uninitialized variable. (John Marriott)
Solution: Initialize "indent".
97db5541a6
2018-06-16 00:37:37 -04:00
Jan Edmund Lazo
9ab6fe4fed
vim-patch:8.0.0575: using freed memory when resetting 'indentexpr'
...
Problem: Using freed memory when resetting 'indentexpr' while evaluating
it. (Dominique Pelle)
Solution: Make a copy of 'indentexpr'.
a701b3b6f0
2018-06-16 00:37:37 -04:00
Justin M. Keyes
1cc3b32f4c
build/test: skip empty TEST_TAG, TEST_FILTER
...
- Empty "--tags=", "--filter=" prevents TEST_FILE from running.
- Fix another bug: TEST_FILTER overwrote TEST_TAG.
2018-06-16 02:12:35 +02:00
Justin M. Keyes
2a274cbe30
gen_events.lua: define NUM_EVENTS as an enum value
...
Fix PVS warnings:
fileio.c:7293 Medium V547 Expression is always true.
fileio.c:7351 Medium V547 Expression 'event == 100' is always false.
event_name2nr returns event_T, so PVS infers that nothing outside of
that range could possibly be returned.
2018-06-16 01:57:30 +02:00
Justin M. Keyes
c990d65c37
get_maphash: fix off-by-one
...
Patch-by: oni-link <knil.ino@gmail.com>
ref: https://github.com/neovim/neovim/pull/6236#discussion_r195113807
2018-06-14 19:00:37 +02:00
Björn Linse
c46997aa87
Merge pull request #8546 from bfredl/eob
...
Add fillchar for EndOfBuffer and check for invalid UTF-8
2018-06-14 18:00:59 +02:00
James McCoy
f27a665e05
Merge pull request #8549 from jamessan/output_spec-printf
...
functionaltest: Use octal escapes for printf
2018-06-14 08:06:38 -04:00
Björn Linse
5442f0b622
fillchars: make checks more strict and improve tests
2018-06-14 14:00:09 +02:00
James McCoy
6c0f1903e6
functionaltest: Use octal escapes for printf
...
According to POSIX[0], only octal escapes are supported by the printf
command. GNU coreutils' printf and some shells' builtin printf versions
which support hex escapes, but dash and non-GNU printf do not.
[0]: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/printf.html
2018-06-13 23:03:37 -04:00
Jack Bracewell
a7bb63c55d
Add ‘eob’ option to fillchars
...
This option allows configuring what character is shown on the empty
lines at the end of a buffer, previously hardcoded to ‘~’
2018-06-13 17:54:16 +02:00
Jan Edmund Lazo
3462acbbff
lint
2018-06-13 07:10:17 -04:00
Björn Linse
463da84806
Merge pull request #7992 from bfredl/mbscreen
...
Represent Screen state as UTF-8
2018-06-13 11:11:12 +02:00
Marco Hinz
f4ba20d1c0
Fix implicit conversion warning ( #8536 )
2018-06-13 10:48:29 +02:00
Björn Linse
050f3975f6
options: remove 'maxcombine` option (always use 6)
2018-06-13 10:11:35 +02:00
Björn Linse
d8e18c96a9
screen: use UTF-8 representation
...
Store text in ScreenLines as UTF-8, so it can be sent as-is to the UI
layer. `utfc_char2bytes(off,buf)` is removed, as `ScreenLines[off]` now
already contains this representation.
To recover the codepoints that the screen arrays previously contained, use
utfc_ptr2char (or utf_ptr2char to ignore composing chars).
NB: This commit does NOT change how screen.c processes incoming UTF-8 data
from buffers, cmdline, messages etc. Any algorithm that operates on UCS-4
(like arabic shaping, treatment of non-printable chars)
is left unchanged for now.
2018-06-13 10:11:11 +02:00
Jan Edmund Lazo
3e0188e92d
vim-patch:8.0.0596: crash when complete() called after complete_add()
...
Problem: Crash when complete() is called after complete_add() in
'completefunc'. (Lifepillar)
Solution: Bail out if compl_pattern is NULL. (closes vim/vim#1668 )
Also avoid using freed memory.
4475b62396
2018-06-13 00:18:50 -04:00
Björn Linse
315b7f8632
test/ui: doublewidth rendering. multibyte and cmdwin chars in folded lines ( #8534 )
2018-06-12 17:57:47 +02:00
Jan Edmund Lazo
f419f914fc
charset: include option_defs.h for breakat_flags
2018-06-12 09:34:10 -04:00
Justin M. Keyes
f52ace459a
doc
2018-06-12 09:18:25 +02:00
Jan Edmund Lazo
3c7ea8d619
vim-patch:8.0.0451: some macros are in lower case
...
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case. Avoid lower case macros use an
argument twice.
91acfffc1e
2018-06-12 02:00:50 -04:00
Justin M. Keyes
fa2ad305e3
version bump
2018-06-11 10:58:54 +02:00
Justin M. Keyes
44c6deb91a
NVIM v0.3.0
...
FEATURES:
3cc7ebf810
#7234 built-in VimL expression parser
6a7c904648
#4419 implement <Cmd> key to invoke command in any mode
b8363283fa
#7679 'startup: treat stdin as text instead of commands'
58b210e114
:digraphs : highlight with hl-SpecialKey #2690
7a13611ba2
#8276 'startup: Let `-s -` read from stdin'
1e71978cf0
events: VimSuspend, VimResume #8280
1e7d5e8cdf
#6272 'stdpath()'
f96d99ad11
#8247 server: introduce --listen
e8c39f72fd
#8226 insert-mode: interpret unmapped META as ESC
98e7112390
msg: do not scroll entire screen (#8088 )
f72630b784
#8055 let negative 'writedelay' show all redraws
5d2dd2ebe2
win: has("wsl") on Windows Subsystem for Linux #7330
a4f6cec7a3
cmdline: CmdlineEnter and CmdlineLeave autocommands (#7422 )
207b7ca4bc
#6844 channels: support buffered output and bytes sockets/stdio
API:
f85cbea725
#7917 API: buffer updates
418abfc9d0
#6743 API: list information about all channels/jobs.
36b2e3f743
#8375 API: nvim_get_commands
273d2cd5d5
#8329 API: Make nvim_set_option() update `:verbose set …`
8d40b3617c
#8371 API: more reliable/descriptive VimL errors
ebb1acb3c0
#8353 API: nvim_call_dict_function
9f994bb699
#8004 API: nvim_list_uis
34057045be
#7520 API/UI: forward option updates to UIs
911b1e49ab
#7821 API: improve nvim_command_output
WINDOWS OS:
9cefd83cc7
#8084 , #8516 build/win: support MSVC
ee4e1fd8ec
win: Fix reading content from stdin (#8267 )
TUI:
ffb8904913
#8309 TUI: add support for mouse release events in urxvt
8d5a46e77b
#8081 TUI: implement "standout" attribute
60716371e9
TUI: support TERM=konsole-256color
67848c0b91
#7653 TUI: report TUI info with -V3 ('verbose' >= 3)
3d0ee17c91
TUI/rxvt: enable focus-reporting
d109f5645b
#7640 TUI: 'term' option: reflect effective terminal behavior
FIXES:
ed6a113804
#8273 'job-control: avoid kill-timer race'
4e02f1ab87
#8107 'jobs: separate process-group'
451c48a092
terminal: flush vterm output buffer on pty output #8486
5d6732ff09
:checkhealth fixes #8335
53f11dcfc7
#8218 'Fix errors reported by PVS'
d05712fbe7
inccommand: pause :terminal redraws (#8307 )
51af911a27
inccommand: do not execute trailing commands #8256
84359a467f
terminal: resize to the max dimensions (#8249 )
d49c1dda8b
#8228 Make vim_fgets() return the same values as in Vim
60e96a45b4
screen: winhl=Normal:Background should not override syntax (#8093 )
0c59ac1a2c
#5908 'shada: Also save numbered marks'
ba87a2cde7
cscope: ignore EINTR while reading the prompt (#8079 )
b1412dc412
#7971 ':terminal Enter/Leave should not increment jumplist'
3a5721e91b
TUI: libtermkey: force CSI driver for mouse input #7948
6ff13d78b7
#7720 TUI: faster startup
1c6e956079
#7862 TUI: fix resize-related segfaults
a58c9094db
#7676 TUI: always hide cursor when flushing, never flush buffers during unibilium output
303e1df13f
#7624 TUI: disable BCE almost always
249bdb07dd
#7761 mark: Make sure that jumplist item will not have zero lnum
6f41ce0260
#7704 macOS: Set $LANG based on the system locale
a043899ba2
#7633 'Retry fgets on EINTR'
CHANGES:
ad60927d09
#8304 default to 'nofsync'
f3f1970597
#8035 defaults: 'fillchars'
a6052c7307
#7984 defaults: sidescroll=1
b69fa866db
#7888 defaults: enable cscopeverbose
7c4bb23ff3
defaults: do :filetype stuff unless explicitly "off"
2aa308c685
#5658 'Apply :lmap in macros'
8ce6393048
terminal: Leave 'relativenumber' alone (#8360 )
e46534b423
#4486 refactor: Remove maxmem, maxmemtot options
131aad953c
win: defaults: 'shellcmdflag', 'shellxquote' #7343
c57d315963
#8031 jobwait(): return -2 on interrupt also with timeout
6452831cf9
clipboard: macOS: fallback to tmux if pbcopy is broken #7940
300d3651e2
#7919 Make 'langnoremap' apply directly after a map
ada1956206
#7880 'lua/executor: Remove lightuserdata'
INTERNAL:
de0a9548f7
#7806 internal statistics for list impl
dee78a4095
#7708 rewrite internal list impl
2018-06-11 00:46:49 +02:00
Justin M. Keyes
fe5675ba0a
Merge #8523 from justinmk/doc
2018-06-11 00:36:57 +02:00
Justin M. Keyes
feaefdfba2
doc: API
2018-06-11 00:20:39 +02:00
Justin M. Keyes
51961da511
doc/man: mention $NVIM_LOG_FILE
...
closes #8043
2018-06-11 00:16:15 +02:00