From 80f92954b9873cd0532bf4b2d684c147d36d6a5d Mon Sep 17 00:00:00 2001 From: garret Date: Sun, 17 Nov 2024 00:08:31 +0000 Subject: rename A-B to Check pre-timing --- a-b.lua | 87 ----------------------------------------------------- check-pretiming.lua | 87 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 87 insertions(+), 87 deletions(-) delete mode 100644 a-b.lua create mode 100644 check-pretiming.lua diff --git a/a-b.lua b/a-b.lua deleted file mode 100644 index 45f133f..0000000 --- a/a-b.lua +++ /dev/null @@ -1,87 +0,0 @@ -script_name = "A-B" -script_description = "makes checking pre-timing possible." -script_author = "garret" -script_version = "3.0.0" -script_namespace = "garret.a-b" - -local haveDepCtrl, DependencyControl, depctrl = pcall(require, "l0.DependencyControl") -if haveDepCtrl then - depctrl = DependencyControl { - --feed="TODO", - } -end - -local function switch_indicator(i) - if i == "a" then - return "b" - elseif i == "b" then - return "a" - end -end - -local function strip_tags(text) - return text:gsub("{[^}]-}","") -end - -local function get_indicator(letter, actor) - local indicator - if actor == "" then - indicator = letter - else - indicator = actor.." "..letter - end - return indicator -end - -local function escape_pattern(txt) - local magic_chars = "%^%$%(%)%%.%[%]%*%+%-%?" - return txt:gsub("(["..magic_chars.."])", "%%%1") -end - -local function main(sub, sel) - local i = "a" - for _,li in ipairs(sel) do - local line = sub[li] - local indicator = get_indicator(i, line.actor) - - if line.text == "" then - line.text = indicator - elseif strip_tags(line.text) == "" then - line.text = line.text .. indicator -- apply tags - end - - sub[li] = line - i = switch_indicator(i) - end - aegisub.set_undo_point(script_name) -end - -local function undo(sub, sel) - local i = "a" - for _,li in ipairs(sel) do - local line = sub[li] - local indicator = get_indicator(i, line.actor) - - if line.text == indicator then - line.text = "" - else - local escaped = escape_pattern(indicator) - line.text = line.text:gsub(escaped, "") - end - sub[li] = line - i = switch_indicator(i) - end -end - -local macros = { - {"Add indicators", script_description, main}, - {"Clean up","Gets rid of the indicators once you've adjusted the lines", undo} -} -if haveDepCtrl then - depctrl:registerMacros(macros) -else - for _,macro in ipairs(macros) do - local name, desc, fun = unpack(macro) - aegisub.register_macro(script_name .. '/' .. name, desc, fun) - end -end diff --git a/check-pretiming.lua b/check-pretiming.lua new file mode 100644 index 0000000..c0a3ff5 --- /dev/null +++ b/check-pretiming.lua @@ -0,0 +1,87 @@ +script_name = "Check pre-timing" +script_description = "Put stuff in empty dialogue lines, so you can see subtitles.\nformerly known as A-B" +script_author = "garret" +script_version = "4.0.0" +script_namespace = "garret.a-b" + +local haveDepCtrl, DependencyControl, depctrl = pcall(require, "l0.DependencyControl") +if haveDepCtrl then + depctrl = DependencyControl { + --feed="TODO", + } +end + +local function switch_indicator(i) + if i == "a" then + return "b" + elseif i == "b" then + return "a" + end +end + +local function strip_tags(text) + return text:gsub("{[^}]-}","") +end + +local function get_indicator(letter, actor) + local indicator + if actor == "" then + indicator = letter + else + indicator = actor.." "..letter + end + return indicator +end + +local function escape_pattern(txt) + local magic_chars = "%^%$%(%)%%.%[%]%*%+%-%?" + return txt:gsub("(["..magic_chars.."])", "%%%1") +end + +local function main(sub, sel) + local i = "a" + for _,li in ipairs(sel) do + local line = sub[li] + local indicator = get_indicator(i, line.actor) + + if line.text == "" then + line.text = indicator + elseif strip_tags(line.text) == "" then + line.text = line.text .. indicator -- apply tags + end + + sub[li] = line + i = switch_indicator(i) + end + aegisub.set_undo_point(script_name) +end + +local function undo(sub, sel) + local i = "a" + for _,li in ipairs(sel) do + local line = sub[li] + local indicator = get_indicator(i, line.actor) + + if line.text == indicator then + line.text = "" + else + local escaped = escape_pattern(indicator) + line.text = line.text:gsub(escaped, "") + end + sub[li] = line + i = switch_indicator(i) + end +end + +local macros = { + {"Add indicators", script_description, main}, + {"Clean up","Gets rid of the indicators once you've adjusted the lines", undo} +} +if haveDepCtrl then + depctrl:registerMacros(macros) +else + for _,macro in ipairs(macros) do + local name, desc, fun = unpack(macro) + aegisub.register_macro(script_name .. '/' .. name, desc, fun) + end +end -- cgit v1.2.3-70-g09d2