summaryrefslogtreecommitdiffstats
path: root/.local/bin/tools/shortcuts
diff options
context:
space:
mode:
authorLuke Smith <luke@lukesmith.xyz>2019-05-18 00:07:32 -0400
committerLuke Smith <luke@lukesmith.xyz>2019-05-18 00:07:32 -0400
commit54920103c2843f5a3620effbccaceaee7f6885c1 (patch)
tree222aa8e75573364cd043382996f4798d94104f65 /.local/bin/tools/shortcuts
parent18e001db07d7105ab4dc4f4f836ca0d3a516a791 (diff)
downloadeibhear-54920103c2843f5a3620effbccaceaee7f6885c1.tar.gz
eibhear-54920103c2843f5a3620effbccaceaee7f6885c1.tar.zst
eibhear-54920103c2843f5a3620effbccaceaee7f6885c1.zip
scripts moved to ~/.local/bin
Diffstat (limited to '.local/bin/tools/shortcuts')
-rwxr-xr-x.local/bin/tools/shortcuts26
1 files changed, 26 insertions, 0 deletions
diff --git a/.local/bin/tools/shortcuts b/.local/bin/tools/shortcuts
new file mode 100755
index 0000000..1c4f278
--- /dev/null
+++ b/.local/bin/tools/shortcuts
@@ -0,0 +1,26 @@
+#!/bin/bash
+# Output locations. Unactivated progs should go to /dev/null.
+shell_shortcuts="$HOME/.config/shortcutrc"
+ranger_shortcuts="/dev/null"
+qute_shortcuts="/dev/null"
+fish_shortcuts="/dev/null"
+vifm_shortcuts="$HOME/.config/vifm/vifmshortcuts"
+
+# Remove, prepare files
+rm -f "$ranger_shortcuts" "$qute_shortcuts" 2>/dev/null
+printf "# vim: filetype=sh\\n" > "$fish_shortcuts"
+printf "# vim: filetype=sh\\nalias " > "$shell_shortcuts"
+printf "\" vim: filetype=vim\\n" > "$vifm_shortcuts"
+
+# Format the `bmdirs` file in the correct syntax and sent it to all three configs.
+sed "s/\s*#.*$//;/^\s*$/d" "$HOME/.config/bmdirs" | tee >(awk '{print $1"=\"cd "$2" && ls -a\" \\"}' >> "$shell_shortcuts") \
+ >(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") \
+ >(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"
+
+# Format the `configs` file in the correct syntax and sent it to both configs.
+sed "s/\s*#.*$//;/^\s*$/d" "$HOME/.config/bmfiles" | tee >(awk '{print $1"=\"$EDITOR "$2"\" \\"}' >> "$shell_shortcuts") \
+ >(awk '{print "abbr", $1, "\"$EDITOR "$2"\""}' >> "$fish_shortcuts") \
+ >(awk '{print "map", $1, ":e", $2 "<CR>" }' >> "$vifm_shortcuts") \
+ | awk '{print "map "$1" shell $EDITOR "$2}' >> "$ranger_shortcuts"