1 件の投稿を表示中 (合計 8 個)
  • 作成者
    投稿
  • #11035
    windaria
    参加者

    javascriptで記述している時に発生しています。

    [t][t][t]if(frm.checked) { chg = ele.value;}

    ※[t]はタブ

     のように、タブでインデントされた行の中に{ }で閉じられた文があった場合、if以降の文中に追加で文字を書くと一文字毎にタブインデントが解除されていきます。
     上記の例ですと{}に2文字追記すると[t]が一つしかない状態になります。

     特に設定のプロパティを弄ってはいませんが、この症状がでるのは自分だけなのでしょうか。

    windows7 64bit
    EmEditor v 11.0.5

    #11038
    Yutaka Emura
    キーマスター

    windaria 様

    いつも EmEditor Professional をお使いいただき、誠にありがとうございます。

    こちらでも再現しました。これは設定のプロパティの [基本] タブの [タブ/インデント] ボタンをクリックして、自動インデントを無効にしていただければ、この現象はなくなります。

    どうぞよろしくお願い申し上げます。

    #11046
    windaria
    参加者

    返信ありがとうございます。

     自動インデントを切ると現象はなくなりますが、自動インデントは必要な機能として有効に使わせてもらっています。
     自動インデントをONのままで現象がでないようにはならないのでしょうか?

    #11049
    Yutaka Emura
    キーマスター

    windaria 様

    いつも EmEditor Professional をお使いいただき、誠にありがとうございます。

    正規表現を使った場合の自動インデントには問題があるかもしれないですね。これについては調べておきます。とりあえず、「正規表現を使用する」のチェックを外していただければ、ご希望に近い動作になるかと思います。

    どうぞよろしくお願い申し上げます。

    #11056
    windaria
    参加者

    ありがとうございました。
    正規表現のチェックを外す動作で現行では特に問題はありません。

    ですが、動作チェック中に新たな事が判明しました。
    もういずれかで報告されてるかと思われますが、最後の行(EOF)で行全体を選択、TABキーによるインデントを試みるのですが選択した文章が消えた後にTABが挿入されます。

    これによって特に何かしらの問題があるわけではありませんが、気になったので追記しておきます。

    #11057
    Yutaka Emura
    キーマスター

    windaria 様

    いつも EmEditor Professional をお使いいただき、誠にありがとうございます。

    ご報告ありがとうございます。

    最終行のように改行を含まない行を選択して Tab キーを押した場合には、選択範囲が消えて Tab が挿入される動作になりますが、これは仕様です。

    どうぞよろしくお願い申し上げます。

    #11058
    windaria
    参加者

    返信ありがとうございます。

    しかしながら、全体選択や正規表現での置換などにおいて、上記のように最後の行が終了している文書で[t]を行うとキチンとインデントされるのですが、1行だけ選択した場合だと消えるというのは紛らわしいように思えます。

    仕様でしたら仕方ありません。
    なるべく気をつけるようにはして利用していきたいと思います。
    いつもありがとうございます。

    #11060
    Yutaka Emura
    キーマスター

    windaria 様

    改行が含まれるように選択していただければ、1行だけでも、インデントとして動作します。しかし、改行が含まれないように選択された場合、その選択箇所が Tab に置き換わるという単純な動作になります。このような動作を期待されるユーザーも多いためです。

    ただし、文書の最後の行で行選択を行った場合は、常にご希望のようなインデントとして動作するように変更することを検討します。

    ご意見ありがとうございます。

    どうぞよろしくお願い申し上げます。

1 件の投稿を表示中 (合計 8 個)
  • このトピックに返信するにはログインしてください。