Utilisateur:Legrostdg/Pastealacon
Apparence
Ce script permet de ne pas reprendre la souris pour coller des données sur le site pastealacon.com.
Il prend le texte à coller sur l'entrée standard et il renvoie l'url associée. Il colle aussi cette url dans le buffer du clic scroll à l'aide de xclip.
On peut ainsi retrouver l'url à l'aide de "xclip -o".
Il nécessite perl, le module perl WWW::Mechanize et xclip
Les options disponibles sont:
- -nick (votre pseudo (Anonymous par défaut, éventuellement à adapter dans le script))
- -lang (le langage dans lequel sont codées les lignes que vous avez "pastées" (défaut: texte): utile pour la coloration syntaxique)
voir la liste des languages de programmation supportés par pastealacon.com.
en général il vous faut noter le nom du langage sans espace et en minuscule.
- -time (durée de vie du "paste": d = un jour (défaut), m = un mois, f = à jamais)
#!/usr/bin/perl -w
#
# pastealacon.pl
#
# Faire des pastes en ligne de commande sur pastealacon.com.
# Colle l'entrée standard sur pastealacon.com, renvoie l'url
# et la met dans le buffer du clic scroll.
#
# Distribué sous les termes de la
# Licence Publique Rien À Branler (LPRAB) version 1
my $url = "http://pastealacon.com/";
my $nick = "Anonymous";
my $format = "text";
my $time = "d";
use WWW::Mechanize;
use Getopt::Long;
my %CONF = (
lang => $format,
nick => $nick,
time => $time,
text => '',
);
GetOptions( \%CONF, "lang=s", "nick=s", "time=s", "text=s" )
or die "Bad Options.";
my $m = WWW::Mechanize->new;
$m->get($url);
die $m->res->status_line unless $m->success;
unless ( $CONF{text} ) {
$CONF{text} = join "", <>;
};
$m->set_fields(
format => $CONF{lang},
code2 => $CONF{text},
poster => $CONF{nick},
expiry => $CONF{time},
);
$m->click;
die $m->res->status_line unless $m->success;
my $response = $m->response->request->uri->as_string;
system( "echo $response | xclip -i" );
print $response, "\n";