2016-08-16

文字コードを使って文字を入力

文字コード(ユニコードスカラ値)を使って、文字を入力する必要に迫られた。なぜか突然、迫られた。

文字コードから、それに対応する文字に変換する操作は Windows ならとても簡単である。 Microsoft IME には「文字コード変換」機能があるので、文字コードを入力してF5キーを押せば一発変換できる。

また、ワードパッドにはショートカットキー Alt + X で、文字コードと対応文字を相互変換する機能がある。

Windowsでは朝飯前だが、Macでこれをやろうとすると、はて? ユニコードから文字に変換する機能って Mac にあったっけ? 昔、やったことがあるような気がするが。

アップルのサポートに電話して聞いてみたところ、残念ながら OS X El Capitan の日本語入力プログラム (Japanese Input Method) にはそういう機能はないそうである。

う〜ん、昔できていたような気がしたのは他社製のIMを使っていたからか?

何か別の方法はないものかと調べていたところ「Unicode Hex Input」というそれらしきものを発見(今、初めて発見したように書いているが、かなり前から存在する)。

システム環境設定の「キーボード」>「入力ソース」に「その他」言語の「Unicode Hex Input」入力ソースを追加してやると、文字コードによる文字の入力が可能となる。

入力ソースをUnicode Hex Inputに切り替えて、optionキーを押し下げたまま16進数4桁のユニコードスカラ値をタイプすれば、対応する文字を入力できる。

追加多言語面(16進数5桁以上のユニコードスカラ値)に含まれる文字もサロゲートペア16進数8桁を使って入力可能である。

ただこれ、入力中の視覚的フィードバックがない(コード番号が画面に表示されない)ので、今ひとつ使い勝手が悪い。 おまけにU+10000以降のユニコードスカラ値は、そのまま入力しちゃダメで、サロゲートペアを使わなくてはならないって……

一般ピープルにサロゲートペアを入力させるインターフェースってのもどうなのよ、アップルさん。 これじゃWindowsに完敗だよ。改良してくれんかね。

とりあえず、アップルに改善を提案しておいた「日本語インプットメソッドにユニコードから文字への変換機能を付ける」とか「Unicode Hex Inputで16進数5桁以上のユニコードスカラ値を入力する機能を付ける」ってどうですか、と。

現状では Mac OS X で文字コードに対応する文字を入力したい場合、絵文字と記号ビューア(Mavericks以前は「文字ビューア」と呼ばれていた)を使う方法が一般的だ。

  1. システム環境設定の「キーボード」>「キーボード」にある「メニューバーにキーボードビューア、絵文字と記号ビューアを表示」にチェックを入れる。
  2. 入力メニューから「絵文字と記号を表示」を選んで、「絵文字と記号ビューア」を表示する。
  3. 絵文字と記号ビューアのアクションメニュー(ウインドウ左上の歯車アイコン)から「リストをカスタマイズ...」を選択する。
  4. 「コード表」カテゴリの中に「Unicode」があるのでチェックを入れる。

これで、絵文字と記号ビューアから文字コードに対応する文字を検索できるようになる。 テキストを選択しておいて、絵文字と記号ビューアにドラッグアンドドロップすれば、逆に文字に対応する文字コードを調べることもできる。

0 件のコメント:

コメントを投稿