With the new implementation added in
https://github.com/neovim/neovim/pull/14079 I think this is now working
well enough to enable it by default.
There are high CPU usage issues popping up now and then and they might
at least partially be related to the full-text sync.
* Allow specifying a languageId for a lsp
For some languages the filetype might not match the languageId the
language server accepts. In these cases the config for the language
server can contain a function which gets the current buffer and filetype
and returns a languageId. When it isn't provided the filetype is used
instead.
Example:
```lua
require'lspconfig'.sourcekit.setup{
get_language_id = function(bufnr, ft)
return 'swift'
end;
}
```
Closes#13093
* lsp: Change to get_language_id
Co-authored-by: Jan Dammshäuser <mail@jandamm.de>
port termdebug dissasembly window only (termdebug.vim)
This patch adds disassembly window to Termdebug
:Asm should bring up disassembly window
or setting:
g:termdebug_disasm_window
Values greater than 1 will set disasm window height.
Code works by calling gdb disassemble command, demangling output and
storing in Termdebug-asm-listing buffer + window.
Current pc address is parsed from 'addr=' cursor msg and we search for
that address in the disasm window. When the search fails, we execute a
new "disassemble $pc" command.
When in a location without a proper stack frame, "disassemble $pc" can
fail and in this case we add a +length argument and try again.
Tested with x86_64 gdb v10.1 and v8.2.1, and aarch64 gdb v7.12.
Problem: Out of bounds compiler warning.
Solution: Increase the size of uf_name.
6a12e3342d
Do not set size of uf_name to avoid compiler warnings.
Port only the comments.
Problem: Compiler warning for type conversion.
Solution: Add a typecast. (Mike Williams)
9355ae4149
N/A patches for version.c:
vim-patch:8.1.0783: compiler warning for signed/unsigned
Problem: Compiler warning for signed/unsigned.
Solution: Add type cast. Change type of buffer. (Ozaki Kiichi, closesvim/vim#3827)
63c0ccd2b6
Neovim was refactored to prefer char type for string functions, not char_u.
vim-patch:8.2.2152: screenpos() does not include the WinBar offset
Problem: screenpos() does not include the WinBar offset.
Solution: Use W_WINROW() instead of directly using w_window. (closesvim/vim#7487)
8dd46e72cf
W_WINROW() was removed so port only the test changes.
The test is currently skipped.
before, calling vim.schedule() from inside an event would execute
the scheduled callback immediately after this event without
checking for user input in between. Break event processing
whenever user input or an interrupt is available.
Problem: Cannot interrupt shell used for filename expansion. (Dominique
Pellé)
Solution: Do set tmode in mch_delay(). (closesvim/vim#6770)
0981c8729e
Neovim does not run settmode() in os_delay() so this patch is mostly N/A.
Do not port Vim's flags (ie. MCH_DELAY_SETTMODE) for mch_delay().
Problem: MS-Windows: No color in shell when using "!" in 'guioptions.
Solution: Don't stop termcap when using a terminal window for the shell.
(vim-jp, closesvim/vim#4117)
049ca59236
N/A patches for version.c:
vim-patch:8.2.0890: no color in terminal window when 'termguicolor' is set
Problem: No color in terminal window when 'termguicolor' is set.
Solution: Clear the underline color. (closesvim/vim#6186)
1e5f8f6d65
vim-patch:8.2.1805: Unix: terminal mode changed when using ":shell"
Problem: Unix: terminal mode changed when using ":shell".
Solution: Avoid calling settmode() when not needed. (issue vim/vim#7079)
80361a5f2b
vim-patch:8.2.2345: no focus events in a terminal
Problem: No focus events in a terminal.
Solution: Add the t_fd and t_fe termcap entries and implement detecting
focus events. (Hayaki Saito, Magnus Groß, closesvim/vim#7673,
closesvim/vim#609, closesvim/vim#5526)
681fc3fa78
vim-patch:8.2.2564: focus events end Insert mode if 'esckeys' is not set
Problem: Focus events end Insert mode if 'esckeys' is not set.
Solution: Do not enable focus events when 'esckeys' is off. (closesvim/vim#7926)
51b477f74f
Problem: ":highlight clear" does not restore default link.
Solution: Remember the default link and restore it. (Antony Scriven,
closesvim/vim#6970, closesvim/vim#4405)
213da551de
Problem: "hi def" does not work for cleared highlight.
Solution: Check the "sg_cleared" flag. (Maxim Kim, closesvim/vim#6956,
closesvim/vim#4405)
05eb5b9cae
* Fix click on foldcolumn if it has tabline
* Fixes to correctly determine if tablie was clicked when multigrid is enabled
* Separate foldcolumn checks into functions
* Add test case for click on foldcolumn with split window
* Fix foldcolumn click used nvim_input() on multigrid enabled