aboutsummaryrefslogtreecommitdiff
path: root/runtime
Commit message (Collapse)AuthorAge
* LSP: Remove diagnostic message handling in locations_to_itemsMathias Fussenegger2020-02-27
| | | | | `locations_to_items` is for turning `Location[]` into items, not for `Diagnostic[]`
* LSP/references: Add context to locations returned by serverMathias Fussenegger2020-02-27
| | | | | | | | | | | | | | | | | | | | | | This changes the `textDocument/references' callback to annotate the locations returned by the server with the content present at the locations range. The quickfix list then looks as follows: cr8/insert_fake_data.py|17 col 32| from .misc import parse_table, parse_version cr8/insert_fake_data.py|43 col 15| version = parse_version(r['rows'][0][0]) cr8/java_magic.py|8 col 22| from cr8.misc import parse_version cr8/java_magic.py|30 col 19| version = parse_version(fst) cr8/java_magic.py|33 col 16| return parse_version(version_str) Instead of: cr8/insert_fake_data.py|17 col 32| cr8/insert_fake_data.py|43 col 15| cr8/java_magic.py|8 col 22| cr8/java_magic.py|30 col 19| cr8/java_magic.py|33 col 16|
* Merge pull request #11880 from bfredl/tree-sitter-regexBjörn Linse2020-02-27
|\ | | | | add regex support in treesitter queries
| * lua: add regex support, and `@match` support in treesitter queriesBjörn Linse2020-02-26
| |
| * treesitter: redraw on changed queryBjörn Linse2020-02-26
| |
* | Add signs for Lsp diagnostics (#11668)Alvaro Muñoz2020-02-27
| | | | | | | | | | | | * Add signs for Lsp diagnostics * defer sign definition until init.vim is loaded
* | LSP/hover: Do not throw away contents if first line is empty (#11939)Mathias Fußenegger2020-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | haskell-ide-engine sends `hover` payloads as follows: { contents = { kind = "markdown", value = "\n```haskell\nfoo :: Either String (Integer, Text)\n```\n`foo` *local*" }, range = { end = { character = 5, line = 57 }, start = { character = 2, line = 57 } } } `value` starts with `\n`. The logic in `convert_input_to_markdown_lines` threw away the whole information.
* | add support to show diagnostics count in statusline (#11641)Alvaro Muñoz2020-02-26
| | | | | | | | | | * add support to show diagnostics count in statusline * documentation
* | LSP: implement documentHighlight (#11638)Alvaro Muñoz2020-02-26
|/ | | | | | | | * implement documentHighlight * fix bug * document highlight groups * use uppercase for help section title * documentation
* lsp/completion: show duplicates in completion popup #11920Mathias Fußenegger2020-02-21
| | | | | | | | | | | | | Allow duplicates so that in languages with overloaded functions it will show all signatures. E.g. instead of having a single (last one wins) add(int index, String element) It shows all signatures: add(String e) : boolean add(int index, String element) : void
* vim-patch:8.1.1122: char2nr() does not handle composing charactersJan Edmund Lazo2020-02-20
| | | | | | | | Problem: char2nr() does not handle composing characters. Solution: Add str2list() and list2str(). (Ozaki Kiichi, closes vim/vim#4190) https://github.com/vim/vim/commit/9d40128afd7fcd038ff6532722b55b1a8c189ce8 'utf8' optional param is noop unlike Vim.
* lsp: make functions private and use filter functionHirokazu Hata2020-02-19
|
* lsp: respect the sort order if there is sortTextHirokazu Hata2020-02-19
|
* lsp: fix textDocument/completion handlingHirokazu Hata2020-02-19
| | | | | | | fix: #11826 Some lanuguage servers return complementary candidates whose prefixes do not match are also returned. So we exclude completion candidates whose prefix does not match. ex) Microsoft python-language-server, rust-analyzer
* lua: move test helper function, map and filter, to vim.shared moduleHirokazu Hata2020-02-18
|
* lsp/rpc.lua: fix `env` application functionJustin M. Keyes2020-02-16
| | | | Env vars must be merged with the current env.
* LSP: fix validate_client_configJustin M. Keyes2020-02-16
| | | | | - `cmd_env` is a table not a function. - tests: Set $NVIM_LOG_FILE for fake LSP server.
* checkhealth: allow 'sudo install' of 'Neovim::Ext' #11874Jan Edmund Lazo2020-02-15
| | | | | | | | | | | | | | cpanm cannot look for Perl modules from root directories without sudo so it creates '~/perl5/' and look for Perl modules in there. Whether this directory existed before running cpanm or not, cpanm returns a warning to advice the user to setup local::lib in order to use modules in '~/perl5/' and exits with error code 0. Each line in the warning always starts with '!'. Display this warning to the user. Continue parsing the version number if the warning can be ignored because lines that are not prefixed with '!' are valid output. Fix #11858
* Merge pull request #11864 from h-michael/deepcopyBjörn Linse2020-02-15
|\ | | | | lua: vim.deepcopy() and vim.tbl_extend() should preserve vim.empty_dict()
| * lua: if second argument is vim.empty_dict(), vim.tbl_extend uses ↵Hirokazu Hata2020-02-14
| | | | | | | | empty_dict() instead of {}
| * lua: vim.deepcopy uses empty_dict() instead of {} for empty_dict()Hirokazu Hata2020-02-13
| | | | | | | | fix: https://github.com/neovim/nvim-lsp/issues/94
* | checkhealth: ignore cpamn "!" output #11869Jan Edmund Lazo2020-02-14
| | | | | | | | | | | | | | | | cpanm outputs a warning that suggest to use 'sudo' or use local::lib. cpanm exits with 0 so nvim thinks that the command worked. cpanm output that starts with "!" is likely an error. Close #11858
* | doc/lsp: start_client config cmd must be a list (#11866)Mathias Fußenegger2020-02-13
|/ | | | | | | doc/lsp: start_client config cmd must be a list After the merge of https://github.com/neovim/neovim/pull/11847 cmd can no longer be a string but must be a list.
* vim-patch:8.1.0091: MS-Windows: Cannot interrupt gdb when program is runningerw72020-02-12
| | | | | | | Problem: MS-Windows: Cannot interrupt gdb when program is running. Solution: Add debugbreak() and use it in the terminal debugger. Respect 'modified' in a prompt buffer. https://github.com/vim/vim/commit/4551c0a9fcdbdef52836d4852686d54b5e47fdaf
* vim-patch:8.1.0071: terminal debugger only works with the terminal featureerw72020-02-12
| | | | | | | Problem: Terminal debugger only works with the terminal feature. Solution: Make it also work with a prompt buffer. Makes it possible to use on MS-Windows. Various other improvements. (closes vim/vim#3012) https://github.com/vim/vim/commit/b3307b5e7e7bd3962b0d5c61a94e638564c146b0
* vim-patch:8.1.0069: cannot handle pressing CTRL-C in a prompt buffererw72020-02-12
| | | | | | Problem: Cannot handle pressing CTRL-C in a prompt buffer. Solution: Add prompt_setinterrupt(). https://github.com/vim/vim/commit/0e5979a6d491f68c4a8c86fab489016919329a6b
* vim-patch:8.1.0027: difficult to make a plugin that feeds a line to a joberw72020-02-12
| | | | | | Problem: Difficult to make a plugin that feeds a line to a job. Solution: Add the nitial code for the "prompt" buftype. https://github.com/vim/vim/commit/f273245f6433d5d43a5671306b520a3230c35787
* LSP: rename validate_command to _cmd_parts #11847Matthieu Coudron2020-02-11
| | | and now only accepts a list of strings (instead of string or list).
* LSP: Refine formatting tabSize #11834Jesse-Bakker2020-02-10
| | | | | | | | | | | | Use the logic explained in the softtabstop help section for defining the tabSize parameter in formatting requests. This means that: - if softtabstop is 0, tabstop is used - if softtabstop < 0, shiftwidth is used - if softtabstop > 0, softtabstop is used When inserting spaces instead of tabs, softtabstop is used in vim. Therefor it would be more logical to use it when formatting instead of the current tabstop.
* treesitter: use internal "decorations" bufferBjörn Linse2020-02-10
|
* lsp: Support text edit on inactive buffer (#11843)Mathias Fußenegger2020-02-10
| | | | | | | | | Using `vim.lsp.buf.rename()` can result in receiving a TextEdit that affects a file for which there is no active or loaded buffer. In that case `api.nvim_buf_get_lines(...)` returned an empty result, leading to an error. Closes https://github.com/neovim/neovim/issues/11790
* LSP: set InitializeParams.rootPath value #11838Hirokazu Hata2020-02-08
| | | InitializeParams.rootPath is deprecated now. But some language servers still use it.
* treesitter: add standard &rtp/parser/ search path for parsersBjörn Linse2020-02-07
|
* doc: Fix {spell,mlang}.txt files text encoding #11814Ramiro Morales2020-02-05
| | | | | These had broken encodings, set it to UTF-8. All remianing Neovim non-ASCII documentation files are UTF-8 encoded. And so are their Vim original versions.
* checkhealth: fix accidental change [ci skip]Justin M. Keyes2020-02-02
|
* checkhealth: avoid irrelevant virtualenv executablesJustin M. Keyes2020-02-02
|
* checkhealth: cleanup, brevityJustin M. Keyes2020-02-02
|
* checkhealth: bin directory is Scripts/ on WindowsDavid Lukes2020-02-02
|
* checkhealth: print -> sys.stdout.writeDavid Lukes2020-02-02
| | | | Co-Authored-By: Peter Lithammer <peter.lithammer@gmail.com>
* checkhealth: better $VIRTUAL_ENV validation #11781David Lukes2020-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix #11753 close #11781 The virtualenv troubleshooting in the Python provider health checks is supposed to help the user determine whether running Python from Neovim (as in `system('python')` or `system(exepath('python'))`) will use the correct executable when a virtualenv is active. Currently however, it issues spurious warnings in legitimate setups, and conversely, fails to warn about potentially problematic ones. See https://github.com/neovim/neovim/issues/11753#issuecomment-578715584 for a more detailed analysis, but at a high level, this is due to two things: - the virtualenv check is part of the Python provider check defined in `s:check_python`, which uses a roundabout and sometimes erroneous way of determining the Python executable - more generally, it shouldn't be part of the provider check at all, because it's not really related to the Python *provider*, i.e. the Python executable which can communicate with Neovim via `pynvim`, but to the Python the user is editing source files for, which typically shouldn't even have `pynvim` installed This patch reimplements the virtualenv check and factors it out into its own separate function, which is however still kept in `health/provider.vim` alongside the rest of the Python troubleshooting, since troubleshooting all Python-related stuff in one place is probably a good idea in order to alleviate any potential confusion (e.g. users who run only provider checks might be left wondering whether their virtualenv Python was properly detected if the report only shows their global Python as the provider used by Neovim).
* vim-patch:8.2.0161: not recognizing .gv file as dot filetypeJan Edmund Lazo2020-02-01
| | | | | | Problem: Not recognizing .gv file as dot filetype. Solution: Add *.gv to dot pattern. (closes vim/vim#5544) https://github.com/vim/vim/commit/f8ddb25789a6af530e69f499907979dfbff1c1ea
* vim-patch:8.2.0190: detect Kotlin files [ci skip] #11796Alkeryn2020-02-01
| | | | | Problem: Kotlin files are not recognized. Solution: Detect Kotlin files. (Alkeryn, closes vim/vim#5560) https://github.com/vim/vim/commit/ab067a21b9622513ed75f4801b001606eeaf2474
* vim-patch:8.2.0077: settagstack() cannot truncate at current indexJan Edmund Lazo2020-01-29
| | | | | | Problem: settagstack() cannot truncate at current index. Solution: Add the "t" action. (Yegappan Lakshmanan, closes vim/vim#5417) https://github.com/vim/vim/commit/271fa08a35b8d320d3a40db4ddae83b698fdd4fb
* LSP: show diagnostic in qf/loclist #11777Matthieu Coudron2020-01-28
| | | | | instead of the content of the file at this line. ref https://github.com/neovim/nvim-lsp/issues/69
* Merge #11772 from janlazo/vim-8.2.0152Justin M. Keyes2020-01-26
|\ | | | | vim-patch:8.2.{152,158}
| * vim-patch:8.2.0158: triggering CompleteDone earlier is not backwards compatibleJan Edmund Lazo2020-01-26
| | | | | | | | | | | | | | Problem: Triggering CompleteDone earlier is not backwards compatible. (Daniel Hahler) Solution: Add CompleteDonePre instead. https://github.com/vim/vim/commit/3f169ce17e8b779d105c96138a8b4246f2d270b9
* | mksession: always unix slashes "/" for filepathsJustin M. Keyes2020-01-26
|/
* terminal: absolute CWD in term:// URI #11289Chris LaRose2020-01-26
| | | | | | | | | This makes it possible to restore the working directory of :terminal buffers when reading those buffers from a session file. Fixes #11288 Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
* vim-patch:8.2.0141: no swift filetype detection (#11747)Jan Edmund Lazo2020-01-23
| | | | | Problem: No swift filetype detection. Solution: Add swift, swiftgyb and sil. (Emir Sarı, closes vim/vim#5517) https://github.com/vim/vim/commit/0d76683e094c6cac2e879601aff3acf1163cbe0b
* Merge pull request #11740 from Billy4195/fix_jobstopBjörn Linse2020-01-22
|\ | | | | make jobstop() return 0 instead of throw error for already stopped job