Panic Coda2用スクリプト Go to Root - ローカルルート/リモートルートへ移動するAppleScript

  • freeware
  • OSX 10.6.8 以降
  • applescript

設定しているサイトのローカルルート/リモートルート・ディレクトリへ移動しファイルブラウザを表示するPanic Coda2用AppleScriptです。

Coda2用アップルスクリプト go to root
  • ルートディレクトリへの移動コマンドをAppleScriptで実現する事で、各サイト共通のキーボードショートカットが割り当て可能になります。(ローカル用とリモート用のスクリプトに分かれています。)

    Codaファイルブラウザ用スクリプトである、ローカル/リモートのフォルダ同期表示を行う Sync Folder や、開いているファイルのディレクトリへ移動する Go to Directory と併用するとファイルブラウザがより便利になるかもしれません。

  • ローカルルートを設定していない条件下では、ユーザホームディレクトリを表示します。(表示ディレクトリの変更可能

ダウンロード

Coda2 : Go to Root をダウンロード
Coda2 : Go to Root をダウンロード
  • version 0.3.1
  • SHA1:041469c0c0da325e171bd3b49fda62ba53afcb57

リリースノート

0.3.1 : 2013-10-03
Transcriptウィンドウ等が最前面にある場合の修正。
0.3 : 2013-10-02
スクリプトの信頼性の向上。
0.2.2 : 2013-09-20
ソースコードのメンテナンス。スクリプトが含まれるフォルダの名称を'Go to Root'に変更。
0.2.1 : 2013-09-18
存在しないローカル・ディレクトリに移動しようとした場合のエラーメッセージを追加。
0.2 : 2013-09-17
サイト名が「Transcript」「PHP Error」「Window」の場合でも動作するように修正。
ユニバーサルアクセス・「補助装置にアクセスできるようにする」必要がないように修正。
その他、スクリプトの信頼性を向上。
0.1 : 2013-09-13
動作確認環境 Mac OS X 10.6.8 / Coda 2.0.11

スクリプトの導入方法

Coda Go to Rootをダウンロード後、zipファイルを解凍します。('Go to Root'フォルダに展開されます。)

「Coda > 環境設定 > 一般 > AppleScript」にある「スクリプトメニューを表示する」にチェックを入れます。
メニューに表示されるスクリプトアイコンをクリックし、「スクリプトフォルダを開く」で表示されるフォルダ内に'Go to Root'フォルダを設置します。

スクリプトの動作について

最も前面にあるウィンドウが動作対象になります。
(Transcriptウィンドウや「すばやく開く(Control+Q)」ウィンドウが最前面に表示されていても適切に動作します。)
※ このスクリプトは'サイト'の名称が 'Coda' である場合などに意図する動作にならない場合があります。

サイドバー項目の'ファイル'(ローカル/リモート)は移動・表示しません。

Codaの移動メニューにある「ローカル(リモート) "ルートディレクトリ名" に移動」の場合、ファイルブラウザとサイドバー 'ファイル'の両方とも移動します。
Go to Rootの場合、サイドバー 'ファイル'の状態はそのままで、ファイルブラウザだけ移動します。

「Goto Local Root」 - coda_goToLocalRoot.scpt

Codaで設定した'サイト'を開いている時や、'サイト'を開いていない時に動作します。

'サイト'のローカルルート(ディレクトリ)を設定している場合、スクリプトを実行すると、Codaのファイルブラウザ(ローカル)はそのディレクトリを表示します。
それ以外の場合、ファイルブラウザはユーザホームディレクトリを表示します。

「Goto Remote Root」 - coda_goToRemoteRoot.scpt

リモートルート(ディレクトリ)が設定された'サイト'を開いている時に動作します。

'サイト'を開いている時にスクリプトを実行すると、Codaのファイルブラウザ(リモート)はそのディレクトリを表示します。

サーバ接続から一定時間経過し、接続の自動切断が行われた状態でも動作しますが、Codaのファイルブラウザ(リモート)にある「サーバから切断」(手動切断)を行った状態では動作しません。

disconnect

リモートルートを設定していない場合はどこにも移動しません。(ビープ音と警告メッセージが表示されます)

キーボードショートカットの変更

Macの「システム環境設定 > キーボード > キーボードショートカット」から下記画像のようにショートカットを変更出来ます。

キーボードショートカット1 キーボードショートカット2 キーボードショートカット3

設定の変更

coda_goToLocalRoot.scpt , coda_goToRemoteRoot.scpt をAppleScriptエディタ.appで開いて設定を変更できます。

設定を変更した場合、Codaのアップルスクリプトメニューにある「スクリプトを再読み込み」を行う必要があります。

------- setting -------
set keyboardShortcutDelayTime to "0.5" -- It is recommended 0.3 or more
set onlyBeepIfCantConnect to false -- true or false

on CodaScriptSettings()
	return {displayName:"Goto Local Root", inContextMenu:"yes"}
end CodaScriptSettings

set openFilebrowserKey to "2"
set openFilebrowserModifierKey to {command down}
------- /setting -------

keyboardShortcutDelayTime

ファイルブラウザを自動表示する際のキーボードショートカット・コマンド(Codaデフォルト コマンド+2)実行までの待ち時間です。0.3以上の数値を推奨します。

別途スクリプトのキーボードショートカットを設定し、そのショートカットからスクリプトを実行した場合、ファイルブラウザを表示するショートカットと混じってしまうのを回避する役割があります。
意図しないキーボードショートカットが動作してしまう場合は、0.5より大きい数値に変更して下さい。

onlyBeepIfCantConnect

例外エラーが発生した場合や、(coda_goToRemoteRoot.scpt) リモートルートが設定されていないサイト、手動でサーバ切断を行った状況でスクリプトを実行すると警告音・メッセージが表示されます。警告音のみにしたい場合は true に変更して下さい。

displayName

Codaのアップルスクリプトメニューに表示される名称 'Goto Local/Remote Root' を変更出来ます。
※ 変更した場合、キーボードショートカットの'メニュータイトル'も修正する必要があります。

キーボードショートカットを設定する場合で、Codaや他のプラグインのメニュータイトルと重複する場合にも変更が必要になるかもしれません。

その他

ファイルブラウザ表示のキーボードショートカットを変更している場合

Codaデフォルトの「コマンド+2」から変更している場合は、 openFilebrowserKey , openFilebrowserModifierKey の内容を変更して下さい。下記はコマンド+シフト+2に変更する例です。

set openFilebrowserKey to "2"
set openFilebrowserModifierKey to {command down,shift down}

'サイト'以外のローカルルート・表示ディレクトリを変更したい場合(coda_goToLocalRoot.scptのみ)

'サイト'を開いていないウィンドウでのローカルルートをユーザホームディレクトリから任意のディレクトリへ変更したい場合、on homePath()にある下記の部分を修正して下さい。(スクリプトの最下部にあります)

return POSIX path of (path to home folder from user domain)

スクリプトを実行専用で保存する

スクリプトを実行専用形式で保存すると、スクリプトの読み込み速度や、Codaのアップルスクリプトメニューの表示が早くなる可能性があります。

AppleScriptエディタ.appでcoda_goToLocalRoot.scpt , coda_goToRemoteRoot.scptを開き、それぞれ「別名で保存...」から「オプション:実行専用」にチェックを入れて保存します。

スクリプトを実行専用で保存

※ 実行専用で保存するとスクリプトの編集が出来なくなります。編集する可能性がある場合は、異なるファイル名で保存して下さい。その場合、元のスクリプトファイルは他の場所へ移動させて下さい。

既知の問題

以下の特定の条件下では、適切なローカル/リモートルートを表示出来ません。

  • (coda_goToLocalRoot.scpt) サイト名 'Coda' において、ファイルが1つも開かれていない場合、ローカルルートを設定していてもホームディレクトリを表示します。
    但し、その際にリモートサーバへ接続しているのなら、サイト'Coda'の設定済みローカルルートを適切に表示します。
  • サイト、並びにファイルを1つも開いていない状況で、リモートサーバへ接続している場合、サイト'Coda'が存在すれば、その設定済みローカルルートを表示します。
  • (coda_goToRemoteRoot.scpt) サイト、並びにファイルを1つも開いていない状況で、リモートサーバへ接続している場合、サイト'Coda'が存在すれば、その設定済みリモートルートを表示しようとします。

上記中のサイト名 'Coda' の大文字小文字は区別されます。(サイト名が coda の場合は適切に動作します。)
出来る限りサイト名 'Coda'を作成しないで下さい。