Commit Graph

17990 Commits

Author SHA1 Message Date
zeertzjq
30f606fc60 fix(options): restore exists() behavior for options (#21510)
Duplicating get_option_value() logic for an obscure future refactor
isn't really worthwhile, and findoption() isn't used anywhere else
outside the options code.
2022-12-23 13:56:32 +08:00
zeertzjq
f9c62ce342 vim-patch:8.2.5142: startup test fails if there is a status bar (#21496)
Problem:    Startup test fails if there is a status bar at the top of the
            screen. (Ernie Rael)
Solution:   Use a larger vertical offset in the test.

fa04eae5a5

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-22 11:14:04 +08:00
zeertzjq
f384896837 fix(decoration): do not reset must_redraw after calling providers (#21459)
Resetting must_redraw caused a strange bug #21278, so don't do it.
Remove the goto as well, as it doesn't make much sense after #20665.
2022-12-21 23:40:21 +08:00
dundargoc
ec1738a6ed refactor: replace char_u with char 16 - remove STRNCMP (#21208)
refactor: replace char_u with char

Work on https://github.com/neovim/neovim/issues/459
2022-12-21 19:00:05 +08:00
zeertzjq
c24605a5a0 refactor(win_line): rename attr to vi_attr (#21487)
Vim renamed it in patch 8.1.1391.
2022-12-21 15:58:59 +08:00
bfredl
a6747545be Merge pull request #21441 from bfredl/neoterminfo
refactor(tui): use nvim_echo() for verbose terminfo
2022-12-20 22:20:17 +01:00
bfredl
b42d8a43b9 refactor(tui): use nvim_echo() for verbose terminfo
This is needed for #18375 for the obvious reasons.
note: verbose_terminfo_event is only temporarily needed
until the full TUI process refactor is merged.
2022-12-20 21:43:42 +01:00
kylo252
45d1b1c678 vim-patch:9.0.1082: some jsonc files are not recognized (#21483)
Problem:    Some jsonc files are not recognized.
Solution:   Add patterns for jsonc and move some from json to jsonc.
            (closes vim/vim#11711)

104b2ff4d0

Co-authored-by: kylo252 <59826753+kylo252@users.noreply.github.com>
2022-12-20 18:04:47 +01:00
zeertzjq
f04087d8ba vim-patch:8.2.2912: MS-Windows: most users expect using Unicode (#21482)
Problem:    MS-Windows: most users expect using Unicode.
Solution:   Default 'encoding' to utf-8 on MS-Windows. (Ken Takata,
            closes vim/vim#3907)

f883d9027c

Correct the encoding of the file.

Co-authored-by: K.Takata <kentkt@csc.jp>
2022-12-20 17:15:37 +08:00
zeertzjq
de90a8bfe5 test(old): make test_signs.vim closer to upstream (#21479) 2022-12-20 11:03:38 +08:00
zeertzjq
ff62d76193 vim-patch:9.0.1079: leaking memory when defining a user command fails
Problem:    Leaking memory when defining a user command fails.
Solution:   Free "compl_arg" when needed. (closes vim/vim#11726)

33e543038b
2022-12-20 05:26:52 +08:00
zeertzjq
b201cbfc61 vim-patch:9.0.1078: with the +vartabs feature indent folding may use wrong 'ts'
Problem:    With the +vartabs feature indent folding may use wrong 'tabstop'.
Solution:   Use the "buf" argument instead of "curbuf".

07146ad1d3
2022-12-20 05:26:49 +08:00
Munif Tanjim
23d8f5b870 feat(exrc): support .nvim.lua (#21436) 2022-12-19 09:33:47 -07:00
Tom Churchman
a7332ba9b4 fix(tui): set cursor color param as string when required #21407
Problem:
See #20628. Terminals supporting cursor color changing usually set the
"user-defined" `Cs` terminfo capability. Most terminals expect the parameter to
the capability to be a string (in hex format like `#0099ff` or like
`rgb:00/99/ff`), others may expect a number.

Nvim currently can't handle string parameters, causing terminals to receive
a bogus command.

Unfortunately, as the `Cs` capability is "user-defined", there's no strict
format. The parameter it takes isn't really standardized. It seems most
terminals in use follow xterm; iTerm appears to be an exception.

Solution:
Use the `Cs` capability more reliable by following terminfo and
sending the color in hex format, at the cost of using unibilium string vars.
Alternatively, could revert 34d41baf8a
and hardcode the specific format required by terminals, instead of reading
terminfo.

Fixes #20628
Fixes #19607
2022-12-18 15:10:47 -08:00
zeertzjq
6b3ae24a70 vim-patch:9.0.1072: screenpos() column result in fold may be too small (#21465)
Problem:    screenpos() column result in fold may be too small.
Solution:   Add space of 'number', sign column, etc. (closes vim/vim#11715)

ba2d191932
2022-12-18 21:26:17 +08:00
Christian Clason
1c4794944d Merge pull request #21393 from folke/highlight_show
feat(lsp): add function to get semantic tokens at cursor
feat: `vim.inspect_pos()`, `vim.show_pos()` and `:Inspect[!]`
2022-12-17 13:43:46 +01:00
Folke Lemaitre
ef91146efc feat: vim.inspect_pos, vim.show_pos, :Inspect 2022-12-17 13:05:31 +01:00
zeertzjq
b969844398 vim-patch:8.2.1210: using ht_used when looping through a hashtab is less reliable
Problem:    Using ht_used when looping through a hashtab is less reliable.
Solution:   Use ht_changed in a few more places.

1f22cc5cdb

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-17 08:58:50 +08:00
zeertzjq
73a6000120 vim-patch:8.2.1209: Vim9: test failure
Problem:    Vim9: test failure.
Solution:   Add missing changes to hashtab.

21c16f868d

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-17 08:58:50 +08:00
zeertzjq
d302c0e35e vim-patch:8.2.1208: build failure
Problem:    Build failure.
Solution:   Add missing change.

49fe0d6b28

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-17 08:58:50 +08:00
zeertzjq
4d860a5370 fix(folds): use long for number of folded lines (#21447)
Also remove some duplicate unsigned long casts.
2022-12-17 08:11:35 +08:00
Justin M. Keyes
a5207304dd refactor: rename mch_get_acl => os_get_acl 2022-12-16 17:40:06 +01:00
Justin M. Keyes
614d382621 refactor: rename mch_msg => os_msg 2022-12-16 17:33:52 +01:00
bfredl
b55ccb4324 Merge pull request #21440 from bfredl/scriptparm
refactor(params): open -s and -w script files after parsing commands
2022-12-16 12:53:41 +01:00
Lewis Russell
4ca3519a7a refactor(option.c): reduce scope of locals (#21433)
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2022-12-16 11:24:44 +00:00
bfredl
b6dda012ea refactor(params): open -s and -w script files after parsing commands
This will be needed for #18375 as only the server should open the.
scriptfile, and redirected stdin fd will need to be used.

Also executing actions in the middle of command_line_scan() is cringe.
2022-12-16 11:43:41 +01:00
zeertzjq
72a19b2ffe fix(api): "emsg_silent" should imply "silent" in nvim_cmd (#21438) 2022-12-16 08:54:13 +08:00
zeertzjq
a2bf0cef10 vim-patch:9.0.1062: some test function names do not match what they are doing (#21429)
Problem:    Some test function names do not match what they are doing.
Solution:   Leave out user data for the test that is called "NoUserData".
            (closes vim/vim#11703)

4cd45f1408

Nvim's tests already match function names. Add missing indent changes
and a missing comment from patch 8.2.0084.
2022-12-16 06:08:59 +08:00
Christian Clason
4a78ed60a3 vim-patch:9.0.1057: conflict between supercollider and scala filetype detection (#21417)
Problem:    Conflict between supercollider and scala filetype detection.
Solution:   Do not check for "Class : Method", it can appear in both
            filetypes. (Chris Kipp, closes vim/vim#11699)

70ef3f546b

Co-authored-by: Chris Kipp <ckipp@pm.me>
2022-12-14 19:46:17 +01:00
zeertzjq
6631df9107 fix(terminal): fix 'mousescroll' not respected in terminal mode (#21415) 2022-12-14 23:45:31 +08:00
Lewis Russell
d127c684fa fix(treesitter): properly restore 'syntax' (#21358) 2022-12-14 15:00:48 +00:00
zeertzjq
090048bec9 vim-patch:9.0.1051: after a failed CTRL-W ] next command splits window (#21400)
Problem:    After a failed CTRL-W ] next command splits window.
Solution:   Reset postponed_split. (Rob Pilling, closes vim/vim#11698)

cb94c91070

Co-authored-by: Rob Pilling <robpilling@gmail.com>
2022-12-13 22:43:54 +08:00
zeertzjq
a6b05cb75d vim-patch:9.0.0530: using freed memory when autocmd changes mark (#21396)
Problem:    Using freed memory when autocmd changes mark.
Solution:   Copy the mark before editing another buffer.

8ecfa2c56b

Nvim already copies the mark.

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-13 10:47:39 +08:00
Lewis Russell
d40d34aaa5 fix(diff): handle long lines without crashing (#21389)
Fixes https://github.com/neovim/neovim/issues/21388
2022-12-12 16:44:11 +00:00
ii14
49c240d3a2 docs: add links to extmarks and namespaces (#21378)
Co-authored-by: ii14 <ii14@users.noreply.github.com>
2022-12-12 15:15:31 +00:00
Justin M. Keyes
1c324cb192 docs #20986
- https://github.com/neovim/tree-sitter-vimdoc v1.2.4 eliminates most
  errors in pi_netrw.txt, so we can remove that workaround from
  ignore_parse_error().
- improved codeblock
2022-12-11 18:41:26 -08:00
dundargoc
b12bb97fee docs: fix typos (#21328) 2022-12-12 08:53:07 +08:00
zeertzjq
407eef4738 vim-patch:9.0.1047: matchparen is slow (#21379)
Problem:    Matchparen is slow.
Solution:   Actually use the position where the match started, not the
            position where the search started. (closes vim/vim#11644)

79336e19cb

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-11 23:02:41 +08:00
zeertzjq
3dadd3aca5 vim-patch:8.2.2870: CmdlineChange event triggered twice for CTRL-R (#21361)
Problem:    CmdlineChange event triggered twice for CTRL-R.
Solution:   Return CMDLINE_NOT_CHANGED from cmdline_insert_reg().
            (closes vim/vim#8219)

796139ae3a

Cherry-pick Test_cmdline_map_cmdlineChanged() from patch 8.2.2851.

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-11 08:48:00 +08:00
zeertzjq
224473546c fix(api): set correct curbuf when temporarily changing curwin (#21371)
This is the same code change as 6c87bbb4e4
2022-12-10 20:13:40 +08:00
zeertzjq
7faf8a45e8 fix(events): skip WinScrolled for newly-created float windows (#21333)
Unlike split windows, creating a new floating window does not cause
other windows to resize, so it doesn't make much sense to trigger
WinScrolled or WinResized when creating a new floating window.
2022-12-10 06:50:03 +08:00
zeertzjq
3cf0131c5c vim-patch:9.0.1038: function name does not match what it is used for (#21359)
Problem:    Function name does not match what it is used for.
Solution:   Include the modifier in the name. (closes vim/vim#11679)

ffa4e9b43a
2022-12-09 20:09:03 +08:00
zeertzjq
b5edea6553 vim-patch:9.0.0238: Shift-Tab shows matches on cmdline when 'wildmenu' is off (#21355)
Problem:    Shift-Tab shows matches on cmdline when 'wildmenu' is off.
Solution:   Only show matches when 'wildmode' contains "list". (closes vim/vim#10951)

300175fd7f

Code change has already been ported.

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-09 11:31:02 +08:00
zeertzjq
0483ee8254 vim-patch:8.2.4387: command line completion doesn't always work properly (#21352)
Problem:    Command line completion doesn't always work properly.
Solution:   Adjust triggering after a "|".  Add more tests. (Yegappan
            Lakshmanan, closes vim/vim#9779)

e3846cf1eb

Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2022-12-09 09:45:45 +08:00
zeertzjq
98dc445767 vim-patch:8.2.4376: not enough tests for command line completion
Problem:    Not enough tests for command line completion.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes vim/vim#9771)

9773db6f9b

Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2022-12-09 07:52:50 +08:00
zeertzjq
41282259ba vim-patch:8.2.4366: not enough tests for command line completion
Problem:    Not enough tests for command line completion.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes vim/vim#9760)

4d03d87000

Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2022-12-09 07:52:50 +08:00
zeertzjq
8b3412636a test(old): change $TMPDIR from Xtest-tmpdir to X-test-tmpdir (#21346)
I've noticed a patch 8.2.4376 that uses more Xtest directories.
Change $TMPDIR to X-test-tmpdir to avoid more future divergence.
2022-12-09 07:51:37 +08:00
zeertzjq
70d6c335b1 vim-patch:9.0.1036: undo misbehaves when writing from an insert mode mapping
Problem:    Undo misbehaves when writing from an insert mode mapping.
Solution:   Sync undo when writing. (closes vim/vim#11674)

3f8f827723

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-09 06:55:15 +08:00
Enan Ajmain
1e2cc68889 fix(chansend): sending lines to terminal in reverse order on Windows #19315
Problem: `chansend()` on Windows sends lines in reverse order.
Cause: Using \n instead of \r\n for newlines on Windows.
Solution: on Windows, use CRLF newline characters.

Fixes #18501
2022-12-08 12:55:50 -08:00
zeertzjq
95c655fedc vim-patch:9.0.1032: test fails when terminal feature is missing
Problem:    Test fails when terminal feature is missing.
Solution:   Use CheckRunVimInTerminal.

b9603f6498

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-09 02:16:57 +08:00