2017-03-01 8 views
0

BIDI에 대한 isolater 논리를 구현하면 다시 붙어 있습니다. 주어진 다음의 테스트 케이스.유니 코드 BIDI (UBA) : R RLI R; 왜 RLI는 레벨 0에 머물러야합니까?

@Levels: 1 0 1 
@Reorder: 0 1 2 
R RLI R ; 2 # LTR flag 
\____/ \_/ (my run sequences) 

여기에 내 현재의 이해입니다 :

두 개의 격리 된 실행 시퀀스로 변환됩니다 수준 0 0 1로 끝날 규칙 X1-X8을 처리 한 후.

내가 알 수있는 한, 규칙 W1-W7은 어떤 문자에도 적용하지 말아야합니다. 그것이 NI 둘 간의 강한 종류의 R 상기 제 1 시퀀스의 eos 같이

규칙 N1 그러나 1로 RLI의 레벨을 올릴 것이다.

규칙 I1/2은 다음 RLI의 수준을 낮출 수있는 레벨 1

규칙 L1에 처음 R를 밀어하지만 여기에 적용되지 않습니다.

방법이다 RLI는 수준에 유사한 테스트와 0


같은 문제가 단지 invthe 반대 방향을 종료해야한다는 그.

@Levels: 2 1 2 
@Reorder: 2 1 0 
L LRI L; 4 

슬프게도 http://unicode.org/cldr/utility/bidi.jsp은 RLI/LRI를 포함한 최신 알고리즘을 구현하지 않습니다.

조언을 환영합니다. :) 감사합니다.

+0

:

는 그 주장 X10에서 주를 놓쳤다. 추가 체크, 내가 잘못 생각하는 것 같아요 .X10 노트를 고려해 "... 그리고 시퀀스의 마지막 문자가 없거나 단락 임베디드 레벨이있는 ​​분리 된 이니시에이터 (일치하는 PDI가 없음)가있는 경우." – butterbrot

답변

0

좋아 문제는 eosR 유형 L이며 없습니다 때문에 규칙 N1이 적용되지 말았어야이었다. 단락 포함 수준으로, ... 그리고 거기에 아무도 없거나 시퀀스의 마지막 문자가 분리 개시하는 경우 (일치하는 PDI 결여) "