Difference between revisions of "LSL Editing Primer"

From Second Life Wiki
Jump to navigation Jump to search
Line 51: Line 51:


*Note that you may need to play with the whitespace to get MediaWiki to display it properly.
*Note that you may need to play with the whitespace to get MediaWiki to display it properly.


{|{{Prettytable}}
{|{{Prettytable}}
|+ '''HTML Method'''
!Before
!After
!Embedded
|-
|<pre>{|{{Prettytable}}
! Permissions
! Value
! Description
|-
| {{LSLG|PERM_ALL}}
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|-
| {{LSLG|PERM_COPY}}
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|-
| {{LSLG|PERM_MODIFY}}
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|-
| {{LSLG|PERM_MOVE}}
| {{LSL Hex|0x00080000|524288}}
| Move permission
|-
| {{LSLG|PERM_TRANSFER}}
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
</pre>
|<pre>
<table {{Prettytable}}><tr>
<th> Permissions</th>
<th> Value</th>
<th> Description</th>
</tr><tr>
<td> {{LSLG|PERM_ALL}}</td>
<td> {{LSL Hex|0x7FFFFFFF|2147483647}}</td>
<td> Move/Modify/Copy/Transfer permissions</td>
</tr><tr>
<td> {{LSLG|PERM_COPY}}</td>
<td> {{LSL Hex|0x00008000|32768}}</td>
<td> Copy permission</td>
</tr><tr>
<td> {{LSLG|PERM_MODIFY}}</td>
<td> {{LSL Hex|0x00004000|16384}}</td>
<td> Modify permission</td>
</tr><tr>
<td> {{LSLG|PERM_MOVE}}</td>
<td> {{LSL Hex|0x00080000|524288}}</td>
<td> Move permission</td>
</tr><tr>
<td> {{LSLG|PERM_TRANSFER}}</td>
<td> {{LSL Hex|0x00002000|8192}}</td>
<td> Transfer permission</td>
</tr></table>
</pre>
|
<table {{Prettytable}}><tr>
<th> Permissions</th>
<th> Value</th>
<th> Description</th>
</tr><tr>
<td> {{LSLG|PERM_ALL}}</td>
<td> {{LSL Hex|0x7FFFFFFF|2147483647}}</td>
<td> Move/Modify/Copy/Transfer permissions</td>
</tr><tr>
<td> {{LSLG|PERM_COPY}}</td>
<td> {{LSL Hex|0x00008000|32768}}</td>
<td> Copy permission</td>
</tr><tr>
<td> {{LSLG|PERM_MODIFY}}</td>
<td> {{LSL Hex|0x00004000|16384}}</td>
<td> Modify permission</td>
</tr><tr>
<td> {{LSLG|PERM_MOVE}}</td>
<td> {{LSL Hex|0x00080000|524288}}</td>
<td> Move permission</td>
</tr><tr>
<td> {{LSLG|PERM_TRANSFER}}</td>
<td> {{LSL Hex|0x00002000|8192}}</td>
<td> Transfer permission</td>
</tr></table>
|}
{|{{Prettytable}}
|+'''Pipe Replacement Method'''
!Before
!Before
!After
!After
Line 136: Line 226:
{{!}}}
{{!}}}
|}
|}
{|{{Prettytable}}
|+'''Div Tag Method'''
!Before
!After
!Embedded
|-
|<pre>{|{{Prettytable}}
! Permissions
! Value
! Description
|-
| {{LSLG|PERM_ALL}}
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|-
| {{LSLG|PERM_COPY}}
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|-
| {{LSLG|PERM_MODIFY}}
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|-
| {{LSLG|PERM_MOVE}}
| {{LSL Hex|0x00080000|524288}}
| Move permission
|-
| {{LSLG|PERM_TRANSFER}}
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
</pre>
|<pre><div>
{|{{Prettytable}}
! Permissions
! Value
! Description
|-
| {{LSLG|PERM_ALL}}
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|-
| {{LSLG|PERM_COPY}}
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|-
| {{LSLG|PERM_MODIFY}}
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|-
| {{LSLG|PERM_MOVE}}
| {{LSL Hex|0x00080000|524288}}
| Move permission
|-
| {{LSLG|PERM_TRANSFER}}
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
</div>
</pre>
|
<div>
{|{{Prettytable}}
! Permissions
! Value
! Description
|-
| {{LSLG|PERM_ALL}}
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|-
| {{LSLG|PERM_COPY}}
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|-
| {{LSLG|PERM_MODIFY}}
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|-
| {{LSLG|PERM_MOVE}}
| {{LSL Hex|0x00080000|524288}}
| Move permission
|-
| {{LSLG|PERM_TRANSFER}}
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
</div>
|}
==Functions==
==Functions==
Besides the general templates there is only one function specific template.
Besides the general templates there is only one function specific template.

Revision as of 09:10, 11 February 2007

In the LSL Portal area of the wiki there are several templates in use for standardizing appearance and making editing easier.

General Templates

There are several universal templates, the most used template names are short for ease of typing.

Name Description example
{{LSLG|page|text}} Links between pages
Use for pages in the LSL_ pseudo-namespace.
if text is omitted then it defaults to page
{{LSLG|llAbs|integer absolute value}}
integer absolute value
{{LSLG|llAbs}}
llAbs
{{LSLC|page|sort}} Adds a page to a group
Use instead of [[Category:LSL name|name]]
sort is optional, the template will try to calculate it.
{{LSLGC|category|text}} Links to a LSL Category
Use instead of [[:Category:LSL category|text]]
if text is omitted then it defaults to category
{{LSLGC|Math/3D|3D Math Functions}}
3D Math Functions
{{LSLGC|Math}}
Math
{{HoverText|word|description}} When you move the cursor over this it shows a box containing description. {{HoverText|monkeys|A species of mammal}}
monkeys
{{LSL_Header}} Used for pages that don't use a template that includes it. Like categories and this page. {{LSL Header}}
{{LSL_Hex|hex|int}} A HoverText for hex showing the int with a short standard description. {{LSL Hex|0x100|256}}
0x100
{{!}} ' for when embedding them in templates parameters. {{LSL Hex|0x100|256}}
0x100

Embedding Tables

One of the weaknesses in MediaWiki is the difficulty in embedding tables as parameters for templates. There are a few ways around this.

  1. Write the table in HTML using <table> & </table>, <tr> & </tr>, <td> & </td> tags. If you go this route you must close your tags properly (or MediaWiki will do strange things).
  2. Use MediaWiki syntax for tables and replace every occurrence (not being used as a template separator) of '|' with '{{!}}'
  3. Wrap the table with <div></div> tags.
  • Note that you may need to play with the whitespace to get MediaWiki to display it properly.


HTML Method
Before After Embedded
{|{{Prettytable}}
! Permissions
! Value
! Description
|- 
| {{LSLG|PERM_ALL}}
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|- 
| {{LSLG|PERM_COPY}}
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|- 
| {{LSLG|PERM_MODIFY}}
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|- 
| {{LSLG|PERM_MOVE}}
| {{LSL Hex|0x00080000|524288}}
| Move permission
|- 
| {{LSLG|PERM_TRANSFER}}
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
<table {{Prettytable}}><tr>
<th> Permissions</th>
<th> Value</th>
<th> Description</th>
</tr><tr>
<td> {{LSLG|PERM_ALL}}</td>
<td> {{LSL Hex|0x7FFFFFFF|2147483647}}</td>
<td> Move/Modify/Copy/Transfer permissions</td>
</tr><tr>
<td> {{LSLG|PERM_COPY}}</td>
<td> {{LSL Hex|0x00008000|32768}}</td>
<td> Copy permission</td>
</tr><tr>
<td> {{LSLG|PERM_MODIFY}}</td>
<td> {{LSL Hex|0x00004000|16384}}</td>
<td> Modify permission</td>
</tr><tr>
<td> {{LSLG|PERM_MOVE}}</td>
<td> {{LSL Hex|0x00080000|524288}}</td>
<td> Move permission</td>
</tr><tr>
<td> {{LSLG|PERM_TRANSFER}}</td>
<td> {{LSL Hex|0x00002000|8192}}</td>
<td> Transfer permission</td>
</tr></table>
Permissions Value Description
PERM_ALL 0x7FFFFFFF Move/Modify/Copy/Transfer permissions
PERM_COPY 0x00008000 Copy permission
PERM_MODIFY 0x00004000 Modify permission
PERM_MOVE 0x00080000 Move permission
PERM_TRANSFER 0x00002000 Transfer permission
Pipe Replacement Method
Before After Embedded
{|{{Prettytable}}
! Permissions
! Value
! Description
|- 
| {{LSLG|PERM_ALL}}
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|- 
| {{LSLG|PERM_COPY}}
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|- 
| {{LSLG|PERM_MODIFY}}
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|- 
| {{LSLG|PERM_MOVE}}
| {{LSL Hex|0x00080000|524288}}
| Move permission
|- 
| {{LSLG|PERM_TRANSFER}}
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
{{{!}}{{Prettytable}}
! Permissions
! Value
! Description
{{!}}- 
{{!}} {{LSLG|PERM_ALL}}
{{!}} {{LSL Hex|0x7FFFFFFF|2147483647}}
{{!}} Move/Modify/Copy/Transfer permissions
{{!}}- 
{{!}} {{LSLG|PERM_COPY}}
{{!}} {{LSL Hex|0x00008000|32768}}
{{!}} Copy permission
{{!}}- 
{{!}} {{LSLG|PERM_MODIFY}}
{{!}} {{LSL Hex|0x00004000|16384}}
{{!}} Modify permission
{{!}}- 
{{!}} {{LSLG|PERM_MOVE}}
{{!}} {{LSL Hex|0x00080000|524288}}
{{!}} Move permission
{{!}}- 
{{!}} {{LSLG|PERM_TRANSFER}}
{{!}} {{LSL Hex|0x00002000|8192}}
{{!}} Transfer permission
{{!}}}
Permissions Value Description
PERM_ALL 0x7FFFFFFF Move/Modify/Copy/Transfer permissions
PERM_COPY 0x00008000 Copy permission
PERM_MODIFY 0x00004000 Modify permission
PERM_MOVE 0x00080000 Move permission
PERM_TRANSFER 0x00002000 Transfer permission
Div Tag Method
Before After Embedded
{|{{Prettytable}}
! Permissions
! Value
! Description
|- 
| {{LSLG|PERM_ALL}}
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|- 
| {{LSLG|PERM_COPY}}
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|- 
| {{LSLG|PERM_MODIFY}}
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|- 
| {{LSLG|PERM_MOVE}}
| {{LSL Hex|0x00080000|524288}}
| Move permission
|- 
| {{LSLG|PERM_TRANSFER}}
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
<div>
{|{{Prettytable}}
! Permissions
! Value
! Description
|- 
| {{LSLG|PERM_ALL}}
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|- 
| {{LSLG|PERM_COPY}}
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|- 
| {{LSLG|PERM_MODIFY}}
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|- 
| {{LSLG|PERM_MOVE}}
| {{LSL Hex|0x00080000|524288}}
| Move permission
|- 
| {{LSLG|PERM_TRANSFER}}
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
</div>
Permissions Value Description
PERM_ALL 0x7FFFFFFF Move/Modify/Copy/Transfer permissions
PERM_COPY 0x00008000 Copy permission
PERM_MODIFY 0x00004000 Modify permission
PERM_MOVE 0x00080000 Move permission
PERM_TRANSFER 0x00002000 Transfer permission

Functions

Besides the general templates there is only one function specific template.

LSL_Function This template provides a structure to write the functions documentation over. It provides several sections. Unused sections are typically are hidden from view.

Please refer to LSL_Function for a detailed explanation of it's syntax and attributes.

Events

Besides the general templates there is only one event specific template.

LSL_Event This template provides a structure to write the event documentation over. It provides several sections. Unused sections are typically are hidden from view.

Please refer to LSL_Event for a detailed explanation of it's syntax and attributes.

Constants

No constant specific template has been written yet, the style is still being sorted out.