Copalは、CGIの簡易エミュレート機能を持っています。Copalにできることは、
CGIデータを使うボタンを押すと、フォームエディタが開きます。
そこで入力されたデータを、あたかもブラウザ経由で受け取ったようにスクリプトを実行することができます。
データを見ながら実行したい時など、フォームエディタを常に手前に表示していたい場合は 「設定」メニューの「常に手前に表示」をチェックしてください。 この状態は設定ファイルに保存され、次回起動時も覚えています。
フォームエディタの、環境変数タブにデータを入力すると、スクリプトに環境変数として渡されます。
たとえば、環境変数の名前として"test"、値を"value"にして、追加ボタンを押します。
print $ENV{"test"};
を実行すれば、
valueが表示されます。
注意
CGIデータを使うを選んでいると、
通常渡される環境変数(PATHなど)が渡されなくなります。
必要な場合は、自分で新しく設定してください。
フォームエディタの、フォームデータタブにデータを入力すると、スクリプトにフォームデータとして渡されます。
たとえば、REQUEST_METHODがGETで、TEXTタブに名前を"test"、値を"value"として追加ボタンを押してデータを追加します。
print $ENV{"QUERY_STRING"};
というスクリプトを実行すれば、
test=valueという結果が表示されるはずです。TEXTAREA、CHECKBOXなども同様です。 また、HIDDENなどの要素も、すべてTEXTで代用できるはずですので、そちらに入力してください。
注意
現在、POSTメソッドには対応しておりません。
フォームエディタの、Cookieデータタブにデータを入力すると、スクリプトに環境変数「HTTP_COOKIE」として渡されます。直接環境変数エディタでHTTP_COOKIEを設定しても良いですが、Cookieエディタを使ったほうが便利です。
たとえば、Cookieの名前として"test"、値を"value"にして、追加ボタンを押します。

この状態で
print $ENV{'HTTP_COOKIE'};
を実行すれば、結果は
test=valueとなるはずです。
さらに、Cookieデータとして名前"test2"、値"value2"を追加して実行すると、
test=value; test2=value2などとなります。
フォームデータに日本語を入力した場合、URLエンコードされます。その際、URLエンコードする前にどの文字コードでエンコードするか指定することができます。
文字コードは、フォームエディタの、「設定」→「文字コード」から指定することができます。
たとえば、フォームエディタに名前が"text"、値が"あいうえお"という日本語のデータがある状態で
print $ENV{"QUERY_STRING"};
を実行すると、文字コードがSJISなら結果は
text=%82%A0%82%A2%82%A4%82%A6%82%A8となり、EUCなら
text=%A4%A2%A4%A4%A4%A6%A4%A8%A4%AAとなります。
注意
UTF-8には対応しておりません。また、改行コードは変換されません(CRLFになります)。