You may wish to begin by reading the text widget conceptual overview which gives an overview of all the objects and data types
related to the text widget and how they work together.
Tags should be in the TextTagTable for a given
TextBuffer before using them with that buffer.
create_tag is the best way to create tags. See “gtk3-demo” for numerous
examples.
For each property of TextTag, there is a “set” property, e.g. “font-set” corresponds to “font”.
These “set” properties reflect whether a property has been set or not. They are maintained by GTK+ and you should not set them
independently.