new ones that do stuff with comments

each script is a different type of comment tho
This commit is contained in:
garret 2021-07-21 22:48:09 +01:00
parent 5f1fc4cbb3
commit d5eb7c02fe
3 changed files with 91 additions and 0 deletions

View File

@ -17,6 +17,10 @@ Makes checking pre-timing possible by putting some text in the lines (the actor
ignores lines with text in them, prepends to lines with just tags in them
### Append Comment
pops up a dialogue to put the comment in, and appends it to the selected lines.
### Audio Clipper
Extracts audio from the selected line(s), like the create audio clip button.
@ -75,3 +79,7 @@ originally created to convert stuff that should've been alpha-timed in the first
### Scenebleed Detector
Finds scenebleeds in the selected lines, and marks them with an effect (`bleed`).
### Select Comments
take a guess

49
append-comment.lua Normal file
View File

@ -0,0 +1,49 @@
script_name = "Append Comment"
script_description = "ts do all the work pls kthxbye"
script_author = "garret"
script_version = "1.0.0"
inspect = require 'inspect'
function log(level, msg)
if type(level) ~= "number" then
msg = level
level = 4
end
if type(msg) == "table" then
msg = inspect(msg)
end
aegisub.log(level, tostring(msg).."\n")
end
function clean(msg)
msg = msg:gsub("\n","\\N")
end
function main(sub, sel)
dialog_config=
{
{
class="label",
x=0,y=0,width=1,height=1,
label="Comment:"
},
{
class="textbox",name="msg",
x=0,y=1,width=1,height=2,
value=""
}
}
button, results = aegisub.dialog.display(dialog_config)
if button ~= false then
msg = results.msg
for _, i in ipairs(sel) do
local line = sub[i]
line.text = line.text.." {"..msg.."}"
sub[i] = line
end
else
aegisub.cancel()
end
end
aegisub.register_macro(script_name, script_description, main)

34
select-comments.lua Normal file
View File

@ -0,0 +1,34 @@
script_name = "Select Comments"
script_description = "Selects all commented lines"
script_author = "garret"
script_version = "1.0.0"
-- logging stuff, for testing
-- commented out because for the user it's an external dependency for no good reason
--[[inspect = require 'inspect'
function log(level, msg)
if type(level) ~= "number" then
level = msg
level = 4
end
if type(msg) == "table" then
msg = inspect(msg)
end
aegisub.log(level, tostring(msg) .. "\n")
end]]
function main(sub, sel)
sel = {}
for i=1,#sub do
line=sub[i]
if line.comment == true then
--log(4, "comment on line "..i)
table.insert(sel, i)
--log(4, sel)
end
end
aegisub.set_undo_point(script_name)
return sel
end
aegisub.register_macro(script_name, script_description, main)