Cheetah.Utils.Indenter module¶
Indentation maker. @@TR: this code is unsupported and largely undocumented …
This version is based directly on code by Robert Kuzelj <robert_kuzelj@yahoo.com> and uses his directive syntax. Some classes and attributes have been renamed. Indentation is output via $self._CHEETAH__indenter.indent() to prevent ‘_indenter’ being looked up on the searchList and another one being found. The directive syntax will soon be changed somewhat.
- class Cheetah.Utils.Indenter.IndentProcessor¶
- Bases: - object- Preprocess #indent tags. - ARGS = 'args'¶
 - CHAR = 'char'¶
 - DEC = '--'¶
 - DIRECTIVE = re.compile('[ \\t]*#')¶
 - INC = '++'¶
 - INDENT_DIR = re.compile('[ \\t]*#indent[ \\t]*(?P<args>.*)')¶
 - LINE_SEP = '\n'¶
 - OFF = 'off'¶
 - ON = 'on'¶
 - POP = 'pop'¶
 - PUSH = 'push'¶
 - SET = '='¶
 - WHITESPACES = re.compile('(?P<ws>[ \\t]*)')¶
 - WS = 'ws'¶
 - process(_txt)¶
 
- class Cheetah.Utils.Indenter.Indenter¶
- Bases: - object- A class that keeps track of the current indentation level. .indent() returns the appropriate amount of indentation. - Chars = ' '¶
 - Level = 0¶
 - LevelStack = []¶
 - On = 1¶
 - dec()¶
- decrement can only be applied to values greater zero values below zero don’t make any sense at all! 
 - inc()¶
 - indent(_default=0)¶
 - off()¶
 - on()¶
 - pop()¶
- the levestack can not become -1. any attempt to do so sets the level to 0! 
 - push()¶
 - setChar(_chars)¶
 - setLevel(_level)¶
- the leve can’t be less than zero. any attempt to do so sets the level automatically to zero! 
 
- Cheetah.Utils.Indenter.indentize(source)¶