Called to indicate that the buffer operations between here and a call to the function gtk-text-buffer-end-user-action are part of a single user-visible operation. The operations between the functions gtk-text-buffer-begin-user-action and gtk-text-buffer-end-user-action can then be grouped when creating an undo stack. gtk-text-buffer maintains a count of calls to gtk-text-buffer-begin-user-action that have not been closed with a call to the function gtk-text-buffer-end-user-action, and emits the "begin-user-action" and "end-user-action" signals only for the outermost pair of calls. This allows you to build user actions from other user actions.
The "interactive" buffer mutation functions, such as the function gtk-text-buffer-insert-interactive, automatically call begin/end user action around the buffer operations they perform, so there is no need to add extra calls if you user action consists solely of a single call to one of those functions.