精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>网络专区>>● ADSL>>
〓 宽 带 基 础 技 术 〓
>>转载:不错的irc教程2

主题:转载:不错的irc教程2
发信人: boy2mantest(boy2man)
整理人: gzcsl(2002-12-20 23:24:18), 站内信件
MIRC的基本用法(2)

六:详细介绍MIRC菜单:
先介绍MIRC的Options菜单,您点File...Options,将弹出一个窗口,下面,我将对每一个选项卡进 行介绍。
Sound选项卡: 
Accept sound requersts复选框,将这个框打勾,您将听到别人用/sound命令,播放的声音文件,/sound的命令的详细说明,请看第五节。也可以用/sound on 命令,将这个复选框打勾,/sound off则反之。
Igonre if a sound is currently playing复选框,将这个复选框打勾后,如果/sound命令指定播放的文件正在播放,那么当前/sound命令将别忽略.
Warn if sound dosen't exist复选框,将这个框打勾后,如果发现需要播放的文件不存在,mirc将提醒您。
Listen for !nick file get requests复选框,这个框打勾后,如果有人打
!您的名字 声音文件.wav ,那么您的mirc将自动在您设置的目录下面查找那个声音文件,如果找到将自动dcc send给对方.比如您叫Eros,有人打!Eros yabba.wav,您的MIRC将自动在存放声音文件的目录下去找yabba.wav ,如找到,将自动send给请求的一方。
Send !nick file as private message复选框,将这个复选框打勾后,您发送声音文件的信息就只有接收人看的到,反之,房间里的所有人就能看到。
Location of wave/midi files 选项用来指定您的声音目录,比如你指定的声音目录是c:\mirc\sounds,那么当您打/sound 声音文件时,mirc将在c:\mirc\sounds底下寻找,别人用/sound命令时,您的mirc同样还是在这个目录底下寻找。如果找不到,mirc将提示需要播放的声音文件不存在。
另外,我再对/sound命令补充一下,您还可以这样用/sound命令:
/sound haha.wav 大笑几声。这个命令等同于:/me 大笑几声 ,/sound haha.wav 

 

IRC Switches选项卡:
Prefix own messages复选框,这个框打勾后,您每说一句话,前面都会有您的名字,就
象这样:大家好。
Iconify query window复选框,这个复选框打勾后,别人给你的小窗对话,将以/msg 的方式传过来。
Whois on query复选框,这个复选框打勾以后,每当别人和你开小窗,您的MIRC将自动用/whois 命令查看他的信息。
Auto-join on invite复选框,自动加入您被邀请去的房间。
Rejoin channel when kicked复选框,自动从新加入您被踢出去的房间。
Cancel away on keypress复选框,将其打勾后,如果您打了/away 信息,那么您如果在大窗或者小窗说了话,/away信息将自动取消。
Timestamp events复选框 ,复选后,所说的话前面都有一个时间记号。0
Skip MOTD on connect复选框,连接是跳过motd信息。
Show Alternate Join/Part/Quit复选框,显示更为紧凑的join /part/qiut信息。
Show user adresses复选框,每当别人加入,离开,被踢,您都可以看到他的地址信息
Show invites in active window复选框,使invite信息在你当前窗口出现。
Show modes in channel复选框,房间的更改设置信息显示。
Show topics in channel复选框,让您每次进房间的时候,都看到topic信息。
Strip Codes允许您忽略Bold, Underline, Reverse, and Colour信息。
飞影决定:不能在这样细的说明这些菜单了,我........受不了了,请大家原谅。如果您愿意帮帮我,请补足我没有写完的地方,对不起了。 
Notify List选项卡
这个选项卡很有用,您琢磨琢磨,不是有add del 这些按钮吗?把你需要注意的人的nickname加进去,那么,在notify list里的人,连接,或者离开,您都会知道。当然您也可以用/notify命令来完成这个工作,notify命令前面讲过了,这儿就不重复了。
飞影决定:挑几个有用的选项卡讲一讲,其他的请大家自己琢磨琢磨。
Control选项卡:这个有ignore list ,auto-op list , protect list ,
ignore前面讲过了,这儿不在重复了,您如果希望把某个mask从ignore list删除就把它拉蓝,然后按del,就可以了。
auto-op list ,您可以把您希望的mask加进去,可以自动给帽子。
protect list, 保护名单,如果有人踢了或者ban了您的受保护人,您会自动报复对方。
注意:如果希望这些功能生效,别忘了把active复选框打勾。 


