在 VS Code 中,我通常打开没有扩展名的文件 filename
.我知道我可以通过更改语言模式 --> 我想要的语言来更改语言语法,但我不想每次打开这样的文件时都手动执行此操作。每次打开没有扩展名的文件时,我可以默认使用这种语言吗?
我知道我可以这样做:
"files.associations": {
"*.myphp": "php"
}
但是如果没有扩展呢?此外,我希望能够在不影响其他文件类型(具有扩展名)的情况下执行此操作。
最佳答案
VS Code 的 globbing 目前似乎没有办法检测没有扩展名的文件。每次有人打开问题时,他们都会将其指向 this issue here .他们详细说明了他们的 globbing support here .
也就是说,我确实对此有一个hacky解决方案。把它放在你的“工作区设置”中(不是你的常规设置,除非你真的希望它是全局的)。
{
"files.associations": {
"[!.]": "php",
"[!.][!.]": "php",
"[!.][!.][!.]": "php",
"[!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php",
"[!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.][!.]": "php"
},
}
这是通过为每个文件名长度添加规则并确保文件中不能包含句点(在我的示例中最多 20 个字符)来实现的。这是一个可怕的hacky解决方案,但是如果您握住 Nose 并设置一次,您可以忘记它并且一切正常。我在我的 dotfiles 存储库中执行此操作以将无扩展名的文件与“shellscript”相关联。
您也可以通过使用双星 glob 为特定目录执行此操作:
"**/just_this_dir_name/[!.]": "php"
.
关于visual-studio-code - 默认为 VS Code 上的语言分配没有扩展名的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49410524/