# Das Handbuch zu &ksirc;

&Andrew.Stanley-Jones; &Andrew.Stanley-Jones.mail;
&Philip.Rodrigues; &Philip.Rodrigues.mail;
&Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;
1997 Andrew Stanley-Jones
2001 2002 2004 Philip Rodrigues
2005 Anne-Marie Mahfouf
Frank Schütte

    F.Schuette@t-online.de

Deutsche Übersetzung
2005-05-10
1.3.12
&FDLNotice;

Diese Dokumentation beschreiben das &kde; &irc;-Programm &ksirc; 1.2.1.

KDE KSirc irc Internet relay chat

## Einleitung

&ksirc; ist für &kde; das Standard-&irc;-Programm. Es unterstützt Skripte in der Sprache Perl und ist im wesentlichen kompatibel zu &mirc;.

## &ksirc; verwenden

### Falls man &irc; noch nie verwendet hat ...

Einfach gesprochen ist &irc; ein Chat-Protokoll. Es ist durch einen offiziellen Internet-Standard definiert worden. Um &irc; zu verwenden, muss man Verbindung zu einem Server aufnehmen und in einen Kanal (channel) hineingehen (äquivalent zu einem Chat-Raum).

Man wählt Verbindungen Neuer Server oder drückt F2, um Verbindung zu einem Server aufzunehmen. Im Dialog wählt man eine Gruppe aus dem linken Listenfeld und einen Server aus dem mittleren Listenfeld. Die Portnummer ist in der Regel 6667. Es erscheint ein neues Fenster, das die vom Server gesendeten Nachrichten anzeigt. Wenn diese Nachrichten beendet sind, kann man einen Kanal auswählen. Eine Liste der verfügbaren Kanäle erhält man durch den Befehl ``/list``. Um in einen Kanal hineinzugehen, gibt man den Befehl ``/join` #Kanalname` an. Um einen Kanal zu verlassen, dient der Befehl ``/part``.

Damit sind die Grundlagen bekannt. Ausführlichere Informationen folgen ...

### Grundlagen von &ksirc;

#### Server

Mit &ksirc; kann man gleichzeitig Verbindung zu vielen Servern aufnehmen. Um sich mit einem Server zu verbinden, wählt man Verbindungen Neuer Server oder drückt F2. Im Dialog Verbinden mit ... kann man zunächst die gewünschte Gruppe, dann einen Server und schließlich einen Port wählen.

Danach klickt man auf Verbinden und ein neues Fenster erscheint. Das Fenster Server-Kontrolle ermöglicht eine Kontrolle über die Server, mit denen &ksirc; verbunden ist.

Zu den meisten &irc;-Befehlen kann man über `/help Befehlsname` Hilfe anzeigen lassen. Mit `/help` allein erhält man eine Liste der verfügbaren Befehle.

#### Kanäle (Channels)

Mit dem Befehl ``/join`` oder über den Menüeintrag Verbindungen In Kanal hineingehen ... oder durch drücken von F3 kann man in einen Kanal hineingehen.

Geöffnete Kanäle werden im Fenster Server-Kontrolle unter dem zugehörigen Server angezeigt. Man kann einen Kanal wieder verlassen, indem man `/part` eintippt, im Menü Kanal Schließen wählt oder &Ctrl;W betätigt.

#### Kanal-Einstellungen

Das Menü Kanal im Kanal-Fenster enthält einige nützliche Einstellungen:

&Ctrl;S In Protokolldatei speichern ...

  Speichert den Inhalt des Kanals in einer Datei.

Zeitmarke

  Jeder Aussage im Kanal wird die Zeit in der Form [HH:MM:SS] vorangestellt.

&Alt;C T Ascii-Tabelle

  Zeigt eine Tabelle der Ascii-Zeichen an, aus der man benötigte Zeichen auswählen kann.

&Alt;C P Bei Veränderung piepen

  Falls ausgewählt, gibt &ksirc; bei jedem neuen Beitrag im Kanal einen Piepton aus.

#### Benutzer-Einstellungen

In jedem Kanal wird die Benutzerliste rechts in einer Spalte angezeigt. Klickt man mit der rechten Maustaste auf einen der Namen, so erscheint ein Menü mit einigen selbst erklärenden Funktionen. Diese Aktionen sind frei einstellbar (Sortieren, Hinzufügen und Entfernen von Einträgen) im Einrichtungsdialog von KSirc. Es folgen die voreingestellten Menüeinträge:

Spitznamen aktualisieren

  Fordert vom Server die aktuelle Teilnehmerliste dieses Kanals an. Das sichert die Aktualität der Spitznamenliste.

