
// 同一サブネットからのアクセス
view "lan" {
match-clients {
localnet;
};
zone "mewlist.com" {
type master;
file "LAN/mewlist.com.zone";
};
};
// その他
view "wan" {
match-clients {
any;
};
zone "mewlist.com" {
type master;
file "STATIC/mewlist.com.zone";
};
};
var filesystem = new ActiveXObject("Scripting.FileSystemObject");
var shell = new ActiveXObject("WScript.Shell");
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.3.0");
var stream = new ActiveXObject("ADODB.Stream");
var tmpfile = shell.Environment("Process").Item("TMP")+"\\translate.tmp";
function bin2hex(bin)
{
var xml = new ActiveXObject("Microsoft.XMLDOM");
var elem = xml.createElement("bin");
elem.dataType = "bin.hex";
elem.nodeTypedValue = bin;
return elem.text;
}
function urlEncode(text, encoding) {
// テキストを変換してバイナリ取得
var ados = new ActiveXObject("ADODB.Stream");
ados.type = 2;
ados.charset = encoding;
ados.open();
ados.writeText(text);
ados.position = 0;
ados.type = 1;
var bin = ados.read();
ados.close();
// バイナリ文字データを16進数データに変換
var hex = null;
switch (encoding) {
case "UTF-8":
hex = bin2hex(bin).slice(4);
break;
case "UTF-16":
hex = bin2hex(bin).slice(6);
break;
default:
hex = bin2hex(bin);
break;
}
// URLEncoded テキストデータに変換
var encoded = "";
for (var i=0; i < hex.length; i += 2)
encoded += "%"+hex.slice(i, i+2).toString();
return encoded;
}
var srctxt = Editor.GetSelectedString(0);
if (srctxt.length > 0)
{
xmlhttp.open("POST", "http://www.excite.co.jp/world/english/", false);
xmlhttp.send("before=" + urlEncode(srctxt.replace(/\r\n/g," "),"shift-jis") + "&wb_lp=ENJA&start=&after=");
stream.Type = 1;
stream.Open();
stream.Write(xmlhttp.responseBody);
stream.SaveToFile(tmpfile, 2);
stream.Close();
var f = filesystem.OpenTextFile(tmpfile, 1, 0);
var nest = 0;
var buf = "";
var master = "";
var target = false;
while(!f.AtEndOfStream)
{
var tmp = f.read(1);
if (tmp=="<")
{
nest=1;
target = false;
}
if (tmp==">")
{
if (buf.match(/textarea cols=36 rows=15 name="after" wrap="virtual" style="width:320px;"/))
target = true;
nest=0;
buf="";
}
else if (nest>0)
{
buf += tmp;
}
else if (target)
{
master += tmp;
}
}
f.close();
Editor.InsText(master);
}
filesystem = new ActiveXObject("Scripting.FileSystemObject");
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.3.0");
var stream = new ActiveXObject("ADODB.Stream");
var srctxt = Editor.GetSelectedString(0);
if (srctxt.length > 0)
{
xmlhttp.open("POST", "http://www.excite.co.jp/world/english/", false);
xmlhttp.send("before="+srctxt.replace(/\r\n/g," ")+"&wb_lp=ENJA&start=&after=");
stream.Type = 1;
stream.Open();
stream.Write(xmlhttp.responseBody);
stream.SaveToFile("hogehuga.tmp",2);
stream.Close();
var f = filesystem.OpenTextFile("hogehuga.tmp",1,0);
var nest = 0;
var buf = "";
var master = "";
var target = false;
while(!f.AtEndOfStream)
{
var tmp = f.read(1);
if (tmp=="<")
{
nest=1;
target = false;
}
if (tmp==">")
{
nest=0;
if (buf.match(/textarea cols=36 rows=15 name="after" wrap="virtual" style="width:320px;"/))
target = true;
buf="";
}
else if (nest>0)
buf+=tmp;
else if (target)
master += tmp;
}
f.close();
Editor.InsText(master);
}
Editor.WordLeft();
Editor.WordRight_Sel();
var cmd = Editor.GetSelectedString(0);
switch(cmd)
{
case "linenum":
Editor.Delete();
Editor.SelectAll( );
var seltxt = Editor.GetSelectedString(0);
var master = "";
f = new LineStream(seltxt);
var digits = (f.length+"").length;
while (!f.IsEndOfStream)
{
var buf = f.ReadLine();
for (i=digits; i>(""+f.line).length; i--)
master += " ";
master += f.line+" :"+buf+"\r\n";
}
Editor.InsText(master);
break;
}