Я хотел бы расширить приложение для работы с расширенным текстом, чтобы каждое слово в редакторе было помечено либо некоторыми метаданными, либо уникальным идентификатором, который затем можно перекрестно ссылаться на dict, содержащий эти метаданные.
Я задал похожий вопрос о том, как сделать это, используя tkinter и python, используя теги: Можно ли использовать собственный объект вместо String внутри текстового виджета Tkinter (python)? .
Помеченное решение было очень полезным, и я смог создать приложение tkinter, но оно сталкивается с трудностями при работе с большим количеством тегов / текста.Поэтому мне не интересно, есть ли более простое / более надежное решение.
Самое близкое, что мне кажется похожим на то, что я хочу, - это редактор WSIWYG, который принимает текст разметки и отображает его в соответствии с некоторыми правилами преобразования., но также позволяет редактировать этот текст.
Я думаю, это может быть в формате XML: <word id=1>Hello</word><word id=2>Word</word>
Или в формате RTF (хотя мне неясно, можете ли вы создать уникальные контрольные слова, которые будут сохраняться, и я нееще знакомы с синтаксисом RTF) или даже в виде простого текста, используя некоторый разделитель, который приложение будет отбрасывать для отображения, но сохранит ссылку на: т.е. Hello:>1 World:>
Я видел учебник по Draft.js: https://medium.com/@siobhanpmahoney/building-a-rich-text-editor-with-draft-js-react-redux-and-rails-ef8d2e2897bf, кажется, предлагает хороший вариант, хотя мне было интересно, есть ли более простое решение, прежде чем я попытаюсь изучить API.В идеале я хотел бы найти решение на python, но я открыт для других языков.
Спасибо за любые рекомендации.