1 |
wakaba |
1.1 |
#?SuikaWiki/0.9
|
2 |
|
|
[1] [[SuikaWiki3]] の [[WikiPlugin]] モジュール
|
3 |
|
|
[[WikiLinking]] の関数 [DFN[[CODE[to_wikipage_in_html]]]]
|
4 |
|
|
は、 [[HTML]] 文書の出力にあたって、 [[WikiPage]]
|
5 |
|
|
への[[リンク]]を作成します。
|
6 |
|
|
|
7 |
|
|
* 構文
|
8 |
|
|
|
9 |
|
|
[2]
|
10 |
|
|
[CODE(perl)[[VAR[[VAR[SuikaWiki::Plugin]]->module_package ('WikiLinking')]]->to_wikipage_in_html ({[VAR[src]]} => {[VAR[dest]]}, {[VAR[option]]})]]
|
11 |
|
|
|
12 |
|
|
[VAR[src]], [VAR[dest]], [VAR[option]] は、
|
13 |
|
|
名前付き引数の並びです。
|
14 |
|
|
|
15 |
|
|
* src
|
16 |
|
|
|
17 |
|
|
[3] [VAR[src]] には、始点アンカーに関する次の名前付き引数を指定できます。
|
18 |
|
|
|
19 |
|
|
:[CODE[base_uri]]:始点アンカー (のまわり) の[[基底URI]]
|
20 |
|
|
([[絶対URI参照]], 文字列又は [CODE(perl)[[[URI]]]] モジュールの実現値)。
|
21 |
|
|
既定値は[Q[現在]]の URI (HTTP CGI スクリプトとして使用している時は、要求された URI) です。
|
22 |
|
|
:[CODE[label]]:始点アンカーのラベル (始点アンカーそのもの)。
|
23 |
|
|
[CODE(perl)[[[Message::Util::Formatter]]]]
|
24 |
|
|
形式の雛形で、文脈 [CODE[page-link]] で評価されます。
|
25 |
|
|
既定値は[[資源]] [CODE[Link:toWikiPage:SourceLabel]] です。
|
26 |
|
|
|
27 |
|
|
* dest
|
28 |
|
|
|
29 |
|
|
[4] [VAR[dest]] には、終点アンカーに関する次の名前付き引数を子弟できます。
|
30 |
|
|
|
31 |
|
|
:[CODE[base]]:終点 WikiName を解決するための絶対 WikiName
|
32 |
|
|
(WikiName object)。 [CODE[page_name_relative]]
|
33 |
|
|
が指定されている時は必須。
|
34 |
|
|
:[CODE[page_anchor_name]]:終点アンカー名。
|
35 |
|
|
:[CODE[page_anchor_no]]:終点アンカー番号。
|
36 |
|
|
[CODE[page_anchor_name]] と同時には指定できません。
|
37 |
|
|
:[CODE[page_name]]:終点 WikiPage の絶対 WikiName
|
38 |
|
|
(WikiName object)。 [CODE[page_name_relative]] より優先して使われます。
|
39 |
|
|
:[CODE[page_name_relative]]:終点 WikiPage の WikiName
|
40 |
|
|
(相対または絶対, WikiName object)。
|
41 |
|
|
[CODE[page_name]] が指定されたいない時は必須。
|
42 |
|
|
:[CODE[_up_to_date]]:終点 URI 参照に up‐to‐date flag を付けるか否か ([CODE[1]] or [CODE[0]])。
|
43 |
|
|
:[CODE[param]] = {[VAR[name]] => [VAR[val]],...}:
|
44 |
|
|
終点 URI 参照の追加の引数。
|
45 |
|
|
:[CODE[-use_absolute_uri]]:終点 URI 参照を絶対 URI 参照として出力するべきか否か ([CODE[1]] or [CODE[0]])。
|
46 |
|
|
真なら常に絶対 URI 参照として、偽なら場合によっては相対 URI 参照で出力します。
|
47 |
|
|
:[CODE[wiki_mode]]:モード名文字列。既定値は [CODE[default]]。
|
48 |
|
|
:[CODE[_with_lm]]:終点 URI 参照に採集修正日時 flag を付けるか否か ([CODE[1]] or [CODE[0]])。
|
49 |
|
|
|
50 |
|
|
* opt
|
51 |
|
|
|
52 |
|
|
[5] [VAR[opt]] には、リンク全体に関する次の名前付き引数を指定できます。
|
53 |
|
|
|
54 |
|
|
:[VAR[o]]:[Q[o]] 物体。この引数は必須です。
|
55 |
|
|
:[VAR[parent]]:始点アンカーの[[親節]]物体。
|
56 |
|
|
この引数は必須です。
|
57 |
|
|
[VAR[(この引数が [VAR[src]] でなく [VAR[opt]] なのは歴史的理由です。)]]
|
58 |
|
|
|
59 |
|
|
* label の評価
|
60 |
|
|
|
61 |
|
|
[7] 始点アンカーとなる [CODE[[VAR[src]]->{label}]]
|
62 |
|
|
は、 [CODE(perl)[[[Message::Util::Formatter]]]]
|
63 |
|
|
形式の雛形です。この雛形は、 [CODE[page-link]]
|
64 |
|
|
文脈で評価されます。
|
65 |
|
|
|
66 |
|
|
この文脈の整形規則定義では、リンクに関する情報を
|
67 |
|
|
[CODE[$o->{link}]] から参照できます。
|
68 |
|
|
|
69 |
|
|
:[CODE[$o->{link}->{src}]]:[VAR[src]] 引数。
|
70 |
|
|
ただし [CODE[[VAR[src]]->{label}]] は既定値を補完したもの。
|
71 |
|
|
:[CODE[$o->{link}->{dest}]]:[VAR[dest]] 引数。
|
72 |
|
|
ただし [CODE[[VAR[dest]]->{page_name}]] は必要なら
|
73 |
|
|
[CODE[[VAR[dest]]->{page_name_relative}]] を解決して補完したもの。
|
74 |
|
|
:[CODE[$o->{link}->{option}]]:[VAR[opt]] 引数。
|
75 |
|
|
|
76 |
|
|
* メモ
|
77 |
|
|
|
78 |
|
|
[6] 各種類の名前付き引数には、ここにあるものの他に、
|
79 |
|
|
モジュール規定の引数 ([SAMP[[VAR[module-name]]--foo]])
|
80 |
|
|
を使うこともできます。
|
81 |
|
|
|
82 |
|
|
[8]
|
83 |
|
|
この関数は ([CODE(perl)[[[to_resource_by_uri_in_html]]]] とあわせて)
|
84 |
|
|
100回以上入れ子にすることはできなくしています。
|
85 |
|
|
(普通それだけの入れ子はあり得ません。
|
86 |
|
|
入れ子にすること自体稀です。)
|