Qu'est-ce qui a inspiré cette demande de liste de souhaits ?
La création d'un journal JMP occupe presque toute ma mémoire, car JMP souhaitait imprimer une liste de 20 millions d'éléments à enregistrer en raison d'une erreur dans mon code. Et puis, si vous ne vous souvenez pas que vous devez utiliser Clear Log() au lieu du plus rapide Ctrl + A + Suppr pour effacer le journal, il est préférable de simplement forcer la fermeture de JMP.
JMP est également capable de raccourcir le journal dans certains cas, comme Get Session Script(), mais il affiche simplement "..." et en général, ce n'est pas vraiment utile (le script de session est-il vraiment juste... ou simplement une longue chaîne de le texte que jmp ne voulait pas imprimer (ce dernier dans ce cas)).

JMP doit toujours imprimer dans le journal, afficher au moins le début et la fin du journal ET conserver le journal pour une seule impression suffisamment petit pour ne pas provoquer de blocage.
Quelle est l’amélioration que vous souhaiteriez voir ?
J'aimerais que le journal JMP soit plus intelligent lorsque l'utilisateur, par accident, une alerte s'affiche OU imprime volontairement un long texte à enregistrer (matrices, listes, rarement expressions). Alert est capable d'ajouter des « ciseaux » et d'afficher uniquement le début et la fin du message du journal. La fenêtre du journal pourrait afficher plus qu'une fenêtre d'alerte, mais toujours pas des quantités excessives, À MOINS QUE l'utilisateur précise qu'il souhaite tout voir -> il devrait également y avoir un moyen d'afficher l'intégralité du journal (peut-être l'enregistrer dans un fichier temporaire que l'utilisateur pourrait ouvrir ?).
Cet exemple ne crée pas encore de message de journal long et impossible. Vous pouvez créer plus de temps en ajoutant quelques zéros à l'initialisation de la table, mais je ne le suggérerais pas.
Names Default To Here(1);
dt = New Table("Test",
Add Rows(1000000),
New Column("Row", Numeric, Ordinal, Formula(Row())),
Invisible
);
dt << New Column("Str", Character, Nominal, Set Each Value(
Repeat(Hex(:Row), 2)
));
/*
// Don't make the mistake of running this line as it will print excessively long list to log
dt[0, "Str"];
*/
m = dt[0, "Str"]; // List( 100000 elements ) assigned.
/*
Loc(Is Missing(dt[0, "Str"])); // prints' everything to log, but alert has just part of it
*/
/*
wait(0);
l = 0;
For Each({line}, Get Log(),
l = l + Length(line);
);
show(l);
*/
Fenêtre d'alerte avec les ciseaux

et j'arrive à mon journal 3 000 972 caractères de texte.
Pourquoi cette idée est-elle importante ?
Empêche JMP de se verrouiller lorsque vous avez de longs messages de journal qui peuvent être imprimés par accident, en raison d'erreurs ou volontairement.