彩りの大地 ソフトウェアのお話

ぺぇじへっどらいん

他のエディタとの標準出力の相互取得を実現する方法

概要

記載の通りです。つまり、例えばTeraPadで編集中の内容をサクラエディタで開いてみたり、 サクラエディタで編集中の内容をTeraPadで開いてみたりといったことを可能にするということです。

TeraPadから標準出力を渡す例

ツールバーの「ツール(T)」→「ツールの設定(T)...」から設定。試しにサクラエディタに標準出力を渡してみる設定に。
ダイアログが出るので「追加」を押下します。
TeraPad -ツールの設定画面
ここの解説と似たような形式で紹介。
--------------------------------
実行ファイル:サクラエディタのexeへのパス
パラメータ:%f (長い形式のファイルパス)
ファイルの上書き保存:する(推奨)
非選択時は使用不可:しない
起動時に実行:しない
終了まで待機する:する(いわゆる排他制御。推奨だが無理にしなくてよい)
メインメニュー(ツールバーからの実行):お好みで
ポップアップメニュー(コンテクストからの実行):お好みで
他の項目:お好みで
--------------------------------

同じように、パスの設定を他のエディタに渡すようにすればbcpadなどでも標準出力が得られます。
※うまく標準出力してくれない場合は開いているファイルのパスにマルチバイト文字(全角文字)が含まれているためにうまくいかない場合があります。 それを回避するためにパラメータを「%F」に変えてみるか、開くファイルの配置をマルチバイト文字を含まない場所に移してから開くかのどちらかを試してみる必要があるかもしれません。

サクラエディタから標準出力を渡す例

サクラエディタでCをコンパイルしてみるでも紹介したように、 「外部コマンド実行」から以下を実行します。こちらもにTeraPadに標準出力を渡してみる設定にしてみます。

TeraPadのexeへのパス $F

と、毎回パスまで入力するのは面倒なので、マクロ化してしまった方が早いです。

標準出力を渡すマクロファイルの作成

ExecCommand("TeraPadのexeへのパス $F", 0x01);

但し、注意点として「\」を入力する際は「\\」としてください。

例えばProgram Files配下へインストールした場合、

ExecCommand("C:\\Program Files\\TeraPad\\TeraPad.exe $F", 0x01);

といった具合になります。
上記の内容を保存したファイルを作成します。 保存場所は任意、サクラエディタのマクロを保存しておく用のフォルダにでも放り込んでおきましょう。 また、ファイル名は判り易く「TeraPad.mac」にしてみます。

さらに便利にするため、ツールバーの「設定(O)」→「共通設定(C)」からマクロを登録しておきます。
サクラエディタ -マクロの登録画面
「マクロ」タブを選び、まずはマクロ一覧の右にサクラエディタのマクロを保存しておく用のフォルダへのパスを入力。
そして名前「TeraPad」(任意)、Fileにマクロファイル「TeraPad.mac」を指定します。 最後に「設定(A)」を押下すると登録されるので、これで「OK」にします。
ツールバーの「ツール(T)」に「登録済みマクロ(B)」があるので、「TeraPad」を実行することでTeraPadに標準出力が渡せるようになります。
さらに「設定(O)」→「共通設定(C)」のツールバータブから「TeraPad」を追加すればツールバーのアイコンから実行することも可能です。

当然、同じように、パスの設定を他のエディタに渡すようにすればbcpadなどでも標準出力が得られます。