2002-11-30[n年前へ]
■AMETのATOKへのメッセージ送信
が上手く動作しない。ATOKへWM_AMET_NOTIFYを送信しても、反応しない。違うウィンドーをアクティブにして戻すとちゃんと反応する…。というわけで、ダミーのウィンドーをほんの一瞬表示することで、ひとまず逃げることにした。
で、いくつか作る予定のATOK AMETプラグインのアイデアは「IME 数式処理」「IME プログラム・ラウンチャー」というところかな。
2002-12-01[n年前へ]
■ATOK数式処理プラグイン「AtokMathParser」
ひとまず、できた。変数への代入処理なんかもできたら便利そうなので、それはいつかのバージョンアップ時に実装する予定。また、方程式を解く機能なども実装する予定…。高機能な数式処理システムMuPadと連携するバージョンなども面白そうだけれど、そこまでやると逆にあまり便利じゃないかも。というわけで、今日作った「ATOK用数式処理プラグイン(全角→半角変換ミス修正版)」を置いておきます。一番最初のバージョンでは全角→半角変換ミスがありましたので、半角時に"="が有効でなくなる人は修正版をご使用下さい。また、自分のPCでしかテストしていないので、ぜひフィードバックを下さい。そもそも、他のPCで動くかどうかもパッケージなどの兼ね合いもあって不安ですから。
さて、このソフトはATOKで入力中の数式の計算結果を変換表示するプラグインです。ATOKユーザーで電卓を使うような機会のある人であれば必須のツールになるかもしれません。とりあえず、かなり便利だと思います。
インストールはアプリケーションを適当な場所に移動後(その後移動しないこと)、起動して「インストール」をクリック。アンインストール時は「アンインストール」をクリックです。Windows2000ならその後ログオフすれば、その他では多分再起動すれば使えるようになります。
全角→半角変換も入っていますので、「3/2*12」なんて入力しても良いですし、"sin(pi)*12/log(12)"なんて半角で入力しても良いです。使える関数や演算子も「結構多いです」から、とりあえずちゃんとしたドキュメントを書くまで適当に色々と試して下さいな。
ちなみに、入力の最後に"="を付けると、入力した内容も変換結果に表示されます。例えば、「3/2*12=」と入力して変換すると"3/2*12= 18"となります。
また、AMETを使用するときにはショートカットを駆使することになると思いますが、多分デフォルトでは「Shift+Ctrl+F10 → 2」になると思われます。また、Ctrl+F9→Eで半角英字入力になりますし、Ctrl+F9→Hで全角かな入力になります。"sin"とか"log10"とか半角英字入力が必要な際にはショートカットで切り替えましょう。多分、ATOKのプロパティ設定から一発ショートカットでも設定しておくときっと便利になるんでしょう。
ところで、結局Input Calc for AMETは私は上手く動かせなかったので、それとの比較は判りません。また、ATOKのバージョン違いなどの対応もよく判りません。とりあえず、AmetDateの資料・ソースに感謝なのです。
2002-12-02[n年前へ]
■演算子・関数一覧
ATOK数式処理プラグインの使用可能な演算子・関数一覧を置いておきます。ATOKで演算子・関数が使えるなんていいと思いません?
■ATOKプラグイン「多対一対応」
どんなものが便利でなおかつ面白いだろうか?IMEのアドインとして使うのだから、時間(検索に時間がかかるとか)や手間が必要(マウスを使うとか)なものでは今ひとつだろう。その点、「数式処理プラグイン」の「変換結果が基本的に一つ」という性質はなかなか良い例だと思うのである。
しかも、「多対一であって、一対一対応でない」というのも重要だろう。「一対一の対応」であれば、プラグインを使うのでなくて、それは単に辞書登録すれば良いわけなのだから。というわけで、「数式処理プラグイン」はそういう面でとても良いサンプルだと思う。他にはそんな例は無いのだろうか?
2002-12-03[n年前へ]
■古いバージョンのATOKでの「ATOK数式処理プラグイン」のインストールについて
古いバージョン(少なくともATOK13以前)のATOKでは、マニュアルの記載通りに解凍後プログラムを走らせて、インストールのボタンを押すと、「AMETが見つかりません」と表示されます。古いバージョンの場合には、次のようにしてみて下さい。
まず、AmetMath.exeを/REGSERVERオプション付きでコマンドラインから走らせます。
AmetMath.exe /REGSERVERその後に、ATOKの設定ファイル、例えばAtok12であればatok12w.iniに、以下の記述
AMET2名称=数式処理ID=AmetMath.FuAmetMath未入力起動=しないを追加します。なお、AMET2の部分の数字は他のAMETと重ならない数字ということになります。で、Windowsを再起動してみて下さい。