Folgen

  Hebt den Spitznamen des Benutzers in jeder Nachricht des Kanals hervor. Damit kann man auch in einem überfüllten Kanal dem Gang der Unterhaltung folgen. Die Farbe wird zufällig ausgewählt.

Nicht folgen

  Beendet die Verfolgung eines Teilnehmers.

Wer ist

  Sendet eine &CTCP;-whois-Anfrage über einen Teilnehmer. Es werden verschiedene Informationen über einen Teilnehmer (z. B. Computername, Server-Verbindung &etc;) abgefragt.

Ping

  Sendet ein &CTCP;-Ping zu einem Teilnehmer, um dessen Antwortzeit zu testen.

Version

  Sendet eine &CTCP;-Version-Anfrage, um die Programmversion eines Teilnehmers zu ermitteln.

Abuse

  Einen Teilnehmer in einer von mehreren Weisen schlecht behandeln.

Die folgenden Befehle sind nur für Kanal-Operatoren zugänglich:

Kick

  Den Teilnehmer aus dem Kanal werfen.

Ban

  Den Teilnehmer von der Teilnahme im Kanal ausschließen.

unBan

  Den Teilnahmeausschluß für einen Benutzer aufheben.

Op

  Dem Teilnehmer Operator-Rechte geben.

DeOp

  Die Operator-Rechte für einen Teilnehmer widerrufen.

### Automatische Verbindung

Falls Sie beim Start von &ksirc; jedesmal eine Verbindung zu den gleichen Servern bzw. Kanälen herstellen, können Sie dafür eine automatische Verbindung einrichten. Wählen Sie dazu im Fenster Serverkontrolle im Menü Einstellungen KSirc einrichten ... und im erscheinenden Dialog die Seite Automatische Verbindung. Füllen Sie die Felder Server und Kanal aus und klicken Sie auf Hinzufügen. Einen weiteren Kanal auf einem bereits eingerichteten Server fügt man durch Auswahl des Servernamens in der Baumansicht und Eingabe des Kanalnamens im Feld Kanal durch Klicken auf Aktualisieren/Hinzufügen hinzu. Auf dieselbe Art und Weise kann man auch mehrere Server und Kanäle hintereinander hinzufügen.

## &ksirc; Einrichtung

### Einführung zur Einrichtung

Der Einrichtungsdialog von &ksirc; wird über Optionen Persönliche Einstellungen im Fenster Server-Kontrolle von &ksirc; aufgerufen.

### Die Karteikarte Erscheinungsbild

#### Fenstermodus

SDI-Modus (bisheriges Verhalten)

  In diesem Modus verwendet &ksirc; den Ein-Dokumenten-Modus, bei dem jeder neue Kanal und jedes `/query`-Fenster separat erscheint.

Seitenweiser MDI-Modus (XChat)

  &ksirc; verwendet ein Mehr-Dokumenten-Fenster im Stile von XChat, bei dem jeder neue Kanal und jedes `/query`-Fenster als Karteikarte in einem &ksirc;-Hauptfenster erscheint. Durch Klicken auf den zugehörigen Karteireiter kann man ein Fenster in den Vordergrund bringen. Durch &Alt;Pfeil links und &Alt;Pfeil rechts kann man zwischen den Karteikarten wechseln.

#### Hintergrundmuster

Im Abschnitt Hintergrundmuster kann man das Bild einstellen, das für den Hintergrund von &ksirc;-Fenstern verwendet wird. Man kann den Dateinamen in das Eingabefeld eintippen oder durch Klicken auf den Knopf rechts davon einen Dateidialog aufrufen. Bilddateien der Formate &GIF;, JPEG und PNG werden unterstützt. Eine Bildvorschau wird rechts des Eingabefeldes angezeigt.

Wenn Sie kein Hintergrundmuster benutzen möchten, klicken Sie mit der rechten Maustaste in das Textfeld und wählen Leeren/Zurücksetzen. Wenn Sie nun auf Ok oder Anwenden klicken, ist das Hintergrundmuster abgeschaltet.

### Die Karteikarte Allgemein

#### Globale Einstellungen

Im Systembereich der Kontrollleiste andocken

  Dies ermöglicht KSirc, sich im Systembereich der Kontrollleiste anzudocken. In der Voreinstellung ist diese Einstellung nicht aktiviert. Wenn KSirc angedockt ist, können Sie über das Symbol verschiedenste Einstellungen erreichen. Wenn das Hauptfenster von KSirc geschlossen wird, läuft das Programm im Systembereich der Kontrollleiste weiter.

Farbauswahl-Dialog

  Falls dieses Ankreuzfeld markiert ist, erscheint ein Farbauswahl-Dialog zur Auswahl der Textfarbe, wenn man &Ctrl;K betätigt. Ansonsten muss man die Farbkodierung selbst eintippen. Siehe auch .

Fenster automatisch erstellen

  Falls man dieses Ankreuzfeld markiert, erstellt &ksirc; für jeden Benutzer, der einen `/msg`-Befehl sendet, ein neues Fenster. Ansonsten wird jeder von anderen Benutzern mit dem `/msg`-Befehl gesendete Text im aktuellen Fenster dargestellt. Durch `/query Benutzername` kann man dann manuell ein neues Fenster für einen Chat mit diesem Benutzer erstellen. Diese Einstellung ist in der Voreinstellung aktiviert.

Automatisch wiedereintreten

  Nimmt am Kanal nach einem Verbindungsabbruch automatisch wieder teil.

Bei Benachrichtigung automatisch erstellen

  Wenn Ihnen jemand eine /notice schickt, wird ein neues Fenster aufgemacht, wenn diese Einstellung markiert ist.

Abwesenheits-Nachrichtn anzeigen

  Wenn diese Einstellung aktiv ist, sehen Sie die Abwesenheitsmeldung von anderen Benutzern. In der Voreinstellung ist diese Einstellung aktiv.

Spitznamen vervollständigen

  Markiert man dieses Ankreuzfeld, wird die automatische Vervollständigung von Spitznamen aktiviert. Diese Vervollständigung arbeitet folgendermaßen:

  1. Zunächst tippt man die ersten Buchstaben eines Spitznamens ein.

  2. Dann betätigt man Tabulator. Der eingetippte Text wird zu einem Spitznamen vervollständigt. Dabei werden automatisch notwendige Änderungen der Großschreibung vorgenommen, also wird `phi<TAB>` zu `PhilRod`, falls ein Benutzer mit dem Namen PhilRod im Kanal ist.

  3. Falls der Text auf mehr als einen Benutzer zutrifft, wird zunächst der erste passende Name eingefügt. Durch wiederholtes Drücken von Tabulator werden die folgenden Namen nacheinander eingesetzt. Falls z.B. die Benutzer PhilA und PhilRod im Kanal sind, und man `phi<TAB>` eintippt, wird der Text zunächst zu `PhilA` vervollständigt, ein weiteres Betätigen von Tabulator ändert den Text zu `PhilRod`.

Farbige Spitznamenliste benutzen

  Wenn diese Einstellung aktiv ist, wird die Spitznamenliste eingefärbt.

Thema im Fenster-Titel anzeigen

  Zeigt das Thema des Kanals im Fenstertitel. Falls das Ankreuzfeld nicht markiert ist, wird das Thema nur innerhalb des Fensters angezeigt.

Passive Aufklappmenüs andocken

  Diese Einstellung ist nur verfügbar, wenn KSirc in der Kontrollleiste andocken kann. Wenn die Einstellung aktiv ist, werden passive Informationsfenster an dem Kontrollleistensymbol angedockt.

Einzeiliges Texteingabefeld

  Wenn diese Einstellung nicht aktiv ist, kann sich das Texteingabefeld zum Schreiben einer Nachricht auf mehrere Zeilen vergrößern. Andernfalls steht Ihnen jeweils nur eine Zeile zur Verfügung und unter Umständen ist der Beginn Ihrer Nachricht nicht mehr sichtbar, wenn der Text sehr lang wird.

Länge des Verlaufs

  Speichert maximal so viele Zeilen des Chats in jedem Fenster, wie angegeben. Der Verlauf ermöglicht einen Rückblick auf das, was bereits gesagt worden ist.

Verlauf automatisch speichern

  Wenn diese Einstellung aktiv ist, werden private Gespräche automatisch aufgezeichnet. Wenn Sie ein privates Chatfenster öffnen und bereits vorher mit dem gleichen Benutzer gesprochen haben, so sehen Sie in dem neuen Fenster automatisch einen Auszug des vorigen Gesprächs.

#### Kanal-Optionen

Kanaloptionen überschreiben

  Wenn diese Einstellung aktiv ist, werden die Einstellungen in diesem Unterfenster die individuellen Kanal-Optionen überschreiben. Diese Einstellung ist nur bis zum nächsten Öffnen dieses Dialogs gültig und wird danach automatisch zurückgesetzt.

Zeitmarke

  Jeder Aussage im Kanal wird die Zeit in der Form [HH:MM:SS] vorangestellt.

Thema anzeigen

  Zeigt das Thema eines Chatraums am oberen Rand eines jeden Chatfensters an.

