add script copy-paste-URL

This commit is contained in:
zenyd 2021-03-09 01:57:39 +01:00
parent efa300fb6b
commit 54a74c4441
2 changed files with 62 additions and 3 deletions

View File

@ -64,6 +64,12 @@ First invoke the script using `alt + u`, input a movie name, or use the one prov
## delete-file
As the name suggests this is a small script for deleting files played through mpv. You can mark a file to be deleted and can unmark it if desired. Once quitting mpv, the script starts the deletion process. This is platform-agnostic so should work everywhere.
`ctrl + DEL`: mark/unmark file to be deleted
`alt + DEL`: show the list of files marked for deletion
`ctrl + shift + DEL`: clear the list of marks
Key Bind|Effect
--------|------
`ctrl + DEL`|mark/unmark file to be deleted
`alt + DEL`|show the list of files marked for deletion
`ctrl + shift + DEL`|clear the list of marked files
## copy-paste-URL
Like its name suggests - copy and paste links into mpv with `ctrl + v` to start playback of a video. This needs an open mpv window like `mpv --idle --force-window` or a window already playing a video. Also the script utilizes powershell, so that needs to be installed as well.

53
copy-paste-URL.lua Normal file
View File

@ -0,0 +1,53 @@
function trim(s)
return (s:gsub("^%s*(%S+)%s*", "%1"))
end
function openURL()
subprocess = {
name = "subprocess",
args = { "powershell", "-Command", "Get-Clipboard", "-Raw" },
playback_only = false,
capture_stdout = true,
capture_stderr = true
}
mp.osd_message("Getting URL from clipboard...")
r = mp.command_native(subprocess)
--failed getting clipboard data for some reason
if r.status < 0 then
mp.osd_message("Failed getting clipboard data!")
print("Error(string): "..r.error_string)
print("Error(stderr): "..r.stderr)
end
url = r.stdout
if not url then
return
end
--trim whitespace from string
url=trim(url)
if not url then
mp.osd_message("clipboard empty")
return
end
--immediately resume playback after loading URL
if mp.get_property_bool("core-idle") then
if not mp.get_property_bool("idle-active") then
mp.command("keypress space")
end
end
--try opening url
--will fail if url is not valid
mp.osd_message("Try Opening URL:\n"..url)
mp.commandv("loadfile", url, "replace")
end
mp.add_key_binding("ctrl+v", openURL)