# HG changeset patch # User amit@thunder # Date 1268159665 -19800 # Node ID d0e9b52bda73483970c0c6cd13fc4bc4989855e3 # Parent 134b87b382f56d2a823e86cd986782cbd9c2a630 Changed the algorithm for getting the titles ... Also added the ability to navigate to the next chapters diff -r 134b87b382f5 -r d0e9b52bda73 SEESenv/scripts/changenames.py --- a/SEESenv/scripts/changenames.py Thu Mar 04 14:33:38 2010 +0530 +++ b/SEESenv/scripts/changenames.py Wed Mar 10 00:04:25 2010 +0530 @@ -10,11 +10,10 @@ reg_obj=re.compile(os.path.join(repo,'ch1[0-9].*.html')) if (reg_obj.match(name)): changed_name=re.sub('ch1','chn1',name) - command2="rm %s" %(name,) + else: changed_name=name - command1="cp %s %s" %(name ,changed_name) - subprocess.Popen(command1,shell=True) + command="mv %s %s" %(name ,changed_name) + subprocess.Popen(command,shell=True) time.sleep(2) - subprocess.Popen(command2,shell=True) - time.sleep(1) + diff -r 134b87b382f5 -r d0e9b52bda73 SEESenv/scripts/finalhtml.py --- a/SEESenv/scripts/finalhtml.py Thu Mar 04 14:33:38 2010 +0530 +++ b/SEESenv/scripts/finalhtml.py Wed Mar 10 00:04:25 2010 +0530 @@ -2,25 +2,90 @@ #import lxml import re import os -from BeautifulSoup import BeautifulSoup +from BeautifulSoup import BeautifulSoup ,NavigableString import time import sys +import xml.etree.ElementTree as ET +import xml + repo='/home/hg/repos/SEES-hacks/temp/' +#repo='/home/amit/testdocbook2/' +def sort_doubledigit(chapter_names): + for item in chapter_names: + reg_obj=re.compile(os.path.join(repo,'ch1[0-9].*.html')) + if (reg_obj.match(item)): + item_tmp=item + chapter_names.remove(item) + chapter_names.append(item_tmp) + return chapter_names def finalchanges(file_name,html_string): """some of the final changes that need to do be done on the html before creating the final usable page in the hgbook project""" # print html_string replace_string="""Chapter 2. Basic Python""" + ch_name=os.path.split(file_name)[1].split('.')[0] + chapter_names_unsorted=glob.glob(os.path.join(repo,'ch*.html')) + chapter_names_unsorted.sort() + chapter_names_sorted=chapter_names_unsorted +# print chapter_names_sorted + chapter_names_sorted=sort_doubledigit(chapter_names_sorted) + chapter_names=chapter_names_sorted + previous_string='<<<' + next_string='>>>' + html_src_folder="review/html/" + current_chapter_index=chapter_names.index(file_name) + + current_chapter=os.path.join(html_src_folder,chapter_names[current_chapter_index].split('/')[-1]) + if (current_chapter_index-1>0): + previous_chapter=os.path.join(html_src_folder,chapter_names[current_chapter_index-1].split('/')[-1]) + else: + previous_chapter='' + previous_string='' + try : + next_chapter=os.path.join(html_src_folder,chapter_names[current_chapter_index+1].split('/')[-1]) + except: + next_string='' + next_chapter='' + + ch_name_tmp=file_name.split('.')[0] + chapter_xml=ch_name_tmp+'.xml' + + + try: + xml_file =open(chapter_xml,'r').read() + xml_tree=ET.fromstring(xml_file) + try: + title_tag=xml_tree.find('title') + current_chapter_title=title_tag.text + except: + section=xml_tree.getchildren()[0] + title_tag=section.find('title') + current_chapter_title=title_tag.text + + print current_chapter_title + +# soup.html.body.insert(0,NavigableString(body_add_string)) + + + except : + ch_title=re.split('[0-9]*',ch_name)[1] + title_string='Chapter. '+ ch_title + current_chapter_title=title_string + + + + body_add_string="""
Chapter %s
%s %s
"""%(current_chapter_title,previous_chapter,previous_string,next_chapter,next_string) + + + + + reg_obj=re.compile('.*',re.DOTALL) html_string=reg_obj.sub(replace_string, html_string,re.DOTALL) html_string=re.sub('>>file_obj ,soup - + print file_name diff -r 134b87b382f5 -r d0e9b52bda73 SEESenv/scripts/myrst2xml.py --- a/SEESenv/scripts/myrst2xml.py Thu Mar 04 14:33:38 2010 +0530 +++ b/SEESenv/scripts/myrst2xml.py Wed Mar 10 00:04:25 2010 +0530 @@ -47,6 +47,7 @@ for readline in open('/home/hg/repos/SEES-hacks/index.config','r').readlines(): chapterno+=1 filename=repo+readline + print filename convert2xml(filename)