我想在VSCode中创建一个显示PHP箭头的代码段。 当我按下键“²”然后按Tab时,我需要PHP箭头“->”。
这是我的代码段
"PHP arrow": {
"prefix": "²",
"body": "->$0",
"description": "PHP Arrow ->"
},
当“²”字符周围没有任何东西,但是当我编写类似的代码时,
$this²
代码段未触发
我该怎么办?
谢谢你,祝你有美好的一天:)
PS:²字符在VSCode中为 oem_7
答案 0 :(得分:0)
我不知道您要使用什么按键来插入上标²。但是,如果您尝试将其用作单词结尾的摘要,请尝试进行键盘绑定。
VSCode无法知道²是否打算作为单词的一部分。
在您的 keybindings.json 中尝试此操作-不在摘要文件中:
{
"key": "2",
"command": "editor.action.insertSnippet",
"when": "resourceExtname == .php",
"args": {
"snippet": "->$0"
}
}
键入$this2
会产生$this->
:
显然,您必须用想要使用的任何内容替换上面的2
键。现在,您可以将代码段用作单词的一部分或单词的结尾,而无需任何必要的单词边界。
答案 1 :(得分:0)
此问题的根本原因是VS Code不知道²
应该被当作自己的“单词”。如果您考虑使用字母前缀的代码段(例如x
:
"PHP arrow": {
"prefix": "x",
"body": "->$0",
"description": "PHP Arrow ->"
}
如果您键入ax|
,则不会触发此代码段,因为x
是单词ax
的一部分,并且x
的代码段前缀与该单词不匹配ax
。
在您的$this²|
示例中,用于检查前缀的单词是this²
,该代码段的前缀不匹配。
@Mark可能是正确的建议您提出另一种工作流程。没有编写扩展,我认为您无法使当前方法顺利进行