如果想要输入一些特殊字符的话,那么可以考虑使用实体(Entity)定义。
比如:
- 用⇒来表示双等号右箭头:⇒
- 用™来表示trademark商标:™
- 用↔来表示单横线双向箭头:↔
而对这类特殊字符,之前是通关使用自己单独定义的crl.ent文件而实现的。其包含如下内容:
<?xml version="1.0" encoding="UTF-8"?> <!-- more can refer: http://barzilai.org/math_sym.htm --> <!ENTITY larr "←"> <!-- ← --> <!ENTITY rarr "→"> <!-- → --> <!ENTITY darr "↓"> <!-- ↓ --> <!ENTITY uarr "↑"> <!-- ↑ --> <!ENTITY harr "↔"> <!-- <-> --> <!ENTITY crar "↵"> <!-- <_| --> <!ENTITY lArr "⇐"> <!-- <= --> <!ENTITY uArr "⇑"> <!-- /||\ --> <!ENTITY rArr "⇒"> <!-- => --> <!ENTITY dArr "⇓"> <!-- \||/ --> <!ENTITY hArr "⇔"> <!-- <=> -->
但是实际上,对于这些字符,官网已经有了标准的定义了。
然后在参考了http://docbook.org/docs/howto/#faq-authoring-general-entities,得知如下地址中有全部的定义:
http://www.w3.org/2003/entities/2007/w3centities-f.ent
对应的,http://www.w3.org/2003/entities/2007/中,也有其他相关的ent文件。
其中,也可以看到那个很常见的,包含了全部定义的文件:http://www.w3.org/2003/entities/2007/w3centities.ent
更多关于实体定义的解释,可以去看:XML Entity Declarations for Characters
而知道了有这么好的资源,就可以直接利用了,即,将上面的那个文件,改成:
<?xml version="1.0" encoding="UTF-8"?> <!-- refer: http://docbook.org/docs/howto/#faq-authoring-general-entities --> <!ENTITY % allent SYSTEM "http://www.w3.org/2003/entities/2007/w3centities-f.ent"> %allent;
即可包含了全部的各种特殊字符的定义了,这样也就可以随处引用这些特殊字符了。
当然对于上述文件,每次都是需要联网下载w3centities-f.ent的,所以,为了不依赖网络和加快速度,可以下载w3centities-f.ent到本地,放在和crl.ent同文件夹下,然后crl.ent就可以再改为这样既可:
<?xml version="1.0" encoding="UTF-8"?> <!ENTITY % allent SYSTEM "w3centities-f.ent"> %allent;