'Consume input until a non-whitespace character is encountered.
The non-whitespace character is then ungotten, and the number of
whitespace characters consumed is returned.
If the tokenizer is in multiline mode, then newlines are whitespace.
@rtype: int'

def skip_whitespace(self):

    skipped = 0
    while True:
        c = self._get_char()
        if ((c != '    ') and (c != ' DCTB ')):
            if ((c != '\n') or (not self.multiline)):
                self._unget_char(c)
                return skipped
        skipped += 1
