diff options
author | Godefroid Chapelle <gotcha@bubblenet.be> | 2007-06-06 15:41:55 +0000 |
---|---|---|
committer | Godefroid Chapelle <gotcha@bubblenet.be> | 2007-06-06 15:41:55 +0000 |
commit | 09616d8f32774f813620182973ae0c1c816abd3c (patch) | |
tree | 0890adcb2382ac55c9d5f873447629b4e0400035 | |
parent | de325e0fd4e4358dd2abe12e909962e6169fc99a (diff) | |
download | zope-tal-09616d8f32774f813620182973ae0c1c816abd3c.tar.gz |
normalize is now interp level code
-rw-r--r-- | src/zope/tal/_talinterpreter/__init__.py (renamed from src/zope/tal/talinterpreter/__init__.py) | 4 | ||||
-rw-r--r-- | src/zope/tal/_talinterpreter/applevel.py (renamed from src/zope/tal/talinterpreter/applevel.py) | 11 | ||||
-rw-r--r-- | src/zope/tal/_talinterpreter/interplevel.py | 10 | ||||
-rw-r--r-- | src/zope/tal/tests/test_talinterpreter.py | 2 |
4 files changed, 17 insertions, 10 deletions
diff --git a/src/zope/tal/talinterpreter/__init__.py b/src/zope/tal/_talinterpreter/__init__.py index 1222489..53f5afb 100644 --- a/src/zope/tal/talinterpreter/__init__.py +++ b/src/zope/tal/_talinterpreter/__init__.py @@ -4,9 +4,11 @@ class Module(MixedModule): """interpreter module.""" interpleveldefs = { + 'normalize' : 'interplevel.normalize', } appleveldefs = { 'TALInterpreter' : 'applevel.TALInterpreter', - 'normalize' : 'applevel.normalize', } + + diff --git a/src/zope/tal/talinterpreter/applevel.py b/src/zope/tal/_talinterpreter/applevel.py index 3f585d8..ae6c1ae 100644 --- a/src/zope/tal/talinterpreter/applevel.py +++ b/src/zope/tal/_talinterpreter/applevel.py @@ -26,6 +26,7 @@ from zope.tal.taldefs import getProgramVersion, getProgramMode from zope.tal.translationcontext import TranslationContext from zope.tal.alttalgenerator import AltTALGenerator +import _talinterpreter # Avoid constructing this tuple over and over I18nMessageTypes = (Message,) @@ -46,12 +47,6 @@ BOOLEAN_HTML_ATTRS = frozenset([ _nulljoin = ''.join _spacejoin = ' '.join -def normalize(text): - # Now we need to normalize the whitespace in implicit message ids and - # implicit $name substitution values by stripping leading and trailing - # whitespace, and folding all internal whitespace to a single space. - return _spacejoin(text.split()) - class MacroStackItem(object): @@ -610,7 +605,7 @@ class TALInterpreter(object): if self.html and self._currentTag == "pre": value = tmpstream.getvalue() else: - value = normalize(tmpstream.getvalue()) + value = _talinterpreter.normalize(tmpstream.getvalue()) finally: self.restoreState(state) else: @@ -673,7 +668,7 @@ class TALInterpreter(object): if self.html and currentTag == "pre": msgid = default else: - msgid = normalize(default) + msgid = _talinterpreter.normalize(default) self.i18nStack.pop() # See if there is was an i18n:data for msgid if len(stuff) > 2: diff --git a/src/zope/tal/_talinterpreter/interplevel.py b/src/zope/tal/_talinterpreter/interplevel.py new file mode 100644 index 0000000..e942d9a --- /dev/null +++ b/src/zope/tal/_talinterpreter/interplevel.py @@ -0,0 +1,10 @@ +from pypy.interpreter.baseobjspace import ObjSpace + +def normalize(space, text): + # Now we need to normalize the whitespace in implicit message ids and + # implicit $name substitution values by stripping leading and trailing + # whitespace, and folding all internal whitespace to a single space. + result = ' '.join(text.split()) + return space.wrap(result) +normalize.unwrap_spec = [ObjSpace, str] + diff --git a/src/zope/tal/tests/test_talinterpreter.py b/src/zope/tal/tests/test_talinterpreter.py index 989c942..d12b72e 100644 --- a/src/zope/tal/tests/test_talinterpreter.py +++ b/src/zope/tal/tests/test_talinterpreter.py @@ -29,7 +29,7 @@ from zope.tal.talparser import TALParser #from zope.tal.talinterpreter import TALInterpreter from pypy.interpreter.mixedmodule import testmodule -talinterpreter = testmodule('talinterpreter', 'zope.tal') +talinterpreter = testmodule('_talinterpreter', 'zope.tal') TALInterpreter = talinterpreter.TALInterpreter from zope.tal.talgenerator import TALGenerator |