Anmerkung
Diese Dokumentation beschreibt ausschließlich WeeChat Versionen ≥ 0.3.0.

1. Allgemein

1.1. Woher kommt eigentlich der Name "WeeChat"?

"Wee" ist ein sich selbst nutzendes Akronym und bedeutet "Wee Enhanced Environment". Somit lautet der vollständige Name "Wee Enhanced Environment for Chat".

"Wee" bedeutet außerdem "sehr klein" (und ja, es gibt noch eine andere Bedeutung des Wortes. Aber dieses trifft nicht auf WeeChat zu!)

1.2. Weshalb sollte man WeeChat nutzen? - X-Chat und Irssi sind doch auch sehr gut…

Weil WeeChat schlank ist und neue Funktionen besitzt. Einige Funktionen (Version ≥ 0.3.x):

  • Unterstützung verschiedener Protokolle durch Erweiterungen (IRC, Jabber)

  • mehrere Remote GUIs als Ergänzung zu Curses (in Kürze)

  • Unterstützung von 256 Farben

  • in mehreren Sprachen verfügbar

  • den eigenen Bedürfnissen durch Erweiterungen anpassbar (C, Perl, Python, Ruby, Lua, Tcl)

  • Buffer mit unabhängigem Inhalt

  • Filterung der Anzeige mittels Tags und regulären Ausdrücken

  • horizontale und vertikale Einteilung der Fenster

  • anpassbare und erweiterbare Leisten

  • native Nickliste

  • Auflistung von Buffern (mittels dem Skript buffers.pl)

  • IRC Proxy

  • Umleitung von IRC Befehlen

  • inkrementelle Textsuche in Buffern, zu Highlights springen

  • FIFO Pipe für Fernsteuerung

  • Unterstützung von Aspell

  • Doppelter Zeichensatz (Kodierung/Dekodierung)

  • Neuentwicklung (basiert auf keinem anderen Programm)

  • lauffähig auf einer Vielzahl von Plattformen

  • 100% GPL und Frei

Weitere Informationen gibt es auf der folgenden Internetseite: http://www.weechat.org/features

2. Kompilierung / Installation

2.1. Ich habe gehört es gibt mehrere GUIs für WeeChat. Wie kann ich diese kompilieren bzw. nutzen?

Zur Zeit ist nur eine GUI, für Curses, verfügbar.

Andere GUIs (zur Zeit in der Entwicklung) werden als Remote Clients verfügbar sein.

2.2. Ich kann WeeChat nach Cloning des git Repository nicht kompilieren - weshalb?

Es wird empfohlen cmake zum kompilieren von WeeChat zu nutzen.

Falls Du WeeChat mit Hilfe der autotools kompilieren solltest (dich also nicht für cmake entscheidest), stelle sicher, dass Du die neueste Version von autoconf und automake besitzt.

Die zweite Möglichkeit besteht darin das "Entwickler-Paket" zu installieren, denn dies besitzt weniger Abhängigkeiten. Das Paket wird quasi täglich aus dem git Repository erstellt. Beachte, dass dieses Paket nicht immer exakt mit dem git Repository übereinstimmen muss und daher auch weniger brauchbar sein kann. Im Gegensatz zu der Möglichkeit, dass man selbst das Repository klont und daraus Updates installiert.

2.3. Ich habe WeeChat gestartet, komme aber nicht mehr weiter - was kann ich tun?

Um Hilfe zu erhalten, nutze den /help Befehl. Eine Hilfe zu einem Befehl erhältst Du durch die Eingabe von: /help Befehlsname. Befehle sowie die Belegung der jeweiligen Tasten sind in der Dokumentation aufgeführt. (Tipp: Mit den Tasten <Bild-hoch>/<Bild-runter> kann man seitenweise in den Buffern blättern)

Neue Benutzer sollten unbedingt die quickstart-Anleitung lesen (siehe Dokumentation auf der Internetseite).

3. Anzeige

3.1. Teilweise fehlen den Zeichen die Akzente. Wie kann ich das korrigieren?

