aboutsummaryrefslogtreecommitdiff
path: root/home/dot_config/mpv
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2026-08-02 14:48:29 +0200
committerLoek Le Blansch <loek@pipeframe.xyz>2026-08-02 14:48:29 +0200
commite43eb1177872f52e949fb5f0f93396ed94b0d093 (patch)
tree78b73af6a989fa2996d71b112e161b70d35081ef /home/dot_config/mpv
parent2f14a896e4b897bd747c24d7ad8e9e7bb3237d03 (diff)
move to chezmoi
Diffstat (limited to 'home/dot_config/mpv')
-rw-r--r--home/dot_config/mpv/input.conf4
-rw-r--r--home/dot_config/mpv/mpv.conf15
-rw-r--r--home/dot_config/mpv/scripts/copy-subs.lua32
3 files changed, 51 insertions, 0 deletions
diff --git a/home/dot_config/mpv/input.conf b/home/dot_config/mpv/input.conf
new file mode 100644
index 0000000..711242e
--- /dev/null
+++ b/home/dot_config/mpv/input.conf
@@ -0,0 +1,4 @@
+ALT+c script-message-to copy_subs copy
+ALT+SHIFT+c script-message-to copy_subs auto
+CTRL+z set sub-delay 0
+
diff --git a/home/dot_config/mpv/mpv.conf b/home/dot_config/mpv/mpv.conf
new file mode 100644
index 0000000..cc3c44f
--- /dev/null
+++ b/home/dot_config/mpv/mpv.conf
@@ -0,0 +1,15 @@
+# Start in fullscreen mode by default.
+fs=yes
+
+# Display English subtitles if available.
+slang=en
+
+# Override ASS subtitles with same format as SRT
+sub-ass-override=force
+sub-scale=0.5
+
+# LOUD
+volume-max=200
+
+# enable hardware-accelerated decoding
+hwdec=auto
diff --git a/home/dot_config/mpv/scripts/copy-subs.lua b/home/dot_config/mpv/scripts/copy-subs.lua
new file mode 100644
index 0000000..973e1f2
--- /dev/null
+++ b/home/dot_config/mpv/scripts/copy-subs.lua
@@ -0,0 +1,32 @@
+_G.auto = false
+
+function copy()
+ local sub = mp.get_property("sub-text")
+ if sub then
+ -- remove some specific unicode characters
+ sub = sub:gsub('\u{27a1}', '')
+ sub = sub:gsub('\u{fffd}', '')
+ sub = sub:gsub('\u{3013}', '')
+ sub = sub:gsub('\u{2015}', '')
+
+ sub = sub:gsub('\n', ' ') -- replace newlines with space
+ sub = sub:gsub('\'', '\'\\\'\'') -- escape single quotes
+ os.execute("echo '" .. sub .. "' | xclip -selection clipboard -i")
+ end
+end
+
+function autocopy()
+ if _G.auto == false then return end
+ copy()
+end
+
+function toggle_autocopy()
+ _G.auto = not _G.auto
+ mp.osd_message("autocopy " .. (_G.auto and "on" or "off"))
+end
+
+mp.add_key_binding(nil, "copy", copy)
+
+mp.observe_property("sub-text", "string", autocopy)
+mp.add_key_binding(nil, "auto", toggle_autocopy)
+