Ajout d'un script d'horodatage des fiches, affichage des fiches récement modifiées sur la page d'accueil
This commit is contained in:
@@ -16,7 +16,7 @@ Le site est construit avec [Zola](https://www.getzola.org/) à partir de fichier
|
||||
| `textes` | translittérations, traductions et commentaires | genres |
|
||||
| `vocabulaire` | fiches lexicales adaptées à leur nature grammaticale | natures |
|
||||
|
||||
La page d’accueil présente le dernier article et les trois fiches datées les plus récentes parmi les signes, le vocabulaire, la grammaire et les textes. Des flux Atom et RSS sont également générés.
|
||||
La page d’accueil présente le dernier article et les trois fiches les plus récemment publiées ou mises à jour parmi les signes, le vocabulaire, la grammaire et les textes. Des flux Atom et RSS sont également générés.
|
||||
|
||||
Les conventions de rédaction et les champs disponibles sont décrits dans le [guide de rédaction](GUIDE_REDACTION.md).
|
||||
|
||||
@@ -92,7 +92,7 @@ Exemples :
|
||||
Chaque fichier est créé avec :
|
||||
|
||||
- une date au format TOML dans le fuseau `Europe/Paris` ;
|
||||
- un repère commenté `# updated = YYYY-MM-DD` pour les mises à jour substantielles ;
|
||||
- un repère commenté `# updated = YYYY-MM-DDTHH:MM:SS+HH:MM` pour les mises à jour substantielles ;
|
||||
- `draft = true` ;
|
||||
- tous les champs prévus par son modèle ;
|
||||
- des chaînes vides ou des listes vides pour les données à compléter.
|
||||
@@ -103,6 +103,22 @@ Le générateur refuse d’écraser un fichier existant. Son aide complète est
|
||||
./scripts/new-content.py --help
|
||||
```
|
||||
|
||||
## Horodater une mise à jour
|
||||
|
||||
Après une modification substantielle, renseigner automatiquement `updated` avec l’heure courante de `Europe/Paris` :
|
||||
|
||||
```sh
|
||||
./scripts/update-content.py src/content/vocabulaire/bītum.md
|
||||
```
|
||||
|
||||
Ce chemin se complète directement avec la touche Tab du shell. La forme abrégée, relative à `src/content/`, est également acceptée :
|
||||
|
||||
```sh
|
||||
./scripts/update-content.py vocabulaire/bītum.md
|
||||
```
|
||||
|
||||
Le script active le repère commenté, remplace l’horodatage existant ou insère `updated` après `date` lorsqu’il est absent.
|
||||
|
||||
## Publier un contenu
|
||||
|
||||
Le cycle de rédaction recommandé est simple :
|
||||
@@ -124,7 +140,8 @@ Le validateur contrôle les invariants qui doivent rester vrais indépendamment
|
||||
- front matter TOML valide ;
|
||||
- section connue et statut de brouillon valide ;
|
||||
- titre des index et des pages publiées ;
|
||||
- date des pages publiées dans une section ;
|
||||
- horodatage de publication des pages publiées dans une section ;
|
||||
- horodatage de `updated` lorsqu’il est renseigné ;
|
||||
- nom et numéro MZL des fiches de signes ;
|
||||
- nature, champs et types des fiches de vocabulaire publiées.
|
||||
|
||||
@@ -145,7 +162,8 @@ Une erreur renvoie un code de sortie non nul et bloque également la constructio
|
||||
├── scripts
|
||||
│ ├── _schema.py
|
||||
│ ├── check-content.py
|
||||
│ └── new-content.py
|
||||
│ ├── new-content.py
|
||||
│ └── update-content.py
|
||||
└── src
|
||||
├── content
|
||||
├── sass
|
||||
@@ -160,8 +178,9 @@ Une erreur renvoie un code de sortie non nul et bloque également la constructio
|
||||
- `src/static/` contient les ressources servies telles quelles ;
|
||||
- `src/zola.toml` contient la configuration de Zola ;
|
||||
- `scripts/new-content.py` crée les brouillons ;
|
||||
- `scripts/update-content.py` horodate les modifications substantielles ;
|
||||
- `scripts/check-content.py` valide les contenus ;
|
||||
- `scripts/_schema.py` contient les définitions communes aux deux scripts.
|
||||
- `scripts/_schema.py` contient les définitions communes aux outils de gestion des contenus.
|
||||
|
||||
Les chemins et les taxonomies utilisent la stratégie de slugification `safe` de Zola. Les diacritiques sont donc conservés : des lectures comme `tim` et `ṭim` restent distinctes.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user