Dies ist ein bekanntes Problem. Aus diesem Grund sollte der nachfolgende Text sorgfältig durchgelesen und alle aufgezeigten Lösungsmöglichkeiten durchgeführt werden:

  • überprüfe, ob weechat-curses mit libncursesw verlinkt ist (Warnung: Dies ist bei den meisten Distributionen nötig - jedoch nicht bei allen): ldd /path/to/weechat-curses

  • prüfe mit dem Befehl /plugin, ob die "Charset" Erweiterung geladen ist (falls dies nicht der Fall sein sollte benötigst Du wahrscheinlich noch das Paket "weechat-plugins")

  • überprüfe die Ausgabe des /charset Befehls (im Server-Buffer). Du solltest ISO-XXXXXX oder UTF-8 für den Terminal Zeichensatz als Antwort erhalten. Falls Du ANSI_X3.4-1968 oder einen anderen Wert angezeigt bekommen solltest, ist Deine Einstellung der locale möglicherweise falsch.

  • Einstellen des globalen decode Wertes, z.B.: /set charset.default.decode "ISO-8859-15"

  • Falls Du UTF-8 locale nutzt:

    • prüfe, ob Dein Terminal überhaupt UTF-8 fähig ist (der empfohlene Terminal für UTF-8 ist rxvt-unicode)

    • Solltest Du screen nutzten, prüfe ob dieser im UTF-8 Modus läuft ("defutf8 on" in der Datei ~/.screenrc oder screen -U zum Starten von screen)

Anmerkung
Für Weechat wird die Nutzung von UTF-8 locale empfohlen. Nutzt Du jedoch ISO oder andere locale, bitte vergewissere Dich, dass alle Deine Einstellungen (Terminal, screen, …) sich auch auf ISO beziehen und nicht auf UTF-8.

3.2. Weshalb haben Bars, z.B. Titel und Status, keine Hintergrundfarbe bzw. diese endet direkt nach dem Text?

Dies kann durch einen falschen Wert in der Variablen TERM Deiner Shell verursacht werden. Bitte überprüfe die Ausgabe von echo $TERM in Deinem Terminal.

Abhängig davon von wo WeeChat gestartet wird, solltest Du folgenden Wert haben:

  • falls WeeChat lokal oder auf einem entfernten Rechner läuft, je nach benutztem Terminal: xterm, xterm-256color, rxvt-unicode, rxvt-256color, …

  • falls WeeChat unter screen läuft, sollte der Wert screen oder screen-256color lauten.

Falls nötig korrigiere den Wert Deiner Variablen TERM: export TERM="xxx".

3.3. Wenn ich Weechat mit screen/tmux nutze habe ich merkwürdige Zeichen, wie kann ich dies beheben?

Dies kann durch einen falschen Wert in der TERM-Variable Deiner Shell hervorgerufen werden. Bitte überprüfe die Ausgabe von echo $TERM in Deinem Terminal (außerhalb von screen/tmux).

Als Beispiel, xterm-color könnte solche merkwürdigen Zeichen produzieren. Nutzte stattdessen lieber xterm.

Falls notwendig korrigiere den Wert Deiner TERM-Variable: export TERM="xxx".

3.4. Ich habe WeeChat unter OS X kompiliert und erhalte nur "(null)" als Textausgabe. Was läuft da schief?

Wenn Du ncursesw selber kompiliert haben solltest dann probiere einmal die Standard ncurses aus, welche mit dem System ausgeliefert wird.

Darüber hinaus ist es unter OS X ratsam WeeChat mittels des Homebrew package manager zu installieren.

3.5. Ich habe von "Buffern" und "Fenstern" gehört - Worin besteht der Unterschied?

Ein Buffer besteht aus einer Nummer, besitzt einem Namen, hat Zeilen die angezeigt werden (und noch anderen Daten).

Ein Fenster ist ein Bildschirmbereich der Buffer darstellt. Es ist möglich den Bildschirm in mehrere Fenster aufzuteilen.

Jedes Fenster stellt einen Buffer dar. Ein Buffer kann unsichtbar sein (er wird in einem Fenster nicht angezeigt). Oder ein Buffer wird durch ein oder mehrere Fenster angezeigt.

3.6. Wie kann ich eine Liste mit den Buffern z.B. auf der linken Seite anzeigen lassen?

Nutze dazu das Skript buffers.pl.

Um die Größe der Bar zu limitieren:

/set weechat.bar.buffers.size_max 15

