Bước tới nội dung

Mô đun:Language/name/data

Trang mô đun bị khóa vô hạn
Bách khoa toàn thư mở Wikipedia
Tài liệu mô đun[tạo]
-- put tables and their tables together
localfunction__coalesce(...)
localcoalesced={}
for_,langslistinipairs{...}do
forlangcode,langnamesinpairs(langslist)do
for_,langnameinpairs(langnames)do
ifnotcoalesced[langcode]then
coalesced[langcode]={}
end
table.insert(coalesced[langcode],langname)
end
end
end

returncoalesced
end

-- make the keys lowercase
localfunction__preprocess(t,first_of_array_in_array)
localpreprocessed={}
iffirst_of_array_in_arraythen
-- keep only the 1st language name for each code, excluding synonyms
fork,vinpairs(t)do
preprocessed[k:lower()]={v[1]}
end
else
fork,vinpairs(t)do
preprocessed[k:lower()]=v
end
end

returnpreprocessed
end

-- all valid primary language subtags for BCP47 from IANA (most of them from ISO 639-1, -2 and -3 with some exclusions)
local__iana_languages=__preprocess(require("Module:Language/data/iana languages"));
-- ISO 639-3 contains additional 3-letter codes not inserted in the IANA database as they are aliased to 2-letter codes,
-- but excludes some deleted codes still valid in BCP47 (some of them are aliased)
local__iso_639_3=__preprocess(require("Module:Language/data/ISO 639-3"));
-- Wikimedia wikis uses some non-standard codes and a subset of IANA codes, plus composite codes
local__wp_languages=__preprocess(require("Module:Language/data/wp languages"),true);
-- all valid script subtags for BCP47 from IANA (excluding special ISO 15924 codes)
localiana_scripts=__preprocess(require("Module:Language/data/iana scripts"));
-- all valid region subtags for BCP47 from IANA (derived from ISO 3166-1 excluding special codes, and from 3-digit UN M.49 codes for groups of countries)
localiana_regions=__preprocess(require("Module:Language/data/iana regions"));

-- variant subtags from IANA; table format differs from the other IANA data tables
localiana_variants=__preprocess(require("Module:Language/data/iana variants"));
-- suppressed script subtags from IANA;
localiana_suppressed_scripts=__preprocess(require("Module:Language/data/iana suppressed scripts"));

return{
lang=__coalesce(__wp_languages,__iana_languages,__iso_639_3),
lang_iana=__iana_languages,
script=iana_scripts,
region=iana_regions,
variant=iana_variants,
suppressed=iana_suppressed_scripts,
}