Export bare tasks list as markdown
This commit is contained in:
parent
1686293337
commit
41025d29da
1 changed files with 35 additions and 0 deletions
|
@ -78,6 +78,31 @@ def export_short_md(config: Config, groupes: list[list[str]]) -> str:
|
||||||
return out
|
return out
|
||||||
|
|
||||||
|
|
||||||
|
def export_bare_tasks_md(config: Config) -> str:
|
||||||
|
"""Exporte la liste des tâches sans assignation en markdown, pour relecture de la
|
||||||
|
liste, des nombres de groupes assignés et du coefficient de pénibilité"""
|
||||||
|
|
||||||
|
def export_taskcat(grp: Task | Category) -> str:
|
||||||
|
if isinstance(grp, Task):
|
||||||
|
out = f"* **{grp.name}** : "
|
||||||
|
out += f"{grp.nb_groups} groupe{'s' if grp.nb_groups > 1 else ''}, "
|
||||||
|
out += f"pénible x{grp.tough}"
|
||||||
|
if grp.referent is not None:
|
||||||
|
out += f" (référent {grp.referent})"
|
||||||
|
return out
|
||||||
|
|
||||||
|
out = "\n" + "#" * (2 + grp.depth) + f" {grp.name}"
|
||||||
|
if grp.time:
|
||||||
|
out += f" ({grp.time})"
|
||||||
|
out += "\n\n"
|
||||||
|
if grp.intro:
|
||||||
|
out += grp.intro + "\n\n"
|
||||||
|
out += "\n".join(map(export_taskcat, grp.tasks))
|
||||||
|
return out
|
||||||
|
|
||||||
|
return "\n".join(map(export_taskcat, config.taches.tasks))
|
||||||
|
|
||||||
|
|
||||||
def export_latex(config: Config, groupes: list[list[str]]) -> str:
|
def export_latex(config: Config, groupes: list[list[str]]) -> str:
|
||||||
"""Exporter la liste des tâches en LaTeX (à insérer dans un template)"""
|
"""Exporter la liste des tâches en LaTeX (à insérer dans un template)"""
|
||||||
j2_env = util.j2_environment()
|
j2_env = util.j2_environment()
|
||||||
|
@ -95,6 +120,12 @@ def main():
|
||||||
parser.add_argument("taches", help="Fichier yaml contenant les tâches")
|
parser.add_argument("taches", help="Fichier yaml contenant les tâches")
|
||||||
parser.add_argument("choristes", help="Fichier CSV contenant les choristes")
|
parser.add_argument("choristes", help="Fichier CSV contenant les choristes")
|
||||||
parser.add_argument("--to-tex", help="Exporter vers un fichier LaTeX")
|
parser.add_argument("--to-tex", help="Exporter vers un fichier LaTeX")
|
||||||
|
parser.add_argument(
|
||||||
|
"--bare-tasks",
|
||||||
|
help=(
|
||||||
|
"Exporter seulement les tâches sans assignation pour revue vers ce fichier"
|
||||||
|
),
|
||||||
|
)
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
"--to-short-md",
|
"--to-short-md",
|
||||||
help="Exporter vers un fichier Markdown (pour vérification uniquement)",
|
help="Exporter vers un fichier Markdown (pour vérification uniquement)",
|
||||||
|
@ -102,6 +133,10 @@ def main():
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
config = Config(args.taches, args.choristes)
|
config = Config(args.taches, args.choristes)
|
||||||
|
|
||||||
|
if args.bare_tasks:
|
||||||
|
util.write_to_file(args.bare_tasks, export_bare_tasks_md(config))
|
||||||
|
|
||||||
groupes = constituer_groupes(config.choristes)
|
groupes = constituer_groupes(config.choristes)
|
||||||
assigner_taches(config.taches, len(groupes))
|
assigner_taches(config.taches, len(groupes))
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue