◀一般トップへ
  • 8322 コマンドラインオプションのマクロ
    • 8323 Re:コマンドラインオプションのマクロ
    • 8324 Re:コマンドラインオプションのマクロ
      • 8325 Re2:コマンドラインオプションのマクロ
  • [8322] コマンドラインオプションのマクロ ねこ 2018年04月02日 14:05

    sakura.exe "a.txt" -Y=10 -M=InsText('data') -MTYPE=mac

    上記のようなコマンドライン引数を指定して実行した際に、
    既に該当の「a.txt」ファイルがサクラで開かれていた場合、
    -Yのカーソルの行位置へジャンプは動作するのですが、
    -Mのマクロ実行は動作しませんでした。

    「a.txt」ファイルがサクラで開かれていない場合は、
    -Mのマクロは問題なく動作します。
    -Mのマクロも-Yのように既にファイルが開かれていても
    実行出来るようにする方法はありませんでしょうか?
    • [8323] Re:コマンドラインオプションのマクロ berryzplus 2018年04月03日 21:55

      ▼ ねこさん
      > -Mのマクロも-Yのように既にファイルが開かれていても
      > 実行出来るようにする方法はありませんでしょうか?

      ありません。

      -Yオプションの動作自体、要望で追加されたもののようです。
      必要であれば自己改造を試みてみるといいと思います。


      該当部分のソースは↓のあたりです。

      https://sourceforge.net/p/sakura-editor/code/HEAD/tree/sakura/trunk2/sakura_core/_main/CNormalProcess.cpp#l121

      121行目で起動済みのエディタプロセスと通信しています。
      基本的にはこれを真似ればいいんですけど、
      プロセス間通信になりますので、実装は少し手間かもしれません。

    • [8324] Re:コマンドラインオプションのマクロ AC 2018年04月03日 23:37

      先を越されてしまいました。

      参考になれば良いのですが……。

      #1115 追加のコマンドラインオプションを既存プロセスに渡します。
      https://sourceforge.net/p/sakura-editor/patchunicode/1115/

      ## 余談
      ## 1文字でも中身のあるファイルと -X オプションを与えて
      ## -Y オプションを省略すると、キャレットを見失ってしまいます。
      ## 自分が書いた部分では無難な値を補うようにしました。
      • [8325] Re2:コマンドラインオプションのマクロ ねこ 2018年04月04日 13:53

        >>berryzplusさん
        丁寧に教えて頂きありがとうございます。
        なるほど、元々そういった動きは想定していないものなのですね。

        >>ACさん
        パッチの方を使わせて頂きました。
        想定していた通りの動きです!
        複数のファイルやX位置などは使わない為、
        現状のものでも非常に満足です、ありがとうございました。