4
Track
AZSTOKE_TrackNameIncludeStringsSoloSetting
トラック名を指定文字列部分一致検知を行いSoloに設定
RANK
os = reaper.GetOS()
if "Win" == string.match(os,"(Win)") then
package.cpath = package.cpath .. ";"..reaper.GetResourcePath() .."/UserPlugins/?.dll"
else
package.cpath = package.cpath .. ";"..reaper.GetResourcePath() .."/UserPlugins/?.dylib"
end
require("reaper_AZSTOKE_SILVER")
function Msg(param)
reaper.ShowConsoleMsg(tostring(param).."\n")
end
soloIncludeString = "_en"
retval,trackList = AZ_SILVER.AZ_GetTrackItemList(0)
reaper.AZ_SetTrackAllSoloOFF(0)
for i, value in pairs(trackList) do
_,name = reaper.AZ_GetTrackItemName(value)
_,check = reaper.AZ_CheckIncludeString(name,soloIncludeString)
if check == true then
reaper.AZ_SetTrackItemSolo(value,true)
end
end
os = reaper.GetOS()
if "Win" == string.match(os,"(Win)") then
package.cpath = package.cpath .. ";"..reaper.GetResourcePath() .."/UserPlugins/?.dll"
else
package.cpath = package.cpath .. ";"..reaper.GetResourcePath() .."/UserPlugins/?.dylib"
end
require("reaper_AZSTOKE_SILVER")
・SilverのAPIを利用可能にする
function Msg(param)
reaper.ShowConsoleMsg(tostring(param).."\n")
end
・デバック用コンソール出力関数を用意
soloIncludeString = "_en"
・soloにする部分一致の文字列を設定してsoloIncludeStringに代入
retval,trackList = AZ_SILVER.AZ_GetTrackItemList(0)
・指定プロジェクトの全てのトラックを配列のtrackListに代入
reaper.AZ_SetTrackAllSoloOFF(0)
・すべてのsoloをOFFに設定
for i, value in pairs(trackList) do
・trackListの配列分をForループ
_,name = reaper.AZ_GetTrackItemName(value)
・各トラックの名前を取得してnameに代入
_,check = reaper.AZ_CheckIncludeString(name,soloIncludeString)
・nameにsoloIncludeStringが入っているかをチェックしてcheckにboolを代入
if check then
・checkがtrueなら以下に実行
reaper.AZ_SetTrackItemSolo(value,true)
・checkを通ったトラックにsoloを設定
end
end
トラックの命名をしておく
※部分一致の範囲を理解して命名してください