Scripts pandoc pour champs-libres. Miroir d'un dépôt CL interne
Go to file
Julien Fastré e6408fe35a
script pour gérer les exercices
2023-09-19 08:49:00 +02:00
devis improve devis (very old modifications) 2020-10-20 09:44:12 +02:00
fixtures ajout filtre timesheet 2020-12-07 17:33:52 +01:00
templates test tableaux dans le template 2021-04-15 12:35:42 +02:00
README.md script pour gérer les exercices 2023-09-19 08:49:00 +02:00
boxes.lua ajout boxes 2020-11-24 14:44:16 +01:00
exercice-only.lua script pour gérer les exercices 2023-09-19 08:49:00 +02:00
format-column.lua documentation et découverte babel french 2020-11-04 22:47:09 +01:00
format-link.lua add useful lua filters 2020-09-18 15:50:44 +02:00
format-quote.lua add useful lua filters 2020-09-18 15:50:44 +02:00
format-semi-column.lua documentation et découverte babel french 2020-11-04 22:47:09 +01:00
include-code.lua add basic include-code.lua script 2020-09-22 22:44:06 +02:00
remove-solutions.lua finalize and documentation for remove-solution 2022-09-12 20:47:28 +02:00
timesheet.lua ajout filtre timesheet 2020-12-07 17:33:52 +01:00

README.md

Pandoc Champs-Libres

Filtres et recommandations pour CL

Metadatas

# Inclut babel-french
# le paquet ajoute des espaces insécables, les filtres lua "format semi-column",
# "format-column" et " 
# voir: http://lesfichesabebert.fr/latex/Fran%C3%A7ais.html
babel-main: french

Filtres

boxes.lua

Ajoute des boxes aux documents latex, en utilisant awesomebox.

⚠️ Nécessite le paquet CTAN correspondant, qui doit être installé sur le poste qui génère le pdf.

Boxes disponibles:

  • note;
  • tip;
  • warning;
  • caution;
  • important;
  • info (alias pour "note");

Usage:

::: { .tip }
Ceci est un truc (des trucs et astuces)
:::

Traitement des solutions et exercices dans un pdf

A partir de ce texte:

<!-- la balise "title" est facultative" -->
::: { .exercice title="Titre de l'exercice" }

Description de l'exercice.

:::::: { .solution }

Solution de l'exercice

::::::

:::

Les scripts lua suivant vont:

  • remove-solutions.lua: effacer la solution des exercices du document généré.

  • exercice-only.lua: crée un document qui ne contiendra que les exercices dans le document. Si remove-solutions est également utilisé, alors les solutions seront également enlevées.

    Si un titre est présent, alors un titre sera ajouté avant l'exercice.

timesheet.lua

Extrait des timesheets d'un fichier markdown.

Usage:

En markdown, indiquer:

  • une variable timesheet, qui indique le nom du fichier vers lequel exporter le contenu des timesheet;
  • remplir les timesheet en csv, à l'intérieur du markdown. Pour chaque bloc de code concerné, indiquer une classe .timesheet

Exemple:

---
timesheet: /path/to/file.csv
---

```{.timesheet}
2020-12-15, CL, 1, test
```

Execution:

pandoc --to markdown --lua-filter timesheet.lua fixtures/timesheet.md

Le fichier CSV sera enregistré à la place du fichier /path/to/file.csv (déterminé par la variable timesheet dans le front-matter du document).

Comme le fichier en sortie n'est pas utilisé, la sortie peut être re-dirigée vers /dev/null. Exemple chez JuFa depuis son fichier de TODO

#!/bin/bash

cat $TODO | pandoc --to json -o /dev/null --lua-filter /home/julien/dev/champs-libres/pandocCL/timesheet.lua