子文件夹和特殊字符文件夹的 VSCode 语言模式关联

Linda Hamilton
发布: 2024-11-01 16:13:02
原创
879 人浏览过

VSCode language mode association for subfolders and special characters folders

Visual Studio Code (VSCode) 支持大量文件格式。 VSCode 根据文件名和扩展名找到语言模式。通常,只要合理的默认值就可以了。但是如果您想为不同的文件夹使用不同的语言模式怎么办?

VSCode 在其 .vscode/settings.json 文件中有一个 files.associations 对象。这是全局模式到语言模式的映射。请参阅 VSCode 文档中支持的 glob 模式语法。

如何更改任何地方所有文件的语言模式

最简单的变体。所有文件需要不同的语言模式。

例如,当使用 Tailwind CSS 进行样式设置并为 VSCode 安装 Tailwind CSS 扩展时,您希望将所有 *.css 文件更改为 tailwindcss 模式而不是纯 css。

如何更改特定路径的语言模式

某些子文件夹下的文件需要不同的语言模式也并不罕见。

例如,当主题化 Sphinx 文档时,您创建了很多 HTML 文件,这些文件不是纯 HTML,而是 Jinja HTML。我安装了 Better Jinja 扩展,它提供了 jinja-html 模式。

更安全的是使用**,意思是任何地方 - 在路径或任何子路径。

如何转义语言模式文件.关联的特殊字符?

现在是我在准备基于 Cookiecutter 模板生成器的入门模板新 Sphinx 主题期间发现的棘手部分。

Cookiecutter 项目使用名为 {{ cookiecutter.project_slug }} 的文件夹。仅在其下我想更改关联,例如对于 *.py 从 py 到 jinja-py。

VSCode 文档中没有描述转义 glob 模式特殊字符(如 *、{ 等),但这是可能的。

首先,这些不起作用

  • "{{ cookiecutter.project_slug }}/**/*.py": "jinja-py" 因为 { 和 } 是 glob 模式的分组字符。
  • “{{{{ cookiecutter.project_slug }}}}/**/*.py": "jinja-py" 因为加倍转义不是 VSCode glob 模式转义机制
  • {{ cookiecutter.project_slug }}/**/*.py": "jinja-py" 因为对于反斜杠转义,is 转义字符而是 JSON 本身(例如,n)。

转义反斜杠就可以了("\{\{ cookiecutter.project_slug \}\}/**/*.css": "tailwindcss")。例如:

以上是子文件夹和特殊字符文件夹的 VSCode 语言模式关联的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!