Text-C
ガイダンス
プログラミング言語「Text-C」は、C言語に文字列処理のテキストライブラリと、プロパティを追加した言語です。
- Text-Cのプログラム仕様は、C言語と互換性があります。
- Text-Cは、WZ EDITOR 7、WZ EDITOR 6、WZ Mobile for Windows Mobile(以下WZM)に対応しています。
WZ7のText-Cは、WZ6と上位互換性があります。WZ6のText-Cプログラムはそのまま動作します。
Text-Cでは、「テキスト」を基本データとして扱います
- テキスト(HTEXT)は、安全に挿入削除可能な文字列バッファとして動作します。
- テキストは、new()文で作成し、delete()文で削除します。
delete()で削除しなくても、自動的に削除されます。
- テキストは、バイナリデータにも対応しています。
テキストを表示するには、テキストに対してビュー(HVIEW)を作成します。
- HVIEWは、表示属性と折り返しなどの表示スタイルを持ちます。
- 表示属性には、「エディトボックス」「アウトライン」「リストボックス」「1行テキストボックス」「メニュー」「テーブル」があります。
- 同一のテキストに対して、複数のビュー(HVIEW)を作成できます。
テキストを編集すると、すべてのビューに反映されます。
(例)「エディトボックス」と「アウトライン」の2つのビューを作成すると、エディトボックスの編集がアウトラインに反映されます。
Text-Cで、下記のプログラムを作成できます。
- エディタのHTEXTやHVIEWを取得して、機能を拡張するマクロプログラム。
- エディタのHVIEWをフックして、機能を変更するプラグイン。
- 「文字数カウント」などのツールプログラム。
- 「ファイラー」などのアプリケーションプログラム。
テキストやビューを操作するには、#include <text.h>でヘッダファイルをインクルードします。
APIの一覧や使用方法は、WZのプログラムフォルダのtext.hファイルに記載されています。
C言語との相違
Text-Cには、C言語との相違や制限事項があります。
- 配列は最大3次元です。
- 自動変数を0に初期化します。
- 変数名・関数名の長さは最大63文字です。
- asm文は無効です。
- const宣言は無効です。
- register宣言は無効です。
- typedef定義はネストできません。
- 文字列、数値の<\8進数>には対応していません。<\0>には対応しています。
- サイズが4バイトを越える構造体の実体を「関数に渡す」「返り値で返す」ことはできません。
構造体はポインタで渡します。構造体の代入には対応しています。
- タイプチェックはC++に近い厳密なチェックをおこないます。
「未宣言の関数呼び出し」「引数のタイプミスマッチ」はエラーとなります。
- 標準ライブラリ関数は、strcpyなどの文字列、memcpyなどのメモリ操作、printfなどの文字出力関数に対応しています。
#include <text.h>でヘッダファイルをインクルードします。
サンプルアプリケーション
WZ7には、下記のサンプルアプリケーションプログラムが付属しています。
WZ Grep | フォルダのテキスト検索・プレビュー・一括置換するグローバル検索 |
WZ Filer | 2画面のキーボードでファイルを操作するファイラー |
Tx Card | サンプルカード型データベース |
SDIエディタ | サンプルSDIテキストエディタ |
別ダウンロードで、下記のサンプルプログラムが提供されています。
Textc Mail | メール・テキストWEBブラウザ・ノートフォルダを統合したメーラー |
インターネット検索 | 編集画面からキーワードをインターネットで検索 |
Textc Ftp Filer | FTPサーバのファイルのアップロード・ダウンロード |
- サンプルマクロプログラムにつきましてはテクニカルサポートの対象外とさせていただきます。
- ユーザの作成されたマクロの動作やマクロに関するお問い合わせにつきましては、テクニカルサポートの対象外とさせていただきます。