| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
- not necessary on master: got lost in the vim.lsp.diagnostic => vim.diagnostic migration
- fix tests which accidentally depended on previous session
- ref #15504
|
|
|
|
|
|
| |
- Fix the cursor position after applying TextEdits
- Support reversed range of TextEdit
- Invoke nvim_buf_set_text one by one
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Since the `State` is global, other scripts are unexpectedly affected during the
'inccommand' preview. This commit introduces a new flag for `do_cmdline`, in
order to ignore trailing '|'-separated commands only for the command invoking
the preview.
fix #8796, update #7494
Co-authored-by: itchyny <itchyny@hatena.ne.jp>
|
|
|
|
|
|
| |
Fix relative floating windows so that they open in the correct position
relative to each other. Also make sure that their positions are correct
immediately after creation without a redraw.
|
|
|
|
|
| |
The test added in 274a3504a790a799b28ee89c75e29fb4dbdff41f
does not fail if the code changes are reverted.
|
|
|
|
|
|
| |
Resolve an issue with deferred clearing of highlight failing if the
buffer is deleted before the timeout by checking whether the
buffer is valid first.
|
|
|
|
| |
Fix #15313
|
|
|
|
| |
minimal style
|
|
|
|
|
|
| |
clear_namespace
fixes #15212
|
|
|
|
|
|
|
|
|
|
| |
It's possible for weirdness to happen if curbuf is modified while
sourcing from it via :source (with no arguments). For example:
- Deleting lines from or wiping curbuf can cause internal error E315 to
be thrown from ml_get.
- Changing the curbuf to another buffer while sourcing can cause lines
from the new curbuf to then be sourced instead.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
Anonymous :source (no args) and nvim_exec() don't support Vimscript line continuations.
Solution:
Factor out the concat logic into concat_continued_line() and a
CONCAT_CONTINUED_LINES macro for simple concatenations where lines are
fetched individually.
Closes #14807
|
| |
|
|
|
|
|
| |
- ref #14083 #15251
- also: docs: naming conventions
|
|
|
|
|
|
|
|
|
| |
Analogous to nodejs's `on('data', …)` interface, here on_key is the "add
listener" interface.
ref 3ccdbc570d85 #12536
BREAKING_CHANGE: vim.register_keystroke_callback() is now an error.
|
|
|
|
| |
Fixes #15522
|
|
|
|
| |
Memory compression could complicate the measurements.
|
|
|
|
|
|
|
|
|
|
| |
Options formatted as a list of comma-separated key-value pairs may have
values that contain leading and trailing whitespace characters. For
example, the `listchars` option has a default value of
`"tab:> ,trail:-,nbsp:+"`. When converting this value to a lua table,
leading and trailing whitespace should not be trimmed.
Co-authored-by: Robert Hrusecky <robert.hrusecky@utexas.edu>
|
| |
|
|\
| |
| | |
[release-0.5] Revert "tests: unit: fix preprocess: pass -m32 for 32bit ABI (#11073)"
|
| |
| |
| |
| |
| |
| |
| | |
This reverts commit ed11721b6bb36042ab065b5045c8eb01115b8902.
It broke multiple 32-bit builds and isn't actually required for building
in a true x86 32-bit environment.
|
|\|
| |
| | |
[release-0.5] test(lsp): disable finicky test when TEST_SKIP_FRAGILE is set
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This release represents ~4000 commits since v0.4.4, the previous
non-maintenance release. Highlights include builtin support for LSP, new APIs
for extended marks (with byte resolution tracking of changes) and buffer
decorations, as well as vast improvements to lua as a plugin and configuration
language. Experimental support for tree-sitter as a syntax engine is also
included, building on the new core APIs for byte tracking and decorations.
FEATURES:
New API functions:
nvim_exec: execute multiline vim script blocks
nvim_get_hl_id_by_name: Gets a highight definition by name
nvim_exec_lua: new name for nvim_execute_lua
nvim_notify: Notify the user with a message
nvim_get_runtime_file: Find files in runtime directories
nvim_get_all_options_info: Get option information for all options
nvim_get_option_info: Get option information for one option
nvim_echo: Echo a message with highlights
nvim_open_term: Open a virtual terminal in a buffer
nvim_chan_send: send data to a channel. (like chansend() but supports lua strings)
nvim_set_decoration_provider: callback driven decoration API for a namespace
nvim_buf_set_text: Set/replace a character range in a buffer
nvim_buf_delete: Delete the buffer. |:bwipeout|
nvim_buf_get_extmark_by_id: Returns position for a given extmark id.
nvim_buf_get_extmarks: get extmarks in traversal order.
nvim_buf_set_extmark: Creates or updates an extmark.
nvim_buf_del_extmark: Removes an extmark.
nvim_buf_call: call a function with buffer as temporary current buffer
nvim_win_hide: Closes the window and hide the buffer it contains |:hide|
nvim_win_call: Calls a function with window as temporary current window.
New UI events:
redraw.screenshot
redraw.win_viewport
Lua:
767cd8b17 #12235 startup: add init.lua as an alternative user config
687eb0b39 #14686 feat(startup): Source runtime/plugin/**/*.lua at startup
#14686 runtime: allow lua in various runtime search paths such as
syntax/ ftdetect/ indent/ ftplugin/ compiler/ colors/
43956dea5 #13479 lua: Add vim.opt and fix scopes of vim.o
1407899c3 #12268 lua: Add buffer, window and tab accessors
be662fe5c lua: vim.wait implementation
2b663c061 #14213 viml: embed Lua syntax highlighting
901dd79f6 feat: add completion to ':lua'
82688973 lua: complete methods in metatables
342148525 runtime: propagate lua parsing errors while using "require"
aaca2c1c4 #13276 feat(lua): improve error message to make it actionable
c60c7375f startup: handle autoload and lua packages during startup
3ccdbc570 #12536 lua: add vim.register_keystroke_callback
971a191c4 lua: Add ability to pass lua functions directly to vimL
91e41c857 #12401 lua: add vim.highlight.range
f2894bffb #12279 lua: Add highlight.on_yank
ae5bd0454 #11969 lua: add tbl_deep_extend
ea4127e9a lua: metatable for empty dict value
dab40f43b Add v:lua.func() vimL syntax for calling lua
678a51b1d Lua: vim.validate()
474d0bcbf lua: vim.rpcrequest, vim.rpcnotify, vim.NIL
8ee7c94a9 lua: add vim.fn.{func} for direct access to vimL function
d0d38fc36 #11442 Lua: vim.env, vim.{g,v,w,bo,wo}
Tree-sitter:
Note: tree-sitter is considered experimental for 0.5. There's remaining
bugs for buffer parsing, as well as known performance issues for
large files and injected (nested) languages.
e93342629 #10124 Tree-sitter API for lua
440695c29 tree-sitter: implement query functionality and highlighting prototype
8bea39f37 feat(treesitter): allow injections to be configured through directives
929f19414 feat(treesitter): add offset predicate for language injection
cd75d3289 #14200 feat: treesitter checkhealth
1a631026a feat(treesitter): add language tree
d3f544002 treesitter: runtime queries
3c5141d2c #13008 treesitter: add string parser
9437327d5 treesitter: use new on_bytes interface
e4b5efa51 treesitter: use decoration provider API
d6209a7b8 fix: Add a test and it is so pretty
836c31032 feat(ts): bump tree-sitter to v0.20.0
LSP client:
00dc12c5d #11336 lua LSP client: initial implementation
d5aaad14e #11430 Followup improvements to LSP
ee7ac469c #11578 LSP: Use async completion for omnifunc.
070bd3ea2 #11604 LSP: shrink API, improve docs
25afa10f9 #11669 Merge 'LSP: differentiate diagnostic underline by severity'
e956ea767 #11777 LSP: show diagnostic in qf/loclist
dd8b29cfe #11838 LSP: set InitializeParams.rootPath value
0c5d2ffeb #11837 Merge 'LSP: fixes, improve test visibility'
ca8699378 #11638 LSP: implement documentHighlight
220a2b05c LSP/references: Add context to locations returned by server
ccb038dc6 LSP/completion: add textEdit support
da6f38ab3 #12313 LSP: Add workspace.applyEdit client capabilities
f559e5249 #11607 LSP: Add textDocument/codeAction support
0d83a1c43 #12638 LSP: Feature/add workspace folders
fd507e278 #13641 LSP: window/showMessageRequest
e467d2939 LSP: Move workspace/configuration handler from nvim-lspconfig to core
2bdd553c9 feat(lsp): Add codelens support
UI:
f8134f2fd screen.c: remove fold_line special case
c146eddc8 experimental support for per-window color schemes
a1508c9f6 nvim__screenshot (dump TUI state to file)
08fe10010 terminal: enable pass through indexed colors to TUI in rgb mode
5a8569942 tests/ui: make screen.lua use "linegrid" representation internally
8fe19d9d8 screen: make ui_compositor aware of the intended size of a float
54ce1010e extmark: add new flexible "decorations" abstraction
4781333a7 decorations: allow virt_text overlay at any column
bdebe8516 decorations: use extmark column adjustments for buffer highlights
7b488314d decorations: Allow highlights beyond end of line hl_eol
425bc438a decorations: add additional styling of virt_text overlays
edb5864a2 floats: z-index
243820ebd floats: add borders (MS-DOS MODE)
5b6edc852 feat(float): add rounded borders preset
4a36ec6da #14310 float: add "solid" border style
vim patches:
around ~1000 vim patches and runtime updates got merged. Hooray!
Changes include improvements to quickfix, prompt buffers, incsearch,
display of search counts, and much much more.
various features and changes:
858c05613 #12809 Support for :perl, :perlfile, :perldo and perleval()
bc86f76c0 api/buffer: add "on_bytes" callback to nvim_buf_attach
19b623708 jobstart now supports env/clear_env
ef7c6b972 Support specifying "env" option for termopen()
7c4f34966 #13287 switch from travis to github actions
24db59ca8 feat: implement BufModified autocmd
b83d8223f implement Scroll autocommand
8caf84130 Lower "closed by the client" message level to INFO
7de276b87 bump libvterm to 0.1.4
097ec71bd #14096 aarch64/linux: fix build by updating LuaJIT
bd5f0e969 #12531 support autoread using tui focus tracking
8a1276005 #12382 Add v:event.visual during `TextYankPost`
802f8429d api(nvim_open_win): add "noautocmd" option
FIXES:
21444552c BugFix(clipboard): Fix block paste not working properly
01493e799 #14413 api: fix nvim_exec() silencing behaviour
9699f3be1 fix(doc): Add '/site' to stdpath('data') example in `:help 'rtp'`
581b2bcde screen: fix problem with p_ch
eae4b1e5c luaref: fix leaks for global luarefs
409b2711f fix: segfault when pasting in term with empty buffer
cf6c23fb0 #14273 fix plenty of errors discovered by clang
21035cff9 #14500 fix plenty of errors discovered by coverity
bca19138b #13987 tui: fix possibility of evaluating uninitialized variables
9f2335937 fix_cursor: do not change line number when edit will not impact cursor row
33f92fe02 fix(pty): Always use $TERM from the job's env dict
6249059d4 checkhealth: fix terminfo problems on Windows
397be5d38 #12811 UI: fix cursor not displayed after hiding and un-hiding
87afc9031 screen.c: fix an issue with wrap and folds
b419e39a2 screen.c: fix last character on foldtext
2ea312769 #13688 screen.c: fix display of signcolumn=auto in diffs
c2d288e29 Fix screen terminal family issues
314b222c2 #14127 Fix click on foldcolumn with vsplit
e65d0e53b vim.fn: throw error when trying to use API function
|
|\
| |
| | |
fix(api/win_get_config): include z-index
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Ensure that
* Shell uses UTF8 input/output mode
* Stderr output is captured, in UTF8
* Program exit codes are correctly captured
Update functional test harness and add tests
for :make command.
Closes #13713
|
|\ \
| | |
| | | |
Refactor(tests): Use os commands in mkdir_p helper
|
| | | |
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| |
| | |
Problem: The wininfo list may contain stale entries.
Solution: When closing a window remove any other entry where the window
pointer is NULL.
https://github.com/vim/vim/commit/4882d983397057ea91c584c5a54aaccf15016d18
|
|\ \
| | |
| | | |
An assortment of various vim.opt fixups.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This closes #14677, but I also am a little unsure if there are times
where this may not be correct. However, this just changes the behavior
that even if `was_set` was false, we still get for
`nvim_win_get_option`.
|
| | | |
|
|\ \ \
| |/ /
|/| | |
Extmarks: manually zero out `curbuf->deleted_bytes2` on substitute and join
|
| | | |
|
| | |
| | |
| | |
| | | |
too old now, can be confusing
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Add buffer information to tabline_update
Most terminal implementations of the tabline display buffer and tab
information. Many neovim-qt users disable GuiTabline because it lacks
functionality provided in the terminal implementation.
The tabline_update event should include buffer information too, so client GUIs
can display rich useful tabs.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Can modify a:000 when using a reference.
Solution: Make check for locked variable stricter. (Ozaki Kiichi,
closes vim/vim#3930)
https://github.com/vim/vim/commit/05c00c038bc16e862e17f9e5c8d5a72af6cf7788
|
| | |
| | |
| | |
| | |
| | |
| | | |
It is wrong to assume that you can't shorten a path if it's in `/`: you
can always shorten it by removing the forward slash.
Closes #14512
|
| | | |
|
|\ \ \
| | | |
| | | | |
fix(runtime): Fix bugs regarding lua runtime files
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It's happening because do_source is only expected to return FAIL when it
was unable to open file . But `nlua_exec_file` returns fail for parsing
and execution error too . Those errors are emitted through `nlua_error`.
So now return value of nlua_exec_file is ignored like do_cmdline. It now
only returns fail when it was unable to open file that check is done
before calling nlua_exec_file or do_cmdline. Errors in nlua_exec_file
are still directly emitted through nlua_error like before.
|