構文
概括
ASP の組み込み構文は、HTMLコードに、以下2つのやりかたで簡単に組み込む事ができます。
1番目は、<% xxx %> タグ内に、xxx という、有効な、Perl コードを書き込む方法です。
2番目は、<%= xxx %> とし、xxx にスカラー変数を書き、HTML ディレクトリで表示させます。簡単な print の例です。
簡単な、ASP ページは、以下の通りです。
<!-- sample here -->
<html>
<body>
For loop incrementing font size: <p>
<% for(1..5) { %>
<!-- iterated html text -->
<font size="<%=$_%>" > Size = <%=$_%> </font> <br>
<% } %>
</body>
</html>
<!-- end sample here -->
どんな HTML でも、Perl コードブロックを組み込むことができるし、
For ループは特別な構文なしに、HTML 表現の繰り返しを実現できる事に注目してください。
XMLSubs
XMLSubs で開発者は、ASP 環境でのナチュラルな構文を拡張し、HTML と XML タグに、カスタムハンドラを定義できます。設定は以下のようにします。
PerlSetVar XMLSubsMatch site:\w+
簡単なタグ(定義)は以下のようです。
<site:header title="Page Title" />
は、次のように変換され構築されます。
sub site::header {
my $args = shift;
print "<html><head><title>$args->{title}</title></head>\n";
print "<body bgcolor=white>\n";
}
さらに改良し、この機能は、次のような、組み込まれた HTML と XML のプロセスを捉えて
<site:page title="Page Title">
... some HTML here ...
</site:page>
次のように変換表現されます。
sub site::page {
my($args, $html) = @_;
&site::header($args);
$main::Response->Write($html);
$main::Response->Write("</body></html>");
}
この機能は、XML文書変換に役立ちますが、この目的以外にも
HTML 環境でのタグ拡張にもパワーを発揮します。完全に、XML レンダリング(変換)しようすれば、これまた、Apache::ASP でサポートされている XSLT でのアプローチを心がけるべきです。
エディタ
Apache::ASP では、Perl と HTMLの混合物がサポートしているので
片方の環境をサポートする、どんなエディタでも、うまく稼動します。
次に掲げるエディタが、Apache::ASP ウェブサイト開発に有用に働きます。
* Emacs, perl か HTML モード。
HTML & perl の混合モードの単一の(編集)バッファー内では、配布物の、
editors/mmm-asp-perl.elというファイルでの mmm-mode 設定を調べてください。
* Microsoft Frontpage
* Vim, 配布物の、editors/aasp.vim で、構文サポートができます。
* UltraEdit32
( http://www.ultraedit.com/ )
では、構文のハイライトとよくできたマクロとワードリスト設定ができます。
(Perl と HTM 両方の構文がハイライトになります)
これらのリストでのお気に入りの開発環境を、ご自由に推薦してください。