Some checks failed
Detach Plugins / check (FlyGrep.vim) (push) Has been cancelled
Detach Plugins / check (GitHub.vim) (push) Has been cancelled
Detach Plugins / check (JavaUnit.vim) (push) Has been cancelled
Detach Plugins / check (SourceCounter.vim) (push) Has been cancelled
Detach Plugins / check (cpicker.nvim) (push) Has been cancelled
Detach Plugins / check (dein-ui.vim) (push) Has been cancelled
Detach Plugins / check (git.vim) (push) Has been cancelled
Detach Plugins / check (iedit.vim) (push) Has been cancelled
Detach Plugins / check (scrollbar.vim) (push) Has been cancelled
Detach Plugins / check (vim-chat) (push) Has been cancelled
Detach Plugins / check (vim-cheat) (push) Has been cancelled
Detach Plugins / check (vim-todo) (push) Has been cancelled
Detach Plugins / check (xmake.vim) (push) Has been cancelled
test / Linux (nvim, nightly) (push) Has been cancelled
test / Linux (nvim, v0.3.8) (push) Has been cancelled
test / Linux (nvim, v0.4.0) (push) Has been cancelled
test / Linux (nvim, v0.4.2) (push) Has been cancelled
test / Linux (nvim, v0.4.3) (push) Has been cancelled
test / Linux (nvim, v0.4.4) (push) Has been cancelled
test / Linux (nvim, v0.5.0) (push) Has been cancelled
test / Linux (nvim, v0.5.1) (push) Has been cancelled
test / Linux (nvim, v0.6.0) (push) Has been cancelled
test / Linux (nvim, v0.6.1) (push) Has been cancelled
test / Linux (nvim, v0.7.0) (push) Has been cancelled
test / Linux (nvim, v0.7.2) (push) Has been cancelled
test / Linux (nvim, v0.8.0) (push) Has been cancelled
test / Linux (nvim, v0.8.1) (push) Has been cancelled
test / Linux (nvim, v0.8.2) (push) Has been cancelled
test / Linux (nvim, v0.8.3) (push) Has been cancelled
test / Linux (nvim, v0.9.0) (push) Has been cancelled
test / Linux (nvim, v0.9.1) (push) Has been cancelled
test / Linux (true, vim, v7.4.052) (push) Has been cancelled
test / Linux (true, vim, v7.4.1689) (push) Has been cancelled
test / Linux (true, vim, v7.4.629) (push) Has been cancelled
test / Linux (true, vim, v8.0.0027) (push) Has been cancelled
test / Linux (true, vim, v8.0.0183) (push) Has been cancelled
test / Linux (vim, nightly) (push) Has been cancelled
test / Linux (vim, v8.0.0184) (push) Has been cancelled
test / Linux (vim, v8.0.1453) (push) Has been cancelled
test / Linux (vim, v8.1.2269) (push) Has been cancelled
test / Linux (vim, v8.2.2434) (push) Has been cancelled
test / Linux (vim, v8.2.3995) (push) Has been cancelled
test / Windows (nvim, nightly) (push) Has been cancelled
test / Windows (nvim, v0.3.8) (push) Has been cancelled
test / Windows (nvim, v0.4.2) (push) Has been cancelled
test / Windows (nvim, v0.4.3) (push) Has been cancelled
test / Windows (nvim, v0.4.4) (push) Has been cancelled
test / Windows (nvim, v0.5.0) (push) Has been cancelled
test / Windows (nvim, v0.5.1) (push) Has been cancelled
test / Windows (nvim, v0.6.0) (push) Has been cancelled
test / Windows (nvim, v0.6.1) (push) Has been cancelled
test / Windows (nvim, v0.7.0) (push) Has been cancelled
test / Windows (nvim, v0.7.2) (push) Has been cancelled
test / Windows (nvim, v0.8.0) (push) Has been cancelled
test / Windows (nvim, v0.8.1) (push) Has been cancelled
test / Windows (nvim, v0.8.2) (push) Has been cancelled
test / Windows (nvim, v0.8.3) (push) Has been cancelled
test / Windows (nvim, v0.9.0) (push) Has been cancelled
test / Windows (nvim, v0.9.1) (push) Has been cancelled
test / Windows (vim, nightly) (push) Has been cancelled
test / Windows (vim, v7.4.1185) (push) Has been cancelled
test / Windows (vim, v7.4.1689) (push) Has been cancelled
test / Windows (vim, v8.0.0027) (push) Has been cancelled
test / Windows (vim, v8.0.1453) (push) Has been cancelled
test / Windows (vim, v8.1.2269) (push) Has been cancelled
test / Windows (vim, v8.2.2434) (push) Has been cancelled
test / Windows (vim, v8.2.3995) (push) Has been cancelled
docker / docker (push) Has been cancelled
mirror / check (coding) (push) Has been cancelled
mirror / check (gitee) (push) Has been cancelled
mirror / check (gitlab) (push) Has been cancelled
68 lines
2.2 KiB
Markdown
68 lines
2.2 KiB
Markdown
# nvim-if-lua-compat
|
|
|
|
An `if_lua` compatibility layer for Neovim (WIP, needs testing)
|
|
|
|
## Goals
|
|
|
|
Maintain some amount of compatibility with the existing Vim interface for Lua (see also: [neovim/neovim#12537](https://github.com/neovim/neovim/issues/12537)).
|
|
|
|
## Progress
|
|
|
|
Items annotated with an asterisk `*` are only partially supported.
|
|
|
|
- [x] * `vim.list()` (actually a Lua table, `luaeval()` just makes a copy and transforms it into a Vim list...)
|
|
- [x] `#l`
|
|
- [x] `l[k]`
|
|
- [x] `l()`
|
|
- [x] `table.insert(l, newitem)`
|
|
- [x] `table.insert(l, position, newitem)`
|
|
- [x] `table.remove(l, position)`
|
|
- [x] `l:add(item)`
|
|
- [x] `l:insert(item[, pos])`
|
|
- [x] * `vim.dict()` (actually a Lua table, `luaeval()` just makes a copy and transforms it into a Vim dict...)
|
|
- [x] * `#d` (Only works with Lua 5.2+ or LuaJIT built with 5.2 extensions)
|
|
- [x] `d.key` or `d['key']`
|
|
- [x] `d()`
|
|
- [x] * `vim.blob()` (actually a Lua table)
|
|
- [x] * `#b` (Only works with Lua 5.2+ or LuaJIT built with 5.2 extensions)
|
|
- [x] `b[k]`
|
|
- [x] `b:add(bytes)`
|
|
- [x] `vim.funcref()` (exists in Neovim core, but the implementation is different here)
|
|
- [x] * `#f` (Only works with Lua 5.2+ or LuaJIT built with 5.2 extensions)
|
|
- [x] `f(...)`
|
|
- [x] `vim.buffer()`
|
|
- [x] `b()`
|
|
- [x] * `#b` (Only works with Lua 5.2+ or LuaJIT built with 5.2 extensions)
|
|
- [x] `b[k]`
|
|
- [x] `b.name`
|
|
- [x] `b.fname`
|
|
- [x] `b.number`
|
|
- [x] `b:insert(newline[, pos])`
|
|
- [x] `b:next()`
|
|
- [x] `b:previous()`
|
|
- [x] `b:isvalid()`
|
|
- [x] `vim.window()`
|
|
- [x] `w()`
|
|
- [x] `w.buffer`
|
|
- [x] `w.line` (get and set)
|
|
- [x] `w.col` (get and set)
|
|
- [x] `w.width` (get and set)
|
|
- [x] `w.height` (get and set)
|
|
- [x] `w:next()`
|
|
- [x] `w:previous()`
|
|
- [x] `w:isvalid()`
|
|
- [x] `vim.type()`
|
|
- [x] `list`
|
|
- [x] `dict`
|
|
- [x] `blob`
|
|
- [x] `funcref`
|
|
- [x] `buffer`
|
|
- [x] `window`
|
|
- [x] `vim.command()` (alias to `vim.api.nvim_command()`)
|
|
- [x] * `vim.eval()` (alias to `vim.api.nvim_eval()`, doesn't actually return a `vim.list/dict/blob`)
|
|
- [x] `vim.line()` (alias to `vim.api.nvim_get_current_line()`)
|
|
- [x] `vim.beep()`
|
|
- [x] `vim.open()`
|
|
- [x] `vim.call()` (in Neovim core)
|
|
- [x] `vim.fn()` (in Neovim core)
|