LSL Editing Primer/it

From Second Life Wiki
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.

Nell'area Portale LSL del wiki ci sono diversi modelli in uso per standardizzare l'aspetto e rendere le modifiche più semplici.

Modelli generali

Ci sono vari modelli universali; i nomi dei modelli più utilizzati sono brevi per semplificarne la battitura.

Nome Descrizione esempio
{{LSLC|category|sort}} Aggiunge una pagina ad un gruppo
Usare al posto di [[Category:LSL name|name]]
sort è facoltativo.
{{LSLGC|category|text}} Crea un link ad una categoria LSL
Usare al posto di [[:Category:LSL category|text]]
se text viene omesso allora si intende uguale a category
{{LSLGC|Math/3D|3D Math Functions}}
Funzioni Matematiche 3D
{{LSLGC|Math}}
Matematica
{{HoverText|word|description}} Quando muovi il cursore su di esso mostra un rettangolo contenente description. {{HoverText|scimmie|Specie di mammiferi}}
scimmie
{{LSL_Header}} Utilizzato per le pagine che non usano un modello che lo include. Come le categorie e questa pagina. {{LSL Header}}
{{LSL_Hex|hex|int}} Un HoverText per hex che mostra il valore int con una breve descrizione standard.
Se int è escluso o vuoto, allora int viene calcolato da hex.
{{LSL Hex|0x100|256}}
0x100
{{LSL Hex|0x100}}
0x100
{{!}} Usato al posto di | quando si inserisce nei parametri dei modelli. {{!}}
|
{{=}} Usato al posto di = quando si richiede un simbolo di uguaglianza che non interferisca con i parametri dei modelli. {{=}}
=

Incorporare tabelle

Uno dei punti deboli in MediaWiki è la difficoltà nell'incorporare tabelle come parametri per i modelli. Ci sono alcuni modi per aggirare questo problema.

  1. Scrivere la tabella in HTML usando le etichette <table> & </table>, <tr> & </tr>, <th> & </th>, <td> & </td>. Se usate questo metodo è necessario chiudere correttamente le etichette (o MediaWiki farà cose strane).
  2. Usare la sintassi MediaWiki per le tabelle e sostituire ogni occorrenza (non utilizzata come separatore di modello) di '|' con '{{!}}'
  3. Mandare a capo la tabella con le etichette <div></div> (non funziona sempre).
  • Notare che potrebbe essere necessario ricorrere allo spazio bianco affichè MediaWiki visualizzi il risultato correttamente.


Metodo HTML
Prima Dopo Incorporata
{|{{Prettytable}}
! Permessi
! Valore
! Descrizione
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Permesso Muovi/Modifica/Copia/Trasferisci
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| Permesso Copia
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| Permesso Modifica
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| Permesso Muovi
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| Permesso Trasferisci
|}
<table {{Prettytable}}><tr>
<th> Permessi</th>
<th> Valore</th>
<th> Descrizione</th>
</tr><tr>
<td> [[PERM_ALL]]</td>
<td> {{LSL Hex|0x7FFFFFFF|2147483647}}</td>
<td> Permesso Muovi/Modifica/Copia/Trasferisci</td>
</tr><tr>
<td> [[PERM_COPY]]</td>
<td> {{LSL Hex|0x00008000|32768}}</td>
<td> Permesso Copia</td>
</tr><tr>
<td> [[PERM_MODIFY]]</td>
<td> {{LSL Hex|0x00004000|16384}}</td>
<td> Permesso Modifica</td>
</tr><tr>
<td> [[PERM_MOVE]]</td>
<td> {{LSL Hex|0x00080000|524288}}</td>
<td> Permesso Muovi</td>
</tr><tr>
<td> [[PERM_TRANSFER]]</td>
<td> {{LSL Hex|0x00002000|8192}}</td>
<td> Permesso Trasferisci</td>
</tr></table>

Tabella in Tabella:

Permessi Valore Descrizione
PERM_ALL 0x7FFFFFFF Permesso Muovi/Modifica/Copia/Trasferisci
PERM_COPY 0x00008000 Permesso Copia
PERM_MODIFY 0x00004000 Permesso Modifica
PERM_MOVE 0x00080000 Permesso Muovi
PERM_TRANSFER 0x00002000 Permesso Trasferisci

Tabella come parametro di modello:

Permessi Valore Descrizione
PERM_ALL 0x7FFFFFFF Permesso Muovi/Modifica/Copia/Trasferisci
PERM_COPY 0x00008000 Permesso Copia
PERM_MODIFY 0x00004000 Permesso Modifica
PERM_MOVE 0x00080000 Permesso Muovi
PERM_TRANSFER 0x00002000 Permesso Trasferisci
Metodo sostituzione di separatore
Prima Dopo Incorporata
{|{{Prettytable}}
! Permessi
! Valore
! Descrizione
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Permesso Muovi/Modifica/Copia/Trasferisci
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| Permesso Copia
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| Permesso Modifica
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| Permesso Muovi
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| Permesso Trasferisci
|}
{{{!}}{{Prettytable}}
! Permessi
! Valore
! Descrizione
{{!}}- 
{{!}} [[PERM_ALL]]
{{!}} {{LSL Hex|0x7FFFFFFF|2147483647}}
{{!}} Permesso Muovi/Modifica/Copia/Trasferisci
{{!}}- 
{{!}} [[PERM_COPY]]
{{!}} {{LSL Hex|0x00008000|32768}}
{{!}} Permesso Copia
{{!}}- 
{{!}} [[PERM_MODIFY]]
{{!}} {{LSL Hex|0x00004000|16384}}
{{!}} Permesso Modifica
{{!}}- 
{{!}} [[PERM_MOVE]]
{{!}} {{LSL Hex|0x00080000|524288}}
{{!}} Permesso Muovi
{{!}}- 
{{!}} [[PERM_TRANSFER]]
{{!}} {{LSL Hex|0x00002000|8192}}
{{!}} Permesso Trasferisci
{{!}}}

Tabella in Tabella:

Permessi Valore Descrizione
PERM_ALL 0x7FFFFFFF Permesso Muovi/Modifica/Copia/Trasferisci
PERM_COPY 0x00008000 Permesso Copia
PERM_MODIFY 0x00004000 Permesso Modifica
PERM_MOVE 0x00080000 Permesso Muovi
PERM_TRANSFER 0x00002000 Permesso Trasferisci

Tabella come parametro di modello:

Permessi Valore Descrizione
PERM_ALL 0x7FFFFFFF Permesso Muovi/Modifica/Copia/Trasferisci
PERM_COPY 0x00008000 Permesso Copia
PERM_MODIFY 0x00004000 Permesso Modifica
PERM_MOVE 0x00080000 Permesso Muovi
PERM_TRANSFER 0x00002000 Permesso Trasferisci
Metodo etichetta Div (non sempre funziona)
Prima Dopo Incorporata
{|{{Prettytable}}
! Permessi
! Valore
! Descrizione
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Permesso Muovi/Modifica/Copia/Trasferisci
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| Permesso Copia
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| Permesso Modifica
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| Permesso Muovi
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| Permesso Trasferisci
|}
<div>
{|{{Prettytable}}
! Permessi
! Valore
! Descrizione
|- 
| [[PERM_ALL]]
| {{LSL Hex|0x7FFFFFFF|2147483647}}
| Permesso Muovi/Modifica/Copia/Trasferisci
|- 
| [[PERM_COPY]]
| {{LSL Hex|0x00008000|32768}}
| Permesso Copia
|- 
| [[PERM_MODIFY]]
| {{LSL Hex|0x00004000|16384}}
| Permesso Modifica
|- 
| [[PERM_MOVE]]
| {{LSL Hex|0x00080000|524288}}
| Permesso Muovi
|- 
| [[PERM_TRANSFER]]
| {{LSL Hex|0x00002000|8192}}
| Permesso Trasferisci
|}
</div>

Tabella in Tabella:

Permessi Valore Descrizione
PERM_ALL 0x7FFFFFFF Permesso Muovi/Modifica/Copia/Trasferisci
PERM_COPY 0x00008000 Permesso Copia
PERM_MODIFY 0x00004000 Permesso Modifica
PERM_MOVE 0x00080000 Permesso Muovi
PERM_TRANSFER 0x00002000 Permesso Trasferisci

Funzioni

Oltre ai modelli generali esiste solo un modello specifico per funzione.

Template:LSL Function
Questo modello fornisce una struttura per scrivere documentazione sulle funzioni; esso comprende varie sezioni.

  • Prego, non rimuovere informazioni.
  • L'ordine delle variabili non è importante.
  • La maggior parte delle variabili se non impostate nasconderanno la relativa sezione (non tutte le sezioni scompaiono).
  • Le variabili inutilizzate possono essere escluse ma è preferibile non rimuoverle per aiutare gli sviluppatori futuri.
  • Prego indirizzate tutti i messaggi generati da un modello.
  • Se pensate che debba essere aggiunta una sezione, cortesemente aggiungetela a LSL Function Style (e sarà rapidamente aggiunta al modello).

Prego consultare LSL_Function per una spiegazione dettagliata della sintassi e degli attributi.

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=Any valid float value
|return_type=float
|return_text=cioè un numero pseudocasuale nell'intervallo [0.0,mag) o (mag, 0.0].
|spec=restituisce un numero pseudocasuale nell'intervallo [0.0, mag) o (mag, 0.0], secondo il segno di mag.
|caveats=Il generatore di numeri casuali non è una sorgente di entropia.
|examples=<lsl>
default
{
    touch_start(integer total_number)
    {
        // Quando toccato, dici "Testa" con probabilità 0.5, 
        // sltrimenti, dici "Croce"
        if ( llFrand(1.) < .5)
            llSay(0, "Testa");
        else
            llSay(0, "Croce");
    }
}
</lsl>
|helpers
|also_header
|also_functions
|also_tests
|also_events
|also_articles
|also_footer
|notes=
Il generatore di numeri casuali non è una sorgente di entropia.

La sequenza di numeri casuali è condivisa dall'intero processo senza semi indipendenti.
Quindi la generazione di numeri pseudocasuali non è adatta per applicazioni che richiedono risultati del tutto prevedibili o del tutto imprevedibili.
|cat1=Math
|cat2
|cat3
|cat4
}}

Eventi

Oltre ai modelli generali esiste un solo modello specifico per eventi.

LSL_Event Questo modello fornisce una struttura per scrivere documentazione sull'evento. Esso prevede varie sezioni. Le sezioni inutilizzate sono tipicamente nascoste.

Prego consultare LSL_Event per una spiegazione dettagliata della sintassi e degli attributi.

Costanti

C'è solo un modello specifico per costanti.

LSL_Constant Questo modello fornisce una struttura per scrivere documentazione sulle costanti. Esso prevede varie sezioni. Le sezioni inutilizzate sono tipicamente nascoste.

Prego consultare LSL_Constant per una spiegazione dettagliata della sintassi e degli attributi.