-- {{ ansible_managed }} -- Note that the mp global is injected by mpv when the script is ran. local utils = require 'mp.utils' local function paste_from_clipboard(command) local res = utils.subprocess({ args = { 'wl-paste', '--no-newline' } }) if res.status == 0 and res.stdout then local url = res.stdout:gsub("^%s*(.-)%s*$", "%1") -- trim whitespace if url ~= "" then mp.commandv("loadfile", url, command) mp.osd_message("Processed: " .. url) end end end local function append_from_clipboard() paste_from_clipboard("append") end local function replace_from_clipboard() paste_from_clipboard("replace") end -- TODO: add keybinding that works with idle screen mp.add_key_binding("Shift+MBTN_RIGHT", "append_clipboard", append_from_clipboard) mp.add_key_binding("Shift+MBTN_LEFT", "replace_clipboard", replace_from_clipboard)