CSVモードで範囲選択時の挿入についてNo.28820
hawk-eye さん 10/08/27 16:56
 
環境は、
Windows XP Pro SP3
秀丸エディタ Version 8.01a
です。

CSVモードの時に、ルーラーの部分をクリックすると、
その列が範囲選択されますが、
BOX範囲選択で挿入する場合と同様に挿入できるのかなと思い、
文字や半角カンマを入力してみると、次のようになりました。

・先頭の列以外で半角カンマを入力した場合は、
 範囲選択されていた部分より左側全部が範囲選択に変わります。
 ちなみに、1〜最終行までをBOX範囲選択した場合も同様です。
 BOX範囲選択の最初か最後が途中の行なら、こうはなりません。

・半角カンマ以外を入力した場合は、BOX範囲選択のように入力できますが、
 同じ列に含まれるにも関わらず、瞬時に範囲選択が更新されません。

二つ目は仕様かもしれませんが、
一つ目は範囲選択が変わらないのが正しいような気がします。

よろしくお願いします。

[ ]
RE:28820 CSVモードで範囲選択時の挿入にNo.28821
hawk-eye さん 10/08/27 17:05
 
二つ目は、続けて文字を入力する事を考えたら仕様なので、
書く必要ありませんでしたね。すみません。
一つ目だけ検討お願いします。

[ ]
RE:28821 CSVモードで範囲選択時の挿入にNo.28822
秀丸担当 さん 10/08/27 17:23
 

>・先頭の列以外で半角カンマを入力した場合は、
> 範囲選択されていた部分より左側全部が範囲選択に変わります。
> ちなみに、1〜最終行までをBOX範囲選択した場合も同様です。
> BOX範囲選択の最初か最後が途中の行なら、こうはなりません。

ご報告ありがとうございます。
これは確かにおかしな動作でした。
こうならないようにV8.02の次のβ版で修正させていただきます。

>・半角カンマ以外を入力した場合は、BOX範囲選択のように入力できますが、
> 同じ列に含まれるにも関わらず、瞬時に範囲選択が更新されません。

こちらはおっしゃる通り続けて文字を入力することもできるので、仕様というこ
とでお願いします。

[ ]
RE:28822 CSVモードで範囲選択時の挿入にNo.28853
hawk-eye さん 10/09/01 21:17
 
8.02 beta 6 で修正を確認してみましたが、
直っていない部分があったので、
現象をもう少し調べてみました。

CSV形式の最終データ行の最後に[EOF]がある場合は問題ないのですが、
その最終データ行の次の行に[EOF]だけの行がある状態で、
BOX範囲選択した際に、
範囲選択を終える為にCtrlキーを離した時に
カーソルが[EOF]だけの行までいってしまっていた場合に、
半角カンマを入力すると、
範囲選択がそれ以前より左側を範囲選択した状態になってしまいます。


他にもあったので、一緒にここに書かせていただきます。
8.01aでも同様です。

CSVモードで、ルーラーをクリックして列を範囲選択した状態にし、
何かを入力して、まだ範囲選択されている状態でスクロールしてみると、
上方の行で範囲選択の対象が変わってしまいます。


CSVモードで、
一つの列の複数行を左端から右端までBOX範囲選択すると、
その中に何も入力されていないセルがあった場合でも、
四角く範囲選択されますが、
その状態で半角カンマ以外を入力しても
範囲選択は四角いまま表示されているのに、
半角カンマを入力すると何も入力されていなかった部分から
範囲選択が消えるのは仕様でしょうか?
その状態でも入力すれば、
範囲選択が消えた行にも文字は入力されます。

[ ]
RE:28853 CSVモードで範囲選択時の挿入にNo.28855
hawk-eye さん 10/09/01 21:38
 
もう一つ見つかりました。

新規にファイルを開いて、CSV形式のデータを貼り付け、CSVモードにして、
ルーラーをクリックして列を範囲選択した状態にし、
何か文字を入力すると、
8.01aでは、入力した最初の一文字目から左側全体が範囲選択された状態になり、
8.02 beta 6では、入力した最初の一文字目が元々の範囲選択に瞬時に含まれます。

新規ファイルを開くところからやり直さないと再現しません。
また、保存されたファイルでは、再現しないようです。

よろしくお願いします。

[ ]
RE:28855 CSVモードで範囲選択時の挿入にNo.28856
秀丸担当 さん 10/09/02 11:11
 
続けて報告ありがとうございます。
いろいろ再現できました。
カラムをクリックした選択が前提という想定だったのですが、通常のBOX選択の場
合は実際のカーソル位置が存在するという都合上、いろいろつじつまが合わない
部分があり、そちらには手をつけていませんでした。
次のバージョンで改善できないか検討させていただきます。

