TSV/CSVモードでのセル表示の要望No.39356
hawk-eye さん 21/11/18 11:01
 
以前、TSV/CSVモードにおいて、
セル内での折り返し表示が要望されていたように思いますが、
その要望の実現性が低いのであれば、
セルを別ウィンドウに表示する方法もあるのではないかと考えました。

現在、「ウィンドウ分割上下」という機能がありますが、
これに近い感じで、
キーカーソルがあるセルの内容だけを別ウィンドウに表示し、
このウィンドウ内の表示が折り返し表示されていれば
文字数が多いセルの閲覧も編集もしやすくなるように思います。

もし、このセル用のウィンドウ内で、
区切りとなる文字が入力されても(誤入力の可能性もあるので)そのまま表示し、
元のウィンドウをクリックして、またセル用のウィンドウ内にクリックして戻ったら、
キーカーソルがある最新のセルの内容だけ表示されるので問題ないと思います。

改行が入力された場合も、本人が分かるだろうから、気にしなくて良いかと思います。

[ ]
RE:39356 TSV/CSVモードでのセル表示の要No.39358
秀丸担当 さん 21/11/18 14:20
 
セル内改行を改行した見た目で編集することは、秀丸エディタの本文上で編集するよ
うな機能としてやるのは難しいと思います。
ウィンドウ分割上下でも本文としての扱いだとややこしいかもしれません。
別ウィンドウで、本体とは別であれば、ありかもしれません。

マクロでやるとしたらいったん作業用の別の秀丸エディタを起動して、それが終わっ
たら元のファイルに書き戻すような方法でも、一応なんとかできるとは思います。
一時的な状態や別の秀丸エディタというものすっきりしない気もするので、もっとシ
ンプルに、input関数で入力を複数行できたらいいのではないかと思います。
現状はinput関数は複数行はできないです。
例えば、簡略なマクロだと以下のような感じです。
(実用する場合はダブルクォーテーションとか区切り文字の調整も必要だと思います)
selectcolumn tabcolumn,tabcolumn,lineno,lineno;
$a=gettext(seltopx,seltopy,selendx,selendy,1);
$a=input("",$a);
if(result!=false){
  insert $a;
}
endmacro;
これは改行なしの1行ですが、input関数で複数行OKにするパラメータを追加すれば
簡単にできそうです。
単なる入力ボックス(エディットコントロール)なので、秀丸エディタの編集機能で
はないですが、改行が改行のままで見えることができれば無いよりかはマシになるの
ではないかと思います。
V9.00は近いうちに正式にするかもしれないので、すぐにやるかどうかはわからない
ですが、検討しようと思います。

[ ]
RE:39358 TSV/CSVモードでのセル表示の要No.39449
hawk-eye さん 21/12/16 15:53
 
V9.10で
selectcolumn tabcolumn,tabcolumn,lineno,lineno;
$a=gettext(seltopx,seltopy,selendx,selendy,1);
$a=input("",$a,0x0100);
if(result!=false){
  insert $a;
}
endmacro;
と複数行にしてやってみたのですが、
セルの文字列が、入力ボックスの幅よりも長い文字列だった場合、
入力ボックスの幅で折り返して表示する事はできないのでしょうか?

[ ]
RE:39449 TSV/CSVモードでのセル表示の要No.39450
秀丸担当 さん 21/12/16 17:27
 
input関数の複数行は、折り返しなしで固定でした。
一応サイズ変更はできると思います。
折り返しありバージョンの指定もできるようにまた検討します。

[ ]
RE:39450 TSV/CSVモードでのセル表示の要No.39471
hawk-eye さん 21/12/23 12:10
 
V9.12β1で折り返しありバージョンを確認しました。
ありがとうございました。

マクロヘルプには、今回追加分が記載されていないようです。

[ ]
RE:39471 TSV/CSVモードでのセル表示の要No.39473
秀丸担当 さん 21/12/23 16:35
 
ご確認ありがとうございます。
ヘルプにも追記しておきます。

[ ]