Modulo:IsLatin
Instruçioìn pe l'ûzo
Quésto o l'é 'n mòdolo scrîto in Lua. E instruçioìn chi de sótta són contegnûe inta sotopàgina Modulo:IsLatin/man (modìfica · stöia)
Sandbox: Modulo:IsLatin/sandbox (modìfica · stöia) · Test: Modulo:IsLatin/test (modìfica · stöia · ezegoi)
Quésto o l'é 'n mòdolo scrîto in Lua. E instruçioìn chi de sótta són contegnûe inta sotopàgina Modulo:IsLatin/man (modìfica · stöia)
Sandbox: Modulo:IsLatin/sandbox (modìfica · stöia) · Test: Modulo:IsLatin/test (modìfica · stöia · ezegoi)
Mòdolo pe identificâ di caràteri esclûzi da l'arfabêto latìn e fêua di blòcchi "General Punctuation" e "Mathematical Operators". L'idêa òriginâle l'è stæta de l'uténte WOSlinker.
A fonçión analiza o tèsto e no dá nisciùn rizultâto se trœva un ò ciù caràteri fêua di blòcchi sórvia mensonòu, sedónca dá "sci". Se pœ adêuviâ co-o template {{IsLatin}} o atravèrso 'n âtro mòdolo pe òtegnî "false" o "true". Ezénpi d'ûzo:
Tèsto da analizâ | Còdice da usâ | Rizultâto |
---|---|---|
salûi | {{#invoke:IsLatin|IsLatin|salûi}} o {{IsLatin|salûi}} |
sci |
你好 | {{#invoke:IsLatin|IsLatin|你好}} o {{IsLatin|你好}} |
|
привет | {{#invoke:IsLatin|IsLatin|привет}} o {{IsLatin|привет}} |
|
cześć | {{#invoke:IsLatin|IsLatin|cześć}} o {{IsLatin|cześć}} |
sci |
سلام | {{#invoke:IsLatin|IsLatin|سلام}} o {{IsLatin|سلام}} |
local p = {}
-- Funzione per l'utilizzo da altro modulo
function p._IsLatin(args)
local txt = args[1] or ''
if mw.text.trim(txt) == '' then return nil end
local len = mw.ustring.len(txt)
local pos = 1
while (pos <= len) do
local charval = mw.ustring.codepoint(mw.ustring.sub(txt, pos))
if charval >= 880 and charval < 8192 then
return false
elseif charval >= 8960 then
return false
end
pos = pos + 1
end
return true
end
-- Funzione per il template IsLatin
function p.IsLatin(frame)
return p._IsLatin(frame.args) and 'sci' or ''
end
return p