aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * | | | | docs: update MAINTAIN.mddundargoc2023-11-21
| | | | | |
| * | | | | perf(lsp): use async fs_stat for file watching on linux (#26123)Mathias Fußenegger2023-11-21
| | | | | |
| * | | | | fix(column): always set b_signcols.maxLuuk van Baal2023-11-21
| | | | | | | | | | | | | | | | | | | | | | | | Fix #26135
| * | | | | refactor(sign): store 'signcolumn' width range when it is setLuuk van Baal2023-11-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Minimum and maximum signcolumn width is determined each redraw. Solution: Determine and store 'signcolumn' range when option is set.
| * | | | | fix(vim.region): handle multibyte inclusive selection properly (#26129)zeertzjq2023-11-21
| | | | | |
| * | | | | build: adjust clang-tidy warning exclusion logicdundargoc2023-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable all clang-tidy warnings by default instead of disabling them. This ensures that we don't miss useful warnings on each clang-tidy version upgrade. A drawback of this is that it will force us to either fix or adjust the warnings as soon as possible.
| * | | | | refactor: enable formatting for ternariesdundargoc2023-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This requires removing the "Inner expression should be aligned" rule from clint as it prevents essentially any formatting regarding ternary operators.
| * | | | | refactor(lsp): add type annotations to _watchfiles (#26109)Mathias Fußenegger2023-11-20
| | | | | |
| * | | | | build: bump uncrustify to version 0.78.1dundargoc2023-11-20
| | | | | |
| * | | | | fixup: quick update, squash laterdundargoc2023-11-20
| | | | | |
| * | | | | build: disable all compiler warnings from dependenciesdundargoc2023-11-20
| | | | | |
| * | | | | vim-patch:9.0.2116: No test for defining sign without attribute (#26115)luukvbaal2023-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: No test for defining sign without attribute Solution: Add test for defining sign without attributes closes: vim/vim#13544 https://github.com/vim/vim/commit/e670d17342ea05af253b0452afb980397fa143be
| * | | | | test: skip failing watch file tests on freebsd (#26110)Mathias Fußenegger2023-11-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Quick fix as follow up to https://github.com/neovim/neovim/pull/26108 kqueue only reports events on a watched folder itself, not for files created or deleted within. So the approach the PR took doesn't work on FreeBSD. We'll either need to bring back polling for it, combine watching with manual file tracking, or disable LSP file watching on FreeBSD
| * | | | | refactor: follow style guidedundargoc2023-11-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - reduce variable scope - prefer initialization over declaration and assignment
| * | | | | build: bump uncrustify versiondundargoc2023-11-19
| | | | | | | | | | | | | | | | | | | | | | | | Biggest change is that uncrustify is silent during linting.
| * | | | | perf(lsp): replace file polling on linux with per dir watcher (#26108)Mathias Fußenegger2023-11-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Should help with https://github.com/neovim/neovim/issues/23291 On linux `new_fs_event` doesn't support recursive watching, but we can still use it to watch folders. The downside of this approach is that we may end up sending some false `Deleted` events. For example, if you save a file named `foo` there will be a intermediate `foo~` due to the save mechanism of neovim. The events we get from vim.uv in that case are: - rename: foo~ - rename: foo~ - rename: foo - rename: foo - change: foo - change: foo The mechanism in this PR uses a debounce to reduce this to: - deleted: foo~ - changed: foo `foo~` will be the false positive. I suspect that for the LSP case this is good enough. If not, we may need to follow up on this and keep a table in memory that tracks available files.
| * | | | | fix(sign): do not error when defining sign without attributes (#26106)luukvbaal2023-11-19
| | | | | | | | | | | | | | | | | | Fix https://github.com/airblade/vim-gitgutter/issues/875
| * | | | | Merge pull request #26104 from bfredl/noextmarkinfobfredl2023-11-18
| |\ \ \ \ \ | | | | | | | | | | | | | | refactor(extmark): redundant ExtmarkInfo delenda est, use MTPair instead
| | * | | | | refactor(extmark): redundant ExtmarkInfo delenda est, use MTPair insteadbfredl2023-11-18
| |/ / / / /
| * | | | | build: various cmake fixesdundargoc2023-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Correct MSVC warning suppression. The C4003 warning is issued during file generation and not for the actual source files. - Remove non-existent "scripts/pvscheck.sh" file from `lintsh` target. - Remove spaces inside for loops with uncrustify. - Point dependencies to use a git tag rather than releases, as releases might have changes that deviate from the actual source code. - Automatically update uncrustify config before formatting or linting.
| * | | | | Merge pull request #25724 from luukvbaal/signmergebfredl2023-11-18
| |\ \ \ \ \ | | | | | | | | | | | | | | refactor(sign): move legacy signs to extmarks
| | * | | | | refactor(sign): move legacy signs to extmarksLuuk van Baal2023-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The legacy signlist data structures and associated functions are redundant since the introduction of extmark signs. Solution: Store signs defined through the legacy commands in a hashmap, placed signs in the extmark tree. Replace signlist associated functions. Usage of the legacy sign commands should yield no change in behavior with the exception of: - "orphaned signs" are now always removed when the line it is placed on is deleted. This used to depend on the value of 'signcolumn'. - It is no longer possible to place multiple signs with the same identifier in a single group on multiple lines. This will now move the sign instead. Moreover, both signs placed through the legacy sign commands and through |nvim_buf_set_extmark()|: - Will show up in both |sign-place| and |nvim_buf_get_extmarks()|. - Are displayed by increasing sign identifier, left to right. Extmark signs used to be ordered decreasingly as opposed to legacy signs.
| * | | | | | fix(completion): filter results with complete+=f (#26029)Raphael2023-11-18
| | | | | | |
| * | | | | | Merge pull request #26096 from gpanders/tui-input-refactorGregory Anders2023-11-17
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | TUI input refactors
| | * | | | | | refactor(tui): use termkey_interpret_modereportGregory Anders2023-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sign extension issue has been fixed upstream, so we no longer need to use our own workaround.
| | * | | | | | refactor(tui): refactor Kitty keyboard query implementationGregory Anders2023-11-17
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor our implementation of querying for Kitty keyboard protocol support: - Remove usage of the "extkeys" term. This is not standard or really used elsewhere. Use "key encoding" instead - Replace usages of "CSIu" with "Kitty". "Kitty keyboard protocol" is vastly more common than "CSIu" now - Replace the countdown response counter with a simple boolean flag. We don't actually need a countdown counter because we request the primary device attributes along with the Kitty keyboard query, so we will always receive a "terminating event", making a countdown/timer unnecessary - Move the CSI response handling into a dedicated function - Bypass Unibilium for sending key encoding escape sequences. These sequences are not part of terminfo and do not have any parameters, so there's no reason to go through Unibilium
| * | | | | | refactor(snippet): rename test utilitiesMaria José Solano2023-11-17
| | | | | | |
| * | | | | | feat(lsp): support for choice snippet nodesMaria José Solano2023-11-17
| | | | | | |
| * | | | | | fix(tui): handle cursor visibility properly (#26091)zeertzjq2023-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The test is for the case without 'termsync' because libvterm doesn't support synchronized output, and it passes without this PR.
| * | | | | | docs: document breaking change of cursor blink behavior (#26075)Gregory Anders2023-11-17
| | | | | | |
| * | | | | | Merge pull request #25934 from bfredl/screenlinecharbfredl2023-11-17
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | refactor(grid): make screen rendering more multibyte than ever before
| | * | | | | | refactor(grid): make screen rendering more multibyte than ever beforebfredl2023-11-17
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: buffer text with composing chars are converted from UTF-8 to an array of up to seven UTF-32 values and then converted back to UTF-8 strings. Solution: Convert buffer text directly to UTF-8 based schar_T values. The limit of the text size is now in schar_T bytes, which is currently 31+1 but easily could be raised as it no longer multiplies the size of the entire screen grid when not used, the full size is only required for temporary scratch buffers. Also does some general cleanup to win_line text handling, which was unnecessarily complicated due to multibyte rendering being an "opt-in" feature long ago. Nowadays, a char is just a char, regardless if it consists of one ASCII byte or multiple bytes.
| * | | | | | fix(lua): only disable vim.schedule() when closing main loop (#26090)zeertzjq2023-11-17
| | | | | | |
| * | | | | | Merge pull request #26083 from zeertzjq/vim-9.0.1854zeertzjq2023-11-17