diff options
Diffstat (limited to '.i3/scripts/shortcuts')
| -rwxr-xr-x | .i3/scripts/shortcuts | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/.i3/scripts/shortcuts b/.i3/scripts/shortcuts new file mode 100755 index 0000000..5ccb114 --- /dev/null +++ b/.i3/scripts/shortcuts @@ -0,0 +1,38 @@ +#!/bin/bash + +# Shell rc file (i.e. bash vs. zsh, etc.) +shellrc="$HOME/.bashrc" + +# Bookmark file locations +bmdirs="$HOME/.bmdirs" +bmfiles="$HOME/.bmfiles" + +# Output locations. Unactivated progs should go to /dev/null. +shell_shortcuts="$HOME/.shortcuts" +ranger_shortcuts="$HOME/.config/ranger/shortcuts.conf" +qute_shortcuts="/dev/null" +fish_shortcuts="/dev/null" + +# Remove, prepare files +rm -f "$ranger_shortcuts" "$qute_shortcuts" 2>/dev/null +#echo "abbr \\" > "$fish_shortcuts" +echo "alias \\" > "$shell_shortcuts" + +# Ensure text of argument 1 exists in the file argument 2 +ensure() { (grep "$1" "$2")>/dev/null 2>&1 || echo "$1" >> "$2" ;} + +ensure "source $shell_shortcuts" "$shellrc" +ensure "source $HOME/.config/ranger/shortcuts.conf" "$HOME/.config/ranger/rc.conf" +#ensure "config.source('shortcuts.py')" "$HOME/.config/qutebrowser/config.py" +#ensure "source $HOME/.config/fish/shortcuts.fish" "$HOME/.config/fish/config.fish" + +# Format the `bmdirs` file in the correct syntax and sent it to all three configs. +sed "s/#.*$//;/^$/d" "$bmdirs" | tee >(awk '{print $1"=\"cd "$2" && ls -a\" \\"}' >> "$shell_shortcuts") \ + >(awk '{print $1, "\"cd " $2 "; and ls -a\" \\"}' >> "$fish_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/#.*$//;/^$/d" "$bmfiles" | tee >(awk '{print $1"=\"$EDITOR "$2"\" \\"}' >> "$shell_shortcuts") \ + >(awk '{print $1, "\"$EDITOR "$2"\" \\"}' >> "$fish_shortcuts") \ + | awk '{print "map "$1" shell $EDITOR "$2}' >> "$ranger_shortcuts" |
