About

  • Macintosh の自作ソフトウェアを公開しています。
  • 配布しているアプリケーションは、すべてフリーウェアかつソースコードを公開しています。
  • コメント、不具合の報告、ご要望を待っています。

Donation

このサイトで配布しているソフトを常用されている方は寄付をお願いします。

2014.09.30

16:41:49Permanent Link

FilterScripts for mi 3.0.1 : mi で編集中のテキストを Unix スクリプトで加工

テキストエディタ mi で編集中のテキストを、AppleScript もしくは Unix スクリプト(bash、perl、awk、ruby、sed など)を使ってを加工する専用のインターフェースを提供します。

mi でのみ表示されるスクリプトのリストを持ったフローティングパレットを表示し、ダブルクリックでスクリプトを起動できます。スクリプトには、mi で選択しているテキストが渡されます。そしてスクリプトの出力を新規ウィンドウで表示するもしくは、選択範囲を置換することができます。

mi にはツールメニューに AppleScript やシェルスクリプトを登録して実行する機能がありますが、テキストの編集を行う(もっぱら、使い捨て)スクリプトを置く場所として FilterScripts は以下のように便利な機能があります。

  • ツールメニューより簡単にスクリプトの追加と削除が行えます。
  • Unix スクリプトの場合、選択テキストは標準入力に渡されます。ツールメニューでは動作しない大きなデータの処理も行う事ができます。
  • AppleScript を使う場合も、選択テキストの取得や出力の処理を自前で書く必要がありません。

変更点:

  • フィルタースクリプトパレットが最小化されている時に、mi をアクティブにするとフィルタースクリプトパレットが表示されてしまう不具合を修正。
  • ツール「フィルタースクリプトを表示」が機能しないことがある不具合を修正。

2014.09.29

10:43:24Permanent Link

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

PowerSelect をご利用いただいているとの事。

Spotlight で検索を行うと、外付けハードディスクが常に動き出すので、検索を場所を限定して行う PowerSelect がお役に立てているそうです。

142 人目。

2014.09.18

19:12:45Permanent Link

iTunes を起動して、iPhone/iPod の同期を開始する AppleScript

表題の通り、「iTunes を起動してiPhone/iPod の同期を開始する AppleScript」を紹介します。

もしかして、皆さん、iPhone を Mac に接続したら、自動的に同期が開始するような設定にしています?僕は、勝手に同期が開始するようにはしていません。だって、充電の為だけに Mac に接続する事もあるから、勝手に同期を開始されるとうっとうしいからね。

でも、同期をしたいときは、iTunes を立ち上げてiPhone を選択して同期ボタンを押すという手順を踏まずに一発のアクションで終わらせたい。という訳で、AppleScript を書いてみました。

ところどころで delay が入っているけど、delay の時間はご自分の環境にあわせて適当に調整してね。

on run
try
main()
on error msg number errno
if errno is not -128 then
activate
display alert msg message "Error Number : " & errno
end if
end try
end run

on main()
set new_launch to false
if application "iTunes" is not running then
tell application "iTunes"
activate
end tell
set new_launch to true
end if
if new_launch then
delay 10
end if

set a_source to missing value
repeat 10 times
try
tell application "iTunes"
set a_source to some source whose kind is iPod
end tell
exit repeat
on error
delay 2
end try
end repeat

if a_source is not missing value then
tell application "iTunes"
tell a_source
update
end tell
end tell
end if
end main

2014.09.16

11:38:35Permanent Link

ターミナルウインドウのプロキシアイコンと日本語を含んだディレクトリ名

Mac OS X 10.7 Lion から、ターミナルウインドウにカレントディレクトリを表示するプロキシアイコンが導入されましたね。いまさらながら、名前に日本語を含んだディレクトリがカレントディレクトリの場合、正常に表示されないことに気づきました。

プロキシアイコンを設定する仕組みは、専用のエスケープシーケンスが用意されていて、そのエスケープシーケンスとカレントディレクトリのURLを標準出力に出力すると設定されます。これを実行するコマンドが、PROMPT_COMMANDというシェルのプロンプトが更新されるたびに評価される特殊な変数に設定されています。これらの設定は、/etc/bashrc で行われています。

カレントディレクトリの URL は、パスにURLとして使ってはいけない文字がある場合はパーセントエスケープしなければいけないのですが、/etc/bashrc の中では、スペースしかエスケープしてくれないのが問題です。日本語も、エスケープしてやれば、プロキシアイコンに日本語ディレクトリが表示されるようです。

次の、スクリプトを ~/.bashrc に加えて、PROMPT_COMMAND を上書きしてしまえば、幸せになれます。

if [ "$TERM_PROGRAM" == "Apple_Terminal" ] && [ -z "$INSIDE_EMACS" ]; then
                update_terminal_cwd() {
                    local ESCAPED_PATH=`ruby -ruri -e 'print URI.escape(ARGV[0])' "$PWD"`
                    local PWD_URL="file://$HOSTNAME$ESCAPED_PATH"
                    printf '\e]7;%s\a' "$PWD_URL"
                }
                PROMPT_COMMAND="update_terminal_cwd"
fi

2014.09.15

20:32:15Permanent Link

ZipArchiver 1.1 : Finder で選択されている項目を Zip 圧縮

起動すると、Finder で選択されている項目の Zip 圧縮ファイルを作ります。

Spotlight メニュー、LaunchBar などのランチャー起動してください。コンテキストメニューを使わず、キーボード操作だけで Zip 圧縮ファイルを作れます。

圧縮が成功すると、通知センターに完了を通知します。通知センターの通知をクリックすると、アーカイブファイルをファインダーで表示します。

< Previous Topics