2016年7月アーカイブ

その字はJISにある

スマホゲームのPokémon GOが大変話題を呼んでいます。

この名前の「Pokémon」の「é」、これはJIS X 0213の文字です。JIS X 0213の漢字集合1面、面区点1-09-63にあります。7ビット符号では295F、EUC-JIS-2004ではA9DF、Shift_JIS-2004では857Eというコード値になります。Unicode/UCSではU+00E9 (LATIN SMALL LETTER E WITH ACUTE) にあたります。

このアクセント符号つきの文字はフランス語において使われる文字としてよく知られています。"café" (カフェ)や "résumé" (レジュメ)といったフランス語の単語に使われます。文字コードとしては西欧向けの1バイトコードISO/IEC 8859-1 (Latin-1)に入っています。UnicodeもLatin-1の文字の並びをそのままコピーしていますが、JIS X 0213もやはりLatin-1の文字を全て含むように設計されているので、この文字も収録されています。ちなみにJIS X 0213は西欧のLatin-1だけでなく中欧東欧向けのLatin-2の文字も全部含んでいます。(細かいことをいうと、「Latin-1の文字を全て」には面倒くさい問題があるのですが、長くなるのでいずれ別の記事として書きましょう)

文字入力が大事

ニュースサイトの記事では、この「é」を使わずただの「e」にして注釈を添えているものがありました。入力ができなかったとしたら残念です。

Emacs上で動くオープンソースの仮名漢字変換プログラムSKKはJIS X 0213に対応しており、辞書ファイルSKK-JISYO.JIS3_4を使うと、打鍵操作「/e'␣」でこの文字「é」を入力できます。この辞書から派生して作られたATOK用のJIS第3第4水準辞書にも、アルファベットの大文字から変換できる形で入っているはずです。

私はこの記事をMacで書いていますが、キーボード「英字」ならびに「ABC Extended」では、「option-e e」でこの文字を入力できます。

iPadのソフトウェアキーボードでは、英語キーボードでeを長押しすると各種アクセント付きの文字の候補が上に出てきて、そこから選べます。ただし日本語のアルファベットモードはまた別のようです。こっちはよく分かりません。

この文字は日本の文字コード標準JIS X 0213で符号が与えられている文字なので、日本で使われるPCや携帯電話スマホなどでは特別な苦労なしに入力できるよう、文字入力プログラムが設計されているべきです。JIS X 0213の11,233文字は、全ての日本語対応プログラムがサポートすべき、今日の日本語環境のベースラインです。

なぜアクセント符号?

ちなみに聞きおよぶところでは、元々の日本での名称「ポケットモンスター」は英語では俗語に通じるため英語名称では「ポケモン」を使うようにした由で、さらに「Pokemon」という綴りだと英語ではeを日本語の「エ」のようには発音されないことからアキュートアクセント符号付きの「é」にされたそうです。

花火大会の記事にJIS第3水準漢字があった

昨晩、北海道の函館市で地元の函館新聞社の主催する花火大会があったそうです。そのニュース記事の中に、ある漢字を外字扱いしているものがあって注意を引きました。

この記事の中に、「「一新紀元」「岸●汀蘭(がんしていらん)」の2部構成で」とあります。記事の後ろに「●は草冠に「止」」と注釈がつけられています。

「草冠に「止」」とは、漢字「芷」でしょう。音読みで「シ」です。JIS X 0213の第3水準、面区点位置1-90-68にあります。

どういう言葉なのか

上の熟語全体でいうと、「岸芷汀蘭」という言葉になります。手持ちの国語辞典には載っていなかったのですが、ウェブ検索によると「水辺で、草花が香り高く咲き乱れている様子」(例えばGoogleで1番目に出てきた結果)というような説明が出てきます。

広辞苑にも載っていないようなずいぶん難しい熟語を使うものだなと思いましたが、検索結果にpixivのサイトがあったので、こういうのはネットのソーシャルメディアなんかで格好いい四字熟語を使いたいという欲求によって広まるものなのかもしれません。

