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:
objectPreprocess #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:
objectA 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)¶