2011年02月23日

[Mac] 辞書.appでタイ語辞書

実は10.5 (Leopard)から辞書アプリ(ビューア)がOSに付属していたのですが、PDICタイ語辞書を読み込めるわけではないし、EBMacPDIC Viewerもあるのでイマイチ使っていませんでした^_^;)。
しかし改めて調べてみるとこれがナカナカ良くできていて(辞書単体というよりOSとの連携で)、しかも辞書データを自作できるとのこと。
参考:【コラム】OS X ハッキング! (252) Leopard解体新書(3) 〜俺流の辞典をつくる〜 | パソコン | マイコミジャーナル
というワケでやってみました。以下覚え書きw

【お断り】なんでだか10.5 (Leopard)で辞書をコンパイルするとうまくいきません。10.6 (SnowLeopard) なら問題なしです。

  1. 下準備
    Developer Toolsをインストールしてあれば、/Developer/Extras/Dictionary Development Kit/~ 以下にテンプレートやドキュメントなどがあります。
    この内“project_templates”を上書き利用するので、先にフォルダごと複製しておきます。
    あとOpenOffice(またはMS Office)とテキストエディタも必要です。
    このテキストエディタがクセモノで、基本的にはUTF-8で保存できれば何でも良いハズなのですが、約17MBとはいえ動作がもっさりしたり一括置換すると落ちてしまったりと、結構手こずりました。一応参考まで、ワタシはCotEditor, mi, iText Expressを取っ換え引っ換え使ってみました^_^;)。
  2. PDICタイ語辞書をテキストファイルにする
    初っ端からイキナリWindowsが必要なのですが、BootCampやParallelsなどを利用するか、他のWin機でなんとか乗り越えてください(笑)。後の作業は全てMacでできます。
  3. テキストファイル(csv)を整形する
    Dictionary Format.rtf によるとかなり凝ったフォーマットにできるようですが、ごくシンプルに以下のような体裁にしてみました。先のテキストファイルを、このようなタグ付きに変換すれば良いワケです。



    OpenOfficeなどで先のテキストを開いて、下図のように整形します。



    B列=d:entry id ですが、これは辞書内でユニークであれば良いようなので単純に連番にしました。

    整形が終わったら、再びテキスト形式(csvでもタブ区切りでも良い)で保存します。
    これを適当なテキストエディタで開き、
    【●(カンマまたはタブ)】→【<d:entry id="】
    【(カンマまたはタブ)★(カンマまたはタブ)】→【" d:title="】
    と、フォーマットに合うように置換します。

    余談ですが、PDICタイ語辞書には昔からの名残なのか訳/用例欄に“[ちぇんまい]”といったかな書き(読み?)が入っていますが、邪魔なので整形ついでに削除しました^_^;)。
    正規表現で【\[.*\]】→【空白】で置換すれば一掃できます。

    あとはUTF-8形式で保存し、ファイル名を“MyDictionary.xml”に変更、“project_templates”内に上書きします。

    ここから先は上記マイコミジャーナルのコラムの3番以降と同じなのですが、一応要点だけ。
  4. MyInfo.plistを修正
    “project_templates”内の“MyInfo.plist”をProperty List Editorで開き(WクリックでOK)、Information Property List > Bundle name の値を表示させたい辞典名に変更して保存(SnowLeopardではこのような構成になってます)。
  5. Makefileを修正
    “project_templates”内の“Makefile”をテキストエディタで開き、“DICT_NAME”を先ほどの辞典名に変更、保存(UTF-8形式で!)。
  6. ターミナルから辞書作成
    ターミナル(Terminal)を起動し、“project_templates”にカレントディレクトリを移す。
    cd(半角スペース)→“project_templates”フォルダをターミナルのウィンドウにドロップ→return でOK。
    make→return
    エラーが出なければ、続けて
    make install→return
    これで完成です。

では早速、辞書.appを起動して検索してみます。
正直ここまでなら、EBMacで検索するのと変わりません。



Spotlightの検索にもヒットします。



Cocoaアプリ(SafariやCotEditorなど)に限定されるようですが、Command + Control + D キーを押したまま(Dは離しても良い)意味を調べたい語句にマウスカーソルをロールオーバーさせると、辞書にヒットした単語がポップアップされます。ステキすぎます!



ちなみにFirefoxはポップアップできませんが、Look Up in Dictionaryというアドオンを入れると、語句選択→コンテクストメニュー→辞書で調べる で辞書が引けます。

ということで、タイ語以外の言語でもデータさえそろえられれば辞書にできますし、例えば車だとかミュージシャンの辞典とか、アイデア次第でいろいろ活用できそうです。
でも実はコレ、壮大な前フリだったりします。待て、次回!w
posted by kom at 00:13| 東京 ☁| Comment(2) | TrackBack(0) | PC | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
ご質問なんですが、これはLionでもいけますか?
ご教授頂けますでしょうか…
Posted by じゅん at 2012年04月28日 00:18
質問の趣旨がよく分からないのですが^_^;)。
辞書の作成であれば、既に作成済みなので試していません。
辞書の使用なら、継続して使えてます。
Posted by kom at 2012年05月01日 10:52
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック