commit 01ed33d7364310c5ac5be06bb2fbab01a0bbae91
parent 7dceee755fe19571b38b6372a3ea8dcb656cdb99
Author: Anders Damsgaard <anders@adamsgaard.dk>
Date: Tue, 18 Dec 2018 19:11:57 +0100
Add shortcuts to shell and ranger
Diffstat:
6 files changed, 44 insertions(+), 2 deletions(-)
diff --git a/init/10_symlinks.sh b/init/10_symlinks.sh
@@ -35,7 +35,6 @@ mkdir -p ~/.mutt/cache
chmod 0700 ~/.mutt/cache
[ -f ~/.mutt/aliases ] || touch ~/.mutt/aliases
mkdir -p ~/tmp
-mkdir -p $(kpsexpand '$TEXMFHOME')/bibtex/bib/myfiles/
# Symlink directories from iCloud drive to home
if [ "$(uname)" = "Darwin" ]; then
@@ -61,3 +60,4 @@ if [ "$(uname)" = "Darwin" ]; then
[ -L ~/.xinitrc ] && rm ~/.xinitrc
fi
+[ -x ~/bin/shortcuts ] && ~/bin/shortcuts
diff --git a/links/.config/i3/config b/links/.config/i3/config
@@ -77,7 +77,8 @@ bindsym XF86AudioMute exec --no-startup-id amixer set Master toggle && pkill -RT
bindsym XF86AudioMicMute exec --no-startup-id amixer set 'Mic Mute' toggle && pkill -RTMIN+4 i3blocks
# interactive dialogs
-bindsym $mod+grave exec --no-startup-id dmenuunicode
+#bindsym $mod+grave exec --no-startup-id dmenuunicode
+bindsym $mod+u exec --no-startup-id dmenuunicode
bindsym $mod+F9 exec --no-startup-id dmenumount
bindsym $mod+F10 exec --no-startup-id dmenuumount
diff --git a/links/.config/mps-youtube/config b/links/.config/mps-youtube/config
Binary files differ.
diff --git a/links/.config/ranger/rc.conf b/links/.config/ranger/rc.conf
@@ -515,3 +515,4 @@ map Tn eval fm.open_console('shell eyeD3 -n "" ' + fm.thisfile.relative_path, po
#Downloading
map ytv console shell youtube-dl -ic%space
map yta console shell youtube-dl -xic%space
+source /home/ad/.config/ranger/shortcuts.conf
diff --git a/links/.zshrc b/links/.zshrc
@@ -236,3 +236,4 @@ fi
[ "$debug_startup" = true ] && zprof || :
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
+source /home/ad/.shortcuts
diff --git a/links/bin/shortcuts b/links/bin/shortcuts
@@ -0,0 +1,39 @@
+#!/bin/bash
+# By Luke Smith, https://lukesmith.xyz
+
+# Shell rc file (i.e. bash vs. zsh, etc.)
+shellrc="$HOME/.zshrc"
+
+# 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"