更新情報

先日、Merriam-Websterという英語の辞書に、新しい定義が追加されました。この辞書はアメリカ英語において権威があるため、あらゆるところ で話題になりました。特に今回追加された新語の中には、インターネット時代を象徴するものが多数含まれているようなので、とても興味深いところです。

ワシントンポスト紙の記事
http://www.washingtonpost.com/news/morning-mix/wp/2015/05/26/behold-the-new-words-added-to-merriam-webster-clickbait-wtf-and-photobomb/

タイム紙の記事
http://time.com/3896800/merriam-webster-update-nsfw-dark-money-wtf/

これらの新語の中には、「emoji」という単語が見受けられます。

日 本人にとって「絵文字」は昔から付き合いのあるものですが、海外では黄色いニコちゃんマークの「smiley icon」や、表情アイコンの「emoticon(emotional + icon)」といった単語が使われてきました。これらと「emoji」の違いは、「emoji」は顔の表情だけでなく、「病院」や「宿題」といったあらゆ るものを表現するために使われるというところです。海外では「emo (emotional) + ji (text)」と勘違いしている人も少なくないようですが、「絵文字=絵で文字を表す」という名称でも表わされるように、「emoji」は 「smiley」や「emoticon」とは違った、新しい概念なのです。

また、「emoji」はUnicodeで規格化されていることも大きなポイントです。

思 い返せば、ガラケーの絵文字をどうにかしてパソコンからも使えるように、Webシステムの開発者たちが工夫を凝らしていた時代がありました。画面上で絵文 字を入力する際には絵文字用のパレットを表示し、絵文字を保存する際には「##e001##」のような代替文字列を使い、再度画面で表示する際にはその代 替文字列を絵文字の画像に置き換えるといった回りくどい方法がよく使われました。携帯電話会社ごとにバラバラな絵文字も悩みの種でした。

ところが2010年、ついに絵文字はUnicodeの規格文字になりました。そのため、海外のコンピューターとも以下の一覧にあるような絵文字を送り合えるようになったのです。

http://en.wikipedia.org/wiki/Emoji#In_the_Unicode_standard

そ れでは、Ruby on Railsではこの絵文字を取り扱うことができるのでしょうか。答えはイエスです。(まだ完璧でない部分もあるようで、GitHubにバグ報告が上がって はいますが…。)Unicodeで規格化されている絵文字は、1バイトから3バイトで表される通常の「utf8」ではなく、4バイト文字の 「utf8mb4」という文字コードになります。このため、絵文字を扱えるかどうかは、Railsで使用する以下の機能がそれぞれutf8mb4に対応し ているかどうかに寄ります。

・Rails本体
・Webサーバー
・データベース
・JSON構文解析
・ほか

イ ンターネット上を探すと、Railsで絵文字を扱うための数々のハウツーページが見つかります。特に、RailsとMySQLの組み合わせで絵文字を扱う 例が多く紹介されています。WebサーバーにNode.jsを使用している場合や、JSONでのデコード・エンコード時には特殊な操作が必要な場合もある ようです。

残念ながら、「Railsアプリでは特殊な設定をしなくても絵文字を扱うことができます」、という段階にはまだ至っていません が、それでも数年から十数年前の絵文字の情勢に比べたら雲泥の差ですよね。ガラパゴスと言われている日本の携帯電話ですが、emojiを輸出できたことに はとても大きな敬意を払うとともに、ぜひ私たちの開発するRailsアプリでもemojiを使って、さらにemojiを広めて行けたらよいですよね。