ご利用前に必ずお読みください
> >> Kuro さん > > sukemaru さんがマクロを開発 > そのマクロについてですが、折り返しの多い文書のばあいには表示座標でのジャンプが効かないことがあります。 > マクロのコードは単純な仕組みで、 > ①ジャンプ元になる行の文字列を小文字変換して取得しておく > ②F10 ジャンプを実行(ExecuteCommandByID) > ③F10 ジャンプ実行後のアクティブタブのファイル名(小文字化)と ① の文字列を比較して、じっさいにジャンプが実行されたかを判別 > ④ジャンプしていた場合は、① の文字列から (y,x) があれば y,x を取得して SetActivePoint( mePosView, x, y ) を実行 > ※OutputBar.Writeln の部分をアンコメントするとアウトプットバーにログを出力 > > 散文、小説などのように改行までに複数回の折り返しのある行が多い文書では、SetActivePoint(mePosView, x, y) が正しく処理されず、F10 ジャンプ後の論理座標から移動しないことが多いようです。 > また、その場合は、最後の OutputBar.Writeln() で GetActivePointY(mePosView) と GetActivePointY(mePosLogical) が同じ値を返してきます。 > ジャンプ先のファイルがすでに開かれている状態であれば正常に物理座標に移動してくれるようで、物理座標ジャンプが失敗するのは F10 で新規にタブを開いたときにかぎって起きます。 > ※マクロライブラリのコードでは省いてありますが、ExecuteCommandByID() のあとに Sleep(2000) でウェイトを入れてもダメでした。← ログを確認すると、ウェイトなしでもジャンプ先のタブのファイル名 editor.ActiveDocument.Name を正常に取得できているので、ウェイトの必要性はないと判断しました。 > > ベータ 2.7.7 のコメント欄で > > マクロの GetLine メソッドの内部での論理行と物理行の変換処理が誤っているため、それらを使っているプラグインやマクロに影響が及んでいます。 > と書かれていましたが、このマクロの不具合とは関係なさそうですよね。マクロのコード上の不備ならよいのですが、Mery 本体側の不具合かもしれませんのでご確認いただけないでしょうか? > ---- > また、勘違いを元にマクロを起こしたので、ジャンプ元になる "ファイルパス(y,x):" の文字列を返すマクロとして「簡易検索一覧などをアウトプット」を想定していたのですが、そもそもアウトプットバーの文字列を対象にマクロを実行したり、アウトプットバーにフォーカスがある状態でマクロを起動することができません。 :( > 将来的にアウトプットバーとマクロの連携を強めていただくことをご検討いただければとおもいます。 > > > F10 にそのような隠し機能は用意していないです。そして、物理座標というのは文字のインデックス位置 (Pos) のことだったのですね。 > > そういうことでしたら、SetActivePos を使ってインデックス位置でタグジャンプするマクロを作って F10 キーに割り当てる、というのもアリでしょうか。 > Yahoo API との連携ということなので「校正支援アウトプット」マクロのアウトプットバーへの出力結果から SetActivePos なのでしょうね。 > これについても、上に書きましたように、マクロからアウトプットバーの文字列を取得する機能が必要そうな案件だとおもいます。 > > マクロを書くさいにいろいろ試してみたら、F10 ジャンプっていい意味で "かなりあいまい" な仕様なようで(どうなってるの? というかんじですね)。 > 相対パスは予想の範疇でしたが、半角数字 y,x 以外の文字列が挟まっていたりカッコが閉じてなくても関係なしだったりで、元の文字列から y, x を取得する正規表現を F10 ジャンプの仕様どおりにあわせることは断念しました。 :D > > >> シリル さん > > そうですね、残念ながらアウトです > まあ、予想していたとおりの結果です。lol > > > でも SetActivePoint( mePosLogical ) ではなく、SetActivePos( pos ) で動作させれば少しは動作速度があがるかもしれないのかしら。 > これについては、すでにこのトピック内に貼ったコードで確認したかぎりでは、マクロの動作内容にも夜かもしれませんが実効上で有意な差はなさそうです。 > 5月10日のコードは masme さんに紹介していただいた KILI クラスを利用したものよりも処理速度が速いのですが、たいした役には立ちませんでした。 > > まさに ↓ コレ ↓ ですね。 > > まぁインデント等々の操作でブックマークは消えなくなりましたし、検索などの速度も余程、意地悪な条件でわざと負荷をかけなければミリ秒単位で終わりますし > 100行ぐらいまでならループ処理での文字列操作でも1秒以内(@xp)で終わるので、「n万行で…」とかやらない私においては実用上「無問題」とおもっています。 :)
マークダウンを有効にする
テキストエディター「Mery」ベータ版 v3.8.3 を公開
テキストエディター「Mery」ベータ版 Ver 2.6.9 を公開、自動保存機能、バックアップ機能を搭載
テキストエディター「Mery」の配色テーマ集
知っておくと便利なテキストエディター「Mery」の 10 個の小技
テキストエディター「Mery」ベータ版 Ver 3.7.19 を公開
トモダチコレクション わくわく生活 -Switch
トモダチコレクション わくわく生活|オンラインコード版
ニンテンドープリペイド番号 9000円|オンラインコード版
ニンテンドープリペイド番号 5000円|オンラインコード版
リズム天国 ミラクルスターズ -Switch 【Amazon.co.jp限定】特典 アイテム未…
陰の実力者になりたくて! 07
ソードアート・オンライン29 ユナイタル・リングVIII (電撃文庫)
本好きの下剋上 ハンネローレの貴族院五年生3
超かぐや姫! (ファミ通文庫)
領民0人スタートの辺境領主様 XV 老王の来訪 (アース・スターノベル)