Reference link about text editors and advanced content:
In this ticket there are interesting points to be covered:
The lower level algorithms are one thing, but it’s probably more key to understand the higher level abstractions and design of something like this to see how to put together a text engine.
I agree, start with low level and advanced, have a starting point.