Um die Bar nach oben zu verschieben:

/set weechat.bar.buffers.position bottom

3.7. Wie kann ich die Länge eines Nicknamens begrenzen oder die Ausrichtung des Nicks im Chatbereich entfernen?

Um die Länge des Nicknamens im Chatbereich auf eine maximale Größe (z.B. 15 Zeichen) zu begrenzen:

/set weechat.look.prefix_align_max 15

um die Ausrichtung für Nicks zu entfernen:

/set weechat.look.prefix_align none

3.8. Ist es möglich nur eine Eingabezeile für alle Fenster zu nutzen (auch falls diese geteilt sind)?

Ja, dazu muss eine Bar des Typs "root" erstellt werden (dies muss ein Item besitzen, welches anzeigt in welchem Fenster man sich befindet) und die aktuelle Eingabezeile muss gelöscht werden.

Zum Beispiel:

/bar add rootinput root bottom 1 0 [buffer_name]+[input_prompt]+(away),[input_search],[input_paste],input_text
/bar del input

Falls Du doch nicht zufrieden sein solltest, dann lösche einfach die neue Bar. WeeChat erstellt automatisch eine neue Eingabezeile sofern das Item "input_text" in keiner anderen Bar genutzt werden sollte:

/bar del rootinput

3.9. Wie kann ich einen Text kopieren und einfügen ohne das die Nickliste mit eingefügt wird?

Hierzu kannst Du ein Terminal nutzen welches Block-Auswahl erlaubt (wie z.B. rxvt-unicode, konsole, gnome-terminal, …). Im Normalfall erfolgt die Markierung mittels der Tasten Ctrl+Alt+ in Verbindung mit der Auswahl durch die Maus.

Eine weitere Möglichkeit besteht darin die Nickliste nach oben oder unten zu verschieben:

/set weechat.bar.nicklist.position top

3.10. Wie kann ich eine URL aufrufen die einen Zeilenumbruch besitzt?

WeeChat stellt standardmäßig die Uhrzeit als auch einen Präfix in jeder Zeile dar. Optional können zusätzlich auch Bars im Chatfenster dargestellt werden. Man kann die Nickliste z.B. am oberen Rand darstellen lassen und die Ausrichtung der Nicknamen entfernen:

/set weechat.bar.nicklist.position top
/set weechat.look.prefix_align none
/set weechat.look.align_end_of_lines time

Ab der WeeChat Version ≥ 0.3.6, kann die Option "eat_newline_glitch" aktiviert werden. Damit wird das Zeichen für einen Zeilenumbruch nicht an die dargestellten Zeilen angefügt (dies führt dazu, dass URLs beim Markieren korrekt erkannt werden):

/set weechat.look.eat_newline_glitch on
Wichtig
Bei der Nutzung dieser Option kann es zu Darstellungsfehlern kommen. Sollte dies auftreten, sollte diese Option wieder deaktiviert werden.

Eine weitere Möglichkeit ist, eines der folgenden Skripten zu nutzen:

urlserver.py

verkürzt lange URLs mittels eigenem HTTP Server

urlbar.py

stellt die URL in einer Bar dar.

urlgrab.py

protokolliert URLs und öffnet diese im Standardbrowser.

url_shorten.rb
tinyurl.py
shortenurl.py

URLs werden durch einen Internet-Dienst gekürzt.

Hier findet man eine Auflistung von Skripten die sich mit URLs befassen: http://www.weechat.org/scripts/stable/tag/url

3.11. Ich möchte die Meldungen von Weechat in einer anderen Sprache ausgeben lassen, ohne WeeChat zu beenden. Ist dies möglich?

Ja, dazu kannst Du das Python-Skript shell.py verwenden (erhältlich auf der Internetseite). Nach dem Laden des Skripts führe folgende Befehle aus:

/shell setenv LANG=de_DE.UTF-8
/upgrade

Hierdurch erhält man für das Terminal deutsche, UTF-8 kodierte Meldungen. Benutzer von ISO-Kodierungen können folgendes eingeben: /shell setenv LANG=de_DE.

3.12. Wie kann ich 256 Farben in WeeChat nutzen?

256 Farben werden ab der WeeChat Version ≥ 0.3.4 unterstützt.

