SynthesizerV用歌詞ツメプラグイン
投稿:2022-03-27
SynthesizerV用歌詞送りプラグインの反対の状況で歌詞を前にツメたい場合があります。
使い方も同じです。 空白のノートを選択してプラグインを実行すると、 後の歌詞がツメられます。
-- 選択したノートの歌詞を削除
local plugin_name = "歌詞を削除(Lua)"
-- プラグイン情報
function getClientInfo()
return {
name = plugin_name,
category = "歌詞",
author = "lemorin_jp",
versionNumber = 1,
minEditorVersion = 0
}
end
-- メニュー選択でここに来る
function main()
-- 選択中のトラックのメイングループ
local tiss = SV:getMainEditor():getSelection()
local note = tiss:getSelectedNotes()
if 1 ~= #note then
SV:showMessageBox(plugin_name, "ノートを1個選択してください")
else
local index = note[1]:getIndexInParent()
local note_group = note[1]:getParent()
local note_num = note_group:getNumNotes()
local lyric = ""
for i = note_num, index, -1 do
local swap_note = note_group:getNote(i)
local swap_lyric = swap_note:getLyrics()
swap_note:setLyrics(lyric)
lyric = swap_lyric
end
-- 最後の歌詞を分割して最後のノートに戻す
local swap_note = note_group:getNote(note_num - 1)
lyric = swap_note:getLyrics()
local s = string.find(lyric, "_")
if nil ~= s then
local keep = string.sub(lyric, 1, s - 1)
swap_note:setLyrics(keep)
swap_note = note_group:getNote(note_num)
lyric = string.sub(lyric, s + 1, 100)
swap_note:setLyrics(lyric)
end
SV:showMessageBox(plugin_name, "削除しました")
end
-- プラグイン終了
SV:finish()
end