Home>History>

2008.12

2008-12-29

2008-12-29T13:47:57+09:00

AppleScriptHTML 2.0.6

AppleScript のソ−スコードを、スタイルを再現する HTML に変換するアプリケーションです。

  • スタイルシートファイルを使って、ソースコードのカラーリングを行う XHTML を生成します。
    • スタイル情報がコードのマークアップと分離されているので、後からカラーリングや文字サイズなどの微調整を行うことが容易です。
    • (たぶん)非常にスマートな XHTML を生成します。
  • スクリプトリンク機能
    • XHTML に変換したソースコードをスクリプトエディタで開くリンクを付け加えます。サンプルコードを表示する時に使うと、ユーザーにとっては便利だと思います。

どなたか、カスタムアイコン作ってくれませんでしょうか。

2008-12-27

2008-12-27T23:41:17+09:00

Leopard の pbpaste

テキストエディットなどは、テキストをコピーしたとき、改行コードとして LF や CR ではなく、Unicode の LINE SEPARATOR が使われることがあるようだ(Tiger では見たこと無いけど、Leopard からの仕様?)。

そのクリップボード内のテキストを pbpaste で出力しようとすると、日本語環境では MacJapanese(ほとんど Shitf-JIS)に変換して出力するので、LINE SEPARATOR が壊れちゃうし、そもそもターミナルでの文字コードは UTF-8 などで、まともに表示されない。

pbpaste の出力をターミナルで処理する際の、問題は二つ。

  • pbpaste に UTF-8 で出力して欲しい。
  • LINE SPARATOR を LF に置換する filder が欲しい。

pbpaste で UTF-8 を出力させるには、環境変数 __CF_USER_TEXT_ENCODING をいじれば良い。僕は、.bash_profile に次の一文を入れている。

export __CF_USER_TEXT_ENCODING=${__CF_USER_TEXT_ENCODING/:*:/:0x08000100:}

この一文を入れておくと、pbcopy や pbpaste で UTF-8 を扱えるようになるよ。

次に、LINE SEPARATOR を LF に変換するフィルターを Perl で書いてみた。

#!/usr/bin/perl -w
use strict;
use charnames ':full';

binmode STDOUT, ":utf8";
binmode STDIN, ":utf8";
my $ls = "\N{LINE SEPARATOR}";
while (<>) {
    s/$ls/\n/g;
    print $_;
}

これで、ようやく pbcopy の出力をシェル環境で扱えるようになった。

2008-12-24

2008-12-24T16:32:59+09:00

SmartTitle 2.0

みなさん、ターミナルウインドウのタイトルはどうしています?全部「ターミナル」とか「Terminal」とかですか?でも、ターミナルがいっぱいあったら区別するのが大変ですよね。というわけで、シェルの working directory を表示させたいと思うのが人情ではないでしょうか。

ターミナルウインドウのタイトルの動的なカスタマイズに、エスケープシーケンスを使った方法が広く知られていると思います。しかし!!Apple のターミナルではアスキー文字しか受け付けないみたい。つまり、working directory のパスに日本語が含まれているとうまくいかんということです。そんな時、ぜひ、SmartTitle をお試しください。

SmartActivate はターミナルのウィンドウのタイトルに、シェルの working directory のパスを自動的に表示します。タイトルが長くなりすぎて見苦しくならないように、3階層分のパスを表示します。Leopard 対応版です。Tiger では動きません。

ちなみに、TerminalControl も併せてダウンロードしてね。

さらにちなみに、SmartTitle に対してご意見を頂いたことが無い。つまり、需要は無いということだろう。しかし、みんな、ターミナルウインドウのタイトルはどうしているのだろう?ターミナルウィンドウのタイトルが全部同じでも気にしない?それとも、フォルダの名前に日本語は絶対使わないのだろうか?

こんなのいらねーよ、という声でもいいから、なんかコメントが欲しい。

2008-12-24T09:26:13+09:00

TerminalControl 1.0.1

AppleScript からターミナルウィンドウのタイトルを個別に変更するためのスクリプティング機能追加です。

Mac OS X 10.5 のターミナル.app では、ターミナルのタイトルを変更すると、同じ設定セットを共有するターミナルのタイトルがすべて変更されてしまいます。そのような制限を回避することができます。

2008-12-22

2008-12-22T14:51:51+09:00

AppleScriptHTML 2.0.5

AppleScript のソ−スコードを、スタイルを再現する HTML に変換するアプリケーションです。

  • スタイルシートファイルを使って、ソースコードのカラーリングを行う XHTML を生成します。
    • スタイル情報がコードのマークアップと分離されているので、後からカラーリングや文字サイズなどの微調整を行うことが容易です。
    • (たぶん)非常にスマートな XHTML を生成します。
  • スクリプトリンク機能
    • XHTML に変換したソースコードをスクリプトエディタで開くリンクを付け加えます。サンプルコードを表示する時に使うと、ユーザーにとっては便利だと思います。

今回の変更は、HTML ファイルのデフォルトの保存場所の振る舞いに関するオプションの追加です。version 2.0.4 までは、デフォルトの保存場所は常にスクリプトファイルと同じ場所でした。よかれと思って、こうしたんですけどね。基本的に、他の HTML に貼付けないと使い道が無いと思っていたので、プレビューの為の補助的機能と考えていました。でも、そういう使い方ではなく、例文集のためにファイル出力をメインに使用していただいている方のリクエストで、普通の保存ダイアログのように振る舞えるようにしました。つまり、ソーススクリプトに合わせて保存ダイアログの場所で開く場所が変わったりしなくなりました。もちろん設定で、従来通りの振る舞いをさせることができます。

