<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY mirc "<application
>mIrc</application
>">
  <!ENTITY kappname "&ksirc;">
  <!ENTITY package "kdenetwork">
  <!ENTITY irc "<acronym
>IRC</acronym
>">
  <!ENTITY CTCP "<acronym
>CTCP</acronym
>">
  <!ENTITY % French "INCLUDE" 
> <!-- change language only here -->
]>

<book lang="&language;">

<bookinfo>
<title
>Le manuel de &ksirc;</title>
<authorgroup>
<author
> <firstname
>Andrew</firstname
> <surname
>Stanley-Jones</surname
> <affiliation
> <address
><email
>asj@chowtown.cban.com</email
></address
> </affiliation
> </author>
<author
> <firstname
>Philip</firstname
> <surname
>Rodrigues</surname
> <affiliation
> <address
><email
>phil.rod@ntlworld.com</email
></address
> </affiliation
> </author>

<othercredit role="translator"
> <firstname
>Éric</firstname
> <surname
>Bischoff</surname
> <affiliation
><address
><email
>e.bischoff@noos.fr</email
></address
></affiliation
> <contrib
>Traduction française</contrib
> </othercredit>
</authorgroup>
<date
>2002-02-07</date>
<releaseinfo
>1.2.00</releaseinfo>

<legalnotice
>&FDLNotice;</legalnotice>

<abstract>
<para
>Cette documentation décrit &ksirc; version 1.1, le client &irc; de &kde;.</para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>KSirc</keyword>
<keyword
>irc</keyword>
<keyword
>Internet relay chat</keyword>
</keywordset>
</bookinfo>

<chapter id="introduction">
<title
>Introduction</title>

<para
>&ksirc; est le client &irc; par défaut de &kde;. Il peut être contrôlé par des scripts <acronym
>Perl</acronym
> et est fortement compatible avec &mirc; pour ce qui est de l'utilisation de base.</para>

</chapter>

<chapter id="using-ksirc">
<title
>Utilisation de &ksirc;</title>

<sect1 id="irc-basics">
<title
>Si vous n'avez encore jamais utilisé l'&irc;...</title>

<para
>&irc; est en fait un protocole de discussion ("chat") défini par des standards officiels de l'Internet et capable de vous dérober de nombreuses heures de votre vie. Pour utiliser &irc;, vous devez vous connecter à un serveur puis joindre un canal de discussion (l'équivalent d'un salon où l'on discute). </para>

<para
>Pour vous connecter è un serveur, ouvrez &ksirc; et sélectionnez <menuchoice
><guimenu
>Connexions</guimenu
><guimenuitem
>Nouveau serveur...</guimenuitem
></menuchoice
> ou appuyez sur <keycap
>F2</keycap
>. Dans la boîte de dialogue qui s'affiche, choisissez un groupe dans la liste déroulante de gauche et un serveur dans la liste déroulante du milieu. Le port, affiché sur la droite, vaudra pratiquement toujours 6667. Une nouvelle fenêtre s'ouvre et affiche les messages envoyés par le serveur au client. Quand ces messages on fini de défiler, il vous faut choisir votre canal. Pour afficher une liste des canaux disponibles, tapez <userinput
><command
>/list</command
></userinput
>. Pour vous joindre à un canal, tapez&nbsp;: <userinput
><command
>/join</command
> <replaceable
>#nomducanal</replaceable
></userinput
>. Pour quitter un canal, tapez seulement <userinput
><command
>/part</command
></userinput
>.</para>

<para
>Vous voila en possession des techniques de base. Pour plus d'informations, continuez à lire la suite...</para>

</sect1>

<sect1 id="ksirc-basics">
<title
>Techniques de base avec &ksirc;</title>

<sect2 id="servers">
<title
>Les serveurs</title>

<para
>&ksirc; vous permet de vous connecter à un nombre de serveurs arbitraire. Pour vous connecter à un serveur, choisissez <menuchoice
><guimenu
>Connexions</guimenu
><guimenuitem
>Nouveau serveur...</guimenuitem
></menuchoice
> ou appuyez sur <keycap
>F2</keycap
>. Le dialogue de connexion apparaît, et vous pouvez alors choisir un <guilabel
>Groupe</guilabel
>, puis un <guilabel
>Serveur</guilabel
>, ainsi qu'un <guilabel
>Port</guilabel
> auxquels vous connecter.</para>

<para
>Cliquez sur <guilabel
>Connexion</guilabel
> quand vous avez fini, et une nouvelle fenêtre propre au serveur apparaît. Vous pouvez à tout moment savoir à quels serveurs vous êtes connecté grâce à la fenêtre <guilabel
>Configuration du serveur</guilabel
> de &ksirc;.</para>

</sect2>

<sect2 id="channels">
<title
>Les canaux</title>

<para
>Vous pouvez vous connecter aux canaux grâce à la commande <userinput
><command
>/join</command
></userinput
> normale, en choisissant <menuchoice
><guimenu
>Connexions</guimenu
><guimenuitem
>Se joindre à un canal...</guimenuitem
></menuchoice
> ou en appuyant sur <keycap
>F3</keycap
>.</para>

