LogAttr#
- class LogAttr(*args, **kwargs)#
The PangoLogAttr
structure stores information about the attributes of a
single character.
Fields#
- class LogAttr
- 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_cursor_position
is set). In some languages, the full grapheme (e.g. letter + diacritics) is considered a unit, while in others, each decomposed character in the grapheme is a unit. In the default implementation ofbreak
, this bit is set on all grapheme boundaries except those following Latin, Cyrillic or Greek base characters.
- break_inserts_hyphen#
- When breaking lines before this char, insert a hyphen.
Since: 1.50
- break_removes_preceding#
- When breaking lines before this char, remove the
preceding char. Since 1.50
- is_char_break#
If set, can break here when doing character wrapping
- 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_expandable_space#
- Is a whitespace character that can possibly be
expanded for justification purposes. (Since: 1.18)
- 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_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_boundary
denotes the boundaries there. The second way doesn’t assign between-sentence spaces, etc. to any sentence, sois_sentence_start
/is_sentence_end
mark the boundaries of those sentences.
- is_sentence_end#
- Is first char after a sentence.
Note that in degenerate cases, you could have both
is_sentence_start
andis_sentence_end
set for some character. (e.g. no space after a period, so the next sentence starts right away)
- is_sentence_start#
Is first character in a sentence
- is_white#
Is whitespace character
- 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)
- is_word_end#
- Is first non-word char after a word
Note that in degenerate cases, you could have both
is_word_start
andis_word_end
set for some character.
- is_word_start#
Is first character in a word
- reserved#