Rendu des blocs de code
Bonjour à tous, bonjour ,
Voici quelques points qui semblent être améliorables :
- Rendu d'un bloc de code une fois le message soumis :
- Le placement des numéros de lignes, qui n'est pas aligné avec la ligne correspondante
- Les retours à la ligne ne sont pas toujours supportés (exemple : pas de langage)
- La coloration syntaxique
- La couleur de fond
- Les barres de défilement quand le texte est large et/ou haut
- Idéalement la barre horizontale ne devrait pas apparaître si le texte fait moins de 80 caractères de large
- Le rendu n'est pas le même pendant la rédaction et à l'affichage une fois le message posté.
- Rendu pendant l'édition du message
- Le rendu n'est pas le même dans le preview (tant que le message n'est pas soumis) et une fois le message soumis.
- Ce serait super si on avait la coloration syntaxique également pendant qu'on rédige le code (mais là j'en demande peut être beaucoup).
- Langages supportés par l'éditeur :
- Voir si le langage est parmi ceux qui ont une catégorie sur le forum et sans doute supprimer ceux qui sont vraiment exotiques.
- Inversement, que chaque langage ayant un forum dédié soit supporté par l'éditeur.
Snippets :
Aucun langage : le retour à la ligne n'est pas fait. À cause de ce bug, j'ai tendance à mettre les blocs de texte (genre réponse de terminal) en XML pour avoir des retours à la ligne qui marchent
ligne1 mot1 mot2 mot3
ligne2 mot4 mot5 mot6
ligne3 mot7 mot8 mot9
ligne longue longue longue longue longue longue longue longue longue longue longue longue longue longue longue longue longue longue
Apache : à la rédaction On et off sont colorés dans le "preview" lorsqu'on rédige le message, mais pas une fois le message soumis. Ce bug s'applique plus généralement à tout mot clé coloré mais pas en gras, quelque soit le langage.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
ASM : Il n'y a pas de forum assembleur (et je pense que plus grand monde), donc ça me paraît exotique
section .text
global _start
_start:
mov rax, 60 ; Numéro du syscall sys_exit (60)
xor rdi, rdi ; Code de retour 0 (succès)
syscall ; Appel au noyau Linux
Bash : même remarque que pour apache
#!/bin/bash
# Vérifie si une URL est en HTTP et affiche la version HTTPS correspondante
url="${1:-http://example.com}"
if [[ "$url" =~ ^http:// ]]; then
url="${url/http:\/\//https:\/\/}"
echo "Redirection vers : $url"
else
echo "Déjà en HTTPS ou URL invalide : $url"
fi
Basic : la coloration discutable dans le preview (à comparer avec une réponse gemini "génère un snippet en basic).
10 REM Redirige une URL HTTP vers HTTPS 20 URL$ = "http://exemple.com" 30 IF LEFT$(URL$, 7) = "http://" THEN 40 URL$ = "https://" + MID$(URL$, 8) 50 PRINT "Redirection vers : "; URL$ 60 END IF
Paradoxalement, le langage Visual Basic qui a son forum n'est pas dans la liste. Alors est-ce que les gens doivent utiliser VBScript ou Basic). Ici, un bloc Visual basic rendu avec Basic. Peut-être faudrait il simplement renommer dans l'éditeur "VBScript" en "VBScript / VB".
Dim url As String = "http://exemple.com"
If url.StartsWith("http://", StringComparison.OrdinalIgnoreCase) Then
url = "https://" & url.Substring(7)
End If
CoffeeScript : Ici encore un langage pas listé dans le forum (et à mon avis assez exotique !)
url = "http://exemple.com" if url.startsWith "http://" url = "https://" + url.slice 7
C : Même problème que pour Visual Basic : l'éditeur support C++ et C#, mais pas C alors qu'il a un forum dédié. Peut-être faudrait-il simplement renommer dans l'éditeur "C++" en "C / C++".
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(){
char url[256] = "http://exemple.com";
if (strncmp(url, "http://", 7) == 0) {
char new_url[256];
snprintf(new_url, sizeof(new_url), "https://%s", url + 7);
strcpy(url, new_url);
}
return 0;
}
C++
#include <string>
int main(){
std::string url = "http://exemple.com";
if (url.starts_with("http://")) {
url.replace(0, 7, "https://");
}
return 0;
}
J'arrête les exemples ici, car c'est un peu fastidieux, mais dans l'absolu, il faudrait faire le même exercice pour chaque langage restant.
Merci par avance, et comme d'habitude, tous mes encouragements aux développeu.{r,se}.s !
1 réponse
-
Modérateur
Bonsoir,
Il y a quelques semaines j'ai pensé que l'on avait perdu cette balise code. Elle est revenue, pas meilleures qu'avant.
D'abord cet intitulé Langue à la place de Langage depuis des années.
Pas fichu d'aligner N° et ligne.
On a vraiment besoin d'un type indéfini opérationnel, avec une police fixe, qui conserve tous les blancs successifs et les sauts de ligne.
Et cette litanie de langages sans grand intérêt. Il n'y a même pas le Cobol ;-)