aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* feat(health): make :checkhealth support more split modifiers (#26731)zeertzjq2023-12-25
|
* feat(health): checkhealth buffer can show in a split window (#26714)Pablo Arias2023-12-25
| | | | | | :checkhealth now respects :vertical and :horizontal. For example: :vertical checkhealth foo bar will open the healthcheck buffer in a vertical split.
* build: remove clint checks and style text covered by uncrustifydundargoc2023-12-24
|
* refactor: follow style guidedundargoc2023-12-24
|
* Merge pull request #26642 from famiu/refactor/options/misczeertzjq2023-12-24
|\ | | | | refactor(options): miscellanous refactors
| * refactor(options): do bound checking in `validate_num_option()`Famiu Haque2023-12-24
| |
| * refactor(options): remove side effects from `check_num_option_bounds()`Famiu Haque2023-12-24
| |
| * refactor(options): use `OptIndex` for `os_idx`Famiu Haque2023-12-23
| |
| * refactor(options): move some functions from options.c to option.cFamiu Haque2023-12-23
| |
| * refactor(options): restructure functions related to key optionsFamiu Haque2023-12-23
| |
* | refactor: remove os_errmsg and os_msg functionsdundargoc2023-12-23
| | | | | | | | Instead replace them with fprintf and printf.
* | refactor: remove CPO_TO_CPO_FLAGS() (#26718)zeertzjq2023-12-23
| | | | | | | | | | Just pass p_cpo to replace_termcodes() directly. This allows removing option_vars.h from keycodes.h, and also avoids the mistake of passing 0 as cpo_flags.
* | fix(mappings): fix mapset() not replacing map with backslash (#26719)zeertzjq2023-12-23
|/
* refactor(IWYU): move evalarg_T to eval_defs.h (#26716)zeertzjq2023-12-23
|
* refactor(drawline): avoid storing info to draw 'statuscolumn' (#26712)luukvbaal2023-12-23
| | | | | We no longer return to the main loop in win_line() to put column characters on the screen. Simplify and sync statuscolumn drawing logic with that of statusline.
* fix(decor): allow adding providers during redrawLewis Russell2023-12-22
| | | | Fixes: #26652
* refactor(drawline): simplify draw_statuscol() and remove draw_state referencesLuuk van Baal2023-12-22
|
* Merge pull request #26528 from bfredl/nodrawstatebfredl2023-12-22
|\ | | | | refactor(drawline): remove LineDrawState and wlv->saved_n_extra
| * refactor(drawline): remove LineDrawState and wlv->saved_n_extrabfredl2023-12-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We do not need an enum to keep track of what place in win_line() we currently are at. We already have a variable which keeps track where in the code we currently are (and thus what part of the line we are currently rendering), it is called the _program counter_. When we need non-linear or self-referential control-flow anyway for a laugh, we have a mechanism for that, it is called _function calls_. Do not "save" and "restore" the wlv->n_extra state every time the columns are to be drawn. This sort of thing needs to go away. Instead of setting the n_extra variables and then going to the outer while loop, the text in the columns can be rendered by just simply putting the text into the cells of the screen line, right away. Even in nvim this can be tricky sometimes, luckily we can use function calls to abstract this logic, which means that this handy data structure called the _call stack_ is handling saving away state temporarily, and restoring it back when we need it again. Lastly, but not least, as we now have direct control how signs are rendered, these can be stored as schar_T[2] and be directly put on screen as such.
* | docs(options): add codeblock annotations to options.lua (#26696)Christian Clason2023-12-22
| | | | | | | | | | Also consistently remove leading colons in examples Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* | refactor(IWYU): add "private" pragma to more generated headers (#26706)zeertzjq2023-12-22
| | | | | | | | | | "export" only prevents IWYU from adding these headers if the headers that export them are included, while "private" ensures that IWYU never adds these headers.
* | refactor(options): generate BV_ and WV_ constants (#26705)zeertzjq2023-12-22
| |
* | vim-patch:9.0.2183: Maximum callback depth is not configurable (#26703)zeertzjq2023-12-22
| | | | | | | | | | | | | | | | | | Problem: Maximum callback depth is not configurable. Solution: Revert patch 9.0.2103. Set 'maxfuncdepth' in test. fixes: vim/vim#13732 closes: vim/vim#13736 https://github.com/vim/vim/commit/fe583b1e5987fbfdb5f2141c133dbff9665ed301
* | refactor: run IWYU on entire repodundargoc2023-12-21
| | | | | | | | Reference: https://github.com/neovim/neovim/issues/6371.
* | fix(build): teach cmake about vvarsLewis Russell2023-12-21
| |
* | feat: generate types and docs for v variablesLewis Russell2023-12-21
| |
* | fix(column): avoid exceeding configured 'signcolumn' widthLuuk van Baal2023-12-21
|/
* refactor(IWYU): move decor provider types to decoration_defs.h (#26692)zeertzjq2023-12-21
|
* fixup:zeertzjq2023-12-21
|
* fix(channel): use os_write() instead of fwrite() for stderr (#26689)zeertzjq2023-12-21
| | | | | This handles EAGAIN. Related #26688
* refactor: eliminate cyclic includesdundargoc2023-12-20
|
* fix(buffer): do not filter help bufferChristian Clason2023-12-20
| | | | | | | | | | | | Problem: If a help buffer is opened without legacy syntax set (because treesitter is enabled), Vim strips (some) markup. This means the syntax engine fails to parse (some) syntax if treesitter highlighting is disabled again. Solution: Do not strip the help buffer of markup since (legacy or treesitter) highlighting is always enabled in Nvim. Similarly, remove redundant setting of filetype and give the function a more descriptive name.
* vim-patch:9.0.2177: Wrong cursor position when dragging out of window (#26661)zeertzjq2023-12-20
| | | | | | | | Problem: Wrong cursor position when dragging out of window. Solution: Don't use ScreenCols[] when mouse is not in current window. closes: vim/vim#13717 https://github.com/vim/vim/commit/ec14924368e23f2430815c009bd554f88de9c57f
* vim-patch:9.0.2178: reg_executing() wrong for :normal with range (#26660)zeertzjq2023-12-20
| | | | | | | | | Problem: reg_executing() returns wrong result in :normal with range when 'showcmd' is set (after 8.2.4705). Solution: Reset "pending_end_reg_executing" when executing a register. closes: vim/vim#13707 https://github.com/vim/vim/commit/615202bd0ebc1d8e3532f24b9b7232c2fd86b181
* test: sign on wrapped line with signcolumn=number (#26654)zeertzjq2023-12-19
|
* refactor: use `bool` to represent boolean valuesdundargoc2023-12-19
|
* docs: small fixes (#26448)dundargoc2023-12-19
| | | | Co-authored-by: Gregory Anders <8965202+gpanders@users.noreply.github.com> Co-authored-by: Jordan Mandel <jordan.mandel@live.com>
* fix(api): don't set coladd of mark (#26648)zeertzjq2023-12-19
|
* feat(api): add forward and back mouse buttonsAmanda Graven2023-12-18
|
* docs: add style rule regarding initializationdundargoc2023-12-18
| | | | | Specifically, specify that each initialization should be done on a separate line.
* fix(lua): handle array with holes in luaeval() (#26630)zeertzjq2023-12-18
|
* fix(options): setting 'scroll' with resized grid (#26628)zeertzjq2023-12-18
|
* refactor: split WIN_EXECUTE() into two functions (#26627)zeertzjq2023-12-18
|
* refactor: move some anonymous enums back to non-defs headers (#26622)zeertzjq2023-12-18
| | | | | | | | | | It isn't really useful to put anonymous enums only used as arguments to functions calls in _defs.h headers, as they will only be used by a file that calls those functions, which requires including a non-defs header. Also move os_msg() and os_errmsg() back to message.h, as on Windows they are actual functions instead of macros. Also remove gettext.h and globals.h from private/helpers.h.
* refactor: move non-symbols to defs.h headersdundargoc2023-12-17
|
* refactor(options): use hashy for finding options (#26573)Famiu Haque2023-12-17
| | | | | | | | | | | Problem: `findoption()` searches through the options[] table linearly for option names, even though hashy can be used to generate a compile-time hash table for it. Solution: Use hashy to generate a compile time hash table for finding options. This also allows handling option aliases, so we don't need separate options[] table entries for things like 'viminfo'.
* build: cmake fixesdundargoc2023-12-16
| | | | | | | | | | | | | | - add EXTERNALPROJECT_OPTIONS variable to main build - use `REQUIRED` keyword for IWYU. - remove check_c_compiler_flag checks when `ENABLE_COMPILER_SUGGESTIONS` is `ON`. If we explicitly enable it then we probably want it to give an error if it doesn't exist, rather than silently skip it. - Move dependency interface libraries to their find module and use them as a pseudo-imported target. - Remove BUSTED_OUTPUT_TYPE. It's not used and we can reintroduce it again if something similar is needed. - Use LINK_OPTIONS intead of LINK_FLAGS when generating the `--version` output.
* refactor: only reload colorscheme if &bg changed (#26598)Gregory Anders2023-12-16
| | | | | | | | | | Currently, setting &bg at all re-initializes highlights and reloads the active colorscheme, even if the actual value of &bg has not changed. With https://github.com/neovim/neovim/pull/26595 this causes a regression since &bg is set unconditionally based on the value detected from the terminal. Instead, only reload the colorscheme if the actual value of &bg has changed.
* build: bump minimum cmake version to 3.13dundargoc2023-12-16
| | | | | | | | | | | The benefits are primarily being able to use FetchContent, which allows for a more flexible dependency handling. Other various quality-of-life features such as `-B` and `-S` flags are also included. This also removes broken `--version` generation as it does not work for version 3.10 and 3.11 due to the `JOIN` generator expression. Reference: https://github.com/neovim/neovim/issues/24004
* vim-patch:82f19734bfcbChristian Clason2023-12-16
| | | | | | | | | | | runtime(doc): remove deprecation warning for gdefault Deprecated can be misunderstood as being slated for removal; slightly change wording to be clearer. https://github.com/vim/vim/commit/82f19734bfcbddbaee8d5d837f7b7a7119366020 Co-authored-by: dundargoc <gocdundar@gmail.com>