',
data,
1
)
elif re.search('^#!syntax', middle_data[0]):
middle_data_2 = re.search('{{{#!syntax ((?:(?!\n).)+)\n?', data)
if middle_data_2:
middle_data_2 = middle_data_2.groups()
else:
middle_data_2 = ['python']
if syntax_num == 0:
plus_data += 'hljs.initHighlightingOnLoad();\n'
syntax_num = 1
middle_list += ['pre']
data = re.sub(
'{{{#!syntax ?((?:(?!\n).)*)\n?',
'
',
data,
1
)
elif re.search('^#!folding', middle_data[0]):
middle_list += ['2div']
folding_data = re.search('{{{#!folding ?((?:(?!\n).)*)\n?', data)
if folding_data:
folding_data = folding_data.groups()
else:
folding_data = ['Test']
data = re.sub(
'{{{#!folding ?((?:(?!\n).)*)\n?', '' + \
'' + \
str(folding_data[0]) + ' ' + \
'
' + \
'
' + \
'[+]' + \
'' + \
'' + \
'
' + \
'
',
data,
1
)
folding_num += 1
elif re.search('^#!html', middle_data[0]):
middle_list += ['span']
html_num += 1
data = middle_re.sub('
', data, 1)
else:
middle_list += ['span']
data = middle_re.sub('', data, 1)
else:
middle_list += ['code']
middle_stack += 1
data = middle_re.sub('' + middle_data[0].replace('\\', '\\\\'), data, 1)
middle_num += 1
else:
if middle_list == []:
data = middle_re.sub('', data, 1)
else:
if middle_stack > 0:
middle_stack -= 1
if middle_stack > 0:
data = middle_re.sub('', data, 1)
else:
if middle_num > 0:
middle_num -= 1
if middle_list[middle_num] == '2div':
data = middle_re.sub('', data, 1)
elif middle_list[middle_num] == 'pre':
data = middle_re.sub('', data, 1)
else:
data = middle_re.sub('' + middle_list[middle_num] + '>', data, 1)
del(middle_list[middle_num])
while 1:
if middle_stack == 0:
break
else:
if middle_list == []:
data += ''
else:
if middle_stack > 0:
middle_stack -= 1
if middle_stack > 0:
data += ''
else:
if middle_num > 0:
middle_num -= 1
if middle_list[middle_num] == '2div':
data += ''
elif middle_list[middle_num] == 'pre':
data += ''
else:
data += '' + middle_list[middle_num] + '>'
del(middle_list[middle_num])
data = data.replace('', '{{{')
data = data.replace('', '}}}')
while 1:
nowiki_data = re.search('((?:(?:(?!<\/code>).)*\n*)*)<\/code>', data)
if nowiki_data:
nowiki_data = nowiki_data.groups()
nowiki_num += 1
end_data['nowiki_' + str(nowiki_num)] = nowiki_data[0]
plus_data += 'document.getElementById("nowiki_' + str(nowiki_num) + '").innerHTML = "' + nowiki_js(nowiki_data[0]) + '";\n'
data = re.sub(
'((?:(?:(?!<\/code>).)*\n*)*)<\/code>',
'',
data,
1
)
else:
break
while 1:
syntax_data = re.search('|<).)+)">((?:\n*(?:(?:(?!<\/code>||<).)+)">((?:\n*(?:(?:(?!<\/code>|',
data,
1
)
else:
break
return data
def namumark(conn, data, title, main_num, include_num):
curs = conn.cursor()
global plus_data
global end_data
global nowiki_num
nowiki_num = 0
data = '\n' + data + '\n'
include_num = include_num + '_' if include_num else ''
plus_data = 'get_link_state("' + include_num + '");\nget_file_state("' + include_num + '");\n'
backlink = []
end_data = {}
data = re.sub('