<para
>Les canaux auxquels vous êtes connecté apparaissent dans la fenêtre <guilabel
>Server Control</guilabel
> en dessous du serveur auquel ils appartiennent. Pour quitter un canal, vous pouvez utiliser la commande <userinput
>/part</userinput
>, choisir <menuchoice
><guimenu
>Canal</guimenu
><guimenuitem
>Fermer</guimenuitem
></menuchoice
> ou appuyer sur <keycombo action="simul"
>&Ctrl;<keycap
>W</keycap
></keycombo
>.</para>

</sect2>

<sect2 id="channel-options">
<title
>Les options liées au canal</title>

<para
>Le menu <guimenu
>Canal</guimenu
>, disponible dans les fenêtres de canal, contient quelques options utiles&nbsp;:</para>

<variablelist
> <varlistentry
> <term
><menuchoice
><shortcut
> <keycombo
>&Ctrl;<keycap
>T</keycap
> </keycombo
></shortcut
> <guimenuitem
>Mode bandeau lumineux</guimenuitem
> </menuchoice
></term
> <listitem
> <para
><action
>Affiche le canal comme un bandeau lumineux de cours de la bourse ou de nouvelles en temps réel.</action
> Notez que ce mode ne vous permet pas de saisir du texte dans le canal. Pour sortir du mode bandeau lumineux, cliquez sur le &BDS;, et choisissez <guimenuitem
>Cacher...</guimenuitem
>.</para
> </listitem
> </varlistentry
> <varlistentry
> <term
><menuchoice
> <shortcut
><keycombo
>&Ctrl;<keycap
>S</keycap
> </keycombo
></shortcut
> <guimenuitem
>Enregistrer vers le fichier de log...</guimenuitem
> </menuchoice
></term
> <listitem
> <para
><action
>Enregistre le contenu du canal dans un fichier.</action
></para
> </listitem
> </varlistentry
> <varlistentry
> <term
><menuchoice
> <shortcut
><keycombo
>&Ctrl;<keycap
>A</keycap
> </keycombo
></shortcut
> <guimenuitem
>Horodatage</guimenuitem
> </menuchoice
></term
> <listitem
> <para
><action
>Précède tout ce qui a été dit dans le canal de l'heure à laquelle ça a été dit, sous la forme HH:MM:SS</action
></para
> </listitem
> </varlistentry
> </variablelist>

</sect2>

<sect2 id="users">
<title
>Utilisateurs</title>

<para
>Dans chaque canal, la liste des utilisateurs est affichée sur la droite. En cliquant avec le &BDS; dans cette liste sur un pseudo vous donne accès à des options, dont la plupart sont faciles à comprendre&nbsp;:</para>

<variablelist
> <varlistentry
> <term
><guimenuitem
>Refresh Nicks</guimenuitem
></term
> <listitem
> <para
><action
>Envoie un message au serveur demandant la liste des utilisateurs du canal.</action
></para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>Follow</guimenuitem
></term
> <listitem
> <para
><action
>Suit l'utilisateur dans tout canal où il peut aller.</action
></para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>unFollow</guimenuitem
></term
> <listitem
> <para
><action
>Arrête de suivre l'utilisateur.</action
></para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>Whois</guimenuitem
></term
> <listitem
> <para
><action
>Envoie une requête &CTCP; whois à l'utilisateur, qui renvoie des informations sur l'utilisateur, comme son nom d'ordinateur et le serveur auquel il est connecté.</action
></para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>Ping</guimenuitem
></term
> <listitem
> <para
><action
>Envoie une requête &CTCP; Ping à l'utilisateur, pour déterminer la durée de l'écho avec cet utilisateur.</action
></para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>Version</guimenuitem
></term
> <listitem
> <para
><action
>Envoie une requête &CTCP; Version à l'utilisateur, pour déterminer quel logiciel il utilise.</action
></para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>Abuse</guimenuitem
></term
> <listitem
> <para
><action
>Se permet des familiarités amusantes avec l'utilisateur.</action
></para
> </listitem
> </varlistentry
> </variablelist>

<para
>Les commandes qui suivent ne sont disponibles que si vous êtes un opérateur du canal&nbsp;:</para>

<variablelist
> <varlistentry
> <term
><guimenuitem
>Kick</guimenuitem
></term
> <listitem
> <para
>Éjecte l'utilisateur du canal.</para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>Ban</guimenuitem
></term
> <listitem
> <para
>Bannit l'utilisateur en l'empêchant de rejoindre le canal.</para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>unBan</guimenuitem
></term
> <listitem
> <para
>Retire la mesure de bannissement de l'utilisateur.</para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>Op</guimenuitem
></term
> <listitem
> <para
>Donne à l'utilisateur les privilèges d'opérateur.</para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guimenuitem
>DeOp</guimenuitem
></term
> <listitem
> <para
>Retire les privilèges d'opérateur à l'utilisateur.</para
> </listitem
> </varlistentry
> </variablelist>

</sect2>
</sect1>

</chapter>

<chapter id="ksirc-configuration">
<title
>Configuration de &ksirc;</title>

<sect1 id="config-intro">
<title
>Introduction au processus de configuration</title>
<para
>La boîte de dialogue de configuration de &ksirc; peut s'obtenir grâce à <menuchoice
><guimenu
>Options</guimenu
><guimenuitem
>Configuration...</guimenuitem
></menuchoice
> dans la fenêtre <guilabel
>Configuration du serveur</guilabel
> de &ksirc;. </para>
</sect1>

