Commit Graph

12852 Commits

Author SHA1 Message Date
Björn Linse
a76a669ac2 lua: make vim.wo and vim.bo used nested indexing for specified handle
Also missing option should be an error. Options are functionality,
not arbitrary variable names (as for vim.g)
2019-11-26 18:44:36 +01:00
Björn Linse
3cffd17b2b cmake: enable exporting symbols from static libs again
Reverts the effect of disabling CMP0065 in ac32426 (#11131)
"build: get rid of warnings with `cmake --debug-output`"

We need symbols from statically linked libraries to be exported.
Otherwise cpath lua modules will not find liblua/libluajit
symbols as needed.
2019-11-26 17:34:00 +01:00
Justin M. Keyes
36d1335a66 UI: emit mouse_on/mouse_off on attach #11455
closes #11372
2019-11-25 08:56:42 -08:00
notomo
4a77df2e51 [RFC] extmark: fix E315 in nvim_buf_set_extmark (#11449)
extmark: need to use buf instead of curbuf
2019-11-25 16:50:30 +01:00
Justin M. Keyes
fd5710ae9a doc + extmarks tweaks #11421
- nvim_buf_get_extmarks: rename "amount" => "limit"
- rename `set_extmark_index_from_obj`
2019-11-25 01:08:02 -08:00
Jan Edmund Lazo
0ee4df4d96 vim-patch:8.1.0836: user completion test can fail on MS-Windows
Problem:    User completion test can fail on MS-Windows.
Solution:   Allow for other names befor "Administrator".
346d2a359a
2019-11-25 03:29:49 -05:00
Jan Edmund Lazo
226ad89a2c vim-patch:8.1.0223: completing shell command finds sub-directories in $PATH
Problem:    Completing shell command finds sub-directories in $PATH.
Solution:   Remove EW_DIR when completing an item in $PATH. (Jason Franklin)
6ab9e429da
2019-11-25 03:29:49 -05:00
Jan Edmund Lazo
7a0a2eb310 vim-patch:8.1.1732: completion in cmdwin does not work for buffer-local commands
Problem:    Completion in cmdwin does not work for buffer-local commands.
Solution:   Use the right buffer. (closes vim/vim#4711)
f03e328348
2019-11-24 23:37:10 -05:00
Ashkan Kiani
edb194f330 Improve terminal close error message formatting (#11434) 2019-11-24 20:18:40 -08:00
Jan Edmund Lazo
8819b5c06e vim-patch:8.1.0461: quickfix: change comment style #11453
Problem:    Quickfix code uses too many /* */ comments.
Solution:   Change to // comments. (Yegappan Lakshmanan)
00bf8cd211
2019-11-24 20:10:25 -08:00
Ashkan Kiani
d0d38fc36e Lua: vim.env, vim.{g,v,w,bo,wo} #11442
- Add vim variable meta accessors: vim.env, vim.{g,v,w,bo,wo}
- Redo gen_char_blob to generate multiple blobs instead of just one
  so that multiple Lua modules can be inlined.
- Reorder vim.lua inclusion so that it can use previously defined C
  functions and utility functions like vim.shared and vim.inspect things.
- Inline shared.lua into nvim, but also keep it available in runtime.
2019-11-24 02:28:48 -08:00
Jan Edmund Lazo
222637c341 vim-patch:8.1.1334: respect shortmess=F when buffer is hidden #11443
Problem:    When buffer is hidden "F" in 'shortmess' is not used.
Solution:   Check the "F" flag in 'shortmess' when the buffer is already
            loaded. (Jason Franklin)  Add test_getvalue() to be able to test
            this.
eda652215a

test_getvalue() is not implemented.
It is only used for checking "need_fileinfo" internal variable.
2019-11-23 21:56:58 -08:00
Justin M. Keyes
2aa7b10114 Merge #11431 from janlazo/vim-8.1.1235
vim-patch:8.1.{471,723,1235,1490,1951,2183,2269,2329,2330}
2019-11-23 18:57:24 -08:00
Jan Edmund Lazo
4c532f5469 vim-patch:8.1.0471: some tests are flaky or fail on some systems
Problem:    Some tests are flaky or fail on some systems.
Solution:   Increase waiting time for port number. Use "cmd /c" to execute
            "echo" on win32. (Ken Takata, closes vim/vim#3534)
453ce7c16b
2019-11-23 15:44:41 -05:00
Björn Linse
2cc83c961c refactor: use inserted_bytes pattern from vim
This covers all "small" inserts and deletes in insert mode, as well
as a few more cases like small normal mode deletes

vim-patch:8.1.0678: text properties as not adjusted for inserted text
2019-11-23 16:46:47 +01:00
Björn Linse
bdebe8516c bufhl: use extmark column adjustment for bufhl
NB: this is not the final implementation. Bufhl should be made a
part of the extmark tree, so that "start" adjustment just works
automatically. But "stop" will still need some ad-hoc trickery,
until extended marks natively support ranges (hopefully sooner than
forever).
2019-11-23 14:50:31 +01:00
Jan Edmund Lazo
7639ccdd0d vim-patch:8.1.1951: mouse double click test is a bit flaky
Problem:    Mouse double click test is a bit flaky.
Solution:   Add to list of flaky tests.  Update a couple of comments.
f1699968ba
2019-11-22 23:43:01 -05:00
Jan Edmund Lazo
cb107d28a0 vim-patch:8.1.2330: vi' does not always work when 'selection' is exclusive
Problem:    vi' does not always work when 'selection' is exclusive.
Solution:   Adjust start position.
94d9f4fa65
2019-11-22 20:10:12 -05:00
Jan Edmund Lazo
3d7d52ee8b vim-patch:8.1.2329: mouse multiple click test is a bit flaky
Problem:    Mouse multiple click test is a bit flaky.
Solution:   Add it to the list of flaky tests.
44f0bd878a
2019-11-22 20:10:12 -05:00
Jan Edmund Lazo
273ab19452 vim-patch:8.1.2183: running a test is a bit verbose
Problem:    Running a test is a bit verbose.
Solution:   Silence some messages. (Daniel Hahler, closes vim/vim#5070)
ba089307bb
2019-11-22 20:10:12 -05:00
Jan Edmund Lazo
a6714cf35c vim-patch:8.1.1490: when a single test fails the exit code is not set
Problem:    When a single test fails the exit code is not set. (Daniel Hahler)
Solution:   Add an exit command. (closes vim/vim#4506)
4e0bf84627
2019-11-22 20:10:12 -05:00
Jan Edmund Lazo
8969efca8c vim-patch:8.1.0723: cannot easily run specific test when in src/testdir
Problem:    Cannot run specific test when in src/testdir the same was as in
            the src directory.
Solution:   Move build rule to src/testdir/Makefile.
ec50401e1e

Developer can omit '.res' suffix now.
TEST_FILE=test_syntax make oldtest
or
make -C src/nvim/testdir test_syntax
2019-11-22 20:10:12 -05:00
Jan Edmund Lazo
970329ff8d vim-patch:8.1.2269: tags file with very long line stops using binary search
Problem:    Tags file with very long line stops using binary search.
Solution:   Reallocate the buffer if needed.
dc9ef26845
2019-11-22 20:10:11 -05:00
Jan Edmund Lazo
0f29deec80 vim-patch:8.1.1235: compiler warnings for using STRLEN() value
Problem:    Compiler warnings for using STRLEN() value.
Solution:   Cast to int. (Christian Brabandt, Mike Williams)
c0af78fa08
2019-11-22 20:10:11 -05:00
Dennis B
d5f14b8372 Clear 'cc' in nvim_open_win 'minimal' style #11361 (#11427)
* Clear 'cc' in nvim_open_win 'minimal' style #11361

Add 'colorcolumn' to the list of options that should be cleared when creating
a 'minimal'-style floating window.
2019-11-22 10:55:04 +01:00
Chuck
b5f99a8d73 Fix terminal close error message formatting 2019-11-21 14:56:36 -08:00
Jan Edmund Lazo
756e2b5f65 vim-patch:8.0.1793: no test for "vim -g"
Problem:    No test for "vim -g".
Solution:   Add a test for "-g" and "-y".
248be5c5de
2019-11-19 21:36:28 -05:00
Jan Edmund Lazo
025399aedb vim-patch:8.0.1449: slow redrawing with DirectX
Problem:    Slow redrawing with DirectX.
Solution:   Avoid calling gui_mch_flush() unnecessarily, especially when
            updating the cursor. (Ken Takata, closes vim/vim#2560)
a338adcf22
2019-11-19 20:33:09 -05:00
Joe Hermaszewski
1ff5b60cb9 vim-patch:8.1.0251: support full paths for 'backupdir' #11269
Problem:    Using a full path is supported for 'directory' but not for
            'backupdir'. (Mikolaj Machowski)
Solution:   Support 'backupdir' as well. (Christian Brabandt, closes vim/vim#179)
b782ba475a
2019-11-17 23:38:27 -08:00
Marvim the Paranoid Android
b1c4a8191e version.c: update [ci skip] #11160
vim-patch:8.0.1405: duplicated code for getting a typed character

vim-patch:8.1.0828: still using FEAT_VIRTUALEDIT
vim-patch:8.1.1971: manually enabling features causes build errors
vim-patch:8.1.2000: plugin cannot get the current IME status
vim-patch:8.1.2119: memory access error for empty string
vim-patch:8.1.2122: cannot build without terminal feature
vim-patch:8.1.2123: parsing CSI sequence is messy
vim-patch:8.1.2128: renamed libvterm sources makes merging difficult
vim-patch:8.1.2130: MSVC build fails
vim-patch:8.1.2132: MS-Windows: screen mess when not recognizing insider build
vim-patch:8.1.2138: including the build number in the Win32 binary is confusing
vim-patch:8.1.2144: side effects when using t_ti to enable modifyOtherKeys
vim-patch:8.1.2157: libvterm source files missing from distribution
vim-patch:8.1.2160: cannot build with +syntax but without +terminal
vim-patch:8.1.2163: cannot build with +spell but without +syntax
vim-patch:8.1.2170: cannot build without the +termresponse feature
vim-patch:8.1.2179: pressing "q" at the more prompt doesn't stop Python output
vim-patch:8.1.2186: error for bad regexp even though regexp is not used
vim-patch:8.1.2196: MS-Windows: running tests with MSVC lacks updates
vim-patch:8.1.2199: build failure when using normal features without GUI
vim-patch:8.1.2201: cannot build with dynamically linked Python 3.8
vim-patch:8.1.2202: MS-Windows: build failure with GUI and small features
vim-patch:8.1.2203: running libvterm tests without the +terminal feature
vim-patch:8.1.2204: crash on exit when closing terminals
vim-patch:8.1.2209: LF in escape codes may be expanded to CR-LF
vim-patch:8.1.2217: compiler warning for unused variable
vim-patch:8.1.2224: cannot build Amiga version
vim-patch:8.1.2237: mode() result depends on whether CURSOR_SHAPE is defined
vim-patch:8.1.2248: CTRL-W dot does not work when modifyOtherKeys is enabled
vim-patch:8.1.2254: MS-Windows: mouse scroll wheel doesn't work in popup
vim-patch:8.1.2255: ":term ++shell" does not work on MS-Windows
vim-patch:8.1.2256: test for ":term ++shell" fails on MS-Windows
vim-patch:8.1.2260: terminal test may fail on MS-Windows
vim-patch:8.1.2271: build error if FEAT_TAG_BINS is not defined
vim-patch:8.1.2284: compiler warning for unused variable
vim-patch:8.1.2291: memory leak when executing command in a terminal
vim-patch:8.1.2301: MS-Windows GUI: drawing error when background color changes
vim-patch:8.1.2311: warning for missing function prototype
vim-patch:8.1.2316: FORTIFY_SOURCE can also be present in CPPFLAGS
vim-patch:8.1.2318: MS-Windows GUI: main background shows in toolbar

https://github.com/neovim/neovim/pull/11215
vim-patch:8.1.0084: user name completion does not work on MS-Windows
vim-patch:8.1.0085: no test for completing user name and language
vim-patch:8.1.0361: remote user not used for completion
2019-11-17 19:19:52 -08:00
Justin M. Keyes
d547c8d9ad Merge #11414 from janlazo/vim-8.1.2312
vim-patch:8.1.{2312,2314,2317}
2019-11-17 19:18:40 -08:00
Justin M. Keyes
af53a0c012 doc: Lua [ci skip] #11378
- Rework :help lua-commands
- Rename if_lua.txt => lua.txt
2019-11-17 19:06:59 -08:00
Jan Edmund Lazo
6ca3e6bfa9 vim-patch:8.1.2317: no test for spell affix file with flag on suffix
Problem:    No test for spell affix file with flag on suffix.
Solution:   Add a test case.
37ff4cf870
2019-11-17 21:55:56 -05:00
Jan Edmund Lazo
f484d3b2d4 vim-patch:8.1.2314: vi' sometimes does not select anything
Problem:    vi' sometimes does not select anything.
Solution:   Recognize an empty selection. (Christian Brabandt, closes vim/vim#5183)
7170b295b0
2019-11-17 21:51:19 -05:00
Jan Edmund Lazo
e4b185893f vim-patch:8.1.2312: "line:" field in tags file not used
Problem:    "line:" field in tags file not used.
Solution:   Recognize the field and use the value. (Andy Massimino, Daniel
            Hahler, closes vim/vim#5232, closes vim/vim#2546, closes vim/vim#1057)
077b9dd354
2019-11-17 21:37:52 -05:00
Justin M. Keyes
54402d6b8f Merge #11340 'Factor out parse_one_cmd()'
This will allow us to reuse the parsing logic elsewhere, namely for
'inccommand' logic, so we don't need to duplicate it for changes such as the
repeated colon fix in #11319.
2019-11-17 15:53:30 -08:00
erw7
91f4bb0aee TUI: use stdio names instead of magic numbers #11410 2019-11-17 12:58:58 -08:00
Jan Edmund Lazo
3056ff4b8c vim-patch:8.1.2305: no warning for wrong entry in translations
Problem:    No warning for wrong entry in translations.
Solution:   Check semicolons in keywords entry of desktop file.
e53ec39270
2019-11-16 16:41:29 -05:00
Jan Edmund Lazo
b83027858a vim-patch:8.1.2289: after :diffsplit closing the window does not disable diff
Problem:    After :diffsplit closing the window does not disable diff.
Solution:   Add "closeoff" to 'diffopt' and add it to the default.
c823477979
2019-11-16 16:40:25 -05:00
Jan Edmund Lazo
da7bb53d99 diff: move diff globals to diff.h 2019-11-16 16:40:25 -05:00
Jan Edmund Lazo
7274f5c177 vim-patch:8.1.1922: in diff mode global operations can be very slow
Problem:    In diff mode global operations can be very slow.
Solution:   Do not call diff_redraw() many times, call it once when redrawing.
            And also don't update folds multiple times.
4f57eefe1e
2019-11-16 16:40:24 -05:00
Björn Linse
dab40f43b1 Add v:lua.func() vimL syntax for calling lua
Also simplify error messages when calling lua from vimL.
2019-11-16 22:33:21 +01:00
Björn Linse
18096631b1 Merge pull request #11399 from bfredl/markundo
extmark: do not crash in read-only buffer
2019-11-16 12:01:53 +01:00
Björn Linse
ebdf90e7d7 extmark: don't crash in RO buffer. 2019-11-16 11:58:32 +01:00
Björn Linse
6222cca36a undo: delete undo_off global without effect 2019-11-16 11:03:43 +01:00
Jan Edmund Lazo
d79164c9f9 vim-patch:8.1.0992: :normal resets reg_executing() result #11398
Problem:    A :normal command while executing a register resets the
            reg_executing() result.
Solution:   Save and restore reg_executing. (closes vim/vim#4066)
cce713ddcc
2019-11-16 00:34:25 -08:00
Justin M. Keyes
e3b08a0fc4 Merge #11384 from janlazo/vim-8.1.2293
vim-patch:8.1.{927,2293}
2019-11-14 00:02:29 -08:00
James McCoy
570ee5f404 f_getenv/setenv: Access v_special when v_type is VAR_SPECIAL #11388
Multiple Debian builds were failing these tests:

    Failures:
    	From test_environ.vim:
    	Found errors in Test_external_env():
    	function RunTheTest[37]..Test_external_env line 16: Expected '' but got 'FOO=null\n'
    	Found errors in Test_getenv():
    	function RunTheTest[37]..Test_getenv line 2: Expected v:null but got v:false
    	Found errors in Test_setenv():
    	function RunTheTest[37]..Test_setenv line 5: Expected v:null but got 'null'

This is because nvim has a separate tag (`v_special`) in `typval_T` for
special variables, whereas vim re-uses the `v_number` tag.

On little-endian architectures, using the incorrect tag is not an issue
because the byte representation is the same.  However, on big-endian
systems this caused the `v_number == kSpecialVarNull` checks to fail,
and the non-special code to execute.
2019-11-13 21:34:10 -08:00
Jan Edmund Lazo
a0c18bf201 spell: fix clang logic error
https://neovim.io/doc/reports/clang/report-487b01.html#EndPath
https://neovim.io/doc/reports/clang/report-ce4c3c.html#EndPath
2019-11-13 19:25:40 -05:00
Jan Edmund Lazo
c2ceed4994 quickfix: fix dead assignment
Cherry-picked from vim patch 8.1.1489.
2019-11-13 19:25:40 -05:00