Macro/Åê¹Æ/160 ¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×º¹Ê¬(No.2)




  • Äɲ䵤줿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
  • ºï½ü¤µ¤ì¤¿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
* ¤¤¤í¤¤¤í¥Ñ¥¹¥¸¥ã¥ó¥×[#p37a55f6]
-¥Ú¡¼¥¸: [[Macro/Åê¹Æ]]
-ºî¼Ô: [[¥¬¥ó¥¸¥ã¥à]]
-¥«¥Æ¥´¥ê¡¼: js
-Åê¹ÆÆü: 2006-12-31 (Æü) 19:27:42

** ¥á¥Ã¥»¡¼¥¸ [#q7f4bf8b]
¥¿¥°¥¸¥ã¥ó¥×¤ÎÂå¤ï¤ê¤Ë»È¤¦¤È¤¤¤í¤¤¤í³«¤­¤Þ¤¹¡£
#code(javascript){{
//pathJump.js
//ÁªÂòÈϰϤ⤷¤¯¤Ï¥«¡¼¥½¥ë¹Ô¤Ë¤¢¤ë¥Ñ¥¹Ê¸»ú¤ËÂФ·°Ê²¼¤ÎÆ°ºî¤ò¤·¤Þ¤¹
//­¡GREP·ë²Ì¥¦¥£¥ó¥É¥¦¤Ç¤¢¤ì¤Ð¥¿¥°¥¸¥ã¥ó¥×
//­¢¥Õ¥©¥ë¥À¥Ñ¥¹¤Ç¤¢¤ì¤Ð¥¨¥¯¥¹¥×¥í¡¼¥é
//­£ÀßÄꤷ¤¿³ÈÄ¥»Ò¤Ç¤¢¤ì¤Ð¥µ¥¯¥é¥¨¥Ç¥£¥¿¡¢¤½¤ì°Ê³°¤ÏWINDOWS´ØÏ¢ÉÕ¤±
//
//¥Ñ¥¹¤¬UNC¥Ñ¥¹¤â¤·¤¯¤Ï¥Í¥Ã¥È¥ï¡¼¥¯³äÅö¤Æ¥É¥é¥¤¥Ö¤Î¾ì¹ç¡¢¥½¡¼¥¹Æâ¤Î
//"foobarhoge"¤Î¶¦Í­Ì¾¤òÊѹ¹¤¹¤ë¤³¤È¤Ç¥¢¥¯¥»¥¹¤òÀ©¸Â¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

windowTypeCnt();
function windowTypeCnt() {
	var windowType = Editor.ExpandParameter("${w?0$:1$:2$");
	if (windowType == 0) {
		Editor.TagJump();
	} else {
		pathJumpMain();
	}
}

function pathJumpMain() {
	var path = Editor.GetSelectedString(0);
	var reg0 = /(^.*?)([A-Z]:\\|\\\\[A-Z])(.*?)(  |[\t\r\n\f\v\x])(\n|.*\n|.*)/i;
	var reg1 = /(.*?)(\\\\foobarhoge)(.*?)/i;	//foobarhoge¤ò¥¢¥¯¥»¥¹¤·¤Æ¤Ï¤¤¤±¤Ê¤¤¶¦Í­Ì¾¤Ë

	if(!path) {
		path = Editor.GetLineStr(0);
	}
	path = path.replace(reg0, "$2$3");

	if (!reg1.test(path)) {
		jumpCnt(path);
	} else {
		propMsg(1);
	}
}

function jumpCnt(p) {
	var objSL = new ActiveXObject("WScript.Shell");
	var objFS = new ActiveXObject("Scripting.FileSystemObject");
	
	if (objFS.DriveExists(objFS.GetDriveName(p))) {
		var d = objFS.GetDrive(objFS.GetDriveName(p));
		if (d.DriveType == 3) {
			var sh = d.ShareName.toLowerCase();
			if(sh.indexOf("foobarhoge") != -1) {	//foobarhoge¤ò¥¢¥¯¥»¥¹¤·¤Æ¤Ï¤¤¤±¤Ê¤¤¶¦Í­Ì¾¤Ë
				propMsg(2);
				return(false);
			}
		}
	}
	if (objFS.FolderExists(p)) {
		objSL.Run('"'+ p +'"');
	}
	else if (objFS.FileExists(p)) {
		var ext = objFS.GetExtensionName(p);
		var lowerext = ext.toLowerCase();
		switch (lowerext) {
			case "txt":				//¥µ¥¯¥é¥¨¥Ç¥£¥¿¤Ç³«¤­¤¿¤¤³ÈÄ¥»Ò
			case "log":
			case "dat":
			case "ini":
			case "sql":
			case "js":
			case "vbs":
			case "mac":
			case "pl":
					Editor.FileOpen(p);
					break;
			default:
					objSL.Run('"'+ p +'"');
		}
	} else {
		propMsg(3);
	}
	objSL = null;
	objFS = null;
}

function propMsg(n) {
	var msg;
	switch (n) {
		case 1: msg = "¥¢¥¯¥»¥¹ÉԲĤζ¦Í­Ì¾¤Ç¤¹";break;
		case 2: msg = "¥¢¥¯¥»¥¹ÉԲĤζ¦Í­¥Ñ¥¹³äÅö¥É¥é¥¤¥Ö¤Ç¤¹";break;
		case 3: msg = "¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó";break;
		case 4: msg = "¥É¥é¥¤¥Ö¤¬ÍøÍѤޤ»¤ó";break;			//̤¼ÂÁõ
		default: msg = "ÉÔÌÀ¤Ê¥¨¥é¡¼¤Ç¤¹";break;
	}
	var objSL = new ActiveXObject("WScript.SHell");
	objSL.popup(msg, 0, "¥Ñ¥¹¥¸¥ã¥ó¥×¥Þ¥¯¥í",48);
}
}}

----

#comment


    ¥Û¡¼¥à °ìÍ÷ ñ¸ì¸¡º÷ ºÇ½ª¹¹¿· ¥Ð¥Ã¥¯¥¢¥Ã¥× ¥ê¥ó¥¯¸µ   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS