summary refs log tree commit diff
path: root/.vim/lua/internal/snips.lua
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--.vim/lua/internal/snips.lua159
1 files changed, 0 insertions, 159 deletions
diff --git a/.vim/lua/internal/snips.lua b/.vim/lua/internal/snips.lua
deleted file mode 100644
index bb9fdef..0000000
--- a/.vim/lua/internal/snips.lua
+++ /dev/null
@@ -1,159 +0,0 @@
-local ls = require('luasnip')
-local types = require('luasnip.util.types')
-
-vim.api.nvim_set_hl(0, 'LuasnipIndicator', {
-  fg = vim.g.terminal_color_15,
-  bg = vim.g.terminal_color_1,
-  italic = true,
-  nocombine = true,
-})
-
--- autowrap: wraps the function in top and bot if there is any content
-local autowrap = function(top, bot, inner)
-  local autoinsert = function(args, _, _, wrap_with)
-    local nodes = {}
-    if vim.trim(table.concat(args[1] or {})) ~= '' then
-      table.insert(nodes, wrap_with)
-    end
-    return ls.sn(nil, nodes)
-  end
-
-  local argnodes = {}
-  local maxpos = -1
-  for _, e in ipairs(inner) do
-    if e.pos ~= nil then
-      table.insert(argnodes, e.pos)
-      if e.pos > maxpos then
-        maxpos = e.pos
-      end
-    end
-  end
-
-  local nodes = {}
-  table.insert(nodes, ls.d(maxpos + 1, autoinsert, argnodes, { user_args = { top } }))
-  for _, e in ipairs(inner) do
-    table.insert(nodes, e)
-  end
-  table.insert(nodes, ls.d(maxpos + 2, autoinsert, argnodes, { user_args = { bot } }))
-  return nodes
-end
-
--- comment: wraps the content in &commentstring (or a blockcomment)
-local comment = function(wrapped, blockcomment)
-  -- commentstring helper
-  local get_cstring = function()
-    local cs = require('Comment.ft').calculate({
-      ctype = blockcomment and 2 or 1,
-      range = require('Comment.utils').get_region(),
-    })
-    local tbl = vim.split(cs or '', '%s', { plain = true, trimempty = true })
-    return (#tbl == 0) and { '', '' }
-        or ((#tbl == 1) and { tbl[1] .. ' ', '' } or { tbl[1], tbl[2] })
-  end
-
-  if type(wrapped) ~= 'table' then
-    wrapped = { wrapped }
-  end
-
-  local nodes = {}
-  table.insert(
-    nodes,
-    ls.f(function()
-      return get_cstring()[1]
-    end)
-  )
-  for _, n in ipairs(wrapped) do
-    table.insert(nodes, n)
-  end
-  table.insert(
-    nodes,
-    ls.f(function()
-      return get_cstring()[2]
-    end)
-  )
-  return nodes
-end
-
--- exec: inserts the output of command
-local exec = function(command)
-  return ls.f(function(_, _, ...)
-    local results, code = require('plenary.job')
-        :new({
-          command = vim.env.SHELL,
-          args = { '-c', ... },
-          enable_recording = true,
-        })
-        :sync()
-    if not code == 0 or #results == 0 then
-      error(string.format('exec "%s" failed', ...))
-    end
-    return results
-  end, {}, { user_args = { command } })
-end
-
-local file_contents = function(path, vargs)
-  return ls.d(1, function(_, _, _, ...)
-    local lines = {}
-    for line in io.lines(path) do
-      table.insert(lines, line)
-    end
-    return ls.sn(nil, require('luasnip.extras.fmt').fmt(table.concat(lines, '\n'), ...))
-  end, {}, { user_args = { vargs } })
-end
-
-ls.setup({
-  history = true,
-  update_events = 'TextChanged,TextChangedI',
-  delete_check_events = 'TextChanged',
-
-  ext_opts = {
-    [types.snippet] = {
-      active = {
-        virt_text = { { '<-- snippet', 'LuasnipIndicator' } },
-        virt_text_pos = 'right_align',
-      },
-    },
-    [types.insertNode] = {
-      unvisited = { hl_group = 'LuasnipIndicator' },
-    },
-    [types.choiceNode] = {
-      active = {
-        virt_text = { { '<-- choice node', 'LuasnipIndicator' } },
-      },
-    },
-  },
-  snip_env = vim.tbl_extend('keep', ls.session.config.snip_env, {
-    f = ls.f,
-    i = ls.i,
-    s = ls.s,
-    t = ls.t,
-    c = ls.c,
-    sn = ls.sn,
-    fmt = require('luasnip.extras.fmt').fmt,
-    autowrap = autowrap,
-    exec = exec,
-    comment = comment,
-    file_contents = file_contents,
-    user_email = {
-      exec([[git config --get user.name]]),
-      ls.t(' <'),
-      ls.c(1, {
-        exec([[git config --get user.email]]),
-        ls.t([[robert.gunzler@postman.com]]),
-        ls.t([[robert@gnzler.io]]),
-      }),
-      ls.t('>'),
-    },
-  }),
-})
-
--- snipmate snippets
--- require('luasnip.loaders.from_snipmate').lazy_load({ paths = './after/snippets' })
--- lua snippets
-require('luasnip.loaders.from_lua').lazy_load({ paths = './snippets' })
-
-vim.api.nvim_create_user_command('LuaSnipUnlinkAll', function()
-  while #package.loaded.luasnip.session.current_nodes > 0 do
-    package.loaded.luasnip.unlink_current()
-  end
-end, { desc = 'unlink all active snippets' })