Signalton bei Änderung

  Markiet man das Ankreuzfeld, wird ein Signalton erzeugt, wenn ein Benutzer der eigenen `/notify`-Liste dem aktuellen &irc; beitritt.

Protokoll aktivieren

  Erzeugt für jeden Kanal eine Protokolldatei pro Tag. Die Protokolldateien werden unter $KDEHOME/share/apps/ksirc/logs/ gespeichert und sehen so aus: $KDEHOME/share/apps/ksirc/logs/#channelname_year_month_day_servername.log

Betreten-/Verlassen-Meldungen ausblenden

  Betreten-/Verlassen-Meldungen ausblenden. Das ist nützlich, wenn ein Kanal viele Teilnehmer hat.

Voreingestellte Kodierung

  Legt die Standardkodierung für alle Kanäle fest. Wählen Sie die Kodierung aus der Aufklappliste.

### Die Karteikarte Programmstart

Hier kann man die Starteinstellungen von &ksirc; verändern.

#### Server

#### Identität

Spitzname

  Legt den eigenen &irc;-Spitznamen fest.

Alternativer Spitzname

  Legt einen zweiten Spitznamen fest für den Fall, dass der erste Spitzname bereits von einem anderen Benutzer verwendet wird.

Wirklicher Name

  Der wirkliche Name, der bei einer `/query`-Anfrage zurückgegeben werden soll.

Benutzer-ID

  Der wirkliche Name, der bei einer `/query`-Anfrage zurückgegeben werden soll.

#### Benachrichtigungsliste

Hier können die Namen von Benutzern angegeben werden, die beim Programmstart zur eigenen `/notify`-Liste hinzugefügt werden sollen. Es erfolgt eine Benachrichtigung, wenn einer dieser Benutzer am Chat teilnimmt.

### Die Karteikarte Farben

Hier kann man die Farben einstellen, die &ksirc; verwenden soll.

#### Der Abschnitt Chat-Farben

Hier kann man für jeden Texttyp eine Farbe festlegen. Klickt man auf den Farbknopf neben einem der Texttypen, so erscheint der Farbauswahl-Dialog, mit dessen Hilfe man die Farbe wählen kann, in der dieser Texttyp angezeigt wird.

#### Farben für Spitznamen

Hier kann die Vordergrund- und Hintergrund-Farbe für die Darstellung der Spitznamen im Chat-Fenster ausgewählt werden. Die Option Farbe für Nachrichten, die den eigenen Spitznamen enthalten legt die Farbe für alle Nachrichten fest, die den eigenen Spitznamen enthalten.

#### Farbkodierung

Hier kann man festlegen, ob die Farbkodierung des Programms &ksirc; (siehe auch ) und/oder die Kodierung des Programms &mirc; verwendet werden können.

### Die Karteikarte Benutzermenü

Auf dieser Seite können Sie das Kontextmenü für die Spitznamenliste einstellen. Wenn Sie mit der rechten Maustaste auf einen Spitznamen klicken, sind bereits einige Standardaktionen eingestellt. Diese finden Sie auf der linken Seite. Sie können die Anordnung der Einträge ändern, Einträge hinzufügen und löschen.

### Die Karteikarte Server/Kanal

Hier sind die Server und Kanäle aufgelistet, die Sie betreten.

#### Server

Hier fügen Sie die Server hinzu, die Sie benutzen möchten. Schreiben Sie den Servernamen in das Textfeld und drücken Sie dann den Knopf "Server zur Liste hinzufügen". Wenn Sie einen Server entfernen möchten, drücken Sie "Server aus der Liste entfernen".

#### Kanäle (Channels)

Hier fügen Sie die Kanäle hinzu, die Sie benutzen möchten. Schreiben Sie den Kanalnamen in das Textfeld und drücken Sie dann den Knopf "Kanal zur Liste hinzufügen". Wenn Sie einen Kanal entfernen möchten, drücken Sie "Kanal aus der Liste entfernen".

### Die Karteikarte Automatisch verbinden

#### Automatische Verbindung einrichten

Hier stellen Sie die Server und Kanäle ein, mit denen Sie eine Verbindung direkt beim Start von KSirc wünschen.

Als erstes müssen Sie das untere Dialogfeld benutzen um einen neuen Server und Kanal hinzuzufügen. Geben Sie den Servernamen ein. Der voreingestellte Serverport ist für die meisten Server korrekt. Wenn Sie unsicher sind, lassen Sie die Einstellung so wie sie ist. Ebenso erfordern die meisten Server kein Passwort. Wenn Sie also kein Passwort haben, lassen Sie das Feld leer. Dann geben Sie einen Kanalnamen und drücken Hinzufügen. Nun wird der Kanal in der Liste angezeigt.

