aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Merge pull request #16725 from VVKot/vim-8.1.0040Björn Linse2021-12-25
|\ | | | | vim-patch:8.1.0040: warnings from 64-bit compiler
| * vim-patch:8.1.0040: warnings from 64-bit compilerVVKot2021-12-20
| | | | | | | | | | | | Problem: Warnings from 64-bit compiler. Solution: Add type casts. (Mike Williams) https://github.com/vim/vim/commit/e31e256ba1769a3a3ed7840d5cc9a01ab058b8bc
* | Merge pull request #16786 from jamessan/cancel-previous-ciJames McCoy2021-12-25
|\ \ | | | | | | ci: cancel in-progress CI if a PR is updated
| * | ci: cancel in-progress CI if a PR is updatedJames McCoy2021-12-25
|/ / | | | | | | [skip ci]
* | vim-patch:8.2.3873: go.mod files are not recognized (#16757)dundargoc2021-12-25
| | | | | | | | | | Problem: go.mod files are not recognized. Solution: Check for the file name. (closes vim/vim#9380) https://github.com/vim/vim/commit/82b3b4c6cf2973fe767f8e2311482af0bd95267e
* | Merge pull request #16762 from zeertzjq/grid-truncate-pum-double-widthBjörn Linse2021-12-25
|\ \ | | | | | | Truncate double-width character at the end of popup menu correctly
| * | refactor(pum_redraw): rename col -> grid_colzeertzjq2021-12-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is initialized to `col_off`, while in Vim this variable `col` that is used in the same places is initialized to `pum_col`. This can cause confusion in patch porting, and it caused Vim patch 8.2.1995 to be ported incorrectly. (I reverted the incorrect part in the last commit though.) Rename it to `grid_col` to make it clear that it is different from Vim's `col` variable.
| * | fix(pum_redraw): use grid_puts_len() to truncate the textzeertzjq2021-12-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nvim already resizes grid to the required width, so there is no need to truncate the text in pum_redraw(). What's more, truncation is currently done incorrectly because Vim patch 8.2.1995 was ported incorrectly. This nearly reverts the truncation part of Vim patch 8.2.1995, but not the part that reduces unnecessary calls to pum_redraw(). The original PR https://github.com/vim/vim/pull/7306 didn't explain much about which part of it actually reduces redraws.
| * | fix(screen): truncate when overwriting right half of a double-width charzeertzjq2021-12-24
| | | | | | | | | | | | | | | Unlike the code above, this truncates the character in the same grid. This is mainly for the pum scrollbar in the next commit.
| * | fix(screen): truncate double-width character correctlyzeertzjq2021-12-24
| | | | | | | | | | | | | | | The `c = '>';` is useless here, because it is not used later. `u8c` should also need to be set to '>', and `u8cc` needs to be cleared.
* | | chore(editorconfig): set max_line_length for .h and .in files (#16775)Maverun2021-12-24
| | |
* | | fix(options): disallow empty 'fdc' and 'scl' (#16765)Sean Dewar2021-12-24
|/ / | | | | | | | | | | | | | | | | Empty string values for these options aren't actually allowed, but check_opt_strings allows empty string options. It so happens that 'scl' handles empty string like "auto", but empty 'fdc' causes glitchiness (win_fdccol_count returns an incorrect value). Just disallow empty string values for these options completely.
* | chore: set max_line_length in editorconfig (#16755)Gregory Anders2021-12-23
| | | | | | | | | | | | We established a while ago that 100 chars is our line length for both C and Lua. Not all editorconfig plugins support the "max_line_length" option, but many do (including all of the ones available for Vim/Neovim to the best of my knowledge).
* | docs: regenerate (#16742)github-actions[bot]2021-12-23
| | | | | | Co-authored-by: marvim <marvim@users.noreply.github.com>
* | Merge pull request #16754 from jamessan/vim-8.2.3874James McCoy2021-12-22
|\ \ | | | | | | vim-patch:8.2.3874
| * | vim-patch:8.2.3874: cannot highlight the number column for a signJames McCoy2021-12-22
|/ / | | | | | | | | | | Problem: Cannot highlight the number column for a sign. Solution: Add the "numhl" argument. (James McCoy, closes vim/vim#9381) https://github.com/vim/vim/commit/a80aad717464760a5a50ac2201ce35b24a0cf7a5
* | refactor: fix comment spacing in option.h (#16749)zeertzjq2021-12-21
| |
* | fix(api): make nil value in nvim_set_option_value clear local value (#16710)Gregory Anders2021-12-21
| | | | | | | | For special options such as 'undolevels' and 'scrolloff', this sets the local value to the special "unset" value (e.g. -12345 for 'undolevels').
* | feat(lsp): add buf_detach_client (#16250)Michael Lingelbach2021-12-21
| | | | | | | | | | This allows the user to detach an active buffer from the language client. If no clients remain attached to a buffer, the on_lines callback is used to cancel nvim_buf_attach.
* | Merge pull request #16736 from dundargoc/ci/remove-unused-typo-fixJames McCoy2021-12-20
|\ \ | | | | | | ci: remove unused "squash typo" workflow
| * | ci: remove unused "squash typo" workflowDundar Göc2021-12-20
|/ /
* | Merge pull request #16734 from zeertzjq/chdir-refactorJames McCoy2021-12-20
|\ \ | | | | | | refactor: remove some chdir-related unnecessary calls and checks
| * | refactor: remove some chdir-related unnecessary calls and checkszeertzjq2021-12-20
| | | | | | | | | | | | | | | | | | | | | xmalloc() always retuns a valid pointer. Calling os_chdir() with the same directory as the current one doesn't do anything other than wasting time.
* | | fix(lsp): fix `nil`-index behavior for UTF-8 in `_str_*index_enc` methods ↵Rishikesh Vaishnav2021-12-20
| | | | | | | | | | | | | | | (#16731) Previously, the `_str_utfindex_enc` and `_str_byteindex_enc` helper functions would return `nil` when `offset_encoding == "utf-8"` and `index == nil`. Clearly, this doesn't reflect the expected behavior of the functions they're wrapping which would return the length of the line in this case. This should fix behavior with servers that use UTF-8 `offset_encoding` when applying text edits, formatting a range, and doing range code actions (though this isn't tested currently).
* | | Merge pull request #16727 from dundargoc/docs/remove-good-first-issue-suggestionJames McCoy2021-12-20
|\ \ \ | |/ / |/| | docs: stop suggestion "good first issue" as a good first issue
| * | docs: stop suggestion "good first issue" as a good first issueDundar Göc2021-12-19
|/ / | | | | | | | | They're simply too difficult and too niche for an actual newcomer to solve them. Instead, use the "complexity:low" as a substitute.
* | chore(build): add option to disable Lua bytecode compilation (#16722)Gregory Anders2021-12-19
| | | | | | | | | | Include a build option to explicitly disable Lua bytecode compilation. This is needed in some situations where the existing checks are not sufficient (e.g. cross compilation).
* | fix(lsp): avoid attaching to unloaded buffers (#16723)Michael Lingelbach2021-12-19
| | | | | | | | | | | | | | | | | | | | | | Closes https://github.com/neovim/neovim/issues/16562 https://github.com/neovim/neovim/issues/16249 https://github.com/neovim/neovim/issues/16297 * buf_attach_client can be called on an unloaded buffer * on_attach will prematurely fail, while the language server client tracks this buffer as attached * The language server client will track this buffer as attached despite textDocument/didChange notifications not being sent to the server * Instead, check if the buffer is loaded and return early, warning via the lsp logger that buf_attach_client was called on an invalid buffer
* | Merge pull request #16657 from lewis6991/unused_warnBjörn Linse2021-12-19
|\ \ | |/ |/| chore(): suppress -Wunused-but-set-variable warns
| * chore: suppress -Wunused-but-set-variable warnsLewis Russell2021-12-19
| |
* | fix(build): check that LuaJIT has required modules for compilation (#16714)Gregory Anders2021-12-18
| | | | | | | | | | | | Apparently some installations of LuaJIT do not have the "jit.bcsave" module which is required for pre-compilation. Check that this module exists before using LuaJIT as luac and if it doesn't, skip compiling bytecode.
* | fix: update last cursor on first CursorMoved (#16698)Michael Lingelbach2021-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes https://github.com/neovim/neovim/issues/16625 https://github.com/neovim/neovim/issues/12923 The first defined CursorMoved autocommand will immediately fire if the cursor has previously moved upon definition of the autocommand. Plugins add dummy autocommands such as: ```lua autocmd CursorMoved * execute '' ``` to avoid this behavior. Instead, when defining a new CursorHold autocommand, force update the last cursor position. See https://github.com/vim/vim/issues/2053
* | build(deps): bump luajit to commit 1d20f33 (#16712)Christian Clason2021-12-18
| | | | | | fixes a bug with jit.bcsave on Windows (cf. #16631)
* | Merge pull request #16294 from zeertzjq/test-fewest-iterationJames McCoy2021-12-18
|\ \ | | | | | | test: require fewest number of main loop iterations possible
| * | test: require fewest number of main loop iterations possiblezeertzjq2021-11-15
| | | | | | | | | | | | | | | Change exc_exec to pcall_err to reduce one main loop iteration. No need to call poke_eventloop() unless after nvim_input().
* | | Merge pull request #16707 from jamessan/filter-out-testsJames McCoy2021-12-18
|\ \ \ | | | | | | | | test: allow excluding functional/unti tests using TEST_FILTER_OUT
| * | | test: allow excluding functional/unit tests using TEST_FILTER_OUTJames McCoy2021-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Although this can already be done using `BUSTED_ARGS`, it complements our existing shortcut of `TEST_FILTER.` [skip ci]
* | | | fix(build): check for empty value of LUAC_PRG (#16711)Gregory Anders2021-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If the LUAC_PRG environment variable is defined, but empty, compilation would still be attempted but would be malformed. This results in garbage bytes being included. Fix this by checking that LUAC_PRG is both defined *and* non-empty.
* | | | fix(build): install luajit modules on windows (#16658)kylo2522021-12-18
| | | |
* | | | vim-patch:8.2.3843: dep3patch files are not recognized (#16700)Christian Clason2021-12-18
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Dep3patch files are not recognized. Solution: Recognize dep3patch files by their location and content. (James McCoy, closes vim/vim#9367) https://github.com/vim/vim/commit/647ab4cede4dbf412d24748f8e0a64d1cb9239f4
* | | | feat(tui): add error logging (#16615)erw72021-12-18
| | | |
* | | | feat(runtime): new checkhealth filetype (#16660)matveyt2021-12-18
|/ / /
* | | autocmd: RecordingEnter, RecordingLeave (#16684)Gregory Anders2021-12-18
|\ \ \ | |_|/ |/| |
| * | test(old): change usage of Q to gQAxel Dahlberg2021-12-18
| | | | | | | | | | | | | | | | | | test(old) fix Test_ex_mode_count_overflow test(old) change usage of Q to gQ
| * | docs(autocmd): update docs to match implementationThomas Vigouroux2021-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | docs(reg_recorded): add links to relevant docs docs(Recording): update docs to match implementation docs(Q) update references of Q to be gQ docs(autocmd) add description about state of reg_record{ing,ed} for RecordingLeave docs(vim_diff) add Recording{Enter,Leave} to features docs(index) removed duplicate gQ docs(options) removed line about gQ erroring in visual mode Update runtime/doc/vim_diff.txt Co-authored-by: zeertzjq <zeertzjq@outlook.com> docs(vim_diff) removed double mention of Q
| * | feat(autocmd): add Recording autocmdsThomas Vigouroux2021-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | feat(eval): add reg_recorded() This function is used the get the last recorded register. style(Recording): rename handler to match suggestions fix(RecordingLeave): send autocommand earlier This makes the autocommand fire just before setting reg_recorded to reg_recording, this way we clearly show that we are actually just before actually quitting the recording mode.
* | | fix(diagnostic): respect "if_many" source option for virtual text (#16653)Gregory Anders2021-12-17
| | | | | | | | | | | | | | | | | | | | | | | | The `prefix_source` function only evaluates the sources from the diagnostics passed to it; however, because each namespace draws its own virtual text, its diagnostics will never contain more than a single source (by definition). This requires changing the semantics of what "if_many" means from "multiple sources in a single 'batch' of diagnostics" to "multiple sources of all diagnostics within a buffer".
* | | fix(lsp): correctly align start and end range to codepoints during ↵Rishikesh Vaishnav2021-12-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | incremental sync (#16670) Closes #16624 Fixes two issues with aligning the start position and end position to codepoints when calculating the start and end range. When aligning the start position: * use aligned byte index to calculate character index rather than the unadjusted byte When aligning the end position: * do not adjust the end byte if it falls on a UTF-8 codepoint * align byte to the first byte of the next codepoint rather than the last byte of the current codepoint * compute character character end range on the aligned byte index This commit also adds additional test coverage, including multibyte operations that previously failed before this commit.
* | | fix(lsp): call config on_exit handler before context is cleared (#16638)Gregory Anders2021-12-17
| | | | | | | | | | | | | | | | | | The on_exit handler provided to the client configuration is called after the client's context is cleared (e.g. which buffers the client was attached to). Calling the handler sooner allows these handlers to access the client object and do their own cleanup with the full context.
* | | Merge pull request #16681 from zeertzjq/vim-8.2.3825James McCoy2021-12-17
|\ \ \ | |/ / |/| | vim-patch:8.2.3825: various comments could be improved