Famiu Haque
fb8fa004d8
fix: make nvim_cmd
not suppress errors inside key mapping
...
Closes #18632
2022-05-19 22:23:14 +06:00
Gregory Anders
8a9ab88945
feat(api): enable nvim_exec_autocmds to pass arbitrary data ( #18613 )
...
Add a "data" key to nvim_exec_autocmds that passes arbitrary data (API
objects) to autocommand callbacks.
2022-05-18 09:51:26 -06:00
bfredl
d7dd600716
Merge pull request #18562 from famiu/feat/ui/winbar
...
feat(ui): add `'winbar'`
2022-05-18 13:08:07 +02:00
zeertzjq
6e414b698c
test: unskip tests on Windows ( #18600 )
...
Remove the command('qall!') from mksession_spec.lua because it prevents
helpers.rmdir() from retrying.
Allow extra trailing spaces when matching terminal lines.
2022-05-18 12:57:04 +08:00
Famiu Haque
e1bdb2a258
feat(ui): add 'winbar'
...
Adds support for a bar at the top of each window, enabled through the
`'winbar'` option.
Co-authored-by: Björn Linse <bjorn.linse@gmail.com >
2022-05-18 09:27:08 +06:00
Lewis Russell
6219331c4d
feat(api): add win and buf to nvim_set_option_value
...
Co-authored-by: Gregory Anders <8965202+gpanders@users.noreply.github.com >
2022-05-17 14:48:10 +01:00
zeertzjq
f49699737c
fix(terminal): do not trim whitespace that is actually in the terminal ( #16423 )
2022-05-17 21:09:28 +08:00
deforde
0a3d615b1c
fix(api): nvim_eval_statusline should validate input #18347
...
Fix #18112
Make an exception for strings starting with "%!".
2022-05-15 13:06:23 -07:00
Famiu Haque
bbf58e6bbc
refactor(ui)!: link VertSplit
to Normal
by default
...
Avoids using `gui=reverse` on `VertSplit` and makes window separators
look much nicer by default.
2022-05-15 22:37:35 +06:00
Famiu Haque
cf68f0a512
fix(api): make nvim_cmd
work correctly with empty arguments list ( #18527 )
...
Closes #18526 .
2022-05-11 10:51:53 -06:00
Famiu Haque
dfcc584665
feat(api): add nvim_cmd
...
Adds the API function `nvim_cmd` which allows executing an Ex-command through a Dictionary which can have the same values as the return value of `nvim_parse_cmd()`. This makes it much easier to do things like passing arguments with a space to commands that otherwise may not allow it, or to make commands interpret certain characters literally when they otherwise would not.
2022-05-11 13:12:16 +06:00
Famiu Haque
14f3383c0d
fix(api): make nvim_parse_cmd
work correctly with both range and count
...
It seems range and count can be used together in commands. This PR fixes
the behavior of `nvim_parse_cmd` for those cases by removing the mutual
exclusivity of "range" and "count". It also removes range line number
validation for `nvim_parse_cmd` as it's not its job to validate the
command.
2022-05-07 12:26:49 +06:00
bfredl
e3edcd06e3
Merge pull request #18438 from famiu/feat/api/nvim_parse_cmd
...
fix(api): make `nvim_parse_cmd` propagate errors
2022-05-06 10:30:48 +02:00
bfredl
d14d308ce8
Merge pull request #18431 from famiu/feat/api/nvim_get_autocmds/group_name
...
feat(api): add `group_name` to `nvim_get_autocmds`
2022-05-05 20:17:11 +02:00
Famiu Haque
96289f2416
feat(api): add group_name
to nvim_get_autocmds
2022-05-05 23:17:36 +06:00
Famiu Haque
511f06a56e
fix(api): make nvim_parse_cmd
propagate errors
...
Makes `nvim_parse_cmd` propagate any errors that occur while parsing to
give the user a better idea of what's wrong with the command.
2022-05-05 23:11:57 +06:00
Famiu Haque
7aedcd8feb
refactor(api): make range
in nvim_parse_cmd
an array
...
Changes the `range` value in `nvim_parse_cmd` into an array to describe
range information more concisely. Also makes `range` and `count` be
mutually exclusive by making count `-1` when command takes a range
instead of a count. Additionally corrects the behavior of `count` for
built-in commands by making the default count `0`.
2022-05-05 20:35:14 +06:00
bfredl
e6c71574a0
Merge pull request #18386 from ii14/version_dict_prerelease
...
feat: add "prerelease" to version dict
2022-05-04 18:49:05 +02:00
Famiu Haque
3ec93ca92c
feat(nvim_parse_cmd): add range, count, reg #18383
...
Adds range, count and reg to the return values of nvim_parse_cmd. Also makes
line1 and line2 be -1 if the command does not take a range. Also moves
nvim_parse_cmd to vimscript.c because it fits better there.
2022-05-04 05:04:01 -07:00
Yatao Li
29a6cda3ff
feat(api/ui): win_extmarks
2022-05-03 22:26:02 +08:00
ii14
b2c92f36e1
feat: add "prerelease" to version dict
2022-05-03 11:33:55 +02:00
Famiu Haque
8dbb11ebf6
feat(api): add nvim_parse_cmdline
...
Adds an API function to parse a command line string and get command information from it.
2022-04-30 21:04:51 +06:00
zeertzjq
c8e45366b9
fix(mappings): fix double-free when unmapping simplifiable Lua mapping
2022-04-29 17:39:24 +08:00
zeertzjq
dde4f09f51
vim-patch:8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
...
Problem: Cannot map <C-H> when modifyOtherKeys is enabled.
Solution: Add the <C-H> mapping twice, both with modifier and as 0x08. Use
only the first one when modifyOtherKeys has been detected.
459fd785e4
Add REPTERM_NO_SPECIAL instead of REPTERM_SPECIAL because the meaning of
"special" is different between Vim and Nvim.
Omit seenModifyOtherKeys as Nvim supports attaching multiple UIs.
Omit tests as they send terminal codes.
Keep the behavior of API functions.
2022-04-29 15:51:03 +08:00
zeertzjq
519e4c4472
test: correct order of arguments to eq() and neq()
2022-04-26 11:38:58 +08:00
Eden Zhang
813ecdac79
fix(paste): ignore mappings in Cmdline mode ( #18114 )
2022-04-17 08:11:53 +08:00
dundargoc
e63e5d1dbd
docs: typo fixes ( #17859 )
...
Co-authored-by: Elias Alves Moura <eliamoura.alves@gmail.com >
Co-authored-by: venkatesh <shariharanvenkatesh@gmail.com >
Co-authored-by: zeertzjq <zeertzjq@outlook.com >
Co-authored-by: Vikas Raj <24727447+numToStr@users.noreply.github.com >
Co-authored-by: Steve Vermeulen <sfvermeulen@gmail.com >
Co-authored-by: Evgeni Chasnovski <evgeni.chasnovski@gmail.com >
Co-authored-by: rwxd <rwxd@pm.me >
Co-authored-by: casswedson <58050969+casswedson@users.noreply.github.com >
2022-04-15 12:35:06 +02:00
Gregory Anders
e463eb8146
fix(api): correctly pass f-args for nvim_create_user_command ( #18098 )
...
Skip runs of whitespace and do not include `\` characters when
followed by another `\` or whitespace. This matches the behavior
of <f-args> when used with `:command`.
2022-04-13 08:04:56 -06:00
Gregory Anders
f94f75dc05
refactor!: rename nvim_add_user_command to nvim_create_user_command
2022-04-10 20:18:41 -06:00
Gregory Anders
30bc02c636
feat(api)!: pass args table to autocommand callbacks
2022-04-08 15:12:54 +02:00
bfredl
80d4d6b486
Merge pull request #17938 from ggandor/autocmd-api-names
...
refactor(api)!: use singular/plural consistently in the autocmd API
2022-04-01 00:35:21 +02:00
György Andorka
9d40b2fda9
refactor(api)!: use singular/plural consistently in the autocmd API
2022-03-31 23:58:47 +02:00
bfredl
4a89812d85
Merge pull request #17929 from lewis6991/autocmd
...
fix(api): improve autocmd error handling
2022-03-31 19:28:06 +02:00
Lewis Russell
929293815b
fix(api): improve autocmd error handling
...
- nvim_del_augroup_* now works with pcall
- nvim_del_autocmd now errors for invalid ids
2022-03-31 14:23:53 +01:00
TJ DeVries
b80651eda9
feat(api): nvim_clear_autocmd
...
Co-authored-by: Christian Clason <christian.clason@uni-due.de >
2022-03-31 14:30:42 +02:00
TJ DeVries
7fb2310edb
fix: set nested before executing callback ( #17801 )
2022-03-30 17:59:36 +02:00
zeertzjq
a9665bb12c
fix(event-loop): duplicate display updating logic in vgetorpeek() ( #17913 )
2022-03-30 05:25:00 +08:00
Justin M. Keyes
72652cbc46
feat(test): use nvim_exec in helpers.source() #16064
...
helpers.source() was a hack to work around the lack of anonymous
:source. Its "create tempfile" behavior is not a required part of most
tests that use it.
Some tests still need the old "create tempfile" behavior either because
they test SID behavior, or because of missing nvim_exec features: #16071
2022-03-27 10:25:55 -07:00
Javier Lopez
a490db5ba8
refactor!: rename nvim_do_autocmd to nvim_exec_autocmd ( #17854 )
...
according to established code standards (`:h dev-api`)
2022-03-26 15:34:56 +01:00
Gregory Anders
be35d3c5ad
feat(api): remove Lua autocommand callbacks when they return true ( #17784 )
...
This copies the semantics of nvim_buf_attach callbacks, and is a
convenient way to create oneshot autocommands gated by some condition.
2022-03-19 18:57:58 -06:00
zeertzjq
77eb6f9dc7
fix(api, lua): return NIL on failure to find converted function ( #17779 )
2022-03-20 08:08:50 +08:00
zeertzjq
e263afc0e9
fix(paste): escape control characters in Cmdline mode
2022-03-15 18:15:18 +08:00
zeertzjq
3470a9c3de
test(paste): add tests with virtualedit=onemore
2022-03-15 18:15:18 +08:00
zeertzjq
e4ec8d7d50
test(paste): reorganize tests and add tests for linewise Visual mode
2022-03-15 18:15:18 +08:00
zeertzjq
a6eafc77ce
fix(paste): deal with trailing new line in chunk
2022-03-15 18:15:18 +08:00
zeertzjq
fcc6f66cf2
fix(paste): avoid edges cases caused by empty chunk
2022-03-15 18:15:18 +08:00
zeertzjq
bfb7754442
fix(paste): deal with eol and eof in Visual mode
2022-03-15 18:15:18 +08:00
zeertzjq
2601e0873f
fix(paste): don't move cursor past the end of pasted text in Normal mode
2022-03-15 18:15:18 +08:00
zeertzjq
9b1e1fbc9f
fix(paste): use getcmdtype() to determine whether in cmdline mode
2022-03-15 18:15:18 +08:00
zeertzjq
3011794c86
feat(api): relax statusline fillchar width check
...
Treat fillchar as single-width even if it isn't.
2022-03-10 07:40:52 +08:00