@enjoys/context-engine 1.4.1 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (424) hide show
  1. package/data/codeLens/awk.json +1 -1
  2. package/data/codeLens/azcli.json +10 -10
  3. package/data/codeLens/c.json +1 -1
  4. package/data/codeLens/caddy.json +1 -1
  5. package/data/codeLens/crontab.json +1 -1
  6. package/data/codeLens/doctest.json +10 -10
  7. package/data/codeLens/hcl.json +1 -1
  8. package/data/codeLens/html.json +1 -1
  9. package/data/codeLens/lua.json +1 -1
  10. package/data/codeLens/nginx.json +1 -1
  11. package/data/codeLens/pla.json +10 -10
  12. package/data/codeLens/xml.json +1 -1
  13. package/data/commands/angular.json +670 -312
  14. package/data/commands/c.json +30 -30
  15. package/data/commands/cpp.json +30 -30
  16. package/data/commands/crontab.json +25 -30
  17. package/data/commands/cypher.json +26 -30
  18. package/data/commands/dockerfile.json +26 -2
  19. package/data/commands/doctest.json +23 -24
  20. package/data/commands/dotenv.json +24 -11
  21. package/data/commands/ecl.json +26 -30
  22. package/data/commands/flow9.json +24 -24
  23. package/data/commands/freemarker2.json +24 -18
  24. package/data/commands/graphql.json +25 -11
  25. package/data/commands/html.json +25 -11
  26. package/data/commands/ini.json +26 -12
  27. package/data/commands/javascript.json +29 -30
  28. package/data/commands/less.json +25 -29
  29. package/data/commands/lexon.json +23 -11
  30. package/data/commands/liquid.json +26 -11
  31. package/data/commands/m3.json +26 -12
  32. package/data/commands/manifest.json +35 -731
  33. package/data/commands/markdown.json +26 -12
  34. package/data/commands/mdx.json +23 -10
  35. package/data/commands/mips.json +26 -18
  36. package/data/commands/msdax.json +23 -11
  37. package/data/commands/nestjs.json +516 -273
  38. package/data/commands/nextjs.json +250 -123
  39. package/data/commands/objective-c.json +26 -24
  40. package/data/commands/pascal.json +27 -24
  41. package/data/commands/pascaligo.json +26 -24
  42. package/data/commands/perl.json +30 -30
  43. package/data/commands/pla.json +23 -11
  44. package/data/commands/postiats.json +26 -24
  45. package/data/commands/powerquery.json +23 -11
  46. package/data/commands/powershell.json +28 -30
  47. package/data/commands/protobuf.json +27 -30
  48. package/data/commands/qsharp.json +26 -30
  49. package/data/commands/razor.json +25 -29
  50. package/data/commands/react.json +244 -210
  51. package/data/commands/redshift.json +27 -18
  52. package/data/commands/restructuredtext.json +29 -30
  53. package/data/commands/sb.json +23 -11
  54. package/data/commands/scheme.json +25 -18
  55. package/data/commands/scss.json +26 -29
  56. package/data/commands/shadcn.json +564 -410
  57. package/data/commands/sol.json +27 -30
  58. package/data/commands/sparql.json +25 -11
  59. package/data/commands/sql.json +16 -2
  60. package/data/commands/ssh_config.json +31 -30
  61. package/data/commands/st.json +23 -11
  62. package/data/commands/systemverilog.json +26 -24
  63. package/data/commands/tailwindcss.json +60 -53
  64. package/data/commands/tcl.json +23 -18
  65. package/data/commands/toml.json +25 -11
  66. package/data/commands/twig.json +23 -10
  67. package/data/commands/vb.json +27 -24
  68. package/data/commands/wgsl.json +24 -11
  69. package/data/commands/yaml.json +29 -30
  70. package/data/completion/awk.json +906 -202
  71. package/data/completion/azcli.json +886 -237
  72. package/data/completion/bicep.json +862 -367
  73. package/data/completion/crontab.json +906 -202
  74. package/data/completion/dotenv.json +895 -169
  75. package/data/completion/graphql.json +895 -180
  76. package/data/completion/hcl.json +906 -191
  77. package/data/completion/ini.json +906 -136
  78. package/data/completion/json.json +895 -169
  79. package/data/completion/lexon.json +856 -295
  80. package/data/completion/makefile.json +906 -202
  81. package/data/completion/markdown.json +906 -224
  82. package/data/completion/mdx.json +895 -87
  83. package/data/completion/mips.json +872 -377
  84. package/data/completion/perl.json +961 -202
  85. package/data/completion/pla.json +895 -154
  86. package/data/completion/powershell.json +906 -224
  87. package/data/completion/protobuf.json +884 -180
  88. package/data/completion/ssh_config.json +906 -158
  89. package/data/completion/xml.json +906 -158
  90. package/data/definition/abap.json +127 -1
  91. package/data/definition/apex.json +97 -1
  92. package/data/definition/coffee.json +51 -1
  93. package/data/definition/dart.json +105 -1
  94. package/data/definition/elixir.json +115 -1
  95. package/data/definition/flow9.json +208 -1
  96. package/data/definition/freemarker2.json +283 -1
  97. package/data/definition/html.json +853 -558
  98. package/data/definition/java.json +1127 -183
  99. package/data/definition/kotlin.json +72 -1
  100. package/data/definition/r.json +692 -83
  101. package/data/definition/ruby.json +789 -669
  102. package/data/definition/rust.json +852 -206
  103. package/data/definition/sb.json +339 -1
  104. package/data/definition/st.json +367 -1
  105. package/data/documentRangeFormatting/nestjs.json +57 -17
  106. package/data/documentRangeFormatting/nextjs.json +57 -17
  107. package/data/documentRangeFormatting/react.json +82 -78
  108. package/data/documentSymbol/abap.json +54 -12
  109. package/data/documentSymbol/apex.json +40 -10
  110. package/data/documentSymbol/awk.json +15 -1
  111. package/data/documentSymbol/bicep.json +39 -39
  112. package/data/documentSymbol/c.json +1 -1
  113. package/data/documentSymbol/clojure.json +46 -46
  114. package/data/documentSymbol/css.json +96 -96
  115. package/data/documentSymbol/dart.json +109 -19
  116. package/data/documentSymbol/dockerfile.json +1 -1
  117. package/data/documentSymbol/elixir.json +39 -39
  118. package/data/documentSymbol/go.json +1 -1
  119. package/data/documentSymbol/graphql.json +1 -1
  120. package/data/documentSymbol/hcl.json +1 -1
  121. package/data/documentSymbol/html.json +29 -1
  122. package/data/documentSymbol/java.json +1 -1
  123. package/data/documentSymbol/javascript.json +1 -1
  124. package/data/documentSymbol/julia.json +46 -46
  125. package/data/documentSymbol/kotlin.json +74 -14
  126. package/data/documentSymbol/less.json +25 -25
  127. package/data/documentSymbol/lua.json +22 -1
  128. package/data/documentSymbol/makefile.json +15 -1
  129. package/data/documentSymbol/markdown.json +36 -1
  130. package/data/documentSymbol/mysql.json +32 -32
  131. package/data/documentSymbol/nginx.json +1 -1
  132. package/data/documentSymbol/pascal.json +46 -46
  133. package/data/documentSymbol/perl.json +1 -1
  134. package/data/documentSymbol/pgsql.json +39 -39
  135. package/data/documentSymbol/php.json +1 -1
  136. package/data/documentSymbol/powershell.json +1 -1
  137. package/data/documentSymbol/protobuf.json +1 -1
  138. package/data/documentSymbol/python.json +1 -1
  139. package/data/documentSymbol/r.json +67 -67
  140. package/data/documentSymbol/redshift.json +60 -18
  141. package/data/documentSymbol/ruby.json +1 -1
  142. package/data/documentSymbol/rust.json +1 -1
  143. package/data/documentSymbol/scala.json +116 -20
  144. package/data/documentSymbol/scheme.json +25 -25
  145. package/data/documentSymbol/scss.json +39 -39
  146. package/data/documentSymbol/shell.json +1 -1
  147. package/data/documentSymbol/sql.json +1 -1
  148. package/data/documentSymbol/swift.json +88 -16
  149. package/data/documentSymbol/typescript.json +1 -1
  150. package/data/documentSymbol/vb.json +53 -53
  151. package/data/documentSymbol/yaml.json +1 -1
  152. package/data/foldingRange/angular.json +100 -99
  153. package/data/foldingRange/nestjs.json +94 -26
  154. package/data/foldingRange/nextjs.json +94 -26
  155. package/data/foldingRange/react.json +118 -120
  156. package/data/foldingRange/shadcn.json +94 -93
  157. package/data/formatting/abap.json +19 -11
  158. package/data/formatting/angular.json +63 -21
  159. package/data/formatting/apex.json +19 -11
  160. package/data/formatting/awk.json +1 -1
  161. package/data/formatting/azcli.json +18 -18
  162. package/data/formatting/bicep.json +18 -18
  163. package/data/formatting/c.json +1 -1
  164. package/data/formatting/caddy.json +1 -1
  165. package/data/formatting/cameligo.json +18 -18
  166. package/data/formatting/clojure.json +18 -18
  167. package/data/formatting/coffee.json +18 -18
  168. package/data/formatting/cpp.json +1 -1
  169. package/data/formatting/crontab.json +1 -1
  170. package/data/formatting/csharp.json +1 -1
  171. package/data/formatting/css.json +73 -73
  172. package/data/formatting/cypher.json +18 -18
  173. package/data/formatting/dart.json +43 -15
  174. package/data/formatting/docker-compose.json +24 -24
  175. package/data/formatting/dockerfile.json +1 -1
  176. package/data/formatting/doctest.json +18 -18
  177. package/data/formatting/dotenv.json +1 -1
  178. package/data/formatting/ecl.json +18 -18
  179. package/data/formatting/elixir.json +43 -18
  180. package/data/formatting/flow9.json +18 -18
  181. package/data/formatting/freemarker2.json +18 -18
  182. package/data/formatting/go.json +1 -1
  183. package/data/formatting/graphql.json +1 -1
  184. package/data/formatting/hcl.json +26 -1
  185. package/data/formatting/html.json +26 -1
  186. package/data/formatting/ini.json +1 -1
  187. package/data/formatting/java.json +1 -1
  188. package/data/formatting/javascript.json +1 -1
  189. package/data/formatting/julia.json +18 -18
  190. package/data/formatting/kotlin.json +33 -13
  191. package/data/formatting/less.json +48 -18
  192. package/data/formatting/lexon.json +18 -18
  193. package/data/formatting/liquid.json +18 -18
  194. package/data/formatting/lua.json +1 -1
  195. package/data/formatting/m3.json +18 -18
  196. package/data/formatting/makefile.json +1 -1
  197. package/data/formatting/markdown.json +26 -1
  198. package/data/formatting/mdx.json +18 -18
  199. package/data/formatting/mips.json +18 -18
  200. package/data/formatting/msdax.json +18 -18
  201. package/data/formatting/mysql.json +43 -18
  202. package/data/formatting/nginx.json +1 -1
  203. package/data/formatting/objective-c.json +18 -18
  204. package/data/formatting/pascal.json +18 -18
  205. package/data/formatting/pascaligo.json +18 -18
  206. package/data/formatting/perl.json +1 -1
  207. package/data/formatting/pgsql.json +43 -18
  208. package/data/formatting/php.json +1 -1
  209. package/data/formatting/pla.json +18 -18
  210. package/data/formatting/postiats.json +18 -18
  211. package/data/formatting/powerquery.json +18 -18
  212. package/data/formatting/powershell.json +1 -1
  213. package/data/formatting/protobuf.json +1 -1
  214. package/data/formatting/python.json +1 -1
  215. package/data/formatting/qsharp.json +18 -18
  216. package/data/formatting/r.json +32 -32
  217. package/data/formatting/razor.json +18 -18
  218. package/data/formatting/redis-cli.json +1 -1
  219. package/data/formatting/redis.json +18 -18
  220. package/data/formatting/redshift.json +43 -18
  221. package/data/formatting/restructuredtext.json +18 -18
  222. package/data/formatting/ruby.json +1 -1
  223. package/data/formatting/rust.json +1 -1
  224. package/data/formatting/sb.json +18 -18
  225. package/data/formatting/scala.json +48 -16
  226. package/data/formatting/scheme.json +18 -18
  227. package/data/formatting/scss.json +48 -18
  228. package/data/formatting/shadcn.json +63 -61
  229. package/data/formatting/shell.json +1 -1
  230. package/data/formatting/sol.json +18 -18
  231. package/data/formatting/sparql.json +18 -18
  232. package/data/formatting/sql.json +1 -1
  233. package/data/formatting/ssh_config.json +1 -1
  234. package/data/formatting/st.json +18 -18
  235. package/data/formatting/swift.json +58 -18
  236. package/data/formatting/systemd.json +1 -1
  237. package/data/formatting/systemverilog.json +18 -18
  238. package/data/formatting/tcl.json +18 -18
  239. package/data/formatting/toml.json +1 -1
  240. package/data/formatting/twig.json +18 -18
  241. package/data/formatting/typescript.json +1 -1
  242. package/data/formatting/vb.json +18 -18
  243. package/data/formatting/wgsl.json +18 -18
  244. package/data/formatting/xml.json +26 -1
  245. package/data/formatting/yaml.json +1 -1
  246. package/data/hover/apex.json +281 -6
  247. package/data/hover/awk.json +251 -6
  248. package/data/hover/crontab.json +251 -6
  249. package/data/hover/dotenv.json +242 -4
  250. package/data/hover/graphql.json +251 -6
  251. package/data/hover/lexon.json +250 -5
  252. package/data/hover/markdown.json +226 -9
  253. package/data/hover/mdx.json +250 -5
  254. package/data/hover/perl.json +251 -6
  255. package/data/hover/pla.json +264 -5
  256. package/data/hover/powershell.json +252 -7
  257. package/data/hover/protobuf.json +251 -6
  258. package/data/hover/redis.json +355 -40
  259. package/data/hover/ssh_config.json +251 -6
  260. package/data/hover/xml.json +231 -7
  261. package/data/inlineCompletions/c.json +49 -1
  262. package/data/inlineCompletions/cpp.json +61 -1
  263. package/data/inlineCompletions/csharp.json +73 -1
  264. package/data/inlineCompletions/css.json +125 -125
  265. package/data/inlineCompletions/dart.json +136 -26
  266. package/data/inlineCompletions/elixir.json +34 -34
  267. package/data/inlineCompletions/go.json +67 -1
  268. package/data/inlineCompletions/html.json +1 -1
  269. package/data/inlineCompletions/java.json +67 -1
  270. package/data/inlineCompletions/javascript.json +97 -1
  271. package/data/inlineCompletions/kotlin.json +88 -18
  272. package/data/inlineCompletions/less.json +76 -28
  273. package/data/inlineCompletions/lua.json +37 -1
  274. package/data/inlineCompletions/mysql.json +34 -34
  275. package/data/inlineCompletions/pgsql.json +34 -34
  276. package/data/inlineCompletions/php.json +43 -1
  277. package/data/inlineCompletions/python.json +73 -1
  278. package/data/inlineCompletions/ruby.json +49 -1
  279. package/data/inlineCompletions/rust.json +61 -1
  280. package/data/inlineCompletions/scala.json +130 -25
  281. package/data/inlineCompletions/scss.json +34 -34
  282. package/data/inlineCompletions/shell.json +1 -1
  283. package/data/inlineCompletions/sql.json +43 -1
  284. package/data/inlineCompletions/swift.json +112 -22
  285. package/data/inlineCompletions/typescript.json +97 -1
  286. package/data/linkedEditingRange/azcli.json +6 -6
  287. package/data/linkedEditingRange/crontab.json +6 -6
  288. package/data/linkedEditingRange/docker-compose.json +6 -6
  289. package/data/linkedEditingRange/doctest.json +6 -6
  290. package/data/linkedEditingRange/dotenv.json +13 -6
  291. package/data/linkedEditingRange/ini.json +13 -6
  292. package/data/linkedEditingRange/json.json +13 -6
  293. package/data/linkedEditingRange/lexon.json +6 -6
  294. package/data/linkedEditingRange/mips.json +6 -6
  295. package/data/linkedEditingRange/msdax.json +6 -6
  296. package/data/linkedEditingRange/nestjs.json +18 -10
  297. package/data/linkedEditingRange/nextjs.json +24 -11
  298. package/data/linkedEditingRange/pla.json +6 -6
  299. package/data/linkedEditingRange/react.json +74 -75
  300. package/data/linkedEditingRange/redis-cli.json +6 -6
  301. package/data/linkedEditingRange/redis.json +6 -6
  302. package/data/linkedEditingRange/ssh_config.json +6 -6
  303. package/data/linkedEditingRange/systemd.json +6 -6
  304. package/data/linkedEditingRange/toml.json +13 -6
  305. package/data/linkedEditingRange/wgsl.json +6 -6
  306. package/data/linkedEditingRange/xml.json +13 -13
  307. package/data/linkedEditingRange/yaml.json +13 -6
  308. package/data/onTypeFormatting/angular.json +63 -14
  309. package/data/onTypeFormatting/nestjs.json +64 -16
  310. package/data/onTypeFormatting/nextjs.json +72 -17
  311. package/data/onTypeFormatting/react.json +148 -127
  312. package/data/onTypeFormatting/shadcn.json +63 -54
  313. package/data/rangeSemanticTokens/angular.json +196 -140
  314. package/data/rangeSemanticTokens/nestjs.json +195 -27
  315. package/data/rangeSemanticTokens/nextjs.json +199 -28
  316. package/data/rangeSemanticTokens/react.json +77 -216
  317. package/data/rangeSemanticTokens/shadcn.json +203 -140
  318. package/data/rename/angular.json +121 -131
  319. package/data/rename/nestjs.json +122 -32
  320. package/data/rename/nextjs.json +116 -31
  321. package/data/rename/react.json +133 -88
  322. package/data/rename/shadcn.json +73 -79
  323. package/data/selectionRange/abap.json +58 -34
  324. package/data/selectionRange/angular.json +126 -95
  325. package/data/selectionRange/apex.json +58 -34
  326. package/data/selectionRange/awk.json +56 -34
  327. package/data/selectionRange/azcli.json +43 -24
  328. package/data/selectionRange/bicep.json +56 -34
  329. package/data/selectionRange/c.json +62 -39
  330. package/data/selectionRange/caddy.json +53 -34
  331. package/data/selectionRange/cameligo.json +56 -34
  332. package/data/selectionRange/clojure.json +57 -34
  333. package/data/selectionRange/coffee.json +59 -34
  334. package/data/selectionRange/cpp.json +73 -44
  335. package/data/selectionRange/crontab.json +39 -29
  336. package/data/selectionRange/csharp.json +69 -39
  337. package/data/selectionRange/css.json +95 -55
  338. package/data/selectionRange/cypher.json +57 -34
  339. package/data/selectionRange/dart.json +65 -34
  340. package/data/selectionRange/docker-compose.json +54 -34
  341. package/data/selectionRange/dockerfile.json +56 -34
  342. package/data/selectionRange/doctest.json +47 -24
  343. package/data/selectionRange/dotenv.json +33 -24
  344. package/data/selectionRange/ecl.json +58 -34
  345. package/data/selectionRange/elixir.json +63 -34
  346. package/data/selectionRange/flow9.json +57 -34
  347. package/data/selectionRange/freemarker2.json +58 -34
  348. package/data/selectionRange/go.json +64 -39
  349. package/data/selectionRange/graphql.json +58 -34
  350. package/data/selectionRange/hcl.json +56 -34
  351. package/data/selectionRange/html.json +63 -34
  352. package/data/selectionRange/ini.json +38 -24
  353. package/data/selectionRange/java.json +68 -39
  354. package/data/selectionRange/javascript.json +65 -39
  355. package/data/selectionRange/julia.json +65 -39
  356. package/data/selectionRange/kotlin.json +68 -39
  357. package/data/selectionRange/less.json +58 -34
  358. package/data/selectionRange/lexon.json +38 -24
  359. package/data/selectionRange/liquid.json +58 -34
  360. package/data/selectionRange/lua.json +59 -34
  361. package/data/selectionRange/m3.json +57 -34
  362. package/data/selectionRange/makefile.json +53 -34
  363. package/data/selectionRange/markdown.json +57 -34
  364. package/data/selectionRange/mdx.json +63 -34
  365. package/data/selectionRange/mips.json +43 -29
  366. package/data/selectionRange/msdax.json +52 -34
  367. package/data/selectionRange/mysql.json +51 -34
  368. package/data/selectionRange/nestjs.json +35 -21
  369. package/data/selectionRange/nextjs.json +35 -22
  370. package/data/selectionRange/nginx.json +53 -34
  371. package/data/selectionRange/objective-c.json +64 -39
  372. package/data/selectionRange/pascal.json +53 -34
  373. package/data/selectionRange/pascaligo.json +57 -34
  374. package/data/selectionRange/perl.json +59 -34
  375. package/data/selectionRange/pgsql.json +50 -34
  376. package/data/selectionRange/php.json +65 -39
  377. package/data/selectionRange/pla.json +52 -29
  378. package/data/selectionRange/postiats.json +61 -34
  379. package/data/selectionRange/powerquery.json +56 -34
  380. package/data/selectionRange/powershell.json +65 -39
  381. package/data/selectionRange/protobuf.json +58 -34
  382. package/data/selectionRange/python.json +66 -39
  383. package/data/selectionRange/qsharp.json +62 -39
  384. package/data/selectionRange/r.json +57 -34
  385. package/data/selectionRange/razor.json +63 -34
  386. package/data/selectionRange/react.json +103 -87
  387. package/data/selectionRange/redis-cli.json +38 -24
  388. package/data/selectionRange/redis.json +38 -24
  389. package/data/selectionRange/redshift.json +49 -34
  390. package/data/selectionRange/restructuredtext.json +58 -34
  391. package/data/selectionRange/ruby.json +65 -39
  392. package/data/selectionRange/rust.json +73 -44
  393. package/data/selectionRange/sb.json +43 -29
  394. package/data/selectionRange/scala.json +65 -39
  395. package/data/selectionRange/scheme.json +52 -34
  396. package/data/selectionRange/scss.json +58 -34
  397. package/data/selectionRange/shadcn.json +120 -89
  398. package/data/selectionRange/shell.json +1 -1
  399. package/data/selectionRange/sol.json +63 -39
  400. package/data/selectionRange/sparql.json +58 -34
  401. package/data/selectionRange/sql.json +50 -34
  402. package/data/selectionRange/ssh_config.json +37 -29
  403. package/data/selectionRange/st.json +49 -29
  404. package/data/selectionRange/swift.json +73 -44
  405. package/data/selectionRange/systemd.json +47 -34
  406. package/data/selectionRange/systemverilog.json +62 -39
  407. package/data/selectionRange/tailwindcss.json +49 -34
  408. package/data/selectionRange/tcl.json +57 -34
  409. package/data/selectionRange/toml.json +49 -29
  410. package/data/selectionRange/twig.json +58 -34
  411. package/data/selectionRange/typescript.json +75 -44
  412. package/data/selectionRange/vb.json +59 -39
  413. package/data/selectionRange/wgsl.json +61 -34
  414. package/data/selectionRange/xml.json +51 -34
  415. package/data/selectionRange/yaml.json +54 -34
  416. package/data/semanticTokens/angular.json +269 -198
  417. package/data/semanticTokens/nestjs.json +245 -35
  418. package/data/semanticTokens/nextjs.json +265 -38
  419. package/data/semanticTokens/react.json +230 -215
  420. package/data/semanticTokens/shadcn.json +235 -180
  421. package/data/signatureHelp/nestjs.json +201 -128
  422. package/data/signatureHelp/nextjs.json +185 -127
  423. package/data/signatureHelp/react.json +285 -281
  424. package/package.json +1 -1
