add lt,gt to escape list. Work around $ issue
special case for > and ^