aboutsummaryrefslogtreecommitdiffstats
path: root/lua/alpha/snips/ft/lua.lua
diff options
context:
space:
mode:
authorAriel D'Alessandro <dalessandro.ariel@gmail.com>2022-08-11 08:39:41 +0200
committerAriel D'Alessandro <dalessandro.ariel@gmail.com>2022-08-11 08:39:41 +0200
commita6eb3f300d3237fa111e30fa21b5084ed7636327 (patch)
treeca893f2a6d3e304152f872ce9181dfb5d9a7b2a9 /lua/alpha/snips/ft/lua.lua
parentf61af678dd5da523340c71f57eb95d8d8a76d780 (diff)
downloadnvim-conf-a6eb3f300d3237fa111e30fa21b5084ed7636327.tar.gz
nvim-conf-a6eb3f300d3237fa111e30fa21b5084ed7636327.zip
updates on libraries
Diffstat (limited to 'lua/alpha/snips/ft/lua.lua')
-rw-r--r--lua/alpha/snips/ft/lua.lua65
1 files changed, 40 insertions, 25 deletions
diff --git a/lua/alpha/snips/ft/lua.lua b/lua/alpha/snips/ft/lua.lua
index 3a4fe52..5ea789e 100644
--- a/lua/alpha/snips/ft/lua.lua
+++ b/lua/alpha/snips/ft/lua.lua
@@ -1,45 +1,60 @@
-local ls = require "luasnip"
+local ls = require("luasnip")
-- local snippet = ls.s
local snippet_from_nodes = ls.sn
local c = ls.choice_node
local d = ls.dynamic_node
local i = ls.insert_node
+local f = ls.function_node
local t = ls.text_node
local fmt = require("luasnip.extras.fmt").fmt
local require_var = function(args, _)
- local text = args[1][1] or ""
- local split = vim.split(text, ".", { plain = true })
+ local text = args[1][1] or ""
+ local split = vim.split(text, ".", { plain = true })
- local options = {}
- for len = 0, #split - 1 do
- table.insert(options, t(table.concat(vim.list_slice(split, #split - len, #split), "_")))
- end
+ local options = {}
+ for len = 0, #split - 1 do
+ table.insert(options, t(table.concat(vim.list_slice(split, #split - len, #split), "_")))
+ end
- return snippet_from_nodes(nil, {
- c(1, options),
- })
+ return snippet_from_nodes(nil, {
+ c(1, options),
+ })
end
local newline = function(text)
- return t { "", text }
+ return t({ "", text })
end
return {
- req = fmt([[local {} = require("{}")]], {
- d(2, require_var, { 1 }),
- i(1),
- }),
- lf = {
- desc = "table function",
- "local ",
- i(1),
- " = function(",
- i(2), ")",
- newline " ",
- i(0),
- newline "end",
- },
+ req = fmt([[local {} = require("{}")]], {
+ d(2, require_var, { 1 }),
+ i(1),
+ }),
+ lf = {
+ desc = "table function",
+ "local ",
+ i(1),
+ " = function(",
+ i(2),
+ ")",
+ newline(" "),
+ i(0),
+ newline("end"),
+ },
+
+ preq = fmt(
+ [[local ok, {} = pcall(require, "{}")
+if not ok then
+ return
+end]],
+ {
+ f(function(args)
+ return args[1][1]
+ end, { 1 }),
+ i(1)
+ }
+ ),
}