Home>History>

2006.04-06

2006.06.23

QuickFileType 3.0 を公開しました。

QuickFileType はファイルのクリエータコードとタイプコードを表示/編集するアプリケーションです。

手早く、クリエータコードとタイプコードの変更が行えるように以下の特徴があります。

  • 起動時に Finder で選択されているファイルのクリエータコード/タイプコードを変更できます。
  • よく使うクリエータコードとタイプコードのセットを登録し、そのセットをファイルに適用できます。
  • 複数のファイルのクリエータコードとタイプコードをまとめて変更できます。
  • クリエータコードとタイプコードの変更履歴が自動的に保存され、ポップアップメニューから選択してファイルに適用できます。

ところで、どなかたアイコンを作ってくれないでしょうか?

2006.06.09

HMDT Third Edition がはずれた・・・

やはり、日頃の行いが良くないのでしょうか・・・

しょうがない、買うか・・・

2006.06.02

HMDT Third Edition が欲しい。

たぶん、定番の Cocoa 解説書、Happy Macintosh Developing Time の Third Edition が発売されたそうで、プレゼント企画をされています。ぜひ欲しい。プレゼントしていただかなくても時期買っちゃうと思うけど、プレゼントしてくれたらすごくうれしい。有効活用することを誓います。

実際、Second Edition は購入してお世話になりました。以前は、AppleScript しか使えませんでしたが、最近(去年ぐらいから)はだいぶ Cocoa 率が上昇しております。今も新作 Cocoa アプリケーションを開発中。Second Edition はアプリケショーンに必要なことがバランスよく網羅されていて非常に助かりました。もちろん、実際にコーディングするときには ADC のリファレンスとにらめっこするのですが、新しいことを始めるときは日本語で書かれた丁寧な解説書があるとないでは敷居がだいぶ違います。

Third Edition では、Tiger の新機能について書かれているとのことです。とりあえず、PDF Kit、その次に Core Data に興味があるな〜。

2006.05.31

UnixScriptTools for mi 2.0.3 を公開しました。

高機能テキストエディタ mi で Unix スクリプト(bash、Perl、gnuplot、Octave、awk、ruby など)の開発および実行を支援するアプリケーションとスクリプトのセットです。

bash モード、Perl モード、gnuplot モード、Octave モードが付属します。

  • 「Finder の選択物に対して実行」ツールを実行すると、対話プロセスのターミナルが開かれてしまう不具合を修正
  • 間違ったターミナルにコマンドを送ることがある不具合を修正
  • 寄付を催促するダイアログを表示するようにした。
  • Octave モードのツール「選択範囲を edit」を追加
  • Octave モードのツール「選択範囲を help」を追加

2006.05.26

シェルスクリプト中の AppleScript と AppleEventData.osax

osascript コマンドを使って、シェルスクリプトに AppleScript を埋め込みたい場合は、AppleEventData.osax を知っているとかなり役に立つかと思います。AppleEventData.osax の another data of コマンドは AppleScript でデータの強制的な型変換を行うスクリプティング機能追加です。

AppleScript では文字リテラルは string class のオブジェクトであり、エンコーディングは言語環境に依存します。日本語環境の場合、Shift-JIS です。また、osascript で AppleScript に引数としてデータを渡す場合も string class になります。

一方、シェルでのパス文字列のエンコーディングは、 UTF-8 ですが osascript に渡すと AppleScript 側では、string class なのに中身は Unicode という異常なデータが出来上がってしまいます。日本語などが交じっているとまともに処理できません。そこで、AppleEventData.osax の another data of コマンドを使って、string class を 強制的に Unicode text に型変換するとちゃんと処理できるようになります。

open -a Terminal .

先日公開した newterm と同じことが、「open -a Terminal .」と簡単にできるとご指摘をいただきました。

ごもっとも・・・全く気づきませんでした。ご指摘いただきありがとうございます。自分の不明を恥じる次第です。もっとも、こんなガラクタ Web サイトを公開していること事態が一番の恥なのですが。

公開しちゃったし、 AppleEventData.osax のサンプルになるかと思いますので、気が済むまで放置しようと思います。

2006.05.22

newterm 1.0 を公開しました。

Terminal.app の新しいターミナルウィンドウを開くコマンドラインツールです。ターミナルで、「newterm」を実行すると、現在の working directory と同じ working directory のターミナルウィンドウが新たに作られます。

環境変数 PATH に含まれる directory にコピーして使ってください。また、スクリプティング機能追加 AppleEventData.osax が必要です。

