From 2dc2feacf35cfebade39b2e2797e02ac6d84c4c4 Mon Sep 17 00:00:00 2001 From: Tslil Clingman Date: Fri, 5 Dec 2014 11:59:55 +0200 Subject: Tweaks and ratpoison window switcher --- ce | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'ce') diff --git a/ce b/ce index 49946b1..e777877 100755 --- a/ce +++ b/ce @@ -1,13 +1,14 @@ -# Smart directory changer using the power of grep ;) -# source in a function j() { . ce $*} or some such #!/bin/bash +# Smart directory changer using the power of grep ;) +# source in a function j() { ce $*; cd `head -n 1 ~/.local/share/dir_lst` } +# or some such [ "$1" = "$HOME" ] && echo $HOME && exit -fl="$HOME/.local/share/dir_lst";[ ! -f "$fl" ] && touch "$fl" -[ "$2" = "!" ] && echo "$1" && exit || \ +fl="$HOME/.local/share/dir_lst"; [ ! -f "$fl" ] && touch "$fl" +[ "$2" = '!' ] && echo $1 && exit || \ ln=`grep -n "$1" "$fl" | head -n 1 | cut -d : -f 1` -if [ ! "$1" = "" ]; then if [ ! "$ln" = "" ]; then -cd `echo -e "$ln m0\n1p\nw"|ed -s "$fl"` ||echo \?; else +if [ "$1" != "" ]; then if [ "$ln" != "" ]; then +echo -e "$ln m0\n1p\nw" | ed -s "$fl" || echo \?; else l=$1; while [ ! -d "$l" ]; do echo \?; read l; done; -l=`echo "$l" | sed "s|^[^/]|$PWD/&|"`; cd $l +l=`echo "$l" | sed "s|^[^/]|$PWD/&|"`; echo -e "0i\n$l\n.\nw" | ed -s "$fl"; sed -i '43,$d' "$fl" fi; else echo -e "2 m0\nw" | ed -s "$fl"; fi; -- cgit v1.2.3