Struct
Pango.LogAttr
Description [src]
struct PangoLogAttr {
guint is_line_break;
guint is_mandatory_break;
guint is_char_break;
guint is_white;
guint is_cursor_position;
guint is_word_start;
guint is_word_end;
guint is_sentence_boundary;
guint is_sentence_start;
guint is_sentence_end;
guint backspace_deletes_character;
guint is_expandable_space;
guint is_word_boundary;
}
The PangoLogAttr
structure stores information about the attributes of a
single character.
Structure members
is_line_break |
if set, can break line in front of character |
is_mandatory_break |
if set, must break line in front of character |
is_char_break |
if set, can break here when doing character wrapping |
is_white |
is whitespace character |
is_cursor_position |
if set, cursor can appear in front of character. i.e. this is a grapheme boundary, or the first character in the text. This flag implements Unicode’s Grapheme Cluster Boundaries semantics. |
is_word_start |
is first character in a word |
is_word_end |
is first non-word char after a word
Note that in degenerate cases, you could have both |
is_sentence_boundary |
is a sentence boundary.
There are two ways to divide sentences. The first assigns all
inter-sentence whitespace/control/format chars to some sentence,
so all chars are in some sentence; |
is_sentence_start |
is first character in a sentence |
is_sentence_end |
is first char after a sentence.
Note that in degenerate cases, you could have both |
backspace_deletes_character |
if set, backspace deletes one character
rather than the entire grapheme cluster. This field is only meaningful
on grapheme boundaries (where |
is_expandable_space |
is a whitespace character that can possibly be expanded for justification purposes. (Since: 1.18) |
is_word_boundary |
is a word boundary, as defined by UAX#29. More specifically, means that this is not a position in the middle of a word. For example, both sides of a punctuation mark are considered word boundaries. This flag is particularly useful when selecting text word-by-word. This flag implements Unicode’s Word Boundaries semantics. (Since: 1.22) |