【要望】選択を素早くハイライト

  1. 初めまして。
    軽さとシンプルさが気に入って最近 Mery をメインに使い始めました。

    早速の要望で恐縮なのですが、ダブルクリックで語句が選択されると同時に編集中の
    ファイル中の全ての同一語句をハイライトさせるような機能をお願いできないでしょうか。

    サクラエディタで「ダブルクリックして選択範囲と同じ単語をハイライト」
    http://sakura.qp.land.to/?Macro%2F%C5%EA%B9%C6%2F116
    というマクロが意図している動作となります。

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

     |  扇風機  |  返信
  2. はじめまして、こんにちは。
    おお、メインですかっ!恐れ多いです・・・。

    選択単語のハイライト表示ですか、、、
    サクラエディタのように簡単には行きませんが、マクロを使用すれば
    似たような動作を再現することは可能だと思います。
    ただし、ダブルクリックは単語選択で予約されてますのでマクロを割り当てることは
    できません。適当なキーに割り当ててやってください。

    サンプルを作ってみたので、以下に掲載してみます。

    選択文字列を強調.js
    ----------------------------------------
    // 何も選択してない場合は単語を選択
    with (document.selection) {
      var s = Text;
      if (s.length == 0)
        SelectWord();
      s = Text;
    }
    // 選択範囲が空ではない場合
    if (s.length > 0) {
      with (document.selection) {
        // カーソル位置を保存
        var ax = GetActivePointX(mePosView);
        var ay = GetActivePointY(mePosView);
        // 選択開始位置を保存
        var tx = GetTopPointX(mePosView);
        var ty = GetTopPointY(mePosView);
        // 選択終了位置を保存
        var bx = GetBottomPointX(mePosView);
        var by = GetBottomPointY(mePosView);
        // 選択開始位置に移動
        SetActivePoint(mePosView, tx, ty, false);
        // 1回検索することでハイライト表示させる
        Find(s, meFindNext);
        // 選択開始位置、終了位置を復元
        if (ax == bx && ay == by) {
          SetActivePoint(mePosView, tx, ty, false);
          SetActivePoint(mePosView, bx, by, true);
        }
      }
    }
    ----------------------------------------

     |  Kuro  |  返信
  3. マクロ有り難うございます。
    今までは、選択→Ctrl+F→Enter→「あれ?ここどこ?」、と検索を代用しては
    軽く迷子になるという有様だったので助かります(え、ブックマーク使えって?)。
    検索迷子から解放されたのでより快適になりました!

    有り難うございました。

     |  扇風機  |  返信
  4. ダブルクリックでマクロ起動というのが実現できずに申し訳ない限りですが、
    お役に立てれば幸いです。

    検索迷子は私も経験多いです。
    ちなみに私は、編集中に検索して変な位置に飛んで行っちゃった場合、
    「CTRL + Z」→「CTRL + Y」でアンドゥ、リドゥして元の位置に戻ってますw

    なんといいますか、、、新しい機能を覚えるのが面倒なのです・・・w

     |  Kuro  |  返信
スポンサーリンク