【问题标题】:Set language automatically in Notepad++ according to file content, not file extension在 Notepad++ 中根据文件内容自动设置语言,而不是文件扩展名
【发布时间】:2013-10-07 02:46:49
【问题描述】:

请注意,这个问题与这个one不同。

我有扩展名为 .sln、.csproj、.config 等的文件。这些都是 XML 文件。当我在 notepad++ 中打开它们时,语言设置为 XML,并且我可以看到语法高亮显示,因为我已按照上述超链接中说明的过程进行操作。但是,我可以有一个扩展名为 .kangaroo 的 XML 文件(一个包含有效 XML 的文件)。我想知道是否有办法——这样当我在 Notepad++ 中打开这个文件时,它会检测到是的,它是一个 XML 文件,然后自动将语言设置为 XML。因此,XML 语法突出显示将在那里。

顺便说一句,Microsoft Visual Studio 已经具有此功能,即如果名为 Temp.kangaroo 的文件包含有效的 XML,并且我在 VS 2012 中打开它,那么它将执行语法高亮显示。但是 Notepad++ 默认不这样做。我们需要手动按照上面超链接中解释的过程进行操作。

谢谢

【问题讨论】:

  • 您是说您希望notepad++ 检测具有任意扩展名的文件中的XML?
  • @Blorgbeard - 是的,这是正确的。 Visual Studio 正是这样做的。

标签: xml visual-studio notepad++ syntax-highlighting


【解决方案1】:

在当前的 N++ 中,没有实现根据文件内容检测语言。语言仅通过文件扩展名检测。

【讨论】:

    【解决方案2】:

    根据release notes,看来 v6.8.4(2015 年 10 月 16 日发布)实现了自动检测语言功能(至少对于一部分语言):

    1. 在文件扩展名未知的情况下应用新添加的语言自动检测(针对 php、xml、html 和 bash)。

    【讨论】:

    • 截至 2019 年 1 月,它仍然没有检测到 web.config(格式正确的 xml)!
    • 嗨@Adaptabi - 请确保web.config 的第一行有<?xml version="1.0" encoding="utf-8"?> - 这应该使Notepad++ 能够将其识别为XML。
    猜你喜欢
    • 2017-01-27
    • 1970-01-01
    • 2015-08-14
    • 1970-01-01
    • 2011-08-19
    • 1970-01-01
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    相关资源
    最近更新 更多