|   |  
 ケンさん今日は、ひろです。 
> ってことで,下の内容の 
> 既存のマクロの存在や,設定方法がありましたら教えてください. 
>  
> >マクロ自体は,検索中の文字列の色を(lessのように)変えたかった 
> >ので,ちょっとhagiさんの秀丸grep強調表示マクロを改良して 
> >作ってみたのですが,元の状態に戻すマクロがうまく行かない.... 
 例外処理が不十分ですが、既に設定ずみの *.hilight を読み込み直せは良 
いということでしたら、次のマクロで如何でしょうか? 
//---------------------- begin macro ------------------------------ 
main: 
  if(basename==""){ 
    loadhilight "nul",0; 
    endmacro; 
  }else call get_hilight; 
  if($$return=="")loadhilight "nul",0; 
  else loadhilight $$return,0;// 1 にしても「一時的な設定」のまま?? 
  endmacro; 
 
get_hilight:// 設定してある *.hilight の名前を得る 
  call get_type; 
  if($$return=="") 
    openreg "CURRENTUSER","Software\\Hidemaruo\\Hidemaru\\Default"; 
  else 
    openreg "CURRENTUSER","Software\\Hidemaruo\\Hidemaru\\Config\\"+$$return 
; 
  if(result){ 
    $$type=getregstr("HilightTitle"); 
    closereg; 
  }else $$type=""; 
  return $$type; 
 
get_type: 
//「C言語ソースファイル」等と file type が決まっていない場合は "" を返す 
  call get_extension basename; 
  if($$return==".")openreg "CURRENTUSER","Software\\Hidemaruo\\Hidemaru\\."; 
  else openreg "CURRENTUSER","Software\\Hidemaruo\\Hidemaru\\."+$$return; 
  if(result){ 
    $$type=getregstr(""); 
    closereg; 
  }else $$type=""; 
  return $$type; 
 
get_extension://拡張子を取得 
//$$1:basename, basename2 
  ##extension=strstr($$1,"."); 
  if(##extension==-1)return "."; 
  else if(##extension==0)return ""; 
  while(1){ 
    ##extension=strlen($$1)-##extension-1; 
    $$1=rightstr($$1,##extension); 
    ##extension=strstr($$1,"."); 
    if(##extension==-1)break; 
  }return $$1; 
//---------------------------------- end macro ----------------------------- 
-- 
 
			 | 
		  
	 |