- From: Kang-Hao (Kenny) Lu <kennyluck@w3.org>
- Date: Fri, 27 Apr 2012 20:13:01 +0800
- To: 梁海 <lianghai@gmail.com>
- CC: Ethan Chen <chief@ethantw.net>, 中文HTML5同樂會ML <public-html-ig-zh@w3.org>
原來的討論串:http://lists.w3.org/Archives/Public/public-html-ig-zh /2010Oct/subject#msg20 很殘塊的說兩年前沒有參與這個討論,這個禮拜梁海兄翻了 'text-spacing' 的前 三分之一,我翻了後三分之一[1],因此就規範的一些內容上的問題做一些探討。 分成現有規範上的部份(CSS4)和下一個等級可能再加入的功能(CSS4+),照個 人認為的重要順序排列。 [1] http://www.w3.org/html/ig/zh/wiki/Css4-text#text-spacing-prop == CSS4 == 一、最根本的問題 — 為什麼至今沒有人用 'text-autospace'? 'text-autospace' 是這個屬性在 CSS3 Text 以前版本的名稱,似乎 IE5.5 開始 就有了,IE8 開始用 '-ms-' 前輟也可以,但是還是支援沒有前輟的 'text-auto- space'。這個屬性都存在那麼久了,為什麼教學什麼的網路上搜不到?(似乎代表 沒什麼人在用?) 這個需求對使用者應該是存在的(有「為什麼你們就是不能加個空格呢?」這種瀏 覽器套件[2]),所以沒有人用的原因是什麼呢? 1) 別的瀏覽器不支援 2) 這種需求還是相當的邊緣 3) 對 IE 的實作不滿意(間隔太小、在不該有空隔的兩個字符之間錯加空格等等) [2] https://github.com/gibuloto/paranoid-auto-spacing 二、屬性本身的命名 目前是叫做 'text-spacing',這個名稱夠好了嗎?個人是覺得這個的確比 'text-autospace' 好,因為跟 'letter-spacing' 和 'word-spacing' 相應,是 一串文字和一串文字的間距。 三、屬性取值的命名 這個我就很有意見,目前規範上的是: # 取值: ... ideograph-alpha || ideograph-numeric ... 首先,我覺得 'ideograph' 這個字太難拼(不過我覺得 'integer' 都很難拼了, 所以不能說我個觀感很正常),再來就是 'alpha' 感覺是一個過度 geeky 的字, 我也不知道在這個情景使用這個字是不是對的,另外 'numeric' 也不怎麼好記 (第一次打打成 'ideograph-numeral')。我的建議是: | 取值: ... cjk-latin || cjk-number ... 不然就是 'cjk' 用 'han' 取代,代表「漢字」,至少跟 'chinese' 之類的比起 來是一個比較語言中立的字眼。大家怎麼想?有支持現在命名的嗎? 四、'cjk-mode'? 我覺得 'ideograph-alpha' 跟 'ideograph-numeric' 同時使用的可能性比單獨使 用一個高(這個假設對嗎?),所以有一個同時啟動兩個的值應該比較好用一點。 四之一、'cjk-puntuation'? 可能有人注意到我打字或是翻譯的習慣都是引號(一個 Unicode [P*])跟中文字 中間也有空格,這個目前規範有的 'alpha'([L*] 和 [M*])和 'numeric'([Nd]),所以是不是該加一個 'punctuation' 滿足這個需求?又這個 值應該是 'cjk-mode' 的預設嗎?(我猜日文需求的文件應該是說預設要有 'ideograph-puntuation',不過這個部份要考證一下) 相關的細節問題: * 這個要不要排除誇號「(」、「)」,比如說 Ubuntu 的翻譯指引是說要排除[3]。 * 這該不該直接併到 'ideograph-alpha'? 測試了一下我發現 IE9 的 'alpha' 有包括單引號「'」但是沒有包括雙引號「"」 還有「‘」(U+2018)這些,這合理嗎? [3] http://wiki.ubuntu.org.cn/TranslatorsGuideline#.E5.85.B3.E4.BA.8E.E7.A9.BA.E6.A0.BC * 要不要包括 [S*] 類別,包括「+」「-」?要的話是不是把 'punctuation' 更 名成 'symbol' 更好? 五、原來就有空格的網頁如何處理? 很多人現在都有插入半形空格,而現在規範是比較兩個相間的字符所以不會碰到這 些。fantasai 有提過一種的新的想法是讓 'text-spacing' 去主動校正這些,也 就是先拿掉那個半形(大約 1/3em)再填空格(目前規範是說 1/4em)。 所以大家對於 'ideograph-alpha'/'cjk-mode' 自動做這個校正讚不讚同?還是該 有一個新的關鍵字('force' 之類的)來啟動這個功能? 六、1/4em 是不是好的預設間隔? 老實說,因為打半形空格有點習慣了,測試 IE9 的時候還真覺得 1/4em 有點 窄、、、這裡 1/4em 是符合日文排版標準,不過我更在乎使用者的觀感問題。 我也還沒仔細量過 IE 是不是真的是 1/4em。 七、適用的元素 目前規範是說 # 適用於: 块容器 但是又說 # 在元素边界,字符间引入的额外间距量由包含该边界的最内侧元素决定且在该 # 元素内部渲染。若额外间距应用至某一个字形,则间距由包含该字形的最内侧 # 元素决定。 這其實是矛盾的。後面這句話類似CSS3 'letter-spacing' 的模型,意思是說,在 下面這個例子裡: <p>請點下面連結<a>Hello:歡迎來到public-html-ig-zh</a></p> p { text-spacing: ideograph-alpha;} a { text-spacing: normal;} 「結」和「H」間有空格(包含這個邊界的最內側元素是 <p>),但是「到」和 「p」沒有。我覺得這個功能蠻有用的,特別是在維基百科中有些標題的空格可能 不應該改變,所以我的意見是把規範改成。 | 適用於: 所有元素 (塊容器不包括 'inline') 但是這個進階功能我覺得往後移到下一個版本也無妨。 八、字符類別 這個部份非常、、雜亂,目前 'ideograph' 和 'alpha' 的定義分別是 # 方塊文字 # # 包含下面所有字符: # * 所有在範圍 U+3041 到 U+30FF 裡除了 Unicode 標點 [P*] 以外的字 # 符。 # * CJK 筆劃(U+31C0 到 U+31EF)。 # * 片假名語音擴展(U+31F0 至 U+31FF)。 # * 所有屬於 Unicode 漢文字(Han)屬性的字符 [UAX24]。 和 # 非方塊字母 # # Unicode 字母類別 [L*] 與標記類別 [M*] 裡,不滿足任何以下條件的字符: # * 是一個方塊文字。 # * 被 [UAX11] 歸為東亞全形(F)。 # * 在豎排中透過 ‘text-orientation’ 屬性或 ‘text-combine’ 屬性為 # 直立。 首先,韓文(Hangul)不在方塊文字裡,這不合 IE9 的實作,不過這個到底好不 好可能要去韓文興趣小組問一下。不過這個對中文為主的網頁的影響是:韓文不是 東亞全形(而是東亞寬字符(W)),所以韓文被歸在 'alpha' 裡,也就是在 'ideograph-alpha' 中混有韓文的中文網頁會有這些空格,這是合理的嗎? 我感覺這裡的非方塊字母的條件之一的「被 [UAX11] 歸為東亞全形(F)」應該改 成「被 [UAX11] 歸為東亞全形(F)或東亞寬字符(W)」,這裡該做的是是把所 有是東亞寬字符(W)但是不是方塊文字的字符都拿出來想一下、測一下。 再來,方塊文字目前不包括注意符號(因為注意符號屬於注意符號文字 (Bopomofo),不是漢文字),這其實符合 IE9 的實作(中文和注音符號中間在 'ideograph-alpha' 的時候有空隔),不過這合理嗎? 我感覺 IE9 的實作比較接近把方塊文字解讀成「被 [UAX11] 歸為東亞全形(F) 或東亞寬字符(W)的 Unicode 標點 [P*] 以外的字符,但是拿掉注音符號。」, 這個定義好像不符合日文需求文件的要求[4],但是這也要考證一下。 (歡迎用 CSSOM 的 API 把 IE9 整個跑一遍了解 IE9 到底怎麼分類字符的!) 另外,'numeric' 的定義是: # 非方塊數字 # # Unicode 數字-十進位數字類別 [Nd],不滿足任何以下條件的字符: # * 被 [UAX11] 歸為東亞全形(F)。 # * 在豎排中透過 ‘text-orientation’ 屬性或 ‘text-combine’ 屬性為 # 直立。 但是我看 IE9 根本沒支援 0-9 以外的數字,老實說有沒有支援那些應該已經到沒 有人會在意的程度了,還是簡化成 0-9 就好了吧、、、 [4] http://lists.w3.org/Archives/Public/public-html-ig-jp/2011Jan/thread#msg139 == CSS4+ == 本來想提一些新想法的,但是已經打這麼多了,先作罷。 梁海兄: 首先跟你確認一下把我把你在 GitHub[5] 上的翻譯移過來這件事有沒有問題?你 可以繼續在 GitHub 上翻譯,我再定期搬過來。 其實兩年前的那個討論串我沒有讀完,可以麻煩你有空的時候整個看一遍看看有哪 些部份是可以用 'text-spacing' 解決的,然後回一下文嗎? 多謝! [5] http://lianghai.github.com/html-ig-zh/ 此致 呂 康豪(Kenny), 中文興趣小組W3C連絡人 新浪微博: http://t.sina.com.cn/1950042164 Google+: https://plus.google.com/112088462407783855918/posts
Received on Friday, 27 April 2012 12:13:37 UTC