跳转到内容

英文维基 | 中文维基 | 日文维基 | 草榴社区

Unicode控制字符

维基百科,自由的百科全书

Unicode控制字符(英語:Unicode control characters)是用于控制文本解释或者显示,而不可见或不占空间的Unicode字符。

ISO 6429控制字符(C0与C1)

[编辑]

控制字符U+0000‐U+001F 与U+007F来自ASCII。此外,ISO 8859字符集定义了U+0080‐U+009F。二者都定义在ISO 6429中,常被称为C0与C1控制字符。

大部分这些字符在Unicode文本处理中没有明确作用。字符U+0000 <control-0000> ,NUL、U+0009 <control-0009> ,HT、U+000A <control-000A> ,LF、U+000D <control-000D> ,CR、U+0085 <control-0085> ,NEL常用于格式化字符。

Unicode引入的分隔符

[编辑]

为了简化几种换行字符,Unicode引入了它自己的分隔符来格式化文本:

  • U+2028 LINE SEPARATOR ,HTML:&#8232;,LSEP
  • U+2029 PARAGRAPH SEPARATOR ,HTML:&#8233;,PSEP

语言标记

[编辑]

Unicode以前定义了标签,包含了128个字符表示语言标签,但现在已经过时了。这些字符实际上镜像了128个ASCII字符。用于表示随后的文本属于IETF語言標籤(BCP 47)所指的特定语言。例如,表示随后文本使用美国英语(en-us),用字符串开始为Language Tag character(U+E0001)后跟序列:Tag Small Letter e(U+E0065)、Tag Small Letter n(U+E006E)、Tag Hyphen-minus(U+E002D)、Tag Small Letter u(U+E0075)、Tag Small Letter s(U+E0073)。

这种语言标签自身不会被显示。但可提供用于文本处理的信息。例如,中日韩统一汉字的文本,指明是韩语而非日文,可以把一些字符用韩语特有的字形来表示。另一个例子,把数字0‐9用语言特定的字形表示。

语言标记字符U+E0001、U+E0020‐U+E007E、U+E007F 已经被Unicode 5.1(2008)宣布过时,不再作为语言标记使用。[1]

Unicode 8.0(2015)宣布U+E0020‐U+E007E不再是过时,用于未来表示除了语言标签以外的的其他用途。[2](U+E0001 LANGUAGE TAG与U+E007F CANCEL TAG仍然过时)。

行间标注

[编辑]

3个格式化字符用于支持旁註標記(U+FFF9、U+FFFA、U+FFFB)。

双向文本控制

[编辑]

Unicode支持从左到右、从右到左,或者其混合排版,而不需要任何特殊字符。但为了处理一些特殊情形,Unicode定义了12个字符(U+061C、U+200E、U+200F、U+202A、U+202B、U+202C、U+202D、U+202E、U+2066、U+2067、U+2068、U+2069)以帮助控制嵌入式双向文本最大125层深。[3]

异体字选择器

[编辑]

中日韩汉字、拉丁字母的双拼连写等等,在Unicode中被视作异体字。有些专名(如地名、姓名)必须使用某个异体字。为此,Unicode 3.2与4.0定义了256个异体字选择器,可选择前一个字符的最多256个可能的异体字。

控制字符的图片

[编辑]

Unicode在Control Pictures块中提供图形表示C0控制字符以及其他控制符。

控制图形[1][2]
官方Unicode Consortium码位图表 (PDF)
  0 1 2 3 4 5 6 7 8 9 A B C D E F
U+240x
U+241x
U+242x
U+243x
Notes
1.^ Unicode版本11.0
2.^ 灰区指示未使用的码位

参见

[编辑]

参考文献

[编辑]
  1. ^ RFC6082: Deprecating Unicode Language Tag Characters: RFC 2482 is Historic. Internet Engineering Task Force (IETF). November 2010 [2019-01-08]. (原始内容存档于2021-03-08). 
  2. ^ Unicode 8.0.0, Implications for Migration. Unicode Consortium. [2019-01-08]. (原始内容存档于2022-05-13). 
  3. ^ UAX #9: Unicode Bidirectional Algorithm. Unicode Consortium. 2018-05-09 [2019-01-08]. (原始内容存档于2009-01-25).