コンテキストメニューに対する要望No.10923
mm さん 23/11/04 09:55
 
秀丸ファイラーClassicをいつも大変便利に利用させていただいております。

右クリックメニューを0から自分でカスタマイズすることはできますか。

1.ListViewの背景で右クリック時
以下の項目のみ表示したい(できれば項目名も任意で指定したい)
・フォルダ新規作成
・テキスト新規作成
・エクセル新規作成
・プロパティ

2.フォルダ選択時
・切り取り
・コピー
・削除
・完全削除(ごみ箱へ移動出なく、完全削除する)
・7zで圧縮(外部ツール7-zip64.dllを使用した圧縮。直接dll呼出しが難しければ外
部exe起動でも良い。dllを呼び出すexeはユーザが作成。)
・プロパティ

3.ファイル選択時
・切り取り
・コピー
・削除
・完全削除
・プロパティ

4.7z、zipファイル選択時
・切り取り
・コピー
・削除
・完全削除
・解凍(外部ツール7-zip64.dllを使用した解凍。)
・プロパティ

右クリックメニューについて「オプション」の「項目のコンテキストメニュー拡張」
「背景のコンテキストメニュー拡張」の
チェックを外して利用しておりますが、上記の設定は現在できないとの認識です。

ご無理な内容かもしれませんので、あくまで可能なあればの要望です。

ご検討いただけましたら幸いです。

[ ]
RE:10923 コンテキストメニューに対する要No.10928
秀丸担当 さん 23/11/06 13:45
 
右クリックメニューは、特定のコマンドを追加したりはできますが、全部0から作る
ということはできないです。
0からメニューを作るとしたら、スクリプトを作って、menuメソッドを呼び出すとい
う方法があります。
ただ右クリックの操作が置き換わるわけではなく、リンクバーや、キー割り当て、ジ
ェスチャなどから呼び出すことになります。
マウス操作の置き換えはジェスチャになりますが、右クリック単体の置き換えはでき
ないようにしていました。
右クリック単体は基本的な操作で置き換えるのは難しかったのだと思います。

スクリプトができればスクリプトのほうがやりやすいですが、書くのが大変な場合、
ブックマーク(ツール項目)のグループを作って、グループ内に幾つかコマンドを入
れておくのが簡単です。
ジェスチャの割り当てで、そのグループを指定しておくと、スクリプトを書かなくて
も、任意のコマンド群が入ったメニューを作ることができます。

ブックマークのプロパティで、パスの部分から[コマンド(コンテキストメニュー)
(7)...]を選ぶと、何らかのアプリのコンテキストメニュー拡張も追加できます。
これはメニューの項目名から選びますが、7-zipをサブメニューにしている場合は出
てきません。
書かないといけないですが、2つパラメータを書いてサブメニューにする方法もあり
ます。

js:ContextMenu("7-zip","圧縮...");

7-zipのみぞ知るコマンド名も一覧に出てきたりして、

js:ContextMenu("SevenZipCompress");

とかすると圧縮できたりするようです。

[ ]
RE:10928 コンテキストメニューに対する要No.10930
mm さん 23/11/06 22:52
 
ご回答ありがとうございました。
・右クリックメニューの置き換えは難しい旨、承知しました。
・マウスジェスチャーはリストビューでファイルを選択した状態ではできないのでや
りたいことと合わないようです。
・ブックマークをメニュー代わりに使う方法は試してみたところできました。
・秀丸ファイラーで選択中のファイルのパスを7-zip64.dllを呼び出す外部プログラ
ム(自作プログラム)に渡す方法は難しそうなので諦めます。

やりたかったこと
test1.txt
test2.txt
test3.txt
を秀丸ファイラーのリストビューで選択中なら、
外部プログラム.exe c:\test1.txt c:\text2.txt c:\test3.txt
といったコマンドを秀丸ファイラーで実行。

[ ]
RE:10930 コンテキストメニューに対する要No.10931
mm さん 23/11/06 22:54
 
すみません。
リストビューでファイルを選択した状態でもマウスジェスチャーはできました。


[ ]