<sect1 id="general-config">
<title
>L'onglet <guilabel
>Général</guilabel
></title>

<sect2 id="windowmode">
<title
><guilabel
>Mode des fenêtres</guilabel
></title>
<para
> <variablelist
> <varlistentry
> <term
><guilabel
>Mode SDI (ancien comportement)</guilabel
></term
> <listitem
><para
>Fait en sorte que &ksirc; utilise le mode d'interface <quote
>document unique</quote
>, dans laquelle chaque canal ou fenêtre <command
>/query</command
> utilise sa propre fenêtre séparée.</para
></listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Mode MDI (XChat)</guilabel
></term
> <listitem
><para
>Fait en sorte que &ksirc; utilise le mode d'interface <quote
>documents multipls</quote
>, à la manière de <application
>XChat</application
>, dans lequel chaque nouveau canal ou fenêtre <command
>/query</command
> dispose d'un onglet dans une fenêtre principale unique de &ksirc;. Chaque fenêtre peut être amenée à l'avant-plan en cliquant sur son onglet.</para
></listitem
> </varlistentry
> </variablelist
> </para>
</sect2>

<sect2 id="misc-general-config">
<title
>Réglages <guilabel
>Divers</guilabel
></title>
<para
> <variablelist
> <varlistentry
> <term
><guilabel
>Création automatique de fenêtres</guilabel
></term
> <listitem
><para
>Si cette option est cochée, &ksirc; créera automatiquement une nouvelle fenêtre chaque fois qu'un utilisateur s'adresse à vous avec <command
>/msg</command
>. Si cette option n'est pas cochée, les textes qui vous sont envoyés avec <command
>/msg</command
> seront affichés dans la fenêtre actuelle et vous pouvez utiliser <command
>/query <replaceable
>nom_d_utilisateur</replaceable
></command
> pour créer une fenêtre dans laquelle discuter avec cet utilisateur.</para
></listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Complètement automatique du pseudo</guilabel
></term
> <listitem
><para
>Si cette option est cochée, les pseudonymes seront complétés de la manière suivante&nbsp;: <orderedlist
> <listitem
><para
>Tapez d'abord les premières lettres du pseudonyme d'un utilisateur</para
></listitem
> <listitem
><para
>Appuyez sur <keysym
>tabulation</keysym
>. Le texte que vous avez tapé sera complété afin de correspondre au nom d'un utilisateur, sans distinction de différence entre les majuscules et les minuscules. Par exemple <userinput
>phi&lt;TAB&gt;</userinput
> devient <computeroutput
>PhilRod</computeroutput
> s'il existe un utilisateur nommé <quote
>PhilRod</quote
> dans le canal de discussion.</para
></listitem
> <listitem
><para
>Si plusieurs pseudos sur le canal correspondent au texte que vous avez tapé, le premier dans la liste est choisi. En appuyant sur <keysym
>tabulation</keysym
> une fois supplémentaire, le prochain pseudo dans la liste est affiché. Par exemple, s'il y a des utilisateurs <quote
>PhilA</quote
> et <quote
>PhilRod</quote
> sur un canal, et si vous saisissez <userinput
>phi&lt;tabulation&gt;</userinput
>, le texte sera complété jusqu'à former <computeroutput
>PhilA</computeroutput
>, et si vous appuyez à nouveau sur <keysym
>tabulation</keysym
>, il se changera en <computeroutput
>PhilRod</computeroutput
>.</para
></listitem
> </orderedlist
> </para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Afficher le sujet dans le titre</guilabel
></term
> <listitem
><para
>Affiche le suject du canal actif dans la barre de titre de la fenêtre. Si cette option n'est pas cochée, le sujet n'est affiché que dans la fenêtre elle-même.</para
></listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Horodateur</guilabel
></term
> <listitem
><para
>Précède tout ce qui a été dit dans le canal de l'heure à laquelle ça a été dit, sous la forme [HH:MM:SS].</para
> </listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Bip en cas de notification</guilabel
></term
> <listitem
><para
>Si cette option est cochée, un bip système sera généré chaque fois qu'un utilisateur de votre liste <command
>/notify</command
> se connecte sur le serveur &irc; où vous vous trouvez.</para
></listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Menu contextuel de la palette de couleurs</guilabel
></term
> <listitem
><para
>Si cette option est cochée, un fenêtre dans laquelle vous pouvez choisir la couleur de votre texte apparaîtra à chaque fois que vous appuirez sur <keycombo action="simul"
>&Ctrl;<keycap
>K</keycap
></keycombo
>. Si cette case n'est pas cochée, vous devrez saisir manuellement les codes couleur. Voir également <xref linkend="sectcolors"/>.</para
></listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Rejoindre automatiquement</guilabel
></term
> <listitem
><para
>Rejoint le canal automatiquement si vous êtes déconnecté.</para
></listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Longueur de la fenêtre d'historique</guilabel
></term
> <listitem
><para
>Enregistre autant de lignes de discussion dans chaque fenêtre qu'il est spécifié ici, ce qui vous permet de faire défiler la fenêtre vers le haut pour voir ce qui a été dit par le passé.</para
></listitem
> </varlistentry
> </variablelist
> </para>
</sect2>