Wenn Sie mehr als einen Kanal pro Server hinzufügen möchten, klicken Sie auf den Server in der Liste und schreiben dann den gewünschten Kanalnamen in das Textfeld im unteren Dialog. Drücken Sie danach Aktualisieren/Hinzufügen.

Um einen Server aus der Liste zu entfernen, markieren Sie ihn zuerst und drücken danach auf Löschen.

### Die Karteikarte Schriftarten

Hier können Sie die Schriftarten für das Hauptfenster einstellen. Wählen Sie die gewünschte Schriftart und drücken Sie dann auf Ok oder Anwenden.

## Farben von &ksirc;

Das Farbschema von &ksirc; ist dem von &mirc; ähnlich. Es wurden einige geringe Modifikationen für eine bessere Anwendbarkeit vorgenommen.

    <fg> == Vordergrund
    <bg> == Hintergrund
    [] == Optional

### Kompatibilität zu &mirc;

Format:

- Der Befehl `0x03<fg>[,<bg>]` ändert die Farbe für den Vordergrund und den Hintergrund

- Der Befehl `0x03` stellt für diese Zeile auf die Standardeinstellung zurück

### &ksirc; Standard

Format:

- `˜<fg>[,<bg>]` ändert die Vordergrund- und Hintergrundfarbe

- `˜c` stellt auf Standardeinstellungen zurück

- `˜b` ändert das Schriftattribut in fett

- `˜u` ändert das Schriftattribut in unterstrichen

- `˜i` ändert das Schriftattribut in kursiv

- `˜r` ändert das Schriftattribut in invertiert

Warum verwendet &ksirc; das Zeichen ˜ an Stelle von 0x03 (&Ctrl;C)? Erstens ist es schwer 0x03 in Skripten zu verwenden und zweitens haben einige C-Funktionen Probleme damit. `˜Zeichen;` ermöglicht mehr Befehle, ohne Probleme mit zukünftigen Erweiterungen von &mirc; zu bekommen.

### Farbnummern

1. weiß

2. schwarz

3. blau

4. grün

5. rot

6. braun

7. violett

8. orange

9. gelb

10. hellgrün

11. rosa

12. hellrosa

13. hellblau

14. rosa

15. grau

16. hellgrau

### Sendet die Attribute fett, unterstrichen, invertiert und die Farbe

Mit den folgenden Tastenkürzeln kann man Steuerzeichen in den Text einfügen:

- &Ctrl;B für fett

- &Ctrl;U für unterstrichen

- &Ctrl;R für invertiert

- &Ctrl;K für farbig

- &Ctrl;O für Standard

### Beispiele

Unterstreichung eines einzelnen Wortes in einem Satz:

- Man tippt &Ctrl;U

- Tippe das Wort ein

- Tippe noch einmal &Ctrl;U

Nur der Text zwischen den Start- und Endezeichen wird verändert. Man kann diese Methode für alle anderen Steuerzeichen ebenfalls verwenden.

Das Steuerzeichen &Ctrl;K funktioniert etwas anders, da man hier noch eine Farbnummer angeben muss. Um beispielsweise ein einzelnes Wort einzufärben:

- Man tippt &Ctrl;K

- Nun tippt man eine Zahl zwischen 0 und 15

- Nun tippt man das Wort

- Schlileßlich tippt man noch einmal &Ctrl;K

Wenn man außerdem noch die Hintergrundfarbe eines Wortes verändern will, muss man zwei durch ein Komma getrennte Zahlen anstatt einer einzigen angeben. Die erste Zahl gibt die Textfarbe an, die zweite steht für die Hintergrundfarbe. Der Farbbereich reicht von 0 bis 15. Die Tabelle der Farben befindet sich im vorigen Abschnitt.

Ein Textabschnitt kann auch in mehrere Steuerzeichen eingeschlossen werden. Man kann also einen Textabschnitt fett, unterstrichen und farbig darstellen.

## Filter

### Filterregeln und ihre Erstellung

Falls man diese Anleitung nicht versteht, kann man auf den für die nächste Programmversion geplanten Filterassistenten warten. Das kann allerdings noch ein wenig dauern.

Der Filter versucht den Text in match zu finden und durch den Text in From und To zu ersetzen. Die Texte in diesen drei Feldern können jeweils reguläre Ausdrücke von Perl sein. Die Regeln werden in absteigender Reihenfolge ausgewertet. Die oberste Regel zuerst, dann die zweite Regel &etc; Alle Texte werden wie folgt ausgewertet:

