UltraEdit 语法加亮(配置)介绍UltraEdit 是常用的文本编辑和代码读取文档,但对于我们这些编码小白 来说,生成自定义的 wordfile 文件,还是有一定困难,在此将 wordfile 中的 语法高亮进行介绍 语法加亮分支位于配置-编辑器显示之下,允许用户配置语法加亮选项:语法加亮可以识别预定词语,并用不同颜色显示它们该功能对于程序员来说尤其有用,并且对那些想 用不同颜色显示文档中词语的用户也非常有用提供二十种语言或可识别的词语集支持下列词语组的每个词语集都可以配置为不同的颜色: 普通文本(无法识别的词语)出现在注释行或块注释中的词语块注释的代用集字符串数值(必须以数字(0-9)开头)最多八组不同的可识别词语配置对话框允许选择用于不同语言和颜色组的颜色同时也允许用户指定用于加亮的“词语文件”的位置可以任意设置前景/文本颜色和背景的颜色组默认情况下,背景使用显示普通文本时指定的背景(自动背景颜色被选中)只有在未选中的情况下才能激活背景颜色 可以点击文本描述旁边的彩色框更改每种颜色当点击时,将出现一个允许选择新颜色的对话框 另外,对每种颜色组(普通文本除外)都有各种粗体、斜体和下划线的字体样式。
每个颜色组均可以单独选择某些设置了下划线的字体可能无法总是正确显示,而对于粗体,非固定宽度字体的间距也可能不正 确自动更正关键字复选框用来启用或禁用自动更正功能注意 - 加亮功能是通过文件扩展名决定的(详情如下)文件扩展名修改必须在相应语言中的“词语文件” 中定义用户可以如下配置预定义词语:UltraEdit读取一个配置文件(默认文件是“WORDFILE.TXT”),来配置语法加亮每次编辑器启动时读取 该文件该文件的大小不能超过372KB该文件语法如下所示: 语言定义 用 /Ln 指定的词语集或语言,这里的 n 是 1 到 20 之间的值它必须位于行首语言的描述或名字可以 直接在 /Ln 后面的引号中指定当设置语言颜色时,则显示该描述(如果有)描述应该不大于 24 个字 符行注释用于以字符串"Line Comment = ”及其后的注释字符指定行注释的注释字符允许五个字符,如果小于五个 字符,那么最后一个字符必须后接一个空格第二套行注释可以用字符串"Line Comment Alt = ”及其后的注释字符指定允许五个字符,如果小于五个 字符,那么最后一个字符必须后接一个空格在某些情况下,可能需要以一个空格作为行注释的一部分,可以用另外一个方法来描述行注释。
这种可选 的方法是,用户以下列语法指定使用的字符数:"Line Comment Num = xCC "这里的 x 用来指定字符数 (1 到 5),直接跟随其后的字符用于行注释,在上面的示例中, x 应该是 3, 行注释应该是“CC ”(请注意CC后面的空格)此外,有时需要将限定词用于行注释,这样注释仅在某列出现时有效,或在某些字符之后有效(当然,更 多情况下如果跟随在某些字符之后,它们常常是无效的)为能够达到此目的,这里提供两个额外的行注 释命令:"Line Comment Preceding Chars = […]"and"Line Comment Valid Columns = [1-7,10]"“行注释前导字符”(Line Comment Preceding Chars)的默认值为所有字符都有效因此,该项目将包括 那些在代字号后面无效的字符,如…[〜a-z]中一样这表明该注释如果紧跟字符范围a-z之内则该注释无 效在方括号之间的任何符号都有效行注释有效列”(Line Comment Valid Columns)是当其未定义时所有的列都有效如果定义了它,则只 有指定的行才有效可以有最多10个列范围,或以逗号分隔的指定列口…[1-7, 10]中一样。
这表明注 释符号在列 1 到 7,或在列 10 都有效块注释用于块注释的字符也可以配置(即/* ... */表示 C)它们的格式为“Block Comment On ="和“Block Comment Off = ”,每种格式后接最多19个定义注释标志符的字符为与先前版本兼容,将7*'和„*/'用 于以„.C'作为扩展名之一的文件类型它可以被覆盖块注释的第一个字符可以为空格如果定义了 “Block Comment On = ”而未定义“Block Comment Off =",则注释将在行尾停止它有效地实 现块注释也能用于行注释此外,可以为需要的语言定义另一套块注释这对于 ASP 尤其有用,可以在为 ASP 块添加高亮显示之 外允许保持 HTML 注释另一套块注释的格式为"Block Comment On Alt ="和"Block Comment Off Alt =",每种格式后接最多19 个定义注释标志符的字符块注释的第一个字符可以为空格如果定义了"Block Comment On Alt"而未定义"Block Comment Off Alt",则注释将在行尾停止它有效地实 现块注释也能用于行注释。
UltraEdit/UEStudio 默认情况下会在遇到单个块注释结尾字符串时结束任何块注释 要使UltraEdit/UEStudio 将所有块注释开始字符串与所有块注释结束字符串确切匹配,需要指定内嵌块注释命 令 通过添加 NestBlockComments 命令到语言定义行(即 /L3"HTML" NestBlockComments ...)来实 现文件扩展名/类型 语法加亮取决于文件名或扩展名更常见的是使用扩展名,而指定扩展名用于该语言时应使用以下字符串: "File Extensions = " 且每个扩展名以空格分开 在此指定的文件扩展名不区分大小写文件扩展名是文件名中最后一个点之后的内容"File Extensions = ”声明之后可以接多达97 B的内容如 果在此指定的一系列文件扩展名超过97 B,则无法解析用户可以将指定文件扩展名的最后替换为 "*",从而指定语言为语法加亮的默认设置 该设置也 将用于高亮显示未保存的文件或没有指定扩展名保存的文件的文件类型要指定一个文件名(而非文件扩展名)用于确定语言,应该使用以下字符串:"File Names ="且每个名称 以空格分开。
必须包括扩展名,即: "File Names = ThisFileName.xml""File Names = "声明之后可以接多 达 125 B 的内容工作语法分析如果首行包括如下预期中的Perl/XMLPerl说明内容,Perl和XML文件可能在没有后缀名的情况下被保 存并予以相应突出显示:Perl #!/usr/bin/perlPHP #!/bin/phpPython #!/bin/pythonXML
该区段的描述 或名称可以紧跟 /Cn 之后在引号中指定如果有此描述,则在设置该语言的颜色时将显示此描述描述可 以多达 24 个字符所有指定的信息保持有效,直到用新命令信息覆盖下面的示例指定了第一个语言用于带有'C', 'CPP', 'H'或’HPP'的文件这些词语使用的颜色为第一个可 选的颜色,且注释字符为 ///L1"C/C++" Line Comment = // Block Comment On = /* Block Comment Off = */ FileExtensions = CPPC H HPP/C1autobreakcase char const continue chr$default do double大小写区分如果该语言不区分大小写,可以在命令行添加关键字“Nocase”,即:/L1 Line Comment = // Nocase File Extensions = CPPC H HPP字符串 使用很多编程语言时,单引号和双引号之内的字符视为文字字符串,词语和注释识别应予忽略这是 UltraEdit 的默认行为有些语言(如 HTML 等)不希望此类行为为帮助此类语言,可以在命令行添加 关键字“Noquote "来覆盖默认行为,即:/L1 Noquote File Extensions = HTMUltraEdit现在支持可配置的字符用于引号字符串。
默认用于字符串的字符时单引号(')和双引号(")它们 可以用关键字 "String Chars = " 后接最多两个字符来覆盖仅当需要使用不同于默认的符号时才需要此操 作如果,例如希望对字符串仅使用双引号时,则可以使用类似下面的行:/L1"C/C++" Line Comment = // Block Comment On = /* Block Comment Off = */ String Chars = " File Extensions = CPPC H HPP请注意"String Chars"部分此外,如果定义的字符串有两个字符(或使用默认)且希望对每个字符串类型使用不同的颜色,即可用某 一颜色组在一行里自行包含该字符(即:双引号)这将覆盖由该字符包围的字符串使用的可配置颜色/L1"C/C++" Line Comment = // Block Comment On = /* Block Comment Off = */ String Chars = '" File Extensions = CPPC H HPP/C1autobreak上面的示例中,所有以双引号 (") 包围的字符串将使用颜色组 C1 着色,而以 (') 包围的字符串将为字符 串使用默认颜色。
换码符在很多语言里有一个专门指定的字符用来引用“换码符"它用于覆盖正常的字符串字符(及其它字符) 如果某字符串定义为自身包含通常用于定义字符串的引号字符,则语法加亮将该引号解释为字符串的结束 如果该引号符以“换码符"引导,则该引号符将被正确处理为字符串的一部分,而非其尾部换码符定义如下:/L1"C/C++" Escape Char = \ …在此例子里,换码符定义为反斜线关键字 请注意所有以相同字符开头的词语可能都在同一行或分布在多行里,而如果它们分布在多行,必须一个跟 着另外一个,中间没有空行或其它行如果该语言区分大小写,字母“A”与。