======== tool.def (v1.6) ======== #if 0 【使用方法】 ■ 指定桁折/連結 [ESC]Y -----------------------------  ・ブロックモードでは、ブロック内のみ処理します。  ・「桁折位置」でゼロを入力すると、改行を削除してベタ書きに戻します。  ・禁則処理をしたくない場合は、2ヵ所の「;」を削除する。  ・半角文字で始まる行は、連結しません。  ・桁折した文章を別の桁数で折り直したい場合は、いったん連結してから、   再度桁折りして下さい。 ■ ブロックのソート [ESC]B -----------------------------  ・DOSのSORT.EXEを呼び出して、ブロック内をアルファベット順にソートします。  ・ブロックモードでない場合は、何もしません。 #endif * M マクロ 80 [ESC]H "【ツールメニュー】" !01 81 [ESC]Y "指定桁折/連結" ?. (yy)?? yy=70, &g("桁折位置($yy),0=連結") (r==-1)?. (r>=0)? yy=r, b="‘“(〔[{〈《「『【([{「", e="’”)〕]}〉》」』】、。,.?!!),.?]}」", f=" 。.?】", ; 連結する場合の行末文字 ; (yy)?{ &a("禁則処理をします") ; (r<0)?. (r)?? b=e="", } mi[-, ei[+, #M &s (mb)?{ (xc>0)? #B } :A &k (r==$1B)? >Z ; [ESC]が押されたら中断 (mb)?{ (xc>=0)? >Z } &m("Line:%d",ln) (yy)?? >D &x(yy) (ct)?? >Z (ct<2)? { #x >A } :B #s &f(cd,b) (r>=0)? >B :C #d &f(cd,e) (r>=0)? >C (ct>1)? #m ? #d >A :D (ct)?? >Z (ck)??{ #x >A } :E #> #s &f(cd,f) (r>=0)?{ #d #d >D } #d #g (ct<3)?{ #m >D } >A :Z (mb)? #b ei], mi], #U &d 82 [ESC]B "ブロックのソート" ?. (mb)??. ss=2, #S "temp.src" #m (s)? 'Y' #E "sort temp.dst" #m #[ #y #R "temp.dst" #m #b #_ #y #C #i #E "del temp.*" #m #[ &d 83 [ESC]\ "センタリング" ?. (mb)?. &s #< (ct<2)? >Z (ct==2)? #t #> x=(we-lx)/2, #< D(x) :Z #z &d 84 ^KJ "文字コード表示" ?. ep+, :A (s)??{ ax=cd, (ax<0)?{ &i("$(3C,80,14,61,72,02,2C,A2,D0,D4,05,21,1F,80,E4,7F,C3)") a=(ax>>8-$20)*100+ax&$FF-32, &m("文字コード: シフトJIS:%4xh JIS:%4xh クテン:%04d",cd,ax,a) }?{ &m("文字コード: %02xh",ax) } } &p (r!=#[)?{ &o(r) >A } ; [ESC]で終了 &m("") ep-, * P メニュー 1 "",34,4,20 &81 &82 &83 &84 ;======== End of tool.def ========