Modulo:Linguaggi/man
Questa è la pagina di documentazione per Modulo:Linguaggi
Modulo Lua per implementare le funzioni dei template {{Nomelingua}}, {{Lingue}} e templati ad essi collegati e per offrire le medesime funzionalità ad altri moduli Lua senza dover dipendere da chiamate ai medesimi template.
Funzioni
[modifica]Per moduli Lua
[modifica]Il modulo rende disponibili alcune funzioni per altri moduli Lua, per utilizzarle occorre prima caricare il modulo con l'istruzione:
local lg = require( "Modulo:Linguaggi" );
Le funzioni saranno disponibili come lg.nomefunzione
(lg è solo un nome di esempio, si può scegliere quello che si preferisce purché si richiamino coerentemente le funzioni, per esempio si può usare local lingue = require( "Modulo:Linguaggi" );
, in questo caso le funzioni andranno richiamate come lingua.nomefunzione
esiste(code)
- ritorna
true
se code corrisponde a una lingua, altrimentifalse
get_nome(code, maiuscolo, default)
- ritorna la coppia nome della lingua corrispondente a code e code normalizzato (per esempio se code è "inglese" ritorna (lingua inglese, en). Se maiuscolo è vero la prima lettera del nome ritornato è maiuscola. Se non trova una lingua corrispondente a code ritorna il valore default se questo è definito, altrimenti ritorna stringa nulla
''
e il valore di code originariamente passato. get_voce(code)
- ritorna il nome della voce dedicata alla lingua corrispondente a code. Se il modulo non trova la voce ritorna stringa nulla
''
lingue(lista_di_lingue)
- ritorna le lingue corrispondenti a lista_di_lingue formattate come da template {{lingue}}. Se si deve passare una stringa piuttosto che una lista trasformarla in lista, per esempio chiamando la funzione racchiudendo la stringa tra parentesi graffe:
lg.lingue( {stringa} )
Per i template
[modifica]Il modulo comprende anche funzioni per implementare direttamente alcuni template, a cui si rimanda per la sintassi d'uso:
lingue(frame)
- oltre a fare da interfaccia diretta per altri moduli Lua implementa anche il modulo {{Lingue}}
nomecompleto(frame)
- implementa le funzionalità di {{nomelingua}}
nome(frame)
- implementa le funzionalità di {{nomelingua/nome}}
voce(frame)
- implementa le funzionalità di {{nomelingua/voce}}
Di documentazione
[modifica]tabella
- richiamata da una pagina wiki con
{{#Invoke:Linguaggi|tabella}}
ritorna una tabella di tutti i codici e dei nomi e collegamenti alle pagine dei linguaggi riconosciuti.
Note tecniche
[modifica]I dati utilizzati sono caricati nel modulo modulo:Linguaggi/Configurazione, che contiene due tabelle, la prima di alias di lingue che associa ad ogni codice riconosciuto per una lingua un codice standard (generalmente il codice ISO_639-3 della lingua). La seconda che associa a ogni codice standard il nome per la lingua e la sua pagina su it.wiki.
Per aggiungere un nuovo alias per una lingua già riconosciuta dal modulo basta aggiungere alla tabella language_config.alias
una riga nel formato
["alias"] = "codice_standard"',
dove alias è l'alias da inserire e codice_standard è il codice standard che deve essere già inserito nella tabella language_config.codici
.
Per inserire una nuova lingua basta aggiungere alla tabella language_config.codici
una riga nel formato:
[ "codice_standard"] = { "nome_lingua", "articolo" },
dove codice_standard è il codice standard usato dal programma (usare in ordine di preferenza codice ISO 639-1 (due lettere) altrimenti il ISO 639-2 (tre lettere), se nessuno dei due esiste usare un altro codice, purchè non sia un codice ISO 639-1 o ISO 639-2 dedicato ad altra lingua), nome lingua il nome della lingua come dev'essere visualizzato a video e articolo il nome dell'articolo di wikipedia dedicato alla lingua. Per inserire codici alternativi per la lingua vedi istruzioni del paragrafo sopra.
Nota bene: i codici e gli alias delle lingue devono essere inseriti in lettere minuscole o non verranno riconosciuti.