コンテンツにスキップ

補助機能

entry

書式

$(entry エントリ名 単語1)

戻り値

${エントリ名}の結果、または単語1

解説

エントリからランダムに単語を選び、評価する。指定したエントリが空の場合、単語1を返す。単語1は省略可能。省略した時に指定したエントリが空の場合、空文字を返す。

evalでも同様のことが可能だが、entryの方が負荷が軽い。

使用例

=kis
entry "npw";
# ${npw}と同じ

entry "message."$(rand 3);
# ${message.0}から${message.2}のどれか

entry "system.OtherGhost" ${myname};
# ${system.OtherGhost}と同じ
# 空の場合は${myname}の戻り値が返る
=end

entrycount

書式

$(entrycount)

戻り値

エントリの総数

解説

エントリの総数を返す。主にAIグラフに使用する。

使用例

$(entrycount)

eval

書式

$(eval 単語1 ...)

戻り値

デコード結果

解説

与えられた全引数中の${}、$()等を再度再帰的に評価し、展開結果を返す。再帰的評価を行う以外はechoと同じ。

使用例

kawari     : 華和梨
nise       : 偽
shiori     : 栞
niseshiori : ${nise}${shiori}

=kis
eval "理夢の偽AIは${kawari}です";
# 「理夢の偽AIは華和梨です」が返る

eval "奈留の偽AIは${niseshiori}です";
# 「奈留の偽AIは偽栞です」が返る
=end

参考

=kis
echo "奈留の偽AIは${niseshiori}です";
# 「奈留の偽AIは${niseshiori}です」が返る
=end

urllist

書式

$(urllist サイト名1 URL1 バナーURL1 ... サイト名n URLn バナーURLn)

戻り値

  • サイト名1[1]URL1[1]バナーURL1[2]...サイト名n[1]URLn[1]バナーURLn[2]
  • ※[1]はバイト値1、[2]はバイト値2

解説

SHIORI/2.5規格に従い、「おすすめリスト」を生成する。引数の数は必ず3の倍数になること。

仕切り線はサイト名に「-」を渡す。

使用例

futaba : "http://futaba.mikage.to/"
kawari : "http://meister-d-i.hoops.ne.jp/"

# さくら側のおすすめサイトのリスト
resource.sakura.recommendsites : $(
  urllist "ふたばみかげ" ${futaba} ${futaba}"banner.png"
  "何か以外の何か" ${kawari} ${kawari}"banner.png"
)

# うにゅう側のおすすめサイトのリスト
resource.kero.recommendsites : (
  $(urllist "ふたばみかげ" "http://futaba.mikage.to/" "banner.png")
  $(urllist "-" "-" "-")
  $(urllist "何か以外の何か" "http://meister-d-i.hoops.ne.jp/" "banner.png")
)
# サイトごとにurllistコマンドを分けて書くことも出来る
# 仕切り線の場合でも、ダミーのURLとバナーURLを与える必要がある

wordcount

書式

$(wordcount)

戻り値

単語の総数

解説

単語の総数を返す。主にAIグラフに使用する。

使用例

$(wordcount)

xargs

書式

$(xargs 引数エントリ コマンド1 ...)

戻り値

コマンド1の実行結果

解説

引数エントリの内容を添え字順に展開して、コマンド1の引数として与える。コマンド1の後に書いた引数は、引数エントリの展開内容より前方に付加する。コマンド1の実行結果が戻り値となる。

エントリ名の指定には、辞書操作コマンド共通の書式を利用できる。

使用例

SaveEntries : HighScore , Life , 喋り頻度 , 好感度 , 最終更新日

RecommendSites : "伺か" , "http://sakura.mikage.to" , "-"
RecommendSites : "まゆら" , "http://mayura.jp/" , "-"
RecommendSites : "-" , "-" , "-"
RecommendSites : "華和梨" , "http://kawari.sf.net/" , "-"

keyword1 : 華和梨 , SHIORI , ゴースト

=kis
xargs SaveEntries save parameter.txt;
# SaveEntriesの内容を展開してsaveコマンドを実行。
# 「save parameter.txt HighScore Lige 喋り頻度 好感度 最終更新日」
# を実行した場合と等価。

xargs RecommendSites urllist;
# urllistコマンドにRecommendSitesエントリの内容を展開して与える

xargs keyword1 matchall ${System.Request.Reference0};
# keyword1エントリの全ての単語がReference0にマッチしたら真を返す
=end