aboutsummaryrefslogtreecommitdiff
path: root/test/functional/api
Commit message (Collapse)AuthorAge
...
* 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
| | |
| * | fix(highlight): allow globals to be clearedLewis Russell2022-02-16
| | | | | | | | | | | | | | | | | | - and reduce heap allocations Fixes #17420
* | | Merge pull request #16678 from lewis6991/runtime_file_errbfredl2022-02-16
|\ \ \ | | | | | | | | fix(api): re-route nvim_get_runtime_file errors
| * | | fix(api): re-route nvim_get_runtime_file errorsLewis Russell2022-02-15
| |/ / | | | | | | | | | This allows nvim_get_runtime_file to be properly used via pcall
* | | feat(mappings): considering map description when filtering (#17423)Shadman2022-02-16
| | |
* | | Merge pull request #17422 from shadmansaleh/enhance/mapszeertzjq2022-02-16
|\ \ \ | |/ / |/| | fix: <Nop> not shown in :map commands
| * | fix: <Nop> not shown in :map commandsshadmansaleh2022-02-16
| |/
* / fix(api): validate command names in nvim_add_user_command (#17406)Gregory Anders2022-02-15
|/ | | | This uses the same validation used when defining commands with `:command`.
* fix: autoload variables not loaded with vim.g & nvim_get_varshadmansaleh2022-02-13
|
* feat(api): add strikethrough, nocombine to set_hlChristian Clason2022-02-12
|
* fix(api): use changedir_func() in nvim_set_current_dir()zeertzjq2022-02-10
| | | | Co-Authored-By: smolck <46855713+smolck@users.noreply.github.com>
* fix(--headless): do not block on press-enter prompts when no UIglacambre2022-02-05
| | | | | | | | | | | | This commit fixes #9358, where emitting multiple messages with 'echo' or a single one with 'echom' or 'echoerr' would result in a press-enter prompt that couldn't be dismissed by pressing enter. This requires adapting a few tests to spawn a UI before testing whether press-enter prompts are blocking. It also fixes #11718, as when combined with #15910 it enables making sure that neovim never blocks and emits messages on startup.
* Merge pull request #17187 from lewis6991/masterbfredl2022-02-01
|\ | | | | feat(highlight): ns=0 to set :highlight namespace
| * feat(highlight): ns=0 to set :highlight namespaceLewis Russell2022-02-01
| | | | | | | | Passing ns=0 to nvim_set_hl will alter the `:highlight` namespace.
* | Merge pull request #17113 from zeertzjq/vim-8.2.2569zeertzjq2022-02-01
|\ \ | |/ |/| feat(statusline): support multibyte fillchar
| * feat(statusline): support multibyte fillcharzeertzjq2022-01-16
| | | | | | | | | | | | | | | | This includes a partial port of Vim patch 8.2.2569 and some changes to nvim_eval_statusline() to allow a multibyte fillchar. Literally every line of C code touched by that patch has been refactored in Nvim, and that patch contains some irrelevant foldcolumn tests I'm not sure how to port (as Nvim's foldcolumn behavior has diverged from Vim's).
* | feat(api): expose extmark right_gravity and end_right_gravitynotomo2022-01-24
| |
* | Merge pull request #17156 from zeertzjq/vim-8.2.3584bfredl2022-01-23
|\ \ | | | | | | vim-patch:8.2.{3584,3586,3587}: :command "-keepscript" argument
| * | vim-patch:8.2.3584: "verbose set efm" reports location of the :compiler commandzeertzjq2022-01-21
| |/ | | | | | | | | | | | | | | Problem: "verbose set efm" reports the location of the :compiler command. (Gary Johnson) Solution: Add the "-keepscript" argument to :command and use it when defining CompilerSet. https://github.com/vim/vim/commit/58ef8a31d7087d495ab1582be5b7a22796ac2451
* | Merge pull request #16936 from zeertzjq/no-escape-csibfredl2022-01-21
|\ \ | | | | | | input: never escape CSI bytes and clean up related names and comments
| * | refactor: remove CSI unescaping and clean up related names and commentszeertzjq2022-01-21
| |/
* / feat(api): expose extmark more detailsnotomo2022-01-20
|/
* Merge pull request #17001 from mjlbach/feat/non-strict-extmarksbfredl2022-01-15
|\ | | | | feat(extmarks): add strict option