Programování mIRC III. – Vytváření aliasů

OK, pojďme začít snadným příkladem. K příchodu do kanálu normálně píšete:

/join #{jméno}

…kde #{jméno} je jméno kanálu, samozřejmě. Protože je tento příkaz používan často, bylo by pěkné používat jej
co nejkratším psaním, že? Tak vytvoříme alias pro „/join #{jméno}“ — pojďme vytvořit zkratku.

Namísto psaní „/join #{jméno}“, uděláme, že bude stačit psát „/j #{jméno}“ se stejnými výsledky.

V tomto případě alias bude:

/j /join $1

(Nemusíte nyní pochopit, co to znamená pro mIRC, jen co to dělá. Vysvětlíme syntaxi aliasu stručně.)

Zkuste umístit řádek „/j /join $1“ v seznamu aliasů v Nástroje/Aliasy (pokud tam již není).
Pak zkuste v příkazovém řádku (kde normálně píšete) a jednoduše napište příkaz jako třeba:

„/j #test“.

Vidíte, že „/j #test“ nyní provede stejnou věc jako „/join #test“ — přijdete do kanálu #test.
Tato konstrukce se nazývá alias.

Syntaxe aliasu.

Aliasy používají následující formát: „/{jméno_aliasu} /{příkaz}“

Jinými slovy, nejdříve vaše „zkratka“ jména (jako třeba „/j“ v příkladu nahoře), pak mezera a pak zvolený příkaz,
na nějž tato zkratka ukazuje (jako třeba „/join“ v příkladu nahoře).

Ale zde nekončíme. Aliasy také používají mnoho speciálních STRINGŮ. Jsou tři předdefinované stringy
(#, $me a $! ), které vždy znamenají stejnou věc pro mIRC (nové předdefinované stringy jsou $read [-l#] <soubor.txt>
a $url …. Popovídáme si o nich později.) a potom několik proměnných stringů (jako třeba $1, $3-5, $$1, $?, #$1, #$$1, a dokonce #$?).

Nemějte obavy, vysvětlíme si je později.

Fajn, pojďme se sousředit na $1. Je to string, který jsme použili v našem příkladě výše:

/j /join $1

$1 znamená „první slovo napsané za aliasem,které tam může býte.“ Takže když napíšete „/j #test“, mIRC ví že to je
zkratka pro „/join #test“. Pokud napíšete „/j #hello“, ví že to je zkratka pro „/join #hello“.

Příklad: Více příkazů najednou

Nyní řekněme že chcete přijít do několika kanálů najednou. Můžete pro toto vytvořit alias. Prostě oddělte
příkazy znakem | (na mnoha klávesnicích to je Shift + )…

Řekněme že chcete napsat „/j3“ a pak následovat jmény třech kanálů a pak přijít do všech najednou.
Alias pak bude:

/j3 /join $1 | /join $2 | /join $3

Takže když umístíte alias v Nástroje/Aliasy a pak napíšete:

/j3 #test1 #test2 #test3

…mIRC provede „/join #test1“, pak „/join #test2“ a nakonec „/join #test3“.

V tomto případě vidíte, že $1 znamená první slovo napsané za aliasem. A $2 samozřejmě znamená druhé slovo
a $3 třetí.

Nyní mIRC očekává po aliasu tři slova — vaše jména kanálů. Ale co se stane, když napíšete jen
„/j3 #test1“? mIRC vás upozorní na chybějící parametry, protože musíte zadat více kanálů.
Existuje řešení tohoto problému, pomocí stringu $$1, který bude vysvětlen později.)

Příklad: /say

Pojďme vytvořit alias pro nějaký text, který chcete často psát v kanále, třeba adresu vaší
domovské stránky, pozdrav, atd.

Podívejme se na tyto příklady aliasů a použijme příkaz „/say“: „/say“ jednoduše napíše text do vašeho zvoleného kanálu
nebo do soukromého okna.

/nazdar /say Nazdar všichni…



/www /say Moje stánka o mIRC je na http://www.mirc.cz/

/radky /say Tohle je první řádek | /say Tohle je druhý řádek | /say Tohle je poslední řádek

Poslední příklady vám ukazují jak udělat pomocí /say více řádků textu v jednom aliasu. Jen oddělte příkazy znakem
|. Také vidíte, že ne všechny aliasy obsahují Stringy.

Příklad: /me

Akce v aliasu…

/legrace /me myslí, že to je legrace!

/pozdrav /me zdraví $1 z dovolené!

Druhý příklad používá string $1. Pokud napíšete „/pozdrav všechny“, je to stejné jako „/me zdraví všechny z dovolené!“

Příklad: Sdílené stringy

Více příkazů najednou může také sdílet stejný string.

/jtest /join $1 | /topic $1 jen testuji

V této definici aliasu je parametr $1 použit dvakrát. Pokud napíšete „/jtest #test“, nejdříve přijdete do kanálu #test
a pak se změní téma kanálu na „jen testuji“

Další příklad:

/love /say Mám rád $1 ! | /say Opravdu mám rád $1 !!

Pokud napíšete „/love všechny“, mIRC provede „/say Mám rád všechny !“ a pak „/say Opravdu mám rád všechny !!“

Příklad: Změny módů (Opování atd.)

K umístění často používaných změn módů v sekci aliasů nejdříve potřebujte znát normální strukturu příkazů
pro změnu módů. Opování někoho na IRC normálně potřebuje příkaz:

/mode #{jméno_kanálu} +ooo {přezdívka1} {přezdívka2} {přezdívka3}