だれか、カスタムアイコン作ってくれないかな。

2008-12-19

2008-12-19T20:37:02+09:00

Leopard にアップデート完了

ようやくメインの作業環境を Leopard に移行した。

上書きインストールしたけど、Mail 以外は、ノートラブルで移行できた。

Mail は Leopard にアップデートしたら、何にも表示されなくなっちゃて非常に焦った。いちど、Mail 関連のファイルを移動させ、メールを取り込むというやり方で移行した。

細かく便利になってうれしいけど、残り少ないハードディスクスペースがさらに少なくなってしまったのが頭痛い。

2008-12-16

2008-12-16T22:19:21+09:00

Java はめんどくさい。

Java の GUI プログラムに取組中。別にやりたいからじゃなくて、仕事で Windows で動くプログラムが必要になったので渋々頑張っている。

とにかく、Java で GUI 作るのはめんどくさい。Cocoa/Interface Builder で10分で終わることが、何日もかかる(Java の勉強も含んでいるからだけど)。どんだけ、Cocoa/Interface Builder が偉大であるか、身にしみて分かった。

2008-12-15

2008-12-15T00:35:14+09:00

AppleScriptDoc 1.2.2

ライブラリ/モジュールとしての AppleScript のリファレンスマニュアルを生成するアプリケーションです。

ソースコードにかかれたコメントから、スクリプトのリファレンスマニュアルを HTML として出力します。バンドル形式のスクリプトの場合、バンドル内に(ヘルブビューアに表示する) Help Book としてリファレンスマニュアルをセットアップできます。

HeaderDoc/JavaDoc, Perl の POD, Ruby の RDoc/RD みたいなものです。HeaderDoc と JavaDoc をできるだけ真似しています。さらに、ある程度の文書構造を表す為に RD のサブセットが使えます。インライン要素には HTML も使えます。

2008-12-12

2008-12-12T10:13:51+09:00

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

久しぶりに寄付を頂けて、誠に光栄です。39 人目。

QuickDMG は、僕の作品の中で数少ない一般受けするものなので鋭意メンテナンスに力を注ぎたいと思います。しかし、今のところ特にバグも見つかっていないし、追加すべき機能も思い浮かばないので、アップデートする予定は無いですね。

それでも、あえて機能を追加するとしたら・・・

  • 設定のセットを保存して、後から呼び出せる機能。
  • スクリプタブル

でも、そもそも設定項目は多くないので、設定セットの保存など無くてもいいのではないか?スクリプタブルに関しては、hdiutil を使えばいいじゃんと思うので、やっぱり不必要?というわけで、忌憚の無いご意見を頂きたい所存です。

2008-12-10

2008-12-10T08:46:30+09:00

AppleScriptDoc 1.2.1

ライブラリ/モジュールとしての AppleScript のリファレンスマニュアルを生成するアプリケーションです。

ソースコードにかかれたコメントから、スクリプトのリファレンスマニュアルを HTML として出力します。バンドル形式のスクリプトの場合、バンドル内に(ヘルブビューアに表示する) Help Book としてリファレンスマニュアルをセットアップできます。

ようやく、Leopard 対応。

2008-12-10

2008-12-10T18:37:00+09:00

AppleScriptHTML 2.0.4

AppleScript のソ−スコードを、スタイルを再現する HTML に変換するアプリケーションです。

fix さんから頂いた提案を(たぶん)すべて実装できたと思います。

2008-12-10T08:46:30+09:00

AppleScriptDoc 1.2.1

ライブラリ/モジュールとしての AppleScript のリファレンスマニュアルを生成するアプリケーションです。

ソースコードにかかれたコメントから、スクリプトのリファレンスマニュアルを HTML として出力します。バンドル形式のスクリプトの場合、バンドル内に(ヘルブビューアに表示する) Help Book としてリファレンスマニュアルをセットアップできます。

ようやく、Leopard 対応。

2008-12-06

2008-12-06T00:15:43+09:00

AppleScriptHTML 2.0.3

AppleScript のソ−スコードを、スタイルを再現する HTML に変換するアプリケーションです。

出力モニタ機能を追加しました。クリップボードやファイルに出力したデータを手早く確認できます(fix さん、ありがとうございました)。

2008-12-05

2008-12-05T15:21:32+09:00

AppleScriptHTML 2.0.2

AppleScript のソ−スコードを、スタイルを再現する HTML に変換するアプリケーションです。

いくつかの、バグ修正(fix さんありがとうございました。)。

2008-12-04

2008-12-04T13:44:04+09:00

XDict 1.5

XDict は 連想配列のデータ構造を提供する AppleScript モジュールです。連想配列とはキー値に対応して値を設定した配列です。

AppleScript にかけている 2大機能として連想配列と正規表現を上げたい。XDict はAppleScript で連想配列を補完します。

ちなみに、record クラスと連想配列はぜんせん違うよ。record のラベルは変数で指定できないでしょ。だから、連想配列として扱うことはできない。AppleScript で連想配列したかったら、ぜひ、XDict を試してみてください。

しかし!!いじでも、record クラスにこだわりたいのであれば、XAccessor をお試しあれ。XAccessor を使うと、ラベルの指定が文字列の変数でできちゃうぜ。

しかし、頑張って AppleScript モジュールを整備してみても反響は皆無。なぜだろう。マニュアルがわかりにくいのか?導入の敷居が高いのか?だれか、率直な批判をしてくれる人が現れないだろうか。

2008-12-03

2008-12-03T10:34:34+09:00

AppleScriptHTML 2.0.1

AppleScript のソ−スコードを、スタイルを再現する HTML に変換するアプリケーションです。

ようやく、Leopard 対応。