Zuerst sollte überprüft werden ob die TERM-Umgebungsvariable korrekt hinterlegt ist. Folgende Werte sind zu empfehlen:

  • falls screen genutzt wird: screen-256color

  • screen wird nicht genutzt: xterm-256color, rxvt-256color, putty-256color,…

Anmerkung
Es sollte das Paket "ncurses-term" installiert werden um die Werte der TERM Variable nutzen zu können.

Sollte screen genutzt werden, fügt man folgende Zeile an das Ende der Datei ~/.screenrc ein:

term screen-256color

Enthält die TERM-Umgebungsvariable einen falschen Wert und WeeChat wird bereits ausgeführt, keine Panik! Mit dem Skript shell.py kann eine Änderung der Umgebungsvariable durchgeführt werden, ohne das WeeChat neu gestartet werden muss:

/shell setenv TERM=screen-256color
/upgrade

Mit der WeeChat Version 0.3.4 muss der Befehl /color genutzt werden, um neue Farben zu erstellen.

Ab Version ≥ 0.3.5 kann in den Optionen für eine zu nutzende Farbe die entsprechende Zahl der Farbe eingetragen werden (optional: mit dem Befehl /color kann man einen Alias für eine Farbe definieren).

Weiterführende Informationen zum Farbmanagement erhält man in der Benutzeranleitung.

3.13. Wie kann ich in einem Buffer nach einem Text suchen (vergleichbar /lastlog in irssi)?

Die Standardtastenbelegung lautet Ctrl+r (der dazugehörige Befehl: /input search_text). und um zu Highlight-Nachrichten zu springen: Alt+p/n.

Siehe Benutzeranleitung für weitere Informationen zu dieser Funktion (Standardtastenbelegung).

4. Tastaturbelegung

4.1. Aus welchem Grund funktionieren manche Meta-Tasten (alt + Taste) nicht?

Wenn Du einen Terminal wie xterm oder uxterm nutzten solltest werden einige Meta-Tasten standardmäßig nicht unterstützt. In einem solchen Fall sollte folgende Zeile der Konfigurationsdatei ~/.Xresources hinzugefügt werden:

  • für xterm:

XTerm*metaSendsEscape: true
  • für uxterm:

UXTerm*metaSendsEscape: true

Danach muss resources neu geladen werden (xrdb -override ~/.Xresources) oder man startet X neu.

4.2. Wie kann ich die Tastaturbelegung anpassen?

Die Tasten werden mit dem Befehl /key belegt.

Mit der voreingestellten Tastenkombination Alt+k kann man sich den Code der jeweiligen Taste anzeigen lassen und in die Eingabezeile einfügen.

4.3. Mit welcher Tastenkombination kann ich zum Buffer 11 (oder höher) wechseln?

Die Tastenkombination lautet Alt+j gefolgt von den zwei Ziffern des Buffers. Zum Beispiel, Alt+j, 1, 1 um zum Buffer 11 zu wechseln.

Es kann auch eine neue Taste eingebunden werden um zu einem Buffer zu wechseln:

/key bind meta-q /buffer *11

Eine Auflistung der Standardtastenbelegung findet man in der Benutzeranleitung.

4.4. Wie kann ich den globalen Verlaufsspeicher (anstelle des Buffer eigenen) mit den Up-/Down-Tasten nutzen?

Du kannst die Up-/Down-Tasten für den globalen Verlaufsspeicher belegen (als Standardtasten werden genutzt: Ctrl+ and Ctrl+).

Beispiele:

/key bind meta2-A /input history_global_previous
/key bind meta2-B /input history_global_next
Anmerkung
Die Tasten "meta2-A" und "meta2-B" können nach dem jeweils genutzten Terminal variieren. Um die korrekten Tasten zu finden sollte man Alt+k und dann (Up- oder die Down-Taste) drücken.

5. Mausunterstützung

5.1. Die Mausunterstützung funktioniert nicht, was kann ich tun?

Eine Unterstützung von Mausfunktionen ist seit WeeChat ≥ 0.3.6 verfügbar.

Als erstes sollte man die Mausunterstützung einschalten:

/mouse enable

