Description
These two aliases allow for greater hashtable manipulation by adding/removing specified text to/from a table item's data.
Uses
$haddtok(table,item,text,C) - Uses $addtok to add text into an item's data.
$hremtok(table,item,text,N,C) - Deletes (the Nth matching) text from an item's data using $remtok.
alias haddtok {
if ($isid) hadd -m $1-2 $addtok($hget($1,$2),$3,$$4)
else echo $color(info) * /haddtok syntax: $haddtok(table,item,text,C)
}
alias hremtok {
if ($isid) {
if ($hget($1,$2)) hadd $1-2 $remtok($hget($1,$2),$3,$4,$$5)
else echo $color(info) * /hremtok: Error, no such $iif(!$hget($1),table,item) $iif($2,( $+ $2 $+ ))
}
else echo $color(info) * /hremtok syntax: $hremtok(table,item,text,N,C)
}
I would redo the $haddtok as below.
alias haddtok {
if ($isid) {
hadd $iif(!$hget($1),-m) $1-2 $addtok($hget($1,$2),$4-,$3)
}
}
New order would be --> $haddtok(Table,Item,C,Text)
1) Creates table if not created.
2) Allows entry of more than item into item.
Can shorten $hremtok to the below
alias hremtok {
if ($isid) {
if ( (!$hget($1)) || (!$hget($1,$2)) ) { echo -ag Error. No such $iif(!$hget($1), Table., Item.) }
else { hadd $1-2 $remtok($hget($1,$2),$3,$4,$5) }
}
}