空白->TAB変換についてNo.06783
jechabon さん 11/11/08 14:27
 
jechabonです。

ファイル保存時や範囲選択時に空白をタブに変換する機能がありますが、
空白の先頭桁位置がタブストップ−1の桁位置だった場合、タブに変換せず
半角スペース1個のままとなってしまいます。

例えばタブの文字数を4に設定して
a = bc;         /* COMMENT */
と入力した場合、bc; 直前(4桁目)の空白はタブに変換されなくても違和感
ありませんが、bc;直後(8桁目)は空白が連続するのでタブに変換して欲しいです。

手入力でタブを入力した場合と、秀丸でタブに変換した場合の結果が違うので
手入力の変換イメージに合わせて欲しいです。

とりあえず、空白->タブ変換後に正規表現の置換で、タブ直前の半角スペースを
タブに置換して対応しています。
連続する空白の先頭は半角スペース1個でもタブに変換するような設定は無い
でしょうか?
マクロで対応できるとは思いますが、そのような設定があると助かります。

[ ]
RE:06783 空白->TAB変換についてNo.06784
秀丸担当 さん 11/11/08 15:10
 

>ファイル保存時や範囲選択時に空白をタブに変換する機能がありますが、
>空白の先頭桁位置がタブストップ−1の桁位置だった場合、タブに変換せず
>半角スペース1個のままとなってしまいます。

確かにその通りでした。
このあたりの挙動は仕様として変化しないように、違う挙動をするものとしては
今まででは変換モジュールとして提供している例があります。
例:
 空白タブ変換(クォート無視)
 http://hide.maruo.co.jp/lib/hmconv/tabspace2.html
 空行も含んだインデント
 http://hide.maruo.co.jp/lib/hmconv/indent2_v100.html

もし必要でしたらこれと同じように変換モジュールを作成してライブラリにアッ
プします。

[ ]
RE:06784 空白->TAB変換についてNo.06785
jechabon さん 11/11/08 15:29
 
> もし必要でしたらこれと同じように変換モジュールを作成してライブラリにアッ
> プします。

[ファイルタイプ別の設定]→[その他]→[保存・読込]→保存するときの変換
を「タブを空白に変換する」にした場合も、変換モジュールは適用されるの
でしょうか?
適用されるのであればアップお願いします。

[ ]
RE:06785 空白->TAB変換についてNo.06786
秀丸担当 さん 11/11/08 16:24
 

>[ファイルタイプ別の設定]→[その他]→[保存・読込]→保存するときの変換
>を「タブを空白に変換する」にした場合も、変換モジュールは適用されるの
>でしょうか?
>適用されるのであればアップお願いします。

保存するときの変換は変換モジュールに対応していないです。
変換モジュールを保存前にやるとしたら自動実行マクロでやることになりますが、
設定による変換よりも遅いことになってしまうと思います。
あと「空白タブ変換(クォート無視)」の変換モジュールのほうはTSV/CSVモード
に対応していないです。
標準の機能としてもそういう挙動にできたらいいということでご意見参考にさせ
ていただきます。
一応ライブラリにもアップしておきます。

[ ]
RE:06786 空白->TAB変換についてNo.06787
jechabon さん 11/11/08 17:15
 
> 標準の機能としてもそういう挙動にできたらいいということでご意見参考にさせ
> ていただきます。

了解しました。よろしくお願いします。

> 一応ライブラリにもアップしておきます。

ありがとうございます。

[ ]