/**
  * Highlights a text node
  *
  * @param DOMNode $node The text node to highlight
  */
 protected function doHighlightTextNode(DOMNode $node)
 {
     foreach ($this->tokenize($node->textContent) as $token) {
         $node->splitText($token->getEnd());
         $matched = $node->splitText($token->getStart());
         $highlighted = $this->document->createDocumentFragment();
         $highlighted->appendXML($token->getKeyword()->getHighlighter()->highlight($token->getText()));
         $node->parentNode->replaceChild($highlighted, $matched);
     }
 }