Falls die Maus von WeeChat nicht erkannt werden sollte muss die TERM Variable der Konsole überprüft werden (die geschieht im Terminal mittels echo $TERM). Entsprechend der ausgegebenen Information, wird ggf. eine Maus nicht unterstützt.

Um zu testen ob eine Mausunterstützung vom Terminal bereitgestellt wird, sollte man folgende Zeile im Terminal eingeben:

$ printf '\033[?1002h'

Und nun klickt man mit der Maus auf das erste Zeichen im Terminal (linke obere Ecke). Als Ergebnis sollte man folgende Zeichenkette erhalten: " !!#!!".

Um die Mausunterstützung im Terminal zu beenden:

$ printf '\033[?1002l'

5.2. Mausunterstützung funktioniert nicht falls x/y Koordinaten größer 94 Pixel sind, weshalb?

Einige Terminals senden ausschließlich ISO Zeichen für die Mauskoordinaten. Deshalb ist eine Nutzung über 94 Pixel hinausgehend, sowohl in den x- wie auch den y-Koordinaten, nicht gegeben.

Dann muss man einen Terminl nutzen der eine Unterstützung von UTF-8 Koordinaten für die Maus bietet, zum Beispiel rxvt-unicode.

6. IRC

6.1. Was ist der Unterschied zwischen dem Befehl /ignore und /filter?

Der Befehl /ignore ist ein IRC-Befehl und beeinflusst somit nur die IRC-Buffer (Server und Channel). Durch den Befehl kann man bestimmte Nicks oder Hostnamen von Usern eines Servers oder von Channels ignorieren (Der Befehl wird nicht auf den Inhalt der Meldung angewandt). Zutreffende Meldungen werden, bevor sie angezeigt werden, von der IRC-Erweiterung gelöscht (Du wirst sie niemals zu Gesicht bekommen).

Der Befehl /filter ist ein Kern-Befehl (A.d.Ü.: wird in WeeChat ausgeführt und nicht an den Server gesendet) und beeinflusst somit jeden Buffer. Dieser Befehl eröffnet die Möglichkeit bestimmte Zeilen in Buffern, mittels Tags und regulären Ausdrücken nach Präfix und Zeileninhalt zu filtern. Die Zeilen werden dabei nicht gelöscht, lediglich die Darstellung im Buffer wird unterdrückt. Die gefilterten Zeilen können zu jeder Zeit dargestellt werden indem man den Filter deaktiviert (Voreinstellung zum aktivieren/deaktivieren der Filter: Alt+=).

6.2. Wie kann ich join/part/quit Meldungen in den IRC Channels filtern (A.d.ü.: unterdrücken)?

Zum einen mit dem Smart-Filer (join/part/quit Meldungen werden von Usern angezeigt die kürzlich noch etwas geschrieben haben):

/set irc.look.smart_filter on
/filter add irc_smart * irc_smart_filter *

zum anderen mit einer globalen Filterung (alle join/part/quit Nachrichten werden unterdrückt):

/filter add jpk * irc_join,irc_part,irc_quit *
Anmerkung
Für weitere Hilfe: /help filter und /help irc.look.smart_filter

6.3. Wie kann ich Nachrichten filtern wenn ich einen IRC Channel betrete?

Es folgen einige Tags die man zum filtern von Nachrichten nutzen kann:

  • irc_366: Auflistung der Namen die sich im Channel befinden

  • irc_332,irc_333: Channel Topic/Datum

  • irc_329: Wann der Channel erstellt wurde

Tags von anderen Server-Mitteilungen kann man im IRC Raw-Server finden (/server raw).

Beispiele:

  • filtert die Auflistung der Namen die sich im Channel befinden:

/filter add irc_join_names * irc_366 *
  • filtert das Topic (und das Datum) des Channels:

/filter add irc_join_topic_date * irc_332,irc_333 *

6.4. Wie kann ich voice Nachrichten filtern (z.B. auf Bitlbee Servern)?

Voice Nachrichten zu filtern ist nicht einfach da der Voice-Modus mit anderen Modi in einer IRC Nachricht kombiniert werden kann.

Möchte man Voice-Nachrichten z.B. bei Bitlbee unterdrücken, da diese dazu genutzt werden um den Abwesenheitsstatus anderer User anzuzeigen (und man nicht von diesen Mitteilungen überflutet werden möchte), kann man WeeChat anweisen abwesende Nicks in einer anderen Farbe darzustellen.