Logging选项卡:保存对话。您可以选择是保存大窗的对话,还是保存小窗的,保存在那个目录下等等。


Flood选项卡:您可以在这儿设置flood保护,如果有人发送的信息超过您设置的flood值,将自动ignore他。
Click选项卡:您可以在这儿设置双击鼠标会产生什么动作。比如双击大窗就执行/channel命令,双击小窗就执行/whois 命令,您都可以在这儿设置。

对不起了,菜单到此为止,希望您能帮我写完。 


下面,我将介绍mirc最诱人的地方, Aliases, Popups, & Remote 

七: Aliases, Popups, & Remote 

我首先要申明的是:我接触script的时间也不长,只编写过一些简单的script,下面的文字可能会有某些错误,请大家指正。
其次:您必须阅读了前面介绍的一些Mirc基本命令以后,才可以阅读下面的文章。
Mirc提供了一种语言,用来编写可供Mirc使用代码,代码文件就是一般的文本文件,不需要链接和编译,直接在Mirc中一个叫mIRC Editor的窗口中调入,Mirc会自动执行,并且可以通过一些命令来控制程序的运行。我们把这样的代码文件称为"script"。
Script文件分三类,一:Aliases 二:Popus 三:Remote
下面我将分类介绍script的编写方法。

Aliases:Aliases的中文意思是别名,Mirc提供了这一功能,能让用户更快更直接的执行一些Mirc命令。下面我将具体介绍Aliases。
Aliases的编辑是在一个叫Mirc Eidtor的窗口进行的,您可以在这里编写您自己的aliases命令。点Tools...Aliases,或者把Alt按住再按A键,可以呼出Mirc Editor窗口。在这儿您很可能看到Mirc自带的一个Aliases比如:/op /mode # +ooo $$1 $2 $3 ,这一条Aliases的意思是,如果打/op Cupid meimei Eros ,那么就在当前房间执行 /mode # +ooo Cupid meimei Eros 命令,# 的意思就是当前的channel,在Mirc里象#这样的符号,叫做标识符,我会专门分出一节来详细介绍Mirc的标识符,在这一节,我只简单的介绍几个常用的标识符?再举个例子:/j /join #meimei ,那么你一打/j 你的Mirc就自动自行/join #meimei命令。Mirc常用标识符:
# 表示当前的房间。 
$1 这个标识符记录你在Aliases命令行中提供的第一个参数。比如这样一条Aliases命令。 /ws /me 紧紧的握着 $1 的手。那么你打/ws Cupid ,Mirc就自动执行/me 紧紧握着 Cupid的手。 $1记录了你提供的第一个参数,也就是Cupid这个参数。注意:$1的前后都要空格。再打个比方:这样一条,aliases ,/j /join $1 ,那么如果你打/j #meimei ,mirc就执行/join #meimei命令。$1记录了你提供的第一个参数"#meimei"
$2 用样的道理,$2记录你提供的第二个参数。比如这样一条Aliases:
/slap /me 拿起 $1 狠狠的向 $2 打去。如果你打/slap 大铁球 Cupid ,那么Mirc就执行/me 拿起 大铁球 狠狠的象 Cupid 打去,$1记录了你提供的第一个字符"大铁球",$2记录了你提供的第二个字符"Cupid",以此类推,$3 $4 $5 $6......都是这样用。

