Todo

Écrire rapidement des listes de choses à faire, sans se prendre la tête.

Ce plugin est une extension de Textwheel, il ajoute de nouveaux raccourcis typographiques permettant de générer rapidement une liste de choses à faire proprement présentée, et triable.

Il ne s’agit pas d’une fonctionnalité mais juste de la présentation.

Installation

La branche v1 du plugin est compatible SPIP 2.1 et nécessite Textwheel ainsi que Bonux. Les nouvelles branche v2 et ultérieures ne nécessitent plus que Textwheel distribué par défaut avec SPIP.

Les branches v2 et ultérieures apportent de nouvelles fonctions au plugin mais assure une compatibilité ascendante parfaite avec la branche v1.

Utilisation de base

Une liste commence par une suite de trois +++ suivie d’un retour à la ligne, et se termine de la même façon ; ou bien elle est incluse entre les marqueurs <todo></todo>. Cette deuxième solution se dégrade mieux lorsque le plugin n’est plus là : les balises deviennent invisibles et il ne reste que la liste à l’intérieur.

Ensuite, c’est le premier caractère qui détermine le statut de la tâche qui se limite pour la branche v1 à :

  • + indique quelque chose à faire ;
  • o (lettre o minuscule) signifie une tâche en cours ;
  • - indique une chose faite.

Pour les branches v2 et ultérieures, les nouveaux statuts ci-dessous ont été rajoutés :

  • x (lettre x minuscule) indique une tâche abandonnée ;
  • = signifie une tâche arrêtée temporairement ;
  • ! indique qu’une action est nécessaire pour débloquer cette tâche ;
  • ? indique qu’on ne connait pas le statut exact de cette tâche.

Utilisation avancée avec les branches v2 et ultérieures

A partir de la branche v2 le plugin se dote des améliorations suivantes :

  • qualification des tâches avec une priorité, des catégories et des informations typées ;
  • regroupement de tâches par projet ;
  • précision du titre d’une tâche avec un descriptif libre.

Toute ces informations complémentaires s’écrivent à la suite du titre de la tâche séparées par un espace.

Priorité

Toute tâche peut être affectée d’une priorité écrite @n ou #n où n est un chiffre compris entre 1 et 9.

Catégories

Toute information écrite @tag ou #tag est considérée comme une catégorie à partir du moment où « tag » est une chaine alphanumérique.

Attention : le choix @ ou # est fait une fois pour toute pour le site au travers d’une constante qui vaut @ par défaut. Vous pouvez la modifier dans votre config/mes_options.php.

Pour chaque tâche la liste des étiquettes est collectée et affichée précédée d’un petit caractère habituel pour les tags. Si un tag correspond au titre d’un mot-clé SPIP, alors il est affiché comme un lien vers la page mot-clé associée.

Informations complémentaires typées

Les informations typées sont écrites avec la syntaxe type:valeur où type et valeur sont des mots pouvant contenir des caractères alphanumériques y compris « - », « . » et « _ ». Les types d’information sont extensibles mais le plugin ToDo propose déjà 4 types prédéfinis :

  • « debut » : pour la date de début de la tâche sous la forme 2012-06-02 ;
  • « fin » : pour la date de fin de la tâche sous la forme 2012-06-09 ;
  • « commit » : pour un numéro de commit générant un lien vers son dépôt et pouvant s’écrire,
    • z72463 pour la zone en SVN,
    • c12922 pour le core en SVN,
  • « version » : un numéro de version.

A partir de la v3, la forge git de SPIP est prise en compte dans l’information « commit » et dans une nouvelle information nommée « issue ». Pour chacune des ces informations le format est g:orga:repo:ref, où :

  • g indique la forge git de SPIP,
  • orga est un identifiant abrégé d’un caractère pour l’organisation soit
    • x pour spip-contrib-extensions,
    • s pour spip-contrib-squelettes,
    • t pour spip-contrib-themes,
    • o pour spip-contrib-outils,
    • g pour spip-galaxie,
  • repo, le nom du dépôt
  • et ref est soit le sha complet du commit, soit le numéro du ticket.

