[spip-dev] Option de conf partagée ?

Plip,

Dans le cadre du chantier HTML5, une question revient : *permettre*
aux gens de mettre du HTML5 dans le code de leurs sites: squelettes,
plugins et core (même si le core ne produit plus beaucoup de HTML en
dur)... mais sans l'obliger pour autant.

Une des stratégies possibles est la surcharge :
- par exemple le plugin html5 surcharge certains formulaires de SPIP
- le plugin zpip_html5 surcharge des squelettes de Zpip-dist
- on pourrait introduire de nouvelles saisies (date, url, recherche...)

Le problème de la surcharge est qu'elle revient souvent à forker des
squelettes parfois gros. Au point que parfois, comme pour les saisies
justement, il faudrait en réalité surcharger les squelettes de toutes
les saisies existantes, car HTML5 permet de marquer les champs
obligatoires par l'attribut "required". Dans ce même plugin, il y
aurait aussi de nouvelles options (yaml) des saisies existantes : par
exemple "autofocus" pour indiquer qu'un champ doit prendre le focus
automatiquement au chargement.

Du coup, je me dis qu'il serait pratique d'introduire une option de
configuration du site qui dirait "HTML5 oui/non" (ou "version de HTML",
par défaut à "html4", "4", "xhtml1"...), mais modifiable en "5" ou
"html5", et sur laquelle les divers squelettes et plugins (et le core,
pour les quelques cas où c'est pertinent) pourraient s'appuyer.

Des plugins tels que saisies, formidable, crayons, champs extras 2
poruraient regarder cette option et ajuster leur comportement dans
les squelettes et/ou le PHP. Dans le core, actuellement je n'ai
rencontré que le surlignage (<mark> au lieu de <span>).

L'avantage de cette approche est que l'option pourrait être positionnée
automatiquement à "html5" par les plugins html5 et autres, mais que le
webmestre pourrait aussi la régler manuellement.

Est-ce que vous avez d'autres idées de stratégie ?

Par contre je ne connais pas encore assez bien les rouages de SPIP : si
cette idée est retenue, quelle est la meilleure approche technique ?
Il y a par exemple une meta ; ou encore une constante ; ou une balise
#HTML5, pratique à l'usage dans les squelettes, mais difficile à
définir sans un plugin obligatoire à tout webmestre souhaitant profiter
des saisies HTML5 par exemple (ça serait un peu bizarre).

Des idées ?

Je me réponds à moi-même.

19/06/10, davux:

Du coup, je me dis qu'il serait pratique d'introduire une option de
configuration du site qui dirait "HTML5 oui/non" (ou "version de
HTML", par défaut à "html4", "4", "xhtml1"...), mais modifiable en
"5" ou "html5", et sur laquelle les divers squelettes et plugins (et
le core, pour les quelques cas où c'est pertinent) pourraient
s'appuyer.

C'est fait :
http://trac.rezo.net/trac/spip/changeset/15794

Par contre je ne connais pas encore assez bien les rouages de SPIP :
si cette idée est retenue, quelle est la meilleure approche
technique ? Il y a par exemple une meta ; ou encore une constante ;
ou une balise #HTML5, pratique à l'usage dans les squelettes, mais
difficile à définir sans un plugin obligatoire à tout webmestre
souhaitant profiter des saisies HTML5 par exemple (ça serait un peu
bizarre).

En fait je n'avais pas réalisé au moment de mon mail, mais tout
bêtement on peut fournir une meta pour stocker la conf *et* une balise
#HTML5 pour faciliter l'utilisation dans les squelettes. C'est fait,
donc.