Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Vie communautaire


Index du Forum » Vie communautaire » Le langage de forum de la v5 - Lightscript (RFC)
Lephenixnoir En ligne Administrateur Points: 24673 Défis: 170 Message

Le langage de forum de la v5 - Lightscript (RFC)

Posté le 02/01/2018 14:50

Salut à tous ! Je voudrais vous présenter le draft actuel du langage de forum de la v5 - nommé Lightscript, un gentil dérivé de Markdown conçu pour Planète Casio. J'ai noté RFC (Request For Comments) dans le titre, c'est une manière fun de dire que vous êtes invités à donner votre avis !

2018-02-06 : La spécification est freezée jusqu'à nouvel ordre ; j'implémente. Vous pouvez quand même faire des remarques ou proposer des extensions, elles sont bienvenues !

Ce langage servira à écrire tout ce qui existera sur la v5 ou presque : les messages sur le forum, les descriptions et commentaires de programmes, les tutoriels, les messages privés, etc etc. Les seules exceptions notables que je puisse déjà évoquer sont les tutoriels, que l'on pourra aussi écrire (au choix) en LaTeX, et l'IRC qui fait bien ce qui lui plaît.

Je tiens à préciser que je suis en train d'implémenter le programme de conversion (vers HTML), mais je débute encore. Rien n'est définitif, tout est discutable.

La description du langage est ci-dessous : vous pouvez réagir sur l'ensemble ou pointer des conflits de syntaxe, des oublis, des fonctionnalités manquantes qui vous sembleraient intéressantes. Il y a des choses que j'ai éliminées volontairement ; je les ai citées tout à la fin avec un argumentaire. N'hésitez pas à en discuter. Je compte sur vous !

Le modèle « théorique »

Sans rentrer dans les détails compliqués, un message en Lightscript c'est une suite de blocs : paragraphes, citations, listes à puces, titres par exemple. La fin d'un bloc est soit marquée explicitement par la syntaxe (comme les citations qui se terminent toutes par >>>), soit marquée par un retour à la ligne ou par une ligne vide. C'est important, donc soyez attentifs !

Beaucoup de blocs contiennent du texte interprété (par exemple les paragraphes ; mais pas les blocs de code, dont le contenu est recopié tel quel dans le HTML). Le texte interprété peut contenir des objets textuels, par exemple un passage de texte en gras, un lien hypertexte, ou une référence à un programme dans la base de données.

Passons maintenant aux réjouissances.

Détail des blocs

