CraftLaunchでディレクトリを任意のファイラーで開く

スポンサーリンク

メインPC機を思い切って新調した。いやーSSDって早いっすね。電源をつけてちょっと待つだけログイン画面が出てくるなんてもう時代はSSDだね!というかOSをとうとうウィンドーズセブンに変えたのでなんだか急に未来に来てしまった気分ですよ!というか環境構築するのめんどくさい!死ぬ!

というわけでもう癖でコマンドラインランチャーを使っているわけですが、元々使っていたBlueWindっていうランチャーはもう開発が停止状態なので現在進行中で開発が行われているランチャーはどれかな?となるとCraftLaunchが良さ気ですね。シンプルイズベストですね!

基本的に実行ファイルのある位置をホイホイ登録して行くだけなんですが、設定ファイルを弄りたいなど、その実行ファイルがあるディレクトリを一発で開けると便利なわけです。そのニーズにマッチするものを既に作って公開して下さっている方がいらっしゃいました→CraftLaunch 3 自作拡張 open_folder - てっく煮ブログ

けど、僕はエクスプローラではなくて、これまた癖であふっていうファイラーを使ってるのであふで開けたほうがより便利なのでちょこっと改造しました。こんな感じです。同じ事をやろうとしている人がいたら参考にしてください。

変更内容

open_folder.pyのcommand_OpenExplooer関数を次のように変更する。なお、あふがおいてあるディレクトリのパスなどをあらかじめ変数に書いておくとよい。

ソースコード(変わった箇所のみ抽出)


## open_folder.pyをちょこっと改造 ##

# あふの存在するパスを設定
afx_exe = u"(AFXW.EXEへのフルパス)"
# あふに渡すオプション。右窓で開くようにする。
afx_options = u"-s -r\"%s\""
# あふがあるパス。作業ディレクトリの指定用。
afx_path = u"(AFXW.EXEが存在するディレクトリのパス)"

# --------------------------------------------------------------------
# コマンドのフォルダーをエクスプローラーで表示する
def command_OpenExplorer(args):
path = getCommandPath(args[0])
if path:
if os.path.isfile(path):
shellExecute( None, None, afx_exe, afx_options % os.path.split(path)[0], afx_path )
elif os.path.isdir(path):
shellExecute( None, None, afx_exe, afx_options % path, afx_path )
else:
shellExecute( None, None, afx_exe, afx_options % os.path.split(path)[0], afx_path )

解説

あふを使ってる人には分かり切ってるとは思いますが…

  • sオプション あふが既に実行されていたらそれをアクティブにする
  • l/-rオプション その後の文字列をディレクトリパスと解釈して、左窓あるいは右窓に開く