我一直在阅读Unicode Standard Annex #9,它描述了Unicode双向算法,我在section BD13中遇到了障碍,即隔离运行序列的定义。
隔离运行序列是级别运行的最大序列,这样对于除序列中最后一个之外的所有级别运行,运行的最后一个字符是隔离启动器,其匹配的PDI是其中的第一个字符。下一级按顺序运行。
情况怎么样? Section BD9定义隔离启动器的匹配PDI ,表示
隔离启动器及其匹配的PDI始终分配相同的显式嵌入级别
和section BD7将等级运行定义为
具有相同嵌入级别的字符的最大子字符串
这似乎表明隔离启动器及其匹配的PDI不能属于连续的级别运行。它们应该属于同一级别的运行,或者它们之间应该至少有一个级别运行。
这种明显不一致的解决方案是什么? “显式嵌入级别”和“嵌入级别”之间是否有区别?引用之一是我依赖于非规范性而且不完全准确吗?隔离运行序列总是只运行一个级别吗?
如果措辞发生变化,此问题基于revision 33,即附件的当前版本。
答案 0 :(得分:0)
在撰写此问题时,我想出了BD13部分下的示例以及它们如何解决问题。隔离运行序列不连续。它的元素不需要是连续的水平运行;实际上,它们必须通过属于其他隔离运行序列的水平运行来分开。这应该更明确。