ale/autoload/ale
Magnus Groß d93bc2baf7
Use native virtual-text for vim9 (#4281)
Our current virtual text implementation for vim emulates it by abusing
the textprop and popupwin feature from vim 8.2 (for more details see
commit 708e810414).
This implementation sometimes is janky, for example the popups may leak
into other vim windows next to the current window.

Luckily, vim just got native virtual-text support as a proper subtype to
the prop_add() function. By using the 'text' option, the text property
automatically becomes virtual text that is appended to the current line
if col is zero.

Note that the prop_add() method now returns negative IDs for virtual
text properties.

This feature was added in vim 9.0.0067, but it got a lot of bugfixes
which is why we only use this new API if vim has at least version
9.0.0214.
However, there are still some minor bugs with vim's native virtual text,
so we might have to bump the version check again in the future.

Also see #3906.

Now with proper virtual text support for both vim and neovim available,
we can tackle #2962 in the future by simply tracking multiple virt-texts
instead of just the last one.

In the future we might also want to disable our virtual text emulation
support for vim, as it is a total hack, but for now we should keep it
for backwards compatibility.
2022-08-23 20:22:14 +09:00
..
completion Close #1162 - Implement completion support with LSP servers 2018-04-22 12:28:19 +01:00
engine Add g:ale_disable_lsp and b:ale_disable_lsp to disable linters powered by LSP 2019-03-30 15:29:17 +09:00
fix Add support for syntax_tree fixer (#4268) 2022-08-09 21:11:20 +09:00
fixers Add support for syntax_tree fixer (#4268) 2022-08-09 21:11:20 +09:00
gradle Kotlin and general Gradle support. (#745) 2017-07-10 23:03:36 +01:00
handlers Add openscad and sca2d support (#4205) 2022-08-07 16:27:17 +09:00
lsp Add ALEGoToImplementation (#4160) 2022-04-30 12:28:26 +09:00
uri Fix test for echoing messages 2022-04-01 14:35:07 +01:00
ant.vim Close #2281 - Separate cwd commands from commands 2021-03-01 20:11:10 +00:00
args.vim Add a function for parsing command args 2019-02-07 18:10:34 +00:00
assert.vim #3633 - Move linter tests into test/linter 2021-03-21 00:25:33 +00:00
balloon.vim Close #2727 - Add a hover-only setting for balloons 2020-11-21 20:12:09 +00:00
c.vim fix: cflags parser: no absolute path for '-include' (#3775) 2021-07-04 21:27:55 +09:00
code_action.vim Add eclipselsp jdt:// support for textDocument/definition (#4030) 2022-03-04 19:03:27 +00:00
codefix.vim Add CodeAction codeActionLiteralSupport Feature (#4163) 2022-04-29 22:17:29 +09:00
command.vim Close #2281 - Separate cwd commands from commands 2021-03-01 20:11:10 +00:00
completion.vim Fix 4249 - Revert change to stop compl menu. (#4250) 2022-07-14 07:25:42 +09:00
cursor.vim Fix 4141 - Stop press enter prompt on long diagnostic messages (#4144) 2022-04-06 10:51:07 +09:00
d.vim Remove otherproject#util#Double from d.vim 2019-04-13 07:59:01 +02:00
debugging.vim Fix test for echoing messages 2022-04-01 14:35:07 +01:00
definition.vim Add ALEGoToImplementation (#4160) 2022-04-30 12:28:26 +09:00
dhall.vim addressing missing docs + cleaning up older Dhall files 2020-09-14 10:13:11 +07:00
engine.vim Fix end line number when it exceeds the file (#4130) 2022-04-01 17:13:27 +09:00
events.vim Add eclipselsp jdt:// support for textDocument/definition (#4030) 2022-03-04 19:03:27 +00:00
filename_mapping.vim Close #2556 - Support filename mapping 2020-08-23 19:55:42 +01:00
filerename.vim ALEFileRename command added. (#4012) 2021-12-17 08:09:26 +09:00
filetypes.vim Fix breakage w/ plugins that inadvertently trigger ALE in `execute()` (#3719) 2021-06-19 11:56:43 +01:00
fix.vim Fix test for echoing messages 2022-04-01 14:35:07 +01:00
floating_preview.vim Allow customization of all floating window borders (#4215) 2022-05-27 13:41:06 +09:00
go.vim Make staticcheck configurable with GOPATH detection 2021-05-27 22:03:46 +01:00
gradle.vim Close #2281 - Separate cwd commands from commands 2021-03-01 20:11:10 +00:00
highlight.vim Initialize hl-groups correctly if virtual text is loaded first (#3960) 2021-12-09 23:21:39 +09:00
history.vim #1524 - Define global variables where they are needed 2018-05-28 19:19:20 +01:00
hover.vim fix #4276: honor b:ale_enabled for hover at cursor (#4277) 2022-08-18 06:34:34 +09:00
java.vim Feature/add ant support (#2539) 2019-06-03 20:30:18 +01:00
job.vim Prevent buffering of job output and excessive polling (#4259) 2022-07-26 17:56:12 +09:00
julia.vim Fix other warnings 2018-09-08 16:05:34 -04:00
linter.vim Close #4201 - Run vimls from Vader by default 2022-05-13 18:00:19 +01:00
list.vim Treat ale_open_list integer values as thresholds (#4050) 2022-02-04 17:56:48 +00:00
loclist_jumping.vim Fix #1317 - Jump to column 1 for problems at column 0 2019-05-17 22:08:03 +01:00
lsp.vim Add ALEGoToImplementation (#4160) 2022-04-30 12:28:26 +09:00
lsp_linter.vim Add eclipselsp jdt:// support for textDocument/definition (#4030) 2022-03-04 19:03:27 +00:00
lsp_window.vim Mention the disabled option for message severity 2019-10-18 16:22:17 +01:00
maven.vim Close #2281 - Separate cwd commands from commands 2021-03-01 20:11:10 +00:00
node.vim Enable gopls by default with GOPATH detection 2021-05-26 22:43:33 +01:00
organize_imports.vim Dispatch textDocument/didChange after rename (2) (#4049) 2022-02-08 20:07:39 +09:00
other_source.vim #2017 Add support for display results from other sources 2018-10-29 18:28:28 +00:00
path.vim Add eclipselsp jdt:// support for textDocument/definition (#4030) 2022-03-04 19:03:27 +00:00
pattern_options.vim Fix #1619 - Rewrite lint on enter events so they behave better 2018-07-17 00:18:34 +01:00
powershell.vim Linter for powershell syntax errors (#2413) 2019-04-13 12:24:56 +01:00
preview.vim When repeating selections, jump to the last selected item 2021-06-29 11:53:11 +01:00
python.vim Look for .mypy.ini when finding project root (#4202) 2022-05-15 12:20:16 +09:00
racket.vim racket: support racket-langserver lsp (#3808) 2021-07-20 10:02:23 +09:00
references.vim Add eclipselsp jdt:// support for textDocument/definition (#4030) 2022-03-04 19:03:27 +00:00
rename.vim Dispatch textDocument/didChange after rename (2) (#4049) 2022-02-08 20:07:39 +09:00
ruby.vim Move ale#handlers#ruby#EscapeExecutable to ale#ruby#EscapeExecutable 2019-08-13 01:52:13 -04:00
semver.vim #2132 - Replace command_chain and chain_with with ale#command#Run 2019-04-07 14:58:06 +01:00
sign.vim Fix 3801 - Add ALEDummySign some width. (#3832) 2021-07-21 18:25:41 +09:00
socket.vim Feature: Add support for named-pipe sockets for LSPs (#3509) 2021-01-26 20:43:17 +00:00
statusline.vim Update syntax checking 2019-02-06 18:05:13 +00:00
swift.vim apple-swift-format: linter and fixer with config swiftpm support (#3671) 2021-04-07 19:34:34 +09:00
symbol.vim Add eclipselsp jdt:// support for textDocument/definition (#4030) 2022-03-04 19:03:27 +00:00
test.vim Add neovim 0.6 to run-tests (#3998) 2022-04-01 13:17:15 +01:00
toggle.vim Fix test for echoing messages 2022-04-01 14:35:07 +01:00
uri.vim Add eclipselsp jdt:// support for textDocument/definition (#4030) 2022-03-04 19:03:27 +00:00
util.vim Fix test for echoing messages 2022-04-01 14:35:07 +01:00
virtualtext.vim Use native virtual-text for vim9 (#4281) 2022-08-23 20:22:14 +09:00