--- /dev/null
+#!/bin/sh
+set -e
+titlebase="$1"
+shift
+touch "$HOME/.counters/l.$DISPLAY"
+newcount=`with-lock-ex -w "$HOME/.counters/l.$DISPLAY" perl -e '
+ chdir($ARGV[2]) or die $!;
+ $tb= unpack("H*",$ARGV[1]); $found=0;
+ open(X,"v.$ARGV[0]\0") or die $!;
+ open(Z,">n.$ARGV[0]\0") or die $!;
+ while (<X>) {
+ if (m/^(\d+) $tb$/o && !$found++) {
+ $nx= $1+1;
+ } else {
+ print Z "$_" or die $!;
+ }
+ }
+ if (!defined($nx)) { $nx= 1; }
+ print Z "$nx $tb\n" or die $!;
+ close(Z) or die $!;
+ rename("n.$ARGV[0]","v.$ARGV[0]") or die $!;
+ print "$nx\n";
+' "$DISPLAY" "$titlebase" "$HOME/.counters"`
+exec xterm -T "$titlebase"' ['$newcount']' "$@"