tout.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #-------------------------------------------
  2. def addpath(x,ajout):
  3. # if faut transformesr les chemins vers les images
  4. if "includegraphics" in x:
  5. return x.replace("{",ajout)
  6. else:
  7. return x
  8. # Récupérer la liste des textes à introduire
  9. #
  10. with open("all_texts") as f:
  11. lf= f.readlines()
  12. templat= "../tpl.tex"
  13. #
  14. with open(templat) as f:
  15. Ltmpl=f.readlines()
  16. # ne garder du template que le début
  17. Lall=[]
  18. for l in Ltmpl:
  19. if "%@@debut" in l:
  20. break
  21. else:
  22. Lall.append(l)
  23. #
  24. # parcourir les fichiers à assembler:
  25. #
  26. for l in lf:
  27. lok="../"+l.replace("\n","")
  28. print(lok)
  29. with open(lok) as g:
  30. LL=g.readlines()
  31. # insérer ce qui entre %@@debut et "%@@fin":
  32. start= False
  33. Z= []
  34. for x in LL:
  35. if "%@@debut" in x:
  36. start= True
  37. if "%@@fin" in x:
  38. break
  39. if start:
  40. Z.append(x)
  41. # graphiques: modifier les chemins:
  42. ajout="{../"+l.split("/")[0]+"/"
  43. Lall+=[addpath(x,ajout) for x in Z if not "newcounter" in x]
  44. Lall.append("\\eject\n")
  45. #
  46. # sauver le resultat....
  47. with open("final.tex","w") as f:
  48. for x in Lall[:-1]:
  49. f.write(x)
  50. #-----------------------------------------------------------
  51. f.write("\\tableofcontents\n")
  52. f.write("\\end{document}\n")