Intertitres hiérarchiques

Intertitres pour le porte plume

Nativement la syntaxe SPIP ne propose qu’un seul niveau de titre. Le niveau de départ h2.spip est configurable depuis le fichier d’options xxx_options.php, en utilisant les variables de personnalisations :

$GLOBALS['debut_intertitre'] = "\n<h3 class=\"spip\">\n";
$GLOBALS['fin_intertitre'] = "</h3>\n";

Ce plugin ajoute au porte plume de spip la gestion de niveaux de titres supplémentaires, en prenant en compte le niveau de base configuré dans SPIP ou mes_options.php.

Le plugin reprend les syntaxes proposées par Enluminures typographiques et Intertitres hiérarchisés et table des matières :

  • soit {{{*** pour les intertitres simples de différents niveaux
  • {{{### pour les titres de type référence universitaire. Ex:1.1, 1.1.2.

Les icônes affichées dans le porte plume (barre typographique), reflète le niveau sémantique au sens HTLM pour sensibiliser le rédacteur à son plan de page, et s’adapte en fonction de la globale spip $debut_intertitre.

Différences avec les plugins Enluminures typographiques et Intertitres hiérarchisés et table des matières

  • Ce plugin utilise textwheel , ceci permettant entre autre :
    • de pouvoir surcharger les wheels déclarées pour un besoin spécifique,
    • tester et maintenir plus facilement les expressions/ étudiées/raccourcis traités.
    • utiliser les fonctionnalités de SPIP 3.
  • il ne gère que les titres et ne crée pas de sommaire.
  • une syntaxe additionnelle expérimentale permet d’ajouter des attributs aux titres (classes CSS, id spécifique, data-xx). Cette syntaxe est reprise de celle proposée par Markdown Extra.

Plugins compatibles

Etant donné que le plugin ne crée pas de sommaire, il est totalement compatible avec le plugin Sommaire automatique qui produit un sommaire de l’article.

Syntaxe & raccourcis

Il n’est plus possible (depuis la version 1.2.0) de mélanger dans un même article la syntaxe des titres et des références : ça n’a d’ailleurs aucun sens. C’est la syntaxe du premier titre rencontré qui déterminera l’interprétation de la suite des titres et intertitres. Par exemple, il suffit de choisir {{{# Référence }}} comme premier titre pour que tous les autres titres et intertitres soient interprétés comme des références.

Raccourci Description
{{{* … }}} équivalent au raccourcis spip intertitre {{{…}}}. h2 ou h3 suivant spip_debut_intertitre
{{{** Titre}}} h3 ou h4
{{{*** Titre}}} h4 ou h5
{{{**** Titre}}} h5 ou h6
{{{***** Titre}}} h6 ou div.h7
{{{# Référence }}}
{{{## Référence }}}
{{{### Référence }}}
{{{#### Référence }}}
Attributs Les attributs additionnels sont inclus si nécessaire dans une chaine incluse entre parenthèses et accolée sans espace au raccourci du titre. Il est possible d’ajouter plusieurs attributs en les séparant par un espace : {raz .classe #id} par exemple
{{{ Titre }}}{raz} L’extension raz permet de remettre à zéro la numérotation des titres. Cette fonctionnalité est à utiliser sur le premier titre d’un champ d’objet si l’on veut insérer des titres dans plusieurs champs d’un même objet
{{{ Titre }}}{.test-class1 .test--extender} Ajouter des attributs css supplémentaires aux titres
{{{ Titre }}}{#id_du_titre} Insérer un identifiant unique
{{{ Titre }}}{attribut="valeur attribut" data-appear="left" itemprop="name"} Insérer des attributs libres

A savoir

Si les icônes du porte plume n’apparaissent pas après l’activation du plugin, supprimez les dossiers /local/cache-css et js.

Si vous avez installé une version précédente, il peut être nécessaire de supprimer le dossier /tmp/cache/wheels, pour que les traitements typo soient pris en compte.

Participation & todo

Le plugin est disponible sur le dépôt Gitea. Tout retour est apprécié : suggestions, tests, bugs, idées d’amélioration, pull request.
Bugs et retours sur le forum de l’article ou en utilisant les tickets associés au dépôt sur Gitea : https://git.spip.net/spip-contrib-extensions/porte_plume_intertitres/issues

A partir de la version 1.2.0, la refonte du code permet de facilement proposer des modèles de numérotation pour les titres de type référence via une constante ou une variable de configuration.

Discussion

Aucune discussion

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom