Les articles publiés sur le site

  • Evolution #4720 : [css vars] Utiliser nos variables CSS dans le thème de l’espace privé

    9 avril 2021, par nicod _

    Là, je pense que la proposition de Jluc de documenter les css va devenir utile...

  • Evolution #4720 (Nouveau) : [css vars] Utiliser nos variables CSS dans le thème de l’espace privé

    9 avril 2021

    Avec https://git.spip.net/spip/spip/pulls/141 est arrivé la définition de variables CSS dans l'espace privé de SPIP.
    Il s'agirait maintenant de les utiliser partout dans l'espace privé :)

    Elles sont (aujourd'hui) définies là https://git.spip.net/spip/spip/src/branch/master/prive/themes/spip/vars.css_fonctions.php#L32 dont certaines valeurs proviennent pour partie de https://git.spip.net/spip/spip/src/branch/master/ecrire/inc/couleurs.php#L40 et pour partie de https://git.spip.net/spip/spip/src/branch/master/prive/themes/spip/style_prive.css.html#L21

    Les déclarations de style_prive.css.html devraient être uniquement en variables CSS, et les calculs éventuels fait ensuite avec calc() tel que padding: calc(var(--spip-css-line-height) / 2);
    CSS est hyper sympa, il sait faire des calculs même s'il y a des unités sur ses valeurs.

    Seuls left et right a priori ne sont pas remplacables tel quels, dans le nom des propriétés (on ne peut mettre de variable css dans un nom de propriété) :
    - soit on continue à utiliser par exemple : margin-#GET{left}: ...
    - soit on bascule sur margin-left: ... et on applique le filtre |direction_css sur le résultat du squelette ou fichier css (avec certaines imprécisions possibles avec ce filtre)
    - soit, plus tard, un jour, on pourra utiliser les valeurs *-inline "margin-inline" https://caniuse.com/?search=margin-inline ; mais "float" n'est pas encore concerné par ce placement (https://caniuse.com/mdn-css_properties_float_flow_relative_values)

    Dans la valeur par contre, nous avons la variable adaptée :
    float: var(--spip-css-left);

    On a à disposition pour les couleurs un jeu de variables dans la couleur du thème, et un jeu de niveau de gris

    --spip-color-theme-white
    --spip-color-theme-lightest
    --spip-color-theme-lighter
    --spip-color-theme-light
    --spip-color-theme
    --spip-color-theme-dark
    --spip-color-theme-darker
    --spip-color-theme-darkest
    --spip-color-theme-black

    --spip-color-white
    --spip-color-gray-lightest
    --spip-color-gray-lighter
    --spip-color-gray-light
    --spip-color-gray
    --spip-color-gray-dark
    --spip-color-gray-darker
    --spip-color-gray-darkest
    --spip-color-black

    Ce sont les variables à utiliser préférentiellement pour les couleurs du privé.
    Il conviendra de définir des variables sémantiques, tel que (--spip-color-border) pour certains usages fréquents, et pour faciliter l'homogénéisation des différentes pages.
    Il existe d'autres variables de couleurs pour des usages plus spécifiques.

    Ceci fait permettra de simplifier la lecture des CSS de l'espace privé, en éliminant en passant de CSS depuis des squelettes SPIP à des fichiers CSS directs, saufs pour certains cas très précis, mais limités.
    Ça devrait permettre également d'homogénéiser ses couleurs.

    Pour comparer les couleurs avant / après, on peut se baser en première approche sur l'image https://git.spip.net/attachments/a92cc317-b837-42b6-a00e-92d2a6c201e0 qui compare avec les couleurs calculées vs les variables CSS. Ça permet de dire tiens : "ce40" = "couleur claire | couleur éclaircir { 40 }" c'est à peu près --spip-color-theme-light => on le remplace par cette variable. Etc.

  • Anomalie #4719 (Nouveau) : [d3js] Décorreler la durée (3 mois, 2 ans) du type d’affichage (jours /...

    9 avril 2021

    Sur les statistiques des visites, les boutons 3 mois, 2 ans, 5 ans, infini, sont associés à un affichage spécifique qui regroupe les données en tranches.

    - Jusqu'à 3 mois, on regroupe par jour,
    - 2 ans, on regroupe par semaine,
    - au delà de 5 ans, par an.

    Il y a 2 raisons :

    - la première est une question d'affichage : afficher 730 jours (2 ans) ferait des barres trop étroites pour être lisibles
    - la seconde concerne l'archivage des statistiques (actuellement optionnelles) qui, si on le fait, regroupe les visites de plus de 2 ans, sur le 1er jour du mois, et de plus de 5 ans sur le premier jour de l'année.

    Pour décorréler ces éléments, il faudrait 2 graphiques :

    - l'un petit avec l'ensemble des données qui sert de sélecteur de plage de date,
    - l'autre qui affiche le contenu de la plage sélectionnée. Tel que https://bl.ocks.org/robyngit/89327a78e22d138cff19c6de7288c1cf (ici un graphique "line", mais c'est la même idée avec l'histogramme)

    L'inconvénient est qu'il faut charger l'ensemble des données que l'on connaît obligatoirement pour avoir ce petit graphique, ce qui peut être copieux sur un affichage par jour (3600 lignes donc pour 10 ans de stats). A priori c'est pas non plus une quantité extravagante à traiter en JS. Enfin l'affichage "histogramme" est peut être pas le plus adapté dans ce cas car si on sélectionne une trop grande plage, les barres seraient trop étroites.

    Cependant le calcul actuel du json et le JS actuel des statistiques savent traiter les durées et types d'affichage que l'on désirerait. Ça rend juste le graphique potentiellement illisible si le fait tel quel.

  • Anomalie #4715 : Pas de scroll vers le groupe de mots depuis la colonne navigation

    9 avril 2021, par b b

    Je ne dis pas BRAVO môsieur, maintenant qu'on est en git il est temps de se discipliner, donc fini les reports vers master ^^

    Merci comme même :p

  • Anomalie #4717 (En cours) : Erreurs nombre d’argument des filtres

    9 avril 2021, par cedric -