在当前版本的Notepad ++中,打开.sql文件会导致Notepad向其应用SQL语法突出显示。我希望Notepad ++也可以对其他扩展名执行相同的操作,是否可以在其中进行一些定义?

评论

还不是吗默认情况下应该这样做。

它适用于.sql文件,而不适用于其他文件

我希望Notepad ++只记得从菜单中为每个文件选择的语言,或者是第二次将扩展名与某种语言相关联时,提供了将扩展名添加到该语言的样式配置器中的功能。

请注意,您还可以通过“语言/定义您的语言...”菜单来修改扩展程序的语言颜色。

我如何告诉Notepad ++始终使用具有特定文件扩展名的特定语言的可能重复项

#1 楼

在notepad ++中打开文件时,它将尝试基于文件扩展名加载内容的语法高亮显示。

如果您将自定义扩展名用于一种现有语言,则可以在“设置”->“样式器配置器”中添加自定义扩展名。选择语言,然后在“用户扩展名”编辑框中添加扩展名。要添加多个扩展名,请使用空格将它们分开。

,然后您需要重新打开文件以查看应用的语法突出显示。

还可以通过选择更改语法突出显示样式与语言菜单中的语言不同。

评论


我已经尝试过了,但是它只分配给1个扩展名,我想分配多个扩展名。

– Sathyajith Bhat♦
09-09-14 at 11:39

您可以通过将多个扩展名之间用空格隔开来添加多个扩展名,并将其添加到我的帖子中

– T. Kaltnekar
09年9月14日在12:23

请注意,进行此更改将不会影响当前在Notepad ++中打开的文件。此外,关闭和重新打开Notepad ++仍然不会影响在会话之间保持打开状态的文件。必须关闭并重新打开各个文件才能看到效果。

–mwolfe02
2012年5月10日16:12

此方法也不适用于用户定义的语言。对于这些,请参见下面的答案,但请编辑userDefineLang.xml而不是langs.xml。

–Chase Sandmann
2014年6月12日下午16:15

仅当以管理员身份打开Notepad ++时,此方法才有效。看到这个问题:github.com/notepad-plus-plus/notepad-plus-plus/issues/67似乎还可以将程序文件中的更改(这就是权限问题的原因)保留在C:\ Program Files(x86)\中Notepad ++ \ themes \ SelectedTheme.xml,这意味着在切换主题时不使用此设置。

–丹尼尔·博格丹(Daniel Bogdan)
17年8月18日在8:31



#2 楼

找到langs.xml文件(通常在C:\ Users [用户名] \ AppData \ Roaming \ Notepad ++下),用Notepad ++打开它,找到以<Language name="sql" ext="sql"开头的行,并在ext字段中添加所需的扩展名,并用ext分隔它们

要使用用户定义的语言来执行此操作,请查找userDefineLang.xml并编辑ext=""

如果您以“便携式”模式安装了notepad ++,那么langs.xml和userDefineLangs.xml将直接位于notepad ++所在的文件夹中。

评论


这种方法也很好用,但是T. Kaltnekar的方法更加用户友好,谢谢!

– Sathyajith Bhat♦
09-09-14 13:59

这是我知道的唯一方法:)。

– alex
09-09-14 at 14:01

很好,我更喜欢这种方法,我有很多自定义扩展名,并且通过这种方式更容易复制和粘贴它们。

–詹姆斯
2011-2-28在19:27

这种方法对我有用。我不明白为什么无法在GUI中添加扩展名。 “ C:\ users(用户)\ appdata \ roaming \ notepad ++ \ langs.xml”

– jmmr
2012年7月18日在16:42

我没有安装Notepadd ++,只是解压缩了,所以lang.xml文件在应用程序目录中;-)

–贝塔利斯塔
2015年11月26日14:19



#3 楼

如果使用的是Notepad ++会话文件(我将其命名为*.nppxml),则可以对其进行编辑并更改<File lang="...">属性,例如



 <File ... lang="Normal Text" ... filename="httpd.conf"
<File ... lang="Normal Text" ... filename="some.log"
 


至:

 <File ... lang="Powershell" ... filename="httpd.conf"
<File ... lang="log" ... filename="some.log"
 


立即获得高亮的默认值(或在我的*.log文件中为用户定义),语法高亮显示,而无需重新打开每个文件等。