Mise à jour des utilitaires pour la création des formations
This commit is contained in:
parent
ddd71f3332
commit
ce9ee26e78
|
@ -11,7 +11,8 @@ from jinja2 import Environment, FileSystemLoader
|
|||
LICENSES = {'CC-by-sa-2.0': 'license-cc-by-sa-2.0',
|
||||
}
|
||||
|
||||
LATEX_SUBS = {}
|
||||
LATEX_SUBS = [(re.compile('_'), '\\_'),
|
||||
]
|
||||
|
||||
|
||||
def get_unique_name(base):
|
||||
|
@ -73,7 +74,12 @@ def main():
|
|||
|
||||
license = LICENSES.get(args.license, 'license-cc-by-sa-2.0')
|
||||
|
||||
document_class = args.format
|
||||
content = 'sli' if document_class == 'beamer' else 'rep'
|
||||
|
||||
env = {'root': root,
|
||||
'class': document_class,
|
||||
'content': content,
|
||||
'title': title,
|
||||
'author': author,
|
||||
'client': client,
|
||||
|
@ -97,7 +103,7 @@ def main():
|
|||
re_class = re.compile(r'\\documentclass\{(?P<document_class>.*)\}')
|
||||
#skbconfig_re = re.compile(r'\\skbconfig\[\s*root\s*=\s*(?P<root>.*),\s*rep\s*=\s*(?P<rep>.*),\s*pub\s*=\s*(?P<pub>.*),\s*fig\s*=\s*(?P<fig>.*),\s*sli\s*=\s*(?P<sli>.*),\s*acr\s*=\s*(?P<acr>.*),\s*bib\s*=\s*(?P<bib>.*),\s*\]\{skblocal.tex\}', re.M)
|
||||
skbconfig_re = re.compile(r'\\skbconfig\[\n\s*root\s*=\s*(?P<root>.*),\n\s*rep\s*=\s*(?P<rep>.*),\n\s*pub\s*=\s*(?P<pub>.*),\n\s*fig\s*=\s*(?P<fig>.*),\n\s*sli\s*=\s*(?P<sli>.*),\n\s*acr\s*=\s*(?P<acr>.*),\n\s*bib\s*=\s*(?P<bib>.*)\n\s*\]\{skblocal.tex\}', re.M)
|
||||
skbinput_re = re.compile(r'\\skbinput\[from=(?P<rep>.*)\]\{(?P<tex>.*?)\}')
|
||||
skbinput_re = re.compile(r'[^%]\\skbinput\[from=(?P<rep>.*)\]\{(?P<tex>.*?)\}', re.M)
|
||||
with open(args.master, 'r') as master:
|
||||
tex_master = master.read()
|
||||
tex_class = re_class.search(tex_master)
|
||||
|
@ -110,10 +116,11 @@ def main():
|
|||
basename = '{0}.tex'.format(path.basename(skbinput.group('tex')))
|
||||
dest = path.join(rep, basename)
|
||||
if not path.isfile(dest):
|
||||
print(dest)
|
||||
if not path.isdir(rep):
|
||||
makedirs(rep)
|
||||
template = jinja_env.get_template('frame.tex')
|
||||
env = {'title': '', 'subtitle': '',
|
||||
env = {'title': basename, 'subtitle': '',
|
||||
'name': dest}
|
||||
rendered_template = template.render(**env)
|
||||
with open(dest, 'w') as rendered_file:
|
||||
|
@ -148,6 +155,7 @@ def main():
|
|||
parser = argparse.ArgumentParser(description="Préparation des fichiers tex")
|
||||
subparsers = parser.add_subparsers(help='Aide des sous-commandes')
|
||||
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('-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('-c', '--client', help="Client")
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
\begin{frame}
|
||||
\frametitle{(((title)))}
|
||||
fichier (((name))) à éditer
|
||||
\frametitle{(((title|escape_tex)))}
|
||||
fichier (((name|escape_tex))) à éditer
|
||||
% contenu (pas trop long) de la diapositive
|
||||
\end{frame}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
\documentclass{beamer}
|
||||
\documentclass{(((class)))}
|
||||
|
||||
\usepackage{skb}
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
|||
bib = database/bib
|
||||
]{skblocal.tex}
|
||||
|
||||
\skbinput[from=rep]{style/preambule_slides}
|
||||
\skbinput[from=(((content)))]{style/preambule}
|
||||
|
||||
\title[]{(((title)))}
|
||||
\subtitle{(((client)))}
|
||||
|
@ -35,12 +35,12 @@
|
|||
|
||||
\begin{document}
|
||||
|
||||
\skbinput[from=rep]{style/title}
|
||||
\skbinput[from=(((content)))]{style/title}
|
||||
|
||||
% Corps de la formation
|
||||
%\skbinput[from=slides]{}
|
||||
%\skbinput[from=(((content)))]{}
|
||||
|
||||
\skbinput[from=rep]{licences/(((license)))}
|
||||
\skbinput[from=(((content)))]{licences/(((license)))}
|
||||
|
||||
\end{document}
|
||||
|
||||
|
|
Loading…
Reference in New Issue