diff --git a/duetto-meika.lua b/duetto-meika.lua index e35a2c1..544e48b 100644 --- a/duetto-meika.lua +++ b/duetto-meika.lua @@ -143,8 +143,16 @@ function deduetto_meika(subs, sel) end else aegisub.log("changing line with style: " .. script_style.name .. "\n") - bracketed = bracketed:gsub("\\c[1-4]?[^\\}]*", "") - bracketed = "{s:" .. script_style.name .. bracketed:sub(2, #bracketed) + -- remove inline colors + bracketed = bracketed:gsub("\\[1-4]?c[^\\}]*", "") + bracketed = bracketed:gsub("\\[1-4]?a[^\\}]*", "") + -- remove inline fonts + bracketed = bracketed:gsub("\\f[sn][^\\}]*", "") + + -- add style marker + if line.style ~= script_style.name then + bracketed = "{s:" .. script_style.name .. bracketed:sub(2, #bracketed) + end line.text = line.text:sub(1, match_start-1) .. bracketed .. line.text:sub(match_end + 1, #line.text) end end