weechat/doc/weechat_doc_fr.texi
Sebastien Helleu 8a9e8ecc88 - added major feature: new color management system (internal to WeeChat), now
colors are displayed by WeeChat (optional by new settings irc_colors_receive
  and irc_colors_send)
- fixed IRC command 367
- added IRC command 382
2005-11-04 11:53:23 +00:00

2825 lines
91 KiB
Plaintext
Raw Blame History

\input texinfo @c -*-texinfo-*-
@c %**start of header
@setfilename weechat_doc_fr.info
@settitle WeeChat - Client IRC rapide, leger et extensible
@c %**end of header
@c WeeChat documentation (french version)
@c
@c Copyright (c) 2005 by FlashCode <flashcode@flashtux.org>
@c
@c This manual is free software; you can redistribute it and/or modify
@c it under the terms of the GNU General Public License as published by
@c the Free Software Foundation; either version 2 of the License, or
@c (at your option) any later version.
@c
@c This manual is distributed in the hope that it will be useful,
@c but WITHOUT ANY WARRANTY; without even the implied warranty of
@c MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
@c GNU General Public License for more details.
@c
@c You should have received a copy of the GNU General Public License
@c along with this program; if not, write to the Free Software
@c Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
@c pdf : texi2pdf weechat_doc_fr.texi
@c html: makeinfo --html --no-split --number-sections weechat_doc_fr.texi
@c tex
@c \overfullrule=0pt
@c end tex
@documentlanguage fr
@documentencoding ISO-8859-1
@titlepage
@title WeeChat - Guide utilisateur
@subtitle Client IRC rapide, l@'eger et extensible
@subtitle Documentation pour WeeChat v0.1.6-cvs - 4 novembre 2005
@author FlashCode <@email{flashcode@@flashtux.org, flashcode AT flashtux.org}>
@page
Ce manuel documente le client IRC WeeChat, il fait partie de WeeChat.@*
@*
La derni@`ere version de ce document peut @^etre t@'el@'echarg@'ee sur cette page :@*
@uref{http://weechat.flashtux.org/doc.php}@*
@*
Copyright @copyright{} 2005 FlashCode
<@email{flashcode@@flashtux.org, flashcode AT flashtux.org}>@*
@*
Ce document peut @^etre utilis@'e sous les termes de la licence GNU General Public
License version 2 ou plus.
@end titlepage
@everyheading @thischapter @| @|
@everyfooting @thistitle @| @| Page @thispage
@contents
@node Top, Introduction, (dir), (dir)
@menu
* Introduction:: Description de WeeChat
* Installation:: Installation de WeeChat
* Utilisation:: Utilisation de WeeChat
* Extensions:: Extensions de WeeChat
* Auteurs / Support:: Contacter les auteurs et obtenir du support
@end menu
@c ******************************* Introduction *******************************
@node Introduction, Installation, Top, Top
@chapter Introduction
@menu
* Description::
* Pre-requis::
@end menu
@node Description, Pre-requis, Introduction, Introduction
@section Description
WeeChat (Wee Enhanced Environment for Chat) est un client IRC libre, rapide et l@'eger,
concu pour diff@'erents syst@`emes d'exploitation.@*
@*
Ses principales caract@'eristiques sont les suivantes :
@itemize @minus
@item
connexion multi-serveurs (avec SSL, IPv6, proxy)
@item
plusieurs interfaces : Curses, wxWidgets, Gtk et Qt
@item
petit, rapide et l@'eger
@item
param@'etrable et extensible avec des scripts
@item
conforme aux RFCs 1459, 2810, 2811, 2812, et 2813
@item
multi-plateformes (Gnu/Linux, *BSD, MacOS X, Windows et d'autres syst@`emes)
@item
100% GPL, logiciel libre
@end itemize
@*
La page d'accueil de WeeChat est ici :@*
@uref{http://weechat.flashtux.org}@*
@node Pre-requis, , Description, Introduction
@section Pr@'e-requis
Pour installer WeeChat, vous @b{devez} avoir :@*
@itemize @bullet
@item
Un syst@`eme Gnu/Linux (avec le compilateur et les outils associ@'es pour le paquet des sources)
@item
Droits "root" (pour installer WeeChat)
@item
Selon l'interface, une des biblioth@`eques suivantes :
@itemize @minus
@item
Curses: la librairie ncurses,
@item
Gtk: *** interface non d@'evelopp@'ee ***,
@item
Qt: *** interface non d@'evelopp@'ee ***,
@end itemize
@end itemize
@c ******************************* Installation *******************************
@node Installation, Utilisation, Introduction, Top
@chapter Installation
@menu
* Paquet binaire::
* Paquet source::
* Sources CVS::
@end menu
@node Paquet binaire, Paquet source, Installation, Installation
@section Paquet binaire
Les paquets binaires sont disponibles pour les distributions suivantes :
@itemize @bullet
@item
Debian (ou toute distribution compatible Debian)@*
Pour installer : @kbd{apt-get install weechat-curses}
@item
Mandrake/Redhat (ou toute distribution compatible avec les RPM)@*
Pour installer : @kbd{rpm -i /chemin/weechat-x.y.z-1.i386.rpm}
@item
Gentoo@*
Pour installer : @kbd{emerge weechat}
@item
*BSD (non disponible !)
@item
Slackware (non disponible !)
@item
Windows (non disponible !)
@end itemize
o@`u x.y.z est la version (par exemple 0.0.1)
@*
@node Paquet source, Sources CVS, Paquet binaire, Installation
@section Paquet source
Tapez simplement dans une console ou un terminal :@*
@kbd{./configure}@*
@kbd{make}@*
Note: pour ne construire que certaines interfaces, vous pouvez passer des param@`etres
@`a ./configure, tapez @kbd{./configure --help} pour de l'aide sur ces options.@*
Obtenez les droits root et installez WeeChat :@*
@kbd{su}@*
(entrez le mot de passe de root)@*
@kbd{make install}@*
@node Sources CVS, , Paquet source, Installation
@section Sources CVS
Attention: les sources CVS sont r@'eserv@'es aux utilisateurs avanc@'es : il se peut
que WeeChat ne compile pas et qu'il soit tr@`s instable.
Vous @^etes pr@'evenus !@*
Pour r@'ecup@'erer les sources CVS, tapez ces commandes :@*
@kbd{cvs -d:pserver:anoncvs@@subversions.gnu.org:/cvsroot/weechat login}@*
@kbd{cvs -z3 -d:pserver:anoncvs@@subversions.gnu.org:/cvsroot/weechat co weechat}@*
(lorsqu'un mot de passe est demand@'e, tapez simplement sur Entr@'ee)@*
Ex@'ecutez ce script :@*
@kbd{./autogen.sh}@*
Suivez alors les instructions du paquet sources - @xref{Paquet source}.
@c ******************************* Utilisation ********************************
@node Utilisation, Extensions, Installation, Top
@chapter Utilisation
@menu
* Lancer WeeChat::
* Fichier de configuration::
* Raccourcis clavier::
* Commandes WeeChat::
* Tube FIFO::
@end menu
@node Lancer WeeChat, Fichier de configuration, Utilisation, Utilisation
@section Lancer WeeChat
@subsection Param@`etres de ligne de commande
@table @code
@item -a, --no-connect
Supprimer la connexion automatique aux serveurs lors du d@'emarrage@*
@item -c, --config
Afficher l'aide sur le fichier de config (liste des options)@*
@item -f, --key-functions
Afficher la liste des fonctions internes WeeChat pour les touches@*
@item -h, --help
Afficher l'aide@*
@item -i, --irc-commands
Afficher la liste des commandes IRC@*
@item -k, --keys
Afficher les touches par d@'efaut de WeeChat@*
@item -l, --license
Afficher la licence de WeeChat@*
@item -p, --no-plugin
Ne charger aucune extension lors du d@'emarrage@*
@item -v, --version
Afficher la version de WeeChat@*
@item -w, --weechat-commands
Afficher la liste des commandes WeeChat@*
@end table
@subsection Lancer WeeChat
Tapez simplement cette commande pour lancer WeeChat :@*
@kbd{weechat-curses} (pour l'interface Curses)@*
ou @kbd{weechat-wxwidgets} (pour l'interface wxWidgets)@*
ou @kbd{weechat-gtk} (pour l'interface Gtk)@*
ou @kbd{weechat-qt} (pour l'interface Qt)@*
Lorsque vous lancez WeeChat pour la premi@`ere fois, un fichier de configuration
par d@'efaut est cr@'e@'e, avec les options par d@'efaut.@*
Le fichier de configuration par d@'efaut est : ~/.weechat/weechat.rc@*
Vous pouvez @'editer ce fichier pour configurer WeeChat @`a votre convenance, ou
vous pouvez modifier les param@`etres dans WeeChat avec la commande @kbd{/set} - @xref{Commandes WeeChat}.
@node Fichier de configuration, Raccourcis clavier, Lancer WeeChat, Utilisation
@section Fichier de configuration
Liste des options du fichier de configuration :@*
@table @kbd
@item look_set_title
D@'efinit le titre de la fen@^etre (terminal pour l'interface Curses) avec le nom et la version@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_startup_logo
Afficher le logo WeeChat au d@'emarrage@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_startup_version
Afficher la version de WeeChat au d@'emarrage@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_weechat_slogan
Slogan WeeChat (si vide, le slogan ne sera pas utilis@'e)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: 'the geekest IRC client!'@*
@item look_charset_decode_iso
Jeu de caract@`eres ISO pour d@'ecoder les messages du serveur (utilis@'e seulement si la locale est UTF-8) (si non renseign@'e, les messages ne sont pas concertis si la locale est UTF-8)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: 'ISO-8859-1'@*
@item look_charset_decode_utf
Jeu de caract@`eres UTF pour d@'ecoder les messages du serveur (utilis@'e seulement si la locale n'est pas UTF-8) (si non renseign@'e, les messages ne sont pas convertis si la locale n'est pas UTF-8)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: 'UTF-8'@*
@item look_charset_encode
Jeu de caract@`eres pour encoder les messages envoy@'es au serveur, exemples: UFT-8, ISO-8859-1 (si non renseign@'e, les messages ne sont pas convertis)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item look_charset_internal
Force le jeu de caract@`eres interne @`a WeeChat (doit @^etre vide dans la plupart des cas, ce qui signifie que le jeu de caract@`eres d@'etect@'e est utilis@'e)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item look_one_server_buffer
Utiliser le m@^eme tampon pour tous les serveurs@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item look_buffer_timestamp
Format de date/heure pour les tampons@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '[%H:%M:%S]'@*
@item look_color_nicks
Afficher les utilisateurs avec diff@'erentes couleurs@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_color_nicks_number
Nombre de couleurs @`a utiliser pour les couleurs des pseudos@*
Type: entier (valeurs: entre 1 et 10), valeur par d@'efaut: 10@*
@item look_color_actions
Afficher les actions avec diff@'erentes couleurs@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_nicklist
Afficher la fen@^etre des utilisateurs (pour les fen@^etres de canaux)@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_nicklist_position
Position de la fen@^etre d'utilisateurs (haut (top), gauche (left), droite (right, par d@'efaut), bas (bottom))@*
Type: cha@^ine (valeurs: 'left', 'right', 'top', 'bottom'), valeur par d@'efaut: 'right'@*
@item look_nicklist_min_size
Taille minimum pour la fen@^etre d'utilisateurs (largeur ou hauteur, selon look_nicklist_position (0 = pas de taille minimum))@*
Type: entier (valeurs: entre 0 et 100), valeur par d@'efaut: 0@*
@item look_nicklist_max_size
Taille maximum pour la fen@^etre d'utilisateurs (largeur ou hauteur, selon look_nicklist_position (0 = pas de taille maximum; si min == max et > 0, alors la taille est fixe))@*
Type: entier (valeurs: entre 0 et 100), valeur par d@'efaut: 0@*
@item look_no_nickname
Texte @`a afficher en lieu et place du nom d'utilisateur lorsque la connexion n'est pas active@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '-cmd-'@*
@item look_nickmode
Afficher le mode de l'utilisateur ((half)op/voice) devant chaque utilisateur@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_nickmode_empty
Afficher un espace si le mode utilisateur n'est pas (half)op/voice@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item look_nick_completor
La cha@^ine affich@'ee apr@`es la compl@'etion des pseudos@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ':'@*
@item look_nick_completion_ignore
Caract@`eres @`a ignorer pour la compl@'etion des pseudos@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '[]-'@*
@item look_infobar
Active la barre d'infos@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_infobar_timestamp
Format de date/heure dans la barre d'info@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '%B, %A %d %Y'@*
@item look_infobar_seconds
Afficher les secondes pour l'heure dans la barre d'infos@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_infobar_delay_highlight
D@'elai (en secondes) pour la notification des messages dans la barre d'infos (0 = d@'esactiver les notifications dans la barre d'infos)@*
Type: entier (valeurs: entre 0 et 2147483647), valeur par d@'efaut: 7@*
@item look_hotlist_names_count
Nombre maximum de noms dans la liste d'activit@'e (0 = pas de nom affich@'e, seulement les num@'eros de tampons)@*
Type: entier (valeurs: entre 0 et 32), valeur par d@'efaut: 3@*
@item look_hotlist_names_level
Niveau pour l'affichage des noms dans la liste d'activit@'e (combinaison de: 1=join/part, 2=message, 4=priv@'e, 8=highlight, par exemple: 12=priv@'e+highlight)@*
Type: entier (valeurs: entre 1 et 15), valeur par d@'efaut: 12@*
@item look_hotlist_names_length
Nombre maximum des noms dans la liste d'activit@'e (0 = pas de limite)@*
Type: entier (valeurs: entre 0 et 32), valeur par d@'efaut: 0@*
@item look_day_change
Affiche un message quand le jour change@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item look_day_change_timestamp
Format de date pour la date affich@'ee quand le jour a chang@'e@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '%a, %d %b %Y'@*
@item col_title
Couleur pour la barre de titre@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_title_bg
Couleur de fond pour la barre de titre@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'blue'@*
@item col_chat
Couleur pour le texte de discussion@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_chat_time
Couleur pour l'heure dans la fen@^etre de discussion@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_chat_time_sep
Couleur pour la s@'eparation de l'heure (fen@^etre de discussion)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'brown'@*
@item col_chat_prefix1
Couleur pour le 1er et le 3@`eme caract@`ere du pr@'efixe@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightcyan'@*
@item col_chat_prefix2
Couleur pour le caract@`ere du milieu du pr@'efixe@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'white'@*
@item col_chat_server
Couleur pour le nom du serveur@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'brown'@*
@item col_chat_join
Couleur pour la fl@`eche du join (pr@'efixe)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightgreen'@*
@item col_chat_part
Couleur pour la fl@`eche du part/quit (pr@'efixe)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightred'@*
@item col_chat_nick
Couleur pour les noms d'utilisateurs dans les actions (fen@^etre de discussion)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightcyan'@*
@item col_chat_host
Couleur pour les noms de machines (fen@^etre de discussion)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'cyan'@*
@item col_chat_channel
Couleur pour les canaux dans les actions (fen@^etre de discussion)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'white'@*
@item col_chat_dark
Couleur pour les s@'eparateurs sombres (fen@^etre de discussion)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'green'@*
@item col_chat_highlight
Couleur pour le pseudo surlign@'e (fen@^etre de discussion)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'yellow'@*
@item col_chat_bg
Couleur de fond pour la fen@^etre de discussion@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_status
Couleur pour la barre de statut@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_status_delimiters
Couleur pour les d@'elimiteurs de la barre de statut@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'cyan'@*
@item col_status_channel
Couleur pour le canal courant dans la barre de statut@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'white'@*
@item col_status_data_msg
Couleur pour une fen@^etre avec de nouvelles infos (barre de statut)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'yellow'@*
@item col_status_private
Couleur pour une fen@^etre avec un message priv@'e (barre de statut)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightmagenta'@*
@item col_status_highlight
Couleur pour une fen@^etre avec un highlight (barre de statut)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightred'@*
@item col_status_data_other
Couleur pour une fen@^etre avec des nouvelles donn@'ees (pas des infos) (barre de statut)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_status_more
Couleur pour une fen@^etre avec des nouvelles donn@'ees (barre de statut)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'white'@*
@item col_status_bg
Couleur de fond pour la fen@^etre de statut@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'blue'@*
@item col_infobar
Couleur pour la barre d'infos@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'black'@*
@item col_infobar_delimiters
Couleur pour les d@'elimiteurs de la barre d'infos@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'blue'@*
@item col_infobar_highlight
Couleur pour la notification dans la barre d'infos@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'white'@*
@item col_infobar_bg
Couleur de fond pour la fen@^etre de barre d'infos@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'cyan'@*
@item col_input
Couleur pour le texte saisi@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_input_channel
Couleur pour le texte saisi (nom du canal)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'white'@*
@item col_input_nick
Couleur pour le texte saisi (pseudo)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightcyan'@*
@item col_input_delimiters
Couleur pour le texte saisi (d@'elimiteurs)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'cyan'@*
@item col_input_bg
Couleur de fond pour la fen@^etre de saisie@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_nick
Couleur pour les pseudos@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_nick_away
Couleur pour les pseudos absents@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'cyan'@*
@item col_nick_chanowner
Couleur pour le symbole du propri@'etaire du canal (sp@'ecifique @`a unrealircd)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightgreen'@*
@item col_nick_chanadmin
Couleur pour le symbole administrateur du canal (sp@'ecifique @`a unrealircd)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightgreen'@*
@item col_nick_op
Couleur pour le symbole op@'erateur@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightgreen'@*
@item col_nick_halfop
Couleur pour le symbole demi-op@'erateur@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightmagenta'@*
@item col_nick_voice
Couleur pour le symbole voix@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'yellow'@*
@item col_nick_more
Couleur pour les '+' lors du scroll sur les pseudos@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightmagenta'@*
@item col_nick_sep
Couleur pour le s@'eparateur de pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'blue'@*
@item col_nick_self
Couleur pour le pseudo local@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'white'@*
@item col_nick_color1
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'cyan'@*
@item col_nick_color2
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'magenta'@*
@item col_nick_color3
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'green'@*
@item col_nick_color4
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'brown'@*
@item col_nick_color5
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightblue'@*
@item col_nick_color6
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_nick_color7
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightcyan'@*
@item col_nick_color8
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightmagenta'@*
@item col_nick_color9
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightgreen'@*
@item col_nick_color10
Couleur pour le pseudo@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'blue'@*
@item col_nick_private
Couleur pour l'autre pseudo dans la fen@^etre priv@'ee@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_nick_bg
Couleur de fond pour les pseudos@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'default'@*
@item col_chat_dcc_selected
Couleur pour le DCC s@'electionn@'e (fen@^etre de discussion)@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'white'@*
@item col_dcc_waiting
Couleur pour le statut dcc "attente"@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightcyan'@*
@item col_dcc_connecting
Couleur pour le statut dcc "connexion"@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'yellow'@*
@item col_dcc_active
Couleur pour le statut dcc "actif"@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightblue'@*
@item col_dcc_done
Couleur pour le statut dcc "termin@'e"@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightgreen'@*
@item col_dcc_failed
Couleur pour le statut dcc "@'echou@'e"@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightred'@*
@item col_dcc_aborted
Couleur pour le statut dcc "interrompu"@*
Type: couleur (couleur Curses ou Gtk), valeur par d@'efaut: 'lightred'@*
@item history_max_lines
Nombre maximum de lignes dans l'historique pour un serveur/fen@^etre/fen@^etre priv@'ee (0 = sans limite)@*
Type: entier (valeurs: entre 0 et 2147483647), valeur par d@'efaut: 4096@*
@item history_max_commands
Nombre maximum de commandes utilisateur dans l'historique (0 = sans limite)@*
Type: entier (valeurs: entre 0 et 2147483647), valeur par d@'efaut: 100@*
@item log_auto_server
Enregistrer automatiquement les messages du serveur@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item log_auto_channel
Enregistrer automatiquement les conversations des canaux@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item log_auto_private
Enregistrer automatiquement les conversations priv@'ees@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item log_plugin_msg
Enregistrer les messages des plugins (scripts)@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item log_path
Chemin pour les conversations sauvegard@'ees par WeeChat@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '~/.weechat/logs/'@*
@item log_timestamp
Format de date/heure pour les conversations sauvegard@'ees (voir man strftime pour le format de date/heure)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '%Y %b %d %H:%M:%S'@*
@item log_hide_nickserv_pwd
Masquer le mot de passe affich@'e par nickserv@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item irc_display_away
Affiche un message sur tous les canaux pour l'absence/le retour@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item irc_default_msg_away
Message par d@'efaut pour l'absence@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: 'away'@*
@item irc_default_msg_part
Message par d@'efaut pour le part (quitte un canal)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: 'WeeChat %v'@*
@item irc_default_msg_quit
Message de fin par d@'efaut ('%v' sera remplac@'e par la version de WeeChat dans la cha@^ine)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: 'WeeChat %v'@*
@item irc_notice_as_pv
Afficher les notices comme des messages priv@'es@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item irc_away_check
Intervalle entre deux v@'erifications des absences (en minutes, 0 = ne jemais v@'erifier)@*
Type: entier (valeurs: entre 0 et 2147483647), valeur par d@'efaut: 0@*
@item irc_lag_check
Intervalle entre deux mesures de lag (en secondes)@*
Type: entier (valeurs: entre 30 et 2147483647), valeur par d@'efaut: 60@*
@item irc_lag_min_show
Lag minimum @`a afficher (en secondes)@*
Type: entier (valeurs: entre 0 et 2147483647), valeur par d@'efaut: 1@*
@item irc_lag_disconnect
D@'econnexion apr@`es un lag important (en minutes, 0 = ne jamais se d@'econnecter)@*
Type: entier (valeurs: entre 0 et 2147483647), valeur par d@'efaut: 5@*
@item irc_fifo_pipe
Cr@'eer un tube FIFO pour le contr@^ole @`a distance@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item irc_highlight
Liste des mots pour la notification (s@'epar@'es par des virgules, le comparaison ne tient pas compte de la casse, les mots peuvent commencer ou se terminer par "*" pour une comparaison partielle)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item irc_colors_receive
Garder les couleurs dans les messages re@,{c}us@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item irc_colors_send
Autorise l'utilisateur @`a envoyer des couleurs avec des codes sp@'eciaux (%B=gras, %Cxx,yy=couleur, %U=soulign@'e, %R=invers@'e)@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item dcc_auto_accept_files
Accepte automatiquement les fichiers dcc entrants@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item dcc_auto_accept_chats
Accepte automatiquement les demandes de discussion dcc (@`a utiliser avec pr@'ecaution !)@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item dcc_timeout
D@'elai d'attente pour les requ@^etes dcc (en secondes)@*
Type: entier (valeurs: entre 1 et 2147483647), valeur par d@'efaut: 300@*
@item dcc_blocksize
Taille de bloc pour les paquets dcc en octets (d@'efaut: 65536)@*
Type: entier (valeurs: entre 1024 et 102400), valeur par d@'efaut: 65536@*
@item dcc_port_range
Restreint le dcc sortant @`a utiliser des ports dans la plage donn@'ee (pratique pour le NAT) (syntaxe: un port simple, par exemple 5000, une plage de ports, par exemple 5000-5015, si non renseign@'e tout port peut @^etre utilis@'e)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item dcc_own_ip
Adresse IP ou DNS utilis@'ee pour le dcc sortant (si non renseign@'e, l'interface IP locale est utilis@'ee)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item dcc_download_path
Chemin pour @'ecrire les fichiers re@,{c}us par dcc (par d@'efaut: r@'epertoire de l'utilisateur)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '~'@*
@item dcc_upload_path
Chemin pour lire les fichiers lorsqu'ils sont envoy@'es par dcc (quand aucun chemin n'est sp@'ecifi@'e)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '~'@*
@item dcc_convert_spaces
Convertir les espaces en underscores lors d'envoi de fichiers@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item dcc_auto_rename
Renommer les fichiers re@,{c}us s'ils existent d@'ej@`a (ajoute '.1', '.2', ...)@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item dcc_auto_resume
Continuer automatiquement les transferts dcc si la connexion avec la machine distante a @'et@'e perdue@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item proxy_use
Utiliser un proxy pour se connecter au serveur irc@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item proxy_type
Type de proxy (http (d@'efaut), socks4, socks5)@*
Type: cha@^ine (valeurs: 'http', 'socks4', 'socks5'), valeur par d@'efaut: 'http'@*
@item proxy_ipv6
Se connecter au proxy en ipv6@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item proxy_address
Adresse du serveur proxy (IP ou nom)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item proxy_port
Port pour se connecter au serveur proxy@*
Type: entier (valeurs: entre 0 et 65535), valeur par d@'efaut: 3128@*
@item proxy_username
Nom d'utilisateur pour le serveur proxy@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item proxy_password
Mot de passe pour le serveur proxy@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item plugins_path
Chemin de recherche des extensions@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '~/.weechat/plugins'@*
@item plugins_autoload
Liste des extensions @`a charger automatiquement au d@'emarrage, "*" signifie toutes (s@'epar@'ees par des virgules, les noms peuvent @^etre partiels, par exemple "perl" est ok pour "libperl.so")@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '*'@*
@item plugins_extension
Extension standard des extensions dans le nom de fichier, pour le chargement automatique (si vide, alors tous les fichiers sont charg@'es si autoload vaut "*")@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: '.so'@*
@item server_name
Nom associ@'e au serveur IRC (pour affichage seulement)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_autoconnect
Connexion automatique au serveur quand WeeChat d@'emarre@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item server_autoreconnect
Reconnexion automatique au serveur apr@`es une d@'econnexion@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item server_autoreconnect_delay
D@'elai (en secondes) avant de tenter une reconnexion au serveur@*
Type: entier (valeurs: entre 0 et 65535), valeur par d@'efaut: 30@*
@item server_address
Adresse IP ou nom du serveur IRC@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_port
Port pour se connecter au serveur@*
Type: entier (valeurs: entre 0 et 65535), valeur par d@'efaut: 6667@*
@item server_ipv6
Utiliser le protocole IPv6 pour la communication avec le serveur@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item server_ssl
Utiliser SSL pour la communication avec le serveur@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'off'@*
@item server_password
Mot de passe pour le serveur IRC@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_nick1
Pseudo @`a utiliser sur le serveur IRC@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_nick2
Pseudo alternatif pour le serveur IRC (si le pseudo est d@'ej@`a utilis@'e)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_nick3
2nd pseudo alternatif pour le serveur IRC (si le pseudo alternatif est d@'ej@`a utilis@'e)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_username
Nom d'utilisateur pour le serveur IRC@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_realname
Nom r@'eel pour le serveur IRC@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_command
Commande @`a ex@'ecuter en premier lorsque connect@'e au serveur@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_command_delay
D@'elai (en secondes) apr@`es ex@'ecution de la commande (exemple: donner du temps pour l'authentification)@*
Type: entier (valeurs: entre 0 et 5), valeur par d@'efaut: 0@*
@item server_autojoin
Liste des canaux (s@'epar@'es par des virgules) @`a rejoindre lorsque connect@'e au serveur (exemple: "#chan1,#chan2,#chan3 key1,key2")@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@item server_autorejoin
Rejoindre automatiquement les canaux quand mis dehors@*
Type: bool@'een (valeurs: 'on' ou 'off'), valeur par d@'efaut: 'on'@*
@item server_notify_levels
Liste des niveaux de notifications (s@'epar@'es par des virgules) pour les canaux de ce serveur (format: #canal:1,..)@*
Type: cha@^ine (toute cha@^ine), valeur par d@'efaut: ''@*
@end table
Les couleurs pour l'interface Curses sont :@*
@itemize @minus
@item
@kbd{default}: couleur par d@'efaut (transparent pour le fond)
@item
@kbd{black}: noir
@item
@kbd{red}: rouge fonc@'e
@item
@kbd{lightred}: rouge clair
@item
@kbd{green}: vert fonc@'e
@item
@kbd{lightgreen}: vert clair
@item
@kbd{brown}: marron
@item
@kbd{yellow}: jaune
@item
@kbd{blue}: bleu fonc@'e
@item
@kbd{lightblue}: bleu clair
@item
@kbd{magenta}: violet fonc@'e
@item
@kbd{lightmagenta}: violet clair
@item
@kbd{cyan}: cyan fonc@'e
@item
@kbd{lightcyan}: cyan clair
@item
@kbd{white}: blanc
@end itemize
@node Raccourcis clavier, Commandes WeeChat, Fichier de configuration, Utilisation
@section Raccourcis clavier
@table @kbd
@item Fl@`eche gauche / Fl@`eche droite
Aller au caract@`ere pr@'ec@'edent / suivant sur la ligne de commande@*
@*
@item Ctrl + fl@`eche gauche / Ctrl + fl@`eche droite
Aller au mot pr@'ec@'edent / suivant sur la ligne de commande@*
@*
@item Home / Ctrl + A
Aller au d@'ebut de la ligne de commande@*
@*
@item End / Ctrl + E
Aller @`a la fin de la ligne de commande@*
@*
@item Ctrl + K
Efface jusqu'@`a la fin de la ligne@*
@*
@item Ctrl + L
R@'eaffiche toute la fen@^etre@*
@*
@item Ctrl + U
Efface jusqu'au d@'ebut de la ligne@*
@*
@item Ctrl + W
Effacer le mot pr@'ec@'edent sur la ligne de commande@*
@*
@item Backspace / Delete
Effacer le mot pr@'ec@'edent / suivant sur la ligne de commande@*
@*
@item Tab
Compl@'eter la commande ou le pseudo (@kbd{Tab} @`a nouveau : trouver la compl@'etion suivante)@*
@*
@item Tout caract@`ere
Ins@'erer le caract@`ere @`a la position du curseur sur la ligne de commande@*
@*
@item Entr@'ee
Ex@'ecuter la commande ou envoyer le message@*
@*
@item Fl@`eche haut / Fl@`eche bas
Rappeler les derni@`eres commandes/messages@*
@*
@item Ctrl + fl@`eche haut / Ctrl + fl@`eche bas
Rappeler les derni@`eres commandes/messages dans l'historique global@*
@*
@item PageUp / PageDown
Afficher l'historique du tampon@*
@*
@item F5 / F6
Aller au tampon pr@'ec@'edent / suivant@*
@*
@item F7 / F8
Aller @`a la fen@^etre pr@'ec@'edente / suivante@*
@*
@item F10
Effacer le dernier message de la barre d'infos@*
@*
@item F11 / F12
Faire d@'efiler la liste des pseudos@*
@*
@item Alt + fl@`eche gauche / Alt + fl@`eche droite
Identique @`a F5 / F6@*
@*
@item Alt + A
Sauter au tampon avec activit@'e (avec priorit@'e: highlight, message, autre)@*
@*
@item Alt + B
Aller au mot pr@'ec@'edent@*
@*
@item Alt + D
Effacer le mot suivant@*
@*
@item Alt + F
Aller au mot suivant@*
@*
@item Alt + H
Vide la hotlist (notification d'activit@'e sur les autres tampons)@*
@*
@item Alt + J puis Alt + D
Afficher les DCC en cours@*
@*
@item Alt + J puis Alt + L
Sauter au dernier tampon@*
@*
@item Alt + J puis Alt + S
Sauter au tampon du serveur@*
@*
@item Alt + chiffre (1-9)
Sauter au tampon avec ce num@'ero@*
@*
@item Alt + J then Alt + X
Sauter au premier canal du serveur suivant (ou tampon du serveur si aucun canal ouvert)@*
@*
@item Alt + K
Capturer une touche
@*
@item Alt + J puis nombre (01-99)
Sauter au tampon avec ce num@'ero@*
@*
@item Alt + R
Effacer la ligne enti@`ere@*
@*
@item Alt + S
Changer de serveur sur le tampon des serveurs@*
(si l'option ``look_one_server_buffer'' est activ@'ee)@*
@*
@item Alt + PageUp / Alt + PageDown / Alt + Home / Alt + End
Faire d@'efiler la liste des pseudos@*
@*
@end table
@node Commandes WeeChat, Tube FIFO, Raccourcis clavier, Utilisation
@section Commandes WeeChat
Commandes internes WeeChat :@*
@table @kbd
@item alias [nom_alias [commande [param@`etres]]
@*
cr@'eer un alias pour une commande@*
@*
nom_alias: nom de l'alias@*
commande: nom de la commande (commande WeeChat ou IRC, sans le premier '/')@*
param@`etres: param@`etres pour la commande@*
@*
@item buffer [action | nombre]
@*
gestion des buffers@*
@*
action: action @`a effectuer:@*
move: d@'eplacer le tampon dans la liste (peut @^etre relatif, par exemple -1)@*
close: fermer le tampon (pour un canal: @'equivalent @`a /part sans message de fin)@*
list: liste les tampons ouverts (pas de param@`etre affiche cette liste)@*
notify: fixer le niveau de notification (0=jamais, 1=highlight, 2=1+msg, 3=2+join/part)@*
nombre: sauter au tampon qui a ce num@'ero@*
@*
@item clear [-all]
@*
affacer la/les fen@^etre(s)@*
@*
-all: effacer toutes les fen@^etres@*
@*
@item connect [nom_serveur]
@*
se connecter @`a un serveur@*
@*
nom_serveur: nom du serveur pour se connecter@*
@*
@item disconnect [nom_serveur]
@*
se d@'econnecter d'un serveur@*
@*
nom_serveur: nom du serveur pour se d@'econnecter@*
@*
@item debug dump
@*
affiche des messages de debuggage@*
@*
dump: affiche les variables m@'emoire WeeChat dans le fichier log (les m@^emes messages sont affich@'es lorsque WeeChat plante)@*
@*
@item help [commande]
@*
afficher l'aide sur les commandes@*
@*
commande: nom d'une commande WeeChat ou IRC@*
@*
@item ignore [masque [[type | commande] [canal [serveur]]]]
@*
ignorer des messages IRC et/ou des masques@*
@*
masque: pseudo ou masque @`a ignorer@*
type: type de message @`a ignorer (action, ctcp, dcc, pv)@*
commande: commande IRC@*
canal: nom du canal pour le ignore@*
serveur: nom du serveur pour le ignore@*
@*
Pour chaque param@`etre, '*' signifie tou(te)s.@*
Sans param@`etre, la commande /ignore liste les ignore d@'efinis.@*
@*
@item key [touche fonction/commande] [unbind touche] [functions] [reset -yes]
@*
associer/lib@'erer des touches@*
@*
touche: associer cette touche @`a une fonction interne ou une commande (commen@,{c}ant par "/")@*
unbind: supprimer l'association @`a une touche (si "all", toutes les associations de touches par d@'efaut sont restaur@'ees)@*
functions: lister la liste des fonctions internes pour les associations de touches@*
reset: restaur les touches aux valeurs par d@'efaut et supprime TOUTES les touches personnelles (utiliser avec pr@'ecaution !)@*
@*
@item plugin [load fichier] | [autoload] | [reload] | [unload]
@*
liste/charge/d@'echarge des extensions@*
@*
fichier: extension WeeChat (fichier) @`a charger@*
@*
Sans param@`etre, la commande /plugin liste toutes les extensions charg@'ees.@*
@*
@item server [nom_serveur] | [nom_serveur nom/IP port [-auto | -noauto] [-ipv6] [-ssl] [-pwd mot_de_passe] [-nicks pseudo1 pseudo2 pseudo3] [-username nom_utilisateur] [-realname nom_r@'eel] [-command commande] [-autojoin canal[,canal]] ] | [del nom_serveur]
@*
liste, ajoute ou retire des serveurs@*
@*
nom_serveur: nom du serveur, pour usage interne et affichage@*
nom/IP: nom ou adresse IP du serveur@*
port: port pour le serveur (nombre entier)@*
ipv6: utiliser le protocole IPv6@*
ssl: utiliser le protocole SSL@*
mot_de_passe: mot de passe pour le serveur@*
pseudo1: premier pseudo pour le serveur@*
pseudo2: pseudo alternatif pour le serveur@*
pseudo3: second pseudo alternatif pour le serveur@*
nom_utilisateur: nom d'utilisateur@*
nom_r@'eel: nom r@'eel de l'utilisateur@*
@*
@item save [fichier]
@*
sauvegarder la configuration sur disque@*
@*
fichier: fichier pour sauvegarder la configuration@*
@*
@item set [option [ = valeur]]
@*
modifier des param@`etres de configuration@*
@*
option: nom de l'option (si le nom est complet et qu'aucune valeur n'est donn@'ee, alors l'aide sur l'option est affich@'ee)@*
valeur: valeur pour l'option@*
@*
@item unalias nom_alias
@*
supprimer un alias@*
@*
nom_alias: nom de l'alias @`a supprimer@*
@*
@item unignore [nombre | [masque [[type | commande] [canal [serveur]]]]]
@*
supprimer le ignore des messages IRC et/ou des masques@*
@*
nombre: num@'ero de ignore @`a supprimer (le nombre est affich@'e sur la liste des ignore)@*
masque: pseudo ou masque @`a ignorer@*
type: type de message @`a ignorer (action, ctcp, dcc, pv)@*
commande: commande IRC@*
canal: nom du canal pour le ignore@*
serveur: nom du serveur pour le ignore@*
@*
Pour chaque param@`etre, '*' signifie tou(te)s.@*
Sans param@`etre, /ignore liste les ignore d@'efinis.@*
@*
@item window [list | -1 | +1 | b# | splith | splitv | [merge [down | up | left | right | all]]]
@*
gestion des fen@^etres@*
@*
list: liste les fen@^etres ouvertes (pas de param@`etre affiche cette liste)@*
-1: saute @`a la fen@^etre pr@'ec@'edente@*
+1: saute @`a la fen@^etre suivante@*
b#: saute @`a la fen@^etre affichant le tampon n<>#@*
splith: @'eclate la fen@^etre en deux horizontalement@*
splitv: @'eclate la fen@^etre en deux verticalement@*
merge: fusionne la fen@^etre avec une autre@*
@*
@end table
Commandes IRC :@*
@table @kbd
@item admin [cible]
@*
trouver les informations sur l'administrateur du serveur@*
@*
cible: serveur@*
@*
@item ame message
@*
envoyer une action CTCP @`a tous les canaux de tous les serveurs connect@'es@*
@*
message: message @`a envoyer@*
@*
@item amsg texte
@*
envoyer un message @`a tous les canaux de tous les serveurs connect@'es@*
@*
texte: texte @`a envoyer@*
@*
@item away [-all] [message]
@*
basculer le statut absent@*
@*
-all: basculer le statut absent sur tous les serveurs connect@'es@*
message: message pour l'absence (si pas de message donn@'e, le statut d'absence est supprim@'e)@*
@*
@item ban [canal] [pseudo [pseudo ...]]
@*
bannit des pseudos ou masques@*
@*
canal: nom du canal pour le bannissement@*
pseudo: pseudo ou masque pour le bannissement@*
@*
@item ctcp pseudo type [arguments]
@*
envoyer un message CTCP (Client-To-Client Protocol)@*
@*
pseudo: utilisateur @`a qui envoyer le CTCP@*
type: type de CTCP (exemples: "version", "ping", etc...)@*
arguments: arguments pour le CTCP@*
@*
@item dcc action [pseudo [fichier]]
@*
d@'emarre le DCC (fichier ou discussion) ou ferme une discussion@*
@*
action: 'send' (envoi de fichier) ou 'chat' (discussion) ou 'close' (fermeture discussion)@*
pseudo: pseudo pour envoyer le fichier ou discuter@*
fichier: nom du fichier (sur la machine locale)@*
@*
@item dehalfop [pseudo [pseudo]]
@*
retire le statut de demi-op@'erateur du canal @`a/aux nick(s)@*
@*
@item deop [pseudo [pseudo]]
@*
retire le statut d'op@'erateur du canal @`a/aux nick(s)@*
@*
@item devoice [pseudo [pseudo]]
@*
retire la voix du/des pseudo(s)@*
@*
@item die
@*
arr@^eter le serveur@*
@*
@item halfop [pseudo [pseudo]]
@*
donner le statut de demi-op@'erateur @`a un/des utilisateur(s)@*
@*
@item info [cible]
@*
voir les informations d@'ecrivant le serveur@*
@*
cible: nom du serveur@*
@*
@item invite pseudo canal
@*
inviter un utilisateur sur un canal@*
@*
pseudo: utilisateur @`a inviter@*
channel: canal pour l'invitation@*
@*
@item ison pseudo [pseudo ...]
@*
v@'erifier si un utilisateur est actuellement sur IRC@*
@*
pseudo: pseudo@*
@*
@item join canal[,canal] [cl@'e[,cl@'e]]
@*
joindre un canal@*
@*
canal: nom du canal @`a rejoindre@*
cl@'e: cl@'e pour rejoindre le canal@*
@*
@item kick [canal] pseudo [commentaire]
@*
retirer par la force un utilisateur d'un canal@*
@*
canal: canal o@`u l'utilisateur se trouve@*
pseudo: utilisateur @`a @'eliminer@*
commentaire: commentaire pour l'@'elimination@*
@*
@item kickban [canal] pseudo [commentaire]
@*
retirer par la force un utilisateur d'un canal et le bannir@*
@*
canal: canal o@`u l'utilisateur se trouve@*
pseudo: utilisateur @`a @'eliminer et bannir@*
commentaire: commentaire pour l'@'elimination@*
@*
@item kill pseudo commentaire
@*
fermer la connexion client-serveur@*
@*
pseudo: utilisateur@*
commentaire: commentaire pour la mort@*
@*
@item links [[serveur] masque_serveur]
@*
lister tous les noms de serveurs connus du serveur qui r@'epondent @`a la requ@^ete@*
@*
serveur: ce serveur doit r@'epondre @`a la requ@^ete@*
masque_serveur: liste des serveurs correspondant au masque@*
@*
@item list [canal[,canall] [serveur]]
@*
lister les canaux et leur sujet@*
@*
canal: canal @`a lister@*
serveur: nom du serveur@*
@*
@item lusers [masque [cible]]
@*
obtenir des statistiques sur la taille du r@'eseau IRC@*
@*
masque: serveurs qui correspondent au masque seulement@*
cible: serveur pour faire suivre la requ@^ete@*
@*
@item me message
@*
envoyer une action CTCP au canal courant@*
@*
message: message @`a envoyer@*
@*
@item mode @{ canal @{[+|-]|o|p|s|i|t|n|b|v@} [limite] [utilisateur] [masque de banissement] @} | @{ nick @{[+|-]|i|w|s|o@} @}
@*
changer le mode du canal ou de l'utilisateur@*
@*
modes de canaux :@*
canal: nom du canal @`a modifier@*
o: donner/reprendre le statut privil@'egi@'e d'op@'erateur@*
p: indicateur de canal priv@'e@*
s: indicateur de canal secret@*
i: indicateur de canal avec invitation seulement@*
t: le titre est modifiable seulement par un op@'erateur du canal@*
n: aucun message au canal depuis l'ext@'erieur@*
m: canal mod@'er@'e@*
l: fixer la limite d'utilisateurs pour le canal@*
b: param@'etrer un masque de banissement pour garder des utilisateurs dehors@*
e: param@'etrer un masque d'exception@*
v: donner/reprendre la possibilit@'e de parler sur un canal mod@'er@'e@*
k: d@'efinir une cl@'e (mot de passe) pour acc@'eder au canal@*
modes utilisateur :@*
pseudo: utilisateur @`a modifier@*
i: marquer un utilisateur comme invisible@*
s: marquer un utilisateur pour recevoir les notices du serveur@*
w: l'utilisateur re@,{c}oit les wallops@*
o: drapeau op@'erateur@*
@*
@item motd [cible]
@*
obtenir le message du jour@*
@*
cible: nom du serveur@*
@*
@item msg cible[,cible] texte
@*
envoyer un message @`a un utilisateur ou canal@*
@*
cible: utilisateur ou canal (peut-@^etre un masque, '*' = canal courant)@*
texte: texte @`a envoyer@*
@*
@item names [canal[,canal]]
@*
lister les utilisateurs sur des canaux@*
@*
canal: nom du canal@*
@*
@item nick [-all] pseudo
@*
changer le pseudo courant@*
@*
-all: d@'efinir le nouveau pseudo sur tous les serveurs connect@'es@*
pseudo: nouveau pseudo@*
@*
@item notice pseudo texte
@*
envoyer un message notice @`a un utilisateur@*
@*
pseudo: utilisateur cible pour la notice@*
texte: texte @`a envoyer@*
@*
@item op pseudo [pseudo]
@*
donner le statut op@'erateur @`a un/des utilisateur(s)@*
@*
@item oper utilisateur mot_de_passe
@*
obtenir le statut d'op@'erateur@*
@*
utilisateur/mot_de_passe: utilis@'e pour obtenir les privil@`eges sur le serveur IRC courant@*
@*
@item part [canal[,canall] [message_de_fin]
@*
quitter un canal@*
@*
canal: canal @`a quitter@*
message_de_fin: message de fin (affich@'e aux autres utilisateurs)@*
@*
@item ping serveur1 [serveur2]
@*
pinguer un serveur@*
@*
serveur1: serveur @`a pinguer@*
serveur2: faire suivre le ping @`a ce serveur@*
@*
@item pong d@'emon [d@'emon2]
@*
r@'epondre @`a un message ping@*
@*
d@'emon: d@'emon qui a r@'epondu au message Ping@*
d@'emon2: faire suivre le message @`a ce d@'emon@*
@*
@item query pseudo [texte]
@*
envoyer un message priv@'e @`a un utilisateur@*
@*
pseudo: utilisateur pour la conversation priv@'ee@*
texte: texte @`a envoyer@*
@*
@item quit [message_de_fin]
@*
fermer toutes les connexions et quitter@*
@*
message_de_fin: message de fin (affich@'e aux autres utilisateurs)@*
@*
@item quote donn@'ees
@*
envoyer des donn@'ees brutes au serveur sans analyse@*
@*
donn@'ees: donn@'ees brutes @`a envoyer@*
@*
@item rehash
@*
demander au serveur de recharger son fichier de configuration@*
@*
@item restart
@*
demander au serveur de red@'emarrer@*
@*
@item service pseudo r@'eserv@'e distribution type r@'eserv@'e info
@*
enregister un nouveau service@*
@*
distribution: visibilit@'e du service@*
type: r@'eserv@'e pour une utilisation future@*
@*
@item servlist [masque [type]]
@*
lister les services actuellement connect@'es au r@'eseau@*
@*
masque: lister seulement les services qui correspondent @`a ce masque@*
type: lister seulement les services de ce type@*
@*
@item squery service texte
@*
envoyer un message @`a un service@*
@*
service: nom du service@*
texte: texte @`a envoyer@*
@*
@item squit serveur commentaire
@*
d@'econnecter les liens vers un serveur@*
@*
serveur: nom du serveur@*
commentaire: commentaire pour quitter@*
@*
@item stats [requ@^ete [serveur]]
@*
demander des statistiques sur le serveur@*
@*
requ@^ete: c/h/i/k/l/m/o/y/u (voir la RFC1459)@*
serveur: nom du serveur@*
@*
@item summon utilisateur [cible [canal]]
@*
envoyer aux utilisateurs d'un serveur IRC un message leur demandant de rejoindre IRC@*
@*
utilisateur: nom d'utilisateur@*
cible: nom du serveur@*
canal: nom du canal@*
@*
@item time [cible]
@*
demander l'heure locale de serveur@*
@*
cible: demander l'heure de ce serveur@*
@*
@item topic [canal] [titre]
@*
recevoir/d@'efinir le titre du canal@*
@*
canal: nom du canal@*
titre: nouveau titre pour le canal (si le titre est "-delete" alors le titre est supprim@'e)@*
@*
@item trace [cible]
@*
trouver le chemin jusqu'@`a un serveur sp@'ecifique@*
@*
cible: serveur@*
@*
@item unban [canal] pseudo [pseudo ...]
@*
supprime le bannissement sur des pseudos ou masques@*
@*
canal: nom du canal pour supprimer le bannissement@*
pseudo: pseudo ou masque pour supprimer le bannissement@*
@*
@item userhost pseudo [pseudo ...]
@*
retourne une liste d'informations sur des utilisateurs@*
@*
pseudo: pseudo@*
@*
@item users [cible]
@*
liste des utilisateurs connect@'es au serveur@*
@*
cible: serveur@*
@*
@item version [serveur | pseudo]
@*
retourne la version de l'utilisateur ou du serveur (courant ou sp@'ecifi@'e)@*
@*
serveur: nom du serveur@*
pseudo: utilisateur@*
@*
@item voice [pseudo [pseudo]]
@*
donne la voix @`a/aux utilisateur(s)@*
@*
@item wallops texte
@*
envoyer un message @`a tous les utilisateurs connect@'es qui ont activ@'e le mode utilisateur 'w' pour eux-m@^emes@*
@*
texte @`a envoyer@*
@*
@item who [masque ["o"]]
@*
g@'en@`ere une requ@^ete qui retourne une liste d'information@*
@*
masque: information qui correspond @`a ce masque uniquement@*
o: seul les op@'erateurs sont retourn@'es correspondant au masque fourni@*
@*
@item whois [serveur] pseudo[,pseudo]
@*
demande les informations sur le(s) utilisateur(s)@*
@*
serveur: nom du serveur@*
pseudo: utilisateur (peut @^etre un masque)@*
@*
@item whowas pseudo [,pseudo [,pseudo ...]] [nombre [cible]]
@*
demander de l'information sur un nick qui n'existe plus@*
@*
pseudo: pseudo @`a chercher@*
nombre: nombre de r@'eponses @`a retourner (recherche compl@`ete si nombre n@'egatif)@*
cible: la r@'eponse doit correspondre @`a ce masque@*
@*
@end table
Fonctions internes pour les touches :@*
@table @kbd
@item return
terminer la ligne@*
@item tab
compl@'eter le mot@*
@item backspace
effacer le caract@`ere pr@'ec@'edent@*
@item delete
effacer le caract@`ere suivant@*
@item delete_end_line
effacer jusqu'@`a la fin de la ligne@*
@item delete_beginning_line
effacer jusqu'au d@'ebut de la ligne@*
@item delete_line
effacer la ligne enti@`ere@*
@item delete_previous_word
effacer le mot pr@'ec@'edent@*
@item delete_next_word
effacer le mot suivant@*
@item clipboard_paste
coller le contenu du presse-papier@*
@item transpose_chars
inverser les caract@`eres@*
@item home
aller au d@'ebut de la ligne@*
@item end
aller @`a la fin de la ligne@*
@item left
se d@'eplacer d'un caract@`ere @`a gauche@*
@item previous_word
se d@'eplacer au mot pr@'ec@'edent@*
@item right
se d@'eplacer d'un caract@`ere @`a droite@*
@item next_word
se d@'eplacer au mot suivant@*
@item up
appeler la commande pr@'ec@'edente dans l'historique@*
@item up_global
appeler la commande pr@'ec@'edente dans l'historique global@*
@item down
appeler la commande suivante dans l'historique@*
@item down_global
appeler la commande suivante dans l'historique global@*
@item page_up
faire d@'efiler d'une page vers le haut@*
@item page_down
faire d@'efiler d'une page vers le bas@*
@item infobar_clear
effacer la barre d'infos@*
@item nick_page_up
faire d@'efiler la liste des pseudos d'une page vers le haut@*
@item nick_page_down
faire d@'efiler la liste des pseudos d'une page vers le bas@*
@item nick_beginning
afficher le d@'ebut de la liste des pseudos@*
@item nick_end
afficher la fin de la liste des pseudos@*
@item refresh
rafraichir l'@'ecran@*
@item jump_smart
sauter au tampon avec de l'activit@'e@*
@item jump_dcc
sauter au tampon DCC@*
@item jump_last_buffer
sauter au dernier tampon@*
@item jump_server
sauter au tampon du serveur@*
@item jump_next_server
sauter au prochain serveur@*
@item hotlist_clear
effacer la liste d'activit@'e@*
@item grab_key
capturer une touche@*
@end table
@node Tube FIFO, , Commandes WeeChat, Utilisation
@section Tube FIFO
Vous pouvez contr@^oler WeeChat @`a distance, en envoyant des commandes ou du
texte dans un tube FIFO (l'option "irc_fifo_pipe" doit @^etre activ@'ee, elle
est d@'esactiv@'ee par d@'efaut).@*
Le tube FIFO est dans le r@'epertoire ~/.weechat/ et s'appelle "weechat_fifo_xxxxx"
(o@`u xxxxx est l'ID du processus (PID) du WeeChat qui tourne).@*
Donc si plusieurs WeeChat tournent, vous avez plusieurs tubes FIFO, un pour
chaque session.@*
@*
La syntaxe pour envoyer des commandes ou du texte dans le tube FIFO est la suivante :@*
@command{serveur,canal *texte ou commande ici}@*
o@`u le serveur et le canal sont facultatifs, mais si le canal est l@`a, le
serveur doit l'@^etre aussi.@*
@*
Quelques exemples :
@table @asis
@item @bullet{} changement du pseudo sur freenode en "pseudo|absent":
@*
@command{echo "freenode */nick pseudo|absent" >~/.weechat/weechat_fifo_12345}
@*
@item @bullet{} affichage de texte sur le canal #weechat :
@*
@command{echo "freenode,#weechat *bonjour tout le monde !" >~/.weechat/weechat_fifo_12345}
@*
@item @bullet{} affichage de texte sur le canal courant (le tampon affich@'e par WeeChat):
@*
@command{echo "*bonjour !" >~/.weechat/weechat_fifo_12345}
@*
@b{Attention :} ceci est dangereux et vous ne devriez pas le faire sauf si vous savez ce que vous faites !
@*
@item @bullet{} envoyer deux commandes pour d@'echarger/recharger les scripts Perl (vous devez les s@'eparer par \n):
@*
@command{echo -e "freenode */perl unload\nfreenode */perl autoload" >~/.weechat/weechat_fifo_12345}
@end table
@*
Vous pouvez @'ecrire un script qui envoie les commandes @`a tous les WeeChat qui
tournent en m@^eme temps, par exemple :@*
@verbatim
#!/bin/sh
if [ $# -eq 1 ]; then
for fifo in $(/bin/ls ~/.weechat/weechat_fifo_* 2>/dev/null); do
echo -e "$1" >$fifo
done
fi
@end verbatim
@*
Si le script s'appelle "auto_weechat_command", vous pouvez le lancer ainsi :@*
@command{./auto_weechat_command "freenode,#weechat *bonjour"}
@c ******************************* Extensions *********************************
@node Extensions, Auteurs / Support, Utilisation, Top
@chapter Extensions
@menu
* Les extensions dans WeeChat::
* Ecrire une extension::
* Exemple d'extension::
* Extensions pour scripts::
@end menu
@node Les extensions dans WeeChat, Ecrire une extension, Extensions, Extensions
@section Les extensions dans WeeChat
Une extension (``plugin'' en anglais) est un programme @'ecrit en C
qui peut appeler des fonctions de WeeChat d@'efinies dans une
interface.@*
Ce programme C n'a pas besoin des sources WeeChat pour @^etre
compil@'e et peut @^etre charg@'e/d@'echarg@'e dynamiquement dans
WeeChat via la commande @command{/plugin}.@*
@*
L'extension doit @^etre au format biblioth@`eque, chargeable
dynamiquement par le syst@^eme d'exploitation.@*
Sous GNU/Linux, il s'agit d'un fichier ayant pour extension ``.so'',
sous Windows ``.dll''.
@node Ecrire une extension, Exemple d'extension, Les extensions dans WeeChat, Extensions
@section Ecrire une extension
@subsection R@`egles de base
L'extension doit appeler le fichier ``weechat-plugin.h'' (disponible
dans les sources de WeeChat).@*
Ce fichier d@'efinit les structures et types dont l'extension aura
besoin pour communiquer avec WeeChat.@*
@*
L'extension doit comporter certaines variables et fonctions
obligatoires (sans quoi l'extension ne peut <20>tre charg<72>e) :@*
@itemize @bullet
@item variables de description de l'extension :
@itemize @minus
@item plugin_name[]: le nom de l'extension
@item plugin_version[]: la version de l'extension
@item plugin_description[]: une courte description de l'extension
@end itemize
@item fonctions d'initialisation et fin de l'extension :
@itemize @minus
@item weechat_plugin_init: fonction appel@'ee au chargement de l'extension,
qui doit renvoyer PLUGIN_RC_OK (0) en cas de succ@`es, PLUGIN_RC_KO (-1)
en cas d'erreur
@item weechat_plugin_end: fonction appel@'ee au d@'echargement de l'extension
@end itemize
@end itemize
@subsection Fonctions de l'interface (API)
L'extension peut appeler un certain nombre de fonctions d@'efinies
dans la structure t_weechat_plugin.@*
@*
Ces fonctions sont d@'etaill@'ees ci-dessous :@*
@itemize @bullet
@item
@command{int ascii_strcasecmp (t_weechat_plugin *plugin,
char *string1, char *string2)}@*
@*
Effectue une comparaison entre deux cha@^ines, sans tenir compte des
majuscules/minuscules ni de la locale.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{string1}: la premi@`ere cha@^ine @`a comparer
@item @option{string2}: la deuxi@`eme cha@^ine @`a comparer
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
La diff@'erence entre les deux cha@^ines: n@'egatif si chaine1 <
chaine2, nul si chaine1 == chaine 2, positif si chaine1 > chaine2@*
@*
@emph{Exemple :}@*
@*
@code{if (plugin->ascii_strcasecmp (plugin, "abc", "def") != 0) ...}@*
@*
@item
@command{int ascii_strncasecmp (t_weechat_plugin *plugin,
char *string1, char *string2, int max)}@*
@*
Effectue une comparaison entre deux cha@^ines, sans tenir compte des
majuscules/minuscules ni de la locale, en comparant au plus ``max''
caract@`eres.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{string1}: la premi@`ere cha@^ine @`a comparer
@item @option{string2}: la deuxi@`eme cha@^ine @`a comparer
@item @option{max}: nombre de caract@`eres max @`a comparer
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
La diff@'erence entre les deux cha@^ines: n@'egatif si chaine1 <
chaine2, nul si chaine1 == chaine 2, positif si chaine1 > chaine2@*
@*
@emph{Exemple :}@*
@*
@code{if (plugin->ascii_strncasecmp (plugin, "abc", "def", 2) != 0) ...}@*
@*
@item
@command{char **explode_string (t_weechat_plugin *plugin,
char *string, char *separators, int num_items_max, int *num_items)}@*
@*
Explose une cha@^ine en plusieurs selon un/des d@'elimiteur(s).@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{string}: la cha@^ine @`a exploser
@item @option{separators}: les d@'elimiteurs utilis@'es pour exploser
la cha@^ine
@item @option{num_items_max}: nombre maximum de sous-cha@^ines
cr@'e@'ees (si 0, alors le nombre est infini)
@item @option{num_items}: pointeur vers un entier qui contiendra le
nombre de sous-cha@^ines cr@'e@'ees en retour
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Un tableau de cha@^ines, ou NULL si un probl@^eme a @'et@'e rencontr@'e.@*
NB: le r@'esultat doit @^etre lib@'er@'e par un appel @`a la fonction
``free_exploded_string'' apr@`es utilisation.@*
@*
@emph{Exemple :}@*
@*
@code{char *argv;}@*
@code{int argc;}@*
@code{argv = plugin->explode_string (plugin, string, " ", 0, &argc);}@*
@code{...}@*
@code{if (argv != NULL)}@*
@code{plugin->free_exploded_string (plugin, argv);}@*
@*
@item
@command{char **free_exploded_string (t_weechat_plugin *plugin,
char **string)}@*
@*
Lib@`ere la m@'emoire utilis@'ee pour une explosion de cha@^ine.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{string}: la cha@^ine explos@'ee par la fonction
``explode_string''
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Aucune.@*
@*
@emph{Exemple :}@*
@*
@code{char *argv;}@*
@code{int argc;}@*
@code{argv = plugin->explode_string (plugin, string, " ", 0, &argc);}@*
@code{...}@*
@code{if (argv != NULL)}@*
@code{plugin->free_exploded_string (plugin, argv);}@*
@*
@item
@command{void exec_on_files (t_weechat_plugin *plugin, char *directory,
int (*callback)(t_weechat_plugin *, char *))}@*
@*
Ex@'ecute une fonction sur tous les fichiers d'un r@'epertoire.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{directory}: le r@'epertoire o@`u les fichiers sont
recherch@'es
@item @option{callback}: une fonction appel@'ee pour chaque fichier trouv@'e
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Aucune.@*
@*
@emph{Exemple :}@*
@*
@code{int callback (t_weechat_plugin *plugin, char *file)}@*
@code{@{}@*
@code{@ @ @ @ plugin->printf_server (plugin, "fichier: %s", file);}@*
@code{@ @ @ @ return 1;}@*
@code{@}}@*
@code{}@*
@code{...}@*
@code{plugin->exec_on_files (plugin, "/tmp", &callback);}@*
@*
@item
@command{void printf (t_weechat_plugin *plugin,
char *server, char *channel, char *message, ...)}@*
@*
Affiche un message sur un tampon WeeChat, identifi@'e par le serveur et
le canal (tous deux pouvant @^etre NULL pour le tampon courant).@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{server}: nom du serveur pour trouver le tampon dans
lequel afficher (peut @^etre NULL)
@item @option{channel}: nom du canal pour trouver le tampon dans
lequel afficher (peut @^etre NULL)
@item @option{message}: message @`a afficher
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Aucune.@*
@*
@emph{Exemples :}@*
@*
@code{plugin->printf (NULL, NULL, "hello");}@*
@code{plugin->printf (NULL, "#weechat", "hello");}@*
@code{plugin->printf ("freenode", "#weechat", "hello");}@*
@*
@item
@command{void printf_server (t_weechat_plugin *plugin,
char *message, ...)}@*
@*
Affiche un message sur la fen@^etre du serveur courant.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{message}: message @`a afficher
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Aucune.@*
@*
@emph{Exemple :}@*
@*
@code{plugin->printf_server ("hello");}@*
@*
@item
@command{void printf_infobar (t_weechat_plugin *plugin,
int time, char *message, ...)}@*
@*
Affiche un message sur la barre d'infos pour un temps d@'etermin@'e.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{time}: temps pendant lequel le message est affich@'e, en
secondes (0 = jamais effac@'e)
@item @option{message}: message @`a afficher
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Aucune.@*
@*
@emph{Exemple :}@*
@*
@code{plugin->printf_infobar (5, "hello");}@*
@*
@item
@command{t_plugin_handler *msg_handler_add (t_weechat_plugin
*plugin, char *message, t_plugin_handler_func *handler_func,
char *handler_args, void *handler_pointer)}@*
@*
Ajoute un gestionnaire de messages IRC, appel@'e d@`es qu'un message
IRC est re@,cu.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{message}: message IRC (par exemple ``PRIVMSG'')
@item @option{handler_func}: fonction appel@'ee lorsque le message est
re@,cu
@item @option{handler_args}: param@`etres pass@'es @`a la fonction
appel@'ee
@item @option{handler_pointer}: pointeur pass@'e @`a la fonction
appel@'ee
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Le pointeur vers le nouveau gestionnaire de messages.@*
@*
@emph{Exemple :}@*
@*
@code{int msg_kick (t_weechat_plugin *plugin, char *server,
char *command, char *arguments, char *handler_args,
void *handler_pointer)}@*
@code{@{}@*
@code{@ @ @ @ plugin->printf (plugin, server, NULL, "KICK re@,cu");}@*
@code{@ @ @ @ return PLUGIN_RC_OK;}@*
@code{@}}@*
@code{...}@*
@code{plugin->msg_handler_add (plugin, "KICK", &msg_kick, NULL, NULL);}@*
@*
@emph{Notes :}@*
@*
La fonction appel@'ee lorsque le message est re@,cu doit renvoyer une
des valeurs suivantes (pr@'efix@'ee par ``weechat::'' pour Perl ou
``weechat.'' pour Python) :@*
@itemize @minus
@item @option{PLUGIN_RC_KO}: la fonction a @'echou@'e
@item @option{PLUGIN_RC_OK}: la fonction a r@'eussi
@item @option{PLUGIN_RC_OK_IGNORE_WEECHAT}: le message ne sera pas transmis
@`a WeeChat
@item @option{PLUGIN_RC_OK_IGNORE_PLUGINS}: le message ne sera pas transmis
@`a d'autres extensions
@item @option{PLUGIN_RC_OK_IGNORE_ALL}: le message ne sera transmis ni @`a
WeeChat ni @`a d'autres extensions
@end itemize
@*
@item
@command{t_plugin_handler *cmd_handler_add (t_weechat_plugin
*plugin, char *command, char *description, char *arguments,
char *arguments_description, t_plugin_handler_func *handler_func,
char *handler_args, void *handler_pointer)}@*
@*
Ajoute un gestionnaire de commande WeeChat, appel@'e d@`es que
l'utilisateur utilise la commande (par exemple /commande).@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{commande}: la nouvelle commande
@item @option{description}: description de la commande (affich@'ee par
/help commande)
@item @option{arguments}: br@`eve description des param@`etres de la
commande (affich@'ee par /help commande)
@item @option{arguments_description}: longue description des
param@`etres de la commande (affich@'ee par /help commande)
@item @option{handler_func}: fonction appel@'ee lorsque la commande est
ex@'ecut@'ee
@item @option{handler_args}: param@`etres pass@'es @`a la fonction
appel@'ee
@item @option{handler_pointer}: pointeur pass@'e @`a la fonction
appel@'ee
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Le pointeur vers le nouveau gestionnaire de commande.@*
@*
@emph{Exemple :}@*
@*
@code{int cmd_test (t_weechat_plugin *plugin, char *server,
char *command, char *arguments, char *handler_args,
void *handler_pointer)}@*
@code{@{}@*
@code{@ @ @ @ plugin->printf (plugin, server, NULL, "commande test,
fichier: %s", (arguments) ? arguments : "aucun");}@*
@code{@ @ @ @ return PLUGIN_RC_OK;}@*
@code{@}}@*
@code{...}@*
@code{plugin->cmd_handler_add (plugin, "test", "Commande test",
"[fichier]", "fichier: un nom de fichier", &cmd_test, NULL, NULL);}@*
@*
@emph{Notes :}@*
@*
La fonction appel@'ee lorsque la commande est ex@'ecut@'ee doit
renvoyer une des valeurs suivantes (pr@'efix@'ee par ``weechat::''
pour Perl ou ``weechat.'' pour Python) :@*
@itemize @minus
@item @option{PLUGIN_RC_KO}: la fonction a @'echou@'e
@item @option{PLUGIN_RC_OK}: la fonction a r@'eussi
@end itemize
@*
@item
@command{void handler_remove (t_weechat_plugin *plugin,
t_plugin_handler *handler)}@*
@*
Supprime un gestionnaire.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{handler}: le gestionnaire @`a supprimer
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Aucune.@*
@*
@emph{Exemple :}@*
@*
@code{plugin->handler_remove (plugin, my_handler);}@*
@*
@item
@command{void handler_remove_all (t_weechat_plugin *plugin)}@*
@*
Supprime tous les gestionnaires d'une extension.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Aucune.@*
@*
@emph{Exemple :}@*
@*
@code{plugin->handler_remove_all (plugin);}@*
@*
@item
@command{void exec_command (t_weechat_plugin
*plugin, char *server, char *channel, char *command)}@*
@*
Execute une commande WeeChat (ou envoie un message @`a un canal).@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{server}: nom du serveur o@`u ex@'ecuter la commande
(peut @^etre NULL)
@item @option{channel}: nom du canal o@`u ex@'ecuter la commande (peut
@^etre NULL)
@item @option{command}: la commande @`a ex@'ecuter
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Aucune.@*
@*
@emph{Exemples :}@*
@*
@code{plugin->exec_command (plugin, NULL, NULL, "/help nick");}@*
@code{plugin->exec_command (plugin, "freenode", "#weechat", "hello");}@*
@*
@item
@command{char *get_info (t_weechat_plugin
*plugin, char *info, char *server, char *channel)}@*
@*
Renvoie une information sur WeeChat ou un canal.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{info}: nom de l'info @`a obtenir :
@itemize @minus
@item @option{version}: obtenir la version de WeeChat
@item @option{nick}: obtenir le pseudo
@item @option{channel}: obtenir le nom du canal
@item @option{server}: obtenir le nom du serveur
@item @option{away}: obtenir le drapeau ``away''
@item @option{weechat_dir}: obtenir le r@'epertoire maison de WeeChat
@item @option{weechat_libdir}: obtenir le r@'epertoire ``lib''
syst@`eme de WeeChat
@item @option{weechat_sharedir}: obtenir le r@'epertoire ``share''
syst@`eme de partage WeeChat
@end itemize
@item @option{server}: nom du serveur o@`u r@'ecup@'erer l'information
(ni n@'ecessaire)
@item @option{channel}: nom du canal o@`u r@'ecup@'erer l'information
(si n@'ecessaire)
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
L'information recherch@'ee, NULL si non trouv@'ee.@*
NB: le r@'esultat doit @^etre lib@'er@'e par un appel @`a la fonction
``free'' apr@`es utilisation.@*
@*
@emph{Exemples :}@*
@*
@code{char *version = plugin->get_info (plugin, "version", NULL, NULL);}@*
@code{char *nick = plugin->get_info (plugin, "nick", "freenode", NULL);}@*
@*
@item
@command{t_plugin_info_dcc *get_dcc_info (t_weechat_plugin *plugin)}@*
@*
Renvoie la liste des DCC en cours ou termin@'es.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
La liste cha@^in@'ee des DCC.@*
NB: le r@'esultat doit @^etre lib@'er@'e par un appel @`a la fonction
``free_dcc_info'' apr@`es utilisation.@*
@*
@emph{Exemple :}@*
@*
@code{t_plugin_dcc_info *dcc_info = plugin->get_dcc_info (plugin);}@*
@code{for (ptr_dcc = dcc_info; ptr_dcc; ptr_dcc =
ptr_dcc->next_dcc)}@*
@code{@{}@*
@code{@ @ @ @ plugin->printf_server (plugin, "DCC type=%d, avec: %s",
ptr_dcc->type, ptr_dcc->nick);}@*
@code{@}}@*
@*
@item
@command{void free_dcc_info (t_weechat_plugin *plugin,
t_plugin_dcc_info *dcc_info)}@*
@*
Lib@`ere la m@'emoire utilis@'ee par une liste de DCC.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{dcc_info}: pointeur vers une structure renvoy@'ee par la
fonction ``get_dcc_info''
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
Aucune.@*
@*
@emph{Exemple :}@*
@*
@code{plugin->free_dcc_info (plugin, dcc_info);}@*
@*
@item
@command{char *get_config (t_weechat_plugin
*plugin, char *option)}@*
@*
Renvoie la valeur d'une option de configuration WeeChat.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{option}: nom de l'option @`a lire
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
La valeur de l'option, NULL si non trouv@'ee.@*
NB: le r@'esultat doit @^etre lib@'er@'e par un appel @`a la fonction
``free'' apr@`es utilisation.@*
@*
@emph{Exemples :}@*
@*
@code{char *value1 = plugin->get_config (plugin, "look_set_title");}@*
@code{char *value2 = plugin->get_config (plugin, "freenode.server_autojoin");}@*
@*
@item
@command{int set_config (t_weechat_plugin
*plugin, char *option, char *value)}@*
@*
Modifie la valeur d'une option de configuration WeeChat.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{option}: nom de l'option @`a mettre @`a jour
@item @option{value}: nouvelle valeur pour l'option
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si l'option a @'et@'e modifi@'ee avec succ@`es, 0 si une erreur
s'est produite.@*
@*
@emph{Exemple :}@*
@*
@code{plugin->set_config (plugin, "look_nicklist", "off");}@*
@*
@item
@command{char *get_plugin_config (t_weechat_plugin
*plugin, char *option)}@*
@*
Renvoie la valeur d'une option de l'extension.@*
L'option est lue depuis le fichier ~/.weechat/plugins.rc et est
sous cette forme :@*
@code{extension.option=valeur}@*
NB: le nom de l'extension est ajout@'e automatiquement.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{option}: nom de l'option @`a lire
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
La valeur de l'option, NULL si non trouv@'ee.@*
NB: le r@'esultat doit @^etre lib@'er@'e par un appel @`a la fonction
``free'' apr@`es utilisation.@*
@*
@emph{Exemple :}@*
@*
@code{char *value = plugin->get_plugin_config (plugin, "ma_variable");}@*
@*
@item
@command{int set_plugin_config (t_weechat_plugin
*plugin, char *option, char *value)}@*
@*
Modifie la valeur d'une option de l'extension.@*
L'option est @'ecrite dans le fichier ~/.weechat/plugins.rc et est
sous cette forme :@*
@code{extension.option=valeur}@*
NB: le nom de l'extension est ajout@'e automatiquement.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{plugin}: un pointeur vers la structure de l'extension
@item @option{option}: nom de l'option @`a mettre @`a jour
@item @option{value}: nouvelle valeur pour l'option
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si l'option a @'et@'e modifi@'ee avec succ@`es, 0 si une erreur
s'est produite.@*
@*
@emph{Exemple :}@*
@*
@code{plugin->set_plugin_config (plugin, "ma_variable", "valeur");}@*
@*
@end itemize
@subsection Compiler l'extension
La compilation ne n@'ecessite pas les sources WeeChat, mais seulement
le fichier ``weechat-plugin.h''.@*
Pour compiler une extension compos@'ee d'un fichier ``toto.c'' (sous
GNU/Linux) :@*
@*
gcc -fPIC -Wall -c toto.c@*
gcc -shared -fPIC -o libtoto.so toto.o
@subsection Charger l'extension dans WeeChat
Copier le fichier ``libtoto.so'' dans le r@'epertoire des extensions
g@'en@'eral (par exemple /usr/local/lib/weechat/plugins) ou bien dans
celui de l'utilisateur (par exemple /home/xxxxx/.weechat/plugins).@*
@*
Sous WeeChat :@*
@command{/plugin load toto}
@node Exemple d'extension, Extensions pour scripts, Ecrire une extension, Extensions
@section Exemple d'extension
Un exemple complet d'extension, qui ajoute une commande /double
affichant deux fois les param@`etres pass@'es sur le canal courant
(d'accord ce n'est pas tr@`es utile mais ceci est un exemple !) :@*
@verbatim
#include <stdlib.h>
#include "weechat-plugin.h"
char plugin_name[] = "Toto";
char plugin_version[] = "0.1";
char plugin_description[] = "Plugin de test pour WeeChat";
/* gestionnaire de commande "/hello" */
int toto_cmd_double (t_weechat_plugin *plugin, char *server,
char *command, char *arguments,
char *handler_args, void *handler_pointer)
{
if (arguments && arguments[0] && (arguments[0] != '/'))
{
plugin->exec_command (plugin, NULL, NULL, arguments);
plugin->exec_command (plugin, NULL, NULL, arguments);
}
return PLUGIN_RC_OK;
}
int weechat_plugin_init (t_weechat_plugin *plugin)
{
plugin->cmd_handler_add (plugin, "double",
"Affiche deux fois un message",
"msg",
"msg: message a afficher deux fois",
&toto_cmd_double,
NULL, NULL);
return PLUGIN_RC_OK;
}
void weechat_plugin_end (t_weechat_plugin *plugin)
{
/* on ne fait rien ici */
}
@end verbatim
@node Extensions pour scripts, , Exemple d'extension, Extensions
@section Extensions pour scripts
Trois extensions sont fournies en standard avec WeeChat pour utiliser
des langages de script: Perl, Python et Ruby.
@subsection Charger/d@'echarger des scripts
Les scripts sont charg@'es et d@'echarg@'es avec les commandes
@command{/perl}, @command{/python} et @command{/ruby}.
(tapez @kbd{/help} dans WeeChat pour obtenir de l'aide sur les
commandes).@*
@emph{Exemples :}@*
@itemize @bullet
@item
Charger un script Perl : @kbd{/perl load /tmp/essai.pl}@*
@item
D@'echarger tous les scripts Perl : @kbd{/perl unload}@*
@item
Lister les scripts Perl charg@'es : @kbd{/perl}@*
@item
Charger un script Python : @kbd{/python load /tmp/essai.py}@*
@item
D@'echarger tous les scripts Python : @kbd{/python unload}@*
@item
Lister les scripts Python charg@'es : @kbd{/python}@*
@end itemize
@subsection Interface WeeChat / Scripts
@itemize @bullet
@item
Perl: @command{weechat::register ( nom, version, fonction_de_fin,
description );}@*
Python: @command{weechat.register ( nom, version, fonction_de_fin,
description )}@*
@*
C'est la premi@`ere fonction @`a appeler dans le script.@*
Tout script pour WeeChat doit appeler cette fonction.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{nom}: nom unique pour identifier le script (chaque script doit
avoir un nom diff@'erent)
@item @option{version}: version du script
@item @option{fonction_de_fin}: fonction appel@'ee quand le script est
d@'echarg@'e (param@`etre facultatif, une cha@^ine vide signifiant qu'il n'y a pas
de fonction @`a appeler)
@item @option{description}: description br@`eve du script.
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si le script a @'et@'e enregistr@'e, 0 si une erreur s'est produite.@*
@*
@emph{Exemple en Perl :}@*
@*
@code{weechat::register ("essai", "1.0", "fin_essai", "Script d'essai !");}@*
@*
@emph{Exemple en Python :}@*
@*
@code{weechat.register ("essai", "1.0", "fin_essai", "Script d'essai !")}@*
@*
@item
Perl: @command{weechat::print ( message, [canal, [serveur]] );}@*
Python: @command{weechat.prnt ( message, [canal, [serveur]] )}@*
@*
Affiche un message dans un canal.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{message}: message @`a afficher
@item @option{canal}: nom du canal
@item @option{serveur}: nom interne du serveur
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si succ@`es, 0 si une erreur s'est produite.@*
@*
@emph{Exemples en Perl :}@*
@*
@code{weechat::print ("message");}@*
@code{weechat::print ("message", "#weechat");}@*
@code{weechat::print ("message", "#weechat", "freenode");}@*
@*
@emph{Exemples en Python :}@*
@*
@code{weechat.prnt ("message")}@*
@code{weechat.prnt ("message", "#weechat")}@*
@code{weechat.prnt ("message", "#weechat", "freenode")}@*
@*
@item
Perl: @command{weechat::print_infobar ( d@'elai, message );}@*
Python: @command{weechat.print_infobar ( d@'elai, message )}@*
@*
Affiche un message dans la barre d'infos.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{d@'elai}: d@'elai (en secondes) pendant lequel le message est affich@'e
(si 0, le message ne sera pas effac@'e).
@item @option{message}: message @`a afficher
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si succ@`es, 0 si une erreur s'est produite.@*
@*
@emph{Exemple en Perl :}@*
@*
@code{weechat::print_infobar (5, "message");}@*
@*
@emph{Exemple en Python :}@*
@*
@code{weechat.print_infobar (5, "message")}@*
@*
@item
Perl: @command{weechat::add_message_handler ( nom, fonction );}@*
Python: @command{weechat.add_message_handler ( nom, fonction )}@*
@*
Attache une fonction @`a un message IRC particulier.@*
La fonction sera appel@'ee @`a chaque fois que le message IRC sera
re@,{c}u.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{nom}: nom du message IRC pour lequel la fonction est appel@'ee@*
Pour conna@^itre la liste des messages IRC disponibles, merci de consulter les
RFC 1459 et/ou 2812 :@*
RFC 1459 : @uref{ftp://ftp.rfc-editor.org/in-notes/rfc1459.txt}@*
RFC 2812 : @uref{ftp://ftp.rfc-editor.org/in-notes/rfc2812.txt}
@item @option{fonction}: fonction appel@'ee lorsque le message est re@,{c}u
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si la fonction a @'et@'e attach@'ee, 0 si une erreur s'est produite.@*
@*
@emph{Exemple en Perl :}@*
@*
@code{weechat::add_message_handler ("privmsg", ma_fonction);}@*
@code{sub ma_fonction}@*
@code{@{ }@*
@code{@ @ @ @ weechat::print ("serveur=$_[0]\n");}@*
@code{@ @ @ @ ($null, $canal, $message) = split ":",$_[1],3;}@*
@code{@ @ @ @ ($masque, $null, $canal) = split " ", $canal;}@*
@code{@ @ @ @ weechat::print ("masque=$masque, canal=$canal, msg=$message\n");}@*
@code{@ @ @ @ return weechat::PLUGIN_RC_OK;}@*
@code{@} }@*
@*
@emph{Exemple en Python :}@*
@*
@code{weechat.add_message_handler ("privmsg", ma_fonction)}@*
@code{def ma_fonction(serveur, args):}@*
@code{@ @ @ @ weechat.prnt("serveur="+serveur)}@*
@code{@ @ @ @ null, canal, message = string.split(args, ":", 2)}@*
@code{@ @ @ @ masque, null, canal = string.split(string.strip(canal), " ", 2)}@*
@code{@ @ @ @ weechat.prnt("masque="+masque+", canal="+canal+", message="+message)}@*
@code{@ @ @ @ return weechat.PLUGIN_RC_OK}@*
@*
@emph{Notes :}@*
@*
La fonction appel@'ee lorsque le message est re@,cu doit renvoyer une
des valeurs suivantes (pr@'efix@'ee par ``weechat::'' pour Perl ou
``weechat.'' pour Python) :@*
@itemize @minus
@item @option{PLUGIN_RC_KO}: la fonction a @'echou@'e
@item @option{PLUGIN_RC_OK}: la fonction a r@'eussi
@item @option{PLUGIN_RC_OK_IGNORE_WEECHAT}: le message ne sera pas
transmis @`a WeeChat
@item @option{PLUGIN_RC_OK_IGNORE_PLUGINS}: le message ne sera pas
transmis @`a d'autres extensions
@item @option{PLUGIN_RC_OK_IGNORE_ALL}: le message ne sera transmis ni
@`a WeeChat ni @`a d'autres extensions
@end itemize
@*
@item
Perl: @command{weechat::add_command_handler ( nom, fonction,
[description, arguments, arguments_description] );}@*
Python: @command{weechat.add_command_handler ( nom, fonction,
[description, arguments, arguments_description] )}@*
@*
Cr@'e@'e une nouvelle commande WeeChat, associ@'ee @`a une fonction.@*
La fonction sera appel@'ee lorsque l'utilisateur lancera la commande
par @kbd{/nom}.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{nom}: nom de la nouvelle commande@*
Il peut s'agir d'une commande existante, auquel cas celle-ci est
@'ecras@'ee par la fonction du script. Soyez prudent en @'ecrasant les
commandes WeeChat, car elles ne seront plus accessibles tant que le
script sera charg@'e.
@item @option{fonction}: fonction associ@'ee @`a la commande
@item @option{description}: description de la commande (affich@'ee par
/help commande)
@item @option{arguments}: br@`eve description des param@`etres de la
commande (affich@'ee par /help commande)
@item @option{arguments_description}: longue description des
param@`etres de la commande (affich@'ee par /help commande)
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si la fonction a @'et@'e attach@'ee, 0 si une erreur s'est produite.@*
@*
@emph{Exemple en Perl :}@*
@*
@code{weechat::add_command_handler ("commande", ma_commande);}@*
@code{sub ma_commande}@*
@code{@{ }@*
@code{@ @ @ @ weechat::print("Serveur: $_[0], param@`etres: $_[1]\n");}@*
@code{@ @ @ @ return weechat::PLUGIN_RC_OK;}@*
@code{@} }@*
@*
@emph{Exemple en Python :}@*
@*
@code{weechat.add_command_handler ("commande", ma_commande)}@*
@code{def ma_commande(serveur, args):}@*
@code{@ @ @ @ weechat.prnt("serveur:"+serveur+" param@`etres:"+args)}@*
@code{@ @ @ @ return weechat.PLUGIN_RC_OK}@*
@*
@emph{Notes :}@*
@*
La fonction appel@'ee lorsque la commande est ex@'ecut@'ee doit
renvoyer une des valeurs suivantes (pr@'efix@'ee par ``weechat::''
pour Perl ou ``weechat.'' pour Python) :@*
@itemize @minus
@item @option{PLUGIN_RC_KO}: la fonction a @'echou@'e
@item @option{PLUGIN_RC_OK}: la fonction a r@'eussi
@end itemize
@*
@item
Perl: @command{weechat::remove_handler ( nom, fonction );}@*
Python: @command{weechat.remove_handler ( nom, fonction )}@*
@*
Supprime un gestionnaire de message ou de commande.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{nom}: nom du message IRC ou de la commande
@item @option{fonction}: fonction associ@'ee
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si succ@`es, 0 si une erreur s'est produite.@*
@*
@emph{Exemple en Perl :}@*
@*
@code{weechat::remove_handler ("commande", ma_commande);}@*
@*
@emph{Exemple en Python :}@*
@*
@code{weechat.remove_handler ("commande", ma_commande)}@*
@*
@item
Perl: @command{weechat::command ( commande, [canal, [serveur]] );}@*
Python: @command{weechat.command ( commande, [canal, [serveur]] )}@*
@*
Ex@'ecute une commande ou envoie un message @'a un canal.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{commande}: commande @'a ex@'ecuter (ou message @'a
envoyer au canal)
@item @option{canal}: nom du canal
@item @option{serveur}: nom interne du serveur
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si succ@`es, 0 si une erreur s'est produite.@*
@*
@emph{Exemples en Perl :}@*
@*
@code{weechat::command ("bonjour tout le monde !");}@*
@code{weechat::command ("/kick toto merci de quitter ce canal", "#weechat");}@*
@code{weechat::command ("/nick newnick", "", "freenode");}@*
@*
@emph{Exemples en Python :}@*
@*
@code{weechat.command ("bonjour tout le monde !")}@*
@code{weechat.command ("/kick toto merci de quitter ce canal", "#weechat")}@*
@code{weechat.command ("/nick newnick", "", "freenode")}@*
@*
@item
Perl: @command{weechat::get_info ( nom, [serveur, [canal] ] );}@*
Python: @command{weechat.get_info ( nom, [serveur, [canal] ] )}@*
@*
Obtenir des informations vari@'ees sur WeeChat, le serveur ou
l'utilisateur.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{nom}: nom de l'info @`a obtenir :
@itemize @minus
@item @option{version}: obtenir la version de WeeChat
@item @option{nick}: obtenir le pseudo
@item @option{channel}: obtenir le nom du canal
@item @option{server}: obtenir le nom du serveur
@item @option{away}: obtenir le drapeau ``away''
@item @option{weechat_dir}: obtenir le r@'epertoire maison de WeeChat
@item @option{weechat_libdir}: obtenir le r@'epertoire ``lib''
syst@`eme de WeeChat
@item @option{weechat_sharedir}: obtenir le r@'epertoire ``share''
syst@`eme de partage WeeChat
@end itemize
@item @option{serveur}: nom interne du serveur
@item @option{canal}: nom du canal
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
L'information demand@'e, blanc si une erreur s'est produite ou que
l'information n'a pas @'et@'e trouv@'ee.@*
@*
@emph{Exemples en Perl :}@*
@*
@code{$version = get_info("version");}@*
@code{$nick = get_info("nick", "freenode");}@*
@*
@emph{Exemples en Python :}@*
@*
@code{$version = weechat.get_info ("version")}@*
@code{$nick = weechat.get_info ("nick", "freenode")}@*
@*
@item
Perl: @command{weechat::get_dcc_info ( );}@*
Python: @command{weechat.get_dcc_info ( )}@*
@*
Obtenir la liste des DCC.@*
Le tableau renvoy@'e contient les champs suivants :
@itemize @minus
@item server: le serveur IRC
@item channel: le canal IRC
@item type: le type de DCC :
@itemize @minus
@item 0: discussion (re@,cue)
@item 1: discussion (envoy@'ee)
@item 2: fichier en r@'eception
@item 3: fichier en @'emission
@end itemize
@item status: statut du DCC :
@itemize @minus
@item 0: en attente
@item 1: en cours de connexion
@item 2: actif
@item 3: termin@'e
@item 4: @'echou@'e
@item 5: interrompu par l'utilisateur
@end itemize
@item start_time: la date et heure de cr@'eation du DCC
@item start_transfer: la date et heure de d@'emarrage du transfert
@item addr: adresse de l'utilisateur distant
@item port: port utilis@'e pour le DCC
@item nick: pseudo de l'utilisateur distant
@item filename: nom de fichier
@item local_filename: nom de fichier local
@item size: taille du fichier
@item pos: position actuelle dans le fichier
@item start_resume: position de d@'emarrage apr@`es une interruption
@item bytes_per_sec: nombre d'octets transmis par seconde depuis le d@'ebut
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
La liste des DCC, 0 si une erreur s'est produite.@*
@*
@item
Perl: @command{weechat::get_config ( option );}@*
Python: @command{weechat.get_config ( option )}@*
@*
Obtenir la valeur d'une option de configuration WeeChat.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{option}: nom de l'option
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
La valeur de l'option, blanc si une erreur s'est produite ou que
l'option n'a pas @'et@'e trouv@'ee.@*
@*
@emph{Exemples en Perl :}@*
@*
@code{$value1 = weechat::get_config ("look_nicklist");}@*
@code{$value2 = weechat::get_config ("freenode.server_autojoin");}@*
@*
@emph{Exemples en Python :}@*
@*
@code{$value1 = weechat.get_config ("look_nicklist")}@*
@code{$value2 = weechat.get_config ("freenode.server_autojoin")}@*
@*
@item
Perl: @command{weechat::set_config ( option, valeur );}@*
Python: @command{weechat.set_config ( option, valeur )}@*
@*
Modifier une otion de configuration WeeChat.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{option}: nom de l'option
@item @option{valeur}: la nouvelle valeur pour l'option
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si succ@`es, 0 si une erreur s'est produite.@*
@*
@emph{Exemples en Perl :}@*
@*
@code{weechat::set_config ("look_nicklist", "off");}@*
@code{weechat::set_config ("freenode.server_autojoin, "#weechat");}@*
@*
@emph{Exemples en Python :}@*
@*
@code{weechat.set_config ("look_nicklist", "off")}@*
@code{weechat.set_config ("freenode.server_autojoin, "#weechat")}@*
@*
@item
Perl: @command{weechat::get_plugin_config ( option );}@*
Python: @command{weechat.get_plugin_config ( option )}@*
@*
Renvoie la valeur d'une option de l'extension.@*
L'option est lue depuis le fichier ~/.weechat/plugins.rc et est
sous cette forme :@*
@code{extension.script.option=valeur}@*
NB: le nom de l'extension et du script sont ajout@'es automatiquement.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{option}: nom de l'option
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
La valeur de l'option, blanc si une erreur s'est produite ou que
l'option n'a pas @'et@'e trouv@'ee.@*
@*
@emph{Exemple en Perl :}@*
@*
@code{$value = weechat::get_plugin_config ("ma_variable");}@*
@*
@emph{Exemple en Python :}@*
@*
@code{$value = weechat.get_plugin_config ("ma_variable")}@*
@*
@item
Perl: @command{weechat::set_plugin_config ( option, valeur );}@*
Python: @command{weechat.set_plugin_config ( option, valeur )}@*
@*
Modifie la valeur d'une option de l'extension.@*
L'option est @'ecrite dans le fichier ~/.weechat/plugins.rc et est
sous cette forme :@*
@code{extension.script.option=valeur}@*
NB: le nom de l'extension et du script sont ajout@'es automatiquement.@*
@emph{Param@`etres :}
@itemize @minus
@item @option{option}: nom de l'option
@item @option{valeur}: la nouvelle valeur pour l'option
@end itemize
@*
@emph{Valeur renvoy@'ee :}@*
@*
1 si succ@`es, 0 si une erreur s'est produite.@*
@*
@emph{Exemple en Perl :}@*
@*
@code{weechat::set_plugin_config ("ma_variable", "valeur");}@*
@*
@emph{Exemple en Python :}@*
@*
@code{weechat.set_plugin_config ("ma_variable", "valeur")}@*
@*
@end itemize
@c **************************** Auteurs / Support *****************************
@node Auteurs / Support, , Extensions, Top
@chapter Auteurs / Support
@ifhtml
@menu
* Auteurs::
* Obtenir du support::
* Copyright::
@end menu
@end ifhtml
@ifnothtml
@menu
* Auteurs::
* Obtenir du support::
@end menu
@end ifnothtml
@node Auteurs, Obtenir du support, Auteurs / Support, Auteurs / Support
@section Auteurs
WeeChat est d@'evelopp@'e par :@*
@itemize @bullet
@item
FlashCode
<@email{flashcode@@flashtux.org, flashcode AT flashtux.org}>
@end itemize
@ifhtml
@node Obtenir du support, Copyright, Auteurs, Auteurs / Support
@end ifhtml
@ifnothtml
@node Obtenir du support, , Auteurs, Auteurs / Support
@end ifnothtml
@section Obtenir du support
Avant de faire appel au support, merci de lire la documentation et la
FAQ de WeeChat.@*
(la documentation est le document que vous @^etes en train de lire, si vous
n'avez pas tout lu jusqu'ici, il est encore temps de recommencer !)@*
@itemize @bullet
@item
Support par IRC:@*
- serveur : @b{irc.freenode.net}@*
- canal : @b{#weechat}@*@*
@item
Forum WeeChat : @uref{http://forums.flashtux.org}@*@*
@item
Support par la liste de diffusion :@*
- pour souscrire/d@'esinscrire :@*@uref{http://mail.nongnu.org/mailman/listinfo/weechat-support}.@*
- pour envoyer un mail @`a la liste de diffusion, envoyer @`a :@*@email{weechat-support@@nongnu.org}.@*
Les archives de la liste de diffusion sont ici :@*
@uref{http://mail.nongnu.org/archive/html/weechat-support}@*@*
@item
Voir la page support WeeChat pour plus de d@'etails :@*
@uref{http://weechat.flashtux.org/support.php}
@end itemize
@ifhtml
@node Copyright, , Obtenir du support, Auteurs / Support
@section Copyright
Ce manuel documente le client IRC WeeChat, il fait partie de WeeChat.@*
Copyright @copyright{} 2005 FlashCode
<@email{flashcode@@flashtux.org, flashcode AT flashtux.org}>@*
@*
Ce document peut @^etre utilis@'e sous les termes de la licence GNU General Public
License version 2 ou plus.
@end ifhtml
@bye