voidrice/.local/bin/shortcuts

28 lines
1.8 KiB
Text
Raw Normal View History

2019-05-20 19:26:16 +00:00
#!/usr/bin/env bash
2018-12-01 16:04:34 +00:00
# Output locations. Unactivated progs should go to /dev/null.
2020-04-08 23:10:00 +00:00
shell_shortcuts="${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc"
ranger_shortcuts="${XDG_CONFIG_HOME:-$HOME/.config}/ranger/shortcuts.conf"
qute_shortcuts="/dev/null"
fish_shortcuts="/dev/null"
2020-04-08 23:10:00 +00:00
vifm_shortcuts="${XDG_CONFIG_HOME:-$HOME/.config}/vifm/vifmshortcuts"
2018-11-04 22:45:10 +00:00
2018-12-01 16:04:34 +00:00
# Remove, prepare files
rm -f "$ranger_shortcuts" "$qute_shortcuts" 2>/dev/null
2019-01-13 23:40:57 +00:00
printf "# vim: filetype=sh\\n" > "$fish_shortcuts"
printf "# vim: filetype=sh\\nalias " > "$shell_shortcuts"
printf "\" vim: filetype=vim\\n" > "$vifm_shortcuts"
2018-11-04 22:45:10 +00:00
2019-05-20 00:05:14 +00:00
# Format the `directories` file in the correct syntax and sent it to all three configs.
2020-04-08 23:10:00 +00:00
sed "s/\s*#.*$//;/^\s*$/d" "${XDG_CONFIG_HOME:-$HOME/.config}/directories" | tee >(awk '{print $1"=\"cd "$2" && ls -a\" \\"}' >> "$shell_shortcuts") \
2019-01-13 23:40:57 +00:00
>(awk '{print "abbr", $1, "\"cd " $2 "; and ls -a\""}' >> "$fish_shortcuts") \
>(awk '{print "map g" $1, ":cd", $2 "<CR>\nmap t" $1, "<tab>:cd", $2 "<CR><tab>\nmap M" $1, "<tab>:cd", $2 "<CR><tab>:mo<CR>\nmap Y" $1, "<tab>:cd", $2 "<CR><tab>:co<CR>" }' >> "$vifm_shortcuts") \
2018-11-04 22:45:10 +00:00
>(awk '{print "config.bind(\";"$1"\", \"set downloads.location.directory "$2" ;; hint links download\")"}' >> "$qute_shortcuts") \
| awk '{print "map g"$1" cd "$2"\nmap t"$1" tab_new "$2"\nmap m"$1" shell mv -v %s "$2"\nmap Y"$1" shell cp -rv %s "$2}' >> "$ranger_shortcuts"
2019-05-20 00:05:14 +00:00
# Format the `files` file in the correct syntax and sent it to both configs.
2020-04-08 23:10:00 +00:00
sed "s/\s*#.*$//;/^\s*$/d" "${XDG_CONFIG_HOME:-$HOME/.config}/files" | tee >(awk '{print $1"=\"$EDITOR "$2"\" \\"}' >> "$shell_shortcuts") \
2019-01-13 23:40:57 +00:00
>(awk '{print "abbr", $1, "\"$EDITOR "$2"\""}' >> "$fish_shortcuts") \
>(awk '{print "map", $1, ":e", $2 "<CR>" }' >> "$vifm_shortcuts") \
2018-11-04 22:45:10 +00:00
| awk '{print "map "$1" shell $EDITOR "$2}' >> "$ranger_shortcuts"