【質問】タブ無効でwindow.Editor.OpenFileで開いたDocumentを取得する方法

  1. はじめまして、Meryを便利に使用させていただいています。
    マクロについて質問させていただきます。
    タブを無効にした状態でマクロTagJumpでジャンプすると、ジャンプ先のファイルは開くのですが、指定行にジャンプしないようです。
    調べたところ、タブを無効にした状態だと、window.Editor.OpenFileで開いたDocumentをうまく取得できていないようです。
    (TagJump.jsではwindow.Editor.ActiveDocumentで取得しています。)
    そこで、タブを無効にした状態でwindow.Editor.OpenFileで開いたDocumentを取得する方法を教えていただけないでしょうか?
    よろしくお願いします。

     |  むー  |  返信
  2. > はじめまして、Meryを便利に使用させていただいています。
    > マクロについて質問させていただきます。
    > タブを無効にした状態でマクロTagJumpでジャンプすると、ジャンプ先のファイルは開くのですが、指定行にジャンプしないようです。
    > 調べたところ、タブを無効にした状態だと、window.Editor.OpenFileで開いたDocumentをうまく取得できていないようです。
    > (TagJump.jsではwindow.Editor.ActiveDocumentで取得しています。)
    > そこで、タブを無効にした状態でwindow.Editor.OpenFileで開いたDocumentを取得する方法を教えていただけないでしょうか?
    > よろしくお願いします。
    ● むーさん
    Wiki にあるタグジャンプマクロを,ご希望の動作になるよう修正しました.
    http://www.haijin-boys.com/wiki/タグジャンプ

    差分を見て貰えばわかりますが,window.Editor だと 1

     |  ks  |  返信
  3. 失礼,変なところで投稿してしまいました.

    差分(http://www.haijin-boys.com/wiki/index.php?title=タグジャンプ&diff=next&oldid=1246)を見て貰えばわかりますが,
    window.Editor だと開いているエディタ 1 つを見ることになるので,タブ無効化で複数のエディタが開かれている場合は window.Editors で順に見ていく必要があります.
    Wiki のマクロにはパスからドキュメントを検索する汎用的な関数が用意されているので,ご自身のマクロに組み込んでみてはどうでしょう?

     |  ks  |  返信
  4. > 失礼,変なところで投稿してしまいました.
    >
    > 差分(http://www.haijin-boys.com/wiki/index.php?title=タグジャンプ&diff=next&oldid=1246)を見て貰えばわかりますが,
    > window.Editor だと開いているエディタ 1 つを見ることになるので,タブ無効化で複数のエディタが開かれている場合は window.Editors で順に見ていく必要があります.
    > Wiki のマクロにはパスからドキュメントを検索する汎用的な関数が用意されているので,ご自身のマクロに組み込んでみてはどうでしょう?

    なるほど、windows.Editorsからたどっていけば良いのですね。
    FindDocument関数を参考にして、タブ無効でも指定行にジャンプできるように修正できました。
    ありがとうございました。

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