X-Git-Url: https://git.donarmstrong.com/?p=home-base.git;a=blobdiff_plain;f=.bashrc;h=0773f1d0e3bbcb825f1fdcbc7a7ed4ff8cf9e9ac;hp=dac14a8a6de25c0e89c46c7bd3431842dd669b1f;hb=a165a87dbbc06fbd27d1311649a02728f999cae1;hpb=c56000793eb3032d1f05c1fe1dac4f44ddcd4616 diff --git a/.bashrc b/.bashrc index dac14a8..0773f1d 100644 --- a/.bashrc +++ b/.bashrc @@ -20,19 +20,20 @@ if [ "$PS1" ]; then fi; # bts debian options + if [ -e bin/faf ]; then + complete -F _command faf + fi; + export DEBEMAIL="don@debian.org" + export DEBHOME="$(eval 'echo' '~/projects/debian')" + + export GTK_IM_MODULE=xim + export QT_IM_MODULE=xim # enable color support of ls and also add handy aliases eval `dircolors -b` alias ls='ls --color=auto' - alias gr='gimp-remote' - alias emc='sane_editor' - - alias svn-b="svn-buildpackage --svn-builder 'pdebuild --buildresult ..' --svn-ignore-new" - # set a fancy prompt - #printf '\33]2;%s\007' - # See if we're in a chroot if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then debian_chroot=$(cat /etc/debian_chroot) @@ -42,12 +43,15 @@ if [ "$PS1" ]; then # if it's a remote, SSH_CONNECTION will be set # set variable identifying the chroot you work in (used in the prompt below) + # disable terminal bell + bind 'set bell-style none' + if [ -n "$SSH_CONNECTION" -o -n "$SSH_CLIENT" ]; then # figure out what color to use COLOR=$(hostname|md5sum|perl -ne 'if (/^([a-f\d]{8})/) { - my $num = unpack(q(L),pack(q(h*),$1)); + my $num = unpack(q(L),pack(q(H*),$1)); my @col = map {(qq(0;${_}m),qq(1;${_}m))} 31..37; - my $col = $col[$num%$#col]; + my $col = $col[$num % @col]; if ($col eq q(0;36m)) { $col = q(1;30m); } @@ -61,27 +65,21 @@ if [ "$PS1" ]; then # \[\033[1;36m\][\w]\n\[\033[0;36m\][\h|\t]$ \[\033[0m\] # make sure the term we're using exists in the termcap - TOEOPT='-a' - if ! toe $TOEOPT >/dev/null 2>&1; then - TOEOPT='' + if [[ "$TERM" =~ "rxvt-" ]] && which tput >/dev/null 2>&1; then + if [[ -z "$(tput longname 2>/dev/null)" ]]; then + TERM="xterm-${TERM##rxvt-}" + export TERM + fi; fi; - if ! toe $TOEOPT|grep -q "^$TERM "; then - # if it doesn't, try to switch - case $TERM in - rxvt*) - TERM="rxvt" - ;; - xterm*) - TERM="xterm" - ;; - *) - ;; - esac - export TERM; + if [[ "$TERM" =~ "stterm-" ]] && which tput >/dev/null 2>&1; then + if [[ -z "$(tput longname 2>/dev/null)" ]]; then + TERM="xterm-${TERM##stterm-}" + export TERM + fi; fi; # If this is an xterm set the title to user@host:dir case $TERM in - screen|xterm*) + screen|xterm*|stterm*) PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"' ;; rxvt*) @@ -99,7 +97,8 @@ if [ "$PS1" ]; then fi; # set up ssh-agent - if which ssh-agent >/dev/null && [ -d ~/.ssh ]; then + if which ssh-agent >/dev/null && [ -d ~/.ssh ] && \ + [ -z "$SSH_CONNECTION" ] && [ -z "$SSH_CLIENT" ]; then # for if [ -e ~/.ssh/ssh_agent_info ] && \ [ -n "$(awk -F '[=;]' '/^SSH_AGENT_PID/{print $2}' ~/.ssh/ssh_agent_info)" ] && \ @@ -121,35 +120,26 @@ if [ "$PS1" ]; then LANG=C fi; export LANG - export PATH="~/bin:$PATH" + + # If we're running on liszt, include /var/list/.bin in the path + if [ "$(hostname)" == "liszt" ] && [ -d /var/list/.bin ]; then + PATH="/var/list/.bin:$PATH" + fi; + export PATH="$(getent passwd $(id -u)|awk -F: '{print $6}')/bin:$PATH" + if [ ! -e ~/tmp ]; then mkdir ~/tmp; fi; export TMPDIR="$(echo ~/tmp)"; - if [ -n "$(which devtodo)" ]; then - for a in tda tdd tde; do - alias "s${a}"="STODO_NO_COMMIT=1 $a" - done; - - TODO_OPTIONS="--timeout --summary" - 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 () - { - builtin pushd "$@" && [ -r .todo ] && devtodo ${TODO_OPTIONS} - } - - popd () - { - builtin popd "$@" && [ -r .todo ] && devtodo ${TODO_OPTIONS} - } - - # Run todo initially upon login - devtodo ${TODO_OPTIONS} - fi; fi