<sect2 id="wallpaper-config">
<title
>Configuration du <guilabel
>Papier peint</guilabel
></title>
<para
> Dans la section <guilabel
>Papier peint</guilabel
>, vous pouvez changer l'image de fond de vos fenêtres de &ksirc;. Vous pouvez saisir le nom du fichier à utiliser dans la zone de texte, ou alors parcourir les fichiers grâce au bouton à droite de la zone de texte. Les fichiers image spécifiés doivent être au format &GIF;, <acronym
>JPEG</acronym
> ou <acronym
>PNG</acronym
>. Un aperçu de l'image s'affiche sur la droite de la boîte de dialogue.</para>
</sect2
> 
</sect1>

<sect1 id="startup-tab">
<title
>L'onglet <guilabel
>Démarrage</guilabel
></title>

<para
> Vous pouvez configurer dans cet onglet les réglages de démarrage de &ksirc;. </para>

<sect2 id="name-settings">
<title
><guilabel
>Configuration de l'identité</guilabel
></title>

<para
> <variablelist
> <varlistentry
> <term
><guilabel
>Pseudo</guilabel
></term
> <listitem
><para
>Vous permet de configurer votre pseudonyme.</para
></listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Pseudonyme de rechange</guilabel
></term
> <listitem
><para
>Indique le pseudonyme à utiliser si votre pseudonyme principal est déjà pris par quelqu'un d'autre.</para
></listitem
> </varlistentry
> <varlistentry
> <term
><guilabel
>Nom réel</guilabel
></term
> <listitem
><para
>Votre nom dans la vie, tel qu'il sera indiqué par la commande <command
>/whois</command
> lancée avec votre pseudo en argument.</para
></listitem
> </varlistentry
> </variablelist
> </para>
</sect2>

<sect2 id="notify-list">
<title
><guilabel
>Liste de notification</guilabel
></title>

<para
> Vous pouvez entrer ici une liste des utilisateurs que vous souhaitez voir figurer sur votre liste <command
>/notify</command
> lors du lancement de &ksirc;. Vous serez prévenu à chaque fois qu'un des utilisateurs de cette liste se connecte.</para>
</sect2>

</sect1>

<sect1 id="colors-tab">
<title
>L'onglet <guilabel
>Couleurs</guilabel
></title>
<para
> Vous pouvez configurer ici l'usage que &ksirc; fait des couleurs. </para>

<sect2 id="chat-colors">
<title
>Configuration des <guilabel
>Couleurs</guilabel
></title>
<para
> Vous pouvez configurer ici les couleurs pour chaque type de texte. En cliquant sur le bouton à droite de l'intitulé de chaque type de texte, une liste de sélection de la couleur apparaît. Vous pouvez y choisir la couleur à utiliser pour afficher ce texte. </para>
</sect2>

<sect2 id="nick-colors">
<title
><guilabel
>Couleurs des pseudos dans les canaux</guilabel
></title>
<para
> <guilabel
>Texte :</guilabel
> et <guilabel
>Fond :</guilabel
> permettent de définir les couleurs de texte et de fond des pseudos dans les fenêtres de discussion. La <guilabel
>Couleur des messages contenant votre pseudo</guilabel
> définit la couleur des messages qui apparaissent dans un canal et qui contiennentvotre pseudo.</para>
</sect2>

<sect2 id="color-codes">
<title
><guilabel
>Autorisation des couleurs externes</guilabel
></title>
<para
> Vous pouvez choisir ici si &ksirc; permet les codes de couleurs natifs (voir <xref linkend="sectcolors"/>) et également si les codes de couleurs de &mirc;.</para>
</sect2>

</sect1>

</chapter>


<chapter id="sectcolors">
<title
>Les couleurs de &ksirc;</title>

<para
>&ksirc; suit le code de couleurs établi par &mirc; avec de légères variations permettant un usage personnel plus avancé.</para>

<screen
>&lt;fg&gt; == couleur de texte
&lt;bg&gt; == couleur de fond
&lsqb;&rsqb; == optionnel
</screen>

<sect1 id="mirccompatibility">
<title
>Compatibilité avec &mirc;</title>

<para
>Format&nbsp;:</para>
<itemizedlist
> <listitem
> <para
><userinput
>0x03&lt;fg&gt;&lsqb;,&lt;bg&gt;&rsqb;</userinput
> définit les couleurs de texte et de fond</para
> </listitem
> <listitem
> <para
><userinput
>0x03</userinput
> revient aux valeurs par défaut pour <emphasis
>cette</emphasis
> ligne</para
> </listitem
> </itemizedlist>
</sect1>

<sect1 id="ksircnative">
<title
>Propre à &ksirc;</title>

<para
>Format&nbsp;:</para>

<itemizedlist
> <listitem
> <para
><userinput
>&tilde;&lt;fg&gt;&lsqb;,&lt;bg&gt;&rsqb;</userinput
> règle les couleurs de texte et de fond</para
> </listitem
> <listitem
> <para
><userinput
>&tilde;c</userinput
> revient aux valeurs par défaut</para
> </listitem
> <listitem
> <para
><userinput
>&tilde;b</userinput
> passe en mode gras</para
> </listitem
> <listitem
> <para
><userinput
>&tilde;u</userinput
> passe en mode souligné</para
> </listitem
> <listitem
> <para
><userinput
>&tilde;i</userinput
> passe en mode italique</para
> </listitem
> <listitem
> <para
><userinput
>&tilde;r</userinput
> passe en mode vidéo inverse</para
> </listitem
> </itemizedlist>

