#1 Le 20/05/2008, à 17:11
- ga6ri3l
Script : génération automatique de liens vers les docs installées
Bonsoir,
J'ai écrit un (tout) petit script python que je trouve pratique : il compile tous les liens vers la documentation se trouvant dans /usr/share en un seul fichier (doc.html), je tenais à vous en faire part
Code:
#!/usr/bin/env python
# -*- coding: cp1252 -*
import os.path, sys
class generateDoc:
def __init__(self):
print 'generate doc...'
self.myfile = open('doc.html','a')
def generateIndexes(self,path):
indexes=[]
for root,dirs,files in os.walk(path):
for i in files:
if i=='index.html':
indexes.append(os.path.join(root,i))
return indexes
def writeEntry(self,line,starter,lasttitle):
pos0 = len(starter)
partline = line[pos0:len(line)]
pos1 = partline.find('/')
title = partline[0:pos1]
if (title!=lasttitle):
if (lasttitle!=''):
self.myfile.write('</dl><dl>')
else:
self.myfile.write('<dl>')
self.myfile.write('<dt><h3>')
self.myfile.write(title)
self.myfile.write('</h3>')
pos2 = partline.find('/index.html')
self.myfile.write('<dt><a href="file://')
self.myfile.write(line)
self.myfile.write('">')
self.myfile.write(partline[0:pos2])
self.myfile.write('</a>')
return title
def writeIndexes(self,indexes):
lasttitle = ''
for line in indexes:
if line.startswith('/usr/share/doc/'):
lasttitle = self.writeEntry(line,'/usr/share/doc/',lasttitle)
else:
lasttitle = self.writeEntry(line,'/usr/share/',lasttitle)
self.myfile.write('</dl>')
self.myfile.close()
if __name__ == "__main__":
gen_doc = generateDoc()
indexes = gen_doc.generateIndexes('/usr/share/')
gen_doc.writeIndexes(indexes)
.
--
Back to the trees !!
roy lewis (Pourquoi j'ai mangé mon père)
Hors ligne