Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
utilisateurs:yannick_lm [Le 29/01/2008, 11:16] yannick_lm |
utilisateurs:yannick_lm [Le 01/09/2022, 00:13] (Version actuelle) moths-art Passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Yannick_LM ====== | ====== Yannick_LM ====== | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
===== Moi : ===== | ===== Moi : ===== | ||
Je suis étudiant en dernière année dans une école d'ingénieur. | Je suis étudiant en dernière année dans une école d'ingénieur. | ||
- | Je suis joignable à l'adresse mail suivante : yannick_LM (chez yahoo.fr), et je traîne assez souvent sur le forum. | + | Je suis joignable à l'adresse mail suivante : yannicklm1337 (chez) gmail.com, et je traîne assez souvent sur le forum. |
J'ai découvert Ubuntu il y a déjà plus d'un an, et me suis formé quasiment uniquement grâce à la communauté (la documentation et le forum) | J'ai découvert Ubuntu il y a déjà plus d'un an, et me suis formé quasiment uniquement grâce à la communauté (la documentation et le forum) | ||
Je suis aussi de plus en plus sur #ubuntu-fr (de préférence tard le soir, GMT) | Je suis aussi de plus en plus sur #ubuntu-fr (de préférence tard le soir, GMT) | ||
Je continue à apprendre sans arrêt, et je ne compte plus m'arrêter... | Je continue à apprendre sans arrêt, et je ne compte plus m'arrêter... | ||
+ | |||
+ | Voir aussi ma page sur [[https://launchpad.net/~yannick-lm|Launchpad]] | ||
=== Quelques programmes à découvrir : === | === Quelques programmes à découvrir : === | ||
- | * [[:screen:|Screen]], le multiplexeur de terminal. | + | * [[:screen|Screen]], le multiplexeur de terminal. |
* Zsh , ou comment donner un coup de vieux à Bash. | * Zsh , ou comment donner un coup de vieux à Bash. | ||
* WindowMaker, un gestionnaire de fenêtres qu'il est bien. | * WindowMaker, un gestionnaire de fenêtres qu'il est bien. | ||
- | * [[:irssi:|Irssi ]], le client IRC en mode texte. | + | * [[:irssi|Irssi ]], le client IRC en mode texte. |
- | * [[:mpd:|Mpd ]], un serveur son pour votre ordi. | + | * [[:mpd|Mpd ]], un serveur son pour votre ordi. |
=== Un petit bout de mon fichier ~/.aliases === | === Un petit bout de mon fichier ~/.aliases === | ||
<code bash> | <code bash> | ||
# Pour créer des playlists pour mpd | # Pour créer des playlists pour mpd | ||
- | # Usage : CreatePL Repertoire NomPlayliste [regexp] | + | # Usage : |
+ | # cd $MUSIQUE | ||
+ | # CreatePL Repertoire NomPlayliste [regexp] | ||
# Crée une playliste pour mpd contentant tous les fichiers en mp3 ou ogg du | # Crée une playliste pour mpd contentant tous les fichiers en mp3 ou ogg du | ||
# répertoire. Si regexp est donné, seules les pistes correspondantes sont | # répertoire. Si regexp est donné, seules les pistes correspondantes sont | ||
Ligne 35: | Ligne 32: | ||
# TODO : faire ça proprement avec des getopt | # TODO : faire ça proprement avec des getopt | ||
function CreatePL { | function CreatePL { | ||
+ | MUSIQUE=$HOME/Musique | ||
+ | PLAYLISTS=$MUSIQUE/.mpd/playlists | ||
[[ -n $3 ]] && \ | [[ -n $3 ]] && \ | ||
- | find $1 -name $3 | sort | tee \ | + | find $1 -name $3 | sort | tee $PLAYLISTS/"$2.m3u" \ |
- | $HOME/Musique/.mpd/playlists/$2.m3u \ | + | || \ |
- | || \ | + | find $1 -name '*.ogg' -o -name '*.mp3' | sort | tee $PLAYLISTS/"$2.m3u" |
- | find $1 -name '*.ogg' -o -name '*.mp3' | sort | tee \ | + | |
- | $HOME/Musique/.mpd/playlists/$2.m3u | + | |
} | } | ||
- | |||
# Vos commandes les plus utilisées: (si vous utilisez zsh, remplacez .histfile | # Vos commandes les plus utilisées: (si vous utilisez zsh, remplacez .histfile | ||
- | # par .bash_history | + | # par .bash_history) |
function cmd { | function cmd { | ||
sed -e 's/sudo //' $HOME/.histfile | cut -d' ' -f1 | sort | uniq -c | sort -rg | head $1 | sed -e 's/sudo //' $HOME/.histfile | cut -d' ' -f1 | sort | uniq -c | sort -rg | head $1 | ||
Ligne 62: | Ligne 58: | ||
=== Contributions : === | === Contributions : === | ||
- | * Quelque chose de complètement inutile, donc indispensable : [[:horloge_son:| un Big Ben dans votre ordi]] | + | * Quelque chose de complètement inutile, donc indispensable : [[:horloge_son| un Big Ben dans votre ordi]] |
* Membre du groupe traducteur d'Ubuntu | * Membre du groupe traducteur d'Ubuntu | ||
* Traduction de la LHU. (venez nous rejoindre !) | * Traduction de la LHU. (venez nous rejoindre !) | ||
- | * Réécriture d'un script pour irssi (recherche google) | + | * Réécriture d'un script pour irssi (recherche google). Inutile, vu que la plupart des bots sur les champs ont une commande !google |
- | + | * Customisation du /whois, basé sur ip-to-country.pl et worldtimeserver, pour savoir (à peu près) où vivent les gens avec qui vous parlez et l'heure qu'il est chez eux. Inspiré aussi de country.pl par Timo Sirainen. Le script se trouve sur ce [[https://forum.ubuntu-fr.org/viewtopic.php?pid=1520946|fil]]. | |
- | <code perl> | + | Merci aux gens du canal #irssi pour leur aide précieuse |
- | #!/usr/bin/perl -w | + | |
- | # - Google.pl | + | |
- | + | ||
- | use Irssi; | + | |
- | use LWP::UserAgent; | + | |
- | use strict; | + | |
- | use vars qw($VERSION %IRSSI); | + | |
- | + | ||
- | $VERSION = '1.00'; | + | |
- | %IRSSI = ( | + | |
- | authors => 'Oddbjørn Kvalsund', | + | |
- | contact => 'oddbjorn.kvalsund@hiof.no', | + | |
- | name => 'Google', | + | |
- | description => 'This script queries google.com and returns the results.', | + | |
- | license => 'Public Domain', | + | |
- | ); | + | |
- | + | ||
- | ## Usage: | + | |
- | ## /google [-p, prints to current window] [-<number>, number of searchresults returned] search-criteria1 search-criteria2 ... | + | |
- | ## | + | |
- | ## History: | + | |
- | ## - Sun May 19 2002 | + | |
- | ## Version 0.1 - Initial release | + | |
- | ## ------------------------------- | + | |
- | ## Corrected by Yannick LM | + | |
- | # - Sat Jan 26 2007 | + | |
- | #------------------------------------------------- | + | |
- | my $nr_sites = 3; # Search-results returned | + | |
- | my $prefix = "Google search:"; # Message printed before results | + | |
- | #------------------------------------------------- | + | |
- | + | ||
- | + | ||
- | + | ||
- | # Print pages to current window if public-mode specified | + | |
- | # else display a private notice of returned pages | + | |
- | + | ||
- | sub print_results{ | + | |
- | my ($witem, $mode, $nr_sites, @lines)=@_; | + | |
- | my $i=0; | + | |
- | + | ||
- | if ($mode eq "public" && $prefix ne "") { $witem->command("/SAY $prefix") } ; | + | |
- | + | ||
- | while ($i<$nr_sites && $i < 10) { | + | |
- | my $line=$lines[$i+3]; #The first three lines are irrelevant | + | |
- | if ($line =~ /^\w+\.\w+/) { | + | |
- | $line =~ s/\s+.*//g; # We've got an URL | + | |
- | if ( $mode eq "public") { | + | |
- | $witem->command("/SAY http://$line"); | + | |
- | } | + | |
- | else { | + | |
- | Irssi::active_win()->print("http://$line"); | + | |
- | } | + | |
- | } | + | |
- | else { | + | |
- | $nr_sites++; | + | |
- | } | + | |
- | $i++; | + | |
- | } | + | |
- | + | ||
- | } | + | |
- | + | ||
- | + | ||
- | sub cmd_google { | + | |
- | + | ||
- | my ($data, $server, $witem) = @_; | + | |
- | my $url = ""; | + | |
- | my $nr_sites = 3; | + | |
- | # my $i = 0; | + | |
- | my (@lines, @pages); | + | |
- | my $mode = "quiet"; | + | |
- | + | ||
- | # If user supplied nr_sites, activate his setting | + | |
- | if ( $data =~ /-(\d\s)/ ) { $nr_sites = $1 }; | + | |
- | if ($data =~ /-10/) { $nr_sites = 10 }; | + | |
- | $data =~ s/-\d+//g; # remove nr_sites from $data | + | |
- | + | ||
- | # Switch to public mode | + | |
- | # and return error msg if invalid window | + | |
- | if ( $data =~ /-p/ ) { | + | |
- | $mode = "public"; | + | |
- | if ( ! $witem ) { | + | |
- | Irssi::active_win()->print("Must be run run in a valid window (CHANNEL|QUERY)"); | + | |
- | return; | + | |
- | } | + | |
- | } | + | |
- | $data =~ s/-p//g; # remove -p from $data | + | |
- | + | ||
- | # Format the query-string | + | |
- | $data =~ s/\s/+/g; | + | |
- | my $query = $data; | + | |
- | + | ||
- | # Initialize LWP | + | |
- | my $ua = new LWP::UserAgent; | + | |
- | $ua->agent("AgentName/0.1 " . $ua->agent); | + | |
- | + | ||
- | # Do the actual seach | + | |
- | my $req = new HTTP::Request GET => "http://www.google.com/search?hl=en&q=$query"; | + | |
- | my $res = $ua->request($req); | + | |
- | my $content = $res->content; | + | |
- | + | ||
- | # Replace <br> with newlines | + | |
- | # and remove tags | + | |
- | $content =~ s/\<br\>/\n/g; | + | |
- | $content =~ s/\<.+?\>//sg; | + | |
- | + | ||
- | # Make array @lines of all search-results | + | |
- | @lines = split("\n", $content); | + | |
- | + | ||
- | # Dispaly the result according to the mode | + | |
- | + | ||
- | &print_results($witem, $mode, $nr_sites, @lines); | + | |
- | # Irssi::active_win()->print("Jusqu'ici, tout va bien"); | + | |
- | } | + | |
- | + | ||
- | Irssi::command_bind('google', 'cmd_google'); | + | |
- | </code> | + | |
- | |||