コマンドからのマクロ実行

  1. こんにちは。久しぶりにMeryを更新しました。
    以前に問い合わせたステータスバー上でのクリックについて、期待どおりの動作となりました。
    ご対応ありがとうございます。
    ところで、以下のようなマクロが動作しなくなりました。

    --- カレント行にClipboardの内容を書き込み(WriteString.js) ---
    var s = ClipboardData.GetData();
    document.Write(s);
    --- Clipboardの内容を検索(SearchString.js) ---
    var sel = document.selection;
    var s = ClipboardData.GetData();
    sel.Find(s, meFindNext + meFindAround + meFindReplaceRegExp);

    外部でClipboardを設定して、コマンドで次のように呼び出しています。
    Mery.exe test.txt /mf WriteString.js
    Mery.exe test.txt /mf SearchString.js

    Ver.2.4.8.6420から試してみましたが、Ver.2.5.4の変更に伴うもののようです。

    ついでに質問ですが現在の設定(オプション等)が失われたり、他の環境に設定を移したい時に
    必要になるファイルはどれでしょうか?
    Mery.ini?,編集モード設定のエクスポート、他にありますか?
    オプションの設定はどこに保存されているのでしょうか?

    以上です。よろしくお願いします。

     |  すなふきん  |  返信
  2. こんばんは、お久しぶりです。

    > Mery.exe test.txt /mf WriteString.js
    > Mery.exe test.txt /mf SearchString.js

    以前のバージョンでは「/mf」の動作に若干問題がありましたが 2.5.4 で改善されています。上記の記述で動作していたのは不具合によるもので、たまたま動いていました^^;

    正しい記述法は下記の順です。

    Mery.exe /mf WriteString.js test.txt
    ↑ このように Mery.exe /mf "マクロファイル名" "マクロをかけたいファイル名" の順番で指定してください。

    さらに、例えば、

    Mery.exe /mf WriteString.js test1.txt test2.txt test3.txt
    ↑ このように複数のファイルに 1 つのマクロを実行させることも可能ですし、

    Mery.exe /mf WriteString.js test1.txt /mf SearchString.js test2.txt
    ↑ このように異なるマクロを別々のファイルに実行させることも可能になりました。

    > ついでに質問ですが現在の設定(オプション等)が失われたり、他の環境に設定を移したい時に
    > 必要になるファイルはどれでしょうか?
    > Mery.ini?,編集モード設定のエクスポート、他にありますか?

    オプションの設定や編集モードの設定などもすべて Mery.ini に含まれておりますので、通常は Mery.ini だけを移行すれば大丈夫です。

    Mery.ini の場所は「ヘルプ → バージョン情報」を開いてバージョン情報ダイアログの Mery のアイコンの絵の部分をダブルクリックすれば Mery.ini の保存先が開きます。そのフォルダ内のファイルが設定ファイルのすべてです。

    Mery.ini = オプションとかその他諸々
    Mery.his = 最近開いたファイルのカーソル位置のデータ (不要なら無くても OK)
    Mery.dic = スペルチェックの辞書に登録した単語 (不要なら無くても OK)
    Mery.log = エラーログ (消しても OK)

    プラグインなどをご利用の場合は同じフォルダに Plugins フォルダがあり、そこにプラグインの設定ファイルが含まれていることもありますので、そちらも一緒に移行すれば大丈夫です。

     |  Kuro  |  返信