◀ANSI版開発トップへ
  • 4103 矩形編集
    • 4106 Re:矩形編集
    • 4107 Re:矩形編集
      • 4108 Re2:矩形編集
        • 4114 Re3:矩形編集
          • 4116 Re4:矩形編集
          • 4117 Re4:矩形編集
            • 4124 Re5:矩形編集
              • 4126 Re6:矩形編集
                • 4127 Re7:矩形編集
                  • 4138 Re8:矩形編集
              • 4128 Re6:矩形編集
              • 4129 Re6:矩形編集
                • 4130 Re7:矩形編集
                  • 4131 Re8:矩形編集
                    • 4133 Re9:矩形編集
                      • 4134 Re10:矩形編集
                  • 4132 Re8:矩形編集
                  • 4135 Re8:矩形編集
                  • 4136 Re8:矩形編集
                    • 4137 Re9:矩形編集
                      • 4139 Re10:矩形編集
          • 4122 Re4:矩形編集
            • 4125 Re5:矩形編集
  • [4103] 矩形編集 ぜっと 2005年11月11日 13:58

    既出かもしれませんが、
    2バイト文字の先頭の1バイトだけが選択範囲に含まれるような矩形選択をして、
    スペースを入力するとおかしな感じになります。
    • [4106] Re:矩形編集 すす 2005年11月11日 16:04

      ▼ ぜっとさん
      > 既出かもしれませんが、
      > 2バイト文字の先頭の1バイトだけが選択範囲に含まれるような矩形選択をして、
      > スペースを入力するとおかしな感じになります。

      範囲選択の途中に「2バイト文字の先頭の1バイトだけ」矩形選択されている場合は、
      先頭の2バイト文字の後ろにそろった後、普通に動くみたいですが
      範囲選択の開始行が「2バイト文字の先頭の1バイトだけ」矩形選択されていると、
      なんかめちゃめちゃですね。

      範囲選択の開始位置が2バイト文字で終了位置が1バイト文字とか、1バイトずれてる
      とかだと普通にありそうですけど、緊急度は高くなさそうですね。
    • [4107] Re:矩形編集 すす 2005年11月11日 16:24

      ▼ ぜっとさん
      > 既出かもしれませんが、
      > 2バイト文字の先頭の1バイトだけが選択範囲に含まれるような矩形選択をして、
      > スペースを入力するとおかしな感じになります。
      スペースとTABでしか発生しないのでこの辺だというのはわかったけど、どこかな?

      CEditView_Command.cpp
      /* インデント ver1 */
      void CEditView::Command_INDENT( char cChar )
      {
      if((cChar==SPACE || cChar==TAB) && m_bBeginBoxSelect && m_nSelectColmFrom==m_nSelectColmTo ){
      m_nSelectColmTo=m_pcEditDoc->m_cLayoutMgr.GetMaxLineSize();
      RedrawAll();
      return;
      }
      • [4108] Re2:矩形編集 すす 2005年11月11日 16:38

        すみません。早とちりしました。

        > ▼ ぜっとさん
        > > 既出かもしれませんが、
        > > 2バイト文字の先頭の1バイトだけが選択範囲に含まれるような矩形選択をして、
        > > スペースを入力するとおかしな感じになります。
        > スペースとTABでしか発生しないのでこの辺だというのはわかったけど、どこかな?
        >
        > CEditView_Command.cpp
        /* インデント ver1 */
        void CEditView::Command_INDENT( char cChar )
        ではないです。

        /* インデント ver0 */
        void CEditView::Command_INDENT( const char* pData, int nDataLen , BOOL bIndent )
        のどこかかな?
        • [4114] Re3:矩形編集 すい 2005年11月12日 02:11

          それ、タブなどのインデント揃えのための機能でしょう。
          わざとそうしてある仕様だと思うし、下手な弄り方をされると非常に困るのですが。

          例えば

          -----
          → int param1,
          a;→→ int param2;
          → → → int param3;
          → int param4;
          -----
          ※「→ 」が1バイトのタブ文字とします

          というテキスト文がある時に、次のように矩形選択します。

          -----
          → [in]t param1,
          a;→[→] int param2;
          → [→] → int param3;
          → [in]t param4;
          -----

          [ ] が矩形選択された範囲。
          ここで、矩形選択の範囲を 2,3行目のタブ文字列「→ 」のタブ幅よりも短くしておく事が重要。
          この矩形選択状態で [Tab] [Tab] と2回押すと、

          -----
          → → → [in]t param1,
          a;→→ → [in]t param2;
          → → → [in]t param3;
          → → → [in]t param4;
          -----

          の様にインデント揃えが出来るわけですよね。

          要するに文字には種類ごとに文字の幅があるわけで、
          ・半角文字(1バイト文字)
          ・全角文字(2バイト文字)
          ・タブ文字(タイプ別でのタブ幅の設定値)

          で、矩形選択でのインデント入力時は、その文字幅全体にわたって選択された個所のみ
          インデントされる、という仕様があって。
          # 正確には、文字幅範囲の末尾の位置が選択状態の個所のみ、ですが。

          これを利用する事でインデント揃えが出来るようになっているわけですよね。

          その機能の事では?
          • [4116] Re4:矩形編集 ぜっと 2005年11月12日 02:54

            > で、矩形選択でのインデント入力時は、その文字幅全体にわたって選択された個所のみ
            > インデントされる、という仕様があって。
            > # 正確には、文字幅範囲の末尾の位置が選択状態の個所のみ、ですが。
            なるほどなるほど。
            そう言う仕様なのですね。

            それを知っていて、考慮しながら使うと便利そうですねー。
          • [4117] Re4:矩形編集 すす 2005年11月12日 02:55

            ▼ すいさん
            > それ、タブなどのインデント揃えのための機能でしょう。
            > わざとそうしてある仕様だと思うし、下手な弄り方をされると非常に困るのですが。
            >
            > その機能の事では?
            その仕様自体は理解したし特におかしいとは思わないのですが
            範囲選択の開始行が2バイト文字の1バイト目で1バイト分の幅で複数行選択すると
            スペースかTAB挿入のときだけ変な動作するのです。
            2バイト分以上の幅で選択した場合問題ないのです。
            多分2バイト文字なので矩形選択の開始位置と終了位置(横幅の方)が同じになってしまう
            ような処理がどこかにあるんじゃないかと予測しているのですが。。。

            • [4124] Re5:矩形編集 すい 2005年11月12日 21:43

              >その仕様自体は理解したし特におかしいとは思わないのですが

              理解出来ていないようですが。

              >範囲選択の開始行が2バイト文字の1バイト目で1バイト分の幅で複数行選択すると
              >スペースかTAB挿入のときだけ変な動作するのです。
              >2バイト分以上の幅で選択した場合問題ないのです。

              ですから、そういう動作をするから上記のようなインデント揃えが出来るのですよ。

              2バイト分以上の幅で選択すれば2バイト文字の文字幅の *終了側* が必ず
              選択範囲に含まれますからね。
              その場合には普通に選択行全体にインデント文字が入るでしょう。

              あくまで文字幅の終了側が矩形選択範囲に含まれるかどうかだけで
              インデント文字を入れるかどうかを判定しているだけでしょう。
              • [4126] Re6:矩形編集 げんた 2005年11月13日 12:46

                インデントが入る位置はいいのですが,インデントを入れた後の選択位置が1行目を元に決定されているようで,1行目がTABだとインデント挿入後に選択範囲が飛び越えられてしまいます.

                すいさんの例で言うと
                → [in]t param1,
                a;→[→] int param2;
                → [→] → int param3;
                → [in]t param4;

                であればスペースでもタブでも位置が揃うのですが,1行目を除いて
                → int param1,
                a;→[→] int param2;
                → [→] → int param3;
                → [in]t param4;
                としてTABではなくスペースを入れると最後の行にだけスペースが入る動作は納得ですが,その後の選択範囲が選択1行目の次の文字へ進んでしまって

                → int param1,
                a;→→ [in]t param2;
                → → [→] int param3;
                → _int[ p]aram4;
                と最終行の選択位置が当初と異なる位置になります.

                たぶん最終行で元の位置を保とうとすると1行目の開始位置が文字の中間となって,そこにはキャレットを置けないのでこうなってしまうのかなと.

                ソースコードでは CEditView_Command.cppの5463行目あたり.
                if( 1 == nDataLen && ( SPACE == pData[0] || TAB == pData[0] ) ){
                  bIndent=TRUE;
                }
                スペースとタブだけ特別扱いしています.

                5475行目で
                nIdxFrom = LineColmnToIndex( pcLayout, rcSel.left );
                nIdxTo = LineColmnToIndex( pcLayout, rcSel.right );
                とレイアウト位置から対応する文字のバイト位置を求め,
                nDelLen = nIdxTo - nIdxFrom;
                とnDelLenを計算します.

                5492行目で
                if( bIndent && 0 == nDelLen ) continue;
                と
                文字幅が0,すなわち開始と終了が同一文字の中ならばインデントを行わないようになっています.

                その後5530行目でキャレットを左上に持ってきて右に1文字動かしているので,1行目が1バイト文字でない場合にずれます.
                • [4127] Re7:矩形編集 げんた 2005年11月13日 12:51

                  試しに動作を変更したバイナリを作ってみました.

                  矩形挿入後の選択範囲を1行目ではなく実際に挿入が行われた行を使って計算するもの
                  http://members.at.infoseek.co.jp/sakura_editor/snapshot/sakura_2005-11-13_1.zip

                  これだけだと
                  ---
                  あいう
                  abc
                  ---
                  が

                  あ|いう
                  a|bc

                  と「あ」の後ろで揃ってしまうので

                  さらに,インデント時に挿入をスキップする対象をTAB文字に制限したもの
                  http://members.at.infoseek.co.jp/sakura_editor/snapshot/sakura_2005-11-13_2.zip

                  も作ってみました.

                  これでどうです?副作用あるかな?
                  • [4138] Re8:矩形編集 すい 2005年11月15日 02:04

                    一部の挙動が変になりました。

                    -----
                    あいうえおかきくけこ
                    1あいうえおかきくけこ
                    -----

                    ↑これで1行目の「い」から始まって矩形選択の範囲を2バイト幅以上、
                    例えば2行目の「う」の終わりまで矩形選択して、何か半角文字を入力すると、

                    従来
                    -----
                    あaaaaいうえおかきくけこ
                    1aaaaあいうえおかきくけこ
                    -----

                    sakura_2005-11-13_1.zip および sakura_2005-11-13_2.zip
                    -----
                    あaaaaいうえおかきくけこ
                    1aあaaaいうえおかきくけこ
                    -----

                    1文字目の半角文字入力時に、移動幅が2行目の「あ」の後ろまでと認識されてしまっている、とかでしょうか?
                    選択範囲が後ろに1バイト多く移動してしまっています。

                    ただ、逆に後ろから選択を開始した場合(あまり やらないと思いますけど)
                    例えば2行目の「い」から矩形選択を始めて1行目の「え」の終わりまでを選択範囲にした場合には

                    従来
                    -----
                    あaいaaaうえおかきくけこ
                    1あaaaaいうえおかきくけこ
                    -----

                    sakura_2005-11-13_1.zip および sakura_2005-11-13_2.zip
                    -----
                    あaaaaいうえおかきくけこ
                    1あaaaaいうえおかきくけこ
                    -----

                    のように立場が逆転するようで、、、何と評価したら良いのやら。。。 (;^^A
                    # 総合すると、どっちの方が悪いとか言い難い。

                    >矩形挿入後の選択範囲を1行目ではなく実際に挿入が行われた行を使って計算する
                    ここを「実際に入力された文字の文字幅で計算する」とか無理でしょうか...
                    ひょっとして TAB が入力された場合におかしくなったりしますかね?
              • [4128] Re6:矩形編集 すす 2005年11月13日 18:38

                ▼ すいさん
                > >範囲選択の開始行が2バイト文字の1バイト目で1バイト分の幅で複数行選択すると
                > >スペースかTAB挿入のときだけ変な動作するのです。
                > >2バイト分以上の幅で選択した場合問題ないのです。
                >
                > ですから、そういう動作をするから上記のようなインデント揃えが出来るのですよ。
                げんたさんが下で書いていますが、私も書き忘れていたので、申し訳ないですが。

                2回以上連続でスペースやTABを挿入してみてください。
                1回目は良いけど2回目以降は文字が挿入されず選択位置がずれるだけだったりと
                不思議な動きをします。
              • [4129] Re6:矩形編集 すす 2005年11月13日 19:25

                ▼ すいさん
                > >その仕様自体は理解したし特におかしいとは思わないのですが
                >
                > 理解出来ていないようですが。
                冷静でない書き込みをしてしまった。
                ちょっと反省。
                えーっと

                2回以上連続でスペースやTABを挿入した時で、
                横2バイト分を選択した場合、と横1バイト分を選択した場合
                動作が異なるのですが?

                たとえば下の文字列で「い」部分で行うと1文字挿入自体は問題ないのですが2回目以降は範囲選択が移動するだけでスペース挿入されません。
                <-これが仕様ということでしょうか?

                挿入前
                ------------
                あいうえおかきくけこ
                1あいうえおかきくけこ
                あいうえおかきくけこ
                1あいうえおかきくけこ

                1文字挿入後(「う」の位置に選択位置がずれている)
                <-挿入動作だけは納得
                ------------
                あいうえおかきくけこ
                1 あいうえおかきくけこ
                あいうえおかきくけこ
                1 あいうえおかきくけこ

                以降「こ」の位置になるまで文字は挿入されず選択位置がずれているだけ、
                改行文字の位置でさらに続けて挿入すると
                <-挿入動作だけは納得
                ------------
                あいうえおかきくけこ
                1 あいうえおかきくけこ
                あいうえおかきくけこ
                1 あいうえおかきくけこ


                これも仕様なんでしょうか?よくわからないです。
                • [4130] Re7:矩形編集 すい 2005年11月13日 23:35

                  すみません、何を悩まれているのか分かりません。
                  現在の仕様が単純に
                  >>>で、矩形選択でのインデント入力時は、その文字幅全体にわたって選択された個所のみ
                  >>>インデントされる、という仕様があって。
                  >>># 正確には、文字幅範囲の末尾の位置が選択状態の個所のみ、ですが。
                  と、なっているだけでしょう。
                  ですから、

                  >たとえば下の文字列で「い」部分で行うと1文字挿入自体は問題ないのですが2回目以降は範囲選択が移動するだけでスペース挿入されません。
                  ><-これが仕様ということでしょうか?

                  どう見ても現在の仕様通りかと。

                  ------------
                  >あいうえおかきくけこ
                  >1あいうえおかきくけこ
                  >あいうえおかきくけこ
                  >1あいうえおかきくけこ
                  ------------
                  1行目の「い」の先頭1バイト(?)部分のみを矩形選択した状態だと、
                  2行目と4行目の 文字「あ」 の文字幅(2バイト文字幅)の終了側が選択範囲に含まれていますよね?
                  1行目と3行目は 文字「い」 の先頭側しか選択範囲に含まれていません。

                  その状態で(1回目)半角スペースを入れようとすると、文字の文字幅の終了側が
                  選択状態に含まれている2行目と4行目のみにインデントが入力されますよね。

                  その後、選択範囲が後ろにズレ、1行目と3行目の「う」と2行目と4行目の「い」の、
                  いずれも先頭側のみが選択範囲に含まれた状態になりますよね。
                  いずれの行にも選択範囲中に文字幅の終了側が含まれた文字がありません。
                  ですから2回目は半角スペースを入力しても、どの行にもインデントが入力されなくなるのですね。
                  選択範囲が後ろにズレるのみとなる、という事です。

                  文字幅の終了側が選択範囲に含まれている個所のみにインデントが入力されるという
                  仕様になっているわけですから、そうなるでしょうね。

                  動作仕様自体は極めて単純だと思うのですけど。


                  # げんたさん のように仕様を知っている上で仕様改善されたりするのでしたら
                  # 問題無いと思いますけど、仕様が理解できていないままに(仕様どおりの正常動作
                  # なのに「バグだ」とでも思っているのでは?)弄られると、どこをどうされるか
                  # 分かりませんから困りますわん、というお話です。
                  • [4131] Re8:矩形編集 もか 2005年11月14日 00:19

                    ちょっと本題とずれますけど。
                    >>4051
                    も緊急度低ですが、ついでに考慮してくれるとありがたいです。
                    「SP1つ」→「スペース1つ」の意味です。
                    インデント機能と文字入力処理が一緒になっているから問題がややこしくなるんですよね。

                    #私も詳細な動作を知らないところがあるので報告だけして放置する事が多々あります。
                    • [4133] Re9:矩形編集 げんた 2005年11月14日 00:37

                      >>>4051
                      >も緊急度低ですが、ついでに考慮してくれるとありがたいです。
                      これ,ソースを見るとわざとそう作ってあるんですけど...
                      やめるのは当該処理を削除するだけなんですが,わざわざそうしてあるところを見ると,何か考えがあったのではないかなと.
                      幅1つ選択すれば済むことなので,幅0の特殊処理を有用だと思っている人を悲しませてまで変える必要はないかと思います.

                      # どう有用なのかは全くわかりませんが...
                      • [4134] Re10:矩形編集 すい 2005年11月14日 01:52

                        >>dev:4051 の件。
                        私もコレはなぜこういう仕様になっているのか分かりません。

                        前の方は、ひょっとしたらキー操作で矩形入力モード状態に し易くするために
                        (少ないキー操作で広い範囲を選択状態に出来るように)後ろまで選択範囲を
                        広げるようにしたのかな?

                        # インデント入力時は選択対象の文字の終端側が選択状態でなければ入力されない
                        # 仕様ですから、矩形選択の選択幅が0ではどこにもインデント入力されませんから
                        # インデント入力が絶対可能な範囲まで選択範囲を広げてくれるのかな?

                        とか推測できなくも無いですが。
                        (↑あくまで勝手な憶測です。本当の所はどうなんでしょう?)

                        後の方、理由(利点)が理解できないです。

                        >もう一点、
                        >>abcd (ココから下に3行矩形選択)
                        >>ek
                        >>a
                        >みたいになっている改行直前を矩形選択したときも、文字ならその桁位置に入力できるのですが、同様にスペースだと入力してくれずに、カーソルが同じ行の先頭に移動します。

                        これ。
                        矩形選択範囲が改行より後ろの位置にある状態でインデント入力すると
                        行頭へのインデント入力モードになってしまうのが、個人的には
                        とても不便なのですが、、、
                        よく複数行の行末にインデントを入力したい事があるのですけど
                        行末に対してインデントの矩形入力できなくて。

                        確か以前見たときは「この条件文を消せば良いんだろうな~」とは
                        思いましたが、そもそも何故、現状こういう動作にしてあるのか理由が分からず、、、
                        変えちゃったら困る人いるんでしょうかね?
                  • [4132] Re8:矩形編集 げんた 2005年11月14日 00:33

                    ># げんたさん のように仕様を知っている上で仕様改善されたりするのでしたら
                    いや,初めて知りましたけどね(笑)

                    仕様通りかそうでないかという議論はどうでも良くて,むしろ使いやすいか使いにくいかが問題ではないかと.
                  • [4135] Re8:矩形編集 すす 2005年11月14日 02:04

                    ▼ すいさん
                    > # なのに「バグだ」とでも思っているのでは?)弄られると、どこをどうされるか
                    > # 分かりませんから困りますわん、というお話です。
                    私は直すつもりはなかったですよ。
                    このへんをこういじったらどうかなって報告するつもりではいましたが。
                  • [4136] Re8:矩形編集 すす 2005年11月14日 02:21

                    ▼ すいさん
                    > 動作仕様自体は極めて単純だと思うのですけど。
                    それは動作しようでなくてプログラム解析結果では?
                    本来あるべき動作(私はこれを仕様といっていたつもりですが)
                    とプログラム解析結果(や実際の動作)が同じとは限らないと思うのですが。

                    ------------
                    あいうえおかきくけこ
                    1あいうえおかきくけこ
                    あいうえおかきくけこ
                    1あいうえおかきくけこ
                    ------------
                    ここで3つスペース挿入だったら「私は」こうなることを期待するのですが、違いますか?
                    範囲選択の開始が半角文字だとこうなるので。
                    ------------
                    あ いうえおかきくけこ
                    1 あいうえおかきくけこ
                    あ いうえおかきくけこ
                    1 あいうえおかきくけこ
                    ------------

                    #文字だけでやり取りするとなんかギスギスしていやだなぁ
                    • [4137] Re9:矩形編集 すい 2005年11月15日 01:45

                      >> 動作仕様自体は極めて単純だと思うのですけど。
                      >それは動作しようでなくてプログラム解析結果では?
                      >本来あるべき動作(私はこれを仕様といっていたつもりですが)
                      >とプログラム解析結果(や実際の動作)が同じとは限らないと思うのですが。

                      違います。仕様です。
                      つまりプログラマーから見ての意図どおりの動作、という意味です。
                      ユーザーから見ると素直じゃないと感じる動作でしょうけど。
                      で、私は その仕様を解説しているだけですよ。

                      >ここで3つスペース挿入だったら「私は」こうなることを期待するのですが、違いますか?
                      >範囲選択の開始が半角文字だとこうなるので。
                      >------------
                      >あ いうえおかきくけこ
                      >1 あいうえおかきくけこ
                      >あ いうえおかきくけこ
                      >1 あいうえおかきくけこ
                      >------------
                      ↑こういう風に半角スペースを揃えるような動作を実現するプログラムも
                      現実に可能でしょう(当然ですが)。
                      しかしながら動作仕様(言い換えればプログラム)が現在の物よりも かなり
                      複雑化・大型化しますよね。
                      # インデント入力時には、まず必ず矩形選択されている全ての選択対象行を
                      # チェックしてまわり、行同士で全角文字がズレていないか調べ、その結果に応じて
                      # 「ズレていた場合用のスペース挿入処理(ズレている行のみスペースを挿入する)」
                      # 「ズレていない場合用のスペース挿入処理(全ての行にスペースを挿入する)」
                      # をそれぞれ選択・実行するようにしないと駄目でしょうかね?
                      # 今の簡単な仕様だと、↑このような類のことは全くやっていない、かなり
                      # 簡単なプログラムで済んでいますけど。

                      現在の仕様は、極力簡単(単純)な動作仕様(簡単なプログラム)で
                      インデント揃えの機能が実現できるように考えられた、いわば
                      妙案(?)(というか姑息?とまで言うと言い過ぎ?)のような感じの物なのです。
                      そしてその妙案(?)ゆえに、ユーザーから見ると素直とは感じられない点が
                      色々出てくるわけですけど。

                      >------------
                      >あいうえおかきくけこ
                      >1あいうえおかきくけこ
                      >------------
                      こういった2バイト文字でがあったりする場合なんかは、矩形選択の選択幅を
                      2バイト分以上にしなければインデント挿入結果が変になったりしますしね。
                      でも逆に言えば2バイト分以上の幅を選択すればなんとかなる、つまり
                      使い方(運用面)の工夫で解決できちゃったりするわけで。
                      それで良いか~、という割り切り仕様。


                      そういう「プログラムが簡単になる代わりに運用面での工夫が要る」というのが
                      嫌(まぁ、ユーザーなら普通は嫌ですよね)で、その辺を
                      「プログラムが大幅に複雑化しようが何しようが構わないからオレが直してやろう」
                      とか おっしゃるのでしたら直して頂いて構わない、というより むしろ(当然ですが)
                      有難く思います。私も全く反対などする気はないですし。
                      ただ、仕様を理解しないままに弄られたりすると困る、というだけですので。

                      # だいたい、今の「かなり簡単な(ハズの)仕様(プログラム)」でさえ、皆、プログラムを
                      # 追うのに四苦八苦っぽいのに、これよりさらに複雑な処理にして大丈夫なのかな~、
                      # という気持ちもあったりします。。。
                      • [4139] Re10:矩形編集 すす 2005年11月15日 13:44

                        ▼ すいさん
                        > # だいたい、今の「かなり簡単な(ハズの)仕様(プログラム)」でさえ、皆、プログラムを
                        > # 追うのに四苦八苦っぽいのに、これよりさらに複雑な処理にして大丈夫なのかな~、
                        > # という気持ちもあったりします。。。
                        ソースを見始めたのは
                        以下の場合3つ目の1から選択した場合や2バイト分以上選択した場合
                        予想するとおりの動作になったので、1行直せばすぐ直るんじゃないかなぁ?
                        という軽い気持ちからです。

                        ------------
                        1111111111111111111
                        あいうえおかきくけこ
                        1あいうえおかきくけこ
                        あいうえおかきくけこ
                        1あいうえおかきくけこ
                        ------------

                        たしかにソース追うだけでも、困難だというのが実感できました。

          • [4122] Re4:矩形編集 ぜっと 2005年11月12日 18:59

            ---------
            あいう
            abc
            ---------
            もともと、下記のようなテキストがあって、
            「a」の部分(「あ」の前半部分)のみが選択範囲になるような矩形選択をして、
            スペース入力をしたら、ヘンだなと思ったワケなんですが、

            ---------
            abc
            □あいう
            def
            ---------
            # □は全角スペース
            それは上記のようなテキストのインデント揃えのための
            副作用なわけですよね?

            と、思って試してみると、「a」だけが範囲にはいるような桁までの矩形選択をして
            半角や全角のスペースを入力してみるとうまくいきませんね。
            • [4125] Re5:矩形編集 すい 2005年11月12日 21:56

              >---------
              >abc
              >□あいう
              >def
              >---------
              ># □は全角スペース
              >それは上記のようなテキストのインデント揃えのための
              >副作用なわけですよね?

              インデントを揃えるための物ですよ。
              インデントとは半角スペースと TAB です。
              全角スペースはインデントじゃありません。分類上は漢字(と同じ)です。
              少なくとも、このエディタではそういう扱いです。
              # 一部の機能は便宜上、全角スペースもインデント扱いになったりしていますが。

              実際に この機能の対象となるのは Tabインデントくらいでしょう。