Archive for the 'PCalc' Category

2009/10/01 PCalcで計算

作者のJames Thomsonにメールを書いたら、すぐに返事が来て(汗) AppleScriptからPCalcをコントロールして計算させるやり方を教えてもらいました。

逆ポーランド記法っぽい(そのものではありませんが)指定の仕方で、計算できるようです。

cal3.jpg

計算コマンドについては、PCalcのヘルプに書いてあります(James談)。

calc2.jpg

レジスタ(x, y)や計算メモリ(m)とr1、r2……rF(無限?)までのストア用レジスタが使えるようで……なにやら、8bit CPUの頃のアセンブラを思い出させます。

ただ、Jamesもメールに書いていましたが「AppleScript自体で計算した方が早いよね」とのことで……PCalcをAppleScriptからコントロールするというのは、もはや「技術力の無駄遣い」とか「趣味」の世界なのでしょう。

スクリプト名:PCalcで計算
tell application “PCalc”
  activate
  tell
calculator 1
    set value of register “x” to 4.0
    set
value of register “y” to 5.0
    
execute code “mul x y”
    get
value of register “x”
  end tell
end tell

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2009/10/01 PCalcで計算機を10個追加する

アプリケーションランチャー「DragThing」であまりに有名なJames Thomsonの電卓アプリケーション「PCalc」はAppleScriptに対応しています。知る限り、AppleScript対応の電卓はこれだけです(Classic Mac OS時代にはいくつかありましたが……)。

真面目にPCalc用のAppleScriptを書いたことはなかったのですが、いざ書き始めてみてビックリ! 計算させることができません(ーー;;;;

計算ログ(Tape)表示ドロワーのオープン/クローズといったことはできたし、さまざまなプロパティにアクセスすることはできたのですが、肝心の計算ができないとは……(Jamesにメールを書いて、「本当にこういう仕様なのか?」と聞いてしまいました)。

→ Jamesから直接やり方を教えてもらいました

cal1.jpg

できないできない、だけでは話にならないので、とりあえずインパクトがありそうな「新規電卓ウィンドウを10個作る」AppleScriptを書いてみました。インパクトはありますが……意味はありません。

昔は、DragThingがAppleScriptに対応していることに意義を見いだせませんでしたが、Mac OS Xの時代になって「起動ランキング表示」とか「登録アイテムのキーワード検索」といったAppleScriptが書けて、かつ実用性があることが分りました。

PCalcのAppleScript対応機能の可能性を追求していくと、思いも寄らなかったような新たな利用方法が見つかったりするのかもしれません。

……そんなアクロバティックなことをしなくても、シェルのbcコマンドで計算すればいいんじゃないか、という指摘はあるわけですが(汗) まあ、それはそれ。

スクリプト名:PCalcで計算機を10個追加する
tell application “PCalc”
  repeat 10 times
    make new calculator
  end repeat
end tell

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に