Il est possible d’insérer plusieurs informations de commit pour la même tâche. Celles-ci seront affichées comme une liste de révision séparées par une virgule.

Projets

Un projet est détecté par le caractère « :» en début de ligne. Tout le reste de la ligne constitue le nom du projet. Les tâches d’un projet sont regroupées dans un même bloc de visualisation et numérotée de 1 à n.

Descriptif complémentaire libre

Toute ligne ne commençant pas par un caractère signifiant (statut ou projet) est donc un descriptif libre. Chaque ligne du descriptif est affichée à la suite du libellé de la tâche.

Intégration au Porte-plume

La branche v2 pour SPIP 3 permet aussi d’utiliser la barre d’édition du Porte-plume pour ajouter une tâche ou en changer le statut. Un bloc spécial d’édition est dédié aux todos et propose un bouton par statut.

Evolutions

  • version 3.0.2 : compatibilité spip 4 et ajout de la prise en compte de la forge git de spip pour les commits et les tickets
  • version 2.2.0 : changement de la stratégie et du prototype des fonctions de formatage des informations typées
  • version 2.0.7 : ajout de la possibilité de lier le tag à un mot-clé SPIP
  • version 2.1.0 : ajout du # comme indicateur de priorité ou d’étiquette en plus du @ qui reste la valeur par défaut.
  • version 2.1.1 : ajout d’une classe « fermee » à la todolist si celle-ci ne contient que des tâches dans un état final.
  • version 2.1.2 : ajout d’un attribut format optionnel à la balise <todo> qui permet d’utiliser le squelette inclure/todo_$format.html pour afficher la todo.
  • version 2.1.3 : ajout d’une ancre au début de chaque todo d’une page.
  • version 2.1.4 : amélioration de la regexp pour éviter l’incompatibilité avec le raccourci page ou onglet du CS.

Exemple pour la branche v1

+++
- Ça c'est déjà fait
+ Une chose
+ Deux ou trois choses
o Suis en train de le faire
- Well done
+++

ou bien

<todo>
- Ça c'est déjà fait
+ Une chose
+ Deux ou trois choses
o Suis en train de le faire
- Well done
</todo>

Ce qui génère automatiquement ceci, avec les titres de colonnes permettant de trier par statut, par titre, ou de remettre dans l’ordre :

Exemple pour la branche v2

<todo>
:Projet 1
- Refaire fonctionner l'aide en ligne des plugins fin:2013-05-26 commit:z72345 @1 @aide @sad
o Utiliser Tickets pour remonter les problème du site, les actions à réaliser voire les erreurs sur la présentation des plugins @2 @sad commit:z70345 
- Ajouter un menu des langues disponibles fin:2013-05-26 commit:c12345 @1 @traduction
+ Vérifier la gestion correcte des langues dans les pages @1 @traduction
+ Vérifier les traductions @1 @traduction
On parle ici des traductions du plugin Plugins SPIP et du Upload de SPIP !
x Mettre en place la gestion des tags en plus des catégories (plugin étiquettes ?) fin:2013-05-28
= Revoir la présentation du formulaire de sélection des plugins en vedette ou supprimer cette fonction

:Projet 2
! Etendre le serveur d'aide et le promouvoir @2 @aide @sad
? Ajouter une fonction d'agrégateur de profil utilisateur pour compléter l'aspect développement @3
</todo>

Ce qui génère automatiquement ceci, avec en particulier la colonne Révision qui possède des liens vers la Zone ou le Core :

Discussion

