めずらしきこと。
実際に使ってみたらバグバグだったので改訂した。
= Entity.def v0.20 = by H_ear #if 0 実体参照変換(ブロック範囲をランダムに変換) 使用目的は mailto:で指定したアドレスを収集されにくくするため #endif * mad for vz! 1 ^\ "" ?. (mb-2)?{ &m("[!]mbモード確認.") . } (mr-$80)??{ &m("[!]mrモード確認.") . } mp[, ps[=pa, #G ps], mp], (mb)?{ &m("[!]改行を含んでいます.") . } &SF(pa,' ') (r)?{ &m("[!]空白を含んでいます.") . } &s mb=2, #28 (xc>0)?#B mb-, ;mbを指定するだけでは再現しない &Sn(pa) l=r, i-, ;paのサイズが上限 ax=$2C00, &i($21) rn=cx+dx, ;時刻を乱数の種に :l ; ---- main loop ---- (ck)?{ &m("全角文字があったので停止しました.") >z } &r (r%2 && r%3) ;6〜7割方の確率で変換 ?#d ?{ cd[, #g &?("&#%d;",0]) } (l>i++)?>l :z ; ---- exit ---- &d #] . * [Variables] l length i counter [Buffers] pa as ps [History] 2009/01/21 0.10 1st 2009/01/25 0.20 エラーチェックをそれなりに増やした [Notes] mbに代入するだけではブロックモードにならない #61の窓内部でpsのサイズを越えると出力時に途中で切れる