source: spip-zone/_plugins_/precode/trunk/todo.txt @ 106901

Last change on this file since 106901 was 106901, checked in by tetue@…, 2 years ago

blabla

File size: 4.5 KB
Line 
1= TODO
2= pour Simple C
3
4https://mensuel.framapad.org/p/simplec
5
6== WHY
7Ce plugin a pour vocation de rationaliser l’affichage du code sous SPIP, par l’usage des éléments HTML corrects <code> et <pre>, en préservant les chouettes avantages du traitement du code par SPIP.
8
9Constat / problèmes à résoudre :
10- SPIP génère du code tout pourri-old pour <cadre> et aussi <code> :
11il faudrait du <pre><code> (pour les 2)
12- L’intérêt de <cadre> est de faciliter le copier-coller :
13ce qui peut se faire via JS auj.
14- Nous avons 2 raccourcis pour 3 effets :
152 effets et 1 seul raccourci suffisent.
16
17dépôt :
18https://bitbucket.org/tetue/simplec/
19
20
21==== ==== ==== ==== V1
22
23== Code généré - HTML — DOING by tetue
24Dans l’immédiat, ce plugin fait POC, en corrigeant le code généré de SPIP qui est simplifié (patch à supprimer ultérieurement) et n’a plus que deux formes principales, suffisantes et conformes aux standards :
25
26exemple de <code>code</code> inline
27
28<pre><code>Exemple de
29code en bloc</code></code>
30
31- Fournir une page/skel de test/exemplaire ?
32x Expliquer à quoi sert <pre> -> http://romy.tetue.net/a-quoi-sert-la-balise-pre
33
34
35== Copier facilement — JS — TODO
36L’intérêt de <cadre> était de présenter du code facile à copier. Cela peut se faire de façon automatisée via JS. Exemple sur les extraits de code de cette page :
37http://a11y-style-guide.com/style-guide/section-media.html
38
39x insérer auto un bouton « copier » à chaque bloc <pre><code>
40- et pourquoi pas plutôt à chaque bloc <pre> (qu’il contienne du code ou pas) finalement ?
41x qui a pour action de copier auto le code dans le presse-papier local
42x prévoir feedback confirmant la copie
43x détail luxueux : une seule class .copied à la fois dans la page (pour éviter le feedback multiple, qui ne correspond pas à la réalité de l’action)
44- avec les aria qui vont bien pour l’accessibilité
45= on verra ensuite comment looker toussa — DOING
46- pas d’autre gadget : on se contente de couvrir le périmètre fonctionnel existant
47- <cadre> est consécutivement déprécié.
48
49
50== Partager
51Pour pouvoir le partager dans SPIP, il faut un fichu nom à ce plugin :
52- j’aime bien « code » tout simplement (mais peut-être problématique comme prefix ?)
53- sinon « PreCode » ? « CodePre » ?
54x « Simple C » = dans l’idée d’un raccourci simplet unique <c>… finalement non
55- What’s else ?
56
57
58
59==== ==== ==== ==== V2 ?
60
61== Raccourcis — SPIP — TODO
62Puisque l’on peut faire la même chose qu’avant, mais avec un seul, il n’est plus nécessaire d’avoir 2 raccourcis différents.
63
64Améliorer le raccourci <code> pour qu’il génère :
65- du code en ligne balisé de <code>
66- du code en bloc balisé de <pre><code>
67
68= avec les attributs qui vont bien : dir='ltr'
69- faut-il maintenir la class='spip_code' ?
70- voir aussi : https://core.spip.net/issues/2504
71- préserver le SUPER-méga-top-génial traitement de SPIP qui encode automatiquement ce qui est dans <code>
72
73Rétro-compat : l’ancien raccourci <cadre> est déprécié (à ne plus utiliser) mais maintenu pour rétrocmpat :
74= <cadre> fait comme <code> en bloc
75- supprimer les cols='40' rows='7' résiduels
76
77<pre> n’est pas un raccourci SPIP, mais devrait pouvoir être utilisé sans dommage :
78- empêcher SPIP de traiter les balises et raccourcis contenus dans <pre> (comme pour <code>)
79- sinon, a minima, remplacer automatiquement le <pre> saisi par <html><pre> ?
80- pre respecte les espaces, indentations, retours… => ne pas générer de <br> dans <pre><code>
81- voir : https://core.spip.net/issues/3990
82
83
84== Style — CSS — TODO by tetue
85- Supprimer les sélecteurs spip_code et spip_cadre
86= Prévoir feuille minimale, injectée auto, pour s’assurer d’un rendu correct.
87- Ne pas imposer de look particulier.
88- La coloration syntaxique relève toujours d’autres plugins.
89
90
91
92==== ==== ==== ==== V3++
93
94== Evol/idées — STANDBY (mais DOING quand même par Romy)
95
96Ce serait super pour les lecteurices, s’ils savaient à quel type de code ils ont affaire, histoire de savoir dans quel format de fichier l’utiliser :
97- Un raccourci abrégé, plus rapide à écrire : <c> ?
98- Pouvoir déclarer facilement la nature du code, par exemple : <c|html>, <c|spip>, <c|css>, <c|js>, <c|php>, etc.
99- Qui générerait respectivement <pre class="html" (ou <pre data-lang="HTML"><code> ; vérifier la pertinence de l’attribut data-lang), etc.
100x Afficher consécutivement « code html » en :before juste avant le bloc correspondant (sinon rien)
101x Avec le joli style qui va bien
102
103Proposer panneau de conf styles ?
104( ) wrap, no-wrap
105( ) dark, light
106
107/* end */
Note: See TracBrowser for help on using the repository browser.