<para
>Pourquoi ai-je modifié &ksirc; pour utiliser &tilde; au lieu de 0x03 (<keycombo action="simul"
>&Ctrl;<keycap
>C</keycap
></keycombo
>)&nbsp;? Eh bien, il est dur d'utiliser 0x03 dans des scripts, et certaines fonctions C semblent ne pas l'aimer. <userinput
>&tilde;<replaceable
>lettre</replaceable
></userinput
> permet également de disposer de plus de commandes sans entrer en conflit avec de futurs changements de &mirc;.</para>

</sect1>

<sect1 id="colornumbers">
<title
>Numéros de couleurs</title>

<orderedlist
> <listitem
> <para
> blanc</para
> </listitem
> <listitem
> <para
> noir</para
> </listitem
> <listitem
> <para
> bleu</para
> </listitem
> <listitem
> <para
> vert</para
> </listitem
> <listitem
> <para
>rouge</para
> </listitem
> <listitem
> <para
> brun</para
> </listitem
> <listitem
> <para
> violet</para
> </listitem
> <listitem
> <para
> orange</para
> </listitem
> <listitem
> <para
> jaune</para
> </listitem
> <listitem
> <para
> vert pâle</para
> </listitem
> <listitem
> <para
> cyan</para
> </listitem
> <listitem
> <para
> cyan pâle</para
> </listitem
> <listitem
> <para
> bleu pâle</para
> </listitem
> <listitem
> <para
> rose</para
> </listitem
> <listitem
> <para
> gris</para
> </listitem
> <listitem
> <para
> gris pâle</para
> </listitem
> </orderedlist>
</sect1>

<sect1 id="sendingboldunderlinereverseandcolor">
<title
>Envoyer en gras, souligné, inverse et en couleur</title>

<para
>Vous pouvez utiliser les combinaisons de touches suivantes pour insérer des codes de contrôle dans le texte&nbsp;:</para>

<itemizedlist
> <listitem
> <para
><keycombo action="simul"
>&Ctrl;<keycap
>B</keycap
></keycombo
> pour du texte gras</para
> </listitem
> <listitem
> <para
><keycombo action="simul"
>&Ctrl;<keycap
>U</keycap
></keycombo
> pour du texte souligné</para
> </listitem
> <listitem
> <para
><keycombo action="simul"
>&Ctrl;<keycap
>R</keycap
></keycombo
> pour du texte inversé</para
> </listitem
> <listitem
> <para
><keycombo action="simul"
>&Ctrl;<keycap
>K</keycap
></keycombo
> pour du texte en couleur</para
> </listitem
> <listitem
> <para
><keycombo action="simul"
>&Ctrl;<keycap
>O</keycap
></keycombo
> pour du texte normal</para
> </listitem
> </itemizedlist>

</sect1>

<sect1 id="examplessetcolors">
<title
>Exemples</title>

<para
>Pour souligner un mot isolé dans une phrase&nbsp;:</para>

<procedure
> <step
> <para
>Tapez <keycombo action="simul"
>&Ctrl;<keycap
>U</keycap
></keycombo
></para
> </step
> <step
> <para
>Tapez le mot</para
> </step
> <step
> <para
>Tapez à nouveau <keycombo action="simul"
>&Ctrl;<keycap
>U</keycap
></keycombo
></para
> </step
> </procedure>

<para
>Seul le texte qui est entouré par les codes de début et de fin sera affecté. Vous pouvez utiliser cette méthode avec tous les autres codes de contrôle.</para>

<para
>Le code de contrôle <keycombo action="simul"
>&Ctrl;<keycap
>K</keycap
></keycombo
> est légèrement différent car il vous permet de spécifier un code de couleur. Pour colorer un mot isolé dans une phrase&nbsp;:</para>

<procedure
> <step
> <para
>Tapez <keycombo action="simul"
>&Ctrl;<keycap
>K</keycap
></keycombo
></para
> </step
> <step
> <para
>Tapez un nombre entre 0 et 15</para
> </step
> <step
> <para
>Tapez le mot</para
> </step
> <step
> <para
>Tapez à nouveau <keycombo action="simul"
>&Ctrl;<keycap
>K</keycap
></keycombo
></para
> </step
> </procedure>

<para
>Si vous souhaitez également changer la couleur de fond d'un mot, vous devrez saisir deux nombres séparés par une virgule au lieu d'un seul nombre. Le premier nombre indique la couleur de texte, le second indique la couleur de fond. Les couleurs vont de 0 à 15, l'affectation des codes de couleur étant retaillée dans la section précédente.</para>

<para
>Vous pouvez entourer du texte de plusieurs codes de contrôle, pour obtenir par exemple un mot souligné, gras et en couleurs.</para>

</sect1>
</chapter>

<chapter id="filters">
<title
>Filtres</title>

<sect1 id="filterrulesandhowtomakethem">
<title
>Les règles de filtrage, et comment les établir</title>

<para
>Si vous ne pouvez simplement pas vous y mettre, attendez. J'ai l'intention de construire un <quote
>constructeur de filtres</quote
> sympathique que vous pourrez manipuler en n'utilisant que la souris. Cela pourrait toutefois prendre un certain temps.</para>

