From 98c274849591466e2bdf8a29858f7e43d7de6854 Mon Sep 17 00:00:00 2001 From: Pixeller <156404+Angluca@users.noreply.github.com> Date: Mon, 29 Sep 2025 16:59:04 +0800 Subject: [PATCH 1/3] Add c2 language json --- package.json | 12 ++-- snippets/c2.json | 144 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 152 insertions(+), 4 deletions(-) create mode 100644 snippets/c2.json diff --git a/package.json b/package.json index c254ebec..0c32e485 100644 --- a/package.json +++ b/package.json @@ -588,13 +588,17 @@ "language": "loremipsum", "path": "./snippets/loremipsum.json" }, - { - "language": "cmake", - "path": "./snippets/cmake.json" - }, + { + "language": "cmake", + "path": "./snippets/cmake.json" + }, { "language": "zig", "path": "./snippets/zig.json" + }, + { + "language": "c2", + "path": "./snippets/c2.json" } ] } diff --git a/snippets/c2.json b/snippets/c2.json new file mode 100644 index 00000000..a5c99991 --- /dev/null +++ b/snippets/c2.json @@ -0,0 +1,144 @@ +{ + "main": { + "prefix": "main", + "body": [ + "public fn i32 main(i32 argc, const char** argv) {", + " ${1:/* code */}", + " return 0;", + "}" + ], + "description": "main(..)" + }, + "main2": { + "prefix": "mainv", + "body": [ + "public fn i32 main() {", + " ${1:/* code */}", + " return 0;", + "}" + ], + "description": "main()" + }, + "module": { + "prefix": "module", + "body": [ + "module ${1:/* module name */};" + ], + "description": "module name" + }, + "import": { + "prefix": "import", + "body": [ + "import ${1:stdio}${2: local};" + ], + "description": "import libname" + }, + "if": { + "prefix": "if", + "body": [ + "if(${1:/* condition */}) {", + " ${0:/* code */}", + "}" + ], + "description": "if(..) {..}" + }, + "else": { + "prefix": "else", + "body": [ + "else {", + " ${0:/* code */}", + "}" + ], + "description": "else {..}" + }, + "if_else": { + "prefix": "ife", + "body": [ + "if(${1:/* condition */}) {", + " ${2:/* code */}", + "} else {", + " ${0:/* code */}", + "}" + ], + "description": "if/else" + }, + "do_while": { + "prefix": "do", + "body": [ + "do {", + " ${2:/* code */}", + "} while(${1:/* condition */});" + ], + "description": "do {..} while(..)" + }, + "while": { + "prefix": "while", + "body": [ + "while(${1:/* condition */}) {", + " ${0:/* code */}", + "}" + ], + "description": "while(..) {..}" + }, + "for": { + "prefix": "for", + "body": [ + "for(${1:u32 i=0}; ${2:i Date: Thu, 2 Oct 2025 14:44:15 +0800 Subject: [PATCH 2/3] Update c2 snippet --- snippets/c2.json | 118 ++++++++++++++++++++++++++++++++--------------- 1 file changed, 81 insertions(+), 37 deletions(-) diff --git a/snippets/c2.json b/snippets/c2.json index a5c99991..b568b1a8 100644 --- a/snippets/c2.json +++ b/snippets/c2.json @@ -3,18 +3,18 @@ "prefix": "main", "body": [ "public fn i32 main(i32 argc, const char** argv) {", - " ${1:/* code */}", - " return 0;", + "\t${1:/* code */}", + "\treturn 0;", "}" ], "description": "main(..)" }, "main2": { - "prefix": "mainv", + "prefix": "main2", "body": [ "public fn i32 main() {", - " ${1:/* code */}", - " return 0;", + "\t${1:/* code */}", + "\treturn 0;", "}" ], "description": "main()" @@ -29,7 +29,7 @@ "import": { "prefix": "import", "body": [ - "import ${1:stdio}${2: local};" + "import ${1:${2:stdio} as ${3:io}}${5: local};" ], "description": "import libname" }, @@ -37,7 +37,7 @@ "prefix": "if", "body": [ "if(${1:/* condition */}) {", - " ${0:/* code */}", + "\t${2:/* code */}", "}" ], "description": "if(..) {..}" @@ -46,27 +46,59 @@ "prefix": "else", "body": [ "else {", - " ${0:/* code */}", + "\t${1:/* code */}", "}" ], "description": "else {..}" }, "if_else": { - "prefix": "ife", + "prefix": "ifelse", "body": [ "if(${1:/* condition */}) {", - " ${2:/* code */}", + "\t${2:/* code */}", "} else {", - " ${0:/* code */}", + "\t${3:/* code */}", "}" ], "description": "if/else" }, + "switch": { + "prefix": "switch", + "body": [ + "switch(${1:/* condition */}) {", + "\tcase ${2:low - high}:", + "\t\t${3:/* code */}", + "\t\tbreak;", + "\t${4:default:", + "\t\t${5:/* code */}", + "\t\tbreak;}", + "}" + ], + "description": "switch(..) {case.. default:..}" + }, + "case": { + "prefix": "case", + "body": [ + "case ${2:low - high}:", + "\t${3:/* code */}", + "\tbreak;" + ], + "description": "case..: ... break" + }, + "default": { + "prefix": "default", + "body": [ + "default:", + "\t${3:/* code */}", + "\tbreak;" + ], + "description": "default: .. break" + }, "do_while": { "prefix": "do", "body": [ "do {", - " ${2:/* code */}", + "\t${2:/* code */}", "} while(${1:/* condition */});" ], "description": "do {..} while(..)" @@ -75,7 +107,7 @@ "prefix": "while", "body": [ "while(${1:/* condition */}) {", - " ${0:/* code */}", + "\t${2:/* code */}", "}" ], "description": "while(..) {..}" @@ -83,8 +115,8 @@ "for": { "prefix": "for", "body": [ - "for(${1:u32 i=0}; ${2:i Date: Thu, 2 Oct 2025 20:45:46 +0800 Subject: [PATCH 3/3] Update c2 lang --- snippets/c2.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/snippets/c2.json b/snippets/c2.json index b568b1a8..d1daba23 100644 --- a/snippets/c2.json +++ b/snippets/c2.json @@ -69,12 +69,9 @@ "\tcase ${2:low - high}:", "\t\t${3:/* code */}", "\t\tbreak;", - "\t${4:default:", - "\t\t${5:/* code */}", - "\t\tbreak;}", "}" ], - "description": "switch(..) {case.. default:..}" + "description": "switch(..) {case..}" }, "case": { "prefix": "case",