◀一般トップへ
  • 7083 行末の矩形選択
    • 7087 Re:行末の矩形選択
      • 7092 Re2:行末の矩形選択
        • 7095 Re3:行末の矩形選択
  • [7083] 行末の矩形選択 ななし 2009年11月05日 22:42

    rev 1674 trunk2 を使用しています。

    AAA
    AAA
    AAA

    と入力した状態から、行末を矩形選択して文字を入力したとき
    普通の文字とスペースで、入力したときの挙動が異なります。
    スペースを入力したときも、普通の文字と同じようになってほしいです。

    ちなみに

    AAA[スペース]
    AAA
    AAA

    という状態で同じことを行うと、私の思い通りになります。

    それからこれは全く関係ない話ですが
    trunk2/sakura_core/convert/CConvert_Base64Decode.{h,cpp}
    を削除し忘れだと思います。
    • [7087] Re:行末の矩形選択 ryoji 2009年11月08日 16:48

      >>dev:4051 も同件ですね。

      矩形選択時のSPACE/TAB動作に手を入れる場合、実装上、>>dev:4103 あたりのSPACE/TABインデント仕様を実現するための実装部が絡んできそうです。
      この、SPACE/TABインデント仕様については現行のヘルプには未記載ですが、horさん(矩形SPACE/TABのもともとの実装者?)がWikiに公開されている「非公式hor版バイナリ&ヘルプ 」のヘルプには記載されているようです。
      http://sakura.qp.land.to/?Develop%2F10

      インデント機能と文字入力とが複雑に絡んでいるみたいで、どうバランスさせればいいのか自分にはよくわからない…

      #「矩形選択時のSPACE/TABによるインデント揃え機能」って、
      #ほとんど誰も知らないような...
      #(>>dev:4103 読むまで自分は知らなかった)
      • [7092] Re2:行末の矩形選択 ななし 2009年11月10日 01:01

        なるほど。複雑なんですね…。

        行末を選択してスペースを押すと先頭にカーソルが戻る理由は
        そこの流れだけではよくわからなかったですが…。
        ソースを追えばわかるのでしょうか。

        ありがとうございました。
        • [7095] Re3:行末の矩形選択 ななし 2009年11月11日 00:20

          CViewCommander.cpp の 4859 行目 /*インデント時は空白行に書込まない*/

          と

          4890行目 /* インデント時は空白行に書込まない */

          の 2つで、インデント時は挿入をスキップするようになっているんだけれども
          それだけだと幅 0 の矩形選択時に
          スペースキーに何の反応もしないようになってしまうので

          4789行目に /* SPACEorTABインンデントで矩形選択桁がゼロの時は選択範囲を最大にする */

          が加筆されているのですね。
          だから行末だけを幅0で選択しているときに、カーソルが行頭に戻ってしまう、と。

          理解しました。何とかなりそうです。