kotll様作、シンプルなメニューを表示するスクリプトです。
メニューの内容はテキストエディタ等で自作する必要があるので、そういった作業が苦手な方はちょっと手間に感じるかもです。が、個人的にはカスタムできるメニューがなぜか大好きなので推してゆきたい。
インストール1
ReaPackに以下のアドレスをインポートします。
https://raw.githubusercontent.com/jamesWalker55/reaper-scripting-5-index/main-index/index.xml
次にReaPackからPortable/Plain Text Menuを検索してインストールします。
スクリプトファイルは以下の場所にインストールされます。
REAPERリソースフォルダ>Scripts>jamesWalker55 Scripts>plain-text-menu(VERSION)>plain-text-menu.lua
インストール2
例えば自作のメニューを3つ作りたい場合は、インストールされたスクリプトファイル(plain-text-menu.lua)を3つ複製してそれぞれファイル名を変更し、それらと同名のテキストファイルを用意します。スクリプトの複製とテキストファイルは別のフォルダを用意したほうが分かりやすいかと思います。
- オリジナルのスクリプトファイルを別の場所にコピーしてリネーム
(例:plain-text-menu.lua→PTM_Main_Preference.lua) - リネームしたスクリプトファイルと同名のテキストファイルを作成
(例:PTM_Main_Preference.txt) - テキストファイルにメニューの内容を書き込む(後でもいいけど)
- 「REAPERのアクションリスト>新規アクション>ReaScriptを読込」から1で複製したスクリプトファイル(PTM_Main_Preference.lua)を読み込む
- アクションリストに登録されるのでショートカットやツールバーに割り当てる
これを作りたいメニューの数だけ繰り返します。
MIDIエディタ用のメニューは、アクションリストで読み込む際、分類を「MIDI エディタ」に変更するのを忘れずに。
メニューファイルの書き方
スレッドに大変詳しい説明が書かれているので不要かもですが一応…
基本はテキストファイル内にコマンドの内容を書いて、その右に角カッコで囲んだコマンドIDを記入するだけです。ラベル(#)、セパレータ(—)、サブメニュー(:)といった機能も使えます。
以下テキストファイルと表示されるメニューのサンプルです。
# Preference
---
環境設定 [40016]
アクション・リスト [40605]
ReaPack [_REAPACK_BROWSE]
---
# プロジェクト内設定
プロジェクト設定 [40021]
スナップ設定 [40071]
ピーク表示設定 [42074]
アレンジとMIDIでグリッドを同期 [42010]
---
SWS Menu:
SWS オートカラー設定 [_SWSAUTOCOLOR_OPEN]
SWS Contextual toolbars設定 [_BR_CONTEXTUAL_TOOLBARS_PREF]
SWS リソース・ウィンドウを表示 [_S&M_SHOW_RESOURCES_VIEW]
サブメニュー内のコマンドは同じ幅のインデントが必要です。TABは使えなかったので半角スペースで間を空けてください。
コマンド内容とIDの間のスペースは有っても無くても大丈夫です。こちらはTABも使えましたが、インデントは何となく半角スペースで統一した方が良さそうに感じました。
使いどころ
REAPERは標準メニューの内容をユーザーが書き換えられるような変態DAWですけど、個人的に標準メニューはあまり触りたくないのでこういったメニュー系スクリプトは重宝しています。
使いどころとしては、ショートカットキーやツールバーに割り当てるほどではないけどたまに使う、でもいざ探そうとすると見つからない、そんな機能を私はメニューに並べています(曖昧)。
また、メニュー表示はOSの機能といいますかREAPERの拡張機能を通さないので日本語も化けずに使えます。アイコンだけだと情報量が足りないときなどメニューに機能の説明を書けるので意外と便利です。
もしくは…このスクリプトをショートカットキーで実行するとマウスカーソルの位置にメニューが表示されるので、めちゃ使う機能をかき集めたエリートメニュー(なにそれ)を構築するのもありかも。老化でショートカットキーが覚えられなくなったらそうしようかな…
メニュー系のスクリプトは過去にもいくつか公開されており、私は今までArchie様作のPopup Menuというスクリプトを使っていましたが、コマンドに連番が必要だったためエディタで書き換えるときに少し手間でした。今回のPortable/Plain Text Menuは連番等も不要で、テキストファイルをゴリゴリ書き換えるだけの簡単操作なので大変扱いやすいです。ありがてぇ😭
Archie Popup Menuとの使い分け
(2024/10/7追記)
メールフォームよりスクリプトに関する情報をいただいたので追記いたします。ありがとうございます名も知らぬお方😙
「Archie Popup Menu」をテキストエディタで書き換える効率的な方法は。
Notepad++などのテキストエディタで「reaper-Archie.ini」を開き、先に作っておいたアクションの行でCtrl+Dを押して、ひとつ下に同じアクションを複製します。
番号は無視して違うコマンドIDとアクション名を割り当てます。
その後、REAPER上のArchieメニューを開き、分かりやすいところにテキトーなアクションを作ります(Add Action)。
REAPER上のArchieメニューでアクションを作った時、削除した時に連番は更新されます。
より日本語の文字化けが少なく、メニュー階層を柔軟に作れるのは「Archie Popup Menu」という感じでした。
なるほど🤔テキストエディタで書き換えた後にスクリプトを実行すれば連番を更新してくれるという流れですね、確かにテキストディタ内で連番を振り直すよりだいぶ楽です!
現状、私の環境ではPortable/Plain Text Menu内に文字化けは発生していないのですが、あまり込み入った使い方をしていないのでその影響はあるかもです。メニューの内容を作り込んだりすると発生するかもしれませんので、文字化けが出てしまう方はArchie Popup Menuをお試し下さい。
https://forum.cockos.com/showthread.php?t=234344
また、Archie Popup Menuはスクリプト内でメニューを構築できますので、テキストディタなんてメモ帳しかねーよみたいな方にはこちらの方が便利だと思います。
ちなみに私が愛用しているテキストエディタはMeryです。