如何让 VS Code 将没有扩展名的文件视为某种语言?

The*_*ler 6 visual-studio-code

在工作中有很多没有扩展名的文件。它们都是 COBOL 文件,所以现在我每次打开它们时都会手动更改它们与 COBOL 的关联。但我一直在寻找一种方法,让 VS Code 自动将没有扩展名的文件视为 COBOL。

我知道您可以在设置中添加文件关联,但唯一有效的方法是添加"*": "COBOL",但随后所有内容都被视为 COBOL 文件...我也试过 `"[^.]": "COBOL" 希望正则表达式工作,但没有。

有没有办法做到这一点?

Mar*_*n S 9

您只能将文件关联应用于给定目录中的所有文件:

"files.associations": {
    "**/RootDir/**/*": "COBOL"
}
Run Code Online (Sandbox Code Playgroud)

这样, 中的所有文件/RootDir/或其子目录之一将映射到 COBOL。
之外的所有文件/RootDir/仍将根据其扩展名照常映射。

假设您/RootDir/不仅包含 COBOL 文件,还包含其他一些文件类型。在这种情况下,您可以进一步定义文件关联的例外:

"files.associations": {
    "**/RootDir/**/*.bat": "bat",
    "**/RootDir/**/*.sh": "shellscript",
    "**/RootDir/**/*": "COBOL"
}
Run Code Online (Sandbox Code Playgroud)

基本上你指示Visual Studio代码中的所有文件映射/RootDir/到COBOL,除了.bat.sh其分别对应的分别批量和shell脚本。
如上所述,外部的所有文件/RootDir/仍将根据其扩展名照常映射。