aboutsummaryrefslogtreecommitdiff
path: root/test/functional/api
Commit message (Collapse)AuthorAge
* fix(paste): ignore mappings in Cmdline mode (#18114)Eden Zhang2022-04-17
|
* docs: typo fixes (#17859)dundargoc2022-04-15
| | | | | | | | | | 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>
* fix(api): correctly pass f-args for nvim_create_user_command (#18098)Gregory Anders2022-04-13
| | | | | 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`.
* refactor!: rename nvim_add_user_command to nvim_create_user_commandGregory Anders2022-04-10
|
* feat(api)!: pass args table to autocommand callbacksGregory Anders2022-04-08
|
* Merge pull request #17938 from ggandor/autocmd-api-namesbfredl2022-04-01
|\ | | | | refactor(api)!: use singular/plural consistently in the autocmd API
| * refactor(api)!: use singular/plural consistently in the autocmd APIGyörgy Andorka2022-03-31
| |
* | Merge pull request #17929 from lewis6991/autocmdbfredl2022-03-31
|\ \ | |/ |/| fix(api): improve autocmd error handling
| * fix(api): improve autocmd error handlingLewis Russell2022-03-31
| | | | | | | | | | - nvim_del_augroup_* now works with pcall - nvim_del_autocmd now errors for invalid ids
* | feat(api): nvim_clear_autocmdTJ DeVries2022-03-31
|/ | | | Co-authored-by: Christian Clason <christian.clason@uni-due.de>
* fix: set nested before executing callback (#17801)TJ DeVries2022-03-30
|
* fix(event-loop): duplicate display updating logic in vgetorpeek() (#17913)zeertzjq2022-03-30
|
* feat(test): use nvim_exec in helpers.source() #16064Justin M. Keyes2022-03-27
| | | | | | | | 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
* refactor!: rename nvim_do_autocmd to nvim_exec_autocmd (#17854)Javier Lopez2022-03-26
| | | according to established code standards (`:h dev-api`)
* feat(api): remove Lua autocommand callbacks when they return true (#17784)Gregory Anders2022-03-19
| | | | This copies the semantics of nvim_buf_attach callbacks, and is a convenient way to create oneshot autocommands gated by some condition.
* fix(api, lua): return NIL on failure to find converted function (#17779)zeertzjq2022-03-20
|
* fix(paste): escape control characters in Cmdline modezeertzjq2022-03-15
|
* test(paste): add tests with virtualedit=onemorezeertzjq2022-03-15
|
* test(paste): reorganize tests and add tests for linewise Visual modezeertzjq2022-03-15
|
* fix(paste): deal with trailing new line in chunkzeertzjq2022-03-15
|
* fix(paste): avoid edges cases caused by empty chunkzeertzjq2022-03-15
|
* fix(paste): deal with eol and eof in Visual modezeertzjq2022-03-15
|
* fix(paste): don't move cursor past the end of pasted text in Normal modezeertzjq2022-03-15
|
* fix(paste): use getcmdtype() to determine whether in cmdline modezeertzjq2022-03-15
|
* feat(api): relax statusline fillchar width checkzeertzjq2022-03-10
| | | | Treat fillchar as single-width even if it isn't.
* feat(api): autocmd `group` can be either name or id (#17559)Dhruv Manilawala2022-03-07
| | | | | | | | | | | | | | | | | | | | | | | | * feat(api): `group` can be either string or int This affects the following API functions: - `vim.api.nvim_create_autocmd` - `vim.api.nvim_get_autocmds` - `vim.api.nvim_do_autocmd` closes #17552 * refactor: add two maps for fast lookups * fix: delete augroup info from id->name map When in "stupid_legacy_mode", the value in name->id map would be updated to `AUGROUP_DELETED`, but the entry would still remain in id->name. This would create a problem in `augroup_name` function which would return the name of the augroup instead of `--DELETED--`. The id->name map is only used for fast loopup in `augroup_name` function so there's no point in keeping the entry of deleted augroup in it. Co-authored-by: TJ DeVries <devries.timothyj@gmail.com>
* feat(api): add 'buffer' argument to nvim_get_autocmds (#17594)Gregory Anders2022-03-06
| | | | | This enables retrieving autocommands defined in the given buffers. Under the hood this simply translates the buffer numbers into '<buffer=%d>' patterns.
* feat(tui): add support for `CSI 4 : [2,4,5] m`Kirill Chibisov2022-03-03
| | | | | | | | This commit finishes support for colored and styled underlines adding `CSI 4 : [2,4,5] m` support providing double, dashed, and dotted underlines Fixes #17362.
* test: use helpers.pending_win32(pending) in buffer_updates_speczeertzjq2022-03-03
|
* test: move two mapping tests to ex_cmds/map_spec.luazeertzjq2022-03-02
|
* Merge pull request #15079 from shadmansaleh/feat/verbose_luabfredl2022-03-01
|\ | | | | feat(lua): add :verbose support for lua config
| * feat(lua): show proper verbose output for lua configurationshadmansaleh2022-02-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `:verbose` didn't work properly with lua configs (For example: options or keymaps are set from lua, just say that they were set from lua, doesn't say where they were set at. This fixes that issue. Now `:verbose` will provide filename and line no when option/keymap is set from lua. Changes: - compiles lua/vim/keymap.lua as vim/keymap.lua - When souring a lua file current_sctx.sc_sid is set to SID_LUA - Moved finding scripts SID out of `do_source()` to `get_current_script_id()`. So it can be reused for lua files. - Added new function `nlua_get_sctx` that extracts current lua scripts name and line no with debug library. And creates a sctx for it. NOTE: This function ignores C functions and blacklist which currently contains only vim/_meta.lua so vim.o/opt wrappers aren't targeted. - Added function `nlua_set_sctx` that changes provided sctx to current lua scripts sctx if a lua file is being executed. - Added tests in tests/functional/lua/verbose_spec.lua - add primary support for additional types (:autocmd, :function, :syntax) to lua verbose Note: These can't yet be directly set from lua but once that's possible :verbose should work for them hopefully :D - add :verbose support for nvim_exec & nvim_command within lua Currently auto commands/commands/functions ... can only be defined by nvim_exec/nvim_command this adds support for them. Means if those Are defined within lua with vim.cmd/nvim_exec :verbose will show their location . Though note it'll show the line no on which nvim_exec call was made.
* | fix(api): include event in get_autocmds (#17553)Christian Clason2022-03-01
| |
* | feat(lua): add missing changes to autocmds lost in the rebaseTJ DeVries2022-02-28
|/ | | | Note: some of these changes are breaking, like change of API signatures
* feat(lua): add api and lua autocmdsTJ DeVries2022-02-27
|
* feat(lua): add <f-args> to user commands callback (#17522)Javier Lopez2022-02-27
| | | | | Works similar to ex <f-args>. It only splits the arguments if the command has more than one posible argument. In cases were the command can only have 1 argument opts.fargs = { opts.args }
* Merge pull request #17414 from zeertzjq/api-set-cursor-redrawbfredl2022-02-26
|\ | | | | fix(api): nvim_win_set_cursor() redraw for cursorline and statusline
| * fix(api): nvim_win_set_cursor() redraw for cursorline and statuslinezeertzjq2022-02-15
| |
* | test: use helpers.pending_win32(pending) instead of iswin()zeertzjq2022-02-26
| |
* | Merge pull request #17467 from dundargoc/ci/remove-failing-windowsJames McCoy2022-02-25
|\ \ | | | | | | ci: remove failing windows CI tests
| * | ci: skip tests that fail on windowsDundar Göc2022-02-20
| | |
* | | feat(highlight): support for blend in nvim_set_hl (#17516)Lewis Russell2022-02-24
| | |
* | | fix(api)!: correctly handle negative line numbers for nvim_buf_set_text (#17498)Gregory Anders2022-02-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | nvim_buf_set_text does not handle negative row numbers correctly: for example, nvim_buf_set_text(0, -2, 0, -1, 20, {"Hello", "world"}) should replace the 2nd to last line in the buffer with "Hello" and the first 20 characters of the last line with "world". Instead, it reports "start_row out of bounds". This happens because when negative line numbers are used, they are incremented by one additional number to make the non-negative line numbers end-exclusive. However, the line numbers for nvim_buf_set_text should be end-inclusive. In #15181 we handled this for nvim_buf_get_text by adding a new parameter to `normalize_index`. We can solve the problem with nvim_buf_set_text by simply availing ourselves of this new argument. This is a breaking change, but makes the semantics of negative line numbers much clearer and more obvious (as well as matching nvim_buf_get_text). BREAKING CHANGE: Existing usages of nvim_buf_set_text that use negative line numbers will be off-by-one.
* | | feat(api): implement nvim_buf_get_text (#15181)Gregory Anders2022-02-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | nvim_buf_get_text is the mirror of nvim_buf_set_text. It differs from nvim_buf_get_lines in that it allows retrieving only portions of lines. While this can typically be done easily enough by API clients, implementing this function provides symmetry between the get/set text/lines APIs, and also provides a nice convenience that saves API clients the work of having to slice the result of nvim_buf_get_lines themselves.
* | | fix(highlight): accept NONE as a color name (#17487)Lewis Russell2022-02-21
|/ / | | | | | | | | | | | | | | ... for when `ns=0`. Also update the documentation of nvim_set_hl to clarify the set behaviour. Fixes #17478
* | Merge pull request #17430 from dundargoc/test/remove-travisJames McCoy2022-02-17
|\ \
| * | test: remove checks to see if current CI job is travis or appveyorDundar Göc2022-02-17
| | |
* | | fix(api): allow empty list for cterm in nvim_set_hlChristian Clason2022-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: when accessing `nvim_set_hl` from Lua, empty tables are converted to empty lists, not dictionaries, resulting in an error for :lua vim.api.nvim_set_hl(0, "Comment", { cterm = {} }) Workaround: add an empty array as a special case when checking `dict->cterm.type` and just set `cterm_mask_provided`. (Proper solution: handle this in `gen_api_dispatch.lua`.)
* | | Merge pull request #17421 from lewis6991/hl0_clearbfredl2022-02-17
|\ \ \ | |/ / |/| | fix(highlight): global ns improvements
| * | feat(highlight): support color names for ctermLewis Russell2022-02-16
| | |