Commit Graph

16890 Commits

Author SHA1 Message Date
rockerBOO
fb19663851 docs: Follow conventions 2020-11-16 01:13:15 -05:00
rockerBOO
46ab054b1d docs: Update nvim_lsp to lspconfig 2020-11-16 01:10:55 -05:00
Matthieu Coudron
1b8867ab39 Merge pull request #13293 from janlazo/vim-8.2.1976
vim-patch:8.2.{1979,1981,1982,1985,1987}
2020-11-15 18:18:12 +01:00
James McCoy
bcadf324cb Merge pull request #13297 from jamessan/github-actions 2020-11-15 09:17:49 -05:00
James McCoy
af88b0891e GHA: Add tsan job to the matrix 2020-11-14 21:29:02 -05:00
James McCoy
3b0a729f9c GHA: Use matrix to de-duplicate workflow definition
The general skeleton of each job is the same, so consolidate the
definition to a single job with an explicit matrix.

Use conditional steps to handle steps that are unique to a certain job
(e.g., installing clang-11 for better ASAN support).
2020-11-14 21:29:02 -05:00
James McCoy
392ec5a43f ci: Remove $CCACHE_CPP2
The env var is being set to the default value, as of ccache 3.3, which
is available in Zesty and newer.  All of our CI is using Bionic, so this
is already available.
2020-11-14 21:28:59 -05:00
James McCoy
5271f1e2c9 GHA: Move env var setup into env.sh to keep it DRY 2020-11-14 21:28:12 -05:00
Jan Edmund Lazo
87aaa8e837 globals: eliminate "enc_utf8" macro
"enc_utf8" macro evaluates to "true".
Continue dead code removal, started in https://github.com/neovim/neovim/pull/13275.
2020-11-14 17:23:51 -05:00
Jan Edmund Lazo
35874208b8 globals: eliminate "has_mbyte" macro
"has_mbyte" always evaluates to "true".
Continue dead code removal, started in https://github.com/neovim/neovim/pull/13275.
2020-11-14 17:23:51 -05:00
Jan Edmund Lazo
78c380f947 vim-patch:8.2.1982: quickfix window now updated when adding invalid entries
Problem:    Quickfix window now updated when adding invalid entries.
Solution:   Update the quickfix buffer properly. (Yegappan Lakshmanan, closes
            vim/vim#7291, closes vim/vim#7271)
2ce7790348

N/A patches for version.c:

vim-patch:8.2.1979: "term_opencmd" option of term_start() is truncated

Problem:    "term_opencmd" option of term_start() is truncated. (Sergey
            Vlasov)
Solution:   Allocate the buffer to hold the command. (closes vim/vim#7284)
47c5ea44b9

vim-patch:8.2.1981: MinGW: parallel compilation might fail

Problem:    MinGW: parallel compilation might fail.
Solution:   Add dependencies on $(OUTDIR). (Masamichi Abe, closes vim/vim#7287)
8496c9eadb

vim-patch:8.2.1985: crash when closing terminal popup with <Cmd> mapping

Problem:    Crash when closing terminal popup with <Cmd> mapping.
Solution:   Check b_term is not NULL. (closes vim/vim#7294)
02764713a7

vim-patch:8.2.1987: MS-Windows: Win32.mak is no longer needed

Problem:    MS-Windows: Win32.mak is no longer needed.
Solution:   Do not include Win32.mak. (Jason McHugh, closes vim/vim#7290)
6453cc8078
2020-11-14 17:23:48 -05:00
James McCoy
39b3eb34c2 ci: Install gem binaries to ~/.local/bin
That directory is already part of `$PATH`, so let's reuse it instead of
trying to figure what version-specific path binaries gem normally uses.
2020-11-14 17:23:35 -05:00
Mathias Fußenegger
0798ad3a3a lsp: Expose all diagnostics (#13285)
* lsp: Remove duplicate `diagnostics` fallback in diagnostic.display

* lsp: Expose all diagnostics

Before the changes in #12655 it was possible to retrieve all diagnostics
via `vim.lsp.util.diagnostics_by_buf`.

This adds a `diagnostic.get_all()` to enable users to retrieve all
diagnostics.

Use cases for that could include loading all diagnostics into the
quickfix list, or to build an enhanced goto_next that can move across
buffers.
2020-11-14 14:39:05 -05:00
Matthieu Coudron
27d630926c Merge pull request #13275 from janlazo/vim-8.1.0805
vim-patch:8.1.{805,806,809,810,811}
2020-11-14 19:35:26 +01:00
Jan Edmund Lazo
d8c69adbab Merge pull request #12698 from erw7/fix-popupmenu-with-rl
ui: fix problem with the popupmenu when rightleft is set
2020-11-13 23:09:57 -05:00
James McCoy
7c4f349661 Merge pull request #13287 from jamessan/github-actions 2020-11-13 14:13:42 -05:00
Alvaro Muñoz
aaca2c1c4d feat(lua): improve error message to make it actionable (#13276)
* improve error message to make it actionable
2020-11-13 19:50:03 +01:00
James McCoy
7ac3c39e39 README: Replace Travis CI badge with GH Linux CI 2020-11-13 13:38:13 -05:00
James McCoy
c96acac4d3 GHA: Invalidate cache if cmake files or third-party/ change 2020-11-13 13:38:12 -05:00
James McCoy
25a8385cd1 ci: Rename travis_fold to ci_fold and add GHA support 2020-11-13 13:38:12 -05:00
James McCoy
eb96bec4bb ci/before_script.sh: Remove early exit for lint job
lualint requires building dependencies, so allow the job to take
advantage of the cache.
2020-11-13 13:36:58 -05:00
James McCoy
c7443b82a9 GHA: Update cache directory if all steps succeeded 2020-11-13 13:36:58 -05:00
James McCoy
ef0d558a3b GHA: Include ccache output in cache 2020-11-13 13:36:58 -05:00
James McCoy
f23b906ddd GHA: Skip tests that fail due to actions/runner#241 2020-11-13 13:36:57 -05:00
James McCoy
808eb44f4a GHA: Add ~/.local/bin to $PATH 2020-11-13 13:36:57 -05:00
James McCoy
e2e032a52a GHA: Add lint job to Linux workflow 2020-11-13 13:36:57 -05:00
James McCoy
eb2aaed5cc Add Linux ASAN GitHub Action 2020-11-13 13:36:56 -05:00
James McCoy
d0714e87d6 build: Rename TRAVIS_BUILD_DIR to CI_BUILD_DIR 2020-11-13 13:36:56 -05:00
James McCoy
86eba08a4b build: Rename TRAVIS_CI_BUILD variable to CI_BUILD 2020-11-13 13:36:56 -05:00
TJ DeVries
35325ddac0 doc: fixup sign information (#13281)
Thanks to @sunzoje for finding the outdated documentation.
2020-11-13 00:02:40 -05:00
TJ DeVries
f75be5e9d5 lsp: vim.lsp.diagnostic (#12655)
Breaking Changes:
- Deprecated all `vim.lsp.util.{*diagnostics*}()` functions.
    - Instead, all functions must be found in vim.lsp.diagnostic
    - For now, they issue a warning ONCE per neovim session. In a
      "little while" we will remove them completely.
- `vim.lsp.callbacks` has moved to `vim.lsp.handlers`.
    - For a "little while" we will just redirect `vim.lsp.callbacks` to
      `vim.lsp.handlers`. However, we will remove this at some point, so
      it is recommended that you change all of your references to
      `callbacks` into `handlers`.
    - This also means that for functions like |vim.lsp.start_client()|
      and similar, keyword style arguments have moved from "callbacks"
      to "handlers". Once again, these are currently being forward, but
      will cease to be forwarded in a "little while".
- Changed the highlight groups for LspDiagnostic highlight as they were
  inconsistently named.
    - For more information, see |lsp-highlight-diagnostics|
- Changed the sign group names as well, to be consistent with
  |lsp-highlight-diagnostics|

General Enhancements:
- Rewrote much of the getting started help document for lsp. It also
  provides a much nicer configuration strategy, so as to not recommend
  globally overwriting builtin neovim mappings.

LSP Enhancements:
- Introduced the concept of |lsp-handlers| which will allow much better
  customization for users without having to copy & paste entire files /
  functions / etc.

Diagnostic Enhancements:
- "goto next diagnostic" |vim.lsp.diagnostic.goto_next()|
- "goto prev diagnostic" |vim.lsp.diagnostic.goto_prev()|
    - For each of the gotos, auto open diagnostics is available as a
      configuration option
- Configurable diagnostic handling:
    - See |vim.lsp.diagnostic.on_publish_diagnostics()|
    - Delay display until after insert mode
    - Configure signs
    - Configure virtual text
    - Configure underline
- Set the location list with the buffers diagnostics.
    - See |vim.lsp.diagnostic.set_loclist()|
- Better performance for getting counts and line diagnostics
    - They are now cached on save, to enhance lookups.
    - Particularly useful for checking in statusline, etc.
- Actual testing :)
    - See ./test/functional/plugin/lsp/diagnostic_spec.lua
- Added `guisp` for underline highlighting

NOTE: "a little while" means enough time to feel like most plugins and
plugin authors have had a chance to refactor their code to use the
updated calls. Then we will remove them completely. There is no need to
keep them, because we don't have any released version of neovim that
exposes these APIs. I'm trying to be nice to people following HEAD :)

Co-authored: [Twitch Chat 2020](https://twitch.tv/teej_dv)
2020-11-12 22:21:34 -05:00
Jan Edmund Lazo
5d6ecfa3c7 vim-patch:8.1.0805: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, part 1.
135059724f
2020-11-12 21:22:06 -05:00
Jan Edmund Lazo
93c18867a0 vim-patch:8.1.0810: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, part 4.
264b74fa54
2020-11-12 18:12:05 -05:00
Jan Edmund Lazo
f494516ccd vim-patch:8.1.0809: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, part 3.
a12a161b8c
2020-11-12 02:11:23 -05:00
Jan Edmund Lazo
e2504d2192 vim-patch:8.1.0806: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, part 2.
fc3abf47fb
2020-11-12 01:12:58 -05:00
Jan Edmund Lazo
54495c9816 vim-patch:8.1.0811: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, the final chapter.
30276f2beb
2020-11-12 00:40:07 -05:00
Jan Edmund Lazo
4ae31c46f7 Merge pull request #13273 from janlazo/vim-8.2.1972
vim-patch:8.2.{1972,1973,1974}
2020-11-11 23:08:44 -05:00
Jan Edmund Lazo
6d58f1eace vim-patch:8.2.1973: finding a patch number can be a bit slow
Problem:    Finding a patch number can be a bit slow.
Solution:   Use binary search. (closes vim/vim#7279)
232f4612e2
2020-11-11 14:36:00 -05:00
Jan Edmund Lazo
3013d0edfc vim-patch:8.2.1972: crash when recreating nested fold
Problem:    Crash when recreating nested fold.
Solution:   Check for empty growarray. (closes vim/vim#7278)
5e1f22ff61

N/A patches for version.c:

vim-patch:8.2.1974: Vim9: test for has('gui_running') fails with VIMDLL

Problem:    Vim9: test for has('gui_running') fails with VIMDLL.
Solution:   Adjust the #ifdef. (Ken Takata, closes vim/vim#7276)
29b281ba8d
2020-11-11 14:17:03 -05:00
Björn Linse
4875db2e56 Merge pull request #11996 from georg3tom/remove_restricted
Removed restricted mode - Fix #11972
2020-11-11 19:39:08 +01:00
georg3tom
7777532ceb Removed restricted mode - Fix #11972 2020-11-11 18:07:58 +01:00
Matthieu Coudron
0a95549d66 options.lua: add short descriptions (#6288)
add one-liner option descriptions in src/nvim/options.lua
They are taken from optwin.vim and should be easier to use in a
programmatic manner, for instance in a "palette", like in telescope
`:Telescope vim_options`.
2020-11-11 00:06:10 +01:00
James McCoy
a4fea2884d Merge pull request #13266 from jamessan/pvs-check 2020-11-10 12:59:05 -05:00
James McCoy
31366c44c4 Add PVS comment to new source files 2020-11-10 11:19:59 -05:00
James McCoy
088161a945 pvs: Exclude xdiff from analysis and comment munging 2020-11-10 10:00:25 -05:00
James McCoy
65993c444a Use the free PVS-Studio license
As of release 7.10, PVS Studio requires a license, even for the "check
me" comment based analyzing.
2020-11-10 09:42:28 -05:00
James McCoy
bb7ed42089 Merge pull request #13263 from jamessan/tree-sitter-detect
Align naming of FindTreeSitter cmake file and variables
2020-11-09 23:02:08 -05:00
Yegappan Lakshmanan
f67b3ea39c Update the differences with Vim. (#13239)
:cquit can use count to set the exit code
	patch 8.2.0095: cannot specify exit code for :cquit

:tchdir tab-local current-directory
	patch 8.1.1218: cannot set a directory for a tab page

Autocmd Events:
	- DirChanged
	    patch 8.0.1459: cannot handle change of directory
	- TextYankPost
	    patch 8.0.1394: cannot intercept a yank command

tabpagenr() "#" argument
    g<Tab> goes to the last-accessed tabpage.
	patch 8.2.1401: cannot jump to the last used tabpage

hl-QuickFixLine
	patch 8.0.0641: cannot set a separate highlighting for the quickfix line

v:event
	patch 8.0.1394: cannot intercept a yank command

K in help documents can be used like CTRL-].
	Updated as part of a runtime update.
	4c05fa08c9
2020-11-09 23:01:54 -05:00
Matthieu Coudron
e786fb5afb Merge pull request #13244 from tk-shirasaka/fix/multigrid-click-foldcolumn
ui: Fix click on foldcolumn when ext_multigrid is enabled
2020-11-10 00:54:54 +01:00
James McCoy
1451b14873 Align naming of FindTreeSitter cmake file and variables
`find_package(Foo ...)` expects to find a file FindFoo.cmake and the
resulting variables to be named `Foo_...`.  If those don't all match up,
then the detection does not work properly.

Closes #13262
2020-11-09 15:15:03 -05:00