### Method

# GtkSource Buffer create_source_mark

#### Declaration [src]

    GtkSourceMark*
    gtk_source_buffer_create_source_mark (
      GtkSourceBuffer* buffer,
      const gchar* name,
      const gchar* category,
      const GtkTextIter* where
    )

#### Description [src]

Creates a source mark in the `buffer` of category `category`.

A source mark is a `GtkTextMark` but organized into categories. Depending on the category a pixbuf can be specified that will be displayed along the line of the mark.

Like a `GtkTextMark`, a `GtkSourceMark` can be anonymous if the passed `name` is `NULL`. Also, the buffer owns the marks so you shouldn’t unreference it.

Marks always have left gravity and are moved to the beginning of the line when the user deletes the line they were in.

Typical uses for a source mark are bookmarks, breakpoints, current executing instruction indication in a source file, etc..

#### Parameters

`name`

  Type: `const gchar*`

  The name of the mark, or `NULL`.

  The argument can be `NULL`.
  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`category`

  Type: `const gchar*`

  A string defining the mark category.

  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`where`

  Type: `GtkTextIter`

  Location to place the mark.

  The data is owned by the caller of the method.

#### Return value

Type: `GtkSourceMark`

A new `GtkSourceMark`, owned by the buffer.

The returned data is owned by the instance.