エディタのDDE制御


*この話題は、プログラマー用です。


■エディタで、DDEを使う

Windowsが、アプリケーションの通信に利用しているDDEを、利用することが出来る言語を用いると、サクラのエディタである、sakura.exeを、DDEの受信(サーバー)として利用できます。

■メリット

サクラのエディタをプログラムから操作することにより、文章の挿入・置換など、定型処理を簡単に出来ます。

■使い方

ここでは、拙作の、日本語プログラム言語「ひまわり」を使った、エディタ操作の例を紹介します。

サクラエディタに、ひまわりで、コマンドを送るには、「DDE送信」という命令を使います。

例えば、現在編集しているプログラムを保存するには、
sakura』の,『command』に,『save』を,DDE送信
と、書きます。

(3つ目の『』の中を、以下のコマンドに書き換えます。)
コマンド 説明
new エディタを初期化します
open ファイル名 ファイル名に指定したファイルを開きます。
save 現在編集中のファイルを保存します。
saveas ファイル名 ファイル名に指定したファイルへ編集中のプログラムを保存します。
insert 文字列 文字列を、現在のカーソル位置に挿入します。
row 行番号 カーソルを行番号に移動します。
col 列番号 カーソルを列番号に移動します。
copy 現在選択中のテキストをクリップボードへコピーします。
paste クリップボードの内容を、エディタへ貼り付けます。
seltext_save ファイル名 選択中のテキストを、指定ファイルへ保存します。
seltext_open ファイル名 選択中のテキストを、指定ファイルの内容に書き換えます。
play エディタの内容を演奏します。
stop 演奏を中止します。

■サンプル「選択しているテキストを置換する」

以下のサンプルは、エディタの選択している部分を、大文字に変換するプログラムです。
'エディタの選択中テキストを大文字に変換する

"sakura"の、"command"へ、"copy"を、DDE送信。'***1

「テキストを大文字にします」と、二択。
もし、それが、いいえならば、おわり。

クリップボードを、開く。
それを、大文字変換。'***2
クリップボードへ、保存。
"himapad"の、"command"へ、"paste"を、DDE送信。'***3
おわり
***1: サクラのエディタへ、選択領域をクリップボードにコピーしなさいと、命令。
***2: クリップボードの内容を、それに得て、大文字に変換
***3: サクラのエディタへ、クリップボードの内容を選択領域へ貼り付けなさいと、命令。

戻る