[ ]
RE:28856 CSVモードで範囲選択時の挿入にNo.28875
hawk-eye さん 10/09/07 16:50
 
8.02 beta 7 を確認してみました。

多分、こちらの修正が影響しているのだと思いますが、
CSVモードで、ルーラーをクリックして列を範囲選択した状態にし、
半角カンマを入力すると、不可解な列の位置調整がされます。

例えば、6列(A〜F)ある状態で、
A列かB列に半角カンマを入力すると、元のB,D,E列がおかしくなり、
C列かD列に半角カンマを入力すると、元のD,E列がおかしくなり、
E列に半角カンマを入力すると、元のE列がおかしくなります。

よろしくお願いします。

[ ]
RE:28875 CSVモードで範囲選択時の挿入にNo.28877
秀丸担当 さん 10/09/07 17:08
 

>多分、こちらの修正が影響しているのだと思いますが、
>CSVモードで、ルーラーをクリックして列を範囲選択した状態にし、
>半角カンマを入力すると、不可解な列の位置調整がされます。

どのようにおかしいのかわからないですが、カラムの幅が更新されるまでの間ず
れているということでしたら仕方ないかもしれません。

[表示]→[タブストップ]→[TSV/CSVモードの詳細]で「削除/改行タブ挿入で自動
調整(全行)」がもしONだとしたらいったんOFFにしてみて、
1.「,」入力
2.←キーで左移動
3.↓キーで下移動
という操作を連続して先頭行から最後まで繰り返すような操作をした場合、だん
だんとカラムの幅がずれていくと思います。
そのときと同じずれはあると思います。
カラム幅が更新された後はこちらで確認した限りでは大丈夫でした。

[ ]
RE:28877 CSVモードで範囲選択時の挿入にNo.28879
hawk-eye さん 10/09/07 20:19
 
環境は、
Windows XP Pro SP3
秀丸エディタ Version 8.02 beta 7
です。

「削除/改行タブ挿入で自動調整(全行)」をOFFにして、
矢印キーで移動してみましたが、変化ありませんでした。

同じ環境で8.01aをインストールし直して
「削除/改行タブ挿入で自動調整(全行)」がONの状態で
半角カンマを入力した場合は、
一秒も掛からずに表示位置が更新されます。


beta 7で、
「削除/改行タブ挿入で自動調整(全行)」がONの状態で
どのようになるのか、次のデータで説明します。
先ほど書いたのより文字数を減らしています。
その結果、ずれる列も空き幅も少し変わりました。

A,BB,CCC,DDDD,EEEEE,FFFFFF
A,BB,CCC,DDDD,EEEEE,FFFFFF
A,BB,CCC,DDDD,EEEEE,FFFFFF

ルーラーをクリックしてA〜E列の
いずれかを範囲選択した状態にして、
半角カンマを入力すると、
その挿入箇所に新たな列(幅は挿入元の列幅)ができ、
挿入元の列から元のE列(EEEEEの列)までが、
全角一文字分、間が空いたままになります。

上記操作後、一度UNDOしてからREDOし直してみると、
自動調整された位置での表示になります。
カラム幅が更新された後は、正しい表示です。

とりあえず何もしないで五分待ってみた場合でも、
更新された位置にはなりませんでした。

同じ環境、同じ設定で、beta 6までは
一秒も掛からずに自動調整された位置に更新されますが、
beta 7ではUNDO/REDOをしないと、
自動調整された位置の更新がされません。

よろしくお願いします。

[ ]
RE:28879 CSVモードで範囲選択時の挿入にNo.28883
秀丸担当 さん 10/09/08 10:39
 

>beta 7で、
>「削除/改行タブ挿入で自動調整(全行)」がONの状態で
>どのようになるのか、次のデータで説明します。

詳しいご報告ありがとうございます。
サンプルのテキストで言われていることがわかりました。
先のコメントはβ6でのことでした。β7ではまた違っていました。失礼しました。
β7では挿入されるべきを維持するため、カンマ入力した後は自動更新させないよ
うにしていたのでした。
しかし自動更新されないと幅が狂うということで、なんとかできないか調整して
みます。
いま修正してみたところ、カラム選択でない通常のBOX選択のことも考えると、実
在する文字の位置がどうしても影響して、BOX選択の右側がずれることがあるのは
避けられないかもしれません。
次の修正で、カラム選択の場合は挿入後にカラム選択を維持し、BOX選択の場合は
挿入されるべきを維持して範囲選択された行のカラムだけは自動的にすぐ更新す
るように修正してみます。

[ ]