Another command

This commit is contained in:
Benjamin Bohard 2021-01-29 16:54:51 +01:00
parent 14cbf47527
commit 0f63031575
1 changed files with 15 additions and 1 deletions

View File

@ -5,6 +5,7 @@ import argparse
import re import re
import random import random
import time import time
import subprocess
from os import path, makedirs, listdir from os import path, makedirs, listdir
from jinja2 import Environment, FileSystemLoader from jinja2 import Environment, FileSystemLoader
import pygit2 import pygit2
@ -273,6 +274,12 @@ def main():
with open(dest, 'w') as rendered_file: with open(dest, 'w') as rendered_file:
rendered_file.write(rendered_template) rendered_file.write(rendered_template)
def tex_compile(args):
master_files = [path.join('presentations', args.directory, tex_file)
for tex_file in ['diaporama.tex', 'programme.tex', 'support.tex']]
for master_file in master_files:
subprocess.call(['rubber', '--inplace', '-c shell_escape', '--unsafe', '--module=xelatex', master_file])
@git_integration @git_integration
def outline(args): def outline(args):
@ -406,7 +413,6 @@ def main():
subparsers = parser.add_subparsers(help='Aide des sous-commandes') subparsers = parser.add_subparsers(help='Aide des sous-commandes')
parser_init = subparsers.add_parser('init', help='Initialisation du fichier maître') parser_init = subparsers.add_parser('init', help='Initialisation du fichier maître')
parser_init.add_argument('-f', '--format', help="Format du document", required=True) parser_init.add_argument('-f', '--format', help="Format du document", required=True)
#parser_init.add_argument('-n', '--name', help="Nom du fichier à créer", required=True)
parser_init.add_argument('-a', '--author', help="Auteur de la formation") parser_init.add_argument('-a', '--author', help="Auteur de la formation")
parser_init.add_argument('-c', '--client', help="Client") parser_init.add_argument('-c', '--client', help="Client")
parser_init.add_argument('-t', '--title', help="Titre de la formation") parser_init.add_argument('-t', '--title', help="Titre de la formation")
@ -414,12 +420,20 @@ def main():
parser_init.add_argument('-d', '--directory', help="Sous-répertoires où créer le fichier", required=True) parser_init.add_argument('-d', '--directory', help="Sous-répertoires où créer le fichier", required=True)
parser_init.add_argument('-i', '--institutes', nargs='*', help="Instituts dont les logos sont requis") parser_init.add_argument('-i', '--institutes', nargs='*', help="Instituts dont les logos sont requis")
parser_init.set_defaults(func=init) parser_init.set_defaults(func=init)
parser_update = subparsers.add_parser('update', help='Mise à jour des fichiers inclus') parser_update = subparsers.add_parser('update', help='Mise à jour des fichiers inclus')
parser_update.add_argument('-d', '--directory', help="Sous-répertoires contenant le diaporama", required=True) parser_update.add_argument('-d', '--directory', help="Sous-répertoires contenant le diaporama", required=True)
parser_update.set_defaults(func=update) parser_update.set_defaults(func=update)
parser_outline = subparsers.add_parser('outline', help="Création du programme à partir du fichier maître") parser_outline = subparsers.add_parser('outline', help="Création du programme à partir du fichier maître")
parser_outline.add_argument('-d', '--directory', help="Sous-répertoires contenant le diaporama", required=True) parser_outline.add_argument('-d', '--directory', help="Sous-répertoires contenant le diaporama", required=True)
parser_outline.set_defaults(func=outline) parser_outline.set_defaults(func=outline)
if subprocess.check_output(['rubber', '--version']):
parser_compile = subparsers.add_parser('compile', help='Compiler les différents documents en faisant appel à rubber')
parser_compile.add_argument('-d', '--directory', help="Sous-répertoires contenant les documents", required=True)
parser_compile.set_defaults(func=tex_compile)
args = parser.parse_args() args = parser.parse_args()
args.func(args) args.func(args)