Meryで入力していたテキスト部分を外部ツールで開いたソフトに送りたい。

  1. お世話になっております。とても素晴らしいエディタで感謝しております。
    さて表題にありますとおり、
    Meryで入力している最中のテキスト部分を外部ツールで開いたソフトに送りたいのですが可能でしょうか?
    利用ソフトは日記帳ソフトwDiary(以下:wDiary) となりますです。

    順を追って説明しますと、こんなことを望んでいます。
    1.Meryで新規テキスト(無題1)等を開く。
    2.上記新規テキストに文字を書く。
    文字列はそのままの状態(マウスで指定した範囲を選択できるならなお良し)
    3.外部ツールでwDiaryを開く
    4.開かれたwDiaryの入力部分(デフォルトではその日の日記部分、テキスト入力部分)
    に2.の新規テキストで書いた文字がそのまま転写される
    (その際、新規テキストの部分が消えてもいいです。wDiaryに転記されるので)

    【問1】この1~4の流れを行いたいのですが、
    外部ツールで可能でしょうか?
    もし難しいのならばどなたかプラグインもしくはマクロ等、
    他に参考になるURL等々を教えて頂きたく思います。

    ※なお、今回また外部ツールについて外部ツールのプロパティ画面についての
    詳細などのページなど調べたところヘルプのところには無かったのですが、
    他に記載されいたりするURLはございますでしょうか。
    もしなければ外部ツールのプロパティについて詳細を教えていただきたいと思います。
    (タイトルはわかります。コマンド部分も指定したexeファイル等を指定する部分とわかります。が、それ以外がさっぱりです。そもそもコマンド部分も間違っているかもしれません)

    たとえば引数の項目>部分を押したときの出てくる文字の詳細
    (フォーラムでは"$(Path)"は見かけますが↑の項目にはない)
    作業フォルダーの>押したときの項目も。
    また、ファイルを保存するは何についてなのか?
    右側のアウトプットバーを使用するにチェックを入れた際に、グレーアウトがすべて
    解除された部分の項目(終了時に閉じる、カスタム他)

    【問2】前述したとおりヘルプには詳細が省かれている(私が見逃しているかもですが)
    項目について詳細がしりたくどなたか教えていただける方がいらっしゃいましたら
    助かります。

    利用os windows10 64bit
    Mery現在最新版 65bit ダークモード利用

    以上。

     |  ももんが  |  返信
  2. Mery をご愛用いただき、ありがとうございます。

    > 【問1】この1~4の流れを行いたいのですが、外部ツールで可能でしょうか?

    Mery から選択したテキストを外部ツールで開いたソフトに送ることはできるのですが、そのテキストを受け取るためには、受け取る側のソフトが対応している必要があります。

    wDiary さんをインストールして試してみたのですが、残念ながらそのような機能は見当たらなかったです (もしかしたらあるかもしれませんが…)

    ご希望の動作を実現するには、wDiary さん側で外部からのテキストを受け取る仕組みを作ってもらう必要があると思いますので、そちらに問い合わせてみるのが良いかもしれませんね。

    何か受け口があれば、Mery からテキストを送信できる可能性が出てきます。

    > 詳細などのページなど調べたところヘルプのところには無かったのですが、他に記載されいたりするURLはございますでしょうか。

    Mery は余暇時間を利用して趣味の範囲で開発しているもので、ヘルプやドキュメントの作成は少しずつ進めていますが、なかなか進まないのが現状です。

    > 外部ツールのプロパティについて詳細を教えていただきたいと思います。

    外部ツールの詳細については、まだ解説記事が書けておらず、ご不便をおかけしますが、フリーソフトということでご理解いただけると嬉しいです。

    もちろん、特定の項目についての質問にはお答えできますので、何でも気軽に聞いてくださいね (すべてについて答えるのはちょっと難しい場合もありますが…)

    > たとえば引数の項目>部分を押したときの出てくる文字の詳細

    メニューに表示される文字の右側に日本語で説明が書いてあります。「パス」や「ディレクトリ」、「拡張子」といった用語については、インターネットで検索してみると詳しい情報が見つかると思います。

    > また、ファイルを保存するは何についてなのか?

    これは、外部ツールを実行すると自動的に編集中のファイルを [上書き保存] する機能です。

    > 右側のアウトプットバーを使用するにチェックを入れた際に、グレーアウトがすべて解除された部分の項目(終了時に閉じる、カスタム他)

    [終了時に閉じる] は、外部ツールを実行した後にアウトプット バーを閉じる機能です。

    [カスタム] は、コマンド プロンプトから外部ツールを実行し、標準入力として送信する文字列を指定する項目です。

    [標準入力] などの用語はコマンド プロンプトの使い方を知っている前提の機能なので、使いこなすには少し Windows について勉強が必要かもしれませんが、慣れればいろんなことができるようになると思います。

    > 【問2】前述したとおりヘルプには詳細が省かれている(私が見逃しているかもですが)項目について詳細がしりたくどなたか教えていただける方がいらっしゃいましたら助かります。

    ヘルプを完成させるにはまだ時間がかかると思いますが、特定の項目についての質問があればフォーラムでお答えしますので、調べてもわからないことがあれば気軽に聞いてくださいね。

     |  Kuro  |  返信
  3. お忙しい中返信どうもありがとうございました。
    長年wDiaryとエディタはアウトラインエディタを使いたいということで他のソフトを試しつつ
    最終的にMeryにいきついきました。うまいことこれまで使っていたwDiaryと連携できればと思いましたが難しい様子なのですね。自分でもごり押しでcopilotなどを駆使してなんとか出来ないかとおもったのですが(プログラミングの力が不足しているのでc#とAIでゴり押しです)、
    なかなか思うようにはいっていません。本来ならアウトラインプラグイン?のようにMery画面の左側にカレンダーが表示できればいいのですがこれもできれば実装してみたいと思いつつ腕が見合ってないので悔しい思いをしつつマクロやプラグイン等学習し直しているところです。
    なお解決したところとしては外部ツールの利用としてとりあえず何かを起動するときに、
    絶対パスを入れてしまえばとりあえずはそれだけで他に何も入力しないで立ち上がるということでした。その他はまだ勉強不足なところもありもうすこし様子をみつつ考えています。
    また、ヘルプについてですが返信の最後にヘルプを完成させるにはまだ時間がかかるとのことですが今後はそれも考慮ということなのですね。承知しました。
    私の得意分野としてはリアルの生業として取扱説明書等の作成業でしてCG、アイコン、ヘルプとかのまとめ作業は好きなので、
    個人的にまとめたカンニング用ヘルプを作ろうと思っているのですが(あくまで個人利用です)この手のものを作ると骨が折れますよね時間もかかるし。
    ともあれ縷々と返信を書いてしまいましたが、今後もし調べて分からないことがありましたらまた質問させていただきたいと思います。
    あらためまして、良いソフトウェアをどうもありがとうございます。

     |  ももんが  |  返信
  4. ご返信ありがとうございます。

    > 個人的にまとめたカンニング用ヘルプを作ろうと思っているのですが(あくまで個人利用です)この手のものを作ると骨が折れますよね時間もかかるし。

    そうなんですよね。私の場合、プログラミングは趣味としても楽しくやっていますが、マニュアル作成は仕事でもやりたくないぐらい苦手な分野なので、休日を割いてまでやるのはなかなかモチベーションが上がらなくて…。

    > うまいことこれまで使っていたwDiaryと連携できればと思いましたが難しい様子なのですね。

    そうですね。wDiary さん側にデータの受け口がないとなると、クリップボード経由でも良ければ、なんとかなるかもしれません。

    マクロを勉強中とのことなので、参考までに以下のようなマクロ (.js) を書いてみました。

    /*
    wDiary を起動してショートカット キーを送信するサンプル
    */
    var path = "C:\\Temp\\wdiary160\\wDiary\\wDiary.exe"; // wDiary.exe の絶対パス
    var sel = document.selection;
    if (!sel.isEmpty) {
    	sel.Copy();
    	var sh = new ActiveXObject("WScript.Shell");
    	sh.Run(path);
    	Sleep(500); // アプリが起動するまで待機
    	sh.SendKeys("^ "); // 今日の日付を選択
    	Sleep(100);
    	sh.SendKeys("^v"); // 貼り付け
    } else {
    	alert("テキストを選択してください。");
    }
    
    • path には wDiary.exe の絶対パスを指定します。パスの区切り (\) はエスケープのため、\\ と二つ書くのをお忘れなく。
    • Sleep(500); はアプリが起動するまでの待ち時間 (ミリ秒単位) なので、PC が遅い場合は待ち時間を増やしてみてください。
    • sh.SendKeys("^ "); は wDiary の [今日の日付] コマンドを実行するショートカット キー、Ctrl + スペースです。
    • sh.SendKeys("^v"); は wDiary の [貼り付け] コマンドを実行するショートカット キー、Ctrl + V です。

    Mery でテキストを選択した状態でこのマクロを実行すると、クリップボード経由で wDiary の今日の日付のページに Mery で選択したテキストが入力されます。

    ただし、これはあくまでもサンプルですので、ご了承くださいね。

    業務での利用など、本格的に使う場合は、wDiary.exe のプロセスを正確に待機したり、コマンド送信先をちゃんと判別するなど、もう少し工夫が必要になるかもしれません。

    基本的にマクロやプラグインの制作依頼は受けていませんが、技術的な質問にはできる範囲でお手伝いしますので、挑戦してみてくださいね。

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