@@ -1,125 +1,125 @@
1
- {
2
- "language": "css",
3
- "inlineCompletions": [
4
- {
5
- "triggerPattern": "display:\\s*",
6
- "insertText": "flex;\njustify-content: ${1:center};\nalign-items: ${2:center};",
7
- "description": "Flexbox layout with justify-content and align-items. Most common pattern for centering elements.",
8
- "completeBracketPairs": true
9
- },
10
- {
11
- "triggerPattern": "display:\\s*g",
12
- "insertText": "grid;\ngrid-template-columns: repeat(${1:auto-fill}, minmax(${2:250px}, 1fr));\ngap: ${3:1rem};",
13
- "description": "Responsive CSS Grid layout with auto-fill and minmax for fluid column sizing.",
14
- "completeBracketPairs": true
15
- },
16
- {
17
- "triggerPattern": "@media\\s*\\(",
18
- "insertText": "max-width: ${1:768px}) {\n\t$0\n}",
19
- "description": "Desktop-first media query breakpoint. Applies styles at or below the specified width.",
20
- "completeBracketPairs": true
21
- },
22
- {
23
- "triggerPattern": "@media\\s*\\(min",
24
- "insertText": "min-width: ${1:768px}) {\n\t$0\n}",
25
- "description": "Mobile-first media query breakpoint. Applies styles at or above the specified width.",
26
- "completeBracketPairs": true
27
- },
28
- {
29
- "triggerPattern": "@media\\s*\\(prefers-color",
30
- "insertText": "prefers-color-scheme: dark) {\n\t:root {\n\t\t--bg: ${1:#121212};\n\t\t--text: ${2:#e0e0e0};\n\t}\n}",
31
- "description": "Prefers-color-scheme dark mode media query with CSS custom property overrides.",
32
- "completeBracketPairs": true
33
- },
34
- {
35
- "triggerPattern": "animation:\\s*",
36
- "insertText": "${1:name} ${2:0.3s} ${3:ease-in-out} ${4:forwards};",
37
- "description": "Animation shorthand with name, duration, timing function, and fill mode.",
38
- "completeBracketPairs": true
39
- },
40
- {
41
- "triggerPattern": "transition:\\s*",
42
- "insertText": "${1:all} ${2:0.3s} ${3:ease};",
43
- "description": "Transition shorthand with property, duration, and timing function.",
44
- "completeBracketPairs": true
45
- },
46
- {
47
- "triggerPattern": "background:\\s*linear",
48
- "insertText": "linear-gradient(${1|to right,to bottom,135deg,to bottom right|}, ${2:#667eea}, ${3:#764ba2});",
49
- "description": "Linear gradient background with direction and color stops.",
50
- "completeBracketPairs": true
51
- },
52
- {
53
- "triggerPattern": "position:\\s*a",
54
- "insertText": "absolute;\ntop: ${1:50%};\nleft: ${2:50%};\ntransform: translate(-50%, -50%);",
55
- "description": "Absolute centering pattern using position absolute with transform.",
56
- "completeBracketPairs": true
57
- },
58
- {
59
- "triggerPattern": "position:\\s*s(?=t)",
60
- "insertText": "sticky;\ntop: ${1:0};",
61
- "description": "Sticky positioning with top offset. Element sticks to position during scroll.",
62
- "completeBracketPairs": true
63
- },
64
- {
65
- "triggerPattern": "@keyframes\\s+",
66
- "insertText": "${1:animationName} {\n\tfrom {\n\t\t${2:opacity: 0;}\n\t\t${3:transform: translateY(10px);}\n\t}\n\tto {\n\t\t${4:opacity: 1;}\n\t\t${5:transform: translateY(0);}\n\t}\n}",
67
- "description": "Keyframes animation definition with from/to states for fade and slide effect.",
68
- "completeBracketPairs": true
69
- },
70
- {
71
- "triggerPattern": "@font-face\\s*\\{",
72
- "insertText": "\n\tfont-family: '${1:FontName}';\n\tsrc: url('${2:fonts/${1}.woff2}') format('woff2'),\n\t url('${3:fonts/${1}.woff}') format('woff');\n\tfont-weight: ${4:400};\n\tfont-style: ${5:normal};\n\tfont-display: ${6:swap};\n",
73
- "description": "Font-face declaration with woff2/woff sources and font-display swap for performance.",
74
- "completeBracketPairs": true
75
- },
76
- {
77
- "triggerPattern": "grid-template-areas:\\s*",
78
- "insertText": "\"${1:header} ${1:header} ${1:header}\"\n\t\"${2:sidebar} ${3:main} ${3:main}\"\n\t\"${4:footer} ${4:footer} ${4:footer}\";",
79
- "description": "Grid template areas with a common header/sidebar/main/footer layout.",
80
- "completeBracketPairs": true
81
- },
82
- {
83
- "triggerPattern": "border-radius:\\s*",
84
- "insertText": "${1|4px,8px,12px,50%,9999px|};",
85
- "description": "Border radius with common presets: subtle rounding, moderate rounding, circle, and pill shape.",
86
- "completeBracketPairs": true
87
- },
88
- {
89
- "triggerPattern": "box-shadow:\\s*",
90
- "insertText": "${1:0} ${2:2px} ${3:4px} ${4:rgba(0, 0, 0, 0.1)};",
91
- "description": "Box shadow with x-offset, y-offset, blur radius, and semi-transparent color.",
92
- "completeBracketPairs": true
93
- },
94
- {
95
- "triggerPattern": "text-overflow:\\s*",
96
- "insertText": "ellipsis;\nwhite-space: nowrap;\noverflow: hidden;",
97
- "description": "Text truncation pattern with ellipsis, preventing text wrap and hiding overflow.",
98
- "completeBracketPairs": true
99
- },
100
- {
101
- "triggerPattern": "@layer\\s+",
102
- "insertText": "${1:base}, ${2:components}, ${3:utilities};",
103
- "description": "Cascade layer ordering declaration. Layers listed first have lowest priority.",
104
- "completeBracketPairs": true
105
- },
106
- {
107
- "triggerPattern": "@container\\s*\\(",
108
- "insertText": "min-width: ${1:400px}) {\n\t$0\n}",
109
- "description": "Container query for component-level responsive design based on container size.",
110
- "completeBracketPairs": true
111
- },
112
- {
113
- "triggerPattern": "scroll-snap-type:\\s*",
114
- "insertText": "${1|x,y,both|} ${2|mandatory,proximity|};",
115
- "description": "Scroll snap type for axis and strictness. Creates carousel-like scroll behavior.",
116
- "completeBracketPairs": true
117
- },
118
- {
119
- "triggerPattern": "aspect-ratio:\\s*",
120
- "insertText": "${1|16 / 9,4 / 3,1 / 1,3 / 2,21 / 9|};",
121
- "description": "Aspect ratio with common presets: widescreen, standard, square, photo, ultrawide.",
122
- "completeBracketPairs": true
123
- }
124
- ]
125
- }
1
+ {
2
+ "language": "css",
3
+ "inlineCompletions": [
4
+ {
5
+ "triggerPattern": "display:\\s*",
6
+ "insertText": "flex;\njustify-content: ${1:center};\nalign-items: ${2:center};",
7
+ "description": "Flexbox layout with justify-content and align-items. Most common pattern for centering elements.",
8
+ "completeBracketPairs": true
9
+ },
10
+ {
11
+ "triggerPattern": "display:\\s*g",
12
+ "insertText": "grid;\ngrid-template-columns: repeat(${1:auto-fill}, minmax(${2:250px}, 1fr));\ngap: ${3:1rem};",
13
+ "description": "Responsive CSS Grid layout with auto-fill and minmax for fluid column sizing.",
14
+ "completeBracketPairs": true
15
+ },
16
+ {
17
+ "triggerPattern": "@media\\s*\\(",
18
+ "insertText": "max-width: ${1:768px}) {\n\t$0\n}",
19
+ "description": "Desktop-first media query breakpoint. Applies styles at or below the specified width.",
20
+ "completeBracketPairs": true
21
+ },
22
+ {
23
+ "triggerPattern": "@media\\s*\\(min",
24
+ "insertText": "min-width: ${1:768px}) {\n\t$0\n}",
25
+ "description": "Mobile-first media query breakpoint. Applies styles at or above the specified width.",
26
+ "completeBracketPairs": true
27
+ },
28
+ {
29
+ "triggerPattern": "@media\\s*\\(prefers-color",
30
+ "insertText": "prefers-color-scheme: dark) {\n\t:root {\n\t\t--bg: ${1:#121212};\n\t\t--text: ${2:#e0e0e0};\n\t}\n}",
31
+ "description": "Prefers-color-scheme dark mode media query with CSS custom property overrides.",
32
+ "completeBracketPairs": true
33
+ },
34
+ {
35
+ "triggerPattern": "animation:\\s*",
36
+ "insertText": "${1:name} ${2:0.3s} ${3:ease-in-out} ${4:forwards};",
37
+ "description": "Animation shorthand with name, duration, timing function, and fill mode.",
38
+ "completeBracketPairs": true
39
+ },
40
+ {
41
+ "triggerPattern": "transition:\\s*",
42
+ "insertText": "${1:all} ${2:0.3s} ${3:ease};",
43
+ "description": "Transition shorthand with property, duration, and timing function.",
44
+ "completeBracketPairs": true
45
+ },
46
+ {
47
+ "triggerPattern": "background:\\s*linear",
48
+ "insertText": "linear-gradient(${1|to right,to bottom,135deg,to bottom right|}, ${2:#667eea}, ${3:#764ba2});",
49
+ "description": "Linear gradient background with direction and color stops.",
50
+ "completeBracketPairs": true
51
+ },
52
+ {
53
+ "triggerPattern": "position:\\s*a",
54
+ "insertText": "absolute;\ntop: ${1:50%};\nleft: ${2:50%};\ntransform: translate(-50%, -50%);",
55
+ "description": "Absolute centering pattern using position absolute with transform.",
56
+ "completeBracketPairs": true
57
+ },
58
+ {
59
+ "triggerPattern": "position:\\s*s(?=t)",
60
+ "insertText": "sticky;\ntop: ${1:0};",
61
+ "description": "Sticky positioning with top offset. Element sticks to position during scroll.",
62
+ "completeBracketPairs": true
63
+ },
64
+ {
65
+ "triggerPattern": "@keyframes\\s+",
66
+ "insertText": "${1:animationName} {\n\tfrom {\n\t\t${2:opacity: 0;}\n\t\t${3:transform: translateY(10px);}\n\t}\n\tto {\n\t\t${4:opacity: 1;}\n\t\t${5:transform: translateY(0);}\n\t}\n}",
67
+ "description": "Keyframes animation definition with from/to states for fade and slide effect.",
68
+ "completeBracketPairs": true
69
+ },
70
+ {
71
+ "triggerPattern": "@font-face\\s*\\{",
72
+ "insertText": "\n\tfont-family: '${1:FontName}';\n\tsrc: url('${2:fonts/${1}.woff2}') format('woff2'),\n\t url('${3:fonts/${1}.woff}') format('woff');\n\tfont-weight: ${4:400};\n\tfont-style: ${5:normal};\n\tfont-display: ${6:swap};\n",
73
+ "description": "Font-face declaration with woff2/woff sources and font-display swap for performance.",
74
+ "completeBracketPairs": true
75
+ },
76
+ {
77
+ "triggerPattern": "grid-template-areas:\\s*",
78
+ "insertText": "\"${1:header} ${1:header} ${1:header}\"\n\t\"${2:sidebar} ${3:main} ${3:main}\"\n\t\"${4:footer} ${4:footer} ${4:footer}\";",
79
+ "description": "Grid template areas with a common header/sidebar/main/footer layout.",
80
+ "completeBracketPairs": true
81
+ },
82
+ {
83
+ "triggerPattern": "border-radius:\\s*",
84
+ "insertText": "${1|4px,8px,12px,50%,9999px|};",
85
+ "description": "Border radius with common presets: subtle rounding, moderate rounding, circle, and pill shape.",
86
+ "completeBracketPairs": true
87
+ },
88
+ {
89
+ "triggerPattern": "box-shadow:\\s*",
90
+ "insertText": "${1:0} ${2:2px} ${3:4px} ${4:rgba(0, 0, 0, 0.1)};",
91
+ "description": "Box shadow with x-offset, y-offset, blur radius, and semi-transparent color.",
92
+ "completeBracketPairs": true
93
+ },
94
+ {
95
+ "triggerPattern": "text-overflow:\\s*",
96
+ "insertText": "ellipsis;\nwhite-space: nowrap;\noverflow: hidden;",
97
+ "description": "Text truncation pattern with ellipsis, preventing text wrap and hiding overflow.",
98
+ "completeBracketPairs": true
99
+ },
100
+ {
101
+ "triggerPattern": "@layer\\s+",
102
+ "insertText": "${1:base}, ${2:components}, ${3:utilities};",
103
+ "description": "Cascade layer ordering declaration. Layers listed first have lowest priority.",
104
+ "completeBracketPairs": true
105
+ },
106
+ {
107
+ "triggerPattern": "@container\\s*\\(",
108
+ "insertText": "min-width: ${1:400px}) {\n\t$0\n}",
109
+ "description": "Container query for component-level responsive design based on container size.",
110
+ "completeBracketPairs": true
111
+ },
112
+ {
113
+ "triggerPattern": "scroll-snap-type:\\s*",
114
+ "insertText": "${1|x,y,both|} ${2|mandatory,proximity|};",
115
+ "description": "Scroll snap type for axis and strictness. Creates carousel-like scroll behavior.",
116
+ "completeBracketPairs": true
117
+ },
118
+ {
119
+ "triggerPattern": "aspect-ratio:\\s*",
120
+ "insertText": "${1|16 / 9,4 / 3,1 / 1,3 / 2,21 / 9|};",
121
+ "description": "Aspect ratio with common presets: widescreen, standard, square, photo, ultrawide.",
122
+ "completeBracketPairs": true
123
+ }
124
+ ]
125
+ }
@@ -1,27 +1,137 @@
1
- {
2
- "language": "dart",
3
- "inlineCompletions": [
4
- {"triggerPattern": "^\\s*void\\s+main\\s*$", "insertText": "void main() {\n ${1:print('Hello, Dart!');}\n}", "description": "Main function", "completeBracketPairs": true},
5
- {"triggerPattern": "^\\s*class\\s+\\w+\\s*$", "insertText": "class ${1:Name} {\n final ${2:String} ${3:field};\n\n const ${1:Name}({required this.${3:field}});\n\n $0\n}", "description": "Class with constructor", "completeBracketPairs": true},
6
- {"triggerPattern": "^\\s*for\\s*$", "insertText": "for (final ${1:item} in ${2:items}) {\n $0\n}", "description": "For-in loop", "completeBracketPairs": true},
7
- {"triggerPattern": "^\\s*if\\s*$", "insertText": "if (${1:condition}) {\n $0\n}", "description": "If statement", "completeBracketPairs": true},
8
- {"triggerPattern": "^\\s*try\\s*$", "insertText": "try {\n ${1:// code}\n} on ${2:Exception} catch (e) {\n ${3:print(e);}\n}", "description": "Try-catch block", "completeBracketPairs": true},
9
- {"triggerPattern": "^\\s*Future\\s*$", "insertText": "Future<${1:void}> ${2:name}() async {\n $0\n}", "description": "Async function returning Future", "completeBracketPairs": true},
10
- {"triggerPattern": "^\\s*Stream\\s*$", "insertText": "Stream<${1:int}> ${2:name}() async* {\n yield ${3:value};\n}", "description": "Stream generator function", "completeBracketPairs": true},
11
- {"triggerPattern": "^\\s*switch\\s*\\(", "insertText": "switch (${1:value}) {\n case ${2:pattern}:\n $0\n break;\n default:\n break;\n}", "description": "Switch statement", "completeBracketPairs": true},
12
- {"triggerPattern": "^\\s*final\\s+\\w+\\s*=\\s*switch\\s*$", "insertText": "final ${1:result} = switch (${2:value}) {\n ${3:pattern} => ${4:expr},\n _ => ${5:default},\n};", "description": "Switch expression", "completeBracketPairs": true},
13
- {"triggerPattern": "^\\s*extension\\s+\\w+\\s*$", "insertText": "extension ${1:Name} on ${2:Type} {\n ${3:ReturnType} ${4:method}() {\n $0\n }\n}", "description": "Extension declaration", "completeBracketPairs": true},
14
- {"triggerPattern": "^\\s*mixin\\s+\\w+\\s*$", "insertText": "mixin ${1:Name} {\n ${2:void} ${3:method}() {\n $0\n }\n}", "description": "Mixin declaration", "completeBracketPairs": true},
15
- {"triggerPattern": "^\\s*sealed\\s+class\\s*$", "insertText": "sealed class ${1:Name} {}\n\nclass ${2:SubType} extends ${1:Name} {\n final ${3:String} ${4:value};\n const ${2:SubType}(this.${4:value});\n}", "description": "Sealed class hierarchy", "completeBracketPairs": true},
16
- {"triggerPattern": "^\\s*enum\\s+\\w+\\s*$", "insertText": "enum ${1:Name} {\n ${2:value1}('${3:label1}'),\n ${4:value2}('${5:label2}');\n\n final String ${6:label};\n const ${1:Name}(this.${6:label});\n}", "description": "Enhanced enum with values", "completeBracketPairs": true},
17
- {"triggerPattern": "^\\s*factory\\s*$", "insertText": "factory ${1:ClassName}.${2:named}(${3:params}) {\n return ${4:instance};\n}", "description": "Factory constructor", "completeBracketPairs": true},
18
- {"triggerPattern": "^\\s*class\\s+\\w+\\s+extends\\s+StatelessWidget\\s*$", "insertText": "class ${1:MyWidget} extends StatelessWidget {\n const ${1:MyWidget}({super.key});\n\n @override\n Widget build(BuildContext context) {\n return ${2:Container()};\n }\n}", "description": "Stateless widget", "completeBracketPairs": true},
19
- {"triggerPattern": "^\\s*class\\s+\\w+\\s+extends\\s+StatefulWidget\\s*$", "insertText": "class ${1:MyWidget} extends StatefulWidget {\n const ${1:MyWidget}({super.key});\n\n @override\n State<${1:MyWidget}> createState() => _${1:MyWidget}State();\n}\n\nclass _${1:MyWidget}State extends State<${1:MyWidget}> {\n @override\n Widget build(BuildContext context) {\n return ${2:Container()};\n }\n}", "description": "Stateful widget with State class", "completeBracketPairs": true},
20
- {"triggerPattern": "^\\s*test\\s*$", "insertText": "test('${1:description}', () {\n $0\n});", "description": "Test case", "completeBracketPairs": true},
21
- {"triggerPattern": "^\\s*group\\s*$", "insertText": "group('${1:description}', () {\n $0\n});", "description": "Test group", "completeBracketPairs": true},
22
- {"triggerPattern": "^\\s*typedef\\s*$", "insertText": "typedef ${1:Name} = ${2:Type};", "description": "Type alias", "completeBracketPairs": true},
23
- {"triggerPattern": "\\.then\\s*$", "insertText": ".then((${1:value}) {\n $0\n})", "description": "Future then callback", "completeBracketPairs": true},
24
- {"triggerPattern": "\\.map\\s*$", "insertText": ".map((${1:e}) => ${2:e})", "description": "Map iterable elements", "completeBracketPairs": true},
25
- {"triggerPattern": "\\.where\\s*$", "insertText": ".where((${1:e}) => ${2:condition})", "description": "Filter iterable elements", "completeBracketPairs": true}
26
- ]
1
+ {
2
+ "language": "dart",
3
+ "inlineCompletions": [
4
+ {
5
+ "triggerPattern": "^\\s*void\\s+main\\s*$",
6
+ "insertText": "void main() {\n ${1:print('Hello, Dart!');}\n}",
7
+ "description": "Main function",
8
+ "completeBracketPairs": true
9
+ },
10
+ {
11
+ "triggerPattern": "^\\s*class\\s+\\w+\\s*$",
12
+ "insertText": "class ${1:Name} {\n final ${2:String} ${3:field};\n\n const ${1:Name}({required this.${3:field}});\n\n $0\n}",
13
+ "description": "Class with constructor",
14
+ "completeBracketPairs": true
15
+ },
16
+ {
17
+ "triggerPattern": "^\\s*for\\s*$",
18
+ "insertText": "for (final ${1:item} in ${2:items}) {\n $0\n}",
19
+ "description": "For-in loop",
20
+ "completeBracketPairs": true
21
+ },
22
+ {
23
+ "triggerPattern": "^\\s*if\\s*$",
24
+ "insertText": "if (${1:condition}) {\n $0\n}",
25
+ "description": "If statement",
26
+ "completeBracketPairs": true
27
+ },
28
+ {
29
+ "triggerPattern": "^\\s*try\\s*$",
30
+ "insertText": "try {\n ${1:// code}\n} on ${2:Exception} catch (e) {\n ${3:print(e);}\n}",
31
+ "description": "Try-catch block",
32
+ "completeBracketPairs": true
33
+ },
34
+ {
35
+ "triggerPattern": "^\\s*Future\\s*$",
36
+ "insertText": "Future<${1:void}> ${2:name}() async {\n $0\n}",
37
+ "description": "Async function returning Future",
38
+ "completeBracketPairs": true
39
+ },
40
+ {
41
+ "triggerPattern": "^\\s*Stream\\s*$",
42
+ "insertText": "Stream<${1:int}> ${2:name}() async* {\n yield ${3:value};\n}",
43
+ "description": "Stream generator function",
44
+ "completeBracketPairs": true
45
+ },
46
+ {
47
+ "triggerPattern": "^\\s*switch\\s*\\(",
48
+ "insertText": "switch (${1:value}) {\n case ${2:pattern}:\n $0\n break;\n default:\n break;\n}",
49
+ "description": "Switch statement",
50
+ "completeBracketPairs": true
51
+ },
52
+ {
53
+ "triggerPattern": "^\\s*final\\s+\\w+\\s*=\\s*switch\\s*$",
54
+ "insertText": "final ${1:result} = switch (${2:value}) {\n ${3:pattern} => ${4:expr},\n _ => ${5:default},\n};",
55
+ "description": "Switch expression",
56
+ "completeBracketPairs": true
57
+ },
58
+ {
59
+ "triggerPattern": "^\\s*extension\\s+\\w+\\s*$",
60
+ "insertText": "extension ${1:Name} on ${2:Type} {\n ${3:ReturnType} ${4:method}() {\n $0\n }\n}",
61
+ "description": "Extension declaration",
62
+ "completeBracketPairs": true
63
+ },
64
+ {
65
+ "triggerPattern": "^\\s*mixin\\s+\\w+\\s*$",
66
+ "insertText": "mixin ${1:Name} {\n ${2:void} ${3:method}() {\n $0\n }\n}",
67
+ "description": "Mixin declaration",
68
+ "completeBracketPairs": true
69
+ },
70
+ {
71
+ "triggerPattern": "^\\s*sealed\\s+class\\s*$",
72
+ "insertText": "sealed class ${1:Name} {}\n\nclass ${2:SubType} extends ${1:Name} {\n final ${3:String} ${4:value};\n const ${2:SubType}(this.${4:value});\n}",
73
+ "description": "Sealed class hierarchy",
74
+ "completeBracketPairs": true
75
+ },
76
+ {
77
+ "triggerPattern": "^\\s*enum\\s+\\w+\\s*$",
78
+ "insertText": "enum ${1:Name} {\n ${2:value1}('${3:label1}'),\n ${4:value2}('${5:label2}');\n\n final String ${6:label};\n const ${1:Name}(this.${6:label});\n}",
79
+ "description": "Enhanced enum with values",
80
+ "completeBracketPairs": true
81
+ },
82
+ {
83
+ "triggerPattern": "^\\s*factory\\s*$",
84
+ "insertText": "factory ${1:ClassName}.${2:named}(${3:params}) {\n return ${4:instance};\n}",
85
+ "description": "Factory constructor",
86
+ "completeBracketPairs": true
87
+ },
88
+ {
89
+ "triggerPattern": "^\\s*class\\s+\\w+\\s+extends\\s+StatelessWidget\\s*$",
90
+ "insertText": "class ${1:MyWidget} extends StatelessWidget {\n const ${1:MyWidget}({super.key});\n\n @override\n Widget build(BuildContext context) {\n return ${2:Container()};\n }\n}",
91
+ "description": "Stateless widget",
92
+ "completeBracketPairs": true
93
+ },
94
+ {
95
+ "triggerPattern": "^\\s*class\\s+\\w+\\s+extends\\s+StatefulWidget\\s*$",
96
+ "insertText": "class ${1:MyWidget} extends StatefulWidget {\n const ${1:MyWidget}({super.key});\n\n @override\n State<${1:MyWidget}> createState() => _${1:MyWidget}State();\n}\n\nclass _${1:MyWidget}State extends State<${1:MyWidget}> {\n @override\n Widget build(BuildContext context) {\n return ${2:Container()};\n }\n}",
97
+ "description": "Stateful widget with State class",
98
+ "completeBracketPairs": true
99
+ },
100
+ {
101
+ "triggerPattern": "^\\s*test\\s*$",
102
+ "insertText": "test('${1:description}', () {\n $0\n});",
103
+ "description": "Test case",
104
+ "completeBracketPairs": true
105
+ },
106
+ {
107
+ "triggerPattern": "^\\s*group\\s*$",
108
+ "insertText": "group('${1:description}', () {\n $0\n});",
109
+ "description": "Test group",
110
+ "completeBracketPairs": true
111
+ },
112
+ {
113
+ "triggerPattern": "^\\s*typedef\\s*$",
114
+ "insertText": "typedef ${1:Name} = ${2:Type};",
115
+ "description": "Type alias",
116
+ "completeBracketPairs": true
117
+ },
118
+ {
119
+ "triggerPattern": "\\.then\\s*$",
120
+ "insertText": ".then((${1:value}) {\n $0\n})",
121
+ "description": "Future then callback",
122
+ "completeBracketPairs": true
123
+ },
124
+ {
125
+ "triggerPattern": "\\.map\\s*$",
126
+ "insertText": ".map((${1:e}) => ${2:e})",
127
+ "description": "Map iterable elements",
128
+ "completeBracketPairs": true
129
+ },
130
+ {
131
+ "triggerPattern": "\\.where\\s*$",
132
+ "insertText": ".where((${1:e}) => ${2:condition})",
133
+ "description": "Filter iterable elements",
134
+ "completeBracketPairs": true
135
+ }
136
+ ]
27
137
  }
@@ -1,35 +1,35 @@
1
- {
2
- "language": "elixir",
3
- "inlineCompletions": [
4
- {
5
- "triggerPattern": "^\\\\s*def\\\\s*$",
6
- "insertText": "def ${1:function_name}(${2:args}) do\n\t${3:body}\nend",
7
- "description": "Function definition",
8
- "completeBracketPairs": true
9
- },
10
- {
11
- "triggerPattern": "^\\\\s*defmodule\\\\s*$",
12
- "insertText": "defmodule ${1:ModuleName} do\n\t${2:# module body}\nend",
13
- "description": "Module definition",
14
- "completeBracketPairs": true
15
- },
16
- {
17
- "triggerPattern": "^\\\\s*case\\\\s*$",
18
- "insertText": "case ${1:expr} do\n\t${2:pattern1} ->\n\t\t${3:result1}\n\t${4:_} ->\n\t\t${5:default}\nend",
19
- "description": "Case expression",
20
- "completeBracketPairs": true
21
- },
22
- {
23
- "triggerPattern": "^\\\\s*\\|>\\\\s*$",
24
- "insertText": "|> ${1:Enum}.${2:map}(fn ${3:x} -> ${4:x} end)",
25
- "description": "Pipe chain",
26
- "completeBracketPairs": true
27
- },
28
- {
29
- "triggerPattern": "^\\\\s*fn\\\\s*$",
30
- "insertText": "fn ${1:args} -> ${2:body} end",
31
- "description": "Anonymous function",
32
- "completeBracketPairs": true
33
- }
34
- ]
1
+ {
2
+ "language": "elixir",
3
+ "inlineCompletions": [
4
+ {
5
+ "triggerPattern": "^\\\\s*def\\\\s*$",
6
+ "insertText": "def ${1:function_name}(${2:args}) do\n\t${3:body}\nend",
7
+ "description": "Function definition",
8
+ "completeBracketPairs": true
9
+ },
10
+ {
11
+ "triggerPattern": "^\\\\s*defmodule\\\\s*$",
12
+ "insertText": "defmodule ${1:ModuleName} do\n\t${2:# module body}\nend",
13
+ "description": "Module definition",
14
+ "completeBracketPairs": true
15
+ },
16
+ {
17
+ "triggerPattern": "^\\\\s*case\\\\s*$",
18
+ "insertText": "case ${1:expr} do\n\t${2:pattern1} ->\n\t\t${3:result1}\n\t${4:_} ->\n\t\t${5:default}\nend",
19
+ "description": "Case expression",
20
+ "completeBracketPairs": true
21
+ },
22
+ {
23
+ "triggerPattern": "^\\\\s*\\|>\\\\s*$",
24
+ "insertText": "|> ${1:Enum}.${2:map}(fn ${3:x} -> ${4:x} end)",
25
+ "description": "Pipe chain",
26
+ "completeBracketPairs": true
27
+ },
28
+ {
29
+ "triggerPattern": "^\\\\s*fn\\\\s*$",
30
+ "insertText": "fn ${1:args} -> ${2:body} end",
31
+ "description": "Anonymous function",
32
+ "completeBracketPairs": true
33
+ }
34
+ ]
35
35
  }
@@ -18,6 +18,72 @@
18
18
  "insertText": "if err != nil {\n\t${1:return err}\n}",
19
19
  "description": "Error check",
20
20
  "completeBracketPairs": true
21
+ },
22
+ {
23
+ "triggerPattern": "func\\s+$",
24
+ "insertText": "${1:name}(${2:params}) ${3:returnType} {\n\t${4}\n}",
25
+ "description": "function declaration",
26
+ "completeBracketPairs": false
27
+ },
28
+ {
29
+ "triggerPattern": "for\\s+$",
30
+ "insertText": "${1:i} := 0; ${1:i} < ${2:n}; ${1:i}++ {\n\t${3}\n}",
31
+ "description": "for loop",
32
+ "completeBracketPairs": false
33
+ },
34
+ {
35
+ "triggerPattern": "for\\s+.*range\\s+$",
36
+ "insertText": "${1:collection} {\n\t${2}\n}",
37
+ "description": "for range",
38
+ "completeBracketPairs": false
39
+ },
40
+ {
41
+ "triggerPattern": "if\\s+err\\s*!=\\s*nil$",
42
+ "insertText": " {\n\treturn ${1:err}\n}",
43
+ "description": "error check",
44
+ "completeBracketPairs": false
45
+ },
46
+ {
47
+ "triggerPattern": "if\\s+$",
48
+ "insertText": "${1:condition} {\n\t${2}\n}",
49
+ "description": "if block",
50
+ "completeBracketPairs": false
51
+ },
52
+ {
53
+ "triggerPattern": "switch\\s+$",
54
+ "insertText": "${1:variable} {\ncase ${2:value}:\n\t${3}\ndefault:\n\t${4}\n}",
55
+ "description": "switch statement",
56
+ "completeBracketPairs": false
57
+ },
58
+ {
59
+ "triggerPattern": "fmt\\.Print$",
60
+ "insertText": "ln(${1:value})",
61
+ "description": "fmt.Println",
62
+ "completeBracketPairs": true
63
+ },
64
+ {
65
+ "triggerPattern": "type\\s+$",
66
+ "insertText": "${1:Name} struct {\n\t${2:Field} ${3:Type}\n}",
67
+ "description": "struct type",
68
+ "completeBracketPairs": false
69
+ },
70
+ {
71
+ "triggerPattern": ":=\\s+make\\($",
72
+ "insertText": "${1:type}, ${2:size})",
73
+ "description": "make",
74
+ "completeBracketPairs": false
75
+ },
76
+ {
77
+ "triggerPattern": "defer\\s+$",
78
+ "insertText": "${1:resource}.Close()",
79
+ "description": "defer close",
80
+ "completeBracketPairs": false
81
+ },
82
+ {
83
+ "triggerPattern": "go\\s+func\\($",
84
+ "insertText": ") {\n\t${1:// code}\n}()",
85
+ "description": "goroutine",
86
+ "completeBracketPairs": false
21
87
  }
22
88
  ]
