visual-studio-code - 默认为 VS Code 上的语言分配没有扩展名的文件

标签 visual-studio-code

在 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/

相关文章:

c# - 找不到 VSCode Unity OmniSharp .NETFramework

visual-studio-code - VSCode 编辑器未填充所有可用空间

javascript - 触发 OnSave [Visual Studio 代码 : Extension]

python-3.x - Azure Python 函数中导入模块错误 (Linux)

javascript - 模板字符串不起作用

c# - Visual Studio Code Ubuntu - 标记输入时模式失败

ubuntu - 在 Ubuntu 上构建 vscode 时找不到包 'xkbfile'

listview - Flutter:Listview渲染库问题:垂直视口(viewport)被赋予无限宽度

visual-studio-code - 如何清除 Visual Studio Code 建议缓存?

visual-studio-code - 更改后需要刷新 VSCode 片段吗?