Commit 328b6d00 authored by john's avatar john

updating StructuredTextNG ST.py

parent ac442f42
...@@ -85,7 +85,7 @@ ...@@ -85,7 +85,7 @@
############################################################################## ##############################################################################
import re import re
from string import split,join,replace,expandtabs from string import split,join,replace,expandtabs,strip
def indention(str): def indention(str):
...@@ -97,7 +97,7 @@ def indention(str): ...@@ -97,7 +97,7 @@ def indention(str):
if str == '\n': if str == '\n':
return -1 return -1
str = expandtabs(str) # covert tabs into spaces #str = expandtabs(str) # covert tabs into spaces
front = re.compile('( *)') front = re.compile('( *)')
m = front.match(str) m = front.match(str)
...@@ -161,10 +161,16 @@ def split_paragraphs(paragraphs): ...@@ -161,10 +161,16 @@ def split_paragraphs(paragraphs):
tmp = '' tmp = ''
par = re.compile('\n[ ]*\n') par = re.compile('\n[ ]*\n')
if type(paragraphs).__name__ == "list":
for paragraph in paragraphs: for paragraph in paragraphs:
tmp = tmp + paragraph tmp = tmp + expandtabs(paragraph)
paragraphs = par.split(tmp) paragraphs = par.split(tmp)
elif type(paragraphs).__name__ == "string":
paragraphs = par.split(expandtabs(paragraphs))
else:
print "paragraphs in unacceptable format, must be string or list"
return []
for i in range(len(paragraphs)): for i in range(len(paragraphs)):
paragraphs[i] = paragraphs[i] + '\n\n' paragraphs[i] = paragraphs[i] + '\n\n'
...@@ -190,11 +196,15 @@ def StructuredText(paragraphs): ...@@ -190,11 +196,15 @@ def StructuredText(paragraphs):
paragraphs = split_paragraphs(paragraphs) paragraphs = split_paragraphs(paragraphs)
for paragraph in paragraphs : if not paragraphs:
result = ["",[]]
return result
for paragraph in paragraphs:
if paragraph == '\n': if paragraph == '\n':
ind.append([-1, paragraph]) ind.append([-1, paragraph])
else : else :
ind.append([indention(paragraph), paragraph]) ind.append([indention(paragraph), strip(paragraph)+"\n"])
for indent,paragraph in ind : for indent,paragraph in ind :
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment