オープンソース CMS における 多言語対応のトライ&エラー

6,783 views
6,700 views

Published on

2012年2月18日に九州産業大学で行われた福岡アクセシビリティセミナー Vol.1 #福岡a11y でプレゼンした20分小話の資料です。

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,783
On SlideShare
0
From Embeds
0
Number of Embeds
4,931
Actions
Shares
0
Downloads
3
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • \n
  • 自分の知らない方法でアクセスしてくる利用者に配慮する点でアクセシビリティと多言語対応は共通点がありそう。\nアクセシビリティとは違うけれど似通った事柄に目を向けることで興味もわくかもしれない、ということで声をかけていただいた。\n
  • オープンソースの CMS ソフトウェア。世界で最も人気があり CMS におけるシェアは50%以上、世界のウェブサイトのだいたい20%くらいが WordPress で動いている。\n
  • お問い合わせのフォームを設置するためのプラグイン。累積ダウンロード数600万で世界中で使われている。WordPress のフォームプラグインとしては定番。もちろんオープンソースで無償提供。\n
  • スッと次へ。\n
  • 慣れた人でも2、3時間はかかる作業。それでも皆ボランティアでやってくれた。\n
  • アラビア語。ペルシャ語はイランの言語。ヘブライ語はイスラエルの言語。\n翻訳を送られて気づいたこと。\n
  • ウィキペディアのアラビア語版。右揃え、サイドバーの位置に注目。\nこれらの言語を足してもネイティブ話者数は3億人程度。\nイスラム教(約10億人)のコーランはアラビア語で書かれていたり、\nアラビア語が国連公用語だったりする。\n\n\n
  • ウィキペディアのヘブライ語版。\n右から左に書くのは決してマニアックなことではない。\n
  • 文字の系図。\nフェニキア文字から派生した一方はギリシア文字、さらにラテン文字になり現在のアルファベットへ。\nもう一方はアラム文字。アラム文字は旧約聖書などで使われている。\nそこからヘブライ文字とアラビア文字が派生。\nペルシャ語は7世紀のイスラム帝国支配以来アラビア文字を使っている。\nアラム語もフェニキア語も右から左に書いていたらしい。\n
  • \n
  • 簡単だと思ったら。\n
  • 猫の部分を強調するような HTML を RTL で書くには?\n
  • \n
  • 再びアラビア語版ウィキペディア。\n例の有名なおじさんの項目。一部拡大してみます。\n
  • 右から左に書かれているが、英語の名前のところは左から右へ。\n地の文が RTL でも LTR 言語の引用部分は LTR で書く。\n1955 や 2011 というのも左から右へ。\n「アラビア数字」なのになぜ?\nアラビア数字は実際はインドで作られてアラビアに伝わったもの。インドが LTR だったから。\nこのように、RTL の文も全部が全部 RTL なわけではなくて、RTL と LTR が混在するのが普通。\n
  • 略して Bidi という。\nRTL の文中で LTR の文を引用してその中でさらに RTL とかあり得る。\n句読点なんかは前後の文脈に依存してどっちに付くか決めないといけない。\nものすごくややこしい。\n
  • 双方向テキストをウェブで実現するためにそれぞれの標準仕様に規定が設けられている。\n最も重要なのが Unicode。\nUnicode は世界中のあらゆる言語の文字を網羅しようという壮大な文字セット規格。\nUTF-8 もその応用。\n最新の Unicode 6.1 では 10万以上の文字が定義。\n一個一個の文字に対して LTR, RTL, 中立などの方向性プロパティが設定されている。\n
  • テキストをメモリに格納する時のことを考えてみる。\nメモリに右も左もない。あるのは前と後ろ。\nメモリに格納されるときは論理的順序に従う。\n論理的順序とはテキストが読まれる順序のこと。\nこれを表示する際に RTL と LTR が混在した順序に変換しないといけない。\nこのときの複雑なルールが Bidirectional アルゴリズムとして Unicode 規格で定められている。\n
  • これはおまけ。ちょっと遊んでみよう。\nUnicode の文字 RIGHT-TO-LEFT OVERRIDE はパラグラフのそれ以降のテキストを強制的に RTL にする特殊な文字(一般句読点ブロックにあるけど)。\nこれの文字参照 ‮ を先頭に付けてツイートすると RTL に。\n
  • \n
  • \n
  • \n
  • \n
  • オープンソース CMS における 多言語対応のトライ&エラー

    1. 1. CMS ( 20 )
    2. 2. Contact Form 7
    3. 3. 56 (2012 2 )
    4. 4. ( )( )
    5. 5.
    6. 6. Left-to-Right Right-to-Left LTR RTL
    7. 7. HTML <em> </em>
    8. 8. <me/> <me><em> </em></em> <em>
    9. 9. LTR RTL (Bidirectionality)
    10. 10. HTML CSS• lang • direction• dir • unicode-bidi• <bdo> Unicode • Bidirectional
    11. 11. Unicode Bidirectional ( ) mark 3.1% 0.2 ‫.&رْك‬ m a r k 3 . 1 % ‎‫م‬‎ ‎‫ا‬‎ ‎‫ر‬‎ ْ ‎‫ك‬‎ 2 . 0 .
    12. 12. Twitter ‮(RIGHT-TO-LEFT OVERRIDE) RTL
    13. 13. •• [text your-name "hoge"] ←• RTL• ...
    14. 14. ••
    15. 15. !() ‫,+*ا‬ !‫תודה‬ !&-, ‫10/* از‬ Thank you! ! ... (https://twitter.com/#!/takayukister) 2012 2 18 vol.1(http://fww-a11y.in/)

    ×