X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=selector.git;a=blobdiff_plain;f=bash-selector.sh;h=87df02c8b67986e2024162407f01c35eab34798c;hp=cbf8ed542817204685b7e8c4596ab1a0eff3006e;hb=db0d8f2855537dee1b1a39600d8acecd98f603ed;hpb=40783cf11bb49618d80fa3f588632a1c61c0ce2d diff --git a/bash-selector.sh b/bash-selector.sh index cbf8ed5..87df02c 100755 --- a/bash-selector.sh +++ b/bash-selector.sh @@ -3,7 +3,7 @@ # selector is a simple command line utility for selection of strings # with a dynamic pattern-matching. # -# Copyright (c) 2009, 2010, 2011, 2012 Francois Fleuret +# Copyright (c) 2011, 2012 Francois Fleuret # Written by Francois Fleuret # # This file is part of selector. @@ -73,13 +73,17 @@ function selector-cd () { } function selector-cd-search () { - PATH_TEMP=$(mktemp /tmp/selector-cd-path.XXXXXX) - selector -j -y -u -t "cd" -l 1000 -d -i -c 7,2,0,3 -o ${PATH_TEMP} -q ${SELECTOR_CD_HISTORY} - NEW_PATH="$(cat ${PATH_TEMP} | sed -e 's!~!'${HOME}'!')" - if [[ -s "${NEW_PATH}" ]]; then - selector-cd "$(cat ${PATH_TEMP} | sed -e 's!^~!'${HOME}'!')" + if [[ -f ${SELECTOR_CD_HISTORY} ]]; then + PATH_TEMP=$(mktemp /tmp/selector-cd-path.XXXXXX) + selector -j -y -u -t "cd" -l 1000 -d -i -c 7,2,0,3 -o ${PATH_TEMP} -q ${SELECTOR_CD_HISTORY} + NEW_PATH="$(cat ${PATH_TEMP} | sed -e 's!~!'${HOME}'!')" + if [[ -s "${NEW_PATH}" ]]; then + selector-cd "$(cat ${PATH_TEMP} | sed -e 's!^~!'${HOME}'!')" + fi + \rm ${PATH_TEMP} + else + echo "No cd history file ${SELECTOR_CD_HISTORY}." >&2 fi - \rm ${PATH_TEMP} } alias cd=selector-cd