2006.05.10

PathAnalyzer 1.4 を公開しました。

ファイルもしくはフォルダのパス文字列("Macintosh HD:Users:UserName:hello.txt"とか)から、以下の情報が取得する AppleScript のライブラリです。

  • フォルダへの参照
  • フォルダの名前
  • ディスクへの参照
  • 名前
  • フォルダであるかどうか
  • 拡張子

2006.05.08

Monolugue に 「AppleScript で高速データ処理」 を公開しました。

AppleScript の一つの弱点は大きなデータ処理が非常に遅いということですが、データ処理の基本となるリスト処理を数百倍高速化するテクニックをご紹介します。新規性のある内容ではなく、英語のメーリングリストでは、しばしば話題になる(なった)トリックです。

2006.05.03

Open in Terminal 1.2.1 を公開しました。

Finder で選択されている場所が working directory になっているターミナルを Terminal.app で開きます。スクリプトメニューKeyboard Mestro、など、スクリプトファイルを実行できるユーティリティに登録して実行して下さい。適当なショートカットキーで起動できるように設定すると便利です。

SmartTitle 1.1.1 を公開しました。

Terminal.app のターミナルウィンドウのタイトルに、シェルの working directory のパスを表示するスクリプトです。

  • 適切に設定すれば、cd で working directory を変更しても自動的にタイトルが変更されます。
  • タイトルが長くなりすぎて見苦しくならないように、3階層分のパスを表示します。
  • パスに日本語が含まれていても正しく機能します。

2006.05.02

TeX Tools for mi 3.1.2 を公開しました。

高機能テキストエディタ mi を中心とした LaTeX の統合環境を提供するアプリケーションとスクリプトのセットです

  • ターミナルウィンドウをアクティブにしないオプションを追加(塚本さん、ありがとうございました。)
  • アプリケーション切り替え時のツールパレットおよびリファレンスパレットの表示/非表示がスムーズになりました。
  • mi が起動していないときに miclient が動作しない不具合を修正
  • ツールパレットおよびリファレンスパレットの「TeXCompileServer の起動時に表示する」オプションが OFF の時は、前回の状態を再現するようにした。
  • コメント/アンコメント ツールを AppleScript で実装した物に変更。

miclient 2.0.7 を公開しました。

テキストエディタ mi でファイルを開き、指定した行を選択することができるコマンドラインツールです

2006.04.28

塚本さん、寄付ありがとうございました。

ご意見を反映させた TeX Tools for mi は、もうちょっとしたら公開します。

AppleScript ソースコードの分割と共有 を加筆修正しました。

ModuleLoadr に関する記述を追加。

2006.04.27

TerminalCommander 1.5 を公開しました。

ターミナルでのシェルコマンドの実行を支援するライブラリです。以下のような、複雑な処理を行いたいときにこのスクリプトはお役に立てるでしょう。

  • ターミナルウィンドウを追跡して、同じターミナルで何度もシェルコマンドを実行したい。
  • シェルコマンドの終了を待ってから、次の処理に移りたい。
  • シェルコマンドを実行するターミナルのシェルを指定したい
  • ターミナルウィンドウの、色の設定、タイトルの設定、文字エンコードの設定を指定したい。

2006.04.26

HTML::Copy 1.0.2 を公開しました。

HTML ファイル 内のリンクを保持したまま HTML ファイルをコピーする Perl スクリプトです。コマンドラインツールと Perl Module から構成されています。

web site の管理や HTML の自動生成などに使えると思います。

HTML::SiteTear 1.2.2 を公開しました。

web site の一部分だけを抜き出す Perl スクリプトです。

web site のあるページには、その web site 内のいろいろなところへリンク(ほかのページへのリンクだけではなく、画像やJavaScript、cascading style sheet)が張られていると思います。指定したページを指定された場所にコピーし、さらにその下にフォルダを作り、そのページが一つの独立した web site として成立するための全てのファイルをコピーします。

web siteの一部を独立した配布可能な文書として扱いたい時に、お役に立てると思います。例えば、僕はこの文書を web site の一部として製作しておりますが、web site から SiteTear を使って、独立した HTML 文書として配布パッケージにも含めております。

2006.04.18

URI Escape 1.1 を公開しました。

  • パーセントエスケープされた URI(URL) をアンエスケープ
  • 任意の文字列をパーセントエスケープ

