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.
documentex/documentex/constantes_document_latex.py

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"