LSL Editing Primer/ja

From Second Life Wiki
Jump to: navigation, search

wikiにあるLSLポータルエリアには理解しやすい書式と編集を容易にするための幾つかのテンプレートがあります。

一般的なテンプレート

幾つかの共通テンプレートがあり、最も使われるテンプレート名は入力を簡単にするために短くなっています。

書き方 説明 解説
{{LSLC|カテゴリ|ソート}} グループにページを加えます
[[Category:LSL name|name]]の代わりにつかわれます
ソートは補助的なものです
{{LSLGC|カテゴリ|テキスト}} LSL カテゴリにリンクします
[[:Category:LSL category|text]]の代わりにつかいます
もしテキストが抜けている場合、カテゴリになります
{{LSLGC|Math/3D|3D演算関数}}
3D演算関数
{{LSLGC|Math}}
Math
{{HoverText|単語|解説}} マウスカーソルを合わせたときに、解説の部分が表示されます。 {{HoverText|猿|哺乳類}}
{{LSL_Header}} テンプレートしては用いられません。カテゴリや、ここのようなページ用です。 {{LSL Header}}
{{LSL_Hex|16進法|数字}} 16進法用に、数字を用いた短い簡易説明を表示します。
もし数字が抜けているか空の場合、数字は16進法から計算されます。
{{LSL Hex|0x100|256}}
0x100
{{LSL Hex|0x100}}
0x100
{{!}} テンプレートのパラメータが抜けている時のために、| の代わりにつかわれます。 {{!}}
|
{{=}} テンプレートのパラメータで同一であるという証明が必要な場合のために=の代わりに使われます。 {{=}}
=

表の組み方

MediaWikiの欠点のひとつは、テンプレート用のパラメータのテーブルの組み込みが困難なことです。これには幾つか方法があります。

  1. <table> & </table>, <tr> & </tr>, <th> & </th>, <td> & </td> タグを使ってHTMLで表を書く。もしこの方法をとるなら、適切にタグを閉じなければなりません。(そうでなければ、MediaWiki は奇妙なことをするでしょう)
  2. 表にMediaWiki の文法を使い、全ての '|' を'{{!}}'を置き換える。
  3. <div></div> タグで、テーブルの回り込みをする。(常に動作するわけではありません)
  • MediaWikiで適切な表示にするために必要なだけ空白を使う方法もあります。


HTMLでの方法
実行前 実行後 実際の表
{|{{Prettytable}}
! 権限
! 値
! 解説
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| 移動/編集/複製/譲渡 権
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| 複製権
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| 編集権
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| 移動権
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| 譲渡権
|}
<table {{Prettytable}}><tr>
<th> 権限</th>
<th> 値</th>
<th> 解説</th>
</tr><tr>
<td> [[PERM_ALL]]</td>
<td> {{LSL Hex|0x7FFFFFFF|2147483647}}</td>
<td> 移動/編集/複製/譲渡 権</td>
</tr><tr>
<td> [[PERM_COPY]]</td>
<td> {{LSL Hex|0x00008000|32768}}</td>
<td> 複製権</td>
</tr><tr>
<td> [[PERM_MODIFY]]</td>
<td> {{LSL Hex|0x00004000|16384}}</td>
<td> 編集権</td>
</tr><tr>
<td> [[PERM_MOVE]]</td>
<td> {{LSL Hex|0x00080000|524288}}</td>
<td> 移動権</td>
</tr><tr>
<td> [[PERM_TRANSFER]]</td>
<td> {{LSL Hex|0x00002000|8192}}</td>
<td> 譲渡権</td>
</tr></table>

テーブル内にテーブル:

権限 解説
PERM_ALL 0x7FFFFFFF 移動/編集/複製/譲渡 権
PERM_COPY 0x00008000 複製権
PERM_MODIFY 0x00004000 編集権
PERM_MOVE 0x00080000 移動権
PERM_TRANSFER 0x00002000 譲渡権

テンプレートパラメータを併せたテーブル:

権限 解説
PERM_ALL 0x7FFFFFFF 移動/編集/複製/譲渡 権
PERM_COPY 0x00008000 複製権
PERM_MODIFY 0x00004000 編集権
PERM_MOVE 0x00080000 移動権
PERM_TRANSFER 0x00002000 譲渡権
パイプ置換法
実行前 実行後 実際の表
{|{{Prettytable}}
! 権限
! 値
! 解説
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| 移動/編集/複製/譲渡 権
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| 複製権
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| 編集権
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| 移動権
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| 譲渡権
|}
{{{!}}{{Prettytable}}
! 権限
! 値
! 解説
{{!}}- 
{{!}} [[PERM_ALL]]
{{!}} {{LSL Hex|0x7FFFFFFF|2147483647}}
{{!}} 移動/編集/複製/譲渡 権
{{!}}- 
{{!}} [[PERM_COPY]]
{{!}} {{LSL Hex|0x00008000|32768}}
{{!}} 複製権
{{!}}- 
{{!}} [[PERM_MODIFY]]
{{!}} {{LSL Hex|0x00004000|16384}}
{{!}} 編集権
{{!}}- 
{{!}} [[PERM_MOVE]]
{{!}} {{LSL Hex|0x00080000|524288}}
{{!}} 移動権
{{!}}- 
{{!}} [[PERM_TRANSFER]]
{{!}} {{LSL Hex|0x00002000|8192}}
{{!}} 譲渡権
{{!}}}

テーブルの中にテーブル:

権限 解説
PERM_ALL 0x7FFFFFFF 移動/編集/複製/譲渡 権
PERM_COPY 0x00008000 複製権
PERM_MODIFY 0x00004000 編集権
PERM_MOVE 0x00080000 移動権
PERM_TRANSFER 0x00002000 譲渡権

テンプレートパラメータを併せたテーブル:

権限 解説
PERM_ALL 0x7FFFFFFF 移動/編集/複製/譲渡 権
PERM_COPY 0x00008000 複製権
PERM_MODIFY 0x00004000 編集権
PERM_MOVE 0x00080000 移動権
PERM_TRANSFER 0x00002000 譲渡権
Divタグ使用 (常の動作するとはかぎりません)
実行前 実行後 実際の表
{|{{Prettytable}}
! 権限
! 値
! 解説
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| 移動/編集/複製/譲渡 権
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| 複製権
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| 編集権
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| 移動権
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| 譲渡権
|}
<div>
{|{{Prettytable}}
! 権限
! 値
! 解説
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| 移動/編集/複製/譲渡 権
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| 複製権
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| 編集権
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| 移動権
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| 譲渡権
|}
</div>

テーブルの中にテーブル:

権限 解説
PERM_ALL 0x7FFFFFFF 移動/編集/複製/譲渡 権
PERM_COPY 0x00008000 複製権
PERM_MODIFY 0x00004000 編集権
PERM_MOVE 0x00080000 移動権
PERM_TRANSFER 0x00002000 譲渡権

関数

一般的なテンプレート以外に、関数の詳細専用のテンプレートがあります。

LSL_Function
このテンプレートは、いくつかのセクションを含んだ関数ドキュメントの構成を規定します。

  • 情報を削除しないでください。
  • 変数の順番は気にしないでください。
  • 変数が多くても省くことは控えるべきです。
  • 必要ではない未使用変数が含まれていても、先々の実装を見越して残しておくべきです。
  • 全てのテンプレートは頭に記述してください。
  • セクションを追加すべきと思うなら、LSL Function Style に追加してください。(そして簡単なテンプレートを併せてください。)

文法と要素の詳細な説明のために、LSL_Functionを参照してください。

ベース 例: llFrand
{{LSL_Function/ja
|func
|func_id
|func_sleep
|sort
|func_desc
|func_footnote
|return_type
|return_text
|p1_type|p1_name|p1_desc
|p2_type|p2_name|p2_desc
|p3_type|p3_name|p3_desc
|p4_type|p4_name|p4_desc
|p5_type|p5_name|p5_desc
|p6_type|p6_name|p6_desc
|p7_type|p7_name|p7_desc
|p8_type|p8_name|p8_desc
|p9_type|p9_name|p9_desc
|p10_type|p10_name|p10_desc
|p11_type|p11_name|p11_desc
|p12_type|p12_name|p12_desc
|constants
|spec
|caveats
|examples
|helpers
|also_header
|also_functions
|also_tests
|also_articles
|also_events
|also_footer
|notes
|mode
|deprecated
|permission
|negative_index
|cat1
|cat2
|cat3
|cat4
|cat5
|cat6
|location
}}
{{LSL_Function/ja
|sort=Frand
|func=llFrand
|func_id=8
|func_sleep=0.0
|func_energy=10.0
|p1_type=float
|p1_name=mag
|p1_desc=いくつかの適正なfloat値
|return_type=float
|return_text=0.0からmagの範囲での擬似的にランダムな数値
|spec=0.0からmag以下の範囲での擬似的にランダムな数値を返します。
|caveats=このランダムな数値生成はあまり精密ではありません。
|examples=<lsl>
default
{
    touch_start(integer total_number)
    {
        // タッチしたとき、確率0.5で"Heads"と言い、
        // そのほかの場合は"Tails"といいます。 
        if ( llFrand(1.) < .5)
            llSay(0, "Heads");
        else
            llSay(0, "Tails");
    }
}
</lsl>
|helpers
|also_header
|also_functions
|also_tests
|also_events
|also_articles
|also_footer
|notes=
このランダムな数値生成はあまり精密ではありません。

連続でのランダムな数値は、経過処理が共通しており、独立したものではありません。
そのため、この擬似的にランダムな数字は、完全に予測可能なもしくは完全にランダムな結果が必要とする利用法には適していません。
|cat1=Math
|cat2
|cat3
|cat4
}}

イベント

一般的なテンプレート以外に、イベントの詳細専用のテンプレートがあります。

LSL_Event いくつかのセクションを含んだ関数ドキュメントの構成を規定します。 このテンプレートはいくつかのセクションを含んだ、イベントに関する文書を一通り書くための構成を規定します。使用されないセクションは通常は表示されません。

文法と要素の詳細な説明のために、LSL_Event を参照してください。

定数

定数の詳細専用のテンプレートがあります。

LSL_Constant このテンプレートはいくつかのセクションを含んだ、定数に関する文書を一通り書くための構成を規定します。使用されないセクションは通常は表示されません。

文法と要素の詳細な説明のために、LSL_Constant を参照してください。