I have 2 questions regarding /echo, and would like some help in solving them.

1) For some reason the echo in the code below does not apply the highlight settings to the line (line color, sound, etc). Surprisingly, it works if I add any character between $chan and $1- . Basically, I need someone to verify if the code works as intended for them.
Code:
on ^*:text:*:#:{
   if ($highlight($1-)) && ($1 !isnum) {
   haltdef
   echo -tmlc highlight $chan $1-
   }
}


2) This problem is unrelated to the first one. I find that when I /echo into a channel window that has logging enabled, a timestamp will automatically be added to the line in the log, even if I don't use the -t switch. Is there a way to modify this behavior? For example, consider the following code:

Code:
//echo -a $timestamp 6text


This code will display as I intend it in the channel window, but it is written to the log as [timestamp][timestamp] text, which is not what I want. I know I can disable the timestamp in the options, but if I do that, any /echo -t that I have won't have the timestamp in the log, which is again not what I want.

Any help for these two problems is appreciated!