Nutzt man Bitlbee ≥ 3, sollte man im &bitlbee Channel folgendes eingeben:

channel set show_users online,away

für ältere Versionen von Bitlbee gibt man im &bitlbee Channel ein:

set away_devoice false

Um sich in WeeChat anzeigen zu lassen welche Nicks abwesend sind siehe: abwesende Nicks.

Wenn man wirklich Voice-Nachrichten filtern möchte kann folgender Befehl angewandt werden. Allerdings ist diese Lösung nicht perfekt, da bei mehren Modi als erstes der Voice Modus aufgeführt sein muss):

/filter add hidevoices * irc_mode (\+|\-)v

6.5. Wie kann ich Nicks in der Nickliste anzeigen lassen die abwesend sind?

Dazu weist man der Option irc.server_default.away_check ein Zeitintervall zu, in welchen Abständen eine Überprüfung stattfinden soll. Die Angabe des Wertes erfolgt in Minuten.

Mittels der Option irc.server_default.away_check_max_nicks kann festgelegt werden in welchen Channels eine Überprüfung stattfinden soll. Hierbei stellt der angegebene Wert die maximale Anzahl an Nicks in einem Channel dar die den Channel gleichzeitig besuchen dürfen.

Im folgenden Beispiel wird der Abwesenheitsstatus alle fünf Minuten überprüft. Dabei werden aber nur solche Channels berücksichtigt die nicht mehr als 25 Teilnehmer haben:

/set irc.server_default.away_check 5
/set irc.server_default.away_check_max_nicks 25
Anmerkung
Für Weechat ≤ 0.3.3, lauten die Optionen irc.network.away_check und irc.network.away_check_max_nicks.

6.6. Wie kann ich mich darüber informieren lassen falls mich jemand in einem Channel highlighted

Dazu kann man ein Skript nutzen wie z.B. beep.pl oder launcher.pl.

Beim Skript launcher.pl müssen noch die Befehle angepasst werden:

/set plugins.var.perl.launcher.signal.weechat_highlight "/Pfad/zum/Befehl Argumente"

andere Skripten die auch zu diesem Thema passen: http://www.weechat.org/scripts/stable/tag/notify/

6.7. Es treten Probleme bei einer Serververbindung mittels SSL auf. Was kann ich tun?

Falls Fehlermeldungen auftreten sollten die besagen, dass der gnutls Handshake nicht geklappt hat, sollte ein kleinerer Diffie-Hellman-Schlüssel verwendet werden (Standardgröße: 2048):

/set irc.server.freenode.ssl_dhkey_size 1024

Erscheint eine Fehlermeldung, dass etwas mit dem Zertifikat nicht stimmen sollte dann kann eine "ssl_verify" Überprüfung deaktiviert werden (die Verbindung ist in diesem Fall weniger sicher):

/set irc.server.freenode.ssl_verify off

6.8. Bei einem Verbindungsaufbau zum Server, via SSL, erhalte ich "TLS Handshake fehlgeschlagen". Wie kann ich das beheben?

Man sollte versuchen eine andere Priorität zu nutzen (nur WeeChat ≥ 0.3.5); Im Beispiel muss "xxx" durch den internen Servernamen ersetzt werden:

/set irc.server.xxx.ssl_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"

6.9. Wie kann ich eine SSL gesicherte Verbindung zum freenode Server herstellen?

Die Option weechat.network.gnutls_ca_file sollte auf die Zertifikationsdatei zeigen:

/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"
Anmerkung
Überprüfe, ob die Zertifikationsdatei auf Deinem System installiert wurde (üblicherweise wird diese Datei durch das Paket "ca-certificates" bereitgestellt)

Konfiguration des Servers, Port, SSL, dhkey_size und dann einen Connect durchführen:

/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/set irc.server.freenode.ssl_dhkey_size 1024
/connect freenode

6.10. Wie kann ich bei zusammengefügten Buffern den Zielbuffer ändern (z.B. bei einem Server-Buffer)?

Die Standardtastenkombination lautet Ctrl+x (der dazugehörige Befehl: /input switch_active_buffer).

7. Erweiterungen / Skripten

