aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/api
Commit message (Collapse)AuthorAge
...
| * perf(screen): reduce cursorline redrawing when jumping aroundzeertzjq2022-03-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | vim-patch:8.2.4614: redrawing too much when 'cursorline' is set Problem: Redrawing too much when 'cursorline' is set and jumping around. Solution: Rely on win_update() to redraw the current and previous cursor line, do not mark lines as modified. (closes vim/vim#9996) https://github.com/vim/vim/commit/c20e46a4e3efcd408ef132872238144ea34f7ae5 This doesn't match the patch exactly, because I missed some lines when porting patch 8.1.2029, and these lines were removed in this patch. This also makes win_update() always update for 'concealcursor' like how it always updates for 'cursorline', as 'cursorline' and 'concealcursor' redrawing logic has been unified in Nvim. As redrawing for 'cursorline' now always only requires VALID redraw type, it is no longer necessary to call redraw_for_cursorline() in nvim_win_set_cursor().
* | chore(nvim_paste): assert the correct String (#17752)zeertzjq2022-03-24
|/
* fix(aucmd_win): always make aucmd_win the last windowzeertzjq2022-03-23
|
* feat(ui): allow conceal to be defined in decorationsbfredl2022-03-20
| | | | | | Unlike syntax conceal, change highlight of concealed char Can be used in tree-sitter using "conceal" metadata.
* Merge pull request #17785 from muniter/jl-fix-doxygen-destroyerJames McCoy2022-03-20
|\ | | | | docs: properly escape to avoid doxygen weirdness
| * docs: properly escape to avoid doxygen weirdnessJavier López2022-03-19
| | | | | | | | | | | | If this is not properly escaped doxygen 1.9.3 will not work correctly, and the documentation generated in local machines will differ with what is generated in CI.
* | fix(api, lua): return NIL on failure to find converted function (#17779)zeertzjq2022-03-20
|/
* docs: reword description for nvim_buf_line_count() (#17766)Xiretza2022-03-18
| | | This adds a few more keywords to make the function easier to find.
* vim-patch:8.1.1693: syntax coloring and highlighting is in one big file (#17721)Lewis Russell2022-03-18
| | | | | | | | | | | Problem: Syntax coloring and highlighting is in one big file. Solution: Move the highlighting to a separate file. (Yegappan Lakshmanan, closes vim/vim#4674) https://github.com/vim/vim/commit/f9cc9f209ede9f15959e4c2351e970477c139614 Name the new file highlight_group.c instead. Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* feat(api, lua): support converting nested Funcref back to LuaRef (#17749)zeertzjq2022-03-17
|
* Merge pull request #17266 from famiu/feat/ui/global-statuslinebfredl2022-03-17
|\ | | | | feat(statusline): add global statusline
| * feat: add support for global statuslineFamiu Haque2022-03-18
| | | | | | | | | | | | | | | | | | | | Ref: #9342 Adds the option to have a single global statusline for the current window at the bottom of the screen instead of a statusline at the bottom of every window. Enabled by setting `laststatus = 3`. Due to the fact that statuslines at the bottom of windows are removed when global statusline is enabled, horizontal separators are used instead to separate horizontal splits. The horizontal separator character is configurable through the`horiz` item in `'fillchars'`. Separator connector characters are also used to connect the horizontal and vertical separators together, which are also configurable through the `horizup`, `horizdown`, `vertleft`, `vertright` and `verthoriz` items in `fillchars`. The window separators are highlighted using the `WinSeparator` highlight group, which supersedes `VertSplit` and is linked to `VertSplit` by default in order to maintain backwards compatibility.
* | chore: fix typos (#17670)dundargoc2022-03-17
| | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* | refactor(ui): make ui_client_event_grid_line typesafebfredl2022-03-15
| |
* | feat(ui): implement ui_client event handlershlpr982022-03-15
| |
* | refactor: minimize variable scope and eliminate empty declarationsDundar Göc2022-03-13
| |
* | refactor: fix clint warnings (#17682)dundargoc2022-03-13
| |
* | docs(api): improve section on nvim_set_hl (#17692)adrian52022-03-13
| |
* | Merge pull request #17687 from zeertzjq/fix-channel-consistencyzeertzjq2022-03-13
|\ \ | | | | | | fix(channel): fix channel consistency
| * | fix(channel): fix channel consistencyerw72022-03-12
| | | | | | | | | | | | | | | | | | | | | - Fix the problem that chanclose() does not work for channel created by nvim_open_term(). - Fix the problem that the loopback channel is not released. - Fix the error message when sending raw data to the loopback channel.
* | | feat(ui): connect to remote ui (only debug messages for now)bfredl2022-03-12
| | | | | | | | | | | | co-authored-by: hlpr98 <hlpr98@gmail.com>
* | | refactor(main): separate connection code from --remote execution codeBjörn Linse2022-03-12
|/ /
* | test(remote): add tests for --remoteCharlie Groves2022-03-11
| | | | | | | | This also fixes a fair number of issues found in running the tests
* | feat(remote): add basic --remote supportCharlie Groves2022-03-11
| | | | | | | | | | This is starting from @geekodour's work at https://github.com/neovim/neovim/pull/8326
* | Merge pull request #17663 from dundargoc/refactor/uncrustifybfredl2022-03-11
|\ \ | | | | | | refactor: apply uncrustify
| * | refactor(uncrustify): format all c filesDundar Göc2022-03-10
| | |
* | | refactor(decorations): move provider codeLewis Russell2022-03-10
|/ / | | | | | | Move decoration provider code to a separate file.
* | chore: fix typos (#17331)dundargoc2022-03-10
| | | | | | | | | | | | Co-authored-by: Hongyi Lyu <hongyi.lyu95@gmail.com> Co-authored-by: Gregory Anders <greg@gpanders.com> Co-authored-by: notomo <notomo.motono@gmail.com> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* | 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.
* | Merge pull request #16897 from lewis6991/signsbfredl2022-03-06
|\ \ | | | | | | feat(decorations): support signs
| * | feat(decorations): support signsLewis Russell2022-03-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the following options to extmarks: - sign_text - sign_hl_group - number_hl_group - line_hl_group - cursorline_hl_group Note: ranges are unsupported and decorations are only applied to start_row
* | | Merge pull request #17589 from kchibisov/add-dashed-dotted-underlineJames McCoy2022-03-05
|\ \ \ | |/ / |/| | Add support for double, dashed, and dotted underlines
| * | 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.
* | | Merge pull request #17568 from groves/respect_os_proc_children_rvJames McCoy2022-03-03
|\ \ \ | |/ / |/| |
| * | fix: respect os_proc_children rv of pid not foundCharlie Groves2022-03-01
| | | | | | | | | | | | | | | | | | | | | | | | os_proc_children returns 2 if there's a failure in the underlying syscall. Only shell out to pgrep in that case. It returns 1 if the pid isn't found. In that case, we can roll forward with returning an empty list.
* | | refactor(PVS/V547): aucmd.type == CALLABLE_NONE is always falsezeertzjq2022-03-02
| | |
* | | refactor(PVS/V560): ap == NULL is always falsezeertzjq2022-03-02
| | |
* | | chore(PVS): add PVS header to api/autocmd.czeertzjq2022-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
* | | Merge pull request #17529 from seandewar/api-string-oopsiebfredl2022-02-28
|\ \ \ | |/ / |/| | fix(api): convert blob to NUL-terminated API string
| * | fix(api): convert blob to NUL-terminated API stringSean Dewar2022-02-26
| | | | | | | | | | | | | | | Looks like I did an oopsie; although API strings carry a size field, they should still be usable as C-strings! (even though they may contain embedded NULs)
* | | 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 #17386 from bfredl/neothreadbfredl2022-02-27
|\ \ \ | | | | | | | | support threads in lua
| * | | feat(lua): add proper support of luv threadserw72022-02-26
| |/ /