09ccf19446ca0fb011ea83f146de4b39a6b14f82
[dotfiles.git] / .config / mpv / input.conf
1 # mpv keybindings
2 #
3 # Location of user-defined bindings: ~/.config/mpv/input.conf
4 #
5 # Lines starting with # are comments. Use SHARP to assign the # key.
6 # Copy this file and uncomment and edit the bindings you want to change.
7 #
8 # List of commands and further details: DOCS/man/input.rst
9 # List of special keys: --input-keylist
10 # Keybindings testing mode: mpv --input-test --force-window --idle
11 #
12 # Use 'ignore' to unbind a key fully (e.g. 'ctrl+a ignore').
13 #
14 # Strings need to be quoted and escaped:
15 #   KEY show-text "This is a single backslash: \\ and a quote: \" !"
16 #
17 # You can use modifier-key combinations like Shift+Left or Ctrl+Alt+x with
18 # the modifiers Shift, Ctrl, Alt and Meta (may not work on the terminal).
19 #
20 # The default keybindings are hardcoded into the mpv binary.
21 # You can disable them completely with: --no-input-default-bindings
22
23 # Developer note:
24 # On compilation, this file is baked into the mpv binary, and all lines are
25 # uncommented (unless '#' is followed by a space) - thus this file defines the
26 # default key bindings.
27
28 # If this is enabled, treat all the following bindings as default.
29 #default-bindings start
30
31 #MBTN_LEFT     ignore              # don't do anything
32 #MBTN_LEFT_DBL cycle fullscreen    # toggle fullscreen on/off
33 #MBTN_RIGHT    cycle pause         # toggle pause on/off
34 #MBTN_BACK     playlist-prev
35 #MBTN_FORWARD  playlist-next
36
37 # Mouse wheels, touchpad or other input devices that have axes
38 # if the input devices supports precise scrolling it will also scale the
39 # numeric value accordingly
40 #WHEEL_UP      seek 10
41 #WHEEL_DOWN    seek -10
42 #WHEEL_LEFT    add volume -2
43 #WHEEL_RIGHT   add volume 2
44
45 ## Seek units are in seconds, but note that these are limited by keyframes
46 l seek  5 exact
47 h seek -5 exact
48 #UP    seek  60
49 #DOWN  seek -60
50 # Do smaller, always exact (non-keyframe-limited), seeks with shift.
51 # Don't show them on the OSD (no-osd).
52 #Shift+RIGHT no-osd seek  1 exact
53 #Shift+LEFT  no-osd seek -1 exact
54 #Shift+UP    no-osd seek  5 exact
55 #Shift+DOWN  no-osd seek -5 exact
56 # Skip to previous/next subtitle (subject to some restrictions; see manpage)
57 #Ctrl+LEFT   no-osd sub-seek -1
58 #Ctrl+RIGHT  no-osd sub-seek  1
59 # Adjust timing to previous/next subtitle
60 #Ctrl+Shift+LEFT sub-step -1
61 #Ctrl+Shift+RIGHT sub-step 1
62 # Move video rectangle
63 #Alt+left  add video-pan-x  0.1
64 #Alt+right add video-pan-x -0.1
65 #Alt+up    add video-pan-y  0.1
66 #Alt+down  add video-pan-y -0.1
67 # Zoom/unzoom video
68 Alt+=     add video-zoom   0.1
69 Alt+-     add video-zoom  -0.1
70 # Reset video zoom/pan settings
71 #Alt+BS set video-zoom 0 ; set video-pan-x 0 ; set video-pan-y 0
72 #PGUP add chapter 1                     # skip to next chapter
73 #PGDWN add chapter -1                   # skip to previous chapter
74 #Shift+PGUP seek 600
75 #Shift+PGDWN seek -600
76 [ multiply speed 1/1.1                 # scale playback speed
77 ] multiply speed 1.1
78 { multiply speed 0.5
79 } multiply speed 2.0
80 #BS set speed 1.0                       # reset speed to normal
81 #Shift+BS revert-seek                   # undo previous (or marked) seek
82 #Shift+Ctrl+BS revert-seek mark         # mark position for revert-seek
83 q quit
84 Q quit-watch-later
85 #q {encode} quit 4
86 #ESC set fullscreen no
87 #ESC {encode} quit 4
88 p cycle pause                          # toggle pause/playback mode
89 . frame-step                           # advance one frame and pause
90 , frame-back-step                      # go back by one frame and pause
91 SPACE cycle pause
92 #> playlist-next                        # skip to next file
93 #ENTER playlist-next                    # skip to next file
94 #< playlist-prev                        # skip to previous file
95 #O no-osd cycle-values osd-level 3 1    # cycle through OSD mode
96 o show-progress
97 #P show-progress
98 #i script-binding stats/display-stats
99 #I script-binding stats/display-stats-toggle
100 #` script-binding console/enable
101 #z add sub-delay -0.1                   # subtract 100 ms delay from subs
102 #Z add sub-delay +0.1                   # add
103 #x add sub-delay +0.1                   # same as previous binding (discouraged)
104 #ctrl++ add audio-delay 0.100           # this changes audio/video sync
105 #ctrl+- add audio-delay -0.100
106 #9 add volume -2
107 #/ add volume -2
108 #0 add volume 2
109 #* add volume 2
110 #m cycle mute
111 #1 add contrast -1
112 #2 add contrast 1
113 #3 add brightness -1
114 #4 add brightness 1
115 #5 add gamma -1
116 #6 add gamma 1
117 #7 add saturation -1
118 #8 add saturation 1
119 #Alt+0 set window-scale 0.5
120 #Alt+1 set window-scale 1.0
121 #Alt+2 set window-scale 2.0
122 # toggle deinterlacer (automatically inserts or removes required filter)
123 #d cycle deinterlace
124 #r add sub-pos -1                       # move subtitles up
125 #R add sub-pos +1                       #                down
126 #t add sub-pos +1                       # same as previous binding (discouraged)
127 v cycle sub-visibility
128 # stretch SSA/ASS subtitles with anamorphic videos to match historical
129 #V cycle sub-ass-vsfilter-aspect-compat
130 # switch between applying no style overrides to SSA/ASS subtitles, and
131 # overriding them almost completely with the normal subtitle style
132 #u cycle-values sub-ass-override "force" "no"
133 #j cycle sub                            # cycle through subtitles
134 #J cycle sub down                       # ...backwards
135 #SHARP cycle audio                      # switch audio streams
136 #_ cycle video
137 #T cycle ontop                          # toggle video window ontop of other windows
138 #f cycle fullscreen                     # toggle fullscreen
139 #s screenshot                           # take a screenshot
140 #S screenshot video                     # ...without subtitles
141 #Ctrl+s screenshot window               # ...with subtitles and OSD, and scaled
142 #Alt+s screenshot each-frame            # automatically screenshot every frame
143 #w add panscan -0.1                     # zoom out with -panscan 0 -fs
144 #W add panscan +0.1                     #      in
145 #e add panscan +0.1                     # same as previous binding (discouraged)
146 # cycle video aspect ratios; "-1" is the container aspect
147 #A cycle-values video-aspect-override "16:9" "4:3" "2.35:1" "-1"
148 #POWER quit
149 #PLAY cycle pause
150 #PAUSE cycle pause
151 #PLAYPAUSE cycle pause
152 #PLAYONLY set pause no
153 #PAUSEONLY set pause yes
154 #STOP quit
155 #FORWARD seek 60
156 #REWIND seek -60
157 #NEXT playlist-next
158 #PREV playlist-prev
159 #VOLUME_UP add volume 2
160 #VOLUME_DOWN add volume -2
161 #MUTE cycle mute
162 #CLOSE_WIN quit
163 #CLOSE_WIN {encode} quit 4
164 #E cycle edition                        # next edition
165 #l ab-loop                              # Set/clear A-B loop points
166 #L cycle-values loop-file "inf" "no"    # toggle infinite looping
167 ctrl+c quit 4
168 #DEL script-binding osc/visibility      # cycle OSC display
169 #ctrl+h cycle-values hwdec "auto" "no"  # cycle hardware decoding
170 #F8 show_text ${playlist}               # show playlist
171 #F9 show_text ${track-list}             # show list of audio/sub streams
172
173 #
174 # Legacy bindings (may or may not be removed in the future)
175 #
176 #! add chapter -1                       # skip to previous chapter
177 #@ add chapter 1                        #         next
178
179 #
180 # Not assigned by default
181 # (not an exhaustive list of unbound commands)
182 #
183
184 # ? add sub-scale +0.1                  # increase subtitle font size
185 # ? add sub-scale -0.1                  # decrease subtitle font size
186 # ? cycle angle                         # switch DVD/Bluray angle
187 # ? cycle sub-forced-only               # toggle DVD forced subs
188 # ? cycle program                       # cycle transport stream programs
189 # ? stop                                # stop playback (quit or enter idle mode)