$? 用这个标识符,会弹出一个对话框,S?会记录你在对话框中写下的参数。
比如:/j /join #$? ,那么你打/j 以后,Mirc会出来一个对话框,$1会记录你在对话框中所填的字符,比如你填#meimei ,然后按回车,或者点OK按钮,Mirc就执行/join #meimei命令。$?的功能就是提供一个对话框,然后记录你所填的字符。你也可以指定对话框的title,比如象这样:
/j /join #$?="你希望假如哪个房间?" ,这样就可以改变对话框的title,使用起来更方便。
$! 标识符,这个标识符记录第二次使用前面你在$?对话框中的字符,比如:
/aw /away $?="Enter away message:" | /say $! $?记录了您在对话框中填的参数,而您第二次要用到对话框中参数的时候,就不能再用$?了,必须用$! ,就是这样。
$$1标识符,这个标识符和$1的作用差不多,记录您提供的第一个参数,区别在于如果你用了$$1,就必须用上另一个标识符$$2,打个比方:/slap /me拿起 $$1狠狠的象 $$2打去。那么如果您打/slap Cupid,Mirc将不执行/slap这个aliases命令,因为您只提供了一个参数。
您必须打/slap Cupid大铁球 ,这个aliases命令才可以执行,而/slap /me 拿起 $1狠狠的象 $2打去。这个命令用的是$1和$2标识符,您只提供一个参数aliases命令也可以执行。
$1- 这个标识符记录您提供的一切字符,比如 /op /mode # +oooo $1- ,您可以打
/op Cupid meimei Eros Styx,$1-记录了您提供的四个参数,Cupid meimei Eros Styx ,在当前房间给这四个人加帽子。再来看这样一个aliases命令:/abuse /me狠狠对着 $1骂到:你这个 $2- !,那么您打
/abuse Cupid猪 混蛋 畜生 异型 ,Mirc就执行/me狠狠对Cupid骂到:你这个 猪 畜生 混蛋 异型 ! $1记录了您提供的第一参数Cupid ,$2记录了后面所有您提供的参数:猪,畜生,混蛋,异型。不过,Cupid可是好人哟,您可别真的骂他:)
在这儿我再次提醒您:标识符前后都要空格!一定要空格!
$+ 这个标识符用来把字符连接起来。比如:/hi /say Hel $+ lo th $+ ere $+ !
那么打/hi Mirc就自动执行/say hello there! ,$+把字符都连起来啦!这个标识符可以让您的aliases命令打出来的信息没有空格,比如:/hold /me温柔的拥抱着 $+ $1 ,这样一来您打出来的东东就没有空格了,好酷哟:)
说句题外话,如果您想用aliases一次执行多个命令就用 | 这个分隔符。比如:
/kb /kick # $1 | /mode # +b $1 ,那么打/kb Cupid Mirc就会先把Cupid从当前房间踢出去,紧接着ban了Cupid。
好了,常用标识符就介绍到这儿,下面会有专门一节来详细讲叙Mirc的标识符。
为了让您能够更好的利用aliases,我简单介绍一下Mirc中变量的概念和一些有关变量的简单命令,我不会很详细的介绍Mirc变量,以后会有一节来专门讲叙Mirc怎样处理变量。
所谓变量,就是可以赋值的量。如果您有一些编写程序方面的知识有所了解的话,会很容易理解变量这个概念。Mirc中的变量定义规则和其它的语言中的变量差不多。
Mirc中的变量都是以%号开头,比如:%x, %y,%number等等。到底怎么样来给变量设值呢,Mirc提供了一些命令。具体操作如下:
/set变量名 值 ,比如要把hello赋值给%x变量,就打/set %x hello,/set命令还提供了一个参数u,如果您打/set -u5 %x hello,那么mirc把hello赋值给变量%x,并在5秒钟后自动取消%x的赋值,也就是说,%x不再等于hello。
/unset变量名 ,取消给变量的赋值。比如:/unset %x,这样就取消了对%x的赋值,%x不再等于hello了。通配符*在/unset命令中有效,比如:/unset %test* ,这条命令将取消对所有以test开头的变量的赋值。如果需要取消所有变量的赋值,打/unsetall就行啦。
好了,变量现在就讲这么多,下面几节我会详细介绍。
让我们回到Aliases来,在aliases中怎么运用变量呢?用中括号 [ ] ,具体是这样操作的,我举个例子:您设置一个变量%x,/set %x hello ,如果希望在aliases命令中调用这个变量,必须用到中括号 :/hi /say [ %x ] ,记住,括号和%x之间一定要空格。再举个例子:
/test /say % [ $+ [ $1 ] ] ,来看看这条命令,如果您打/text x,那么/say % [ $+ [ $1 ] ]返回的值就是%x,为什么要用到$+标识符呢,这是因为%和变量名之间是不允许用空格的,所以必须用$+把%和变量名(x)连起来,为什么要用到中括号呢?因为在aliases中调用的变量必须用中括号 [ ] 括起来。
这就是如何在aliases中调用变量,下面我讲一下大括号{ }的用法。
前面讲过,如果想执行多条命令的话,命令与命令之间用 | 号分开,比如:
/kb /kick # $1 | /mode # +b $1 ,aliases提供了另一种方法来处理这种多行命令,那就是使用大括号 { } 。下面我把/kb这条aliases命令改成用大括号的格式:
/kb {
/kick # $1
/mode # $1 +b
}
这一个aliases命令和前面一个用 | 的aliases命令是等效的。用大括号 { }能是代码更清晰,更有条理化,更加美观。再举个例子:
/poem {
/msg $1 A horse is a horse..
/msg $1 A duck is a duck..
}
如果您打/poem Cupid,Mirc将执行/msg cupid A horse is a horse和/msg cupid A duck is a duck这两条命令,当然,您用 | 号也可以:/poem / msg $1 A house is.... | /msg $1 A duck..
另外,scripts还带几个语句,下面我将一一介绍:
if then else语句:这个语句用于比较值的不同,从而执行不同的代码。基本格式是这样:
if (值1运算符 值2) {命令}
elseif (值1运算符 值2) {命令}
else {命令}
小括号( )用于把需要比较的值括起来,大括号{ }用于把命令括起来。括号一定要对称,不要有正括号没有反括号。另外,if elseif else语句可以嵌套使用。举个例子:
/number {
if ($1 == 1) echo The number ONE 
elseif ($1 == 2) echo The number TWO
else echo Unknown number!
}
把这些代码加到你的aliases中,打/number数字,这一段代码就开始运行。注意:==运算符,(两个=号)这个运算符的意思是"等于",如果你输入的数字等于1,那么执行/echo the number one,如果输入的数字等于2,则执行/echo the number two,如果是其它情况,则执行/echo unknown number! ,echo并没有用大括号括起来,这是允许的,当然,把echo命令括起来也可以。象==这样符号,我们称之为运算符。Mirc有以下运算符:
== 等于
!= 不等于
< 小于
> 大于
>= 大于等于
<= 小于等于
以上是数值操作符,还有三个数值操作符,我也搞不清楚是什么意思,如果我弄懂了下面会讲到的,如果您知道,请务必帮我加上去。
还有一些其它操作符,呆会儿会讲到的。
另外有一个go to语句。例子:
/number {
if ($1 == 1) goto one ;如果给出的参数等于one,就跳到 ne去执行。
elseif ($1 == 2) goto two ;如果给出的参数等于two,就跳到:two去执行。
else goto unknown ;如果给出的参数不符合以上两种情况,就跳到:unknown去执行。
ne ;注意:one前面有个 : 号
echo The number ONE ;echo命令。
halt ;halt命令用于强制停止代码的运行。
:two
echo The number TWO
halt
:unknown
echo Unknown number!
halt
}
在echo命令前我没有用到 / 提示符,这是因为只有在输入时需要让Mirc知道这是一条命令是才需要用到 / 提示符,而在script中 / 提示符是不需要的。;号是script的注释符,如果您害怕会忘记某一行script是什么意思,可以在这一行后面加个;号,Mirc解释代码的时候会自动跳国 ; 号后面的东西。
用aliases还可以定义功能键。例如:
/F1 /say Hello! 定义F1键,按一下F1键,Mirc就执行/say Hello命令。
/sF2 /query $1 定义shift+F2,把shift按住,再按F2,就执行/query命令,这 个时候$1就是您当前点亮的nickname。
/cF3 /ctcp $1 version 定义ctrl+F3键,把ctrl按住,再按F3,Mirc就执行/ctcp命 
令,$1是您当前点亮的nickname。
s和c就是用来定义shift和ctrl键的。
/ 是Mirc默认的命令提示符,另外还有这样一个命令提示符:// 两个/ ,呵呵,那么两个/ 和一个 / 有什么分别呢?举个例子吧:
/say我现在在 # 
# 是个标识符,返回值是当前的房间的名字,这个前面已经讲过了。怎么样才能在命令中用上标识符呢?
/say我现在在 # 里面。
这样可以吗?答案是:不行。如何才能让标识符生效呢?您必须用到 // 这个命令提示符。 //say我现在在 # 里面。 象这样就可以了。
还有一个 /. 命令提示符,如果用这个提示符,Mirc不会返回一些执行过程中的信息。比如你打/ignore Cupid,在status窗口您会看到这样的信息:*** Added Cupid!*@* to ignore list,如果您不希望看到这样的提示信息,就打/.ignore Cupid,在 / 后面加个 . 就可以了。
恩.....让我想想,aliases还有些什么东西没讲到,对了!有一点我没有讲的很清楚。那就是在哪儿编aliases,呵呵,讲了这么多怎么编,可是没讲编好了往哪儿放。
就是在mIRC Editor窗口,按住alt键,在按a键,可以呼出这个窗口,或者点菜单Tools底下的Aliases,也可以呼住这个窗口,另外,您的aliases代码可以些在一个纯文本文件里面。
后缀名为ini。另外你也可以运行别人编好的aliases代码文件。比如有这样一个aliases文件:Cupid.ini ,您呼出mIRC Editor窗口后,点这个窗口的File菜单下的load子菜单,然后选中这个文件,最后点File菜单下save子菜单就可以了。或者用load命令:
打/load -a 盘符:\目录\文件名 ,即可。例如:/load -a c:\mirc\aliases.ini
最后,我再次提醒您注意:标识符前后一定要空格!
好了,aliases就在这儿告一段落。以后结合实例再来详细讲解aliases。
下面开始讲popus。


