Small fixes to template functions sublist, list_item, and swap_around_comma to strip the list items.

This commit is contained in:
Charles Haley 2011-08-06 15:26:21 +01:00
parent e4e5eb36e7
commit 5d36749474

View File

@ -432,7 +432,7 @@ class BuiltinSwapAroundComma(BuiltinFormatterFunction):
'returns val unchanged') 'returns val unchanged')
def evaluate(self, formatter, kwargs, mi, locals, val): def evaluate(self, formatter, kwargs, mi, locals, val):
return re.sub(r'^(.*?),(.*$)', r'\2 \1', val, flags=re.I) return re.sub(r'^(.*?),\s*(.*$)', r'\2 \1', val, flags=re.I).strip()
class BuiltinIfempty(BuiltinFormatterFunction): class BuiltinIfempty(BuiltinFormatterFunction):
name = 'ifempty' name = 'ifempty'
@ -502,7 +502,7 @@ class BuiltinListitem(BuiltinFormatterFunction):
index = int(index) index = int(index)
val = val.split(sep) val = val.split(sep)
try: try:
return val[index] return val[index].strip()
except: except:
return '' return ''
@ -620,7 +620,8 @@ class BuiltinSublist(BuiltinFormatterFunction):
return '' return ''
si = int(start_index) si = int(start_index)
ei = int(end_index) ei = int(end_index)
val = val.split(sep) # allow empty list items so counts are what the user expects
val = [v.strip() for v in val.split(sep)]
try: try:
if ei == 0: if ei == 0:
return sep.join(val[si:]) return sep.join(val[si:])