01.11.2014 Views

A Proposal for Bidi Isolates in Unicode

A Proposal for Bidi Isolates in Unicode

A Proposal for Bidi Isolates in Unicode

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

treat it as an LRI <strong>in</strong> rule X5+2.<br />

Note that the current embedd<strong>in</strong>g level is not reset to the paragraph embedd<strong>in</strong>g level determ<strong>in</strong>ed<br />

by P2 and P3. It goes up by one or two levels, as it would <strong>for</strong> an LRI or RLI.<br />

Be<strong>for</strong>e rule X6, start a new subsection:<br />

Non-<strong>for</strong>matt<strong>in</strong>g characters<br />

Modify rule X6 by replac<strong>in</strong>g “BN, RLE, LRE, RLO, LRO, and PDF” with “BN, RLE, LRE, RLO,<br />

LRO, PDF, RLI, LRI, FSI, and PDI”.<br />

After rule X6, start a new subsection with an <strong>in</strong>troductory paragraph:<br />

Term<strong>in</strong>at<strong>in</strong>g <strong>Isolates</strong><br />

There is a s<strong>in</strong>gle code, PDI, to term<strong>in</strong>ate the scope of the last unterm<strong>in</strong>ated FSI, LRI, or RLI. It<br />

also term<strong>in</strong>ates the scopes of all unterm<strong>in</strong>ated LREs, RLEs, LROs, and RLOs between the last<br />

unterm<strong>in</strong>ated FSI, LRI, or RLI and the PDI term<strong>in</strong>at<strong>in</strong>g it.<br />

The rules below will appear between X6 and X7. To avoid confusion <strong>in</strong> this document, they are<br />

be<strong>in</strong>g called X6+i, but <strong>in</strong> the new version of UAX #9, all the X rules will be renumbered.<br />

Add:<br />

X6+1: With each PDI, per<strong>for</strong>m the follow<strong>in</strong>g steps:<br />

a. If the <strong>in</strong>valid isolate count is greater than zero, decrement it by one. (This PDI matches<br />

an <strong>in</strong>valid FSI, LRI, or RLI.)<br />

b. Otherwise, if the valid isolate count is zero, do noth<strong>in</strong>g. (This PDI does not match any<br />

FSI, LRI, or RLI, valid or <strong>in</strong>valid.)<br />

c. Otherwise, this PDI matches a valid FSI, LRI, or RLI:<br />

c.1. Reset the <strong>in</strong>valid embedd<strong>in</strong>g count to zero. (This term<strong>in</strong>ates the scope of the<br />

<strong>in</strong>valid LREs, RLEs, LROs and RLOs encountered between the PDI and the FSI,<br />

LRI, or RLI matched by the PDI.)<br />

c.2. While the directional isolate status is false, keep popp<strong>in</strong>g the last entry from<br />

the directional status stack <strong>in</strong>to the current embedd<strong>in</strong>g level, directional override<br />

status and directional isolate status. (This term<strong>in</strong>ates the scope of the valid LREs,<br />

RLEs, LROs, and RLOs encountered between the PDI and the FSI, LRI, or RLI<br />

matched by the PDI, and leaves the directional isolate status true, <strong>in</strong> the scope of<br />

the matched FSI, LRI, or RLI.)<br />

c.3. Pop the last entry from the directional status stack <strong>in</strong>to the current<br />

embedd<strong>in</strong>g level, directional override status and directional isolate status. (This<br />

term<strong>in</strong>ates the scope of the matched FSI, LRI, or RLI.)<br />

c.4. Decrement the valid isolate count by one.<br />

d. In all cases, assign the current embedd<strong>in</strong>g level result<strong>in</strong>g from the steps above to the

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!