Les paragraphes sont exactement ce que vous pensez. Un paragraphe représente une unité de texte « par défaut », et se termine habituellement sur une ligne vide. Il peut contenir des retours à la ligne, qui sont alors fidèlement reproduits (ce qu'on fait actuellement dans la v42). Quand vous sautez une ligne, un nouveau paragraphe commence. Savoir si plusieurs lignes vides sont fusionnées en une seule n'est pas encore décidé !

Comme en Markdown, je vous propose deux styles de titre : soit avec des #, soit soulignés. Le premier type, c'est un ou plusieurs # suivis d'un paragraphe. Ça va donc jusqu'à la prochaine ligne vide. Le second type (décoratif), consiste en un paragraphe souligné par des = ou des -. La ligne qui souligne indique très naturellement la fin du bloc de titre.

# Titre de page

## Titre de catégorie. On a le droit de le
prolonger sur plusieurs lignes

...

###### Titre de niveau 6

Titre de page alternatif
========================

Titre de catégorie alternatif
-----------------------------

Les citations et les blocs de code ont une syntaxe commune : ils commencent par trois symboles ouvrants sur une ligne (avec des options facultatives) et se terminent par trois symboles fermants sur une ligne. Les symboles doivent être placés au tout début de la ligne, sinon ça fait un paragraphe !

>>> DarkStorm
Oui. Il suffit de la coder. :waza:
>>>

``` basic lines
Getkey→G
G=47⇒Goto 9
G=27⇒X-1→X
G=37⇒X+1→X
```

Niveau listes, je propose des listes à puces et des listes ordonnées. Pour les listes ordonnées, la numérotation commence par le nombre indiqué sur la première ligne puis incrémente les numéros en ignorant les valeurs suivantes (c'est classique) ; ça vous évite de tout renuméroter chaque fois que vous insérez un truc.

- Ceci est une liste à puces
* Elle continue même quand on change de puces
+ On peut y mettre du `code`, du *formatage*...

0. Real developers count from 0
1. No, real developers use butterflies!
2. Ah, yes, there's good ol' C-x M-c M-butterfly for that.
3. Damn, Emacs...

Il me reste les définitions de références. Parfois les liens de la forme [label](url) sont lourds à lire parce que l'URL est longue, parfois vous voulez utiliser plusieurs fois la même URL. Dans ce cas, vous pourrez écrire [label][ref-name] et définir plus loin la valeur de ref-name. C'est ce que j'appelle une définition de référence !

[ref_name]: http://www.example.com

Une définition de référence tient sur une unique ligne. Je reviendrai sur ces liens dans la section suivante !

Les objets textuels

C'est là qu'on s'amuse à mettre n'importe quoi dans nos phrases. Commençons par les options de formatage :

*emphasis*               (italique)
**strong**               (gras)
~striked~                (barré)
`code` ou `code`[lang]   (code inline)
$math$                   (formules KaTeX)

Je pense que tout est à peu près explicite. Le cas `code`[langage] permet de mettre du code coloré dans une phrase. Il ne faut pas d'espace entre la backtick fermante et le premier crochet !

Les liens sont toujours une question délicate. La détection automatique des URLs dans les messages (autolinking) est compliquée à écrire et à utiliser, donc je vous propose de simplifier votre vie (et la mienne !) en mettant des chevrons (<url>). De façon générale, prenez le temps de mettre des noms sur vos liens, ce sera toujours supérieur !

Des liens, il y en a plusieurs types : certains sans noms, d'autres avec. En spécifiant un # au début de l'URL, vous pouvez référencer une section de votre article/tutoriel, ça enverra vers le titre associé !

<http://example.org>
[lien externe](http://example.org)
[lien interne](#compilation-manuelle)

Vous pouvez également décider de spécifier l'URL plus tard, à l'aide d'une référence (rappelez-vous, le bloc de définition de référence sert à ça !). Vous pouvez aussi utiliser une ressource (voyez plus loin) comme cible, ou tout simple une page de Casio Universal Wiki.

[lien par référence][ref-name]
[lien vers ressource][:uLephenixnoir]
[lien vers le wiki][[Basic Fx-CG]]

Comme avant, il y aura des médias. La syntaxe pour les utiliser est assez générale :

[[image:http://url.png 640 480]]
[[video:youtube.com/watch?v=deadbeef]]
[[wiki:Fxlib.h]]

Je n'ai pas encore fixé le type de choses qu'on pourrait utiliser avec ; je vous invite à suggérer. Le comportement pourra être différent si cet objet est utilisé en plein milieu d'une phrase ou tout seul sur un paragraphe. Par exemple, on aura envie de centrer les images si elles sont toutes seules.

Viennent ensuite les spoilers. Les discussions ont été longues et compliquées. Pour tenter de concilier les partis, je vous propose un spoiler volontairement moins puissant que l'original. C'est un spoiler inline, et vous ne pouvez donc mettre que quelques phrases dedans. Vous pouvez le tester sur jsfiddle.net :


And then they (((all die)))!

Il reste les choses les plus fun. D'abord les notes de bas de page (pour l'humour dans les articles en page d'accueil ^-^ ), et ensuite les références aux objets de Planète Casio :

Oui, mais c'est impossible ! [^Sauf si P=NP.] (note de bas de page)
:m2451 (référence au message numéro 2451)
:f234 (topic numéro 234)
:t32 (tutoriel numéro 32)
:rLephe/gint (dépôt Gitlab `Lephe/gint`)
...

Toutes les références de Planète Casio utiliseront la syntaxe :[a-z][^ :]+ (c'est-à-dire, ":" suivi d'une lettre minuscule suivi d'un mot non vide qui ne contient ni espace ni ":") et elle leur est strictement réservée. Cela n'interfère pas avec nos smileys !

On peut aussi utiliser ces références dans des liens (quand c'est approprié). Par exemple :

[Profil de Ne0tux][:uNe0tux]

Vous avez aussi les mentions : de gens, ou de groupes. L'usage des mentions de groupe trop larges type @@all sera probablement réservé à l'équipe pour éviter des problèmes :

Je pense que @Cakeisalie5 connaît la solution à ce problème.
Topic à nettoyer (@@mod).
@<pseudo>
@@all @@admin @@mod @@redac etc.

Il me reste, finalement, les smileys. Vous les connaissez assez bien pour ne pas avoir besoin d'une description. Je ne vous cache pas que j'aimerais bien remplacer les grands par des choses de taille raisonnable, ou les supprimer. Dans tous les cas, il y auras probablement de légères retouches de design sur les smileys habituels (presque rien).

Subtilités de syntaxe

Si vous n'avez pas envie de vous casser la tête, sautez cette section. Si vous pensez que la syntaxe ne va pas tenir le coup, lisez-la ; vous aurez peut-être des réponses. Si non, prévenez-moi dans les commentaires !

Pour le formatage des objets textuels, vous pouvez avoir envie de mettre un backtick dans le code. Pour ça, doublez les backticks sur le côté. Tout ce qu'il faut c'est que le code intérieur ne contienne pas la marque de fin. S'il apparaît des backticks, mais pas en même nombre, ce n'est pas grave :

``$ cat `find -iname *.c` | grep MACRO``
`function(``args``);`
```function(``args``, `arg`);```
  -- ` et `` sont tous deux présents dans le code, donc on triple

Pour le gras et l'italique, c'est pareil, sauf qu'une fois tous les comptes terminés c'est la parité du nombre d'étoiles qui détermine le type de formatage que vous demandez (impair : emphasis, pair : strong). Ça marche aussi pour les citations imbriquées (et le code, comme vous vous en doutez) :

>>>> DarkStorm
>>> Eragon
Ok sinon il y a un moyen de tester la V5?
>>>
Oui. Il suffit de la coder. :waza:
>>>>

Je prévois que le bouton « Citer » calcule automatiquement un nombre satisfaisant de chevrons si le message à citer contient lui-même des citations. Faut pas déconner non plus !

Éléments à potentiellement ajouter

J'en ai déjà cité quelques-uns. Il me vient à l'esprit :

– De quoi centrer ou justifier le texte (paramètre du message)
– Des tableaux pour faire des statistiques *o*
– Les barres horizontales (facile à faire ça)

Éléments intentionnellement omis

Avec les discussions, j'ai mis à jour cette section. Voilà ce qui en reste ; les objets qui sont pour l'instant éliminés... avec explications.

Les spoilers ont été réduits à des objets inlines pour éviter qu'ils soient utilisés pour structurer les descriptions de programmes ou des grosses docs qui devraient être séparées en plusieurs pages. Le gameplay d'un jeu ne devrait pas être caché dans une boîte ! C'est le plus important. Les titres sont plus appropriés pour structurer et les grandes images seront redimensionnées automatiquement, donc cette restriction ne devrait pas gêner outre mesure. J'ai pu oublier des cas.

Le soulignement et le texte barré sont rarement utilisés. Le gras remplit efficacement le rôle de mise en avant prévu par le soulignement, et comme Lightscript ne précise pas ce que <strong> donne comme formatage, on peut aussi opter pour italique/soulignement sans gras. Le texte barré est difficile à lire. Honnêtement, j'ai surtout éliminé ces deux-là pour des raisons de syntaxe. J'ai eu trop de mal à trouver des moyens honnêtes de les introduire dans la définition du langage.

Les liens vers une page de profil et les barres de progression étaient compliqués à intégrer à la syntaxe, mais je peux réfléchir au premier avec la syntaxe réservée, par exemple :uLephenixnoir. Le second n'a à ma connaissance jamais été utilisé de façon productive, à part pour poster des commentaires de programmes qui balançaient un chiffre au lieu de donner des éléments intéressants sur l'état de développement des projets. On s'en passera sans peine, je pense.

Conclusion

C'est un très long post, je vous remercie de l'avoir lu jusque-là. Vous avez certainement des remarques à faire : j'y répondrai de mon mieux. Merci de votre aide !


Précédente 1, 2, 3, 4
Dark storm Hors ligne Labélisateur Points: 11641 Défis: 176 Message

Citer : Posté le 06/02/2018 19:39 | #


J'ai ajouté ça à ton message du coup
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir En ligne Administrateur Points: 24673 Défis: 170 Message

Citer : Posté le 06/02/2018 20:02 | #


Oh, merci.

Notez que je planifie que ces codes soient « transparents ». Pour le permalien, par exemple. Pour l'instant il est marqué d'un #, mais je pense normal qu'il rende ce numéro visible de base. Pareil quand on se balade sur un topic, à un endroit le numéro devra être visible par défaut (même en petit et en gris !).

Ajouté le 10/02/2018 à 22:31 :
Je sens que l'implémentation va être un peu galère, mon premier modèle inspiré des bons vieux parsers LR(1) étant en train de se faire jeter par la fenêtre par le langage.

L'inconvénient inarrangeable de ce langage est que le sens et le rôle des éléments n'est pas seulement déterminé par leur syntaxe mais aussi (et de façon incontournable, semble-t-il) par le contexte.

Va falloir que je réfléchisse un peu plus pour inventer une implémentation performante. Je tiendrai ce thread à jour et je tenterai de mettre une démo en ligne aussi vite que possible !

Ajouté le 19/02/2018 à 17:57 :
Bien, j'arrive maintenant à détecter et isoler proprement à peu près tous les blocs (c'est-à-dire tous sauf les définitions de références, que j'ai pas encore traitées).

J'ai un peu de parsing à faire pour isoler les éléments dans les listes et passer l'algorithme récursivement sur le contenu des quotes, et je pourrai mettre en ligne une démo. À ce stade, il ne me restera à faire « que » l'interprétation des éléments inline (pour laquelle j'ai pas encore d'algorithme robuste en cas d'erreurs de syntaxe).

Le programme possède deux niveaux de debug (log et verbose) et plus des erreurs qui sont émises quand des trucs sont mal faits. Mon objectif est de réussir à afficher du texte peu importe à quel point l'utilisateur a déconné dans la syntaxe, mais je ne me prononce par encore.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Ninestars Hors ligne Membre Points: 2462 Défis: 24 Message

Citer : Posté le 19/02/2018 19:25 | #


Aura-t-on des bugs avec les caractères indiens ?
Cakeisalie5 Hors ligne Ancien administrateur Points: 1964 Défis: 11 Message

Citer : Posté le 19/02/2018 19:28 | #


C'est pas très gentil envers Apple ça Ninestars.
Respirateur d'air, BDFL de Cahute, des utilitaires de communication pour calculatrices CASIO.


Mon blogMes autres projets
Ninestars Hors ligne Membre Points: 2462 Défis: 24 Message

Citer : Posté le 19/02/2018 19:39 | #


Haha
Lephenixnoir En ligne Administrateur Points: 24673 Défis: 170 Message

Citer : Posté le 19/02/2018 19:41 | #


Ninestars a écrit :
Aura-t-on des bugs avec les caractères indiens ?

Je garantis la compatibilité complète avec utf-8. C'est-à-dire que tant que vous me collez de l'utf-8 valide en entrée, je garantis que le programme ne va pas partir en live, et va ressortir le texte tel quel.

Ajouté le 21/02/2018 à 21:10 :
Bon voilà, c'est pas encore parfait, mais vous pouvez tester la version actuelle de Lightscript en ligne !

http://t0wer.ddns.net/lightscript

Pour l'instant ça montre la sortie du programme, mais dès qu'il y aura un rendu HTML, je le mettrai. Surtout, signalez-moi tout bug de l'interpréteur et/ou de la page web qui permet de tester, je ferai de mon mieux o/
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Dark storm Hors ligne Labélisateur Points: 11641 Défis: 176 Message

Citer : Posté le 21/02/2018 21:33 | #


Oh, very nice.
GG, le comportement est très propre.

Juste un petit détail, y'a moyen d'ajouter la syntaxe 1) 2) … pour les listes ordonnées ? C'est assez utilisé et intuitif pour que ce soit utile je pense.
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir En ligne Administrateur Points: 24673 Défis: 170 Message

Citer : Posté le 21/02/2018 21:34 | #


Ah, oui, malin ! J'ajouterai ça à mon prochain commit.

À l'inverse je crois que je vais retirer le + pour les listes à puces. Ça va faire planter tous les "+1". x)

Ajouté le 06/03/2018 à 20:17 :
Le service qui faisait tourner la démo sur mon Rapsberry Pi était visiblement arrêté (depuis quand ?). Je l'ai relancé.

Désolé pour ce genre de souci (qui risque de se reproduire), je ne suis pas assez calé en administration système pour le gérer correctement.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Gollum Hors ligne Membre Points: 1262 Défis: 2 Message

Citer : Posté le 26/03/2018 16:31 | #


Lephenixnoir a écrit :

Le service qui faisait tourner la démo sur mon Rapsberry Pi était visiblement arrêté (depuis quand ?). Je l'ai relancé.

Désolé pour ce genre de souci (qui risque de se reproduire), je ne suis pas assez calé en administration système pour le gérer correctement.


Down de nouveau, il semblerait.
Pour ce qui est du LightScript, j'adore.
Du typesetting propre dans les posts, ca va faire du bien. J'aime.
J'adore les smileys actuels de PC, ce serait intéressant de les vectoriser pour qu'ils ne fassent plus pixélisés.


j'ai fait un test sur , je trouve que ca rend plutot bien.
https://telegram.me/BrokenClock
Je suis de l'autre coté de la manche maintenant. Yay.
Lephenixnoir En ligne Administrateur Points: 24673 Défis: 170 Message

Citer : Posté le 26/03/2018 17:06 | #


J'ai relancé le script. Désolé de mon incompétence, mais je finirai probablement le Lightscript avant d'apprendre à gérer ça.

Gollum a écrit :
Pour ce qui est du LightScript, j'adore.
Du typesetting propre dans les posts, ca va faire du bien. J'aime.

Merci, ça fait très plaisir ! <3

Aha, bonne idée. Ce sera une option à ajouter. Ça te dit de nous vectoriser au moins les principaux ? On aura ça sous la main pour nos tests
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Gollum Hors ligne Membre Points: 1262 Défis: 2 Message

Citer : Posté le 26/03/2018 17:55 | #


Lephenixnoir a écrit :
Ça te dit de nous vectoriser au moins les principaux ? On aura ça sous la main pour nos tests

Je dois pouvoir faire ceux qui ne sont pas animés.
La mode est plutôt aux couleurs pleines, plutot qu'aux dégradés.


Vous préférez avec ou sans le degradé pour les nouvelles versions ?
https://telegram.me/BrokenClock
Je suis de l'autre coté de la manche maintenant. Yay.
Lephenixnoir En ligne Administrateur Points: 24673 Défis: 170 Message

Citer : Posté le 26/03/2018 17:56 | #


Perso j'aime bien les dégradés. (Après on doit pouvoir comparer avec des plats qui existent... )
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Breizh_craft Hors ligne Modérateur Points: 1171 Défis: 7 Message

Citer : Posté le 26/03/2018 17:57 | #


Perso, je préfère les dégradés. Je vais castagner ceux qui ont provoqué cette mode. Même Windows 95 avait de jolis effets
Breizh.pm – Un adminsys qui aime les galettes.
Zezombye Hors ligne Rédacteur Points: 1756 Défis: 13 Message

Citer : Posté le 26/03/2018 17:58 | #


Je sais pas si c'est moi mais les smileys vectorisés me semblent aplatis, ils sont pas exactement ronds.
Divers jeux : Puissance 4 - Chariot Wars - Sokoban
Ecrivez vos programmes basic sur PC avec BIDE
Gollum Hors ligne Membre Points: 1262 Défis: 2 Message

Citer : Posté le 26/03/2018 18:00 | #


Zezombye a écrit :
Je sais pas si c'est moi mais les smileys vectorisés me semblent aplatis, ils sont pas exactement ronds.

Légèrement. J'ai fait le premier à l'arrache en tant que proof of concept plus qu'autre chose.
https://telegram.me/BrokenClock
Je suis de l'autre coté de la manche maintenant. Yay.
Gollum Hors ligne Membre Points: 1262 Défis: 2 Message

Citer : Posté le 26/03/2018 19:04 | # | Fichier joint


Bon, ca fait un début


https://telegram.me/BrokenClock
Je suis de l'autre coté de la manche maintenant. Yay.
Breizh_craft Hors ligne Modérateur Points: 1171 Défis: 7 Message

Citer : Posté le 26/03/2018 19:07 | #


Je pense que les sourires pourraient être plus arrondis, ça fait un peu bizarre. Mais sinon, c'est classe !
Breizh.pm – Un adminsys qui aime les galettes.
Gollum Hors ligne Membre Points: 1262 Défis: 2 Message

Citer : Posté le 26/03/2018 19:11 | # | Fichier joint


Et les SVGs pour faire plaisir (D'ailleurs, y'a moyen d'autoriser l'upload de svg ou pas ?)

Breizh_craft a écrit :
Je pense que les sourires pourraient être plus arrondis, ça fait un peu bizarre. Mais sinon, c'est classe !


Quand ils font une taille de smiley, ca ne se voit pas trop, et ca permet de rester dans un style relativement rétro. Je dois pouvoir tester autrement si d'autres personnes sont du même avis.
https://telegram.me/BrokenClock
Je suis de l'autre coté de la manche maintenant. Yay.
Lephenixnoir En ligne Administrateur Points: 24673 Défis: 170 Message

Citer : Posté le 26/03/2018 19:15 | #


Pas mal ! J'aime bien la nouvelle version de waza. Avant que tu continues, éventuellement, on peut demander ce qu'en pensent les autres ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Gollum Hors ligne Membre Points: 1262 Défis: 2 Message

Citer : Posté le 26/03/2018 19:18 | #


Oui, fallais que j'arrete de tte manière.
J'ai un dm de web dev à faire pour dans 3 jours que je n'ai pas commencé et un plan de cours à faire pour dans 2 jours...
Bref, je suis en vacances jeudi aprem, faut juste que je me souvienne de revenir, hehehe
:new_waza: (XD)

Ajouté le 26/03/2018 à 20:02 :
Bon, j'ai eu marre de lire les pavés (intéréssants soit dit en passant) de la page 1, donc je vais poser deux trois commentaires.
(C'est une RFC, après tout)

1. BB Code -> Markdown
Personellement, je trouve l'idée magiquement intelligente. Les gens qui ont pour habitude de poster des pavés auront à coeur d'élever un autel à la gloire de Lephe.
Par réflexe, à chaque retour à la ligne, dans n'importe quelle textbox, je fais directement [Shift]+[Enter], l'habitude du LaTeX.
J'ai en revanche pitié de deux types de personnes : les lycéens un peu nigauds et peu débrouillard, qui ne vont pas comprendre pourquoi [Enter] ne résulte pas en un retour à la ligne, et Lephe, à qui tout le monde propose de maintenir PC_BBCode en même temps que LS.

Ce que je propose : un utilisateur non enregistré fait face à une textbox comme l'actuelle, sans les balises de BBCode. [Enter] retourne à la ligne.
En haut de la textbox, un interrupteur, default=False, active le mode markdown, qui pour la plupart des posts sera plus frustrant qu'autre chose. (Dans le cours d'une conversation normale sur le fofo, je ne veux pas vraiment m'embeter avec des niveaux de markdown.)

Un utilisateur verra l'interrupteur sur la dernière position utilisée.

2. Latex pour les tutos
Lephe a écrit :
tutoriels, que l'on pourra aussi écrire (au choix) en LaTeX,

Je kiffe LaTeX. Vraiment. Mais comment veux tu faire une visualiseur sur la page web ? En affichant une copie PDF ? Si ca marche, je dis oui, mais il ne faut pas que ca sorte de l'harmonie du site, et ca risque de te demander beaucoup de travail.

3. transition
Si la v5 fait disparaitre les éléments visuels legacy, ce que je supporte, on va se retrouver avec un amas de posts formattés selon les codes de la v4, avec des spoilers et des gros smileygifs, face a des posts propres en markdown. Tu comptes faire une conversion de grande ampleur ? ca va faire bizzare.

4. bande passante et stockage
Le site a du mal à tenir en periode prébac, comme toujours. Quel sera l'effet de la v5 là dessus ?

5. idées
-prévisualisation du LS
-auto-complétion quand mode LS/LaTeX
-smileys tout neufs
-ET RENDEZ MOI LES EASTER EGGS DE GLADOS POUR PÂQUES !
https://telegram.me/BrokenClock
Je suis de l'autre coté de la manche maintenant. Yay.
Lephenixnoir En ligne Administrateur Points: 24673 Défis: 170 Message

Citer : Posté le 26/03/2018 20:16 | #


Gollum a écrit :
J'ai en revanche pitié de deux types de personnes : les lycéens un peu nigauds et peu débrouillard, qui ne vont pas comprendre pourquoi [Enter] ne résulte pas en un retour à la ligne, et Lephe, à qui tout le monde propose de maintenir PC_BBCode en même temps que LS.

Mon implémentation prévoit cependant des retours à la ligne « naturels » car, comme tout un chacun serait bien malin de se rendre compte, le boîte de texte qui sert d'éditeur en bas wrappe automatiquement les lignes. Personne ne revient donc à la ligne au milieu d'un même paragraphe.

Gollum a écrit :
En haut de la textbox, un interrupteur, default=False, active le mode markdown, qui pour la plupart des posts sera plus frustrant qu'autre chose. (Dans le cours d'une conversation normale sur le fofo, je ne veux pas vraiment m'embeter avec des niveaux de markdown.)

L'idée serait quand même que s'il n'y a pas de markup le texte produit soit rigoureusement identique à celui entré dans la boîte. Avec ce que j'ai dit plus haut, ça marche. (Et du coup ça évite potentiellement la checkbox, à voir.)

Gollum a écrit :
Je kiffe LaTeX. Vraiment. Mais comment veux tu faire une visualiseur sur la page web ? En affichant une copie PDF ?

Visiblement pandoc sait faire la conversion LaTeX → HTML, sans doute pour les documents simples au moins. Reste toujours le PDF et, pour les gens soigneux, la possibilité d'écrire deux versions. Je ferai probablement ça, personnellement.

Niveau transition, non, on repasse pas les messages tels quels à la v5. Les messages existants seront certainement archivés, et convertis par l'interpréteur BBCode dans le fond. Seulement, les nouveaux messages seront en Lightscript.

Pour la v5, je ne peux pas dire dans l'ensemble, mais Lightscript est écrit en C pour réduire le temps de calcul. Honnêtement ça pourrait donner un gain significatif par rapport aux regex PHP actuelles.

Gollum a écrit :
-prévisualisation du LS
-auto-complétion quand mode LS/LaTeX
-smileys tout neufs
-ET RENDEZ MOI LES EASTER EGGS DE GLADOS POUR PÂQUES !

Merci beaucoup de ton feedback !
- Facile par un bouton et une requête. Temps réel avec une requête ? Moins tentant. LS en Javascript ? Bof bof.
- Faudrait assurer sur le front-end.
- On changera peut-être le set de smileys, après tout...
- ON VA Y RÉFLÉCHIR.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Précédente 1, 2, 3, 4

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 101 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd