プログラムの実行
プログラムの実行
Text-Cのプログラムを実行するには、下記の操作をおこないます。
- WZ7でプログラムを開く。
- [マクロ]メニューの[コンパイル]を実行。
- [マクロ]メニューの[履歴から実行]を実行。
- 先頭のプログラムを選択してOK。プログラムが実行されます。
WZ7でプログラムを開いて、[マクロ]メニューの[実行]から起動することもできます。
プログラムは、main関数から実行されます。
- main関数は、引数(void)か簡易関数定義で作成します。
- main以外の関数も実行できます。関数は引数(void)か、簡易関数定義で作成します。
- 関数が複数ある時には、選択ダイアログが表示されます。コマンドを選択してOKすると実行されます。
コンパイルしたプログラムは、WZを閉じるまでキャッシュされます。
- プログラムを書き換えて実行すると、以前のコンパイルのプログラムテキストで実行されます。
- キャッシュを更新するには、再度コンパイル操作をおこないます。
- コンパイルでキャッシュを更新できない時はメッセージを表示します。一度WZを終了します。
プログラムのコンパイルは、テキストバッファのプログラムでおこなわれます。
エディタでプログラムを変更してからコンパイルすると、新しいプログラムでコンパイルされます。
ファイルのプログラムではコンパイルされません。
保存しないでプログラムを実行するには、新規作成の無題テキストにプログラムを記述して、コンパイルして実行します。
プラグイン
Text-Cでは、プラグインを組み込むと、WZの動作の拡張や変更できます。
プラグインのプログラムには、plugin_editorかplugin関数の定義と、authorとnameを定義します。
plugin_editor関数は、エディタのタブの作成時に呼び出されます。
引数は、テキストのビューのウィンドウハンドルとなります。
int plugin_editor(HWND w)
{
// スタートアップ処理
return 0;// 0を返します。
}
スタートアップ処理では、wに対してフックなどの初期処理をおこないます。
plugin関数は、Text-Cのアプリケーションの起動時に呼び出されます。
引数は、ウィンドウハンドル(プラグインを組み込むアプリケーションのウィンドウのハンドル)となります。
アプリケーションの起動時に、plugin関数が呼び出されますので、スタートアップ処理を記述します。
int plugin(HWND wa)
{
// スタートアップ処理
return 0;// 0を返します。
}
プログラムの先頭にauthor:文で作者名の指定、name:文でプログラム名の指定、title:文でプラグインの説明を記述します。
- authorとnameには、ファイル名の文字列が指定できます。
authorのsystem,root,enzo,tyは予約されています。
- デフォルトでは、authorはplugin、nameはプログラムのファイル名になります。
titleは省略できます。
- cfgnew APIで、設定ファイルを取得するフォルダはauthorで決定されます。
作者名のフォルダごとに設定ファイルを作成できます。
#include <text.h>
author: gonbei
name: test
title: テストのプラグイン
int plugin_editor(HWND w) {
...
}
作成したプラグインを有効にするには、下記の操作が必要です。
- WZ7でプラグインのプログラムを開く。
- [マクロ]メニューの[プログラムの登録]を実行して、プラグインを登録。
「プログラムの登録」を実行すると、下記の登録を実行します。
- 「WZフォルダ\textc\author」フォルダに「name」ファイル名でプログラムをコピー。
- 高速化のため、コンパイルした実行形式のプログラムを登録。
- プラグインの一覧に「\\author\name」を登録。
既に同じプラグインが組み込まれている時は、上書きして置き換えます。
プラグインの一覧を確認するには、[マクロ]メニューの[プラグインの一覧]を実行します。
- 一時的にプラグインの組み込みを解除できます。
「ステータス」項目の↓ボタンから「OK」「SKIP」を選択します。
- プラグインの組み込みは、一覧の表示順で実行されます。
実行順を変更するには、「上へ」「下へ」ボタンを押します。
プラグインを無効化して起動するには、起動スイッチに@0を指定します。
wzeditor.exe @0
アプリケーションの組み込み
アプリケーションプログラムを登録すると、起動を高速化できます。
- 登録時にコンパイルして、実行プログラムのファイルを作成します。
- コマンドラインから、アプリケーションを起動できます。
アプリケーションを登録するには、プログラムにアプリケーションIDの記述とappmain関数を定義します。
プログラムの先頭に、app:と続けてアプリケーションのIDを識別値で指定します。
#include <text.h>
app: txedit
「プラグイン」を参照して、author・name・titleを指定します。
アプリケーションの起動関数appmainを作成します。
- 引数はファイル名となります。ファイル名の指定がない場合はNULLとなります。
- 返り値として、アプリケーションのウィンドウハンドル(app.wa)を返します。
HWND appmain(CLM fn)
{
HTEXT editor = editorexec(fn);
return editor.wa;
}
アプリケーションを登録するには、下記の操作をします。
- WZ7でアプリケーションのプログラムを開く。
- [マクロ]メニューの[プログラムの登録]を実行して、アプリケーションを登録。
アプリケーションを起動するには、[マクロ]メニューの[アプリケーションの一覧]から選択して実行します。
コマンドラインからアプリケーションを起動するには、アプリケーションIDを指定します。
ファイル名とスイッチ指定は省略できます。
wzeditor.exe @アプリケーションID ファイル名 -スイッチ指定
ツールの組み込み
WZ7では、アプリケーションと同様にツールを登録できます。
ツールのエントリ関数の先頭に、tool:とツールIDを識別値で記述し、title:とタイトルを指定します。
grep_tool {
title: WZ Grep
tool: txgrep
...
}