Доброго времени суток!
Есть задача редактора некоторых текстовых данных большого объема. Порядка десятков миллионов строк. Делаю редактор на Tcl/tk, пока на базе виджета text. Грузить все данные - слишком медленно и не нужно, редактирование локальное, навигация - либо локальная, в окрестности текущей позиции, либо переходом в какую-то заданную позицию. Глобальная непрерывная навигация не нужна.
Правильнее всего грузить небольшими кусочками, то есть редактор представляет небольшое перемещаемое окно в основной массив данных. Данные берутся с сервера, но это не суть важно.
Вопрос - есть ли готовые виджеты или модификации text, которые бы уже реализовывали эту идею? Хочется простого API, позволяющего задать обработчики событий «подгрузить кусочек X», осуществлять переход по нужному индексу, задавать сами индексы. В моей задаче индексами могут быть номера строк, соответственно, виджет должен сам уметь определять нужный размер окна и запрашивать соответствующие диапазоны индексов для подгрузки. И нужно сохранить основной функционал text (я использую стили, теги, возможности редактирования, событии и т.д.).
Я сделал прототип на базовом text, но получилось слегка кучеряво и неуклюже. Задача вроде достаточно общая, возможно решение уже есть?