Language servers can take some time to respond to the
`textDocument/hover` and `textDocument/signatureHelp` messages. During
that time, the user could have already moved to another buffer. The
popup was always shown in the current buffer, which could be a different
one than the buffer for which the request was sent.
This was particularly annoying when moving to a buffer with a `BufLeave`
autocmd, as that autocmd was triggered when the hover popup was shown
for the original buffer.
Ignoring the response from these 2 messages if they are for a buffer
that is not the current one leads to less noise. The popup will only be
shown for the buffer for which it was requested.
A more robust solution could involve cancelling the hover/signatureHelp
request if the buffer changes so the language server can free its
resources. It could be implemented in the future.
Problem: Edit test for mode message fails when using valgrind.
Solution: Use WaitForAssert(). Run beep test later.
c5382b667a
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Invalid memory access when using an expression on the command line.
Solution: Make sure the position does not go negative.
6046aded8d
N/A patches for version.c:
vim-patch:8.2.5149: cannot build without the +eval feature
Problem: Cannot build without the +eval feature. (Tony Mechelynck)
Solution: Add #ifdefs.
6689df024b
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: get(Fn, 'name') on funcref returns special byte code.
Solution: Use the printable name.
1ae8c262df
Cherry-pick printable_func_name() from patch 8.2.0149.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Several lines of code are duplicated.
Solution: Move duplicated code to a function. (Yegappan Lakshmanan,
closesvim/vim#5330)
f4140488c7
Using sizeof seems better than ARRAY_SIZE for vim_snprintf().
Problem: Linear tag search is not optimal.
Solution: Improve linear tag search performance. (Yegappan Lakshmanan,
closesvim/vim#9944)
b29b96806f
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: Linear tag search is a bit slow.
Solution: Remove a vim_ftell() call. (Yegappan Lakshmanan, closesvim/vim#9937)
8b530b3158
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: Coverity warning for refactored tag search code.
Solution: Avoid the warnings. Update comments. Add one more test case.
(Yegappan Lakshmanan, closesvim/vim#9928)
20fb28b1dc
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: The find_tags_in_file() function is too long.
Solution: Refactor into smaller functions. (Yegappan Lakshmanan,
closesvim/vim#9920)
bf40e90dfe
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: The binary tag search feature is always enabled.
Solution: Remove the #ifdefs. Add a few more tests. (Yegappan Lakshmanan,
closesvim/vim#9893)
655b734ee8
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: The find_tags_in_file() function is much too long.
Solution: Refactor into multiple smaller functions. (Yegappan Lakshmanan,
closesvim/vim#9892)
df1bbea436
Cherry-pick Test_tag_file_encoding() changes from patch 8.2.1432.
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: The find_tags() function is much too long.
Solution: Refactor the function. (Yegappan Lakshmanan, closesvim/vim#9869)
2f87a99b6e
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: When a tags file line is long a tag may not be found.
Solution: When increasing the buffer size read the same line again.
f8e9eb8e17
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Clinical Quality Language files are not recognized.
Solution: Add the "*.cql" pattern. (Matthew Gramigna, closesvim/vim#11452)
12babe45a3
Co-authored-by: mgramigna <mgramigna@mitre.org>
This function accepts a path to a file and prompts the user if the file
is trusted. If the user confirms that the file is trusted, the contents
of the file are returned. The user's decision is stored in a trust
database at $XDG_STATE_HOME/nvim/trust. When this function is invoked
with a path that is already marked as trusted in the trust database, the
user is not prompted for a response.
Problem: Recover test may fail on some systems.
Solution: Adjust the little endian and 64 bit detection. (James McCoy,
closesvim/vim#8941)
37f341d723
Co-authored-by: James McCoy <jamessan@jamessan.com>
Problem: Swap test may fail on some systems when jobs take longer to exit.
Solution: Use different file names.
f33cae6050
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Recovery test is not run on big-endian systems.
Solution: Make it work on big-endian systems. (James McCoy, closesvim/vim#8368)
6654ca702c
Co-authored-by: James McCoy <jamessan@jamessan.com>
Problem: Fix for recovery and diff mode not tested.
Solution: Add a few more tests. (Yegappan Lakshmanan, closesvim/vim#8352)
3044324e8d
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: Recover test fails on big endian systems.
Solution: Disable the failing test on big endian systems. (Yegappan
Lakshmanan, closesvim/vim#8335)
99285550a9
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: Some buffer related code is not tested.
Solution: Add a few more tests. (Yegappan Lakshmanan, closesvim/vim#8320)
59b262362f
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>