Evaluated proc %- {who q} {set plist ""; set parts [split [trim $::playlist($who)] \n]; for {set i 0} {$i < [llength $parts]} {incr i 3} { set part [lrange $parts $i [+ $i 2]]; if {[regexp -nocase $q [. $part]] == 0} { append plist [join $part \n]\n }  }; set ::playlist($who) $plist; %% $who}