1 件の投稿を表示中 (合計 4 個)
  • 作成者
    投稿
  • #3938
    rari
    メンバー

    EmEditor Professional Version 6.00.2 を使用させていただいております。
    「対応するかっこへ」機能(標準で Ctl+])で、Rubyなどの do ~ end や、begin ~ end へジャンプすることは可能でしょうか。

    自分で記述するときは { } で置き換えればなんとかなる部分も多いのですが、すでにあるソースを読む場合などにもEmEditorを利用しており、この機能が使えれば非常に重宝します。

    設定等で可能か探して見たのですが見あたりません。

    マクロやプラグイン等でも実行可能でしたら、ヒントやポインタなどいただければありがたく思います。

    #3941
    Yutaka Emura
    キーマスター

    マクロを書くと、以下のようになります。

    do または begin を上方向に検索:

    document.selection.Find(“begin”,eeFindPrevious | eeFindReplaceCase | eeFindReplaceRegExp);

    end を下方向に検索

    document.selection.Find(“end”,eeFindNext | eeFindReplaceCase);

    というマクロになります。これらのマクロを好きなキーボードに設定すると便利かと思います。この場合は、上方向と下方向は違うキーボードになります。

    #3951
    rari
    メンバー

    ご回答ありがとうございます。

    いただきましたマクロを参考に、なんとか一つのマクロで上下方向に切り替え出来ないかといろいろやってみています。

    その中で、検索途中にフリーズ(といいますか暴走?)してしまう現象があったのですが、原因などわかりますでしょうか。

    — (ここから) —
    def dummy_end
    1
    end

    def hoge(dummy)
    end
    — (ここまで) —

    上記の3行目のend(あたり)から、上方向に “def|end” の正規表現で検索をかけると暴走します。
    マクロのスクリプトがおかしいのかと、エディタの「検索」機能で
    ・「大文字と小文字を区別する」
    ・「正規表現を使用する」
    ・「単語のみ検索する」
    で検索を実行すると、同様の状況になります。この中で、「単語のみ検索する」のチェックをはずすと、大丈夫のようです。
    また、「dummy_end」を「dummy_enc」などに変更すると、問題ありません。

    この「単語のみ検索する」機能が原因でしたら、正規表現のみを使用することで回避できるかと思いますが、全然別の原因(正規表現の記述がおかしいなどw)でしたら、ご指摘頂けましたら嬉しく思います。

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

    #3952
    rari
    メンバー

    自己レスです。
    上記は、「EmEditor 本体の不具合の報告」にあります、「検索時に固まる」と同じ問題でしょうか。
    それでしたら、「単語のみ検索する」のチェックをはずせばとりあえず解決すると言うことでしょうか。
    あまり調べずに投稿し、申し訳ありません。よろしくお願いします。

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