如何让代码片段仅在 Visual Studio 代码中显示特定的文件扩展名?
How to make snippets show up only with specific file extensions in Visual Studio Code?
几周来我一直在努力解决这个问题,但我最终放弃了并决定寻求帮助..
我为我的 Web 项目(HTML、PHP、JS、VUE、Laravel Blade 等)编写了很多片段,并创建了几个全局 .code-片段文件,它们会出现在我在 VSCode 中打开的每个项目或文件中,这不是我想要的行为,我会向您解释原因。
当我打开 C++ 项目时我不希望编辑器提示我 HTML 东西或 Bootstrap 图标,我制作了特定的 C++ 脚本(并为 C++ 语言模式添加了 .h 扩展名,否则它们只能处理扩展名为 .cpp 的文件),不幸的是我不能用我之前提到的语言做同样的事情,因为它们是完全不同的语言。
在我的 \AppData\Roaming\Code\User\snippets
文件夹中,我可以看到有两种类型的文件,我的自定义片段有 .code-snippets 扩展名,语言特定片段有 .json 扩展名(示例 cpp.json
), 语法相同。
我可以为每个文件扩展名创建一个 custom.code-snippets
的副本,并将其与我需要的每种语言配对(例如 html.json
、php.json
、blade.json
等.) 但这对我来说真的很愚蠢,因为如果我想添加一个片段,我必须手动将它添加到每个文件中。
提前谢谢你,
我找到的最佳解决方案是对单个片段使用“范围”,但我对此并不十分满意:
"Bootstrap Icons Alarm Fill": {
"prefix": ["bsi-alarm","bsi-clock"],
"body": "<i class='bsi bi-alarm'></i>",
"description": "Bootstrap Icons Alarm Fill"
},
我可以添加到每个片段:"scope":"html,php,blade,vue,javascript,xml",
使其只显示指定的文件扩展名,但我必须将它添加到每个片段(想象一下,只有在这个文件中我有超过 1200片段,我可以很容易地做到这一点,但我不想这样做),我想让整个文件特定于几个扩展名。
几周来我一直在努力解决这个问题,但我最终放弃了并决定寻求帮助..
我为我的 Web 项目(HTML、PHP、JS、VUE、Laravel Blade 等)编写了很多片段,并创建了几个全局 .code-片段文件,它们会出现在我在 VSCode 中打开的每个项目或文件中,这不是我想要的行为,我会向您解释原因。
当我打开 C++ 项目时我不希望编辑器提示我 HTML 东西或 Bootstrap 图标,我制作了特定的 C++ 脚本(并为 C++ 语言模式添加了 .h 扩展名,否则它们只能处理扩展名为 .cpp 的文件),不幸的是我不能用我之前提到的语言做同样的事情,因为它们是完全不同的语言。
在我的 \AppData\Roaming\Code\User\snippets
文件夹中,我可以看到有两种类型的文件,我的自定义片段有 .code-snippets 扩展名,语言特定片段有 .json 扩展名(示例 cpp.json
), 语法相同。
我可以为每个文件扩展名创建一个 custom.code-snippets
的副本,并将其与我需要的每种语言配对(例如 html.json
、php.json
、blade.json
等.) 但这对我来说真的很愚蠢,因为如果我想添加一个片段,我必须手动将它添加到每个文件中。
提前谢谢你,
我找到的最佳解决方案是对单个片段使用“范围”,但我对此并不十分满意:
"Bootstrap Icons Alarm Fill": {
"prefix": ["bsi-alarm","bsi-clock"],
"body": "<i class='bsi bi-alarm'></i>",
"description": "Bootstrap Icons Alarm Fill"
},
我可以添加到每个片段:"scope":"html,php,blade,vue,javascript,xml",
使其只显示指定的文件扩展名,但我必须将它添加到每个片段(想象一下,只有在这个文件中我有超过 1200片段,我可以很容易地做到这一点,但我不想这样做),我想让整个文件特定于几个扩展名。