diff --git a/dotfiles/.config/mpv/input.conf b/dotfiles/.config/mpv/input.conf new file mode 100644 index 0000000..c228594 --- /dev/null +++ b/dotfiles/.config/mpv/input.conf @@ -0,0 +1,90 @@ +################################################################################## +# +# New Start: A modern Arch workflow built with an emphasis on functionality. +# Copyright (C) 2017 Donovan Glover +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# +################################################################################## + +###################################################################### +# Legacy Commands - These are here to serve as an optional way to do +# something, although you should really use the home row instead. +###################################################################### + +ESC set fullscreen no # Close mpv +ESC {encode} quit 4 # Same as above + +m cycle mute # Toggle mute +p cycle pause # Pause / unpause +SPACE cycle pause # Same as above + +###################################################################### +# Core Commands - These are all the commands that you use with mpv +# available directly from the home row. +###################################################################### + +# We use jkhl to mimic movement functionality in vim +k seek 1 # Go forward a small bit +j seek -1 # Go back a small bit +l seek 5 # Go forward a large bit +h seek -5 # Go back a large bit + +# We use ; for pause and : for mute since we're more likely to pause +# a video than to mute it (both also act as toggles) +; cycle pause # Toggle pause +: cycle mute # Toggle mute + +# f stands for full-screen and d stands for information (similar to feh) +f cycle fullscreen # Toggle fullscreen +d show-progress # Show your position in the video + +# S and s clearly refer to screenshot in this context, the former asserting a bit +# more control in how it does things +s async screenshot # Take a screenshot of the current frame +S async screenshot video # Take a screenshot without the subtitles + +# J and K to change videos (mimicing Vimium and changing tabs) +J playlist-prev # Open the previous video +K playlist-next # Open the next video + +# H and L to change sections (mimicing Vimimum and moving through history) +H add chapter -1 # Go to the previous section in the video +L add chapter 1 # Go to the next section in the video + +# For precise control when viewing a video, we use F to go one 'f'rame forward +# and D to go one frame back (right next to the F key) +F frame-step # Move forward one frame and pause the video +D frame-back-step # Go back one frame and pause the video + +# Similar to ;/:, a is used to cycle through the 'a'udio and A for subtitles +a cycle audio # Switch audio streams (e.g. English to French) +A cycle sub # Switch between subtitles + +# We use v/V and n/N here to change the speed and volume since they're directly +# below the f and j keys and we don't need to change them as much. +v add speed 0.25 # Increase video speed by 0.25 +V add speed -0.25 # Decrease video speed by 0.25 +n add volume 5 # Increase mpv volume by 5 +N add volume -5 # Decrease mpv volume by 5 + +# We use g to turn subtiles on and off; it's our last utility key and works +# well for general-purpose things. G plays the current video as a loop. +g cycle sub-visibility # Toggle subtitles +G cycle-values loop-file "inf" "no" # Repeat the current video (not playlist) + +# All of the middle keys are taken, as well as the v and n keys. We make use of +# the standard q key to close mpv. +q quit # Close mpv +q {encode} quit 4 # Same as above