bibudem / coquille-web

Prototype de l'environnement de publication Web en élaboration
https://bib-pp.umontreal.ca/
MIT License
1 stars 0 forks source link

Gestion des liens #6

Open remillc-udem opened 8 months ago

remillc-udem commented 8 months ago

La gestion des liens hypertextes entre les pages du site est un enjeux certain dans un scénario de backend pauvre.

Je créé cette issue afin que l'on note des observations les concernant et les discute.

msevigny commented 8 months ago

Ouais... par curiosité, j'ai googlé "Astro plugin link checker", rien de transcendant, mais pour le plugin Starlight d'Astro, il y en a un pour les fichiers markdown / MDX: https://github.com/HiDeoo/starlight-links-validator. Je ne sais pas si c'est bloquant que ce soit avec Starlight, mais ça peut donner des idées. Peut-être y en a-t-il d'autres. Et aussi, je ne sais pas si je comprends bien le processus de "build" pour ce type d'outils, mais peut-on imaginer un script au moment du build qui vérifie les liens internes du site généré? Genre?

remillc-udem commented 8 months ago

Je connaissais pas le thème Starlight. C'est très intéressant. Ce serait un bon point de départ pour nos contenus détaillés. Peut-être aussi pour le prototype. Je me demande si on devrait pas utiliser ce kit plutôt que l'actuel.

Concernant Starlight Links Validator, à première vue, il ne fonctionne qu'en tant que plugin pour Starlight. À vérifier. Anyway, c'est un vérificateur de liens, ce qui est intéressant.

remillc-udem commented 8 months ago

Voici quelques cas types concernant la problématique des liens.

Un lien dans un contenu

obtenir/pret-renouvellement-retour.mdx

---
title: Prêt, renouvellement, retour
---

…
Consulter la page [Prêt entre bibliothèques](/obtenir/peb) pour les modalités spécifiques 
aux prêts provenant d'une bibliothèque autre que les bibliothèques universitaires québécoises.
…

Dans ce cas-ci, le lien est relatif à partir de la racine, mais on peut aussi utiliser un lien relatif tout court:


---
title: Prêt, renouvellement, retour
---

…
Consulter la page [Prêt entre bibliothèques](peb) pour les modalités spécifiques 
aux prêts provenant d'une bibliothèque autre que les bibliothèques universitaires québécoises.
…

On peut aussi utiliser la syntaxe html directement dans un fichier mdx:


---
title: Prêt, renouvellement, retour
---

…
Consulter la page <a href="peb">Prêt entre bibliothèques</a> pour les modalités spécifiques 
aux prêts provenant d'une bibliothèque autre que les bibliothèques universitaires québécoises.
…

Un menu de navigation secondaire

Typiquement: le menu de gauche d'une section.

Les aspects particuliers à ce type de liens sont (en excluant les considérations relatives au visuel) :

Ces 3 infos peuvent être ajoutées au frontmatter de chaque fichier mdx faisant office de page, par exemple, en s'inspirant des menus sidebar de Starlight:

obtenir/pret-renouvellement-retour.mdx

---
title: Prêt, renouvellement, retour
sidebar:
  label: Prêt
  order: 1
  hidden: false
---

 Fusce egestas sapien sit amet nisi tempus molestie. Cras nunc urna, ullamcorper at pretium eu, condimentum nec ipsum.

Dans ce cas là, les liens du menu doivent être générés automatiquement par le front end.

Importation de composants

La documentation d'Astro indique qu'il faut importer les composants pour pouvoir les utiliser:

obtenir/pret-renouvellement-retour.mdx
---
title: Prêt, renouvellement, retour
---

import Button from '../components/Button.astro';

Etiam sed enim auctor, vestibulum augue et, pulvinar velit.

<Button primary href="/nous-joindre">Écrivez-nous!</Button>

Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.

L'importation de composants alourdis le processus d'écriture. Ne peut-elle être faite automatiquement, après analyse du contenu de la page?