X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=.shellrc;h=813e3803e1c93c2b8a15d3090850755f85f19174;hb=3b230e081584ee7d60f1ae036b536e02ec4668cd;hp=d2007fa8f46f28c61382b14674ccbe274472d53f;hpb=29ac3fe1350498025685789e626dd2b8832428d2;p=dotfiles.git diff --git a/.shellrc b/.shellrc index d2007fa..813e380 100644 --- a/.shellrc +++ b/.shellrc @@ -6,6 +6,17 @@ OPS1="$OPS1\\$" PS1="$OPS1 " +case "$HOME" in + /home/*) + if [ -L /home ]; then + START_DIR="`pwd`" && + cd "$HOME" && + HOME="`pwd`" && + cd "$START_DIR" + fi + ;; +esac + case "$SHELL" in */bash) [ "`type -t ls`" = alias ] && unalias ls @@ -111,6 +122,11 @@ x() { exit; } X() { startx >> .Xserver.log 2>&1; cyr; } +git() { + LESS=FRSX"$LESS" command git "$@" +} + + include() { cfg="$1" @@ -193,18 +209,27 @@ mc() { } +mkcd() { + if [ $# -ne 1 ]; then + echo "Usage: mkcd directory_name" >&2 + elif [ -d "$1" ]; then + cd "$1" + elif [ -e "$1" ]; then + echo "Error: $1 is a file" >&2 + else + mkdir -p "$1" && cd "$1" + fi +} + + tmux() { case "$TERM" in rxvt) - TMUX_SAVE_TERM="$TERM" - TERM=rxvt-unicode + TERM=rxvt-unicode command tmux "$@" ;; - esac - command tmux "$@" - rc=$? - - [ -n "$TMUX_SAVE_TERM" ] && TERM="$TMUX_SAVE_TERM" - unset TMUX_SAVE_TERM - return $rc + *) + command tmux "$@" + ;; + esac }