RE:00953 要望:マクロの編集ボタンをNo.00962
noro さん 98/05/01 10:33
 
番頭++さん、いがぐり*さん、こんにちは(^^) noro です。

 「マクロ実行」のダイアログに編集ボタンの追加に一票(^^)

 マクロ用フォルダも含めて、いくつかの頻繁に使うフォルダのショートカッ
トを Windows のスタートメニューに登録して、そこから開くことができるの
で、不自由はしていないのですが、あったら便利ですよね。

 作成中のマクロを実行させたり、編集したりを繰返すなら、ここのデータラ
イブラリに登録されている「日付とファイルのマクロ」の中の fixopen.mac を
使ってもらうと便利かも知れません。(手前味噌)
 ただ、番頭++さんの「マクロ機動隊」みたいに、文中に書かれたマクロを実行
するほど高度じゃありませんが…(^^;)


[ ]
RE:00962 要望:マクロの編集ボタンをNo.00964
番頭++ さん 98/05/01 15:10
 
openmacrodir; // もほしいのですが、

editrecord; // を先に追加してほしいです。 個人的な意見ですが ...

>文中に書かれたマクロを実行
>するほど高度じゃありませんが…(^^;)

昔からの寄せ集めなのですよ。高度といわれると ...

発表はしませんが、(その人のコーディングに依存するので ... )

openfile "temp1.mac";
searchdown "pk_debug_break:";
if( result ){endmacroall;}
escape;gofiletop;
//R$str_find = "\twhile.+{";
$str_find = "^(return;|return )";
searchdown $str_find, regular;
while( result ){
escape;
if( code == 0x09 ){golineend;}
#k = #k + 1;
insert "\ncall pk_debug_break \"" + rightstr("0000"+str(#k),4) + "\";\n";
finddown;
}
gofileend;insertreturn;
insert "pk_debug_break:\n";
insert "#kz_break = #kz_break + 1;\n";
insert "$$wk1 = time + \" - KZ_Break - From - \" + $$1 + \" - \" + str(#kz_break);\n";
insert "question $$wk1;\n";
insert "title $$wk1;\n";
insert "if( ! result ){ title -1; endmacroall; }\n";
insert "return;\n";
save;
execmacro "temp1.mac";
endmacroall;

も役に立ってくれてた機能です。


if ( ##wn == 0 ) $ww = "日";
if ( ##wn == 6 ) $ww = "土";

でも、よいのですが、if 敬遠症候群のひとは、

#w = 3; // 水
$w = midstr("日月火水木金土",#w%6*2,2);
message $w;

のほうが好きです。

#m = 2; // 如月
$str1="/1.07/January/2.08/February/3.05/Match../13.LL/";
#i = strstr($str1,"/"+str(#m)+".");
#j = val(midstr($str1,#i+3,2));
$m = midstr($str1,#i+6,#j);
message $m;

##i = val(leftstr(date,2));
$$today1 = midstr("19,20",(!(##i<80)-1)*3,2) + leftstr(date,8);//yyyy/mm/dd
message $$today1;

もおなじ、midstr です。

if( strstr("/1/2/4/6/8/",str(#menu1)) != -1 ){}

$pk_tbl_month_str1 = "31,28,31,30,31,30,31,31,30,31,30,31";// 01-12
$pk_tbl_month_str2 = "00,31,28,31,30,31,30,31,31,30,31,30,31";// 00-12
$pk_tbl_monthj_str1 = "000,031,059,090,120,151,181,212,243,273,304,334,365";// 01-13
$pk_tbl_monthj_str2 = "000,000,031,059,090,120,151,181,212,243,273,304,334,365";// 00-13

pk_month_last:  // yyyy,mm - 1901-2099
    ##i = ( ##1%4 == 0 );
    #cal_mm_last = val($pk_tbl_montha1[##2]) + ( ##2==2 && ##i );   //  last date
    #cal_mm_jul = val($pk_tbl_montht1[##2]) + ( ##2>2 && ##i ); //  Julian date
    #cal_weekf = 1 - 1 ;    //  1900/01/01 - 1 ???
    ##i = ##1 - 1900 ;
    ##i = #cal_weekf + ##i + (##i-1)/4 + 1 + #cal_mm_jul;   //  365-INT(365/7)*7
    #cal_weekf = ##i % 7 ;  // first day 0-6
    #cal_weekt = ( #cal_mm_jul - #cal_weekf + 6 ) / 7 ; //  first total weeks
//  message str(#cal_weekf) + " - " + str(#cal_weekt);
return;

pk_month_today1f:   // yyyy,mm,dd - 1901-2099
    ##error = -1;
    if( ##1 <= 1900 || ##1 >= 2100 ){   return ##error; }
    if( ##2 < 01 || ##2 > 12 ){ return ##error; }
    ##ld = val(midstr("00,31,28,31,30,31,30,31,31,30,31,30,31",##2*3,2));   // 00-12
    ##td = val(midstr("000,000,031,059,090,120,151,181,212,243,273,304,334,365",##2*4,3));  // 00-12
    ##i = ( ##1%4 == 0 );
    ##ld = ##ld + ( ##2==2 && ##i );    //  last date
    if( ##3 < 00 || ##3 > ##ld ){   return ##error; }
    ##td = ##td + ( ##2> 2 && ##i );    //  Julian date
    ##cf = 1 - 1 ;  //  1900/01/01 - 1 ???
    ##i = ##1 - 1900 ;
    ##i = ##cf + ##i + (##i-1)/4 + 1 + ##td;    //  365-INT(365/7)*7
    ##i = ##i % 7 ; // first day 0-6
    ##k = ( ##i + ##3 - 1 ) % 7 ;   // day 0-6
    ##j = ( ##td - ##k + 6 + ##3 - 1) / 7 + 1;  //  total weeks 1-54
return ##k;

ロジックを学ぶときには、カレンダーを作れとよく言われたことがあります。

> insdate://カーソル位置への日付の挿入
> ##nen = ( ( ##y - 53) / 4 * 1461 ) + (( ##y  - 53) % 4 ) * 365;

その人の作成したカレンダープログラムはその人の性格が出るのだそうです。

1953 年は「巳 み 」ですよね、あちきは「辰 たつ」ですから、もう少しのところで、
insdate のお世話にはなれませんでした。ざんねん、ひょっとして noro さんのおや
じさんはあちきより、一つ年下かなぁ。

[ ]
RE:00964 要望:マクロの編集ボタンをNo.00965
noro さん 98/05/01 16:23
 
番頭++さんこんにちは(^^) noro です。
丁寧なご教授どうもです。

》その人の作成したカレンダープログラムはその人の性格が出るのだそうです。

 でてます(笑)
 if を使って 安直に分岐させまくり、ムツカシイコマンドはひたすら避けま
くり、なぜかちゃんと動いてる…  みたいな、いわば、鳥人間コンテスト・コ
ミック部門で50m位飛んでしまう感覚のモノが大好きでして(^◇^)

 年齢とスリーサイズは秘密なんですが、もう少し若いですσ(^-^;)

 本題とかけ離れたお話で失礼しました<(_ _)> コレニテ…

[ ]