aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* vim-patch:9.0.1182: go checksum files are not recognized (#21758)Christian Clason2023-01-12
| | | | | | | | | Problem: go checksum files are not recognized. Solution: Add the name of go checksum files. (Amaan Qureshi, closes vim/vim#11803) https://github.com/vim/vim/commit/043d7b2c84cda275354aa023b5769660ea70a168 Co-authored-by: Amaan Q <amaanq12@gmail.com>
* fix(lsp): revert semantic token gravity change from #21574 (#21763)jdrouhard2023-01-12
|
* docs(lsp): update buf_notify and rpc.notify params types (#21753)Chris Kipp2023-01-11
| | | | | | | | Small, but I was getting warnings about my usage of `vim.lsp.buf_notify(bufnr, method, {example = example})` since the docs say that `params` must be a string, however this can really be anything when it's passed to `rpc.notify` since we just end up calling `vim.json.encode(payload)` on it. This fixes the docs in those two places and regenerates them.
* vim-patch:9.0.1176: smithy files are not recognized (#21751)Christian Clason2023-01-11
| | | | | | | | | Problem: smithy files are not recognized. Solution: Add a pattern for Smithy files. (Chris Kipp, closes vim/vim#11804) https://github.com/vim/vim/commit/f68cddabffcbc5b8fbfe9003182cb4b55ff8d72c Co-authored-by: Chris Kipp <ckipp@pm.me>
* ci(tsan): run functionaltests instead of oldtests (#21744)zeertzjq2023-01-11
| | | | With TUI as an external process oldtests no longer involve threads, so TSAN isn't useful. Meanwhile functionaltests may involve threads.
* Merge pull request #21706 from bfredl/notermiosbfredl2023-01-11
|\ | | | | refactor(pty): remove old logic for inheriting termios from host terminal
| * refactor(pty): remove old logic for inheriting termios from host terminalbfredl2023-01-10
| |
* | ci: remove ci/snap (#21743)dundargoc2023-01-11
| | | | | | Context: https://github.com/neovim/neovim/pull/21166#issuecomment-1377623160
* | fix(statuscolumn): fix sign column highlights (#21727)luukvbaal2023-01-11
| | | | | | Resolve #21726.
* | vim-patch:9.0.1172: when 'selection' is "exclusive" then "1v" is one char ↵zeertzjq2023-01-11
| | | | | | | | | | | | | | | | | | | | | | | | short (#21735) Problem: When 'selection' is "exclusive" then "1v" is one char short. Solution: Add one character when 'selection' is "exclusive. (closes vim/vim#11791) https://github.com/vim/vim/commit/79c11e399be3d96ed6d1c7458b1380e878ec717b Cherry-pick update_curswant_force() refactor from patch 9.0.0482. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* | vim-patch:9.0.1171: screen is not redrawn after using setcellwidths() (#21730)zeertzjq2023-01-11
| | | | | | | | | | | | | | Problem: Screen is not redrawn after using setcellwidths(). Solution: Redraw the screen when the cell widths have changed. (Yasuhiro Matsumoto, closes vim/vim#11800) https://github.com/vim/vim/commit/2bc849ff811059d25310399f982c6706faa7eb35
* | vim-patch:9.0.1174: smali files are not recognized (#21734)Amaan Qureshi2023-01-10
| | | | | | | | Problem: Smali files are not recognized. Solution: Add a pattern for Smali files. (Amaan Qureshi, closes vim/vim#11801)
* | build: use modern cmake (#21589)dundargoc2023-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace old-school cmake with the so-called "Modern CMake", meaning preferring using targets and properties over directory settings and variables. This allows greater flexibility, robustness and clarity over how the code works. The following deprecated commands will be replaced with their modern alternatives that operates on a specific target, rather than all targets in the current directory: - add_compile_options -> target_compile_options - include_directories -> target_include_directories - link_libraries -> target_link_libraries - add_definitions -> target_compile_definitions There are mainly four main targets that we currently use: nvim, libnvim, nvim-test (used by unittests) and ${texe} (used by check-single-includes). The goal is to explicitly define the dependencies of each target fully, rather than having everything be dependent on everything else.
* | fix(statuscolumn): fix crashes and clang/PVS warnings (#21725)zeertzjq2023-01-10
| |
* | feat(float): open float relative to mouse #21531Sebastian Lyng Johansen2023-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: No easy way to position a LSP hover window relative to mouse. Solution: Introduce another option to the `relative` key in `nvim_open_win()`. With this PR it should be possible to override the handler and do something similar to this https://github.com/neovim/neovim/pull/19481#issuecomment-1193248674 to have hover information displayed from the mouse. Test case: ```lua local util = require('vim.lsp.util') local function make_position_param(window, offset_encoding) window = window or 0 local buf = vim.api.nvim_win_get_buf(window) local row, col local mouse = vim.fn.getmousepos() row = mouse.line col = mouse.column offset_encoding = offset_encoding or util._get_offset_encoding(buf) row = row - 1 local line = vim.api.nvim_buf_get_lines(buf, row, row + 1, true)[1] if not line then return { line = 0, character = 0 } end if #line < col then return { line = 0, character = 0 } end col = util._str_utfindex_enc(line, col, offset_encoding) return { line = row, character = col } end local make_params = function(window, offset_encoding) window = window or 0 local buf = vim.api.nvim_win_get_buf(window) offset_encoding = offset_encoding or util._get_offset_encoding(buf) return { textDocument = util.make_text_document_params(buf), position = make_position_param(window, offset_encoding), } end local hover_timer = nil vim.o.mousemoveevent = true vim.keymap.set({ '', 'i' }, '<MouseMove>', function() if hover_timer then hover_timer:close() end hover_timer = vim.defer_fn(function() hover_timer = nil local params = make_params() vim.lsp.buf_request( 0, 'textDocument/hover', params, vim.lsp.with(vim.lsp.handlers.hover, { silent = true, focusable = false, relative = 'mouse', }) ) end, 500) return '<MouseMove>' end, { expr = true }) ```
* | vim-patch:1b5f03ec9c55 (#21715)Christian Clason2023-01-10
|/ | | | | | | | Update runtime files https://github.com/vim/vim/commit/1b5f03ec9c5551047d5de8d845541dd3201abe7c Co-authored-by: Bram Moolenaar <Bram@vim.org>
* fix(ui): set stc to empty in floatwin with minimal style (#21720)Raphael2023-01-10
| | | fix(ui): set stc to emtpy in floatwin with minimal style
* test(statuscolumn): add more tests for wrapped lines (#21718)zeertzjq2023-01-10
| | | | | | test(statuscolumn): add more tests more wrapped lines Also initialize a "relnum" variable to suppress a Coverity warning. The uninitialized value wasn't actually used by build_statuscol_str().
* refactor: replace char_u with char 19 (#21241)dundargoc2023-01-10
| | | | | * refactor: replace char_u with char Work on https://github.com/neovim/neovim/issues/459
* docs: add 'statuscolumn' docstrings (#21717)luukvbaal2023-01-10
|
* vim-patch:partial:9.0.1166: code is indented more than necessary (#21716)zeertzjq2023-01-10
| | | | | | | | | | | | | | | | | | | | | | Problem: Code is indented more than necessary. Solution: Use an early return where it makes sense. (Yegappan Lakshmanan, closes vim/vim#11792) https://github.com/vim/vim/commit/1cfb14aa972ccf3235ac67f07b7db1175b7c5384 Partial port as some highlight.c changes depend on previous patches. Cherry-pick fname_match() change from patch 8.2.4959. Omit internal_func_check_arg_types(): only used for Vim9 script. N/A patches for version.c: vim-patch:9.0.1167: EditorConfig files do not have their own filetype Problem: EditorConfig files do not have their own filetype. Solution: Add the "editorconfig" filetype. (Gregory Anders, closes vim/vim#11779) https://github.com/vim/vim/commit/d41262ed06564cef98a3800e2928e6e0db91abbf Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* feat(ui): add 'statuscolumn' optionluukvbaal2023-01-09
| | | | | | | | Problem: Unable to customize the column next to a window ('gutter'). Solution: Add 'statuscolumn' option that follows the 'statusline' syntax, allowing to customize the status column. Also supporting the %@ click execute function label. Adds new items @C and @s which will print the fold and sign columns. Line numbers and signs can be clicked, highlighted, aligned, transformed, margined etc.
* refactor: replace char_u with char 18 (#21237)dundargoc2023-01-09
| | | | | refactor: replace char_u with char Work on https://github.com/neovim/neovim/issues/459
* Merge pull request #21704 from bfredl/nofreebfredl2023-01-09
|\ | | | | fix(rpc): don't free args on error in rpc_send_event
| * fix(rpc): don't free args on error in rpc_send_eventbfredl2023-01-09
| | | | | | | | | | fixup #21631 fixes #21690
* | refactor: replace char_u with char 17 - remove STRLCPY (#21235)dundargoc2023-01-09
|/ | | | | refactor: replace char_u with char Work on https://github.com/neovim/neovim/issues/459
* Merge pull request #21702 from glepnir/fix_2bfredl2023-01-09
|\ | | | | fix(api): convert title_pos string in nvim_win_get_config
| * fix: use enum typeRaphael2023-01-09
| |
| * fix: formatRaphael2023-01-09
| |
| * fix(ui): add test caseRaphael2023-01-09
| |
| * fix(ui): convert title_pos string in nvim_win_get_configRaphael2023-01-09
| |
* | Merge pull request #21675 from bfredl/nonstdiobfredl2023-01-09
|\ \ | | | | | | fix(embed): handle stdio in server properly
| * | fix(embed): handle stdio in server properlybfredl2023-01-09
| |/ | | | | | | | | Rename stdin/stdout in the server, so that RPC data won't get corrupted. This also restores the use of stderr to write directly to the terminal.
* | Merge pull request #21488 from dundargoc/refactor/char_u/16.1zeertzjq2023-01-09
|\ \ | | | | | | refactor/char u/16.1
| * | test: add more tests for Unicodezeertzjq2023-01-09
| | |
| * | refactor: replace char_u with chardundargoc2023-01-09
|/ / | | | | | | Work on https://github.com/neovim/neovim/issues/459
* / test(tui_spec): doesn't use Unicode in cursor_address test (#21703)zeertzjq2023-01-09
|/ | | Using Unicode makes the test flaky because of #16245.
* test(tui_spec): improve cursor_address test (#21700)zeertzjq2023-01-09
|
* vim-patch:9.0.1158: code is indented more than necessary (#21697)zeertzjq2023-01-09
| | | | | | | | | | | Problem: Code is indented more than necessary. Solution: Use an early return where it makes sense. (Yegappan Lakshmanan, closes vim/vim#11787) https://github.com/vim/vim/commit/7f8b2559a30e2e2a443c35b28e94c6b45ba7ae04 Omit reset_last_used_map(): only used in Vim9 script. Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* dist: transpile cfilter.vim => cfilter.lua #21662TJ DeVries2023-01-08
| | | | Vim has changed cfilter.vim from vimscript to vim9script. Nvim supports only vimscript, not vim9script.
* Merge pull request #21678 from dundargoc/build/remove-old-workaroundsdundargoc2023-01-08
|\ | | | | build: remove old cmake workarounds that aren't necessary anymore
| * build: remove workaround for ancient clang versionsdundargoc2023-01-08
| | | | | | | | | | We don't need to support this as it's only required when using AddressSanitizer, meaning it only affects developers.
| * build: remove workaround for old luajit versionsdundargoc2023-01-08
| | | | | | | | | | | | Luajit version 2.1.0-beta3 was released 2017, there's no reason to use such an old version on macOS. Also, the version check doesn't work anymore as LUAJIT_VERSION seems to not be defined anywhere.
* | feat(lsp): show active clients in :checkhealth vim.lsp (#21670)Mathias Fußenegger2023-01-08
| | | | | | | | | | For users using vim.lsp.start it can be useful to get an overview of active client that is less verbose than a full `:lua =vim.lsp.get_active_clients()`
* | fix(lsp): partially revert semantic token gravity change from #21574 (#21680)jdrouhard2023-01-08
|/
* ci(news): checkout to HEAD commit instead of merge commit (#21679)dundargoc2023-01-07
| | | | | The default merge branch is unreliable when trying to determine number of commits in a PR. Using the HEAD branch of the PR removes this ambiguity.
* fix(editorconfig): do not highlight unknown properties as errors (#21673)Gregory Anders2023-01-07
| | | | | | | | | Other plugins may define their own custom properties outside of Neovim's builtin EditorConfig support. Instead of highlighting these unknown properties as errors, do not highlight them at all. This still differentiates between known and unknown properties, which helps to catch typos or mistakes, but does not use the garish "error" highlight that signals something is wrong.
* Merge pull request #21649 from gpanders/editorconfig-enableGregory Anders2023-01-07
|\ | | | | feat(editorconfig): allow editorconfig to be toggled dynamically
| * refactor(editorconfig)!: change editorconfig_enable to editorconfigGregory Anders2023-01-07
| |
| * feat(editorconfig): allow editorconfig to be toggled dynamicallyGregory Anders2023-01-07
|/ | | | | | | | | Rather than only check `editorconfig_enable` when the plugin is loaded, check it each time the autocommand fires, so that users may enable or disable it dynamically. Also check for a buffer local version of the variable, so that editorconfig can be enabled or disabled per-buffer.