aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/compat.lua
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2018-11-29 22:51:20 +0100
committerJustin M. Keyes <justinkz@gmail.com>2018-12-20 11:57:30 +0100
commit221f6fffad12beaa928ccedae336d64b7b1c1208 (patch)
tree501c13ec241ff3d6a020d96f6ec0c3947000418b /runtime/lua/vim/compat.lua
parente6d0dea42b28a4814546bcf699ce277c365ebfc1 (diff)
downloadrneovim-221f6fffad12beaa928ccedae336d64b7b1c1208.tar.gz
rneovim-221f6fffad12beaa928ccedae336d64b7b1c1208.tar.bz2
rneovim-221f6fffad12beaa928ccedae336d64b7b1c1208.zip
runtime/lua/vim/compat.lua
ref #9280 Introduce the `vim.compat` module, to help environments with system Lua 5.2+ run the build/tests. Include the module implicitly in all tests. ref #8677 legacy `vim` module: beep buffer command dict eval firstline lastline line list open type window
Diffstat (limited to 'runtime/lua/vim/compat.lua')
-rw-r--r--runtime/lua/vim/compat.lua12
1 files changed, 12 insertions, 0 deletions
diff --git a/runtime/lua/vim/compat.lua b/runtime/lua/vim/compat.lua
new file mode 100644
index 0000000000..168979bb95
--- /dev/null
+++ b/runtime/lua/vim/compat.lua
@@ -0,0 +1,12 @@
+-- Lua 5.1 forward-compatibility layer.
+-- For background see https://github.com/neovim/neovim/pull/9280
+--
+-- Reference the lua-compat-5.2 project for hints:
+-- https://github.com/keplerproject/lua-compat-5.2/blob/c164c8f339b95451b572d6b4b4d11e944dc7169d/compat52/mstrict.lua
+-- https://github.com/keplerproject/lua-compat-5.2/blob/c164c8f339b95451b572d6b4b4d11e944dc7169d/tests/test.lua
+
+local lua_version = _VERSION:sub(-3)
+
+if lua_version >= "5.2" then
+ unpack = table.unpack -- luacheck: ignore 121 143
+end