制作 vscode 片段仅在特定字符后触发
Making vscode snippets only trigger after specific characters
假设我有以下一堆功能:
library.object1.function1()
library.object1.function2()
library.object2.function1()
library.object2.function2()
library.object3.function1()
library.object3.function2()
他们在当前的自定义代码段中提供的内容,当我输入lib
时,它会显示上述所有功能,如果功能太多会很乱。
我想让我的代码片段像它们在默认代码完成中所做的那样工作:
- 当我键入
lib
时,它只显示:
library
- 当我键入
library.
时,它显示:
object1
object2
object3
- 当我输入
library.object1.
时,它显示
function1()
function2()
- 此外,如果我键入
lib
,然后将其留在那里,然后返回并添加 rary
,该代码段根本不起作用,我希望它继续完成。
有没有办法实现?
我想你能得到的最接近的是这样的(以 javascript.json 片段文件为例):
"my library": {
"prefix": "lib",
"body": [
"library.${1|object1,object2,object3|}.${2|function1,function2,function3,function4|}()",
],
"description": "my library functions"
}
因此,当您键入 lib
时,您只会得到 library
建议的完成。 Tab,您将在建议面板的代码段中获得所有 object
选项。再次 Tab 将获得您在代码段中列出的 function
选项。
假设我有以下一堆功能:
library.object1.function1()
library.object1.function2()
library.object2.function1()
library.object2.function2()
library.object3.function1()
library.object3.function2()
他们在当前的自定义代码段中提供的内容,当我输入lib
时,它会显示上述所有功能,如果功能太多会很乱。
我想让我的代码片段像它们在默认代码完成中所做的那样工作:
- 当我键入
lib
时,它只显示:
library
- 当我键入
library.
时,它显示:
object1
object2
object3
- 当我输入
library.object1.
时,它显示
function1()
function2()
- 此外,如果我键入
lib
,然后将其留在那里,然后返回并添加rary
,该代码段根本不起作用,我希望它继续完成。
有没有办法实现?
我想你能得到的最接近的是这样的(以 javascript.json 片段文件为例):
"my library": {
"prefix": "lib",
"body": [
"library.${1|object1,object2,object3|}.${2|function1,function2,function3,function4|}()",
],
"description": "my library functions"
}
因此,当您键入 lib
时,您只会得到 library
建议的完成。 Tab,您将在建议面板的代码段中获得所有 object
选项。再次 Tab 将获得您在代码段中列出的 function
选项。