Björn Linse
c9817603cf
Merge pull request #14318 from chentau/extmark_luado
...
extmark: splice extmarks on :luado
2021-04-13 15:00:42 +02:00
chentau
ff43d9597e
extmark: splice extmarks on :luado
2021-04-12 11:33:50 -07:00
Björn Linse
2df527e1ff
test/lsp: disable tracking in LSP tests (here be dragons)
2021-04-03 16:27:58 +02:00
Björn Linse
7e799502e5
luaref: simplify handling of table callables and fix leak in vim.fn.call(table)
...
I AM THE TABLE
2021-04-03 16:27:58 +02:00
Björn Linse
eae4b1e5c2
luaref: fix leaks for global luarefs
2021-04-03 16:27:58 +02:00
Björn Linse
5ed383057b
lua: track reference ownership with ASAN when present
2021-04-03 16:27:58 +02:00
TJ DeVries
240cec9192
ts: Add language version to vim.treesitter ( #14255 )
2021-03-30 16:40:29 -04:00
chentau
f0ccac0ba4
lint
2021-01-26 17:09:35 -08:00
Tony Chen
d95a465b43
Don't show entire context when completing
2021-01-26 17:04:32 -08:00
TJ DeVries
901dd79f6a
feat: add completion to ':lua'
2021-01-26 17:04:31 -08:00
Michael Lingelbach
61437c20b5
api: add vim.version ( #13762 )
...
retrun a structured version dict
:lua print(vim.inspect(vim.version()))
{
api_compatible = 0,
api_level = 7,
api_prerelease = true,
major = 0,
minor = 5,
patch = 0
}
2021-01-18 09:37:18 +01:00
Björn Linse
eb387ae530
executor: use new nlua_ name pattern
2020-12-01 10:51:31 +01:00
dm1try
767cd8b17b
startup: add init.lua as an alternative user config, fixes #7895
2020-12-01 10:51:25 +01:00
georg3tom
7777532ceb
Removed restricted mode - Fix #11972
2020-11-11 18:07:58 +01:00
Björn Linse
1b0e4a5906
lua: make vim.inspect available early so it can be used for path debugging
2020-11-05 14:46:41 +01:00
Björn Linse
c60c7375f5
startup: handle autoload and lua packages during startup
...
¡NO HAY BANDA!
2020-11-02 15:21:36 +01:00
Björn Linse
c146eddc8b
api: add API for themes
...
co-author: hlpr98 <hlpr98@gmail.com > (dict2hlattrs function)
orange is sus??
NOVEMBER DAWN
erase the lie that is redraw_later()
2020-11-01 19:14:56 +01:00
TJ DeVries
7b89353985
lua: vim.wait allows control of fast events ( #13053 )
...
* lua: vim.wait allows control of fast events
* fixup: remove requirement of function for easier waiting
* fixup: lint
* fixup: bfredl comments
2020-10-06 12:58:05 -04:00
Björn Linse
5f3ddb195e
lua: cleanup naming conventions of executor functions
2020-09-10 10:02:41 +02:00
TJ DeVries
3ccdbc570d
lua: add vim.register_keystroke_callback ( #12536 )
...
* feat: Add vim.register_keystroke_callback
* fixup: Forgot to remove mention of old option
* fixup: Answer jamessan comments
* fixup: Answer norcalli comments
* fixup: portability
* Update runtime/doc/lua.txt
Co-authored-by: Ashkan Kiani <ashkan.k.kiani@gmail.com >
2020-08-14 10:03:17 -04:00
TJ DeVries
e797d0658c
fix: runtimepath always updates lua package.path
2020-08-10 16:48:35 -04:00
James McCoy
409a1dcdc6
Merge pull request #12653 from erw7/fix-build-freebsd-ci
...
build: Fix build failure with CI in FreeBSD
2020-07-20 07:49:10 -04:00
erw7
bfda389c5a
build: Fix build failure with CI in FreeBSD
...
Co-authored-by: James McCoy <jamessan@jamessan.com >
2020-07-20 11:17:25 +09:00
TJ DeVries
398201cfab
lua: Fix crash on unprotected lua errors ( #12658 )
...
Can be reproduced with a script like this:
-- in some lua file
vim.fn.timer_start(10, function() error("uh....") end)
-- will cause neovim to crash with the following error.
PANIC: unprotected error in call to Lua API
(nlua_CFunction_func_call failed.)
After this, it will instead print the error message
from the top of the stack, like so.
tmp/error_nvim.lua:10: uh...
Also added an example test. Previously this test
caused the embedded nvim to panic.
2020-07-19 17:16:48 -04:00
TJ DeVries
6360cf7ce8
lua: Add ability to pass tables with __call
...
vim-patch:8.2.1054: not so easy to pass a lua function to Vim
vim-patch:8.2.1084: Lua: registering function has useless code
I think I have also opened up the possibility for people to use these
callbacks elsewhere, since I've added a new struct that we should be
able to use.
Also, this should allow us to determine what the state of a list is in
Lua or a dictionary in Lua, since we now can track the luaref as we go.
2020-07-10 20:23:12 -04:00
TJ DeVries
971a191c4d
lua: Add ability to pass lua functions directly to vimL
2020-07-10 16:17:33 -04:00
Thomas Vigouroux
36d71e775a
treesitter: simplify puhstree call process
2020-06-23 09:11:41 +02:00
TJ DeVries
be662fe5c7
lua: vim.wait implementation
2020-05-30 12:01:32 -04:00
Björn Linse
504d6878da
lua: vim.wait initial outline
2020-05-30 12:01:32 -04:00
Justin M. Keyes
6b050a145d
Merge #11851 'eval.c: factor out eval/userfunc.c'
...
vim-patch:7.4.2058
2020-04-26 20:01:58 -07:00
Björn Linse
9c00fea585
lua: add regex support, and @match
support in treesitter queries
2020-02-26 19:39:02 +01:00
Jakub Łuczyński
5e815edece
rename: user_funcs -> userfunc
...
Lets stick with vim for now
2020-02-13 14:11:55 +01:00
Jakub Łuczyński
d50c1123d5
fix: includes
2020-02-13 14:11:53 +01:00
Jakub Łuczyński
6c5bbf07d9
eval.c: factor out eval/funcs.c #11828
...
close #11828
ref #5081
cf. vim patch 7.4.2063
2020-02-10 00:36:26 -08:00
Björn Linse
00c57c98df
treesitter: add standard &rtp/parser/ search path for parsers
2020-02-07 09:22:55 +01:00
Björn Linse
ea4127e9a7
lua: metatable for empty dict value
2020-01-01 19:26:29 +01:00
Jan Edmund Lazo
c740e3b4b5
clang/'Logic error': set ret_tv if non-null
2019-12-25 17:16:39 -05:00
Björn Linse
440695c296
tree-sitter: implement query functionality and highlighting prototype [skip.lint]
2019-12-22 12:51:46 +01:00
Justin M. Keyes
a3b6c2a3dc
API: rename nvim_execute_lua => nvim_exec_lua
...
- We already find ourselves renaming nvim_execute_lua in tests and
scripts, which suggests "exec" is the verb we actually want.
- Add "exec" verb to `:help dev-api`.
2019-12-02 22:06:42 -08:00
Ashkan Kiani
d0d38fc36e
Lua: vim.env, vim.{g,v,w,bo,wo} #11442
...
- Add vim variable meta accessors: vim.env, vim.{g,v,w,bo,wo}
- Redo gen_char_blob to generate multiple blobs instead of just one
so that multiple Lua modules can be inlined.
- Reorder vim.lua inclusion so that it can use previously defined C
functions and utility functions like vim.shared and vim.inspect things.
- Inline shared.lua into nvim, but also keep it available in runtime.
2019-11-24 02:28:48 -08:00
Björn Linse
dab40f43b1
Add v:lua.func() vimL syntax for calling lua
...
Also simplify error messages when calling lua from vimL.
2019-11-16 22:33:21 +01:00
Björn Linse
474d0bcbf7
lua: vim.rpcrequest, vim.rpcnotify, vim.NIL
2019-11-10 13:08:05 +01:00
Justin M. Keyes
efaf4732e2
lua/executor.c: use TRY_WRAP
2019-10-29 22:39:07 -07:00
Björn Linse
8ee7c94a92
lua: add vim.fn.{func} for direct access to vimL function
...
compared to vim.api.|nvim_call_function|, this fixes some typing issues
due to the indirect conversion via the API. float values are preserved
as such (fixes #9389 ) as well as empty dicts/arrays.
Ref https://github.com/norcalli/nvim.lua for the call syntax
2019-10-27 17:23:17 +01:00
Björn Linse
06ee45b9b1
tree-sitter: fix lint, delete "demo" plugin (replaced by functional tests)
2019-09-28 17:46:25 +02:00
Björn Linse
d24dec596c
tree-sitter: inspect language
2019-09-28 14:55:43 +02:00
Björn Linse
c1dc1bedba
tree-sitter: style
2019-09-28 14:55:43 +02:00
Björn Linse
c8f861b739
tree-sitter: rename tree_sitter => treesitter for consistency
2019-09-28 14:55:43 +02:00
Björn Linse
4ea5e63aa8
tree-sitter: add basic testing on ci
...
build tree-sitter c parser on ci for testing purposes
2019-09-28 14:55:43 +02:00
Björn Linse
afba23099f
tree-sitter: support pre-registration of languages
2019-09-28 14:55:43 +02:00