diff options
| author | Jesús Leganés Combarro "Piranna" <piranna@gmail.com> | 2012-06-10 14:04:58 +0200 |
|---|---|---|
| committer | Jesús Leganés Combarro "Piranna" <piranna@gmail.com> | 2012-06-10 14:04:58 +0200 |
| commit | 378f7a4b1f0b7a63e19075b9007aae25f272f344 (patch) | |
| tree | 4ecb8158f880382874875b52640a54bf6df25900 /sqlparse | |
| parent | 54cd5c95d9af7037e1b96a726506ceb5df4f43a5 (diff) | |
| download | sqlparse-378f7a4b1f0b7a63e19075b9007aae25f272f344.tar.gz | |
Fixed issue #6
It needs a "hack" at first identifier since we can't be able to access
to it's previous whitespace, and also we would need more work to get the
offset taking in account the previous tokens, so by the moment we leave
only normal whitespaces.
Diffstat (limited to 'sqlparse')
| -rw-r--r-- | sqlparse/filters.py | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/sqlparse/filters.py b/sqlparse/filters.py index 401c436..762f6ef 100644 --- a/sqlparse/filters.py +++ b/sqlparse/filters.py @@ -476,20 +476,27 @@ class ReindentFilter: for token in identifiers: if not ignore and not token.ttype: prev = tlist.token_prev(token, False) - if prev and prev.ttype == T.Whitespace: - value = prev.value - - spaces = 0 - while value and value[-1] == ' ': - value = value[:-1] - spaces += 1 - - value += self._gentabs(spaces + offset) - prev.value = value + if prev: + if prev.ttype == T.Whitespace: + value = prev.value + + spaces = 0 + while value and value[-1] == ' ': + value = value[:-1] + spaces += 1 + + value += self._gentabs(spaces + offset) + prev.value = value + else: + ws = sql.Token(T.Whitespace, + self._gentabs(offset)) + tlist.insert_before(token, ws) + + # Just first identifier else: - ws = sql.Token(T.Whitespace, - self._gentabs(offset)) + ws = sql.Token(T.Whitespace, ' ' * offset) tlist.insert_before(token, ws) + ignore = token.ttype # Decrease offset the size of the first token |
