]> git.phdru.name Git - dotfiles.git/blobdiff - .shellrc
.vimrc: Set `visualbell` and `belloff`
[dotfiles.git] / .shellrc
index a78a8e1efabecf156f72581d30dbfc8105d18143..fd73f152065c9795cfab10fdfef5686b62d76f2d 100644 (file)
--- a/.shellrc
+++ b/.shellrc
@@ -74,7 +74,7 @@ if test -n "$BASH_VERSION"; then
    has_completion() { return 0; }
    if [ -z "$BASH_COMPLETION_COMPAT_DIR" ]; then
       if [ "$SHELL" = /bin/bash ]; then
-         if [ -d /usr/share/bash-completion ]; then
+         if [ -d /usr/share/bash-completion -a -f /usr/share/bash-completion/bash_completion ]; then
             . /usr/share/bash-completion/bash_completion
             has_completion() { [ -r /usr/share/bash-completion/completions/$1 ]; }
          elif [ -f /etc/bash_completion ]; then
@@ -98,12 +98,6 @@ if test -n "$BASH_VERSION"; then
       fi
    fi
 
-   if [ -d "$HOME"/.bash_completion.d ]; then
-      for _compf in "$HOME"/.bash_completion.d/*; do
-         . $_compf
-      done
-   fi
-
    for cmd in builtin cgmem_nice command dbus-launch exec \
       killall man nice nohup pidof pidOf KillAll pgrep pkill psg pswg su sudo \
       time whence whereis which xargs; do
@@ -122,6 +116,12 @@ if test -n "$BASH_VERSION"; then
          ! has_completion $cmd && complete -o default -A hostname $cmd
    done
 
+   if [ -d "$HOME"/.bash_completion.d ]; then
+      for _compf in "$HOME"/.bash_completion.d/*; do
+         . $_compf
+      done
+   fi
+
    delegate_completion() {
       local prog programs
       prog=$1
@@ -164,7 +164,7 @@ if test -n "$BASH_VERSION"; then
    #   eval "`pyenv virtualenv-init -`"
    #fi
 
-   source virtualenvwrapper_lazy.sh 2>/dev/null
+   . virtualenvwrapper_lazy.sh 2>/dev/null
 
    if [ -n "$VIRTUAL_ENV" ] && ! type deactivate >/dev/null 2>&1; then
       . "$VIRTUAL_ENV/bin/activate"
@@ -221,7 +221,7 @@ if test -x /usr/bin/git >/dev/null 2>&1; then
       fi
 
       if [ -n "$remote" ] && git config --get remote.$remote.url |
-            grep -q '^\(file:/\|/\|\.\./\)'; then
+            grep -q '^\(file:/\|/\|\.\./\)'; then # (file:/ or / or ../ at the beginning)
          cdgitpath remote.$remote.url
       else
 
@@ -231,14 +231,20 @@ if test -x /usr/bin/git >/dev/null 2>&1; then
             return 1
          fi
 
-         _list_remotes '^\(file:/\|/\|\.\./\)' # (file:/ or / or ../ at the beginning)
-         if [ ${#GIT_REMOTES[*]} -eq 1 ]; then
-            remote=${GIT_REMOTES[0]}
-            unset GIT_REMOTES
-            cdgitpath remote.$remote.url
+         if test -n "$BASH_VERSION"; then
+            _list_remotes '^\(file:/\|/\|\.\./\)' # (file:/ or / or ../ at the beginning)
+            if [ ${#GIT_REMOTES[*]} -eq 1 ]; then
+               remote=${GIT_REMOTES[0]}
+               unset GIT_REMOTES
+               cdgitpath remote.$remote.url
+            else
+               unset GIT_REMOTES
+               echo "Cannot find directory for any remote" >&2
+               echo "Usage: cdremote [remote_name]" >&2
+               return 1
+            fi
          else
-            unset GIT_REMOTES
-            echo "Cannot find directory for any remote" >&2
+            echo "Cannot find directory for remote $1" >&2
             echo "Usage: cdremote [remote_name]" >&2
             return 1
          fi