指定フォルダ配下をサブフォルダ含めてポップアップメニュー表示して一発アクセス。
- AutoHotkey v1.1.27+
config.ahk.sample
をconfig.ahk
にリネーム後、正しい設定を埋める
あとは qpmenu.ahk
を実行するだけです。
普通に実行すると「qpmenu.ahk のあるフォルダ」を辿り、メニューを「マウスカーソル位置」に表示します。
$ qpmenu.ahk
辿るフォルダを指定する 場合は、そのフォルダパスを与えてください。
$ qpmenu.ahk "d:\work\text"
メニュー表示位置をピクセルで指定する こともできます(以下は画面左上 (0, 0)
に表示する例)。
$ qpmenu.ahk -x 0 -y 0
メニュー項目選択時、修飾キー(Shift, Ctrlキーなど)の押下状況で動作が変わります。
該当するファイルを そのまま開きます。
該当するファイルを テキストエディタで 開きます。
使用するエディタは config.ahk
内で設定してください。
該当するファイルのある ディレクトリ を開きます。
実行ファイルを作ることができます。
build.ahk.sample
をbuild.ahk
にコピーするbuild.ahk
を開きbuilder
変数の値を正しいものに修正する- 例:
builder = C:\Program Files\AutoHotkey\Compiler\Ahk2Exe.exe
- 例:
build.ahk
を実行する
秀丸エディタから qpmenu を呼び出すマクロ qpmenu_from_hidemaru.mac を同梱しています。
使い方:
- (1)
qpmenu_from_hidemaru.mac.sample
をqpmenu_from_hidemaru.mac
にリネーム後、必要な設定を埋める$ahk_bin_path
変数と$qpmenu_path
変数
- (2)
qpmenu_from_hidemaru.mac
を秀丸エディタにマクロ登録する - (3) 2 で設定したマクロにショートカットキーを割り当てる
ショートカットキーを押すと「今秀丸エディタで開いているファイルのあるフォルダ」を基点として、qpmenu が表示されるはずです。その際、表示位置は以下のように分かれます。
- マウスクリックから起動した場合
- マウスカーソル位置
- キー割り当てから起動した(Shift, Ctrl, Alt など何らかの修飾キーを伴っている)場合
- カーソル位置
- キー割り当てから起動した(修飾キーを伴っていない)場合
- マウスカーソル位置
Ans: 仕様です。消せません。
以下 AutoHotkey プログラミングの話になりますが事情を書いておきます。
AutoHotkey でポップアップメニューを作成するには Menu
命令を使います。この Menu
命令では「この選択が選択されたらこのラベルにジャンプする」という処理をサポートしており、また「選択されたメニュー項目名を取得する」命令も用意されています。
言うなればこの二つのパーツで「指定されたメニュー項目に対応するファイルパス」を特定しなければならないのですが、結論を言うとこの二つだけでは特定できません。特定するためには各項目ごとに固有の識別子が必要です。それを qpmenu では、メニュー項目名末尾に | (識別子)
を付けることで対応しています。
Ans: 仕様です。
極端な例を挙げると、C:\ ドライブ配下を辿らせたら応答が返ってきません。そうでなくとも作者環境では 10000 ファイルを含むフォルダを辿らせて30-60秒くらいの時間を要しています。ファイル数の多いフォルダや、深い階層を持つフォルダは辿らせない方が良いでしょう。
もし表示に時間がかかりすぎて待ってられない場合は、タスクトレイアイコンから終了させることもできます。
- 2019/04/17 v0.1.0
- add 走査時に指定フォルダを除外する機能を追加
- change 秀丸エディタマクロ qpmenu_from_hidemaru.mac から qpmenu を呼び出した時の表示位置がマウスクリック時 or キー割当時とどちらの場合でも自然な位置になるよう修正
- 2018/05/30 v0.0.1
- 初版