Wikini

MacroWikini

PagePrincipale :: DerniersChangements :: DerniersCommentaires :: ParametresUtilisateur :: Vous êtes ec2-54-81-33-119.compute-1.amazonaws.com

Introduction

Les MacroWikini sont une proposition pour améliorer la personnalisation de WikiNi.
Les MacroWikini ne sont pas encore réalisées.

[j'ai pas mal réorganisé la page en essayant de respecter les points de vue de tous. J'ai conservé les débats originaux dans MacroWikiniArchives -- CharlesNepote]

Besoin

L'objectif des MacroWikini est de pouvoir intégrer à une page des contenus dynamiques élémentaires.
Par exemple :
Le nom de VariableWikini? serait peut-être plus juste. Ces variables sont idéalement des données systématiquement ou très souvent calculées.
Ces variables permettent par exemple d'envisager la gestion du menu non par header.php mais par une variable de configuration :
(Note : dans le second exemple la configuration du menu est totalement confié à la page MenuDuWiki.)

Avantages :

Inconvénients :

Contraintes

Idéalement, les MacroWikini doivent :


Propositions de MacroWikini


Je vous propose de lister ici même tout ce que nous voulons comme différentes MacroWikini.
Ca nous permettra de scinder le débat en plusieurs parties et de s'entendre dans un premier temps sur le contenu des macros.













- Ce qui précèdent sont des actions "donner telle information". Il faut généraliser. L'utilisateur voit des actions sur des variables pas des variables. Wikini est un objet que je manie , sur lequel j'agis pour obtenir quelque chose.
J'ai donc "besoin" d'une "action".... (Mais je comprends très bien que le développeur y voit des variables ;-o)
Ces actions ne sont pas liées à un début, une fin de page mais à tout ou partie de la page...
--FidelioEspoir




Ailleurs




Solutions techniques


Solution 1 : des actions spécialisées


Des actions spécialisées permettent d'afficher des données spécialisées sur le système, les utilisateurs, etc.

On verra à ce titre les deux actions développées par GarfiledFr? :

Avantages :

Inconvénients :


Solution 2 : une seule action


Cette solution voit la création d'une seule action, par exemple, {{var}} pour traiter tous les besoins en terme de macro.

Par exemple :

<?php

if (!$this->GetParameter("var")) { echo "Vous devez spécifier une variable à l'aide du paramètre \"var\""; }
else {
    switch(
$var)
        {
        case 
"user":
            echo 
$this->Format($this->GetUserName());
            break;
        case 
"page":
            echo 
$this->Format($this->GetPageTag());
            break;
        default:
            echo 
"<i>La variable </i>$var<i> n'existe pas.</i>";
        }
    }
?>


Avantages :

Inconvénients :

Je pense qu'il faut relativiser l'inconvénient de la taille du code : je ne vois pas WikiNi avoir plus d'une trentaine de variables, même à long terme... -- CharlesNepote

Tout a fait, il est peu probable que WikiNi ait plus d'une trentaine de variables. Mais mon argument principale sur la séparation en plusieurs actions est la "catégorisation" des variables (c'est peut être plus clair comme cela). Cela permet de représenter une action comme un objet pour l'utilisateur, cet objet propose des attributs et éventuellement des services (ie méthodes). De plus, le nom des variables est plus simple : si l'on dispose de 2 actions {{sysinfo}} et {{userinfo}}, on obtiendra le nom de l'utilisateur courant en utilisant {{userinfo info="name"}} et le nom du site wiki en utilisant {{sysinfo info="name"}} (par exemple). -- GarfieldFr


Discussions

Ces variables pourraient être appelées à partir de deux points d'interrogation : ??exemple??. -- CharlesNepote

Par contre, l'utilisation de la syntaxe ??user_name?? est tout à fait pertinente, mais la question est de savoir à quoi vont servir ces macros. Il est peu probable que l'utilisateur lambda utilise les macros car elles sont destinées à la mise en forme du wiki : Les MacroWikini sont une proposition pour améliorer la personnalisation de WikiNi.. A priori, seul l'administrateur du wiki devrait utiliser ces macros et la facilité d'utilisation devient un argument peu convainquant. -- GarfieldFr


Une idée sur la syntaxe de ces/cette action, plutôt qu'écrire {{var var="user_name"}} il serait mieux d'écrire : {{var/user_name}}.
Pourquoi ? Simplement pour pouvoir passer des paramètres à un service de l'action. Par exemple, imaginons un service "un_service" rendu par l'action "var", ce service peut prendre des paramètres en entrée. La syntaxe deviendrait alors : {{var/un_service="liste des paramètres"}}. Avec une telle syntaxe on se rapproche beaucoup du concept de macros, c'est à dire une fonction executée par le système.
Pour voir un exemple de service: http://codedb.delphicenter.com/wiki/, la zone d'identification est un "service" fourni par l'action {{userinfo}}.
--GarfieldFr



Peut-être peut-on envisager de créer la notion d'alias : ??user_name?? étant un alias renvoyant à l'action {{var content="user_name" style="name"}}. -- CharlesNepote

Je ne pense pas que faire un alias soit nécessaire, en effet, ces macros ne seront que très peu utilisées et par des personnes qui savent ce qu'elle font (en principe), en général se seront les responsables du wiki. De plus, une syntaxe courte du style ??xxxxx?? rendrait l'utilisation confuse, dans WikiNi, les symboles de ce style sont plutôt réservés au formatage du texte, ici il ne s'agit pas d'une mise en forme. --GarfieldFr

AMHA: Un wiki conformément à sa philosophie, ne doit pas séparer les "utilisateurs qui savent" et "ceusse qui savent pas". Il ne doit pas privilégier un niveau d'administration (sauf celui d'accès à la base de donnée, privilège/responsabilité social reconnu par le fait de la création du wiki. Tous sont maintenant capables d'écrire dans une page. Ils rêvent déjà d'y dessiner, d'y réfléchir... Ils rêveront d'y agir.
Pour maintenir la facilité d'écrire, il faut bannir le plus possible toute syntaxe nouvelle, toute règle syntaxique nouvelle. Donc gardons {{nomaction nomparamètre=valeurparamètre...}}.
Pour maintenir la facilité de comprendre, il faut maintenir ce dossier "actions" et y regrouper toutes les actions. L'utilisateur n'a plus à chercher dans la jungle des fichiers. Il sait qu':
--AMHA d'utilisateur insatiable, FidelioEspoir

Pour faire avancer le sujet, je propose de compléter tout d'abord la section ""Proposition de MacroWikiNi". -- CharlesNepote


CharlesNepoteASuivreEnPriorite PatrickPaulASuivre PageSuivieParGarfieldFr GiJoASuivre


Il n'y a pas de commentaire sur cette page. [Afficher commentaires/formulaire]