Skip to content

Pango.ScriptIter

record (struct)

A PangoScriptIter is used to iterate through a string and identify ranges in different scripts.

Constructors

new

@classmethod
def new(cls, text: str, length: int) -> ScriptIter

Create a new PangoScriptIter, used to break a string of Unicode text into runs by Unicode script.

No copy is made of text, so the caller needs to make sure it remains valid until the iterator is freed with ScriptIter.free.

Parameters:

  • text — a UTF-8 string
  • length — length of text, or -1 if text is nul-terminated

Methods

free

def free(self) -> None

Frees a PangoScriptIter.

get_range

def get_range(self) -> tuple[str, str, Script | int]

Gets information about the range to which iter currently points.

The range is the set of locations p where start <= p < end. (That is, it doesn't include the character stored at *end)

Note that while the type of the script argument is declared as PangoScript, as of Pango 1.18, this function simply returns GUnicodeScript values. Callers must be prepared to handle unknown values.

next

def next(self) -> bool

Advances a PangoScriptIter to the next range.

If iter is already at the end, it is left unchanged and False is returned.