diff --git a/lua/custom/snippets/go.lua b/lua/custom/snippets/go.lua index b18fd00..118b672 100644 --- a/lua/custom/snippets/go.lua +++ b/lua/custom/snippets/go.lua @@ -8,46 +8,61 @@ local i = ls.insert_node local fmt = require("luasnip.extras.fmt").fmt ls.add_snippets("go", { - s("fmt debug", fmt('fmt.Println("[DEBUG] {}", {})', { i(1), i(2) })), - s("fmt info", fmt('fmt.Println("[INFO] {}", {})', { i(1), i(2) })), - s("fmt error", fmt('fmt.Println("[ERROR] {}", {})', { i(1), i(2) })), - s("fmt warn", fmt('fmt.Println("[WARN] {}", {})', { i(1), i(2) })), + s("fmt.debug", fmt('fmt.Println("[DEBUG] {}", {})', { i(1), i(2) })), + s("fmt.info", fmt('fmt.Println("[INFO] {}")', { i(1) })), + s("fmt.error", fmt('fmt.Println("[ERROR] {}", {})', { i(1), i(2) })), - s("if err !=", fmt([[ + s("err", fmt([[ if err != nil {{ return err }} - ]], {})), - s("if err :=", fmt([[ + s("iferr", fmt([[ if err := {}; err != nil {{ return err }} - ]], { i(1) })), - s("json unmarshal", fmt([[ + s("for", fmt([[ + for {}, {} := range {} {{ + {} + }} + ]], { i(1), i(2), i(3), i(4) })), + + s("if", fmt([[ + if {} {{ + {} + }} + ]], { i(1), i(2) })), + + s("switch", fmt([[ + switch {} {{ + case {}: + {} + default: + {} + }} + ]], { i(1), i(2), i(3), i(4) })), + + + s("jsonunmarshal", fmt([[ var {var_name} {} if err := json.Unmarshal({}, &{var_name}); err != nil {{ return err }} - ]], { var_name = i(1), i(2), i(3) }, { repeat_duplicates = true })), - s("json decode", fmt([[ + s("jsondecode", fmt([[ var {var_name} {} if err := json.NewDecoder({}).Decode(&{var_name}); err != nil {{ return err }} - ]], { var_name = i(1), i(2), i(3) }, { repeat_duplicates = true })), s("func", fmt([[ func {}({}) {} {{ {} }} - ]], { i(1), i(2), i(3), i(4) })), }) -