…kde jsou myšleny 3 osoby.

To se dá pěkně do aliasu:

/op /mode # +ooo $1 $2 $3

K opnutí Pepy, Franty a Mirka, nyní můžete napsat: „/op Pepa Franta Mirek“

Znak # v tomto aliasu ukazuje použití jednoho z dalších předdefinovaných stringů (# a $!). Znak # vždy
znamená #jméno_kanálu ve kterém je daný alias použit….

Stejným způsobem můžete udělat alias třeba…

/deop /mode # -ooo $1 $2 $3

/ban /mode # +b $1

/kick /kick # $1

/dbk /mode # -o $1 | /kick # $1 | /mode # +b $1

DŮLEŽITÉ: Správné oddělování mezerami!

To je velmi důležité! MUSÍTE vkládat mezery mezi stringy a zbytek vašeho textu! Například:

/like /say Opravdu mám rád $1!!!

…NEBUDE fungovat! Zde je potřeba umístit mezeru mezi string „$1“ a vaše „!!!“.

/like /say Opravdu mám rád $1 !!!

…BUDE fungovat dobře.

To platí pro VŠECHNY stringy. Pro zjednodušení některých případů určování kanálů bylo vytvořeno několik stringů,
které automaticky označí parametr znakem #. Jsou to #$1, #$$1, a #$?.
Podívejte se níže pro podrobnosti.

V NĚKTERÝCH případech MŮŽETE použít: /like /say Opravdu mám rád $1’s téma,

ale pamatujte: NE VŽDY !! Musíte to ve všech případech testovat před použitím…

Kde můžete využít aliasy?

Aliasy mohou být použity v příkazovém řádku (řádek nebo řádky kde normálně píšete příkazy),
a můžete dokonce použít aliasy v menu a dálkových sekcích, což je vysvětleno v následujících sekcích.
Funkční klávesy a aliasy mohou být také použity na vybrané přezdívky v seznamu v kanále a v query oknech,
atd….záleží na vašich vlastních definicích aliasů.
Je dokonce umožněno aliasům volat jiné aliasy, nebo dokonce volat se rekurzívně.
Jako ochrana proti nekonečným smyčkám je nastavena maximální hloubka rekurze na 5. Ta může být
změněna příkazem /maxdepth. Minimální hlubka je 1 (aliasy nemohou volat jiné aliasy)
a maximální je 100. Volání aliasů z aliasů používá dost paměti a může způsobit problémy v některých situacích
s nedostatkem paměti atd.
V případě, že se vaše aliasy nebo dálkové skripty zacyklí, použijte kombinaci kláves CTRL+Break k zastavení procesu.

Speciální definice aliasů ; Funkční klávesy.

Speciální definice aliasů je možná, když použijete ke spuštění příkazů Funkční klávesy. Definujme některé aliasy:

/f1 /say Nazdar všichni


/f2 /topic # To je nové téma

Můžete napsat „/f1“ k pozdravu v kanále … ale stisknutím „F1“ to bude fungovat také !! Ostatní příklady:

/f5 /me ti rád pošle nové mIRC.

/f6 /join #mirc

/f9 /dcc send $1 c:servemircfq44.zip

/f10 /dcc send $1 c:servemirc58t.exe

/f11 /dcc send $1

Klávesa F9 pošle soubor mircfq44.zip osobě vybrané ze seznamu lidí v kanále. Nezapomeňte nejdříve vybrat přezdívku !
Pokud to neuděláte, uvidíte divné (ale logické) věci… Můžete dokonce použít klávesu F9 key v soukromém, Query nebo DCC Chat
okně s touto definicí aliasu !

Klávesa F11 potřebuje přezdívku které má poslat soubor…

Tak…. vymyslete si své vlastní použití kláves F1-F12 ….. příjemnou zábavu ! Můžete také použít kombinace
-shift- a -ctrl- s klávesami F1-F12. Zkusme definovat aliasy jako třeba :

/f1 /say Použita klávesa F1


/sf1 /say Použita kombinace Shift+F1

/cf1 /say Použita kombinace CTRL+F1

Použití výpočtových závorek.

Můžete použít [ a ] výpočtové závorky v aliasech k ovládání postupu výpočtu identifikátorů.
Závorky mohou být použity i v menu a dálkových. Identifikátory bez závorek jsou vypočteny nejdříve,
zleva doprava. Můžete také pochopitelně vnořovat závorky. To vám umožní vypočítat věci v jakém chcete pořadí…
Závorky se nezobrazí ve výstupech textu nebo příkazů. Příklady jsou :

/note /notice $1 “ $+ [ $read [ -s + [ $2 ] ] c: extpoznámka.txt ] $+ “

/sayvar /say % [ $+ [ $1 ] ]

Definice bez výpočtových závorek jsou vypočteny stejným způsobem jako předchozí.

Aliasy ve skriptech.

Můžete snadno načíst další soubory aliasů do mIRC k jednomu, který už máte.
Spusťte editor aliasů (Nástroje/Aliasy/) a jděte do Soubor/Načíst/. Je snadné vybrat soubor s aliasy.
Vyberte ‚Náhled‘ k prohlédnutí všech načtených souborů aliasů. To je velmi snadný způsob k vyzkoušení aliasů
vytvořených vašimi přáteli a vytváření vlastních souborů aliasů pro vaše přátele. Aliasy mohou být obsaženy
dokonce v kompletním souboru skriptu a distribuovány s Dálkovými příkazy a Akcemi. Vysvětlíme si to později.