Global mpv keybinds
This commit is contained in:
parent
f6e7684ea9
commit
4ead70bf68
4 changed files with 52 additions and 2 deletions
|
@ -91,8 +91,8 @@ fi
|
|||
if command -v git &> /dev/null; then
|
||||
alias gitst='git status -s'
|
||||
alias gitllog='git log --graph --all --oneline --decorate --color=always | sed -n 1,5p'
|
||||
alias gitlloga='git log --graph --all --oneline --decorate --color=always | bless'
|
||||
alias gitllogw='git log --graph --all --date=relative --color=always --pretty="format:%C(auto,yellow)%h%C(auto,magenta) %C(auto,blue)%>(14,trunc)%ad %C(auto,green)%<(13,trunc) %aN%C(auto,red)%gD% D %C(auto,reset)%s" | bless'
|
||||
alias gitlloga='git log --graph --all --oneline --decorate --color=always | less -R'
|
||||
alias gitllogw='git log --graph --all --date=relative --color=always --pretty="format:%C(auto,yellow)%h%C(auto,magenta) %C(auto,blue)%>(14,trunc)%ad %C(auto,green)%<(13,trunc) %aN%C(auto,red)%gD% D %C(auto,reset)%s" | less -R'
|
||||
alias gitdesk='github .'
|
||||
alias gitcontrib='
|
||||
git ls-files |
|
||||
|
|
|
@ -7,6 +7,7 @@ save-position-on-quit # Starts from where you left off last time
|
|||
|
||||
#no-input-default-bindings # Disables all keybinds, including scripts!
|
||||
no-input-builtin-bindings # Disables all default keybinds
|
||||
input-ipc-server=/tmp/mpvfifo
|
||||
|
||||
#
|
||||
# Example mpv configuration file
|
||||
|
|
17
sway/config
17
sway/config
|
@ -358,6 +358,23 @@ mode "shrink_screenshots" {
|
|||
bindsym Escape mode "default"
|
||||
}
|
||||
|
||||
# Global mpv ====
|
||||
bindsym $mod2+m mode "mpv_global"
|
||||
|
||||
mode "mpv_global" {
|
||||
bindsym bracketleft exec ~/.config/sway/mpv_keys.sh '['
|
||||
bindsym bracketright exec ~/.config/sway/mpv_keys.sh ']'
|
||||
bindsym j exec ~/.config/sway/mpv_keys.sh 'j'
|
||||
bindsym k exec ~/.config/sway/mpv_keys.sh 'k'
|
||||
bindsym l exec ~/.config/sway/mpv_keys.sh 'l'
|
||||
bindsym minus exec ~/.config/sway/mpv_keys.sh '-'
|
||||
bindsym equal exec ~/.config/sway/mpv_keys.sh '='
|
||||
|
||||
bindsym return mode "default"
|
||||
bindsym Ctrl+k mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
|
||||
#╔─────────────────────────────────────────────────────────────────────────────╗
|
||||
#│ Sτylεs |
|
||||
#╚─────────────────────────────────────────────────────────────────────────────╝
|
||||
|
|
32
sway/mpv_keys.sh
Executable file
32
sway/mpv_keys.sh
Executable file
|
@ -0,0 +1,32 @@
|
|||
#!/usr/bin/env bash
|
||||
# Send a key into mpv. Parses the mpv input.conf to do so
|
||||
# Sends to pipe named /tmp/mpvfifo unless otherwise specified
|
||||
#
|
||||
# Args:
|
||||
# 1: Key to send
|
||||
# 2: [Optional] fifo
|
||||
shopt -s lastpipe
|
||||
|
||||
declare -r KEY="$1"
|
||||
declare -r FIFO="${2:-/tmp/mpvfifo}"
|
||||
declare CMD=""
|
||||
|
||||
awk -v k="$KEY " '
|
||||
BEGIN { split(k, key, "") }
|
||||
|
||||
{
|
||||
is_key = 1
|
||||
split($0, a, "");
|
||||
|
||||
for (i = 1; i <= length(k); i++)
|
||||
is_key = is_key && (a[i] == key[i]);
|
||||
|
||||
if (is_key) {
|
||||
if (match($0, /#/))
|
||||
print substr($0, length(k)+1, RSTART - length(k) - 1);
|
||||
else
|
||||
print substr($0, length(k)+1);
|
||||
}
|
||||
}' ~/.config/mpv/input.conf | read -r CMD
|
||||
|
||||
echo "$CMD" | socat "$FIFO" -
|
Loading…
Reference in a new issue