+<short@k332.feld.cvut.cz> sender template
[nethome.git] / .bashrc
diff --git a/.bashrc b/.bashrc
index e7071ab..570f1ad 100644 (file)
--- a/.bashrc
+++ b/.bashrc
@@ -41,6 +41,14 @@ alias l='ls -lbF'
 alias maple="ssh -t vega.fjfi.cvut.cz maple"
 #alias cc='cc -I/home/short/include'
 alias vi='vim'
+alias grepb='grep --binary-files=binary'
+alias L='lynx'
+alias cvsfiles='cvsutil --files --print'
+alias cvsignores='cvsutil --ignores --print'
+alias cvsignoresall='cvsutil --ignores --workings --print'
+alias cvsignoresrm='cvsutil --ignores --rm'
+alias cvsignoresrmall='cvsutil --ignores --workings --rm'
+alias cvsignoresallrm='cvsutil --ignores --workings --rm'
 
 weberr="/var/log/httpd/error/klokan.error_log"
 if [ -f "$weberr" ];then alias weberr='tail "$weberr"';fi
@@ -54,33 +62,29 @@ export LC_CTYPE=cs_CZ.ISO-8859-2
 export PERL_MM_OPT="PREFIX=$HOME"
 export WWW_HOME="file:///home/short/.bookmarks.html"
 export GREP_OPTIONS="--binary-files=without-match --directories=skip"
+[ -n "$PS1" ] && export PS1="`echo -en '\017'`$PS1"    # set only in interactive sessions
+export MINICOM="-m -c on"      # metakeys+color
+export HISTSIZE=100000
+export HISTFILESIZE="$HISTSIZE"
+export CVS_RSH="ssh"
 
-# even when LANG is set to "en_US" it is lethal - strcoll() starts to sort case-insensitively!
-unset LANG
+# Force strcoll() to sort case-sensitively! (empty/undef doesn't work)
+export LC_COLLATE=C
 
 function cvsdiff    { cvs diff   "$@" 2>&1|pipebuf -q|             less; }; export -f cvsdiff
 function cvsdiffi   { cvs diff   "$@" 2>&1|pipebuf -q|grep -v '^?'|less; }; export -f cvsdiffi
 function cvsupdate  { cvs update "$@" 2>&1|pipebuf -q|             less; }; export -f cvsupdate
 function cvsupdatei { cvs update "$@" 2>&1|pipebuf -q|grep -v '^?'|less; }; export -f cvsupdatei
-function cvsfiles {
-       for i in `find . -name Entries|grep '/CVS/Entries$'`;do
-               j="`echo "$i"|sed 's,CVS/Entries$,,'`"
-               sed -n 's,^/\([^/]*\)/[^-].*$,'"$j"'\1,p' <$i
-               done \
-               | sed 's%^\./%%'
-       }; export -f cvsfiles
-function cvsignore {
-       for i in `find . -name .cvsignore`;do
-               j="`echo "$i"|sed 's,\.cvsignore$,,'`"
-               sed -n 's,^.*$,'"$j"'&,p' <$i
-               done
-       }; export -f cvsignore
-function cvsignorerm { cvsignore | xargs rm -f; }; export -f cvsignorerm
 
 function wclines { awk '{x[$0]++}END{for (i in x) print x[i]"\t"i}'; }; export -f wclines
 function ulimitme { ulimit -m 100000 -d 150000 -v 200000; }; export -f ulimitme
 function grep { ( ulimitme; `which grep` "$@"; ); }; export -f grep
-function rsync { `which rsync` -v -e ssh --progress --stats --partial "$@"; }; export -f rsync
+function finame { find . -false `
+       awk </dev/null 'BEGIN{ for (i=1;i<ARGC;i++) print " -o -iname *"ARGV[i]"*"; }' "$@";
+       `; }; export -f finame
+function mkcd { mkdir -p "$1"; cd "$1"; }; export -f mkcd
+function pushdmk { mkdir -p "$1"; pushd "$1"; }; export -f pushdmk
+function rsync { `which rsync` -v -e ssh --progress --stats --partial --block-size=512 "$@"; }; export -f rsync
 function tohex { od -An -txC /tmp/out|tr -d '\n '|tr 'a-f' 'A-F';echo; }; export -f tohex
 function edall {
        find -type f|while read -r i;do
@@ -88,10 +92,16 @@ function edall {
                done
        }; export -f edall
 function mi { (
-       set -ex;cd "$1";while true;do test "$PWD" != "/";if [ -e configure.in ];then break;fi;cd ..;done;make install;
+       set -ex;cd "$1";while true;do test "$PWD" != "/";if [ -e configure.in -o -e Makefile.PL ];then break;fi;cd ..;done;make install;
        ); };export -f mi
+function ctags {
+       if [ $# != 0 ];then `which ctags` "$@";else
+               rm -f tags;find -type f -a '(' -name "*.[chC]" -o -name "*.cc" -o -name "*.java" ')'|xargs `which ctags` -a --file-tags
+       fi; }; export -f ctags
 
 ulimit -c 0
+set +H
+shopt -s mailwarn
 
 if [ -f "$HOME/.bashrc.local" ];then source "$HOME/.bashrc.local";fi