logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:reseau:weechat [26/04/2011 10:14]
arien
doc:reseau:weechat [18/05/2011 19:40]
darien
Ligne 1: Ligne 1:
 ====== Weechat ====== ====== Weechat ======
  
 +WeeChat (Wee Enhanced Environment for Chat) est un client de discussion supportant notamment le protocole IRC. Il est léger et rapide, distribué sous licence GPL. Tout peut être contrôlé au clavier. Il est extensible par des extensions (plugins) et des scripts.
  
 ===== Introduction ===== ===== Introduction =====
-Weechat ​est un client IRC qui n'pas de mode graphique.\\  + 
-Il s'​utilise directement en console.\\ +Un émulateur de terminal recommandé pour X (mais pas obligatoire) ​est rxvt-unicode (il un bon support UTF-8, et aucun problème avec les touches par défaut).\\ 
 Il supporte les scripts écrit en ruby, perl, python et lua grâce à un système de plugins. Il supporte les scripts écrit en ruby, perl, python et lua grâce à un système de plugins.
  
Ligne 10: Ligne 11:
  
 En console, il suffit de taper : En console, il suffit de taper :
-<​code ​bash># aptitude install weechat weechat-core weechat-plugins weechat-dev weechat-curses</​code>​+<​code>#​ aptitude install weechat weechat-core weechat-plugins weechat-dev weechat-curses</​code>​
  
-Si vous avez installez Squeeze ​par la méthode **traditionnelle** ​tous ces paquets sont installés automatiquement : \\+Si vous avez installez Squeeze ​avec l'​interface graphique, ​tous ces paquets sont installés automatiquement ​en version 0.3.2-1(stable) ​:\\ 
 +===== La version 0.3.4 est disponible ! =====
  
-**weechat**\\ +À présent nous avons la version backporté de weechat ​0.3.4-2~bpo60+1 sous Squeeze bien sûr.
-**weechat-core**\\ +
-**weechat-plugins**\\ +
-**weechat-dev**\\ +
-**weechat-curses**\\ ​+
  
  
 +C'est une version majeure, avec beaucoup de bugs corrigés et des nouvelles fonctionnalités majeures.
  
 +Parmi les nouvelles fonctionnalités :\\
 +- 256 couleurs\\
 +- proxy irc (extension relay)\\
 +- redirection des commandes IRC\\
 +- la commande /notify\\
 +- l'​extension rmodifier\\
 +- les expressions regulières pour les highlights\\
 +- support de la couleur dans l'​heure du tampon de discussion\\
 +- option irc pour forcer la couleur de certains pseudos\\
 +- partage de la zone de saisie entre les tampons.\\
  
  
