-
Notifications
You must be signed in to change notification settings - Fork 6
/
copy-time.lua
33 lines (27 loc) · 1.21 KB
/
copy-time.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
-- copy-time (Linux version)
-- Requires xclip installed
-- Copies current timecode in HH:MM:SS.MS format to clipboard
-------------------------------------------------------------------------------
-- Script adapted by Alex Rogers (https://github.com/linguisticmind)
-- Modified from https://github.com/Arieleg/mpv-copyTime
-- Released under GNU GPL 3.0
require "mp"
local function set_clipboard(text)
command = string.format("echo -n %s | xclip -selection clipboard", text)
mp.commandv("run", "/bin/bash", "-c", command)
end
function copy_time()
local time_pos = mp.get_property_number("time-pos")
local time_in_seconds = time_pos
local time_seg = time_pos % 60
time_pos = time_pos - time_seg
local time_hours = math.floor(time_pos / 3600)
time_pos = time_pos - (time_hours * 3600)
local time_minutes = time_pos/60
time_seg,time_ms=string.format("%.03f", time_seg):match"([^.]*).(.*)"
time = string.format("%02d:%02d:%02d.%s", time_hours, time_minutes, time_seg, time_ms)
set_clipboard(time)
mp.osd_message(string.format("Copied to clipboard: %s", time))
end
-- the keybinding here is set to nil on purpose 'cause I modified the keybinding (in input.conf)
mp.add_key_binding(nil, "copy-time", copy_time)