`$Name` wird durch den Inhalt der Umgebungsvariable `Name` ersetzt. Diese Ersetzung wird allerdings bei der Eingabe der Regel bereits vorgenommen und später auch nicht mehr verändert. Damit ist diese Ersetzung vermutlich von geringem Wert.

`$$Name` wird beim Vergleich durch den Inhalt der Perl-Variable `$Name` ersetzt. Dabei kann es sich um Zeichenketten wie `$1`, `$2` oder normale Variablen handeln, die in sirc vorhanden sind (wie z. B. `$nick`, `$channel` &etc;).

`˜Name˜` genau einmal am Zeilenanfang sendet die Textzeile an das Fenster mit dem Titel Name. Falls das Fenster nicht existiert, wird der Text an das Fenster gesendet, das zuletzt den Fokus hatte. Es gibt einige Spezialfenster, deren Name von einem vorangestellten `!` eingeleitet wird.

`!default`

  Das aktuelle Fenster. Es existiert immer.

`!all`

  An jedes Fenster senden. Der Text erscheint eventuell nicht in allen Fenstern, da die angezeigten Texte von der Fensterart abhängen. Zum Beispiel zeigen Kanal-Fenster keine `/part`- oder `/quit`-Nachrichten, es sei denn der zugehörige Spitzname nimmt am Kanal teil.

`!discard`

  löscht den Text.

Der Rest des Textes wird wie ein normaler regulärer Ausdruck in Perl behandelt. Ein gutes Verständnis der Manualseite `perlre` ist von Vorteil, ein grundlegendes Verständnis von regex sollte man mindestens haben.

### Beispiele:

1. Um in jedem Text alle Vorkommen von kde durch KDE zu ersetzen

       Match: .*
       From: kde
       To: KDE

   Jeder Text wird untersucht und darin jedes Vorkommen von kde durch KDE ersetzt.

2. Gesucht ist jeder Text, der kde enthält. Dieser Text soll an das Fenster mit dem Namen kde gesendet werden

       Match: kde
       From: ˆ
       To: ˜kde˜

   Sucht nach dem Wort kde und ersetzt im Erfolgsfall den Textanfang (ˆ) durch ˜kde˜.

3. Obwohl das Beispiel funktioniert, erhält man für den Fall, das der Text bereits ein `˜wrgendein_Fenster˜` enthält, `˜kde˜˜irgendein_Fenster˜ ...`. Stattdessen kann man das Folgende tun:

       Match: kde
       From: ^(?:˜\S+˜)
       To: ˜kde˜

   Hier ist die "From"-Zeile ein wenig kompliziert. Sie bedeutet: suche 0 oder 1 Vorkommen von `˜\S+˜`. Das ist 1 Tilde, ein oder mehrere Zeichen und eine weitere Tilde. Der ganz Vorsichtige könnte stattdessen `(*:˜\S+˜)` verwenden, was &ksirc; veranlasst, nach 0 oder mehr Kanalbefehlen zu suchen, für den Fall, dass vorherige Regeln unkorrekt sind.

