Pensez à lire la Charte avant de poster !

$\newcommand{\K}{\mathbf K}$


Les-Mathematiques.net - Cours de mathématiques supérieures
 Les-Mathematiques.net - Cours de mathématiques universitaires - Forum - Cours à télécharger

A lire
Deug/Prépa
Licence
Agrégation
A télécharger
Télécharger
265 personne(s) sur le site en ce moment
E. Cartan
A lire
Articles
Math/Infos
Récréation
A télécharger
Télécharger
Théorème de Cantor-Bernstein
Théo. Sylow
Théo. Ascoli
Théo. Baire
Loi forte grd nbre
Nains magiques
 
 
 
 
 

Liste noire (version bêta)

Envoyé par Siméon 
Liste noire (version bêta)
il y a sept années
avatar
Le script est disponible ici : [github.com]
Et la première version alternative proposée par Steven Neutral est là : [github.com]

J'avais envie d'apprendre un peu de JavaScript aujourd'hui, alors je me suis amusé à écrire un userscript pour le forum que je partage avec vous. Il est conçu pour l'extenstion Greasemonkey de Mozilla Firefox mais devrait pouvoir s'utiliser sur la plupart des navigateurs modernes.

Il a une seule fonction : afficher ou masquer des messages en cliquant sur un bouton, ceci afin d'alléger certaines pages de discussion du forum. Son nom vient du fait qu'il permet de définir une "liste noire" d'utilisateurs dont les messages sont masqués par défaut. Vous pourrez constater l'efficacité de ceci sur la capture d'écran tirée du fil APMEP avec la liste d'exemple (j'espère que christophe et Fin de partie ne m'en voudront pas).

Le code est livré sans aucune garantie, et je serais heureux d'avoir des retours de ceux qui l'auront essayé.

P.S. Plusieurs bugs ont été corrigés mais il peut encore en rester.

Edit : j'ai ajouté une fonction qui corrige les accents dans les messages "La dernière correction date de [...]".



Edité 8 fois. La dernière correction date de il y a six années et a été effectuée par Siméon.


Re: Liste noire (version bêta)
il y a sept années
De mon tel: je t en veux pas et je te rejoins même. Moi aussi je rêve d acquérir java script

Signature: aide les autres comme toi-même car ils SONT toi, ils SONT VRAIMENT toi
Re: Liste noire (version bêta)
il y a sept années
avatar
JS est déjà dans ton navigateur.

Le café est un breuvage qui fait dormir,
quand on n’en prend pas.
-+- Alphonse Allais -+-
Re: Liste noire (version bêta)
il y a sept années
Je sais, je voulais dire je rêve de l'utiliser les doigts dans le nez. Je l'ai un peu montré à mes élèves, en en apprenant un bout pour l'occasion, mais la syntaxe est vraiment toute pourrie de chez pourrie.

Signature: aide les autres comme toi-même car ils SONT toi, ils SONT VRAIMENT toi
Re: Liste noire (version bêta)
il y a sept années
@siméon, mais à quel endroit tu mets le scrip déjà pour commencer? Parce que si tu as sauvé le source d'une page de forum et que tu la recharges en interne ensuite en lui ayant ajouté ton script, ce n'est pas très maniable.

Signature: aide les autres comme toi-même car ils SONT toi, ils SONT VRAIMENT toi
Re: Liste noire (version bêta)
il y a sept années
avatar
[www.les-mathematiques.net]

@christophe : est-ce que tu connais coffee-script ? C'est un langage "pythonique" qui produit du javascript une fois compilé. Je n'ai pas encore eu l'occasion d'essayer mais le concept est sympa.



Edité 2 fois. La dernière correction date de il y a sept années et a été effectuée par Siméon.
Re: Liste noire (version bêta)
il y a sept années
avatar
[www.les-mathematiques.net]

@christophe : le plus simple avec Firefox est de passer par l'extension Greasemonkey.



Edité 2 fois. La dernière correction date de il y a sept années et a été effectuée par Siméon.
Re: Liste noire (version bêta)
il y a sept années
Merci, je ne sais hélas pas programmer en Python. Mais c'est une bonne information (je suppose qu'il a une syntaxe moins "folle" que le JS). Mais ma question était "comment insères-tu TON script java DANS une page que tu n'as PAS ENCORE chargée?"

Signature: aide les autres comme toi-même car ils SONT toi, ils SONT VRAIMENT toi
Re: Liste noire (version bêta)
il y a sept années
avatar
[www.les-mathematiques.net]

