最近在使用CAPL编写代码文件时发现,notepad++不能识别cin和can文件,而这俩文件的语法高亮其实和c语言很相近,于是我每次都手动让notepad++将这俩文件识别为c文件,比较麻烦。这里提供两种方法以让notepad++能够对CAPL语言进行高亮显示。
一、将cin和can添加到c语言的扩展名识别库的
首先,打开Notepad++,选择 设置->语言格式设置
在语言格式设置对话框中的语言:下方找到并选中c,此时,下方默认扩展名可以看到是c lex,我们把cin can加入到后面的自定义扩展名中,或者直接加到默认扩展名后面也可,记得以空格分隔每个扩展名,此时最下面的保存并关闭会变成可操作状态,点击保存并关闭,然后重新打开Notepad++即可。
这里对以前的操作进行解释下。以前在网上搜索的方法都是直接去修改langs.xml文件,该文件位置可能在安装目录下,也可能在C:\Users\用户名\AppData\Roaming\Notepad++目录下。免装版的,在安装目录下,没有问题,但是安装版本的不一定都在用户名目录下面,所以找起来比较麻烦。使用上述方法,如果我们把自己的扩展名填到默认扩展名下面,实际上就是修改的langs.xml这个文件,因此使用该方法不用再自己去找这个文件了。如果我们把自己的扩展名填到自定义扩展名下面,其实修改的是stylers.xml这个文件,从语言格式设置界面的上方选择主题后面也可以看出来。
值得注意的就是,如果直接修改了langs.xml或者stylers.xml文件,发现相应扩展名文件没有高亮显示,此时只要打开一下语言格式设置界面,如果填写正确,我们可以在此界面看到填写的内容,然后不用操作,直接关闭,再次重新打开文件就能显示正常了。
二、自定义语言格式
首先以管理员方式打开Notepad++(PS:自己踩的坑,普通方式打开设置完自定义语言格式,又没有及时导出保存,后续进行首选项设置需要以管理员方式打开,会导致自定义语言格式设置丢失),然后打开语言->自定义语言->自定义语言格式对话框:
点击新建,填入自定义语言名称,我填的是CAPLE
以下是我的设置及最终显示效果截图截图:
1、层次设置与默认格式
默认格式设置,其实就是全局显示格式设置,前景色就是对全局文字的颜色进行设置,背景色就是对整个页面的颜色进行设置,其他的自己尝试下就能明白,这里我没动。
折叠注释样式,其实就是用来设置折叠效果的。样式下面的开始-中间-结尾,并不是都得填。值得注意的是,这里的设置并不是我们理解的多行注释的识别,而是允许多行注释中可以存在折叠效果,如果我们这里填写的是/*和*/会发现其实并不能实现注释识别和折叠效果,实际上注释的识别是在注释与数字这个tag里设置的,这里是为了自定义一种用以识别注释折叠的方式,比如截图中定义了start和end关键字。实际上根据官方帮助文档我们也可以理解到,代码1样式折叠和代码2样式折叠部分,是为了填写类似if-elseif/else-end这种代码结构的。
2、关键字列表
关键字就很好理解了,这里一共给了8组给我们选择,根据需求进行填写即可,不必全填。
3、注释与数字
这个就很好理解了,就是填写单行注释、多行注释以及数字的识别的,注释我这里样式里只设置了背景色为绿色,毕竟习惯了。数字前缀、后缀,其实就是识别二进制、八进制、十六进制这类数字,比如为了识别16进制数,附加1里填了A B C D E F a b c d e f,空格分开,值得注意的是,为了能识别不带前缀的数据,比如1234,也能识别诸如0x0A,前缀1就必须什么都不填,前缀2里填0x,后缀也是一个道理,后缀1里必须什么都不填,后缀2里填想要的后缀名,多个后缀名用空格分开。
4、数字与运算符
运算符这个设置时很重要的,比如()小括号,如果没有设置成运算符,诸如function(10)这种代码中的数字,就不能被识别为数字进行高亮显示。
5、最终效果截图
其实设置了这么多,都是为了对代码中关键字进行高亮显示,所以样式的设置虽然没有都写,但是大家不要忘了设置啊,毕竟你不设置,它也不知道识别出来后应该怎么给你高亮显示。
如果上述说明看不明白,这里给出我的自定义语言导出文件以帮助理解:
notpad++高亮显示cin、can文件内容自定义语言导出文件
使用方法就是,下载完文件后,在自定义语言格式界面,选择导入,将这个xml文件导入即可。
最后,毕竟也是自己摸索出来的,如果有不正确的地方,欢迎指正。
参考文件: