LSL Editing Primer/pt

From Second Life Wiki
< LSL Editing Primer
Revision as of 11:09, 12 January 2012 by Gianinni Babenco (talk | contribs) (→‎Constantes: + Category:Ajuda Portal)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Na área wiki do Portal LSL, existem vários gabaritos usados para padronizar a aparência e tornar a edição mais fácil.

Gabaritos de Uso Geral

Existem diversos gabaritos universais, com os nomes de gabarito mais usados sendo curtos, para facilitar a digitação.

Nome Descrição exemplo
{{LSLC|category|sort}} Adiciona uma página em um grupo
Use no lugar de [[Category:LSL name|name]]
sort é opcional.
{{LSLGC|category|text}} Faz o link a uma categoria LSL
Use no lugar de [[:Category:LSL category|text]]
se text é omitido, então o padrão é category
{{LSLGC|Math/3D|3D Math Functions}}
3D Math Functions
{{LSLGC|Math}}
Math
{{HoverText|word|description}} Quando você move o cursor sobre a palavra, mostra um "box" contendo a descrição description. {{HoverText|macacos|Uma espécie de mamíferos}}
macacos
{{LSL_Header}} Usado para páginas que não usam um gabarito que as inclua. Como categorias e esta página. {{LSL Header}}
{{LSL_Hex|hex|int}} Usa um HoverText para hex , mostrando int com uma curta descrição padrão.
Se int é excluído ou vazio, então int é calculada a partir do valode de hex.
{{LSL Hex|0x100|256}}
0x100
{{LSL Hex|0x100}}
0x100
{{!}} Usado no lugar de | quando estiver embutindo-os nos parâmetros dos gabaritos. {{!}}
|
{{=}} Usado no lugar de um = quando você precisar que o sinal textual = não interfira nos parâmetros dos gabaritos. {{=}}
=

Embutindo Tabelas

Uma das deficiências do MediaWiki é a dificuldade de se embutir tabelas como parâmetros de gabaritos. Existem poucas formas de se contornar isso.

  1. Escreva a tabela em HTML usando as tags <table> & </table>, <tr> & </tr>, <th> & </th>, <td> & </td>. Se você seguir por esse caminho, você deve fechar suas tags corretamente (ou o MediaWiki fará coisas estranhas).
  2. Use a sintaxe do MediaWiki para tabelas e troque cada ocorrência de '|' (que não esteja sendo usada como um separador de gabaritos) por '{{!}}'.
  3. Envolva a tabela com as tags <div></div> (não funciona sempre).
  • Note que você precisa jogar com os espaços em branco para que o MediaWiki mostre a tabela corretamente.
Método HTML
Antes Depois Embutida
{|{{Prettytable}}
! Permissões
! Valor
! Descrição
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| Move permission
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
<table {{Prettytable}}><tr>
<th> Permissões</th>
<th> Valor</th>
<th> Descrição</th>
</tr><tr>
<td> [[PERM_ALL]]</td>
<td> {{LSL Hex|0x7FFFFFFF|2147483647}}</td>
<td> Move/Modify/Copy/Transfer permissions</td>
</tr><tr>
<td> [[PERM_COPY]]</td>
<td> {{LSL Hex|0x00008000|32768}}</td>
<td> Copy permission</td>
</tr><tr>
<td> [[PERM_MODIFY]]</td>
<td> {{LSL Hex|0x00004000|16384}}</td>
<td> Modify permission</td>
</tr><tr>
<td> [[PERM_MOVE]]</td>
<td> {{LSL Hex|0x00080000|524288}}</td>
<td> Move permission</td>
</tr><tr>
<td> [[PERM_TRANSFER]]</td>
<td> {{LSL Hex|0x00002000|8192}}</td>
<td> Transfer permission</td>
</tr></table>

Tabela na Tabela:

Permissões Valor Descrição
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

Tabela como parâmetro de gabarito:

Permissões Valor Descrição
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
Metodo da Reposição dos Caracteres
Antes Depois Embutida
{|{{Prettytable}}
! Permissões
! Valor
! Descrição
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| Move permission
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
{{{!}}{{Prettytable}}
! Permissões
! Valor
! Descrição
{{!}}- 
{{!}} [[PERM_ALL]]
{{!}} {{LSL Hex|0x7FFFFFFF|2147483647}}
{{!}} Move/Modify/Copy/Transfer permissions
{{!}}- 
{{!}} [[PERM_COPY]]
{{!}} {{LSL Hex|0x00008000|32768}}
{{!}} Copy permission
{{!}}- 
{{!}} [[PERM_MODIFY]]
{{!}} {{LSL Hex|0x00004000|16384}}
{{!}} Modify permission
{{!}}- 
{{!}} [[PERM_MOVE]]
{{!}} {{LSL Hex|0x00080000|524288}}
{{!}} Move permission
{{!}}- 
{{!}} [[PERM_TRANSFER]]
{{!}} {{LSL Hex|0x00002000|8192}}
{{!}} Transfer permission
{{!}}}

Tabela na Tabela:

Permissões Valor Descrição
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

Tabela como parâmetro de gabarito:

Permissões Valor Descrição
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
Método das Tags Div (não funciona sempre)
Antes Depois Embutida
{|{{Prettytable}}
! Permissões
! Valor
! Descrição
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| Move permission
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
<div>
{|{{Prettytable}}
! Permissões
! Valor
! Descrição
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Move/Modify/Copy/Transfer permissions
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| Copy permission
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| Modify permission
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| Move permission
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| Transfer permission
|}
</div>

Tabela na Tabela:

Permissões Valor Descrição
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

Funções

Além dos gabaritos de uso geral, existe apenas um gabarito específico para função.

Template:LSL Function

Este gabarito fornece uma estrutura para se documentar as funções. Ele inclui várias seções.

  • Por favor não remova informação.
  • A ordem das variáveis não importa.
  • A maioria das variáveis quando não definidas farão a respectiva seção não aparecer (nem todas as seções se escondem).

Variáveis que não forem usadas não precisam ser incluídas mas é melhor não removê-las para facilitar o trabalho de futuros editores.

  • Por favor, coloque à frente todas as mensagens geradas pelo gabarito.
  • Se você acha que uma seção deveria ser adicionada, por favor faça-o no LSL Function Style (e elas serão rapidamente adiciondas ao gabarito).

Por favor, refira-se a LSL_Function para uma descrição detalhada da sua sintaxe e atributos.

Base Example: llFrand
{{LSL_Function
|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
|sort=Frand
|func=llFrand
|func_id=8
|func_sleep=0.0
|func_energy=10.0
|p1_type=float
|p1_name=mag
|p1_desc=Qualquer valor flutuante válido
|return_type=float
|return_text=É um número pseudo-randômico na variação [0.0,mag) ou (mag, 0.0].
|spec=retorna um número pseudo-randômico na variação [0.0, mag) ou (mag, 0.0], dependendo do sinal de mag.
|caveats=O gerador de números randômicos não é uma fonte de entropia.
|examples=<lsl>
default
{
    touch_start(integer total_number)
    {
        // When touched, say "Heads" with probability 0.5, 
        // otherwise, say "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=
O gerador de números randômicos não é uma fonte de entropia.

A seqüência de números randômicos é compartilhada pelo processo todo e não é independentemente gerada.
Assim, a geração de números pseudo-randômicos não é adequada a qualquer aplicação que necessite resultados
completamente preditíveis ou completamente impreditíveis.

|cat1=Math
|cat2
|cat3
|cat4
}}

Eventos

Além dos gabaritos gerais, existe apenas um único gabarito específico para eventos.

LSL_Event

Este gabarito fornece uma estrutura para se documentar o evento. Ele inclui várias seções. Seções não usadas são normamelmente escondidas da visualização. Por favor, veja LSL_Event para uma descrição detalhada da sua sintaxe e atributos.

Constantes

Existe apenas um gabarito específico para constante.

LSL_Constant

Este gabarito fornece uma estrutura para se escrever a documentação da constante. Ele inclui várias seções. Por favor, veja LSL_Constant para uma explicação detalhada de sua sintaxe e atributos.