relax the $fn pattern a little to make it stop consuming colons meant to be picked up by $pos
Clear the highlights when the command starts instead of when it completes. Arrange for highlights to be applied while output is being streamed.
Do the streaming highlighting via gs.do to preserve thread safety
Send attrs to the client when command output is being flushed.