By default, [class@View] can auto-indent as you type when [property@View:auto-indent] is enabled. The indentation simply copies the
previous lines indentation.
This can be changed by implementing `GtkSourceIndenter` and setting the [property@View:indenter] property.
[[email protected]_trigger] is called upon key-press to determine of the key press should trigger an indentation. The default
implementation of the interface checks to see if the key was [[email protected]_Return] or [[email protected]_KP_Enter] without
gdk_shift_mask set.
[[email protected]] is called after text has been inserted into [class@Buffer] when [[email protected]_trigger] returned
true. The [[email protected]] is placed directly after the inserted character or characters.
It may be beneficial to move the insertion mark using [[email protected]_range] depending on how the indenter changes the
indentation.
All changes are encapsulated within a single user action so that the user may undo them using standard undo/redo accelerators.