@christophe : Euh, il me semble que je t'ai répondu là [www.les-mathematiques.net].

Edit : en effet j'avais déc*\$#@ avec les liens !



Edité 1 fois. La dernière correction date de il y a sept années et a été effectuée par Siméon.
Re: Liste noire (version bêta)
il y a sept années
Euuu non... T'as dû essayer en faisant un JS, mais je ne tombe que sur nos profils respectifs. (N'oublie pas que le JS s'exécute sur la machine cliente par sur le serveur grinning smiley )

Signature: aide les autres comme toi-même car ils SONT toi, ils SONT VRAIMENT toi
Re: Liste noire (version bêta)
il y a sept années
avatar
La syntaxe javascript n'est pas plus compliquée que ton Caml.
Merci Siméon. J'avais déjà essayé cette extension une fois (je me suis amusé à changer le nom de mes amis facebook), mais d'habitude j'utilise Chrome. Si quelqu'un a une solution pour Chrome je suis preneur.
Re: Liste noire (version bêta)
il y a sept années
avatar
@steven, l'extension Tampermonkey de Chrome semble faire le même boulot que Greasemonkey. Je ne l'ai pas encore testée.

@steven+christophe, il existe aussi des compilateurs Ocaml > Javascript comme Js_of_Ocaml.
Re: Liste noire (version bêta)
il y a sept années
Gigantesque (si ça marche, je n'ai pas essayé). Merci Siméon!!

Signature: aide les autres comme toi-même car ils SONT toi, ils SONT VRAIMENT toi
Re: Liste noire (version bêta)
il y a sept années
avatar
@Steven Neutral : je viens de tester avec Chrome+Tampermonkey, ça marche comme sur des roulettes !
snif
Re: Liste noire (version bêta)
il y a sept années
C'est un peu agaçant de faire les frais de la guéguerre entre entre la communauté "pour le gratuit et libre" et windows.
Pas de js_of_caml.exe à installer en un clic pour windows. Ce n'était qu'une vue de l'esprit.

Un parcours du combattant prenant des heures pour essayer de comprendre les labyrinthiques constructions empilées de "ocsigen" pour finalement comprendre.... qu'il n'y a pas d'exe clé en main dans cette histoire et ... qu'à moins de changer d'OS et de faire 6 mois de formation dans le chinois élaboré des "opam, lbt, debian, unbuntu et cie" (la liste de tous ces mots incompréhensible pour moi est interminable), pas d'espoir pour un bête ocamleur qui a eu le malheur comme tout le monde de s'acheter malencontreusement un pc avec windows de transformer ses programmes caml en JS...

angry smiley
H
Re: Liste noire (version bêta)
il y a sept années
@snif : les militants neuneus et ébahis du libre ou des macs sont pénibles, mais je ne comprends pas bien le lien entre ton histoire et une << guéguerre entre entre la communauté "pour le gratuit et libre" et windows >>. Peux-tu développer ?
Re: Liste noire (version bêta)
il y a sept années
Eh ben merci H ! J'en avais tellement marre de la lenteur de windows, de ces c..d'antivirus et aussi de la complication que je suis passé à Linux et je le conseille à tout le monde. Tout marche mieux et est plus simple.
H
Re: Liste noire (version bêta)
il y a sept années
@Blueberry : tu t'es reconnu dans "les militants neuneus et ébahis du libre ou des macs" ? Je ne comprends pas ton intervention en fait. Je peux détailler la mienne : je trouve pénibles ces militants qui te vantent les méritent du système qu'ils ont choisis en passant sous silence les difficultés ou en brossant un tableau mirifique de leur système. Je n'utilise quasiment que des ordinateurs sous linux depuis une dizaine d'années, cela me convient mais j'ai conscience que ce n'est pas parfait. Tous les systèmes ont leurs défauts.
Re: Liste noire (version bêta)
il y a sept années
Je m'amusais. Mais je viens de sortir de Msoft windows ; évidemment qu'il n'y a rien de mirifique mais ce que j'avais avant est une belle m..de et payante ! Linux pour moi gagne largement : simple, gratuit et rapide. (Comparativement)
Pour ce qui est du Mac, j'ai juste utilisé I-Tunes à une époque et la différence est immense avec les logiciels Microsoft. Avec ces derniers rien n'est intuitifs, tout est compliqué ou manquant. J'ai vu ce qu'était un logiciel utilisable très facilement et qui prévoyait ce dont tu allais avoir besoin. Cela-dit jamais je ne paierai le prix de ce matériel et je trouve détestable leur politique d'étancheïté totale avec les pc pour obliger les utilisateurs à payer.



Edité 1 fois. La dernière correction date de il y a sept années et a été effectuée par Blueberry.
snif
Re: Liste noire (version bêta)
il y a sept années
En ce qui me concerne, je suis très terre à terre. Mon pc est sous windows, je voulais tout bêtement télécharger un "js_of_caml.exe (ou éventuellement l'installer en lançant un simple "install.exe" cliqué sur un dowload donné puis m'en servir pour exécuter mes caml.

Bin ça n'existe tout simplement pas. J'ai visionné pas moins de 3 séminaires quasiment en entier de post-taupins avec des micros mal branchés (donc on entend quasiment rien) vanter les mérites d'ocsigen ou de je sais pas quoi, avec force transparents tout à fait jolis, lu 50 pages an anglais, etc, pour arriver à la conclusion que ... js_of_caml n'existe pas pour windows. En passant, c'est un peu dommage. ocaml est développé par l'INRIA, ils ont les moyens et sont dynamiques, mais à demander un parcours du combattant, voir un changement d'OS aux programmeurs qui voudraient essayer leurs trucs, ils se referment finalement sur eux-mêmes... A la belle époque de Delphi avec tout clé en main est finie.

Qu'à cela ne tienne, je me suis dis "on va tenter "obrowser" (qui se vante d'exécuter du caml dans la fenètre du navigateur et d'être programmé en java script). Là, pas besoin d'exe, à priori, on peut rêver de télécharger un simple fichier html. Et bin non même pas, y a un nouveau parcours du combattant et j'ai pas le courage... (et pas le temps)

Evidemment, j'ai exulté ma frustration spontanément, y a pas de développements derrière, je ne sais pas ce qu'il y a derrière. Il est peut-être techniquement impossible à l'INRIA de faire ce qu'a fait borland avec delphi ou c builder après tout (menfin, delphi était-il un tel exploit??? (remplacé par Lazarus en mode gratuit aujourd'hui)). C'est vraiment frustrant, j'aurais vraiment bien kiffé de traduire du caml en JS.
Re: Liste noire (version bêta)
il y a sept années
avatar
@snif : c'est dommage. Tu peux jouer avec Js_of_Ocaml sans l'installer avec [tryocaml.ocamlpro.com].
Re: Liste noire (version bêta)
il y a sept années
avatar
Je n'arrive pas à faire marcher Tampermonkey. Dans le tableau de bord je sélectionne ton script, je sélectionne "Activer" puis "Démarrer", mais il ne se passe rien.
Re: Liste noire (version bêta)
il y a sept années
avatar
Quand tu fais "Ajouter un nouveau script...", Tampermonkey te propose un éditeur avec les lignes suivantes
// ==UserScript==
// @name       My Fancy New Userscript
// @namespace  [use.i.E.your.homepage]
// @version    0.1
// @description  enter something useful
// @match      [www.les-mathematiques.net]
// @copyright  2012+, You
// ==/UserScript==

Il faut supprimer ces lignes et copier-coller à la place le code de mon premier message [www.les-mathematiques.net], en prenant bien soin de corriger les deux url du préambule massacrées par le forum en :
http://www.les-mathematiques.net/phorum/read.php?*
http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js

Ceci fait il ne reste plus qu'à enregistrer le script et ça devrait fonctionner directement sans même redémarrer le navigateur (j'ai testé avec deux versions de Chrome sous Linux et Windows). Dis moi si tu n'y parviens pas.
Re: Liste noire (version bêta)
il y a sept années
avatar
ça fonctionne très bien chez moi ! (Mozilla/Greasemonkey)
Merci cher Siméon pour ce partage ingénieux.

J'ai déjà quelques idées pour ma liste noire....lol

Bon été à toi,
Re: Liste noire (version bêta)
il y a sept années
avatar
@Bbidule : de rien, n'hésite à suggérer des améliorations. Bon été à toi aussi !
Re: Liste noire (version bêta)
il y a six années
avatar
Oui le problème était les liens. Ca marche très bien, merci Siméon.
Re: Liste noire (version bêta)
il y a six années
avatar
Ma maigre contribution :

var $toggle = $('<button/>', {
			html: "masquer",
			click: hide
	});

Désolé je ne sais pas comment insérer une image pour montrer le rendu. C'est simplement un joli bouton à la place de "[masquer le message]".
Re: Liste noire (version bêta)
il y a six années
avatar
Remarque: il n'y a pas besoin du $(document).ready(function () {. Mais je ne sais pas si ça apporte quelque chose de l'enlever.
Re: Liste noire (version bêta)
il y a six années
avatar
Nouvelle version, les messages explosent quand on les masque

Les liens corrigés:

http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.0/themes/smoothness/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.0/jquery-ui.min.js



// ==UserScript==
// @name        Liste Noire
// @namespace   listenoire
// @description Ajoute un bouton afficher/masquer aux messages
// @author      Siméon & Steven Neutral
// @include     [www.les-mathematiques.net]?*
// @version     2
// @grant       none
// @require     [ajax.googleapis.com]
// @require		MYCSS [ajax.googleapis.com] 
// @require		[ajax.googleapis.com]
// @grant       GM_addStyle
// @grant       GM_getResourceText
// ==/UserScript==

// include MYCSS
var cssTxt  = GM_getResourceText ("MYCSS");
GM_addStyle (cssTxt);

// Liste des utilisateurs dont les messages seront masqués par défaut
var blacklist = ['Alannaria', 'Fin de partie', 'FDP-HLM', 'FDP_HLM'];

var unhide_txt = 'masquer';

var toggle_style = {
	'margin-left': '0.5em',
	'font-size': '1em',
	'font-weight': 'normal',
	'visible' : 'hidden'
}

function add_toggle ($msg) {
	var $author = $('div.message-author', $msg);
	var author_text = $author.text().trim();

	var $toggle = $('<button/>', {
			html: unhide_txt,
			click: hide
	});
	$toggle.appendTo($author);
	
	var $body = $('div.message-body', $msg);	
	
	function hide () {
		var text_length = String($body.text().trim().length);
		var text = '[afficher ' + text_length + ' caractères]';
		//$body.css('display','none');
        $body.toggle('explode');
		$toggle.html(text);
		$toggle.click(unhide);
	}
	
	function unhide () {
		//$body.css('display','block');
        $body.show('explode');
		$toggle.html(unhide_txt);
		$toggle.click(hide);
	}

	if (blacklist.indexOf(author_text) >= 0) {
		hide();
	}
}

function correct_accents ($msg) {
	content = $msg.html();
	content = content.replace(/&amp;/g,'&');
	$msg.html(content);
}

//$(document).ready(function () {
	$('.message-body').css({'margin':'0', 'border':'0'});
	$('.generic').css({'margin':'0', 'border':'0'});
	$('.message').css({'margin':'16px', 'border': '1px solid #c0cdc0'});
	$('div.message-body').each(function (index) {correct_accents($(this))});
	$('div.message').each(function (index) {add_toggle($(this))});
//});



Edité 1 fois. La dernière correction date de il y a six années et a été effectuée par Steven Neutral.
Re: Liste noire (version bêta)
il y a six années
avatar
Salut,

Je viens de créer un dépôt sur github pour simplifier les modifications ainsi que l'accès au fichier (plus d'url massacrées). C'est ici : [github.com]. Je vais modifier le premier message du fil en conséquence.

J'ai aussi corrigé un bug dans la fonction correct_accents qui faisait que le script ne fonctionnait pas avec certaines versions de Firefox/Greasemonkey.

@Steven Neutral : super tes contributions ! j'ai créé une branche 'bouton' sur le dépôt pour la première, ici : [github.com]. Je n'ai pas intégré la modification à la branche 'master' parce que je trouve que ces gros boutons manquent un peu de discrétion.

Je ne me suis pas occupé de l'effet explosif mais je t'encourage à créer toi-même une nouvelle branche sur le dépôt.
Seuls les utilisateurs enregistrés peuvent poster des messages dans ce forum.

Cliquer ici pour vous connecter

Liste des forums - Statistiques du forum

Total
Discussions: 149 334, Messages: 1 508 770, Utilisateurs: 27 697.
Notre dernier utilisateur inscrit J-Maths.


Ce forum
Discussions: 1 111, Messages: 17 923.

 

 
©Emmanuel Vieillard Baron 01-01-2001
Adresse Mail:

Inscription
Désinscription

Actuellement 16057 abonnés
Qu'est-ce que c'est ?
Taper le mot à rechercher

Mode d'emploi
En vrac

Faites connaître Les-Mathematiques.net à un ami
Curiosités
Participer
Latex et autres....
Collaborateurs
Forum

Nous contacter

Le vote Linux

WWW IMS
Cut the knot
Mac Tutor History...
Number, constant,...
Plouffe's inverter
The Prime page