7.1. Ich benutze OpenBSD aber WeeChat lädt keine Erweiterungen - weshalb?

Unter OpenBSD enden die Dateinamen von Erweiterungen mit ".so.0.0" (".so" bei Linux).

Um dies zu beheben muss folgendes konfiguriert werden:

/set weechat.plugin.extension ".so.0.0"
/plugin autoload

7.2. Wie kann ich Perl/Python/Ruby/Lua/Tcl Skripten laden und sind Skripten von anderen IRC-Clients kompatibel?

Die Skripten für WeeChat sind mit anderer IRC-Clients nicht kompatibel und vice versa.

Um Skripten zu laden nutze den Befehl für die jeweilige Skriptsprache: /perl, /python, /ruby, /lua und /tcl

Anmerkung:

  • Voreingestellter Pfad der Skripten: ~/.weechat/<Skriptsprache>/

  • Skripten die sich im Verzeichnis ~/.weechat/<Skriptsprache>/autoload/ befinden werden beim Start von WeeChat automatisch geladen.

  • Eine tcl Erweiterung ist ab Version ≥ 0.3.0 verfügbar.

8. Einstellungen

8.1. Wie kann ich WeeChat dazu bringen weniger Speicher zu verbrauchen?

Damit WeeChat weniger Speicher benötigt, solltest Du folgende Tipps umsetzen:

  • nutze die aktuelle Version (man kann davon ausgehen das eine aktuelle Version weniger Speicherlecks besitzt, als eine vorherige Version)

  • lade keine Erweiterungen die Du nicht benötigst. Zum Beispiel: ASpell, Fifo, Logger, Perl, Python, Ruby, Lua, Tcl, Xfer (wird für DCC benötigst)

  • lade nur Skripten die Du auch benutzt

  • nutze einen kleineren Wert für die Option weechat.history.max_lines (Anzahl der Zeilen die für jeden Buffer im Speicher gehalten werden soll)

  • nutze einen kleineren Wert für die Option weechat.history.max_commands (Anzahl des Verlaufsspeichers, für Befehle, die im Speicher gehalten werden sollen)

9. Entwicklung

9.1. Was kann ich machen falls ich einen Fehler gefunden habe, nach neuen Funktionen fragen oder Patches einsenden möchte?

Es gibt drei Möglichkeiten:

  1. Du kannst zu uns in den IRC kommen: irc.freenode.net, channel #weechat

  2. Du kannst die Internetseite savannah nutzen:

  3. Du kannst den Entwicklern mailen, entsprechende Mail-Adressen auf der Supportseite: http://www.weechat.org/about (Um emails an die "support" Mailing-Liste zu schicken, kannst Du diese abonnieren)

9.2. Wenn man WeeChat in gdb startet kann ein Thread-Fehler auftreten. Was beudeutet das?

Falls man WeeChat in gdb ausführt kann folgende Fehlermeldung erscheinen:

$ gdb /Pfad/zu/weechat-curses
(gdb) run
[Thread debugging using libthread_db enabled]
Cannot find new threads: generic error

Um diesen Fehler zu beheben sollte man gdb wie folgt aufrufen (der Pfad zu libpthread und WeeChat muss natürlich an das eigene System angepasst werden):

$ LD_PRELOAD=/lib/libpthread.so.0 gdb /Pfad/zu/weechat-curses
(gdb) run

9.3. Auf welchen Plattformen läuft WeeChat und wird es noch auf andere Betriebssystemen portiert?

Eine vollständige Liste der Portierungen findest Du unter: http://www.weechat.org/download

Wir geben unser Bestes um WeeChat auf möglichst viele Plattformen zu portieren. Aber um WeeChat auf fremden Betriebssystemen zu testen, zu denen wir keinen Zugang haben, ist Hilfe gerne gesehen.

9.4. Ich möchte den Entwicklern von WeeChat helfen. Was kann ich tun?

Es gibt einiges zu tun z.B. testen, programmieren, Dokumentation, …

Bitte kontaktiere uns via IRC oder email, schaue auf die Support-Seite: http://www.weechat.org/support

Du kannst uns Geld zur Unterstützung der weiteren Entwicklung spenden. Details hierzu gibt es auf: http://www.weechat.org/donate