Une ancre pour les titres

a marqué ce sujet comme résolu.

Actuellement, quand on lit un topic structuré avec des titres, il est impossible de donner un lien vers un titre précis, tout simplement parce qu'il n'existe pas d'ancre sur les titres.

Pour ceux qui ne voient pas ce que je veux dire, il suffit d'aller sur post suivant. Si je veux donner un lien uniquement vers le titre "Moyens mis en oeuvre", je ne peux pas.

Il serait intéressant pour chaque titres de rajouter un lien à coté pour pouvoir le reférencer, et que ce lien ne s'affiche que lorsqu'on passe la souris en survol sur le titre.

Du coté HTML par exemple dans notre cas on a ceci pour le titre "Moyens mis en oeuvre":

1
<h3>Moyens mis en oeuvre<h3>

On devrait avoir

1
2
3
4
<h3>
Moyens mis en oeuvre 
<a class="headerlink" href="#moyens-mis-en-oeuvre" title="Lien permanent vers ce titre"></a>
<h3>

Avec une modification css qui n'affiche le lien que si on est en hover sur une balise titre.

Il me semble donc que c'est une modification à appliquer du coté de Python-Zmarkdown

Excellente idée.

Par contre, pourquoi ajouter un symbole et ne pas mettre le lien sur le texte du titre, comme on le fait déjà avec la date des messages ?

Pourra-t-on inclure les titres dans le sommaire d'un tutoriel (pour l'avoir sur les PDF) ?

La ZEP-05 est concernée par cela, non ?

+0 -0

Par contre, pourquoi ajouter un symbole et ne pas mettre le lien sur le texte du titre, comme on le fait déjà avec la date des messages ?

Vayel

En dehors du fait que sémantiquement un titre n'est pas un lien, les titres qui sont des liens sont souvent chiant à copier (Il n'y a qu'a voir le mal fou qu'on a à copier le pseudo de quelqu'un en haut de sont post).

Pourra-t-on inclure les titres dans le sommaire d'un tutoriel (pour l'avoir sur les PDF) ?

Vayel

ça c'est déjà un peu plus complexe. Et là c'est le genre de chose que la ZEP-05 peut couvrir. Alors que ma proposition peut se faire assez simplement au final.

On devrait plutôt avoir :

1
2
3
4
<h3 id="moyens-mis-en-oeuvre">
Moyens mis en oeuvre 
<a class="headerlink" href="#moyens-mis-en-oeuvre" title="Lien permanent vers ce titre"></a>
<h3>

Pour ce qui est de l'ancre, elle doit être unique dans la page.

+3 -0

Gérer un compteur ne devrait pas être trop compliqué. Pour un titre donné, on id-ifie son nom, le concatène à la valeur du compteur, ajoute le lien, puis incrémente le compteur.

+0 -0

Bon étant donné que ça n'était pas très compliqué, je me suis permis de faire une PR sur notre dépôt Python-Zmarkdown dans le sens de ce problème. Mais après coup je me dis que certaines choses ne peuvent pas plaire.

La PR rajoute effectivement une ancre sur les titres comme voulue. Cependant, elle rajoute aussi une nouvelle balise markdown pour la génération automatique d'un sommaire depuis les titres.

En gros, si on renseigne [sommaire] dans notre contenu, celui-ci va générer un sommaire en se basant sur les titres saisis dans le contenu.

Mon inquiétude se situe au niveau de la nouvelle balise. Est-ce qu'elle vous parait superflue de permettre de générer un sommaire ? Personnellement ça m'interesse bien parce que c'est ma grande frustration quand je lis un article un peu long sur ZdS.

Alors je vais faire mon rabat joie mais je suis contre.

Il y a pour moi deux cas où un sommaire et des liens encres sur titres seraient pratique : pour les articles (qui n'en ont actuellement pas) et pour les forums.

Pour les articles le problème va se régler de lui même avec la zep-12.

Pour les forums je trouve l'utilité assez faible mais soit.

Dans cette PR il y a deux choses :

  • Les ancres sur les titres.
  • la possibilité d'inclure un sommaire.

Je rappel qu'avec la ZEP-05 que je me retrouve a développer seul, je dois gérer et développer en parallèle deux parseurs markdown. Donc tant que ce chantier n'est pas plus avancé, j'aimerai éviter les évolutions de syntaxes. Dernièrement je ne fais que des bug-fixes sur Python-ZMarkdown pour cette raison.

On en arrive au premier problème. Cet élément rajoute la balise "[Sommaire]" au markdown. Ce qui va me rajouter un travail supplémentaire dans la zep-5 pour une fonctionnalité que je trouve moins importante que d'autres (on a parlé déjà de permettre de pinguer les membres, d'étendre les balises blocs, etc.). Mais a la limite c'est le moins gros de mes soucis.

Mon deuxième problème est qu'autant sur un sujet de forum ça a une certaine logique, autant sur un article ou un tuto il n'y a aucune raison que l'auteur place un sommaire en plein milieu de son cours ! Ce problème n'est pas du tout prit en charge par cette PR.

Enfin, et c'est ce qui me gène le plus, ce sont les ancres de titres. Cette fonctionnalité est dispo directement sous Pandoc. C'était une des fonctionnalité que je comptais proposer de rajouter rapidement apres la sortie de la zep-5. Le problème est que les ancres ne seront probablement pas compatible. Donc soit ça me demandera de casser encore la compatibilité avec pandoc et de faire du dev en plus pour imiter le comportement utilisé ici, soit que tous les liens "permanents" seront cassé. Et perso ça me fait chier.

Perso je suis contre l'implémentation actuel. Mon avis est que :

  • Dans l'idéal on rajoute rien à la syntaxe, au pire on limite la nouvelle balise à être limité au seuls messages du forum.
  • Quelqu'un s'assure que les noms des ancres soient 100% compatible avec celles de Pandoc, dans leur nom et dans le rendu HTML.
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte