--- trunk/dwm-popup 2007/07/28 19:54:34 42 +++ trunk/dwm-popup 2007/08/22 21:06:52 51 @@ -1,14 +1,44 @@ #!/bin/sh -x -name="wmrxvt-popup" -term="rxvt -geometry 100x30+100-0 -name $name -fn neep-alt-iso8859-2-24 -rv +sb -n $name -ls -e dwm-popup-term" +uid="$1" +test -z "$uid" && uid="null" +name="dwm-popup-$uid" +id_f="/dev/shm/$name.id" -if [ ! -e /tmp/popup.id ] ; then +function start() { + id=`xwit -current -print | cut -d: -f1` + echo "*** start uid $uid id $id to $id_f ***" + echo $id > $id_f + $@; + rm -f $id_f; + exit +} + +if [ "$2" == "term" ] ; then + case $uid in + a) start screen -R -S $name ;; + s) start screen -R -S $name irssi ;; + *) start bash ;; + esac +fi + + +case $uid in +a) g="100x43+100-20"; f="neep-alt-iso8859-2-24" ;; +s) g="130x48-35-35"; f="neep-alt-iso8859-2-18" ;; +*) g="80x25+100+100"; f="neep-alt-iso8859-2-18" ; echo "*** default ***" ;; +esac + +xterm=`which rxvt-2.7.10 || whixh rxvt` +term="$xterm -geometry $g -name $name -fn $f -rv +sb -n $name -ls -e $0 $uid term" +echo "*** using term: $term ***" + +if [ ! -e $id_f ] ; then $term else - id=`cat /tmp/popup.id` + id=`cat $id_f` info=`xwininfo -id $id` - echo "*** $id ***" + echo "*** $id from $id_f = $info ***" test ! -z "$info" && ( op="-unmap" echo $info | grep 'Map State: IsViewable' > /dev/null || op="-pop"