(block, startColumnIndex)
Traverse document forward. Yield (block, columnIndex, char)
        Raise _TimeoutException if time is over
Traverse document forward. Yield (block, columnIndex, char)
        Raise _TimeoutException if time is over
Traverse document forward . Yield ( block columnIndex char ) Raise _TimeoutException if time is over
def _iterateDocumentCharsBackward(block, startColumnIndex):
        """Traverse document forward. Yield (block, columnIndex, char)
        Raise _TimeoutException if time is over
        """
        # Chars in the start line
        for columnIndex, char in reversed(list(enumerate(block.text()[:startColumnIndex]))):
            yield block, columnIndex, char
        block = block.previous()

        # Next lines
        while block.isValid():
            for columnIndex, char in reversed(list(enumerate(block.text()))):
                yield block, columnIndex, char

            block = block.previous()
def _iterateDocumentCharsBackward ( block , startColumnIndex ) : # Chars in the start line for columnIndex , char in reversed ( list ( enumerate ( block . text ( ) [ : startColumnIndex ] ) ) ) : yield block , columnIndex , char block = block . previous ( ) # Next lines while block . isValid ( ) : for columnIndex , char in reversed ( list ( enumerate ( block . text ( ) ) ) ) : yield block , columnIndex , char block = block . previous ( )