You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
137 lines
4.4 KiB
Python
137 lines
4.4 KiB
Python
"""
|
|
Ce fichier initialise les variables utilisées ailleurs dans le programme
|
|
et en permet la personnalisation simple
|
|
"""
|
|
|
|
import os
|
|
import jinja2
|
|
|
|
"""
|
|
Nom du programme
|
|
"""
|
|
softname = 'documentex'
|
|
|
|
"""
|
|
Version du programme
|
|
"""
|
|
version = '2.0'
|
|
|
|
"""
|
|
Variable de debuggage
|
|
"""
|
|
debug = False
|
|
|
|
"""
|
|
Constantes customisant l'en-tête des fichiers LaTeX et remplies automatiquement
|
|
"""
|
|
classe_appartenance = "PT"
|
|
lycee_appartenance = "Lycée Langevin Wallon"
|
|
institution = "Lycée"
|
|
nom_institution = "Langevin Wallon"
|
|
lycee_adresse = "126 avenue Roger Salengro"
|
|
lycee_complement_adresse = "Champigny-sur-Marne, 94240"
|
|
auteur = "D. Denoncin" # est mise d'office sur tout type de document
|
|
auteur_lettre = "Dr. David Denoncin"
|
|
auteur_titre = "Professeur Agrégé"
|
|
auteur_adresse_mail = "math@denoncin.fr"
|
|
|
|
"""Dictionnaire paramétrant les types de documents de la façon suivante :
|
|
dictionnaire_type_document[type_document] = [contenu : affiche-t-on un contenu ? (True ou False),
|
|
td : numérote-t-on les exercices ? ('' ou '*'),
|
|
fancyhead : doit-on afficher un header avec un titre court ? (True ou False),
|
|
appartenance : doit-on afficher l'appartenance classe/lycée ? (True ou False),
|
|
]
|
|
"""
|
|
dictionnaire_type_document = {'ds': [False, '', True, True],
|
|
'td': [False, '', True, True],
|
|
'dm': [False, '*', True, True],
|
|
'pb': [False, '*', True, True],
|
|
'te': [False, '*', True, True],
|
|
'kh': [False, '', False, True],
|
|
'cours': [True, '*', True, True],
|
|
'in': [False, '*', True, True],
|
|
'cr': [False, '*', False, True],
|
|
'ob': [False, '*', False, True],
|
|
'doc': [False, '', False, False],
|
|
'let': [False, '', False, True], # Lettre de motivation
|
|
}
|
|
|
|
|
|
"""
|
|
Types de documents pour lesquels il faut créer un sous-dossier pour la correction
|
|
"""
|
|
type_document_correction = ['ds', 'dm', 'pb']
|
|
|
|
"""
|
|
Dictionnaire paramétrant les abréviations pour les numéros de DS (limité à 10 DS)
|
|
"""
|
|
dictionnaire_numero_ds = {'01': 'Première',
|
|
'02': 'Deuxième',
|
|
'03': 'Troisième',
|
|
'04': 'Quatrième',
|
|
'05': 'Cinquième',
|
|
'06': 'Sixième',
|
|
'07': 'Septième',
|
|
'08': 'Huitième',
|
|
'09': 'Neuvième',
|
|
'10': 'Dixième',
|
|
}
|
|
|
|
"""
|
|
Paramétrage des templates jinja
|
|
"""
|
|
latex_jinja_env = jinja2.Environment(
|
|
block_start_string="\BLOCK{",
|
|
block_end_string="}",
|
|
variable_start_string="\VAR{",
|
|
variable_end_string="}",
|
|
comment_start_string="\#{",
|
|
comment_end_string="}",
|
|
line_statement_prefix="%%",
|
|
line_comment_prefix="%#",
|
|
trim_blocks=True,
|
|
autoescape=False,
|
|
loader=jinja2.FileSystemLoader("/")
|
|
)
|
|
jinja_template_dir = "templates"
|
|
tex_file = "example.tex"
|
|
|
|
|
|
"""
|
|
Pour mémoire : les variables à initialiser pour un compte rendu de colle
|
|
"""
|
|
|
|
|
|
def initialiser_variables():
|
|
title = ''
|
|
semaine = ''
|
|
nom1 = ''
|
|
nom2 = ''
|
|
nom3 = ''
|
|
return [title, semaine, nom1, nom2, nom3]
|
|
|
|
|
|
"""
|
|
Numéro de fichiers admissibles (est-ce vraiment utile ??)
|
|
"""
|
|
numeros_admissibles = ['00', '01', '02', '03', '04', '05', '06', '07', '08', '09'] + [str(i) for i in range(10, 200)]
|
|
|
|
"""
|
|
Ces variables permettent de déterminer quelle est l'année scolaire en cours pour lequel le fichier est généré, expire en 2070 (?)
|
|
"""
|
|
annee_scolaire = ['09', '10', '11', '12', '01', '02', '03', '04', '05', '06'] # mois d'une année scolaire donnée
|
|
annee_scolaire_plus_un = ['01', '02', '03', '04', '05', '06']
|
|
annee_scolaire_en_cours = ['07', '08', '09', '10', '11', '12']
|
|
annees_valables = [str(i) for i in range(2018, 2070)]
|
|
|
|
|
|
"""
|
|
Fonctions de validations génériques
|
|
"""
|
|
def entier(x):
|
|
try:
|
|
int(x)
|
|
return True
|
|
except:
|
|
return "Doit être un entier"
|