<para
>Le filtre essaye de trouver la chaîne de <quote
>Correspondance</quote
> et utilise ensuite <quote
>De</quote
> et <quote
>En</quote
> pour effectuer la substitution. Les chaînes de <quote
>Correspondance</quote
>, <quote
>De</quote
> et <quote
>en</quote
> sont toutes des expressions rationnelles <application
>Perl</application
>. Les règles sont évaluées du haut vers le bas. La règle du haut est évaluée la première, puis la seconde à partir du haut, etc. Toutes les chaînes sont évaluées comme suit&nbsp;:</para>

<para
><varname
>$<replaceable
>nom</replaceable
></varname
> est remplacé par la variable d'environnement <varname
><replaceable
>nom</replaceable
></varname
>. C'est fait immédiatement après avoir saisi la règle, et ne sera plus changé par la suite. C'est donc probablement d'intérêt limité.</para>

<para
><varname
>$$<replaceable
>nom</replaceable
></varname
> est remplacé par la variable <acronym
>Perl</acronym
> <varname
>$<replaceable
>nom</replaceable
></varname
> lors de la correspondance. Cela peut désigner des sous-chaînes substituées comme <varname
>$1</varname
> ou <varname
>$2</varname
>, ou les variables normales disponibles sous <application
>sirc</application
> (comme <varname
>$nick</varname
>, <varname
>$channel</varname
>, &etc;).</para>

<para
><varname
>&tilde;<replaceable
>nom</replaceable
>&tilde;</varname
> mis au début de la ligne <emphasis
>une fois et une seule</emphasis
> enverra la ligne de texte vers la fenêtre intitulée <replaceable
>nom</replaceable
>. Si la fenêtre n'existe pas, elle ira dans la dernière fenêtre ayant eu le focus. Il y a plusieurs fenêtres spéciales, toutes ayant un nom commençant par un seul <literal
>!</literal
>&nbsp;:</para>

<para
><variablelist
> <varlistentry
> <term
><varname
>!default</varname
></term
> <listitem
> <para
>La fenêtre par défaut courante. Fonctionne dans tous les cas.</para
> </listitem
> </varlistentry
> <varlistentry
> <term
><varname
>!all</varname
></term
> <listitem
> <para
>Envoie vers chaque fenêtre. N'apparaît pas forcement dans toutes les fenêtres, en fonction de la façon dont le texte est analysé. Par exemple, les fenêtres affichant des canaux de discussion n'afficheront pas un <command
>/part</command
> ou un <command
>quit</command
> si le pseudo n'est pas présent sur le canal.</para
> </listitem
> </varlistentry
> <varlistentry
> <term
><varname
>!discard</varname
></term
> <listitem
> <para
>élimine le texte.</para
> </listitem
> </varlistentry
> </variablelist
> </para>

<para
>Le reste de l'expression est traité comme une expression rationnelle <acronym
>Perl</acronym
> normale. Si une bonne connaissance de la page de manuel <command
>perlre</command
> est certainement utile, il est tout au moins très probablement nécessaire de comprendre les notions de base des expressions rationnelles.</para>

</sect1>

<sect1 id="examplesfilters">
<title
>Exemples&nbsp;:</title>