23
- }
89
+ }
@@ -32,4 +32,4 @@
32
32
  "completeBracketPairs": true
33
33
  }
34
34
  ]
35
- }
35
+ }
@@ -12,6 +12,72 @@
12
12
  "insertText": "System.out.println(${1:});",
13
13
  "description": "Print line",
14
14
  "completeBracketPairs": true
15
+ },
16
+ {
17
+ "triggerPattern": "for\\s*\\($",
18
+ "insertText": "int ${1:i} = 0; ${1:i} < ${2:n}; ${1:i}++",
19
+ "description": "for loop with counter",
20
+ "completeBracketPairs": true
21
+ },
22
+ {
23
+ "triggerPattern": "if\\s*\\($",
24
+ "insertText": "${1:condition}",
25
+ "description": "if condition",
26
+ "completeBracketPairs": true
27
+ },
28
+ {
29
+ "triggerPattern": "while\\s*\\($",
30
+ "insertText": "${1:condition}",
31
+ "description": "while condition",
32
+ "completeBracketPairs": true
33
+ },
34
+ {
35
+ "triggerPattern": "switch\\s*\\($",
36
+ "insertText": "${1:variable}) {\n\tcase ${2:value}:\n\t\t${3:// code}\n\t\tbreak;\n\tdefault:\n\t\tbreak;\n}",
37
+ "description": "switch statement",
38
+ "completeBracketPairs": false
39
+ },
40
+ {
41
+ "triggerPattern": "try\\s*\\{$",
42
+ "insertText": "\n\t${1:// code}\n} catch (${2:e}) {\n\t${3:// handle}\n}",
43
+ "description": "try-catch block",
44
+ "completeBracketPairs": false
45
+ },
46
+ {
47
+ "triggerPattern": "//\\s*TODO$",
48
+ "insertText": ": ${1:description}",
49
+ "description": "TODO comment",
50
+ "completeBracketPairs": false
51
+ },
52
+ {
53
+ "triggerPattern": "System\\.out\\.$",
54
+ "insertText": "println(${1:value})",
55
+ "description": "System.out.println",
56
+ "completeBracketPairs": true
57
+ },
58
+ {
59
+ "triggerPattern": "public\\s+class\\s+$",
60
+ "insertText": "${1:ClassName} {\n\t${2}\n}",
61
+ "description": "class declaration",
62
+ "completeBracketPairs": false
63
+ },
64
+ {
65
+ "triggerPattern": "public\\s+static\\s+void\\s+main\\($",
66
+ "insertText": "String[] args) {\n\t${1:// code}\n}",
67
+ "description": "main method",
68
+ "completeBracketPairs": false
69
+ },
70
+ {
71
+ "triggerPattern": "\\.stream\\(\\)\\.$",
72
+ "insertText": "filter(${1:e} -> ${2:condition}).collect(Collectors.toList())",
73
+ "description": "stream filter collect",
74
+ "completeBracketPairs": false
75
+ },
76
+ {
77
+ "triggerPattern": "@Override$",
78
+ "insertText": "\npublic ${1:void} ${2:method}(${3:params}) {\n\t${4:// code}\n}",
79
+ "description": "Override method",
80
+ "completeBracketPairs": false
15
81
  }
16
82
  ]
17
- }
83
+ }