禁則処理についてNo.17020
toc さん 04/04/09 17:47
 
いつも便利に秀丸エディタを利用させて貰っています。
禁則処理の事で判らないことがあるので書き込ませて貰います。


・秀丸エディタVer4.07
・折り返し文字数を20
・行頭禁則、。,.・?!゛゜ヽヾゝゞ々ー)]}」』!),.:;?]}。」、・ー゙゚
・句読点のぶら下げのみ、改行文字のぶら下げをチェック
の設定状態で

"」"が禁則処理されなかったので下のような形で実験をしてみたのですが…


0123456789、。,.・?!゛゜ヽヾゝゞ々ー)]}」』!),.:;?]}。」、・ー゙゚
上のテキストを流し込むと、

012345678901234567890
0123456789、
。,.・?!゛゜ヽヾ
ゝゞ々ー)]}」』!)
,.:;?]}。」、・ー゙゚

と禁則処理がされ表示されるのですが…
順番に禁則文字を頭から消していったときに、


012345678901234567890
0123456789
・?!゛゜ヽヾゝゞ々
ー)]}」』!),.:;?]
}。」、・ー゙゚

この状態になり"・"以降禁則処理がされないようです。
これを、"・"以降も禁則処理できる方法はないでしょうか?
なにか私が簡単なところで勘違いしていそうで恐縮なのですが、よろしくお願いしま
す。




ちなみにこのまま順番に禁則文字を消していくと
次に禁則処理がされるのは

012345678901234567890
0123456789,.
:;?]}。」、・ー゙゚

",."の二つが処理されその他のは禁則処理されませんでした。


[ ]
RE:17020 禁則処理についてNo.17022
秀まるお2 さん 04/04/09 18:24
 
 禁則処理ですが、1行の桁数の何十パーセントか以上を追い出しそうになった
場合には、禁則処理そのものがキャンセルされます。

 具体的なパーセンテージは忘れましたが…。少なくとも1行の半分以上追い出
しそうになったらキャンセルします。なので、今の動作はそれで仕様ってことに
なると思います。

 仮に1行の文字全部が行頭禁則文字で、それを全部追い出したとしたら、いわ
ゆる「永久追い出し」という状態になって、無限に行数が増えていき行数MAXに
まで到達することになります。実際、そういうバグが過去に出たことがありまし
て、永久追い出ししないように処理しています。特に1行の桁数が小さい時は危
険なので、かなり厳しい(追い出しされにくい)判定をしてたと思います。

[ ]
RE:17022 禁則処理についてNo.17035
toc さん 04/04/12 12:31
 
返事が遅れて申し訳ありません。

なるほど、無限ループに陥る危険がありましたか
ちょっと私の試し方が不味かったようです。申し訳ありません


単純に下の例の動作を期待していたのですが、禁則処理の動作をよく見たら
追い込み処理は句読点にしかないのでできませんね。

私は、句読点追い込みが行頭禁則処理の定義を利用しているものと勘違いしていまし
た。
定義に句読点が入っていたから勘違いしてしまったようです^^;

やはり、私の勘違いでした。お騒がせしましたm(_ _)m


ex)

01234567890123456789
「123456789




01234567890123456789
「123456789」

[ ]
RE:17035 禁則処理についてNo.17039
秀まるお2 さん 04/04/12 15:29
 
> 単純に下の例の動作を期待していたのですが、禁則処理の動作をよく見たら
> 追い込み処理は句読点にしかないのでできませんね。

 いわゆる「追い込み」という処理は、秀丸エディタでは出来ないです。しいて
出来るのが「ぶら下げ」ということで、つまり40桁で折り返すと指定していて
も40桁を超えた分に文字を1つくっつけてしまう処理ですけど、それについて
は句読点しか出来ません。

 ワープロソフトや組み版システムでの「追い込み」というのは、たしか、全角
だけども半角分しか使ってない文字を、半角分のスペースに追い込むという感じ
の処理だったと思いますが、秀丸では出来ないです。

 ということでお願いします。

[ ]