VS Code 的通配符目前似乎无法检测没有扩展名的文件。每次有人提出问题时,他们都会将其指向这个问题在这里 https://github.com/Microsoft/vscode/issues/1800。他们详细介绍了他们的此处提供全球支持 https://code.visualstudio.com/docs/extensionAPI/vscode-api#GlobPattern.
也就是说,我确实有一个解决方案。将其放入您的“工作空间设置”中(不是您的常规设置,除非您确实希望它是全局的)。
{
"files.associations": {
"[!.]": "php",
"[!.][!.]": "php",
"[!.][!.][!.]": "php",
"[!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php"
},
}
这是通过为每个文件名长度添加规则并确保文件中不能包含句点(在我的示例中最多 20 个字符)来实现的。这是一个可怕的黑客解决方案,但如果你捏住鼻子并设置一次,你就可以忘记它,事情就会正常进行。我在 dotfiles 存储库中执行此操作,将无扩展名文件与“shellscript”相关联。
您还可以使用双星 glob 仅针对特定目录执行此操作:"**/just_this_dir_name/[!.]": "php"
.