4. Kill-Nachrichten des Server sind meistens lang, häßlich und nervig. Eine grundlegende Nachricht auf dalnet sieht etwa folgendermaßen aus:

       *** 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)

   Wenn man die Option `+s` verwendet, erhält man Hunderte davon; sie huschen schnell über den Bildschirm. Man kann 3 Regeln erstellen, um diese Nachrichten Schritt für Schritt zu verarbeiten. Man kann auch mit weniger als 3 Regeln auskommen, aber dieses Beispiel eignet sich, um in mehreren Schritten zu zeigen, wie mit mehreren Regeln eine umfangreiche Nachricht analysiert wird. Im ersten Schritt wird der Pfad-Anteil entfernt:

       Match: ^\*\*\*.* KILL message for.*
       From:  Path: \S+
       To: .

   Match sucht nach einer Nachricht, die mit `***` beginnt. Den `*`-Zeichen muss jeweils `\` vorangestellt werden, da sie selbst als Sonderzeichen dienen und für 0 oder mehr Vorkommen des vorangestellten Textes stehen. `.*` passt auf beliebige Zeichen bis zum Text `KILL message for`. Damit kann man vermeiden, `-- Received ...` &etc; einzutippen. Das angehängte `.*` passt auf alle Zeichen bis zum Zeilenende (das ist aber soviel ich weiß überflüssig).

   Die From-Zeile bedeutet: ersetze " Path: " und alle Zeichen bis zum nächsten Zwischenraum (whitespace) durch To. To enthält lediglich `"."`, weshalb der gesamte Pfad durch einen einzelnen Punkt ersetzt wird.

   Die Nachricht hat nun folgendes Aussehen:

       *** Notice -- Received KILL message for BOBO!ANDY@line82-basel.datacomm.ch
       from NickServ. (NickServ Enforcement)

   Beachtenswert ist der neue `"."` hinter `NickServ`.

5. Damit ist die Nachricht bereits wesentlich klarer, aber KILLs von NickServ sind nicht so wichtig, also wollen wir die Nachricht an das Spezialfenster `!discard` weiterleiten.

       Match: ^\*\*\*.*KILL message.*\(NickServ Enforcement\)
       From: ^(?:˜\S+˜)
       To:  ˜!discard˜

   Die Match-Regel sucht nach der KILL-Nachricht und überprüft, ob sie von NichServ ist. Man beachte die Zeichen `\(` und `\)`. Beide Klammern haben in regulären Ausdrücken eine besondere Bedeutung, daher muss jeweils `\` vorangestellt werden. Das ist ähnlich zum vorletzten Beispiel.

6. Jetzt sind die Kills von NickServ herausgefiltert, aber das Lesen der Nachricht ist immer noch nicht einfach. Daher soll die Nachricht jetzt umorganisiert werden:

       *** [KILL] KILLER; killed KILLED; (REASON)

       Match: \*\*\*.*KILL message
       From: \*\*\*.*for (.*?) from (.*?)\. \((.*?)\).*
       To: *** [KILL] $$2 killed $$1 ($$3)

   Die Match-Regel such nach `***irgendetwas KILL message`. Wir können nicht `ˆ` verwenden, da wir gerade `˜<wenster>˜` an die Nachricht angehängt haben.

   Die From-Zeile wird interessant. Der Abschnitt `"for (.*?) "` sucht nach dem Wort "for" gefolgt von weiteren Zeichen. `.*?` sucht nach 0 oder mehr Zeichen mit Ausnahme eines Zeilenumbruches. Diese Suche stoppt, wenn die erste Bedingung für einen Abbruch gegeben ist. Mit anderen Worten passt die Zeichenkette auf alles bis zum nächsten Leerzeichen. Die umgebenden `()` sorgen für das Speichern des gefundenen Textes. Jedes Auftreten von () speichert die gefundene Zeichenkette in `$#`, wobei `#` bei 1 für die erste Teilzeichenkette beginnt &etc; Im Beispiel wird `$1` der Spitzname/Benutzername des "gekillten"Teilnehmers zugeordnet. `$2` enthält den Namen der killenden Person. Zwischen `()` haben wir den Grund. `(` und `\(` sind ein wenig verwirrend. Man muss bedenken, dass `\(` für das Zeichen `'('` steht.

7. Wie man das Leben farbiger gestaltet.

   Im nächsten Beispiel wird gezeigt, wie man ein wenig Farbe in &ksirc; bringen kann. Weitere Informationen zu Farben findet man im Abschnitt Farben. Im folgenden wird ein Filter vorgestellt, der den Spitznamen `<NICK>` in jeder Zeile hervorhebt:

       Match: ^(?:˜\S+˜)<\S+>
       From: <(\S+)>
       To: <˜4$$1˜c>

   Nimmt den Spitznamen und fügt die Farbe #4 zwischen `<>` hinzu. `˜c` löscht die Farbe wieder.

## Tastenkürzel

Liste der Tastenkürzel und Tastaturbefehle von &ksirc;.

Tastenkürzel

Tastenkürzel | Aktion
--- | ---
&Ctrl;N | Öffnet ein neues Kanal-/Abfrage-Fenster.
&Ctrl;Q | Beenden
&Ctrl;Enter | Eine Nachricht an die letzte Person schreiben, die eine Nachricht an micht gesendet hat
&Ctrl;&Shift;Enter | Eine Nachricht an die vorletzte Person beginnen, die eine Nachricht an micht gesendet hat
&Ctrl;K | Umschalten der Textfarbe (gefolgt von einer Zahl). Text nach dieser Eingabe wird in der gewünschten Farbe dargestellt.
&Ctrl;U | Textattribut unterstrichen ein-/ausschalten. Text nach der ersten Betätigung dieser Tastenkombination wird unterstrichen, bis man die Tastenkombination ein zweites Mal betätigt.
&Ctrl;I | Textattribut kursiv ein-/ausschalten. Text nach der ersten Betätigung wird kursiv gedruckt. Nach der zweiten wird das Attribut wieder ausgeschaltet.
&Ctrl;B | Textattribut fett ein-/ausschalten. Text nach der ersten Betätigung wird fett gedruckt. Nach der zweiten wird das Attribut wieder ausgeschaltet.
&Ctrl;R | Textattribut invertiert ein-/ausschalten. Text nach der ersten Betätigung wird invertiert gedruckt. Nach der zweiten wird das Attribut wieder ausgeschaltet.
TAB | Versucht, den Spitznamen einer Person aus dem angefangenen Wort zu komplettieren. Diese Funktion ist vermutlich von der Shell her bekannt, wenn die Funktionsweise dort auch nicht exakt gleich ist. Genaueres findet man unter .

