all repos

init.lua @ 2385a99

my nvim config

init.lua/lua/plugins/luasnip.lua(view raw)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
return {
  "L3MON4D3/LuaSnip",
  dependencies = { "rafamadriz/friendly-snippets" },
  config = function()
    local map = require("core.utils").map
    local ls = require "luasnip"
    local types = require "luasnip.util.types"
    local fmt = require("luasnip.extras.fmt").fmt
    local extras = require "luasnip.extras"

    ls.config.set_config {
      history = true,
      updateevents = "TextChanged,TextChangedI",
      region_check_events = "CursorMoved,CursorHold,InsertEnter",
      delete_check_events = "InsertLeave",
      snip_env = {
        fmt = fmt,
        rep = extras.rep,
        m = extras.match,
        l = extras.lamda,
        s = ls.snippet,
        t = ls.text_node,
        f = ls.function_node,
        c = ls.choice_node,
        d = ls.dynamic_node,
        i = ls.insert_node,
      },
      ext_opts = {
        [types.choiceNode] = {
          passive = {
            virt_text = { { "●", "Operator" } },
            hl_group = "LuaSnipChoiceNode",
          },
        },
        [types.insertNode] = {
          active = {
            virt_text = { { "●", "Type" } },
            hl_group = "LuaSnipInsertNode",
          },
        },
      },
    }

    require("luasnip.loaders.from_lua").lazy_load()
    require("luasnip.loaders.from_vscode").lazy_load()

    map({ "s", "i" }, "<C-l>", function()
      if ls.choice_active() then
        ls.change_choice(1)
      elseif ls.expand_or_jumpable() then
        ls.expand_or_jump()
      end
    end)
  end,
}