Ligne 32: Ligne 41:
  
  
-  * [[http://​www.weechat.org/​|WeeChat,​ le client de discussion extensible.]] 
  
 ===== Configuration ===== ===== Configuration =====
Ligne 63: Ligne 71:
   /set irc.server.freenode.autojoin "#​debian-facile,#​canal2"​   /set irc.server.freenode.autojoin "#​debian-facile,#​canal2"​
  
-Si vous avec installer ​un serveur oftc :\\ +Si vous avez installez **avant** ​un serveur oftc :\\ 
 Pour supprimer la valeur d’une option du serveur et utiliser sa valeur par défaut à la place, par exemple pour utiliser les pseudos par défaut (irc.server_default.nicks) : Pour supprimer la valeur d’une option du serveur et utiliser sa valeur par défaut à la place, par exemple pour utiliser les pseudos par défaut (irc.server_default.nicks) :
   /set irc.server.oftc.nicks null   /set irc.server.oftc.nicks null
  
-Voilà, on a fait l'​essentiel. N'​oubliez pas de taper : +Voilà, on a fait l'​essentiel. ​**N'​oubliez pas de taper :** \\
   /save   /save
  
-afin de ne pas perdre ce que vous venez de faire !+**afin de ne pas perdre ce que vous venez de faire !**
  
 S'il vous vient le désir de modifier cette configuration,​ il suffit de reprendre la commande où ce situe ces changements à faire et de les exécuter ! S'il vous vient le désir de modifier cette configuration,​ il suffit de reprendre la commande où ce situe ces changements à faire et de les exécuter !
Ligne 87: Ligne 95:
 ===== Split des fenêtres ===== ===== Split des fenêtres =====
  
-Une fonctionnalité très intéressante de weechat est le split des fenêtres. ​Kézako ​le split des fenêtres ? C'est ça : +Une fonctionnalité très intéressante de weechat est le split des fenêtres. ​Qu'​est-ce que c'​est ​le split des fenêtres ? C'est ça : 
  
  
Ligne 121: Ligne 129:
  
 ===== Raccourcis clavier ===== ===== Raccourcis clavier =====
 +
 +WeeChat utilise un certain nombre de touches par défaut. Toutes ces touches sont dans la documentation,​ mais vous devriez connaître au moins les touches vitales :
  
   - alt + flèches gauche/​droite (ou F5/F6): aller au chan(tampon) précédent/​suivant   - alt + flèches gauche/​droite (ou F5/F6): aller au chan(tampon) précédent/​suivant
Ligne 129: Ligne 139:
   - page préc/suiv: faire défiler le texte dans le tampon courant   - page préc/suiv: faire défiler le texte dans le tampon courant
   - alt + A: sauter au tampon avec de l’activité (dans la "​hotlist"​)   - alt + A: sauter au tampon avec de l’activité (dans la "​hotlist"​)
 +Selon votre clavier et/ou vos besoins, vous pouvez associer n’importe quelle touche à une commande avec la commande /key. Une touche utile est meta-k (alt-k) pour trouver le code des touches.
 +
 +Exemple pour associer meta-y (alt-y) à la commande /buffer close :
 +
 +<​code>/​key bind (pressez meta-k) (pressez meta-y) /buffer close</​code>​
 +
 +
  
 Vous pouvez créer vous-même vos raccourcis :  Vous pouvez créer vous-même vos raccourcis : 
Ligne 141: Ligne 158:
   * [[http://​www.weechat.org/​scripts/​ | Scripts disponibles]]   * [[http://​www.weechat.org/​scripts/​ | Scripts disponibles]]
  
-Il vous suffira de les copier dans leurs repertoires respectifs, //python// avec //python//, //ruby// avec //ruby//... dans les répertoires **autoload** \\  +Il vous suffira de les copier dans leurs repertoires respectifs, //python// avec //python//, //perl// avec //perl//, //ruby// avec //ruby//... dans les répertoires **autoload** \\
-Voir l'​installation du script **urlbar.py** à la suite.+
  
-==== TP - urlbar.py : ====+===== Barre latérale avec la liste des tampons===== 
  
-Je vous propose ​par exemple l'​installation ​d'un script à destination de pouvoir lire une <url> longue en entier (pour la recopier par exemple) dans une fenêtre particulière qui va surplomber les /window splith et splitv que vous avez créées.+La barre latérale est super pratique voir assez indispensable pour afficher la liste des tampons à gauche, je vous propose d'installer.
  
-==== Script ​urlbar.py ====+==== Script: buffers.pl ====  
 +**Fermer** weechat.
  
-Fermer ​weechat.+Créer et copier avec [[commande:​editeur:​nano|nano]] le script dans : 
 +<​code>​ $ nano /​home/​mon_user/​.weechat/​perl/​autoload/​buffers.pl</​code>​ 
 +  * [[http://​www.weechat.org/​scripts/​source/​stable/​buffers.pl/​|Télécharger script: buffers.pl]]
  
-Créer et copier le script ​dans :+===== Bip sur haut-parleur sur highlight/​message privé. ===== 
 +==== Script: beep.pl ==== 
 +<​code>​ $ nano /​home/​mon_user/​.weechat/​perl/​autoload/​beep.pl</​code>​ 
 +  * [[http://​www.weechat.org/​scripts/​source/​stable/​beep.pl/​| Télécharger ​script: ​beep.pl]]
  
-   $ nano /​home/​mon_user/​.weechat/​python/​autoload/​urlbar.py+===== Réduire la longueur des URLs en utilisant isgd ou tinyurl ​===== 
 +Je vous propose à présent l'​installation d'un script qui réduit la longueur des URLs.
  
-voir [[commande:nano|Commande NANO]]+==== Scriptshortenurl.py ====
  
-<code bash># -*- coding: utf-8 -*+**Fermer** weechat.
-+
-# Copyright (c) 2009 by FlashCode <​flashcode@flashtux.org>​ +
-+
-# This program is free software; you can redistribute it and/or modify +
-# it under the terms of the GNU General Public License as published by +
-# the Free Software Foundation; either version 3 of the License, or +
-# (at your option) any later version. +
-+
-# This program is distributed in the hope that it will be useful, +
-# but WITHOUT ANY WARRANTY; without even the implied warranty of +
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ​ See the +
-# GNU General Public License for more details. +
-+
-# You should have received a copy of the GNU General Public License +
-# along with this program. ​ If not, see <​http://​www.gnu.org/​licenses/>​. +
-#+
  
-+Créer et copier le script ​dans :
-# Bar with URLs (easy click on long URLs) +
-# (this script ​requires WeeChat 0.3.0 or newer) +
-+
-# History: +
-# 2009-07-01, xt <​xt@bash.no>​ +
-#     ​version 0.5: changed script command to /urlbar, comma separated ignore list +
-# 2009-05-22, xt <​xt@bash.no>​ +
-#     ​version 0.4: added configurable showing of buffer name, nick and time +
-# 2009-05-21, xt <​xt@bash.no>​ +
-#     ​version 0.3: bug fixes, add ignore feature from sleo +
-# 2009-05-19, xt <​xt@bash.no>:​ +
-#     ​version 0.2-dev: fixes +
-# 2009-05-04, FlashCode <​flashcode@flashtux.org>:​ +
-#     ​version 0.1-dev: dev snapshot +
-#+
  
-SCRIPT_NAME ​   = "​urlbar"​ +   $ nano /​home/​mon_user/​.weechat/​python/​autoload/​shortenurl.py
-SCRIPT_AUTHOR ​ = "​FlashCode <​flashcode@flashtux.org>"​ +
-SCRIPT_VERSION = "0.5" +
-SCRIPT_LICENSE = "​GPL3"​ +
-SCRIPT_DESC ​   = "Bar with URLs. For easy clicking or selecting."​ +
-SCRIPT_COMMAND = "​urlbar"​+
  
-settings = { +voir [[commande:​nano|Commande NANO]] 
-    "​visible_amount" ​       : '​5', ​    # Amount of URLS visible in urlbar at any given time +  * [[http://www.weechat.org/scripts/source/stable/shortenurl.py/| Télécharger scriptshortenurl.py]] 
-    "​visible_seconds" ​      : '​5', ​    # Amount of seconds URLbar is visible +Pour revoir ces <url> taper dans tty X :  
-    "​use_popup" ​            : '​on', ​   # Pop up automatically +<​code>​/urlbar toggle</​code>​
-    "​remember_amount" ​      : '​25', ​   # Max amout of URLs to keep in RAM +
-    "​ignore" ​               : '​grep', ​ # List of buffers to ignore. (comma separated) +
-    "​show_timestamp" ​       : '​on', ​   # Show timestamp in list +
-    "​show_nick" ​            : '​on', ​   # Show nick in list +
-    "​show_buffername" ​      : '​on', ​   # Show buffer name in list +
-    "​time_format" ​          : '​%H:​%M',​ # Time format +
-+
- +
-import_ok = True +
-try: +
-    import weechat +
-except ImportError:​ +
-    print "This script must be run under WeeChat."​ +
-    print "Get WeeChat now at: http://​weechat.flashtux.org/"​ +
-    import_ok = False +
- +
-import re +
-from time import strftime, localtime +
-octet = r'​(?:​2(?:​[0-4]\d|5[0-5])|1\d\d|\d{1,​2})'​ +
-ipAddr = r'​%s(?:​\.%s){3}'​ % (octet, octet) +
-# Base domain regex off RFC 1034 and 1738 +
-label = r'​[0-9a-z][-0-9a-z]*[0-9a-z]?' +
-domain = r'​%s(?:​\.%s)*\.[a-z][-0-9a-z]*[a-z]?'​ % (label, label) +
-urlRe = re.compile(r'​(\w+://(?:​%s|%s)(?::​\d+)?​(?:/​[^\])>​\s]*)?​)'​ % (domain, ipAddr), re.I) +
- +
- +
-# list of URL-objects  +
-urls = [] +
- +
-# Display ALL, a toggle +
-DISPLAY_ALL = False +
- +
- +
- +
-def urlbar_item_cb(data,​ item, window): +
-    '''​ Callback that prints the lines in the urlbar '''​ +
-    global DISPLAY_ALL,​ urls +
-    try: +
-        visible_amount = int(weechat.config_get_plugin('​visible_amount'​)) +
-    except ValueError:​ +
-        weechat.prnt('',​ '​Invalid value for visible_amount setting.'​) +
- +
-    if not urls: +
-        return 'Empty URL list'​ +
- +
-    if DISPLAY_ALL:​ +
-        DISPLAY_ALL = False +
-        printlist = urls +
-    else: +
-        printlist = urls[-visible_amount:​] +
- +
-    result = ''​ +
-    for index, url in enumerate(printlist):​ +
-        result += '​%s%2d%s %s \r' %\ +
-            (weechat.color("​yellow"​),​ index+1, weechat.color("​bar_fg"​),​ url) +
-    return result +
- +
- +
-def get_buffer_name(bufferp,​ long=False):​ +
-    if not weechat.buffer_get_string(bufferp,​ "​short_name"​) or long: +
-        bufferd = weechat.buffer_get_string(bufferp,​ "​name"​) +
-    else: +
-        bufferd = weechat.buffer_get_string(bufferp,​ "​short_name"​) +
-    return bufferd +
- +
-class URL(object):​ +
-    '''​ URL class that holds the urls in the URL list '''​ +
- +
-    def __init__(self,​ url, buffername, timestamp, nick): +
-        self.url = url +
-        self.buffername = buffername +
-        self.time = strftime( +
-                weechat.config_get_plugin('​time_format'​),​ +
-                localtime(int(timestamp))) +
-        self.time = self.time.replace(':',​ '​%s:​%s'​ % +
-                (weechat.color(weechat.config_string( +
-                weechat.config_get('​weechat.color.chat_time_delimiters'​))),​ +
-                weechat.color('​reset'​))) +
-        self.nick = irc_nick_find_color(nick) +
- +
-    def __str__(self):​ +
-        # Format options +
-        time, buffername, nick = '',​ '',​ ''​ +
-        if weechat.config_get_plugin('​show_timestamp'​) == '​on':​ +
-            time = self.time + ' ' +
-        if weechat.config_get_plugin('​show_buffername'​) == '​on':​ +
-            buffername = self.buffername + ' ' +
-        if weechat.config_get_plugin('​show_nick'​) == '​on':​ +
-            nick = self.nick + ' ' +
- +
-        return '​%s%s%s%s'​ % (time, nick, buffername, self.url) +
- +
-    def __cmp__(this,​ other): +
-        if this.url == other.url:​ +
-            return 0 +
-        return 1 +
- +
-def urlbar_print_cb(data,​ buffer, time, tags, displayed, highlight, prefix, message): +
- +
- +
-    buffer_name = get_buffer_name(buffer,​ long=True) +
-    # Skip ignored buffers +
-    for ignored_buffer in weechat.config_get_plugin('​ignore'​).split(','​):​ +
-        if ignored_buffer.lower() == buffer_name.lower():​ +
-            return weechat.WEECHAT_RC_OK +
-        +
-    # Clean list of URLs +
-    for i in range(len(urls) - int(weechat.config_get_plugin('​remember_amount'​))):​ +
-        # Delete the oldest +
-        urls.pop(0) +
- +
-    for url in urlRe.findall(message):​ +
-        urlobject = URL(url, get_buffer_name(buffer),​ time, prefix) +
-        # Do not add duplicate URLs +
-        if urlobject in urls: +
-            continue +
-        urls.append(urlobject) +
-        if weechat.config_get_plugin('​use_popup'​) == '​on':​ +
-            weechat.command("",​ "/bar show urlbar"​) +
-            # auto hide bar after delay +
-            try: +
-                weechat.command('',​ '/wait %s /bar hide urlbar'​ % +
-                        int(weechat.config_get_plugin('​visible_seconds'​))) +
-            except ValueError:​ +
-                weechat.prnt('',​ '​Invalid visible_seconds'​) +
- +
-        weechat.bar_item_update("​urlbar_urls"​) +
- +
-    return weechat.WEECHAT_RC_OK +
- +
- +
-def urlbar_cmd(data,​ buffer, args): +
-    """​ Callback for /url command"""​ +
-    global urls, DISPLAY_ALL +
- +
-    if args == "​list":​ +
-        if urls: +
-            DISPLAY_ALL = True +
-            weechat.command("",​ '/bar show urlbar'​) +
-            weechat.bar_item_update("​urlbar_urls"​) +
-        else: +
-            weechat.prnt('',​ 'URL list empty.'​) +
-    if args == "​show":​ +
-        weechat.command('',​ '/bar show urlbar'​) +
-    elif args == '​hide':​ +
-        weechat.command("",​ "/bar hide urlbar"​) +
-    elif args == '​toggle':​ +
-        weechat.command("",​ "/bar toggle urlbar"​) +
-    elif args == '​clear':​ +
-        urls = [] +
-    else: +
-        weechat.command("",​ "/help %s" % SCRIPT_COMMAND) +
- +
-    return weechat.WEECHAT_RC_OK +
- +
-def urlbar_completion_urls_cb(data,​ completion_item,​ buffer, completion):​ +
-    """​ Complete with URLS, for command '/​url'​. """​ +
-    for url in urls: +
-        weechat.hook_completion_list_add(completion,​ url.url, +
-                                         0, weechat.WEECHAT_LIST_POS_SORT) +
-    return weechat.WEECHAT_RC_OK +
- +
-def irc_nick_find_color(nick):​ +
- +
-    color = 0 +
-    for char in nick: +
-        color += ord(char) +
- +
-    color %= weechat.config_integer(weechat.config_get("​weechat.look.color_nicks_number"​)) +
-    color = weechat.config_get('​weechat.color.chat_nick_color%02d'​ %(color+1)) +
-    color = weechat.config_string(color) +
-    return '​%s%s%s'​ %(weechat.color(color),​ nick, weechat.color('​reset'​)) +
- +
- +
-if __name__ == "​__main__"​ and import_ok:​ +
-    if weechat.register(SCRIPT_NAME,​ SCRIPT_AUTHOR,​ SCRIPT_VERSION,​ SCRIPT_LICENSE,​ +
-                        SCRIPT_DESC,​ "",​ ""​):​ +
-        # Set default settings +
-        for option, default_value in settings.iteritems():​ +
-            if not weechat.config_is_set_plugin(option):​ +
-                weechat.config_set_plugin(option,​ default_value) +
- +
-        weechat.hook_command(SCRIPT_COMMAND,​ +
-                             "​URL bar control",​ +
-                             "​[list | hide | show | toggle | URL]", +
-                             " ​  list: list all URL and show URL bar\n"​ +
-                             " ​  hide: hide URL bar\n"​ +
-                             " ​  show: show URL bar\n"​ +
-                             " ​  ​toggle:​ toggle showing of URL bar\n",​ +
-                             "​list %(urlbar_urls)",​ +
-                             "​urlbar_cmd",​ ""​) +
-        weechat.hook_completion("​urlbar_urls",​ "list of URLs",​ +
-                                "​urlbar_completion_urls_cb",​ ""​) +
-        weechat.bar_item_new("​urlbar_urls",​ "​urlbar_item_cb",​ ""​);​ +
-        weechat.bar_new("​urlbar",​ "​on",​ "​1000",​ "​root",​ "",​ "​top",​ "​horizontal",​ +
-                        "​vertical",​ "​0",​ "​0",​ "​default",​ "​default",​ "​default",​ "​0",​ +
-                        "​urlbar_urls"​);​ +
-        weechat.hook_print("",​ "",​ "://",​ 1, "​urlbar_print_cb",​ ""​)</​code>​ +
- +
-Ensuite, ouvrir **weechat-curses**,​ le plugins **urlbar.py** est chargé au démarrage : +
- +
-   $ weechat-curses +
- +
-Maintenant, lorsqu'​une <//​url//>​ se présente, une fenêtre apparaît quelques secondes avec cette <//​url//>​ indiquée. +
- +
-Pour revoir ces <//url//> taper : +
- +
-   /urlbar toggle +
- +
-**Tchap** !+
  
 === Nota : === === Nota : ===
Ligne 454: Ligne 231:
    Alt + l    Alt + l
  
-//Merci à engil et captnfab sans qui la rédaction des tutos ne serait que désert et perdition !// 
  
 ===== Les liens ===== ===== Les liens =====
Ligne 462: Ligne 238:
   * [[http://​www.weechat.org/​scripts/​ | Scripts disponibles]]   * [[http://​www.weechat.org/​scripts/​ | Scripts disponibles]]
  
- --- //​[[matt_chile@yahoo.fr|MaTTuX_]] 2009/02/10 00:16//+:-P :-:-P
   
doc/reseau/weechat.txt · Dernière modification: 11/02/2024 11:01 par TyZef

Pied de page des forums

Propulsé par FluxBB