OS Xでgit
URLをインテリジェントに開くには、まず GitHub でリポジトリページを開こうとし、次に GitBox.app のようなものにフォールバックします。 。
この質問 非常に役立つことがわかりました。bashスクリプトをラップするAutomatorアプリを作成し(すべてのインテリジェントな処理を実行します)、 RCDefaultApp を使用してOSXをに設定しました。私のオートマターアプリを使用してgit://
URLを開きます。
これはうまくいかなかったので、デバッグを試みました。引数を/tmp/output.txt
に出力するようにbashスクリプトを設定しましたが、スクリプトがコマンドライン引数を取得していないことがわかりました。 *.txt
ファイルのデフォルトアプリとしてこれと同じオートマトンアプリを使用するようにOSXを設定すると、bashスクリプトは最初の引数としてファイルのパスを正しく取得しますが、URLでは機能しません。これを機能させる方法はありますか?
また、私は10.7を実行しています。
編集:Automatorアプリのスナップショットは次のとおりです。
そして、これがその単純なbashスクリプトのテキストです(実際にgit://
URLを開くために使用するものではありませんが、引数がないことを示しています。
rm -f /tmp/output.txt
echo $0 >> /tmp/output.txt
echo $* >> /tmp/output.txt
そして、私が/tmp/output.txt
で取得する唯一の出力は次のとおりです。
-
OS Xは、他のプラットフォームなどの他のシステム上の関連プログラムへのコマンドライン引数であるファイル、フォルダー、およびURLを処理しないため、このようには機能しません。 Automatorプログラム本当にファイルとフォルダのみを処理できます。
open location
に応答するAppleScriptベースのアプリケーションを作成する必要があります。
AppleScript Editorを開き、次のコードを貼り付けます(もちろんスクリプトを変更します)。
on open location myURL
do Shell script "echo " & myURL & " > /Users/danielbeck/test"
end open location
保存アプリケーションとして。次に、作成したアプリケーションバンドルを選択し、右クリックしてパッケージの内容を表示、テキストエディターを使用してContents/Info.plist
を編集します(コマンドでplutil
を使用してXMLに変換した後) line(バイナリの場合)、またはAppleのDeveloperToolsの一部であるデフォルトのエディタ。
以下をトップレベルの構造に追加します(スクリーンショットは現在のXcodeでどのように見えるか、XMLはテキストエディターで追加するものです):
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>openme</string>
</array>
<key>CFBundleURLName</key>
<string>AppleScript Testing URL</string>
</dict>
</array>
これにより、openme://
URLがそのアプリケーションに関連付けられます。プログラムを保存し、別のフォルダーに移動して、Launch Servicesを更新し、Webブラウザーのアドレスバーにopenme://
URLを入力してテストします。
もちろん、openme
をgit
に置き換え、echo
呼び出しをシェルスクリプトに置き換えることをお勧めします。