<orderedlist
><listitem
> <para
>Pour convertir tous les diamand de diamand en diamant</para
> <screen
>Correspondance&nbsp;: .*
De&nbsp;: diamand
En&nbsp;: diamant</screen
> <para
>Relativement élémentaire, dans n'importe quelle chaîne, remplace diamand en diamant.</para
> </listitem
> <listitem
> <para
>Pour chercher tout ce qui contient diamant et l'envoyer vers la fenêtre intitulée <quote
>diamant</quote
></para
> <screen
>Correspondance&nbsp;: diamant
De&nbsp;: &circ;
En&nbsp;: &tilde;diamant&tilde;</screen
> <para
>Cherche <quote
>diamant</quote
>, et s'il est trouvé, remplace le début de la chaîne (&circ;) par &tilde;diamant&tilde;.</para
> </listitem
> <listitem
> <para
>Bien que cette solution fonctionne, si la chaîne contient déjà <literal
>&tilde;mafenetre&tilde;</literal
>, vous obtiendrez deux <literal
>&tilde;diamant&tilde;&tilde;mafenetre&tilde;...</literal
>. Vous pouvez donc plutôt utiliser</para
> <screen
>Correspondance&nbsp;: diamant
De&nbsp;: ^(?:&tilde;\S+&tilde;)
En&nbsp;: &tilde;diamant&tilde;</screen
> <para
>Bon, celui-ci est un peu plus compliqué. Il indique qu'il faut chercher 0 ou 1 copie de <literal
>&tilde;\S+&tilde;</literal
>, c'est-à-dire une tilde, un ou plusieurs caractères différents d'un espace, et enfin une autre tilde. Les paranoïaques pourront essayer <literal
>(*:&tilde;\S+&tilde;)</literal
> qui couvre 0 ou plus de directives de canal aux cas où des règles précédentes seraient invalides.</para
> </listitem
> <listitem
> <para
>Les messages d'expulsion du serveur ont tendance à être longs, laids et ennuyeux. Des messages ordinaires sur dalnet ressemblent à&nbsp;:</para
> <screen
>*** Notice -- Received KILL message for
BOBO!ANDY@line82-basel.datacomm.ch from NickServ
Path: empire.ny.us.dal.net[209.51.168.14]!trapdoor.ca.us.dal.net
[206.86.127.252]!caris.ca.us.dal.net[208.1.222.221]
!services.dal.net[2008.1.222.222]!services.dal.net
(NickServ Enforcement)</screen
> <para
>Si vous avez activé l'option <literal
>+s</literal
>, vous en recevez de grandes quantités, alors que vous ne souhaitez pas les voir tous défiler à l'écran. Voici trois règles permettant de les traiter en plusieurs phases. On pourrait utiliser moins de règles pour parvenir au même résultat, mais cet exemple vous montrera la structure de base des règles, étape par étape, et comment utiliser plusieurs règles pour analyser un message. La première étape est de supprimer la partie du message comprenant <quote
>Path:</quote
>&nbsp;:</para
> <screen
>Correspondance&nbsp;: ^\*\*\*.* KILL message for.*
De&nbsp;:  Path: \S+
En&nbsp;: .</screen
> <para
>Le motif de correspondance recherche le message commençant par <literal
>***</literal
>. Les <literal
>*</literal
> doivent être précédés du caractère d'échappement <literal
>\</literal
>, car s'ils étaient seuls, ils signifieraient <quote
>0 ou plus d'occurrences du caractère précédent</quote
>. <literal
>.*</literal
> correspond à n'importe quoi jusqu'à rencontrer <literal
>KILL message for</literal
>. Ceci nous évite d'avoir à spécifier <literal
>-- Received...</literal
> &etc;. Le <literal
>.*</literal
> final remplace n'importe quoi jusqu'à la fin de la ligne (non nécessaire à mon avis).</para
> <para
>La ligne De&nbsp;: indique qu'il faut remplacer " Path: " et tout caractère non blanc par la chaîne En&nbsp;:. Cette dernière vaut <literal
>"."</literal
>, par conséquent le chemin entier est remplacé par un simple point.</para
> <para
>Le message ressemble à présent à&nbsp;:</para
> <screen
>*** Notice -- Received KILL message for BOBO!ANDY@line82-basel.datacomm.ch
from NickServ. (NickServ Enforcement)</screen
> <para
>Avez-vous remarqué le nouveau <literal
>"."</literal
> après <literal
>NickServ</literal
>&nbsp;?</para
> </listitem
> <listitem
> <para
>Bon, le message est à présent beaucoup plus propre, mais les KILL provenant de nickserv ne sont pas vraiment importants, on va donc les réacheminer vers la fenêtre <literal
>!discard</literal
>.</para
> <screen
>Correspondance&nbsp;: ^\*\*\*.*KILL message.*\(NickServ Enforcement\)
De&nbsp;: ^(?:&tilde;\S+&tilde;) 
En&nbsp;:  &tilde;!discard&tilde;</screen
> <para
>La chaîne de correspondance recherche le message KILL et s'assure de ce qu'il provient de NickServ. Remarquez que <literal
>\(</literal
> et <literal
>\)</literal
> ont tous deux une signification en terme d'expressions rationnelles et doivent donc être mis entre guillemets, comme dans l'exemple précédent.</para
> </listitem
> <listitem
> <para
>Nous avons à présent filtré tous les messages de kill de nickserv, mais le résultat est toujours dur à lire au premier coup d'oeil. C'est pourquoi nous allons le réordonner pour en faire quelque chose comme&nbsp;: </para
> <screen
>*** [KILL] <replaceable
>MEURTRIER</replaceable
> a tué <replaceable
>VICTIME</replaceable
>; (<replaceable
>MOTIF</replaceable
>)</screen
> <screen
>Correspondance&nbsp;: \*\*\*.*KILL message
De&nbsp;: \*\*\*.*for (.*?) from (.*?)\. \((.*?)\).*
En&nbsp;: *** [KILL] $$2 a tue $$1 ($$3)
</screen
> <para
>La chaîne de correspondance recherche <literal
>***<replaceable
>quelque chose</replaceable
> KILL message</literal
>. Nous ne pouvons pas utiliser <literal
>&circ;</literal
> car il se peut que nous venions d'ajouter <literal
>&tilde;&lt;fenêtre&gt;&tilde;</literal
>.</para
> <para
>La ligne De&nbsp;: est légèrement plus intéressante. L'expression <literal
>"for (.*?) "</literal
> recherche le mot "for" suivi d'une certaine quantité de texte. <literal
>.*?</literal
> indique zéro ou plus d'occurrences de n'importe quoi à part un saut de ligne, mais ne dévore pas trop de texte. La règle est de s'arrêter quand la première condition d'arrêt est rencontrée, et non pas la dernière. En d'autres termes elle absorbe n'importe quoi jusqu'à un espace. Les <literal
>()</literal
> qui entourent cette expression permettent de sauvegarder son contenu. Chaque paire () sauvegarde les données correspondantes dans <literal
>$&num;</literal
> où <literal
>&num;</literal
> est un numéro commençant à 1 pour la première sous-chaîne. Dans ce cas, <varname
>$1</varname
> récupère les informations sur le nick/nom d'utilisateur de la personne éjectée. <varname
>$2</varname
> est alors renseigné avec le nom de la personne l'ayant éjecté. Entre parenthèses <literal
>()</literal
> nous avons le motif d'exclusion. Ici la distinction entre <literal
>(</literal
> et <literal
>\(</literal
> peut être troublante. Rappelez-vous que <literal
>\(</literal
> vaut pour le caractère <literal
>'('</literal
> proprement dit.</para
> </listitem
> <listitem
> <para
>Comment ajouter de la couleur dans votre vie.</para
> <para
>Voici comment ajouter des couleurs à &ksirc;. Reportez-vous à <link linkend="sectcolors"
>la section parlant des couleurs</link
> pour les informations sur les couleurs. Ce qui suit est une règle de filtrage permettant de mettre en valeur dans chaque ligne le pseudo entre <literal
>&lt;PSEUDO&gt;</literal
>&nbsp;: </para
> <screen
>Correspondance&nbsp;: ^(?:&tilde;\S+&tilde;)&lt;\S+&gt;
De&nbsp;: &lt;(\S+)&gt;
En&nbsp;: &lt;&tilde;4$$1&tilde;c&gt;</screen
> <para
>Prend le pseudo et ajoute la couleur &num;4 entre les deux <literal
>&lt;&gt;</literal
>. <literal
>&tilde;c</literal
> annule la couleur.</para
> </listitem
> </orderedlist>

</sect1>
</chapter>

<chapter id="keys">
<title
>Raccourcis clavier</title>

<para
>Voici une liste des raccourcis clavier et des touches de fonction disponibles sous &ksirc;.</para>

<table>
<title
>Raccourcis clavier</title>
<tgroup cols="2">
<thead
> <row
> <entry
>Raccourci clavier</entry
> <entry
>Action</entry
> </row
> </thead>

<tbody
> <row
> <entry
><keycombo action="simul"
>&Alt;<keycap
>F</keycap
></keycombo
></entry
> <entry
>Ouvre le menu <guimenu
>Fichier</guimenu
>.</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Alt;<keycap
>E</keycap
></keycombo
></entry
> <entry
>Ouvre le menu <guimenu
>Édition</guimenu
>.</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>N</keycap
></keycombo
></entry
> <entry
>Ouvre une nouvelle fenêtre de canal/requêtes</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>T</keycap
></keycombo
></entry
> <entry
>Mode bandeau lumineux</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>Q</keycap
></keycombo
></entry
> <entry
>Quitter</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>X</keycap
></keycombo
></entry
> <entry
>Couper</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>V</keycap
></keycombo
></entry
> <entry
>Coller</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>Enter</keycap
></keycombo
></entry
> <entry
>Commence un message adressé à la dernière personne a vous avoir envoyé un message</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;&Maj;<keycap
>Enter</keycap
></keycombo
></entry
> <entry
>Commence un message adressé à l'avant-dernière personne a vous avoir envoyé un message</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>K</keycap
></keycombo
></entry
> <entry
>Début de code de couleur (accompagné d'un numéro, le texte tapé par la suite sera coloré)</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>U</keycap
></keycombo
></entry
> <entry
>Démarre ou arrête le soulignement. Le texte après la première occurrence de ce code sera souligné jusqu'à ce que vous le tapiez à nouveau.</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>I</keycap
></keycombo
></entry
> <entry
>Démarre ou arrête le texte italique. Le texte après la première occurrence de ce code sera en italique jusqu'à ce que vous le tapiez à nouveau.</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>B</keycap
> </keycombo
></entry
> <entry
>Démarre ou arrête le texte gras. Le texte après la première occurrence de ce code sera en gras jusqu'à ce que vous le tapiez à nouveau.</entry
> </row
> <row
> <entry
><keycombo action="simul"
>&Ctrl;<keycap
>R</keycap
></keycombo
></entry
> <entry
>Démarre ou arrête l'inversion vidéo. Le texte après la première occurrence de ce code sera inversé jusqu'à ce que vous le tapiez à nouveau.</entry
> </row
> <row
> <entry
><keycap
>Tab</keycap
></entry
> <entry
>Essaye de compléter le pseudonyme de quelqu'un du canal, en fonction du texte déjà tapé. Vous avez probablement déjà vu cette fonctionnalité dans l'interpréteur de commandes du système.</entry
> </row
> </tbody>
</tgroup>
</table>

</chapter>

<chapter id="credits-and-license">
<title
>Remerciements et licences</title>

<para
>&ksirc; copyright 1997-2001, les développeurs de &ksirc;.</para>

<para
>Documentation en partie copyright 1997, Andrew Stanley Jones</para>

<para
>Documentation mise à jour pour &kde; 2.2 par Philip Rodrigues <email
>phil.rod@ntlworld.com</email
></para>

<para
>Traduction française par Éric Bischoff<email
>e.bischoff@noos.fr</email
></para>

&underFDL;
&underGPL;

</chapter>

<appendix id="installation">
<title
>Installation</title>

<sect1 id="getting-ksirc">
<title
>Comment obtenir &ksirc;</title>

&install.intro.documentation;

</sect1>


<sect1 id="compilation">
<title
>Compilation et installation</title>

&install.compile.documentation;

</sect1>
</appendix>

&documentation.index;

</book>

<!--
Local Variables:
mode: sgml
sgml-omittag: nil
sgml-shorttag: t
End:
-->




