neovim configuration using rocks.nvim plugin manager
at main 1.2 kB view raw
1require("luasnip.session.snippet_collection").clear_snippets("go") 2 3local ls = require("luasnip") 4local s = ls.snippet 5local sn = ls.snippet_node 6local i = ls.insert_node 7local t = ls.text_node 8local c = ls.choice_node 9local fmt = require("luasnip.extras.fmt").fmt 10 11-- stylua: ignore 12ls.add_snippets("go", { 13 s("ife", { 14 t{"if err != nil {", ""}, 15 t"\t", c(1, { 16 sn(nil, { t"return", i(1), t" err" }), 17 t"log.Fatalln(err)", 18 t"panic(err)", 19 }), 20 t{"", "}"}, i(0), 21 }), 22 s("fn", fmt([[ 23 func {}({}){} {{ 24 {}{} 25 }} 26 ]], { i(1), i(2), i(3), t("\t"), i(4) })), 27 s("cl", fmt([[ 28 func({}){} {{ 29 {}{} 30 }} 31 ]], { i(1), i(2), t("\t"), i(3) })), 32 s("me", fmt([[ 33 func ({}) {}({}){} {{ 34 {}{} 35 }} 36 ]], { i(1), i(2), i(3), i(4), t("\t"), i(5) })), 37 38 s("midfn", fmt([[ 39 func {}(next http.Handler) http.Handler {{ 40 {}return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {{ 41 {}{} 42 {}}}) 43 }} 44 ]], { i(1, "sampleMiddleware"), t("\t"), t("\t\t"), i(2), t("\t") })), 45})