Permet le rendu des fichiers html dans le navigateur #1
Loading…
Reference in New Issue
No description provided.
Delete Branch "html_render"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Afin d'ajouter réellement des fonctionnalités de blog, on peut rendre les fichiers html, css, js normalement sans pygments.
J'ai pas les moyens de tester si y a pas de bug, et je voulais soumettre l'idée rapidement.
À première vue, tel que c'est implémenté, ça ne fonctionne pas car paste_to_html n'est appelée que si
'html'
est dans l'entêteAccept
, ce qui n'est pas le cas lorsque le navigateur demande un CSS ou un JS.Côté coloration syntaxique, on pourrait s'en sortir pour le CSS et le JS :
Et vu que le test actuel (sans cette PR) est
"html" in headers.get("Accept")
alors le comportement est déjà le bon, pas besoin de toucher au code pour délivrer du JS et du CSS proprement.Par contre pour le HTML c'est foutu on a aucun moyen de savoir si l'utilisateur veut la version "brute" (pour faire faire le rendu HTML a son navigateur), ou "coloriée" (pour partager du HTML a ses amis).
Bon pour le HTML on a une solution : il suffit de mettre du HTML inline dans le Markdown, ça aussi ça fonctionne déjà, démo :
https://p.afpy.org/summary.md
Donc la seule chose qui manque pour faire ce que tu veux c'est juste d'enlever bleach.
Comme ça dans du Markdown on pourrait rajouter des balises
<script
,<meta
,<form
, etc, etc...Il reste à réfléchir à l'aspect sécu d'enlever Bleach.
Sans Bleach on permet d'exécuter du JS sur le domaine
afpy.org
(en changeant l'origine de p.afpy.org à afpy.org, ce qui est autorisé.Est-ce que ça ouvre des attaques CSRF contre
afpy.org
, peut-être, mais est-ce qu'on s'en fout vu que ça sera bientôt un site static ? Peut-être.Est-ce que ça ouvre des attaques CSRF contre
git.afpy.org
,discuss.afpy.org
, ... ? Je pense mais ça mérite de creuser.Par contre, on pourrait autoriser l'upload d'image, le rendu d'une image ... c'est l'image pas modifiée.
Ça permettrai d'utiliser des images (
![]()
) côté Markdown.Step 1:
From your project repository, check out a new branch and test the changes.Step 2:
Merge the changes and update on Gitea.