を行うスクリプティング機能追加です。

  • URI Escape コマンドを追加し、URL Unescape から名称を変更

UnixScriptTools for mi 2.0.2 を公開しました。

高機能テキストエディタ mi で Unix スクリプト(bash、Perl、gnuplot、Octave、awk、ruby など)の開発および実行を支援するアプリケーションとスクリプトのセットです。

bash モード、Perl モード、gnuplot モード、Octave モードが付属します。

  • 保存されていないファイルに対しても、「選択範囲を送信」を実行できるようにした。
  • 設定されているプロセス以外のプロセスがターミナルで起動していることが原因で、「選択範囲を送信」が実行できなくても、「ターミナルを表示」を実行できるようにした
  • その他、不具合の修正

2006.04.14

StringEngine 1.7 を公開しました。

AppleScript によるテキスト処理のライブラリです。AppleScript の基本的なテキスト処理ルーチンを、ほぼすべて網羅していると思います。

  • 文字列を指定した区切り文字で分割してリストへ変換
  • 文字列のリストを指定した区切り文字で連結
  • 文字列中の文字列の置換
  • Styled text(もしくは Unicode text)から Plain text を抜き出す
  • AppleScript's text item delimiters の管理
  • その他いろいろ

ModuleLoaderHelpBook OSAX と一緒にお使い頂ければ幸いです。

KeyValueDictionary 1.1 を公開しました。

AppleScript で連想配列を実現するモジュールです。

連想配列とは・・・record クラスにいくらか似ており、ラベルをスクリプトの実行中に新しく作ることができたり、変数で指定したりすることができるものと考えて大間違いないでしょう。

スクリプトバンドルでパッケージし直し、バンドル内にマニュアルを配置しました。スクリプトメニューから実行すると、ヘルプビューアで詳細な使い方が表示されます。ModuleLoaderHelpBook OSAX と一緒にお使い(使っている人などいないと思うけど)頂ければ幸いです。

ModuleLoader は個人的にはとても画期的だと思っているので、AppleScript を使っている方はぜひ一度おためしください。

2006.04.12

ModuleLoader 1.0 を公開しました。

AppleScript のモジュールシステムです。load script コマンドのように、ファイルパスをコードに書き込まなくてもスクリプトをロードできます。

Unix で広く使われているスクリプト言語(Perl など)には再利用可能なスクリプト(モジュールと呼ぶことにします)を管理するシステムが備わっています。残念なことに、AppleScript では、load script コマンドを使ってファイルパスを指定してスクリプトをロードする原始的な方法しか用意されていません。ファイルパスをスクリプトに書き込むと、モジュールの場所を変更すると再コンパイルの際にはソースを書き直さなければならなくなります。ModuleLoader はそんな問題を解決してくれます。

HelpBook OSAX 1.0 を公開しました。

任意のバンドル内の Help Book を ヘルプビューアへ登録、表示を行うスクリプティング機能追加です。

MacOS X では、アプリケーションなどは、そのバンドル内の HTML で書かれたヘルプファイル(Help Book といいます)をヘルプビューアで表示させることができます。アプリケーションとそのヘルプファイルをひとまとめにして扱えるので、全く持ってスマートなやり方です。しかし、ヘルプビューアへの登録は、 C 言語の API を使わないとできませんので、普通は Carbon もしくは Cocoa アプリケーションしか バンドル内に Help Book を持ていないことになります。

HelpBook OSAX は AppleScript から任意の バンドル内の Help Book の登録と、ヘルプビューアでの表示を行えるようにします。もっぱら、アプリケーションバンドル形式のアプレットやドロップレットのヘルプメニューを使えるようにしたり、バンドル形式の AppleScript に Help Book を持たせることを想定しております。

頑張って、ヘルプビューアに Help Book を登録すると、ヘルプビューアの高度な検索機能や、AppleScript の実行機能が使えるようになります。普通の HTML ファイルでヘルプを提供するより、(頑張れば)使いやすい説明書を提供できるかもしれません。

2006.04.05

QuickDMG 2.0.6 を公開しました。

フォルダやファイルから手早くディスクイメージファイルを作ることができます。ディスクユーティリティーにストレスを感じる方はぜひ一度おためしください。

  • カスタムアイコンをつけたWilliam Shy さん、ありがとうございました。)

QuickDMG に繁体字中国語のローカライズリソースを作っていただいた、Jack M. H. Lin さんの取り計らいにより、William Shy さんにカスタムアイコンを作っていただくことができました。ありがたいことです。