Хайлайтер по сигнатурам светит. Во всяком случае такого его предназначение
А то, что загружается текст и сохраняется текст - разница? html, напомню - язык Текстовой разметки
В принципе иных решений... Не вижу пока.
update: можно конечно попробовать сделать model-view, но там такой кипешь будет, особенно с хранением каждого символа с его характеристика и прочим
QPlainTextEdit на таком же принципе сделан и при 10к строк он вполне себе пожирает 1-2 гб памяти