| Aliases erstellen
Okay, wir beginnen einfach mit einem simplen Beispiel. Um
einen Channel zu betreten, muß man normalerweise
/join #name
tippen... wobei #name der Channelname ist. Da dieser Befehl
sehr häufig verwendet wird, wäre es schön,
wenn man so wenig tippen muß wie möglich, oder?
Also machen wir das ganze etwas kürzer und machen ein
Alias.
Anstatt '/join #{name}' zu tippen, richten wir es so ein,
daß /j #{name} den selben Effekt erzielt. In diesem
Fall würde der entsprechende Eintrag so aussehen:
/j /join $1
(Was dies exakt für mIRC bedeutet, braucht Ihr an dieser
Stelle noch nicht zu verstehen. Zu der genauen Definition
der Syntax kommen wir in Kürze.)
Versucht es einfach, in dem Ihr diese Zeile in die Liste
in die Liste unter Tools/Aliases/ setzt (wenn sie nicht sogar
schon vorhanden ist). Dann versucht es aus der Editbox heraus
(die Eingabezeile, in der Ihr normalerweise tippt) mit einem
einfachen Befehl wie
/j #test
Ihr werdet feststellen, daß dies das selbe bewirkt
wie '/join #test' - es bringt Euch in den Channel #test. Diese
Konstruktion einer Abkürzung ist nun ein Alias.
Die Syntax von Aliasen.
Aliases verwenden das folgende Format:"/{Aliasname}
/{Befehl}"
Es wird also zuerst der Name der Abkürzung festgelegt
(wie z.B. '/j' im obenstehenden Beispiel), dann ein Freizeichen
und dann der eigentliche Befehl, auf den die Abkürzung
verweisen soll (im oberen Beispiel '/join $1').
Aliases verwenden eine Reihe von speziellen Strings (Strings
sind Standartvariablen, die veränderbare Werte enthalten
können - hier aber nicht mit den mIRC-internen Variablen
zu verwechseln) und Identifiers (ebenfalls Variablen, die
aber mIRC-intern bestimmte Werte enthalten - wie z.B. IP-Adressen,
die aktuelle Seite des Webbrowsers, usw. Später mehr
dazu). Es gibt mehrere Strings wie z.B. $1, $1-3, $$1, $?,
$!, #$1, #$$1 und #$?. Strings können jeglichen denkbaren
Wert enthalten, der angegeben wird, wenn das Alias aufgerufen
wird. Sie sind sehr flexibel einzusetzen. Identifiers funktionieren
ähnlich, enthalten aber immer einen bestimmten Wert.
Die wichtigsten Identifiers sind #, $me, $url, $fulldate,
$time und $day. Keine Sorge, wir gehen später auf dieses
Thema noch sehr viel genauer ein.
Laßt uns jetzt erst mal auf $1, den oben verwendeten
String konzentrieren.
/j /join $1
$1 bezeichnet das erste Wort, daß nach dem Alias -
wie immer es auch aussieht - eingegeben wurde. Wenn ihr also
/j #test eingebt, dann erkennt mIRC, daß es eine Abkürzung
für "/join #test" ist.
Mehrere Befehle in einem Alias
Nehmen wir nun an, man möchte mehrere Channels gleichzeitig
betreten. Auch hierfür kann man ein Alias erstellen.
Trennt nur die verschiedenen Befehle mit dem | Zeichen (auf
den meisten deutschen Tastaturen ist das die AltGr+Größer
als/Kleiner als-Taste neben dem Y) Das | Zeichen wird Pipe
genannt.
Gehen wir von einem Alias aus, bei dem man nur "/j3"
tippen muß, danach die Namen von drei Channels und man
würde sie zugleich betreten. Das entsprechende Alias
würde so aussehen:
/j3 /join $1 | /join $2 | /join $3
Nachdem man diese Zeile in die Liste unter Tools/Aliases
eingegeben hat, braucht man nur noch
/j3 #test1 #test2 #test3 einzugeben
und mIRC betritt einen Channel nach dem anderen. $2 und $3
sind das zweite und dritte Worte nach dem Aliasnamen.
Nun erwartet mIRC allerdings logischerweise drei Worte -
die Channelnamen. Was würde also passieren, wenn man
nur "/j3 #test" eingibt? mIRC würde über
die fehlenden Parameter stolpern, da es drei Eingaben erwartet.
Für dieses Problem gibt es eine Lösung: den $$1
String (den behandeln wir etwas später).
Beispiel: /say
Angenommen, es gibt einen Satz oder einen Kommentar, den
Ihr in Channels immer wieder gebraucht, wie z.B. Eure Homepage-Adresse,
eine Begrüßung oder was auch immer. Schaut Euch
mal diese Beispiele für Aliase an, die den /say-Befehl
verwenden. /say schreibt einfach nur Text in das aktuelle
Channel- oder Privatfenster.
/hallo /say Hallo Ihr!
/www /say Die mIRC-Page befindet sich auf http://metro.turnpike.net/mookies/mirc.html
/Zeilen /say Erste Zeile | /say Zweite Zeile | /say Dritte
und letzte Zeile
Das letzte Beispiel zeigt, wie man mehrere Textzeilen in
einem Alias zusammenfaßt. Die Befehle müssen lediglich
mit | voneinander abgegrenzt werden. Man sieht hier, daß
nicht zwangsläufig in jedem Alias ein String vorkommen
muß.
Beispiel: /me
Tätigkeiten beschrieben in einem Alias:
/lustig /me findet das lustig
/umarm /me umarmt $1 feste!!
Das zweite Beispiel verwendet einen String - $1. Wenn man
nun "/umarm alle" eingibt, ist das Ergebnis das
selbe wie bei "/me umarmt alle feste!!".
Von mehreren Befehlen verwendete Strings:
Verschiedene Befehle können innerhalb eines Alias ein
und den selben String verwenden.
/jtest /join $1 | /topic $1 Nur zum testen
In diesem Alias wird das Parameter $1 zweimal verwendet.
Die Eingabe von "/jtest #test" würde darin
resultieren, daß mIRC erst #test betritt und dann das
Topic in "Nur zum testen" ändert.
Ein ähnlicher Fall wäre:
/mag /say Ich mag $1 ! | Ich mag $1 wirklich gerne!!
Bei "/mag alle" wäre das Ergebnis "/say
Ich mag alle !" und dann "/say Ich mag alle wirklich
gerne!!"
Channel-Modus-Änderungen (Ops geben, etc.):
Um oft gebrauchte Channel-Modus-Änderungen in die Aliases
zu setzen, muß man zuerst die übliche Struktur
der Modus-Befehle kennen. Jemanden auf dem IRC Ops zu geben
funktioniert normalerweise so:
/mode {Channelname} +ooo {Nick1} {Nick2} {Nick3}
Bis zu 3 Nicks können aufgeführt werden. Das entsprechende
Alias sieht folgendermaßen aus:
/op /mode # +ooo $1 $2 $3
Um nun Hinz, Kunz und Otto Ops zu geben gibt man einfach
"/op Hinz Kunz Otto" ein. # ist ein Identifier und
und bezeichnet den #Channelnamen des Channels, auf dem das
Alias ausgelöst wurde. Auf die selbe Art und Weise kann
man andere Aliase zur Änderungen der Channel-Modi entwickeln:
/deop /mode # -ooo $1 $2 $3
/ban /mode # +b $1
/kick /kick # $1
/dbk /mode # -ooo $1 | /kick # $1 | /mode # +b $1
WICHTIG: Das korrekte Setzen von Freizeichen!
Dies ist sehr wichtig! Man muß zwischen Strings und
dem restlichen Text Freizeichen lassen!
Zum Beispiel:
/mag /say Ich mag $1!!!
...wird nicht funktionieren! Es muß zwischen "$1"
und "!!!" ein Freizeichen gelassen werden. (Das
kann den Text manchmal komisch aussehen lassen, also achtet
darauf, wie Ihr die Sätze aufbaut)
/mag /say ich mag $1 !!!
...wird funktionieren.
Dies gilt für alle Strings. Um eine Funktion zu vereinfachen
wurden ein paar Strings erstellt, die den erfaßten Parametern
automatisch ein # voranstellen. Dies gilt für #$1, #$$1,
und #$?. Details hierzu werden später behandelt.
In einigen Fällen funktioniert: /gut /say Mir gefällt
$1's Topic
Aber wie gesagt - nur in einigen. Ihr müßt das
für jeden Fall testen.
Wo kann man Aliase benutzen?
Aliase können von der Editbox (die Zeile in die man
normalerweise Text und Befehle eingibt) aus, aber auch aus
den PopUps und Remotes aus aufgerufen werden. Darauf wird
in den folgenden Abschnitten noch eingegangen. Die von der
durch die Funktionstasten aufgerufenen Aliase können
auch auf in der Nicknamenliste ausgewählte Nicks bzw.
den Namen des Privatfensters (Query-Fensters) bezogen werden...
abhängig von der Aliasdefinition. Es ist sogar möglich,
ein Alias durch ein anderes aufzurufen - mit einer Ausname:
Aliase dürfen sich nicht selbst aufrufen! Ein Alias,
daß ein anderes aufruft braucht allerdings eine Menge
Speicher. Es kann also Probleme geben, wenn wenig Arbeitsspeicher
zur Verfügung steht. Wenn eine solche Operation in einer
Endlosschleife endet, kann man jedoch immer noch die Tastenkombination
Strg+Pause verwenden, um den Prozeß abzubrechen.
Spezielle Alias-Definitionen: Die Funktionstasten.
Spezielle Alias-Bezeichnungen machen es möglich, Aliase
über die Funktionstasten aufzurufen.
Nennt die sie einfach wie folgt:
/f1 /say Hallihallo!!
/f2 /topic # Dies ist ein neues Topic
Man kann nun "/f1" eingeben, um auf einem Channel
"Hallihallo" zu sagen, aber es reicht auch, die
F1-Taste zu drücken. Andere Beispiele:
/f5 /me sendet Dir gerne das neue mIRC
/f6 /join #mIRC
/f9 /dcc send $1 c:\serve\mircfq31.zip
/f10 /dcc send $1 c:\serve\mirc50s.exe
/f11 /dcc send $1
Die F9-Taste wird die mIRC-Datei der in der Nicknamen-List
ausgewählten Person senden. Nicht vergessen, vorher einen
Nick auszuwählen, oder es werden merkwürdige aber
logische Dinge passieren. Die F9-Taste kann auch in einem
Privat- oder DCC Chat-Fenster verwendet werden. Bei Betätigung
der F11-Taste wird zuerst nach einem Nick gefragt, dem die
Datei gesendet werden soll.
Es gibt viele Möglichkeiten, die eigenen F-Tasten so
zu gestalten wie man möchte - viel Spaß dabei!
Ebenfalls ist es möglich, die Strg- und Umschalttaste
mit einzubeziehen:
/f1 /say Dies ist die F1-Taste
/sf1 /say Dies ist Umschalttaste-F1
/cf1 /say Dies ist Strg-F1
Die Verwendung von Klammern:
Man kann in Aliases auch [ und ] Klammern verwenden um die
Reihenfolge der Bearbeitung von Identifiers festzulegen -
wie auch in PopUps und Remotes. Identifiers, die in Klammern
stehen werden zuerst bearbeitet, und zwar von links nach rechts.
Man kann Klammern auch einbetten um bestimmte Bearbeitungsreihenfolgen
festzulegen. Die Klammern erscheinen nicht im resultierenden
Text. Beispiele:
/note /notice $1 " $+ [ $read [ -s + [ $2 ] ] c:\text\note.txt
] $+ "
/sayvar /say % [ $+ [ $1 ] ]
Definitionen ohne Klammern werden wie üblich behandelt.
Aliase in Scripts
Man kann zu den existierenden Alias-Dateien ohne Probleme
erweiternde hinzufügen indem man im Alias-Editor (Tools/Aliases)
File/Load wählt. Man kann nun auf einfache Art und Weise
eine Datei auswählen. Mit View kann man sich alle geladenen
Dateien anschauen. So kann man auf einfache Weise Aliase von
Freunden ausprobieren oder die eigenen zur Verfügung
stellen. Aliases können sogar mit Remote Commands und
Events in eine Datei zusammengefaßt werden und als komplette
Script-Datei in Umlauf gebracht werden. Wir gehen später
darauf ein. |