用户语言下拉菜单列出了所有已创建的 UDL,你可以从中选择想要编辑或查看的语言。其中有一个特殊条目叫做“User Defined Language”(在 Notepad++ 的“语言”菜单中显示为“User-Defined”),这是默认的 UDL 模板,可用来创建其他自定义语言。
创建新的…… 会将默认的用户定义语言样式和规则复制到一个新名称下。
另存为…… 会将当前选中的 UDL 及其所有样式和规则复制到一个新名称下。
导入…… 可将一个 UDL 的 XML 文件导入到当前 Notepad++ 实例中(详见下文)。
导出…… 可将当前 UDL 保存为 XML 文件,保存位置由你指定;之后你可以将此文件分享给他人,供他们导入使用。
停靠 / 取消停靠 可切换 UDL 对话框是作为独立窗口显示,还是嵌入在 Notepad++ 主窗口中。
忽略大小写:勾选后,关键词匹配时将不区分字母大小写。
透明(仅在未停靠时有效):勾选后,对话框会变为半透明状态。滑块向左拖动时几乎完全透明,向右拖动时逐渐变得不透明。若希望完全不透明,请取消勾选此选项。
重命名:更改当前选中 UDL 的名称。
删除:永久移除当前选中的 UDL。
扩展:____:在此处填写一个或多个文件扩展名(不要加点号)。匹配这些扩展名的文件会被自动识别为当前 UDL 类型,并应用相应的高亮样式。这些扩展名优先级高于 Notepad++ 内置语言的默认扩展名。例如,若填写“md mkdn”,则文件如 file.mkdn 或 something.md 将使用你当前选中的 UDL 进行高亮。
- 文件夹与默认 标签页用于设置默认文本样式、定义用于代码折叠的关键词(或字符),以及为这些折叠关键词设置显示样式。每种折叠类型下的“开”、“中间”和“关”三个输入框,分别定义折叠区域的起始、中间和结束触发词。
例如,使用 if、else 和 endif 作为折叠关键词时,系统会自动创建可折叠区域:可以从 if 折叠到 else,从 else 折叠到 endif;如果没有 else 分支,则可直接从 if 折叠到 endif。
“注释中的折叠”允许在注释内使用折叠功能;
“代码 1 风格折叠”允许触发词紧贴其他字符(例如触发词为 { 时,if{ 或 if { 都能被识别);
“代码 2 风格折叠”则要求触发词前后必须有空白(例如 if{ 不会被识别为有效的 { 触发)。⇒ 详情:默认样式
⇒ 详情:代码中的折叠
⇒ 详情:注释中折叠 - 关键词列表 标签页允许定义最多八组不同的关键词,以便为不同类型的词设置不同样式(例如将内置函数与流程控制关键字区分开)。
每个关键词之间用空格分隔(这意味着关键词本身不能包含空格,除非用引号将整个短语括起来)。
如果为某组勾选了“前缀模式”,则只要文本以该关键词开头,就会被匹配(例如关键词设为 for,且启用前缀模式,则 for、forth、format 都会被高亮)。注意:同一个关键词不应同时出现在多个关键词组或折叠组中。例如,如果你希望 if/else/endif 用于代码折叠,就不要再把它们加入关键词高亮组。⇒ 详情:关键词 - 注释与数字 标签页用于设置注释和数字的显示样式。
“行注释位置”选项决定行注释的起始规则:可以允许在行中任意位置开始,必须从行首开始,或仅当注释前只有空白字符时才生效。
勾选“允许折叠注释”后,注释块也可被折叠。
“行注释样式”用于定义从触发符到行尾的单行注释外观。
“注释样式”用于定义多行注释的外观。⇒ 详情:注释“数字样式”用于定义数字的高亮方式。通过设置前缀、后缀和附加字符,可以支持十六进制、二进制、八进制等特殊数字格式,甚至可将货币符号(如 $100)识别为数字。
“范围”功能允许你定义一种区间语法,使得两个数字之间夹着特定符号(如 1–5 中的 –)时,整体仍被视为一个数字单元。
(但需注意:如果“范围”中使用的符号与“运算符与分隔符”中定义的符号冲突,可能导致识别异常。)⇒ 详情:数字 - 运算符与分隔符 标签页用于设置运算符和成对分隔符的样式。
“运算符 1”和“运算符 2”分别定义两组运算符:⇒ 详情:运算符各种“分隔符”样式由一对“开”和“关”字符组成。这对字符及其之间的所有内容,都会按照设定的规则统一高亮。这适用于字符串、括号内的参数列表、方括号表达式等场景。
“转义”设置允许你定义转义字符,防止分隔符被提前关闭。例如,在字符串中使用反斜杠 \ 转义引号(如 "this is a quote"),可确保字符串不会在第一个 " 处意外结束。 运算符 1 可紧贴其他字符(如 1+2 中的 + 能被正确识别);
运算符 2 则必须前后有空格才能被识别(如 1 + 2 中的 + 才有效)。