- From: Elika Etemad via cvs-syncmail <cvsmail@w3.org>
- Date: Fri, 28 Jan 2011 01:27:37 +0000
- To: public-css-commits@w3.org
Update of /sources/public/csswg/css3-text
In directory hutz:/tmp/cvs-serv16150
Modified Files:
Overview.html Overview.src.html
Log Message:
Move script group definitions to intro so they're available to other parts of the draft
Index: Overview.html
===================================================================
RCS file: /sources/public/csswg/css3-text/Overview.html,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- Overview.html 28 Jan 2011 00:50:19 -0000 1.39
+++ Overview.html 28 Jan 2011 01:27:35 -0000 1.40
@@ -220,6 +220,10 @@
<ul class=toc>
<li><a href="#intro"><span class=secno>1. </span> Introduction</a>
+ <ul class=toc>
+ <li><a href="#script-groups"><span class=secno>1.1. </span>Script
+ Groups</a>
+ </ul>
<li><a href="#conformance"><span class=secno>2. </span> Conformance</a>
<ul class=toc>
@@ -264,8 +268,8 @@
and Word Boundaries</a>
<ul class=toc>
<li><a href="#line-break"><span class=secno>5.1. </span> Line Breaking
- Restrictions Strictness: the ‘<code
- class=property>line-break</code>’ property</a>
+ Strictness: the ‘<code class=property>line-break</code>’
+ property</a>
<li><a href="#word-break"><span class=secno>5.2. </span> Word Breaking
Rules: the ‘<code class=property>word-break</code>’
@@ -452,6 +456,51 @@
<p>[document here]
+ <h3 id=script-groups><span class=secno>1.1. </span>Script Groups</h3>
+
+ <p>Typographic behavior varies somewhat by language, but varies drastically
+ by writing system. For convenience, CSS3 Text defines the following script
+ groups, which combine typographically-similar scripts together.
+
+ <dl>
+ <dt id=block-scripts><dfn id=block-scripts0>block scripts</dfn>
+
+ <dd>CJK (including Hangul and half-width kana) and by extension all "wide"
+ characters. (See <a href="#UAX11"
+ rel=biblioentry>[UAX11]<!--{{!UAX11}}--></a>)
+
+ <dt id=clustered-scripts><dfn id=clustered-scripts0>clustered
+ scripts</dfn>
+
+ <dd>South-East Asian scripts that have discrete units but do not use space
+ between words (such as Thai, Lao, Khmer, Myanmar). This category also
+ includes the Tibetan script.
+
+ <dt id=discrete-scripts><dfn id=discrete-scripts0>discrete scripts</dfn>
+
+ <dd>Scripts that use spaces or visible word-separating punctuation between
+ words and have discrete, unconnected (in print) units within words, such
+ as Latin, Greek, Ethiopic, Cyrillic, Hebrew.
+
+ <dt id=cursive-scripts><dfn id=cursive-scripts0>cursive scripts</dfn>
+
+ <dd>Arabic and similar cursive scripts.
+
+ <dt id=connected-scripts><dfn id=connected-scripts0>connected
+ scripts</dfn>
+
+ <dd>Devanagari, Ogham, and other scripts that use spaces between words and
+ baseline connectors within words. By extension this group also includes
+ Gurmukhi, Tamil and any other Indic scripts whose typographic behavior is
+ similar to Devanagari.
+ </dl>
+
+ <p class=issue>Provide an appendix using Unicode script names.
+
+ <p class=note>These definitions are used primarily in describing <a
+ href="#line-breaking">line-breaking</a> and <a
+ href="#text-justify">justification</a> behavior.
+
<h2 id=conformance><span class=secno>2. </span> Conformance</h2>
<p>Conformance requirements are expressed with a combination of descriptive
@@ -1155,61 +1204,10 @@
scripts well. Additionally, some guidance should be provided on how to
break or not break Southeast Asian in the absence of a dictionary.
- <h3 id=line-break><span class=secno>5.1. </span> Line Breaking Restrictions
- Strictness: the ‘<a href="#line-break0"><code
+ <h3 id=line-break><span class=secno>5.1. </span> Line Breaking Strictness:
+ the ‘<a href="#line-break0"><code
class=property>line-break</code></a>’ property</h3>
- <p>This property specifies the strictness of line-breaking rules:
- particularly how line-breaking interacts with punctuation.
-
- <p>CSS distinguishes between three levels of strictness in the rules for
- implicit line breaking. The precise set of rules in effect for the
- ‘<code class=css>strict</code>’ and ‘<code
- class=css>loose</code>’ levels is up to the UA and should follow
- language conventions. However, this specification does recommend that:
-
- <ul>
- <li>Following breaks be forbidden in ‘<code
- class=css>strict</code>’ line breaking and allowed in ‘<code
- class=css>normal</code>’:
- <ul>
- <li>breaks before Japanese small kana
-
- <li>breaks before the KATAKANA-HIRAGANA PROLONGED SOUND MARK (U+30FC)
- </ul>
- Additionally, if the language is known to be Chinese or Japanese, breaks
- before hyphens (U+2010, U+2013, U+301C, U+30A0) may be allowed in
- ‘<code class=css>normal</code>’.
-
- <li>Following breaks be forbidden in ‘<code
- class=css>normal</code>’ and ‘<code
- class=css>strict</code>’ line breaking and allowed in ‘<code
- class=css>loose</code>’:
- <ul>
- <li>breaks before iteration marks (U+3005, U+303B, U+309D, U+309E,
- U+30FD, U+30FE)
-
- <li>breaks between inseparatable characters (U+2014, U+2025, U+2026,
- U+3033, U+3034, U+3035)
- </ul>
- If the language is known to be Chinese or Japanese, then additionally the
- following breaks may be allowed in ‘<code
- class=css>loose</code>’:
- <ul>
- <li>breaks before middle dots (U+003A, U+003B, U+30FB, U+FF1A, U+FF1B,
- U+FF65)
-
- <li>breaks before dividing punctuation marks (U+0021, U+003F, U+203C,
- U+2047, U+2048, U+2049, U+FF01, U+FF1F)
-
- <li>breaks before postfixes (U+0025, U+00A2, U+00B0, U+2030, U+2032,
- U+2033, U+2103, U+FF05, U+FFE0)
-
- <li>breaks after prefixes (U+0024, U+00A3, U+00A5, U+20AC, U+2116,
- U+FF04, U+FFE1, U+FFE5)
- </ul>
- </ul>
-
<table class=propdef>
<tbody>
<tr>
@@ -1253,8 +1251,9 @@
<td>specified value
</table>
- <p>This property specifies what set of line breaking restrictions are in
- effect within the element. Values have the following meanings:
+ <p>This property specifies the strictness of line-breaking rules applied
+ within an element: particularly how line-breaking interacts with
+ punctuation. Values have the following meanings:
<dl>
<dt><dfn id=auto title="line-break:auto"><code>auto</code></dfn>
@@ -1277,6 +1276,53 @@
<dd>Breaks text using the most stringent set of line-breaking rules.
</dl>
+ <p>CSS distinguishes between three levels of strictness in the rules for
+ implicit line breaking. The precise set of rules in effect for each level
+ is up to the UA and should follow language conventions. However, this
+ specification does recommend that:
+
+ <ul>
+ <li>Following breaks be forbidden in ‘<code
+ class=css>strict</code>’ line breaking and allowed in ‘<code
+ class=css>normal</code>’:
+ <ul>
+ <li>breaks before Japanese small kana
+
+ <li>breaks before the KATAKANA-HIRAGANA PROLONGED SOUND MARK (U+30FC)
+ </ul>
+ Additionally, if the language is known to be Chinese or Japanese, breaks
+ before hyphens (U+2010, U+2013, U+301C, U+30A0) may be allowed in
+ ‘<code class=css>normal</code>’.
+
+ <li>Following breaks be forbidden in ‘<code
+ class=css>normal</code>’ and ‘<code
+ class=css>strict</code>’ line breaking and allowed in ‘<code
+ class=css>loose</code>’:
+ <ul>
+ <li>breaks before iteration marks (U+3005, U+303B, U+309D, U+309E,
+ U+30FD, U+30FE)
+
+ <li>breaks between inseparatable characters (U+2014, U+2025, U+2026,
+ U+3033, U+3034, U+3035)
+ </ul>
+ If the language is known to be Chinese or Japanese, then additionally the
+ following breaks may be allowed in ‘<code
+ class=css>loose</code>’:
+ <ul>
+ <li>breaks before middle dots (U+003A, U+003B, U+30FB, U+FF1A, U+FF1B,
+ U+FF65)
+
+ <li>breaks before dividing punctuation marks (U+0021, U+003F, U+203C,
+ U+2047, U+2048, U+2049, U+FF01, U+FF1F)
+
+ <li>breaks before postfixes (U+0025, U+00A2, U+00B0, U+2030, U+2032,
+ U+2033, U+2103, U+FF05, U+FFE0)
+
+ <li>breaks after prefixes (U+0024, U+00A3, U+00A5, U+20AC, U+2116,
+ U+FF04, U+FFE1, U+FFE5)
+ </ul>
+ </ul>
+
<h3 id=word-break><span class=secno>5.2. </span> Word Breaking Rules: the
‘<a href="#word-break0"><code
class=property>word-break</code></a>’ property</h3>
@@ -2521,8 +2567,8 @@
class=css>inter-ideograph</code>’ for CJK, or ‘<code
class=css>inter-word</code>’ for English. Another possibility is
to use a justification method that is a universal compromise for all
- scripts, e.g. the ‘<code class=css>distribute</code>’ method
- with discrete scripts dropped to second priority.</p>
+ scripts, e.g. the ‘<code class=css>inter-cluster</code>’
+ method with block scripts raised to first priority.</p>
<dt><dfn id=none2 title="text-justify:none"><code>none</code></dfn>
@@ -2563,8 +2609,8 @@
<dt><a name=kashida-prop></a><a name=text-kashida-space></a> <dfn
id=kashida title="text-justify:kashida"><code>kashida</code></dfn>
- <dd>Justification primarily stretches Arabic and related scripts through
- the use of kashida or other calligraphic elongation.
+ <dd>Justification primarily stretches <a href="#cursive-scripts">cursive
+ scripts</a> through the use of kashida or other calligraphic elongation.
</dl>
<p>When justifying text, the user agent takes the remaining space between
@@ -2580,44 +2626,6 @@
be followed when any justification method other than ‘<code
class=property>auto</code>’ is specified.
- <p>Justification affects different types of writing systems in different
- ways. For justification purposes, characters are grouped as follows:
-
- <dl>
- <dt id=block-scripts>block
-
- <dd>CJK (including Hangul and half-width kana) and by extension all "wide"
- characters. (See <a href="#UAX11"
- rel=biblioentry>[UAX11]<!--{{!UAX11}}--></a>)
-
- <dt id=clustered-scripts>clustered
-
- <dd>South-East Asian scripts that have discrete units but do not use space
- between words (such as Thai, Lao, Khmer, Myanmar). This category also
- includes the Tibetan script.
-
- <dt id=discrete-scripts>discrete
-
- <dd>Scripts that use spaces or visible word-separating punctuation between
- words and have discrete, unconnected (in print) units within words, such
- as Latin, Greek, Ethiopic, Cyrillic, Hebrew.
-
- <dt id=cursive-scripts>cursive
-
- <dd>Arabic and similar cursive scripts
-
- <dt id=connected-scripts>connected
-
- <dd>Devanagari, Ogham, and other scripts that use spaces between words and
- baseline connectors within words. By extension this group also includes
- Gurmukhi, Tamil and any other Indic scripts whose typographic behavior is
- similar to Devanagari.
- </dl>
-
- <p>The UA may enable or break optional ligatures or use other font features
- such as alternate glyphs to help justify the text under any method. This
- behavior is not defined by CSS.
-
<p id=expansion-opportunity>CSS defines <dfn
id=expansion-opportunities>expansion opportunities</dfn> as points where
the justification algorithm may alter spacing within the text. These
@@ -2627,7 +2635,7 @@
lower priority expansion opportunities are adjusted. (Expansion and
compression limits are given by the <a
href="#letter-spacing">letter-spacing</a> and <a
- href="#word-spacing">word-spacing</a> properties.
+ href="#word-spacing">word-spacing</a> properties.)
<p>How any remaining space is distributed once all expansion opportunities
reach their limits is up to the UA. If the inline contents of a line
@@ -2647,8 +2655,10 @@
are given in the table below. Space must be distributed evenly among all
types of expansion opportunities in a given prioritization group, but may
vary within a line due to changes in the font or letter-spacing and
- word-spacing values. The different types of expansion opportunities are
- defined as follows:
+ word-spacing values. Since justification behavior varies by writing
+ system, expansion opportunities are organized by <a
+ href="#script-groups">script group</a>. The different types of expansion
+ opportunities are defined as follows:
<dl>
<dt>spaces
@@ -2979,6 +2989,10 @@
<p class=note>The ‘<code class=css>auto</code>’ column defined
above is informative.
+ <p>The UA may enable or break optional ligatures or use other font features
+ such as alternate glyphs to help justify the text under any method. This
+ behavior is not defined by CSS.
+
<div class=example>
<p>Japanese is one of the languages for which compression is preferred to
expansion in applying justification.</p>
@@ -5957,12 +5971,27 @@
<li>‘<code class=css>below right</code>’, <a
href="#below-right" title="''below right''"><strong>11.1.6.</strong></a>
+ <li>block scripts, <a href="#block-scripts0" title="block
+ scripts"><strong>1.1.</strong></a>
+
+ <li>clustered scripts, <a href="#clustered-scripts0" title="clustered
+ scripts"><strong>1.1.</strong></a>
+
<li>collapsible, <a href="#collapsible"
title=collapsible><strong>4.2.</strong></a>
<li>‘<code class=css>column</code>’, <a href="#column"
title="''column''"><strong>6.4.</strong></a>
+ <li>connected scripts, <a href="#connected-scripts0" title="connected
+ scripts"><strong>1.1.</strong></a>
+
+ <li>cursive scripts, <a href="#cursive-scripts0" title="cursive
+ scripts"><strong>1.1.</strong></a>
+
+ <li>discrete scripts, <a href="#discrete-scripts0" title="discrete
+ scripts"><strong>1.1.</strong></a>
+
<li><a href="#each-line"><code>each-line</code></a>, <a href="#each-line"
title=each-line><strong>10.1.</strong></a>
Index: Overview.src.html
===================================================================
RCS file: /sources/public/csswg/css3-text/Overview.src.html,v
retrieving revision 1.134
retrieving revision 1.135
diff -u -d -r1.134 -r1.135
--- Overview.src.html 28 Jan 2011 00:53:33 -0000 1.134
+++ Overview.src.html 28 Jan 2011 01:27:35 -0000 1.135
@@ -189,6 +189,41 @@
<p>[document here]</p>
+ <h3 id="script-groups">Script Groups</h3>
+
+ <p>Typographic behavior varies somewhat by language, but varies drastically
+ by writing system. For convenience, CSS3 Text defines the following
+ script groups, which combine typographically-similar scripts together.
+
+ <dl>
+ <dt id="block-scripts"><dfn>block scripts</dfn></dt>
+ <dd>CJK (including Hangul and half-width kana) and by extension all
+ "wide" characters. (See [[!UAX11]])</dd>
+ <dt id="clustered-scripts"><dfn>clustered scripts</dfn></dt>
+ <dd>South-East Asian scripts that have discrete units but do not
+ use space between words (such as Thai, Lao, Khmer, Myanmar).
+ This category also includes the Tibetan script.</dd>
+ <dt id="discrete-scripts"><dfn>discrete scripts</dfn></dt>
+ <dd>Scripts that use spaces or visible word-separating
+ punctuation between words and have discrete,
+ unconnected (in print) units within words, such as Latin,
+ Greek, Ethiopic, Cyrillic, Hebrew.</dd>
+ <dt id="cursive-scripts"><dfn>cursive scripts</dfn></dt>
+ <dd>Arabic and similar cursive scripts.</dd>
+ <dt id="connected-scripts"><dfn>connected scripts</dfn></dt>
+ <dd>Devanagari, Ogham, and other scripts that use spaces between
+ words and baseline connectors within words.
+ By extension this group also includes Gurmukhi, Tamil and any
+ other Indic scripts whose typographic behavior is similar to
+ Devanagari.</dd>
+ </dl>
+
+ <p class="issue">Provide an appendix using Unicode script names.</p>
+
+ <p class="note">These definitions are used primarily in describing
+ <a href="#line-breaking">line-breaking</a> and
+ <a href="#text-justify">justification</a> behavior.
+
<h2 id="conformance">
Conformance</h2>
@@ -1802,8 +1837,8 @@
appropriate value for the language, like ''inter-ideograph''
for CJK, or ''inter-word'' for English.
Another possibility is to use a justification method that is a
- universal compromise for all scripts, e.g. the ''distribute'' method
- with discrete scripts dropped to second priority.</p>
+ universal compromise for all scripts, e.g. the ''inter-cluster''
+ method with block scripts raised to first priority.</p>
</dd>
<dt><dfn title="text-justify:none"><code>none</code></dfn></dt>
<dd>Justification is disabled.
@@ -1830,8 +1865,9 @@
This value is sometimes used in e.g. Japanese.</dd>
<dt><a name="kashida-prop"></a><a name="text-kashida-space"></a>
<dfn title="text-justify:kashida"><code>kashida</code></dfn></dt>
- <dd>Justification primarily stretches Arabic and related scripts
- through the use of kashida or other calligraphic elongation.</dd>
+ <dd>Justification primarily stretches
+ <a href="#cursive-scripts">cursive scripts</a> through the use of
+ kashida or other calligraphic elongation.</dd>
</dl>
<p>When justifying text, the user agent takes the remaining space between
@@ -1845,36 +1881,6 @@
be followed when any justification method other than 'auto' is
specified.</p>
- <p>Justification affects different types of writing systems in different ways.
- For justification purposes, characters are grouped as follows:</p>
-
- <dl>
- <dt id="block-scripts">block</dt>
- <dd>CJK (including Hangul and half-width kana) and by extension all
- "wide" characters. (See [[!UAX11]])</dd>
- <dt id="clustered-scripts">clustered</dt>
- <dd>South-East Asian scripts that have discrete units but do not
- use space between words (such as Thai, Lao, Khmer, Myanmar).
- This category also includes the Tibetan script.</dd>
- <dt id="discrete-scripts">discrete</dt>
- <dd>Scripts that use spaces or visible word-separating
- punctuation between words and have discrete,
- unconnected (in print) units within words, such as Latin,
- Greek, Ethiopic, Cyrillic, Hebrew.</dd>
- <dt id="cursive-scripts">cursive</dt>
- <dd>Arabic and similar cursive scripts</dd>
- <dt id="connected-scripts">connected</dt>
- <dd>Devanagari, Ogham, and other scripts that use spaces between
- words and baseline connectors within words.
- By extension this group also includes Gurmukhi, Tamil and any
- other Indic scripts whose typographic behavior is similar to
- Devanagari.</dd>
- </dl>
-
- <p>The UA may enable or break optional ligatures or use other font
- features such as alternate glyphs to help justify the text under
- any method. This behavior is not defined by CSS.</p>
-
<p id="expansion-opportunity">CSS defines <dfn>expansion opportunities</dfn>
as points where the justification algorithm may alter spacing within
the text. These expansion opportunities fall into priority
@@ -1883,11 +1889,11 @@
expanded or compressed to their limits before lower priority
expansion opportunities are adjusted. (Expansion and compression
limits are given by the <a href="#letter-spacing">letter-spacing</a>
- and <a href="#word-spacing">word-spacing</a> properties.</p>
+ and <a href="#word-spacing">word-spacing</a> properties.)</p>
- <p>How any remaining space is distributed once all expansion opportunities reach their
- limits is up to the UA. If the inline contents of a line cannot be
- stretched to the full width of the line box, then they must be
+ <p>How any remaining space is distributed once all expansion opportunities
+ reach their limits is up to the UA. If the inline contents of a line
+ cannot be stretched to the full width of the line box, then they must be
aligned as specified by the 'text-align-last' property. (If
'text-align-last' is ''justify'', then they must be aligned as for
''center'' if 'text-justify' is ''distribute'' and as ''start''
@@ -1897,8 +1903,10 @@
are given in the table below. Space must be distributed evenly
among all types of expansion opportunities in a given prioritization
group, but may vary within a line due to changes in the font or
- letter-spacing and word-spacing values.
- The different types of expansion opportunities are defined as follows:</p>
+ letter-spacing and word-spacing values. Since justification behavior
+ varies by writing system, expansion opportunities are organized by
+ <a href="#script-groups">script group</a>. The different types of
+ expansion opportunities are defined as follows:</p>
<dl>
<dt>spaces</dt>
@@ -2149,6 +2157,10 @@
<p class="note">The ''auto'' column defined above is informative.</p>
+ <p>The UA may enable or break optional ligatures or use other font
+ features such as alternate glyphs to help justify the text under
+ any method. This behavior is not defined by CSS.</p>
+
<div class="example">
<p>Japanese is one of the languages for which compression is preferred to expansion in applying justification.</p>
<p>3.8 Line Adjustment in [[JLREQ]] gives an example of a set of rules for
Received on Friday, 28 January 2011 01:27:39 UTC