| 1 |
RKCの設定ファイルについて |
| 2 |
$Id$ |
| 3 |
|
| 4 |
『かんな』の中で、ユーザーインターフェースに関する部分は、lispベースの.cannaで |
| 5 |
設定を行いますが、サーバとの接続に関連した設定は、.cannaでの設定に馴染まない |
| 6 |
ため、.cannax/rkc.confというファイルに書きます。 |
| 7 |
|
| 8 |
rkc.confの書式は次のようになります。 |
| 9 |
|
| 10 |
// sample rkc.conf |
| 11 |
host "*" { |
| 12 |
server_timeout 1000; |
| 13 |
}; |
| 14 |
host "foo,bar" { |
| 15 |
server_timeout 300; |
| 16 |
}; |
| 17 |
host "foo" { |
| 18 |
server_timeout 700; |
| 19 |
}; |
| 20 |
cannahost "bar"; |
| 21 |
cannahost "unix,foo"; |
| 22 |
|
| 23 |
hostブロックには、接続先のサーバごとの設定を書きます。現在の設定項目は次の |
| 24 |
通りです。なお"*"は全サーバを表します。 |
| 25 |
|
| 26 |
server_timeout <number> (default: 1500) |
| 27 |
サーバとの接続や通信中のタイムアウトをミリ秒単位で指定します。 |
| 28 |
|
| 29 |
hostブロックの外では、全体の設定を書きます。現在の設定項目は次の通りです。 |
| 30 |
|
| 31 |
cannahost <string> (default: "") |
| 32 |
接続先を"hostname[:num],hostname[:num],..."の形式で指定します。空文字列 |
| 33 |
に設定した場合は、CANNAHOST環境変数で指定したサーバに、それも設定されて |
| 34 |
いなければローカルのサーバにUNIXドメインで接続を行います。 |
| 35 |
|
| 36 |
なお、同じ項目に関する設定があれば、常に最後に書いたものが優先されます。 |
| 37 |
したがって、上の例では、cannahostは"unix,foo"になり、server_timeoutは、fooに |
| 38 |
接続する場合は700ms、barに接続する場合は300ms、それ以外に接続する場合は1000ms |
| 39 |
となります。 |
| 40 |
|
| 41 |
整数を設定する項目では、Cと同様の演算子を利用できます。ただし=や++のような |
| 42 |
変数を変化させる演算子はありません。また、演算はすべてunsigned intで行われます。 |
| 43 |
|
| 44 |
設定ファイルは読み込み前にcpp(1)で処理されます。cpp以外のプリプロセッサを |
| 45 |
利用することも可能で、この場合はプリプロセッサを起動するコマンドを環境変数 |
| 46 |
CANNA_RKC_PREPROCESSORで設定します。引数にはrkc.confの絶対パスが与えられ、 |
| 47 |
sh -cで起動されます。例えば、 |
| 48 |
CANNA_RKC_PREPROCESSOR='m4 -DFOO'; export CANNA_RKC_PREPROCESSOR |
| 49 |
とすると、 |
| 50 |
sh -c 'm4 -DFOO /home/yourname/.cannax/rkc.conf' |
| 51 |
が内部で実行され、その出力が読み込まれます。 |
| 52 |
|
| 53 |
なお、コメントの/*...*/は、cppを使えばcppによって取り除かれますが、cpp以外を |
| 54 |
利用した場合でも、canna自身がコメントと判断して読み飛ばすので、いずれの場合も |
| 55 |
コメントとして有効になります。 |
| 56 |
|
| 57 |
この他、環境によってcppに-traditionalが付いたり、cppとcannaで式の解釈が微妙に |
| 58 |
異なる場合があるので、高度にプリプロセッサを利用する場合は注意してください。 |
| 59 |
|
| 60 |
*** 重要 *** |
| 61 |
Canna 3.8では、CANNA_RKC_PREPROCESSORが設定されていない場合には、cppを実行せず |
| 62 |
直接rkc.confを読み込むように変更されます。cppの命令に依存しないようにして |
| 63 |
ください。 |