2 discussions

  • 8
    spipfactory

    Bonjour,
    je n’arrive pas a faire fonctionner le plugin sur l’environnement suivant
    SPIP 3.3.0-dev GIT [master : 33a30511]

    Todo 2.3.0
    TextWheel pour SPIP 1.6.5
    SPIP Bonux 3.7.2

    une idée , une piste , un tuto
    Merci

    • Tu veux dire quoi par « pas faire fonctionner » ? Tu n’arrives pas à l’activer ou les raccourcis ne marchent pas ?

      Par contre, je ne vois pas le rapport de Todo et de Bonux ?

    • Erreur lors de la mise à jour vers la version 3.0.6 du plugin

      Bonjour,
      Lors de la mise à jour du plugin sur un site spip 4.1.10 le message d’erreur suivant apparaît dans la partie privée...

      Erreur d’exécution ../plugins-dist/svp/formulaires/inc-admin_plugin.html | File […]/plugins-dist/textwheel/engine/textwheel.php Line 206 : Failed opening required '../plugins/auto/todo/v3.0.6/wheels/todo.php' (include_path='.:/opt/plesk/php/8.1/share/pear')

      Et dans la partie publique, après avoir nettoyé le cache :
      Warning: Undefined array key "titre" in ..../plugins/auto/todo/wheels/todo.php on line 213

    • Tu peux me donner, stp, la todo qui provoque le warning sur le titre car je n’arrive pas à reproduire ?

    • Bon j’ai sorti une version 3.0.7 qui devrait corriger ce souci mais j’aimerais voir la todo qui le provoque parce que pour moi ça ne peut pas se produire si la tache est bien écrite.

    • Ok, je ne vois ton message que ce matin au bureau...

      <todo>
      :Projet 1 - Correction des bugs et de l'affichage
      <del>+ Création d'un mot-clé "Archives" + dossier. Idem pour provinces?</del> On peut modifier le mode "publié en ligne" en "archivé" dans l'édition de l'objet.
      - Dans "A propos" --> <del>partenaire AAAA : bug d'affichage des partenaires</del>
      + Mettre tous les articles dans des sous-catégories et afficher les sous-catégories quand on clic sur les catégories
      + <del>Sous catégorie "a propos"--> Inventaire participations (visible par tous?)</del> Non, seuls les webmasters peuvent voir cette page.
      + Créer un article qui décrit l'activité de la AAAA+ajouter le tryptique @Pam
      - M<del>es activités Interprovinces et open doivent apparaitre sur tous les sites des provinces</del> N'est-ce pas déjà le cas ?
      - <del>Page "Calendrier" : Mettre la légende en dessous - Enlever la vidéo et la barre de recherche - Mettre le cadre gris "recherche" sur toute la largeur + lui donner un titre "recherche"</del> @Pam
      + Mise en page "Article" : Ajouter des styles (Puces, titres, etc.) @Pam
      - <del>Page principale : rendre les titres des articles cliquable @Pam</del>
      - Faire apparaitre une alerte lorsque cet article est mis à jour @Pam
      - <del>Page Hainaut : le texte "Si vous voulez nous joindre, faites uniquement le 0000/ 00.00.00 (le fixe semble fonctionner mais c’est une erreur car il n’est plus dévié...). Merci pour votre compréhension" sur fond vert --> à mon avis, il manque le CSS sur les autres pages</del>
      - <del>Modif article AAA bbbbbbbb --> mettre dans chaque province et enlever le mot clé interprovinces</del>
      - <del>Corriger  la date de fin des activités qui était la même que la date de début</del>
      - Corriger le calendrier <del>des résultats et</del> des photos qui doivent ressembler au calendrier général <del>et effacer le bouton 'precedant' qui est en trop dans la page des résultats et corriger l'orthographe du mot en "précédent"</del>
      - Changer la taille du lieu et de la date dans la présentation des événements liés à l'article
      - Ajouter Style pour slider : texte avec contour
      - Corriger le compteur de documents
      + Gérer le contenu du sommaire des provinces pour l'affichage de 4 articles 1) Province 2) Fédéral de manière suivie Gauche haut, Gauche bas, Droite haut; Droite bas. --> Peut-on faire plutôt apparaitre les articles les plus récents : Haut gauche, haut droit, bas gauche, bas droit (= logique de lecture)? 
      - page lien : mettre logo pour chaque lien @Pam --> certains lien sont en double mais n'apparait pas dans les articles --> dans codage du site?
      + boîte modale des photos dans un événement qui affiche les photos de tous les événements de l'article à corriger !
      - Formations AAA bbbbbbbb : apparaissent toujours dans "Prochaines formations" sur le site des provinces (alors que ce n'est pas de l'interprovincial et que j'ai encodé chaque journée de formation dans la province). sans doute à cause du mot clé "formations"? 
      <del>+ Retravailler les pages de la rubrique Formations...</del>
      - STUUT avec le slider : quand j'ai supprimer les mots-clés de la bannière voeux (pour que ca n'apparaissent plus dans le slider fed ni dans les provinces), plus aucuns sliders ne s'affichaient dans les provinces. J'ai dû changer la date de création de l'article "Aaaaa Bbbbb" pour que ça réapparaissent dans le slider des provinces.
      - Site AAAAAAAAAAA : Pour les photos, les mettre de base dans le portefolio
      <hr/>
      
      :Projet 2 - Exemple de liste pour l'encodage
      - Refaire fonctionner l'aide en ligne des plugins fin:2013-05-26 commit:z72345 @1 @aide @sad
      o Utiliser Tickets pour remonter les problème du site, les actions à réaliser voire les erreurs sur la présentation des plugins @2 @sad commit:z70345 
      - Ajouter un menu des langues disponibles fin:2013-05-26 commit:c12345 @1 @traduction
      + Vérifier la gestion correcte des langues dans les pages @1 @traduction
      + Vérifier les traductions @1 @traduction
      On parle ici des traductions du plugin Plugins SPIP et du Upload de SPIP !
      x Mettre en place la gestion des tags en plus des catégories (plugin étiquettes ?) fin:2013-05-28
      = Revoir la présentation du formulaire de sélection des plugins en vedette ou supprimer cette fonction
      
      :Projet 3
      ! Etendre le serveur d'aide et le promouvoir @2 @aide @sad
      ? Ajouter une fonction d'agrégateur de profil utilisateur pour compléter l'aspect développement @3
      </todo>

      J’ai juste anonymisé un peu... ;-)

    • Sinon, je viens de mettre à jour avec la version 3.0.7 et le message d’erreur ne s’affiche plus. 👍🏻

    • Oui alors j’avais bien raison : il n’est pas possible d’avoir ce type de warning si tu n’as pas une erreur de syntaxe dans la todo. Et c’est le cas :

      Si tu regardes ta première tache du projet 1, tu as une balise del qui est avant le + qui indique un début de tache. Et d’ailleurs tu ne vois pas la puce de la tache !

      Bon donc j’hésite à conserver cette modification car on ne verra plus les erreurs. Ou alors j’envoie une erreur en affichant un truc qui dit que la syntaxe est mauvaise. Qu’en penses-tu ?

    • Oui, le mieux est que les erreurs puissent se voir, peut-être ajouter : « vérifier votre syntaxe » lorsqu’une erreur apparaît, comme tu le proposes... De mon côté, je viens de corriger l’énumération de la liste... Je me demande d’ailleurs pourquoi j’ai utilisé la balise <del></del> ? Mais ça, c’est une autre histoire 😂

      Enfin Merci pour ta réactivité 👍🏻

    Répondre à ce message

  • 1

    Bonjour,

    Ce plugin qui semble peu utile rend d’excellents services ! Pensez-vous qu’il sera porté sur la version 4.0 de Spip ?

    Merci

    • Bonjour,

      Il l’est déjà compatible SPIP 4. C’est juste que le tag n’a pas encore été créé.
      J’essaye de m’en occuper au plus vite.

    Répondre à ce message

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