この「芷」という漢字は「白芷(びゃくし)」という形でヨロイグサという草の名として用いられることもあるそうです。こちらは大辞林や広辞苑にも載っています。ちなみにこの草の根を乾燥して薬として用いられるそうで、それも「白芷」の語義のひとつとして辞書に掲載されています。

単語「白芷」は、Macの日本語入力やEmacs上のSKKの第3第4水準辞書SKK-JISYO.JIS3_4を使って「びゃくし」という読みから入力できます。

外字扱いは残念

さてこの第3水準漢字、上のサイトは文字コードがUTF-8なので記事の中に文字として用いることはできるのですが外字扱いされています。なぜ外字扱いになったかと想像するに、文字入力ができなかったか、あるいは記事を管理するシステムがJIS X 0208の第1・第2水準漢字しか扱えない古いバージョンのShift_JISであるため制限されたという可能性も考えられます。文字入力から記事の管理まで、第3第4水準を使用可能なUTF-8やShift_JIS-2004が使われていれば問題ありません。(参考: 第3第4水準文字コードを使おう!)

文字というのは言語を表記するものであるので、こうした言葉をスムーズに入力・交換することが、コンピュータにおける文字の問題の最も大事なことだろうと思います。

生前譲位の報道でUnicode仕様書の元号の問題を思い出す

天皇陛下が生前譲位される御意向という報道が出回り、様々な意見や憶測が飛び交っています。その中には譲位がなされれば行われるであろう改元についてのものもあります。これで私が思い出したのはUnicode仕様書の中の元号の説明が微妙に間違っている件です。

平成は1989年1月8日から始まりましたが、Unicode Standardの説明では1月7日としており1日ずれています。昭和や大正もなぜか同じく1日ずれています。アメリカ時間でもないのでしょうが、不思議な現象です。

Unicodeの最新版ではどうか?

上の記事を書いた時はUnicode 6.1だったのですが、現行の最新版ではどうかとチェックしてみました。

先日Unicode 9.0が発表されましたが(参考: Unicode 9.0が出ています (2016年6月))、上記記述に対応する部分のPDFはまだウェブサイトで公開されていません。"Available August 2016" と記されています。

現在該当部分を確認できる最新版は8.0.0でした。Chapter 22 Symbolsの中、Table 22-8 "Japanese Era Names" が該当部分です。これを見ると、先の記事を書いたときと同じ記述になっていました。仕様書の以前の版の記述をそのまま持ってきただけなのでしょう。誰も気づいていないのかもしれません。

元号の合字のようなものについて

なお、UnicodeにはU+337BからU+337Eの範囲に、明治から平成までの元号を1文字分にした合字のようなものが割り当てられています。これの存在が上記Table 22-8の設けられた理由です。

改元によってこれらに加えて新たな元号のものが追加されると思う向きもあるかもしれませんが、これら4つの元号の符号位置は元来ベンダ定義外字との互換用に設けられたものなので、新たな元号を追加するというのは適当でないでしょう。最近では知らない人もいるのかも知れませんが、昔のPCではベンダがシフトJISなどの文字コードの空き領域に勝手に文字を割り当ててしまうという問題があっていまだに尾を引いていますが(現在ではJIS X 0213やUnicodeの文字コード標準に従うべき)、その中にこれらの元号もあったのです。当時想定されたのがスペースの節約のためか縦書き用か詳細は知りませんが、いずれにせよ1文字分に詰め込みたいなら組版の機能で行うべきです。

もし個々の元号について必要だというなら、西暦645年の大化から明治の直前の慶応まで、全部の元号を追加すべきということも言えてしまうでしょう。

私はだいぶ前からiPodを使っていて、つまりはiTunesで音楽データを管理しているのですが、最近はAndroidスマホを使っています。外出するのにiPod Touchとスマホという同じようなものを2個持ち歩くのは如何なものかと思っていました。iPhoneにしろという声もあるでしょうが、スマホでFeliCaの機能をよく使うのでその選択肢はありません。

iTunesの曲をAndroidで聴くにはどうしたらいいか。多分やり方は色々あるのだろうけど面倒くさそうだなという先入観が先に立っていました。

ところが、Google Play Music を使えばそれができそうだと最近ようやく分かりました。

Google Play Musicは有料聴き放題サービス(だけ)ではない

Google Play Musicは最近テレビCMもよくやっているのですが、そのせいで、定額制の音楽聴き放題サービスなのだと思っていました。そして、別に興味ないやと思っていました。そのサービスはもちろん提供されているのですが、実はそれだけではなかった。

私にとってのGoogle Play Musicの要点をあげると下記2点です。

  • 基本機能は無料で使える (聴き放題サービスは有料)
  • 自分のPCに持っている音楽データをサーバにアップロードしてスマホなどで聴ける

これを使ってPCに入っている曲をスマホで聴けるようにすれば、わざわざスマホとiPodを一緒に持ち歩かなくていいのではないか。

Google Play MusicにiTunesの曲をアップロードしてみた

Google Play Musicのウェブサイトにアクセス、Googleアカウントでログインしてアップロードできます。ミュージックマネージャというアプリをダウンロードして実行することになります。私はMacで行いました。

ウェブサイトの案内に沿っていけば困るようなことは何もないので、手順の説明は省略します。というか、あまりにスムーズすぎたので何も覚えていません。

今回アップロードしたファイルには、iTunes Storeで購入したもの、CDからリッピングしたもの、Moraで購入したものが含まれます。いずれもiTunesで管理していたもので、問題なくアップロードできました。アップロード元を選ぶ際に、iTunesで管理されている音楽を指定することができます。

ただし、DRMのかかっているものはアップロードできません。私の持っているものでは、何年も前にiTunes Storeで購入したものがDRMつきなのでアップロードできませんでした。これはAppleのiTunes Matchというサービスを使えばDRMフリーのファイルに置き換えられるそうですが、iTunes Matchの利用には料金が発生するようです。

今後新たに曲が増えた時どうやって同期すればいいかという問題がありますが、ミュージックマネージャの環境設定で「iTunesに追加した曲を自動的にアップロード」という設定が可能です。これにチェックをつけておけば、何もせずともサーバにアップロードされます。

Androidスマホで聴いてみる

あとはスマホ側でアプリを使ってアップロードした音楽を聴いてみます。Google Play Musicのアプリは私のスマホに最初から(?)入っていました。

このアプリは基本的にストリーミングで聴けますが、外出先でそれはつらいので、あらかじめダウンロードして聴くこともできます。Wi-Fi接続時のみストリーミングとか、ダウンロード済みのものだけ表示するという設定も可能です。

iTunesのプレイリストも取り込んでくれるし、iTunesに新しく入れた曲も先の自動アップロードの設定で勝手にサーバに取り込まれます。(スマホ側では「更新」ボタンを押すと同期できる模様)

割とあっさり、理想的な環境になりました。こんなに簡単だったとは!

イヤホンが問題だったりする

これでiTunesの曲をいつでもスマホで聴けるようになりました。が、実際の使用上、問題になるのがもうひとつありました。イヤホンです。

iPod Touch用のリモコン付きのイヤホンでは、リモコン操作で停止・再生、次の曲・前の曲への移動ができて、よく使っていました。同じことがAndroidスマホでもできるかどうか。

Android対応のイヤホンを買って試してみました。製品やアプリにもよるのかもしれませんが、私の試した組み合わせでは、停止、再生、次の曲へ移動はできたものの、前の曲への移動ができませんでした。うーむ惜しい。

アプリによる改善も含めて、イヤホンの件は今後の課題として試してみたいと思います。

広告