HTMLtidy中文手册: http://wenku.baidu.com/view/eaa54a2bcfc789eb172dc8a2.html
参考tidy.exe -help-config获得更多配置项
名称
tidy - 一个验证,纠正,美化HTML文件的工具 |
用法
tidy [option ...] [file ...] [option ...] [file ...] |
简述
Tidy 可以处理 HTML, XHTML 和 XML 文件,并生成清理过HTML标签的文件. 也用于HTML 验证, 检测文件并对常见的代码错误进行纠正, 力求生成文档其表现与原始文档相同而又兼容W3C并可以在大多数浏览器运行.Tidy常被用于将HTML转化为XHTML. 对于XML文件,Tidy仅限于纠正基本的格式错误和美化. 如果不指定输入文件,Tidy将会读取标准输入(STDIN); 如果不指定输出文件,Tidy将会把处理过的标签写到标准输出(STDOUT); 如果不指定错误文件,Tidy将会把错误信息写入到标准错(STDERR) 对命令行选项,如果不能得到要求的有效的是数值型参数,程序将假定为默认值. |
选项
文件操作 |
-output <file> , -o <file> |
指定输出文件 (output-file: <file> ) |
-config <file> |
指定设定在文件中的配置 |
-file <file> , -f <file> |
输出错误和警告到指定 <file> (error-file: <file> ) |
-modify , -m |
修改原始输入文件 (write-back: yes ) |
特定处理开关项 |
-indent , -i |
元素内容缩进 (indent: auto ) |
-wrap <column> , -w <column> |
给定文本这行的列数 <column>. 不指定<column>默认为0. 此选项省略是,以"wrap"(wrap: <column> )为默认配置选项配置 |
-upper , -u |
强制标签大写 (uppercase-tags: yes ) |
-clean , -c |
替换 FONT, NOBR and CENTER 标签为 CSS (clean: yes ) |
-bare , -b |
strip out smart quotes and em dashes, etc. (bare: yes ) |
-numeric , -n |
输出数字而不用命名实体 (numeric-entities: yes ) |
-errors , -e |
仅显示错误和警告 (markup: no ) |
-quiet , -q |
抑制不必要的输出 (quiet: yes ) |
-omit |
忽略闭合标签(hide-endtags: yes ) |
||
-xml |
指定输入为格式良好的xml (input-xml: yes ) |
-asxml , -asxhtml |
转化html为格式良好的xml.(output-xhtml: yes ) |
-ashtml |
把xhtml强制转换为格式良好的html (output-html: yes ) |
-access <level> |
附加可访问性检查 (<level> = 0, 1, 2, 3). <level> 不指定,默认为0. (accessibility-check: <level> ) |
字符编码 |
-raw |
output values above 127 without conversion to entities不转换127以上的值到实体 |
||
-ascii |
以 ISO-8859-1 为输入, US-ASCII 为输出 |
-latin0 |
以 ISO-8859-15 为输入, US-ASCII 为输出 |
-latin1 |
以 ISO-8859-1 为输入和输出 |
-iso2022 |
以 ISO-2022 为输入和输出 |
-utf8 |
以 UTF-8 为输入和输出 |
|||
-mac |
以 MacRoman 为输入, US-ASCII 为输出 |
-win1252 |
以 Windows-1252 为输入, US-ASCII 为输出 |
-ibm858 |
以 IBM-858 (CP850+Euro) 为输入, US-ASCII 为输出 |
-utf16le |
以 UTF-16LE 为输入和输出 |
-utf16be |
以 UTF-16BE 为输入和输出 |
-utf16 |
以 UTF-16 为输入和输出 |
|||
-big5 |
以 Big5 为输入和输出 |
-shiftjis |
以 Shift_JIS 为输入和输出 |
-language <lang> |
设置双字符语言代码 <lang> (供以后使用) (language: <lang> ) |
其他 |
-version , -v |
显示Tidy版本信息 |
-help , -h , -? |
列出命令行选项 |
-xml-help |
以xml格式列出命令行选项 |
-help-config |
列出全部配置选项 |
-xml-config |
以xml格式列出全部配置选项 |
-show-config |
列出当前配置设置 |
用法
用 -- optionX valueX 的形式进行详细配置,其中"valueX"为"optionX"的参数. 另见接下来的详细配置项 讲解如何把所有配置放在一个文件中. 输入/输出分别默认为stdin/stdout. 单字符选项除-f 和 -o 外都可以按如下方式进行组合 : |
tidy -f errs.txt -imu foo.html |
更多HTML信息,可参考 http://www.w3.org/MarkUp . 更多关于HTML Tidy的信息, 可访问项目主页 http://tidy.sourceforge.net . 你可以找到文档链接,邮件列表(可搜索),以及报告bug的连接 |
执行环境
HTML_TIDY |
默认配置文件名. 这应该是一个绝对路径, 因为你可能从不同目录调用tidy . HTML_TIDY的值在默认编译项编译(defined 为 -DTIDY_CONFIG_FILE)后才能被解析, 而在用-config 指定任何文件之前. |
程序返回值
0 |
成功处理所有文件. |
|||
1 |
有警告. |
|||
2 |
有错误. |
______________________________
详细配置项
这一部分详细描述配置项的细节 (比如: "expanded") , 在命令行中每个配置项用-- 开始, 配置项后是配置项的值, 也可以在配置文件中替换这些配置项和值,并让Tidy通过-config 读取标准配置项文件 |
用法
tidy -- option1 value1 -- option2 value2 [standard options ...] |
注意
这里详细说明的配置项不包含此文档第一部分的"标准"命令行选项(如前缀为’- ’的选项) |
详细说明
Tidy的配置列表,既可以通过命令行引入, 亦可以通过配置文件引入. Tidy的配置文件是一个简单的文本文件,每项配置占一行. |
option1 : value1 |
给定的可用值依赖配置项的类型 . 有5种类型: 布尔类型Boolean , 自动布尔类型AutoBool , 文档类型DocType , 枚举类型Enum , 和字符串类型 String . 布尔类型可以是以下任何形式 yes/no, y/n, true/false, t/f, 1/0 . 自动布尔类型比布尔类型多了auto 可用. 整数采用非负整数. 字符串类型一般没有默认值, 并且你应该给非引用形式的字符串 (除非你希望输出包含所引用的字面本身). 枚举类型,编码,以及文档"类型"有固定的取值;可参考以下配置项中的例子. 虽然你可能为了有明确的文档而包含已有默认的配置项和配置值的选项,但你仅需要给出你要覆盖默认的配置项就可以. 这里是一个简单的配置文件示例,5种类型中每一种都至少一个例子: // Tidy 配置文件示例 output-xhtml: yes add-xml-decl: no doctype: strict char-encoding: ascii indent: auto wrap: 76 repeated-attributes: keep-last error-file: errs.txt 以下是所有配置项的简述. 按字母顺序排列. 分5组: HTML, XHTML, XML 类, 诊断(Diagnostics) 类, 美化(Pretty Print) 类, 字符集编码(Character Encoding) 类, 以及 杂类 . |
OPTIONS
HTML, XHTML, XML 类: |
add-xml-decl |
取值类型: Boolean 此配置项规定当生成XML或XHTML时是否添加XML声明. 注意:如果输入已经包含了<?xml ... ?> 声明,那此选项将被忽略.如果输出编码不是 "ascii", 是某种utf编码 或 "raw", 则按XML标准要求将会添加. 另见 : char-encoding , output-encoding |
add-xml-space |
取值类型: Boolean 此配置项规定当生成XML时是否添加xml:space="preserve" 到如 <PRE>, <STYLE> 和 <SCRIPT>元素中. 这是需要的, 如果在这些元素中空白字符可以适当处理而不用访问DTD. |
alt-text |
取值类型: String 此配置项规定标签<IMG>"的alt="属性的默认文本.这个功能是危险的, 因为它会抑制接下来的可访问性警告.你有责任帮助那些不能看到图片的人识别你的文档! |
anchor-as-name |
取值类型: Boolean 此配置项控制那些作为锚点使用的命名属性的添加或删除,如果设为 "yes",若还没有命名属性,则将在id属性旁添加一个DTD允许的命名属性如果设为"no",则删除任何已有id属性或已被添加的命名属性. |
assume-xml-procins |
取值类型: Boolean 此选项规定是否应该改变为对?>作为处理指令解析, 而不是作为标签终止符. 输入为XML则该选项自动设置. |
bare |
取值类型: Boolean |
默认取值: no 此选项规定是否清除来自Word 2000文档的Microsoft特有的HTML,并且输出在输入文件中已有的空格而非换行间隔. |
clean |
取值类型: Boolean |
默认取值: no 此选项规定是否清理多余的表现标签并用style规则替换属性,以及适当调整文档结构,它在Microsoft Office工作良好 另见 : drop-font-tags |
css-prefix |
取值类型: String 此选项规定用在风格规则的前缀.默认为 "c". |
decorate-inferred-ul |
取值类型: Boolean 此选项规定是否用一些CSS标记装饰推定的UL元素,以免向右缩进. |
doctype |
取值类型: DocType 此选项规定Tidy生成的DOCTYPE 声明. 设为 "omit" 输出不包含 DOCTYPE 声明. 设为 "auto"(默认) 则依据内容作经验判断. 设为 "strict", Tidy 设置 DOCTYPE 为严格(strict) DTD. 设为 "loose", DOCTYPE 设为 loose (transitional) DTD. 作为选择, 你可以给一个字符串作为FPI(the formal public identifier). 比如: 如果你为一个XHTML文档规定FPI, Tidy将设置系统标志到一个空字符串. 对HTML, 为了维持一些浏览器的处理模式,Tidy加一个系统标志符,且只能有一个. Tidy保留一般XML文档的DOCTYPE不变. --doctype omit 意味着 --numeric-entities yes . 该选项不提供文档一致性验证. |
drop-empty-paras |
取值类型: Boolean 此选项规定是否丢弃空段落. |
drop-font-tags |
取值类型: Boolean 此选项规定是否废弃 <FONT> and <CENTER> 标签,而不创建对应的风格规则. 此选项与clean选项无依赖. 另见 : clean |
drop-proprietary-attributes |
取值类型: Boolean 此选项规定是否剔除私有属性,例如MS数据绑定属性. |
enclose-block-text |
取值类型: Boolean 此选项规定,是否插入<P>元素包裹传统HTML(HTML transitional)而非严格HTML(HTML strict)中允许混合内容的任何元素中的任何文本. |
enclose-text |
取值类型: Boolean 此选项规定是否闭合body元素中的<P>元素. 当你想用现有HTML并利用CSS时有用. |
escape-cdata |
取值类型: Boolean 此选项规定是否要把<![CDATA[]]>转化成一般文本 . |
fix-backslash |
取值类型: Boolean 此选项是否要把URLs中的"/ "替换为"/ ". |
fix-bad-comments |
取值类型: Boolean 此选项规定是否用"="符号替换异常连字符,当遇到相邻的连字符时.默认为yes.该选项为那些用语法为 <!--- --->的注释的Cold Fusion用户提供. |
fix-uri |
取值类型: Boolean 此选项规定是否检查带URIs的属性中的非法字符,如果有的话用HTML 4推荐的方式进行转义. |
hide-comments |
取值类型: Boolean 此选项规定是否打印注释. |
hide-endtags |
取值类型: Boolean 此选项规定当生成美化标签时,是否省略可选闭合标签.如果你要生成XML,则该选项被忽略. |
indent-cdata |
取值类型: Boolean 此选项规定是否缩进<![CDATA[]]>部分. |
input-xml |
取值类型: Boolean 此选项规定是用XML解析器还是用纠错HTML解析器. |
join-classes |
取值类型: Boolean 此选项规定如果元素中含有多类,是否将其组合成一个单独的新类名. 另见 : join-styles , repeated-attributes |
join-styles |
取值类型: Boolean 此选项规定如果元素中含有多样式,是否将其组合成一个单独的新样式.. 另见 : join-classes , repeated-attributes |
literal-attributes |
取值类型: Boolean 此选项规定是否保证属性值中的空白字符保持不变. |
logical-emphasis |
取值类型: Boolean 此选项规定是否用<EM>替换<I>,以及用<STRONG>替换<B>. 这两种情况,属性值都保持不变. 该选项不依赖clean选项和drop-font-tags选项. |
lower-literals |
取值类型: Boolean 此选项规定是否将用预定义值的列表的属性值转换为小写.XHTML文档需要此功能 |
merge-divs |
取值类型: AutoBool 用于改变-c (--clean yes)选项的行为.该选项规定是否合并嵌套的 <div> 像"<div><div>...</div></div>". 如果设为 "auto", 内部 <div>的属性值被移到外部. 带ID属性的<div>不进行合并. 如果设为 "yes", 内部 <div>的属性值若有不合法的"class" 和 "style"将被丢弃. 另见 : clean , merge-spans |
merge-spans |
取值类型: AutoBool 用于改变-c (--clean yes)选项的行为. 该选项规定是否合并嵌套的 <span> 像"<span><span>...</span></span>". 算法与选项--merge-divs一致. 另见 : clean , merge-divs |
ncr |
取值类型: Boolean |
默认取值: yes 此选项规定是否允许数字字符引用. |
new-blocklevel-tags |
取值类型: Tag names 此选项规定新的块级标签. 此选项用空格或逗号分隔标签列表.除非你声明了新表签, 如果输入文件包含先前未知的标签,Tidy将不会生成处理文件. 你不能改变元素内容的模式,比如: <TABLE>, <UL>, <OL> and <DL>. 这个选项在XML模式中被忽略. 另见 : new-empty-tags , new-inline-tags , new-pre-tags |
new-empty-tags |
取值类型: Tag names 该选项指定新的空inline标签.该选项规定新的空inline标签. 此选项用空格或逗号分隔标签列表.除非你声明了新表签, 如果输入文件包含先前未知的标签,Tidy将不会生成处理文件.记住,声明的空标签也作为inline或blocklevel标签. 这个选项在XML模式中被忽略. 另见 : new-blocklevel-tags , new-inline-tags , new-pre-tags |
new-inline-tags |
取值类型: Tag names 此选项规定新的非空inline标签.此选项用空格或逗号分隔标签列表. 除非你声明了新表签,如果输入文件包含先前未知的标签,Tidy将不会生成处理文件. 这个选项在XML模式中被忽略. 另见 : new-blocklevel-tags , new-empty-tags , new-pre-tags |
new-pre-tags |
取值类型: Tag names 此选项规定以HTML的<PRE>元素做同样处理的新标签. 此选项用空格或逗号分隔标签列表.除非你声明了新表签,如果输入文件包含先前未知的标签, Tidy将不会生成处理文件. 注意:你也不能加新的CDATA 元素 (类似 <SCRIPT>). 这个选项在XML模式中被忽略. 另见 : new-blocklevel-tags , new-empty-tags , new-inline-tags |
numeric-entities |
取值类型: Boolean 此选项规定数字是否应该输出除内建HTML实体(&, <, > and ")以外的实体,而不是命名实体形式只有和DOCTYPE声明约定相兼容的实体备用. 在输出编码中可以被表现的实体被对应转化. 另见 : doctype , preserve-entities |
output-html |
取值类型: Boolean 此选项规定是否生成html美化输出. |
output-xhtml |
取值类型: Boolean 此选项规定是否生成XHTML的美化输出. 该选项使得Tidy设置DOCTYPE和适于XHTML的默认命名空间. 如果给定了DOCTYPE 或 命名空间 ,他们将对文档的内容作一致性检查. 碰到不一致的情况,输出会修正其值. 对XHTML,实体将参照"numeric-entities" 选项, 转化为命名或数字实体. 无论其他选项,原始的标签大小写和属性将不变. |
output-xml |
取值类型: Boolean 此选项规定是否输出为美化的格式良好XML.任何没有在XML 1.0中定义过的实体都会被转化为数字实体,以使其能被XML解析器解析. 无论其他选项,原始的标签大小写和属性将不变. |
preserve-entities |
取值类型: Boolean 此选项规定是否在输出时保留格式良好的实体. |
quote-ampersand |
取值类型: Boolean 此选项规定是否转化&为&. |
quote-marks |
取值类型: Boolean 此选项规定是否将字符 " 输出为 " 因为这是一些编辑环境首选的. 撇号 ’ 输出为 ' 因为一些浏览器不支持 '. |
quote-nbsp |
取值类型: Boolean 此选项规定是否将non-breaking空格字符转为实体, 而不是Unicode 160 (decimal). |
repeated-attributes |
取值类型: enum 此选项规定是否保持重复属性的第一个或最后一个不变.比如:两个对齐align属性. 另见 : join-classes , join-styles |
replace-color |
取值类型: Boolean 此选项规定是否将颜色的数字值替换为HTML/XHTML定义的颜色名, 比如, 用"white"替换 "#ffffff". |
show-body-only |
取值类型: AutoBool Useful for incorporating existing whole pages as a portion of another page. This option has no effect if XML output is requested. 此选项规定是否只打印html的body标签的内容.如果置为"auto",仅在推断存在有body标签时执行. |
uppercase-attributes |
取值类型: Boolean 此选项规定是否用大写输出属性名. 默认为 no, 使属性名转为小写, 除XML,将保留原始的大小写. |
uppercase-tags |
取值类型: Boolean 此选项规定是否用大写输出标签名. 默认为 no, 使标签名转为小写, 除XML,将保留原始的大小写. |
word-2000 |
取值类型: Boolean 此选项规定是否去除Microsoft Word 2000文档保存为"Web pages" 时所插入的所有多余东西.不处理嵌入图片(images) 或 VML.你应该考虑使用Word"Save As: Web Page, Filtered" |
诊断类: |
accessibility-check |
取值类型: enum 此选项规定可访问性检查的级别, 如果由此选项,Tidy将做可访问性检查. 0 级,相当于Tidy Classic的可访问性检查. 更多Tidy可访问性检查的信息, 可访问: 加拿大多伦多大学的自适应技术资源中心:http://www.aprompt.ca/Tidy/accessibilitychecks.html . |
show-errors |
取值类型: Integer 此选项规定Tidy确定显示错误信息的数字. 如果置为 0, 则不显示错误. |
show-warnings |
取值类型: Boolean 此选项规定是否抑制警告信息,当有大量警告信息使得错误信息难于发现时可用. |
美化类: |
break-before-br |
取值类型: Boolean 此选项规定是否输出时在每一个<BR> 元素前,加一个空行. |
indent |
取值类型: AutoBool |
默认取值: no 此选项规定是否缩进块级标签. 若置为 "auto", 则此选项会根据标签,如:TITLE, H1-H6, LI, TD, TD, 或 P是否包括块级元素内容, 决定是否缩进标签内容. 建议避免使用yes, 因为会使一些浏览器出现层(layout)bugs. 另见 : indent-spaces |
indent-attributes |
取值类型: Boolean 此选项规定是否每个属性占一行. |
indent-spaces |
取值类型: Integer 此选项规定缩进选型开启时,缩进的空格数. 另见 : indent |
markup |
取值类型: Boolean |
默认取值: yes 此选项规定是否生成美化版本的标记.注意:如果有严重错误时不生成美化版. (见 force-output). |
punctuation-wrap |
取值类型: Boolean 此选项规定是否在一些Unicode 或 中文发音字符后绕行. |
sort-attributes |
取值类型: enum 此选项规定是否按一些特定的排序算法对元素中的属性进行排序. 如果置为 "alpha", 则按字母序排序. |
split |
取值类型: Boolean 当前未用,仅在Tidy Classic中使用. |
tab-size |
取值类型: Integer 此选项规定连续tab符号所占的列数. 用于从tab到空格的映射.Tidy不输出tab. |
vertical-space |
取值类型: Boolean 此选项规定是否为可读性加入一些空行. |
wrap |
取值类型: Integer 此选项规定绕行的右边距. Tidy在不超过此长度内换行. 置为0,意味着关闭绕行功能. |
wrap-asp |
取值类型: Boolean 此选项规定是否在对ASP伪元素内的文本内容换行, 形如: <% ... %>. |
wrap-attributes |
取值类型: Boolean 此选项规定是否为方便编辑而对属性值绕行. 该选项可独立于wrap-script-literals选项设置. 另见 : wrap-script-literals |
wrap-jste |
取值类型: Boolean 此选项规定是否对JSTE伪元素内的文本内容进行绕行, 形如: <# ... #>. |
wrap-php |
取值类型: Boolean 此选项规定是否对php伪元素内的文本内容进行绕行, 形如: <?php ... ?>. |
wrap-script-literals |
取值类型: Boolean 此选项规定是否对出现在脚本属性(script attributes)中的字符串字面量进行绕行. Tidy通过在换行前插入反斜杠对长字符串字面量进行绕行. 另见 : wrap-attributes |
wrap-sections |
取值类型: Boolean 此选项规定是否对<![ ... ]> 段标签内的文本内容进行绕行. |
字符集编码类: |
ascii-chars |
取值类型: Boolean 可以用于调整选项-c (--clean yes)的行为. 当用 -c选项时,置为 "yes",则 &emdash;, ”, 以及其他命名字符实体将被降级为最相近的ascii. 另见 : clean |
char-encoding |
取值类型: Encoding 此选项规定用于输入和输出的字符集编码. 对于 ascii,Tidy将接受Latin-1 (ISO-8859-1)字符值,但将对所有其值>127字符用实体. 对于 raw , Tidy将不用实体输出其值>127字符. 对于 latin1, 字符在255以上的输出为其实体. 对于 utf8, Tidy假设输入和输出文件都是用utf-8编码. 你可以用ISO-2022家族编码,例如ISO-2022-JP. 对于 mac 和 win1252, Tidy将接受其厂商的特殊字符值,但对于所有字符值>127的将用其实体. 对于不支持的编码,要用外部工具从UTF-8转化, 或转化到UTF-8. 另见 : input-encoding , output-encoding |
input-encoding |
取值类型: Encoding 此选项规定输入文件的字符集编码. 更多请见 char-encoding . 另见 : char-encoding |
language |
取值类型: String 当前未用,但该选项规定Tidy所用的语言.(例如 "en"). |
newline |
取值类型: enum 默认为适于当前平台: 在PC-DOC, MS-Windows 和 OS/2下为CRLF, Classic Mac OS下为CR, 其他系统(Unix and Linux)为LF. |
output-bom |
取值类型: AutoBool 此选项规定是否在输出中写入Unicode字节序列标记(Byte Order Mark)字符(BOM;亦即Zero Width No-Break Space, 其值为:U+FEFF)的开头;仅对于UTF-8 和 UTF-16编码输出. 如果设为"auto",若输入文件有BOM的头,该选项会使得Tidy写BOM到输出文件. 对于XML/XHTML,用UTF-16作为输出编码,BOM总是会被写入的. |
output-encoding |
取值类型: Encoding 此选项规定Tidy用于输出的字符集编码. 更多请见 char-encoding . 仅对于Latin编码(ascii, latin0, latin1, mac, win1252, ibm858),可能与输入编码不同. 另见 : char-encoding |
杂类: |
error-file |
取值类型: String 此选项指定Tidy用于输出错误和警告的错误(error)文件. 一般来说,错误和警告被输出到标准错"stderr". 另见 : output-file |
force-output |
取值类型: Boolean 此选项规定是否产生输出, 即使有严重错误存在.如果Tidy报告严重错误的话,该选项慎用, 这意味着Tidy不能或不确定如何修复错误,从而使输出不能表现你的意图. |
gnu-emacs |
取值类型: Boolean 此选项规定是否改变报告错误和警告的格式,以便于更易于用GNU Emacs处理. |
gnu-emacs-file |
取值类型: String 内部使用. |
keep-time |
取值类型: Boolean 此选项规定是否保持原始的文件修改时间. 默认为 no. 如果置为 yes,则允许你用tidy处理文件而不致使用像SiteCopy之类的web服务器产生文件上传. 注意:此选项在某些平台不被支持. |
output-file |
取值类型: String 此选项规定Tidy的输出文件. 一般地, 将输出到"stdout". 另见 : error-file |
quiet |
取值类型: Boolean |
默认取值: no 此选项规定是否输出错误和警告信息, 或欢迎消息,或信息消息. |
slide-style |
取值类型: String 当前未用. 仅用于Tidy Classic. |
tidy-mark |
取值类型: Boolean 此选项规定加meta元素到文档头部,以说明此文档已经被Tidy处理过了. 如果已经加过这个meta元素不再添加. |
write-back |
取值类型: Boolean 此选项规定Tidy处理过的文档是否写回到同一个文件中.建议处理前保存重要文档的拷贝, 尽管很少发生意料之外的情况. |
获取更多信息
HTML Tidy 项目主页 http://tidy.sourceforge.net |
作者
Tidy 的开发者是 Dave Raggett <dsr@w3.org >, 并且现在由Tidy团队维护和开发 http://tidy.sourceforge.net/ . 以 MIT Licence 协议发布. 由HTML Tidy released on 18 June 2008 自动生成. |
翻译
snowqiang, 能力所限,对于翻译质量,欢迎拍砖,并希望给与指教,我会及时更正, 以免误人子弟.请联系snowqiang[at]gmail[dot]com, 若转载,请保留著者,译者,及出处. |