アウトラインの要素内の範囲選択方法について

  1. お世話になります。
    アウトラインプラグインを使用して、例えば以下のような構造のテキストを
    作成したとして、#2の中のテキストのみを範囲選択するのに、スマートな
    方法はありませんでしょうか?
    要素の範囲内のみを全選択できるCTRL+Aのようなショートカットキーがあれば
    ベストなのですが見つけることができず、現在はマウスで選択していますが、
    キーボードのみでできるとありがたいです。
    よろしくお願いいたします。

    # 1
    あああああああああああああああああ。
    ああああああ。

    # 2
    いいいいいいいいいいいい。
    いいいいいい。

    # 3
    ううう。

     |  ngc  |  返信
  2. Mery をお試しいただきありがとうございます。

    アウトライン解析の部分はプラグインというかたちでのご提供となっておりますので、アウトラインプラグインの機能を本体側のショートカットキーで呼び出すことはできません。

    アウトラインプラグインを使用せずマクロを使うか、アウトラインプラグインのソースはオープンソースとなっていますのでそちらをもとにキー操作を可能とするプラグインを作成していただけばできないことはないと思いますが…。

    ご不便をおかけして申し訳ございませんがこちらについては改善が難しいため、何卒ご理解とご了承いただけましたら幸いです。

     |  Kuro  |  返信
  3. お忙しいところ、ご返信頂きありがとうございます。
    プラグインの仕様とのこと理解いたしました。
    マクロでうまいことできないか試してみます。
    ご対応ありがとうございました。

     |  ngc  |  返信
  4. 横から失礼します。お気持ち、よくわかります
    おそらく要素?1つ1つが1話なのではないでしょうか?
    違ってたらアレですけれども以下のようなマクロはどうでしょうか?

    //----------------------------------------------------------
    // 設定
    var wd="#";	// レベルの記号
    var flg=0;	// meFindReplaceRegExpなどフラグ
    //----------------------------------------------------------
    var s=Document.Selection;
    var sx=ScrollX,	sy=ScrollY;	// スクロール位置退避
    
    if(s.Find(wd,meFindPrevious|flg) == 1){
    	s.StartOfLine(); s.LineDown();	// 次行の行頭
    }else{
    	s.StartOfDocument();	// 文書の先頭
    }
    var ePos=s.GetActivePos();	// 選択範囲の終点
    
    if(s.Find(wd,meFindNext|flg) == 1){
    	s.StartOfLine();	// 行頭
    //s.LineUp(); s.EndOfLine();	// 前行の末尾
    }else{
    	s.EndOfDocument();	// 文書の末尾
    }
    var sPos=s.GetActivePos();	// 選択範囲の始点
    s.SetActivePos(sPos);	// 選択範囲の設定:始点
    s.SetAnchorPos(ePos);	// 選択範囲の設定:終点
    ScrollX=sx;	ScrollY=sy;	// スクロール位置復帰
    editor.ExecuteCommandByID(2139);	// 検索強調を解除
    

    要素内のどこかにキャレットがあればその要素全体を選択します
    本文中に#があるとうまく動作しません、正規表現を使えばいい感じになるかもですが、私は正規表現が苦手なので……
    というか、もうすでに解決されてるかもですね

     |  シリル  |  返信
  5. シリル様

    ご返信いただきありがとうございます。
    おっしゃる通り、各要素が1話で、その文字数を調べるための操作でした。
    そして、頂いたマクロがまさに求めていた機能そのものでした。
    本当に感謝いたします。ありがとうございました。

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