>追加するだけなら今の仕様に不満はないのですが、
>追加後に選択箇所を削除すると、最初に選択した
>文字とは違うものも消されて不便に感じています。
>
>そこで要望なのですが、タブを含んでも選択範囲が
>ずれない仕組みも用意してもらえると助かります。
話も分かるし、すごく気持ちも分かるけど無理じゃない?
確かにその「タブがある行のみを矩形選択」の場合なら、何とか
文字単位で考えて選択範囲を変えるとか出来るように思えるかも
しれないですけど、タブがある行と無い行を同時に矩形範囲選択して
文字入力していく場合まで考えると、現仕様以外に手が無いのでは?
例えば
for( i=0 ; i<10 ; i++ ){
a += b[i]; // ←この行の行頭がタブだとします
} //
↑とかいうテキストの場合に
[for(] i=0 ; i<10 ; i++ ){
[ ]a += b[i]; // ←この行の行頭がタブだとします
[} //]
[~] を矩形範囲選択したとして、その後、「//」と文字入力していくと
//[for(] i=0 ; i<10 ; i++ ){
//[ a ]+= b[i]; // ←この行の行頭がタブだとします
//[} //]
こうなってしまう、、というのは致し方ない事ではないかと。
むしろタブに合わせて矩形選択範囲が↓
//[fo]r( i=0 ; i<10 ; i++ ){
//[ ]a += b[i]; // ←この行の行頭がタブだとします
//[} ]//
↑こんな感じに変形してしまったら、もっと不自然ですよね?
ユーザーとしての理想は↓
//[for(] i=0 ; i<10 ; i++ ){
//[ ]a += b[i]; // ←この行の行頭がタブだとします
//[} //]
↑こんな感じに矩形選択範囲が凸凹な形状に変形してくれる仕様
なんですよね。でも、これってプログラムがどえらく複雑になりそうだし、
(行毎に選択範囲を覚えておいて、入力文字に応じて行毎に選択範囲を変形させる?)
ちょっとそこまでは望めそうにないかなぁ~と思うのです。
もちろんこれが実現したら、私もすごく嬉しいのですが。