* use pushd instead of cd where possible
authorDon Armstrong <don@donarmstrong.com>
Thu, 21 Aug 2008 23:21:42 +0000 (23:21 +0000)
committerDon Armstrong <don@donarmstrong.com>
Thu, 21 Aug 2008 23:21:42 +0000 (23:21 +0000)
.bashrc

diff --git a/.bashrc b/.bashrc
index 99a9e97..602d3a8 100644 (file)
--- a/.bashrc
+++ b/.bashrc
@@ -140,7 +140,12 @@ if [ "$PS1" ]; then
 
        cd ()
        {
-            builtin cd "$@" && [ -r .todo ] && devtodo ${TODO_OPTIONS}
+           # use pushd instead of cd
+           if [ -z "$1" ] || [ "$1" == "-" ]; then
+               builtin cd "$@" && [ -r .todo ] && devtodo ${TODO_OPTIONS};
+           else
+               builtin pushd "$@" >/dev/null && [ -r .todo ] && devtodo ${TODO_OPTIONS};
+           fi;
        }
 
        pushd ()