この文書は aescm 0.26 の README(README.ja, doc/readme.ja.html) です。

Aescm は汎用の文書にコードを埋め込むためのツールで、 フィルタとして、スクリプトでインタプリタの替りとして、 ハンドラCGIとして使うことができます。 現在のヴァージョン(0.26)はアルファ版なので、仕様の変更がいろいろありえます。 安定版は、Scheme 汎用の escm 1.1 です。 安定版の文書からこの版用の文書に変換する 2aescm も付属します。

Aescm の実体は、 XMLプリプロセッサ命令の「外の部分」を コードに変換するフィルタで、 子プロセスとして起動したインタープリタにコードを送って実行させています。 変換規則を柔軟に変更できるので、 お好みのスクリプト言語のお好みの実装系で使うことができます。

インストール

Schemeの処理系 Gaucheをデフォルトとして使うばあいや、 Gaucheがインストールされていず Guile を使うばあいのインストールは簡単です。

./configure
make
make install

ただし、デフォルトの設定では Schemeでしか使えません。 また Scheme でも 別の変換規則が必要な SCM を使うことができません。 いろいろな言語で使いたいばあいは、 configure に --enable-polyglot オプションを追加してください。 その他、 デフォルトの処理系の変更、 デフォルトの言語の変更については INSTALL (doc/intall.html) を参照してください。

環境変数

デフォルトのインタープリタは 環境変数 ESCM_BACKENDで変更することができます。 オプションまで含めて指定してください。 主要なSchemeの処理系については doc/interpreter.html にオプションの説明があります。

さらに--enable-polyglotオプション付きでコンパイルした 場合は、環境変数 ESCM_DEFAULT でデフォルトの 言語を変更することができます。

CGI

ハンドラCGIプログラムとして、 また、CGIスクリプトの#!行でインタプリタの替りとして使うことができます。 ただし、 いずれの場合でもコードの中で POSTメソッドによるパラメータを得ることが仕組み上できません。 そのため*escm-query-string* (他の言語では $escm_query_string, EscmQueryString など)に、 パラメータを束縛しています。 GETメソッドのときにも束縛しています。

なお、ハンドラCGIとして使うばあいは、 お使いの環境に合わせて /var/www/cgi-bin, /usr/local/apache/cgi-bin などにコピーするかハードリンクしてください。 接尾辞 .cgi を追加する必要があるかもしれません。 設定については Apache のドキュメント を参照してください。

言語別の設定ファイル

--enable-polyglotオプション付きでコンパイルしたばあい、 変換するときに言語別の変換規則を設定ファイルから読み込みます。 それらは $(datadir)/aescm/lang (例えば /usr/local/share/aescm/lang)にインストール されます。 設定ファイルを変更することで変換規則を変更できます。 またファイルを追加することで対応できる言語や処理系を増やすことができます。 設定ファイルの書式については doc/gimmick.html を参照してください。

この文書は ../doc/readme.escm から 2004年 2月29日 日曜日 00時15分39秒 JST に変換されました。 使用した処理系は /home/tagga/bin/gosh です。 バグレポートや感想は メーリングリストtagga@tsuda.ac.jp にお願いします。
SourceForge.net Logo