shortcut system movement

This commit is contained in:
Luke Smith
2018-11-04 17:45:10 -05:00
parent 631deb1c66
commit 62acbb078c
5 changed files with 39 additions and 34 deletions

View File

@@ -1,22 +0,0 @@
cff ~/.scripts/folders
cfc ~/.scripts/configs
cfb ~/.bashrc
cfz ~/.zshrc
cfv ~/.vimrc
cfr ~/.config/ranger/rc.conf
cfi ~/.config/i3/config
cfq ~/.config/qutebrowser/config.py
cfm ~/.config/mutt/muttrc
cft ~/.config/termite/config
eb ~/Documents/LaTeX/uni.bib
cv ~/Documents/LaTeX/cv.tex
cfp ~/.config/polybar/config
cfd ~/.Xdefaults
cfu ~/.config/newsboat/urls
cfn ~/.config/newsboat/config
cfA ~/.asoundrc
cfmb ~/.config/ncmpcpp/bindings
cfmc ~/.config/ncmpcpp/config
cfmpd ~/.config/mpd/mpd.conf
cfM ~/.config/mpd/mpd.conf
er ~/.referbib

View File

@@ -1,12 +0,0 @@
# You can add comments to these files with #
h ~/
d ~/Documents
D ~/Downloads
m ~/Music
pp ~/Pictures
vv ~/Videos
cf ~/.config
sc ~/.scripts
mn /mnt
e /etc
/ /

38
.scripts/shortcuts Executable file
View File

@@ -0,0 +1,38 @@
#!/bin/bash
# Shell rc file (i.e. bash vs. zsh, etc.)
shellrc="$HOME/.bashrc"
# Config locations
folders="$HOME/.key_directories"
configs="$HOME/.key_files"
# Output locations
shell_shortcuts="$HOME/.shortcuts"
ranger_shortcuts="$HOME/.config/ranger/shortcuts.conf"
qute_shortcuts="$HOME/.config/qutebrowser/shortcuts.py"
fish_shortcuts="$HOME/.config/fish/shortcuts.fish"
# Remove
rm -f "$ranger_shortcuts" "$qute_shortcuts"
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 `folders` file in the correct syntax and sent it to all three configs.
sed "s/#.*$//;/^$/d" "$folders" | tee >(awk '{print $1"=\"cd "$2" && ls -a\" \\"}' >> "$shell_shortcuts") \
>(awk '{print $1, "\"cd " $2 " ; 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" "$configs" | tee >(awk '{print $1"=\"$EDITOR "$2"\" \\"}' >> "$shell_shortcuts") \
>(awk '{print $1, "\"$EDITOR "$2"\" \\"}' >> "$fish_shortcuts") \
| awk '{print "map "$1" shell $EDITOR "$2}' >> "$ranger_shortcuts"

View File

@@ -1,34 +0,0 @@
#!/bin/bash
# Shell rc file (i.e. bash vs. zsh, etc.)
shellrc="$HOME/.bashrc"
# Config locations
folders="$HOME/.scripts/folders"
configs="$HOME/.scripts/configs"
# Output locations
shell_shortcuts="$HOME/.shortcuts"
ranger_shortcuts="$HOME/.config/ranger/shortcuts.conf"
qute_shortcuts="$HOME/.config/qutebrowser/shortcuts.py"
# Download the shorcut files if not present.
[ ! -f "$folders" ] && curl https://raw.githubusercontent.com/LukeSmithxyz/voidrice/master/.scripts/folders > "$folders"
[ ! -f "$configs" ] && curl https://raw.githubusercontent.com/LukeSmithxyz/voidrice/master/.scripts/configs > "$configs"
# Remove
rm -f "$shell_shortcuts" "$ranger_shortcuts" "$qute_shortcuts"
# Ensuring that output locations are properly sourced
(grep "source ~/.shortcuts" "$shellrc")>/dev/null || echo "source ~/.shortcuts" >> "$shellrc"
(grep "source ~/.config/ranger/shortcuts.conf" "$HOME/.config/ranger/rc.conf")>/dev/null || echo "source ~/.config/ranger/shortcuts.conf" >> "$HOME/.config/ranger/rc.conf"
(grep "config.source('shortcuts.py')" "$HOME/.config/qutebrowser/config.py")>/dev/null || echo "config.source('shortcuts.py')" >> "$HOME/.config/qutebrowser/config.py"
# Format the `folders` file in the correct syntax and sent it to all three configs.
sed "s/#.*$//;/^$/d" "$folders" | tee >(awk '{print "alias "$1"=\"cd "$2" && ls -a\""}' >> "$shell_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" "$configs" | tee >(awk '{print "alias "$1"=\"$EDITOR "$2"\""}' >> "$shell_shortcuts") \
| awk '{print "map "$1" shell $EDITOR "$2}' >> "$ranger_shortcuts"