Popups
Mirc允许你自己定义弹出式菜单,在小窗,房间,dcc和channel的窗口都可以。
Mirc一般都自带了一个popups,您用鼠标将一个人的名字点亮,或者将鼠标放在大窗上,然后按右键,就可以看到这个菜单了。在哪儿编制popups呢?和aliases一样,还是在mIRC Editor窗口。点Tools菜单下的popups子菜单,或者按住alt键,再按p键,可以呼出popups的编辑窗口,然后直接在这个窗口进行编辑。Popups的基本格式是: 菜单名称:命令 ,举个例子:
Get Help:/join #services ; :号前面是菜单名,:号后面是点中这个菜单后mIRC执行什么命令
:号后面的命令可以是aliases命令,比如:你的在aliases中有这样一条,/j /join #meimei,那么在popups中也可以用/j命令。还有一个问题,怎么定义popups在哪儿弹出呢?是在房间里,小窗里,dcc窗口里,
或者是status窗口里?这个问题很简单,在mIRC Editor窗口中有一个view菜单,点view菜单,可以看见status,channel,query/chat, nickname List和menubar这样几个子菜单,如果你需要编nickname的弹出式菜单,就把view卬ickname List打勾,然后在mIRC Editor窗口写代码。如果想编房间的弹出式菜单就把view卌hannel打勾,status,query/chat,menubat也是这样。
下面我详细介绍popups的编写。
建立一个含子菜单的popups:假设您希望编一个nickname的popups,那么把view卬ickname List打勾,然后写入如下代码:(注:本例子是mIRC自带的popups)
Whois:/whois $$1 ;这一行是popups的标准格式:菜单名:命令
Query:/query $$1 
UCentral:/uwho $1
- ;这个小-号是为了让菜单更美观,加了-号后,菜单中会有一条----。
Control ;这个单独的control是一个主菜单名。
.Ignore:/ignore $$1 1 ;这条命令前面有个 : 号,表明这一行是control的子菜单。
.Op:/mode # +ooo $$1 $2 $3 ;这条popups用到了aliases命令,这在popups中是允许的。
.Deop:/mode # -ooo $$1 $2 $3 ;这儿的$1 $2吘筒恍枰闶淙肓耍褪悄阊≈械拿帧£
.Kick:/kick # $$1
.Kick (why):/kick # $$1 $$?="Reason for kick:" ;$$?前面讲过了,您可以在弹出的窗口中填入踢人的理由
.Ban:/ban $$1 2
.Ban, Kick:/kick # $$1 | /ban $$1 2
CTCP ;再次出现一个单独的ctcp,同样道理,这表明ctcp是一个主菜单。
.Ping:/ctcp $$1 ping ;这一行在单独的字母ctcp下面,前面还有个:号,说明这一行是ctcp的子菜单
.Finger:/ctcp $$1 finger 
.Version:/ctcp $$1 version
.Time:/ctcp $$1 time
.Userinfo:/ctcp $$1 userinfo
.ClientInfo:/ctcp $$1 clientinfo 

上面我结合实例讲叙了怎么样编写popups的基本知识。补充一点,如何选中多个名字,点亮一个名字,然后按住鼠标左键,往上,或者往下拉就可以了。当然,如果希望对多个nickname进行操作,您的popups代码必须支持对多个nickname的操作,比如:Op:/mode # +ooo $$1 $2 $3
在popups中,您用样可以运用大括号{ },中括号[ ],goto语句 ,if elseif else语句,标识符,变量等等,这些东西在script中是通用的,不管是哪种类型的script。
再讲个例子:kick {
if ( $1==$me ) echo 不能踢自己
else kick # $1 $?="为什么踢他?"
}
在这个例子我想告诉大家的是popups中可以用标识符和语句。$me标识符返回值是自己的nickname。
另外我讲一下,如何将编写在*.ini文件中的popups调如mIRC执行。呼出mIRC Editor窗口,然后点file菜单下的load子菜单,选好文件,点ok即可。或者用load命令:/load -pn 盘符号:\目录\文件名 也可以。例如:/load -pn c:\mirc\popups.ini
好了,popups就讲到这儿,我会分出一节来,结合实例来讨论script的编写技巧和方法。

[关闭][返回]