## Tipps

### Den &kde;-Kanälen beitreten

Die &kde; &irc;-Kanäle werden im Freenode-Netzwerk gehostet. Benutzen Sie das Unterfenster Server/Kanal oder Automatisch verbinden unter KSirc einrichten um diese Kanäle hinzuzufügen. Das Netzwerk ist `irc.freenode.org` auf Port `6667`. Unten sind die wichtigsten &kde;-Kanäle und ihre Ziele aufgelistet. Wählen Sie die für Sie interessanten aus.

Sie können einige Tipps zum Stellen von Fragen in den &kde;-Kanälen im KDE-Wiki finden.

KDE IRC-Kanäle

Kanal | Ziel
--- | ---
#kde | Anwenderhilfe
#kde-devel | &kde;-Entwicklung
#kdevelop | Fragen zu KDevelop
#kontact | Fragen zu Kontact (&kmail;, &korganizer;, &knotes;, ...)
#amarok | Kanal zu amaroK: Anwenderfragen, Entwicklung
#debian-kde | Fragen zu KDE mit Debian
#kde-freebsd | Fragen zu KDE mit FreeBSD

### Automatisch identifizieren

Wenn Sie &irc; regelmäßig verwenden, werden Sie sich wahrscheinlich einen Spitznamen registrieren. Dadurch wird Ihr Spitzname geschützt und nur Sie können ihn verwenden. Im DALnet benutzen Sie nach dem Anmelden &irc;`/msg`nickserv register` PASSWORT`, wobei PASSWORT Ihr Passwort ist. Sie erhalten eine Bestätigung, dass der Spitzname registriert wurde.

Immer wenn Sie sich dann im DALnet anmelden, erhalten Sie eine Nachricht, dass Sie sich identifizieren sollen. Dann müssen Sie ``/msg nickserv identify PASSWORT`` eingeben.

&ksirc; kann Sie aber auch automatisch identifizieren wenn Sie sich anmelden. Sie müssen nur dieses einfach Perl-Skript in Ihrem Persönlichen Ordner platzieren:

Das folgende Skript funktioniert mit Freenode. Das Skript sollte als `.sircrc.pl` in Ihrem Persönlichen Ordner gespeichert werden. Wenn &ksirc; ausgeführt wird, werden Sie automatisch identifiziert.

    sub hook_nick_notice {
    my $n = shift;
    my $m = shift;

    if($who =~ /NickServ/){
    if($m =~ /If this is your nickname/){
    $silent = 1;
    &msg("nickserv", "identify XXXXXX");
    $silent = 0;
    }
    }
    }
    &addhook("notice", "nick_notice");   # join on the "end of MOTD" numeric

Ersetzen Sie XXXXXX mit Ihrem Passwort.

Das obige Skript funktioniert auch mit anderen Netzwerken als Freenode, wenn nickserv die Anfrage "identify" sendet. Aber in einigen Netzen wie z. B. Undernet benötigen Sie das folgende Skript:

    sub hook_connected {
    if($server =~ /undernet.org$/){
            &msg("X\@channels.undernet.org", "login IHR_NAME XXXX");
                    &docommand("umode +x");
    }
    }
    &addhook("255", "connected");   # join on the "end of MOTD" numeric

Ersetzen Sie bitte IHR_NAME mit Ihrem Anmelde-Namen und XXXXXX mit Ihrem Passwort.

Mehr über das Programmieren von SIRC finden Sie auf dieser Seite: http://www.iagora.com/~espel/sirc/PROGRAMMING.

## Mitwirkende und Lizenz

&ksirc; Copyright 1997-2002, die &ksirc; Entwickler.

Teile der Dokumentation Copyright 1997, &Andrew.Stanley-Jones;

Dokumentation aktualisiert für &kde; 3.0 von &Philip.Rodrigues; &Philip.Rodrigues.mail;

wurde geschrieben von &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;.

Deutsche Übersetzung Frank Schütte F.Schuette@t-online.de

&underFDL; &underGPL;

## Installation

### Wie bekommt man &ksirc;

&install.intro.documentation;

### Kompilation und Installation

&install.compile.documentation;
&documentation.index;