Modül:köken
Görünüm
Bu belgeleme Modül:köken/belge (düzenle | geçmiş) sayfasından yansıtılmaktadır. Arayüz düzenleyicilerinin deney yapabilmeleri için ayrıca Modül:köken/deneme tahtası sayfası kullanılabilir.
local cikart = {}
local araclar = require("Modül:tr-araçlar")
local alfabeler = require("Modül:alfabeler")
local function ine(arg)
if arg == "" then
return nil
else
return arg
end
end
function onislem(veri)
if veri.dil:getirKod() == veri.koken:getirKod() then
table.insert(veri.kategoriler, "[[Kategori:Köken şablonunun yanlış kullanıldığı sayfalar]]")
else
--Alfabe kontrolü
if veri.dil and require("Modül:alfabekontrol").goster(mw.title.getCurrentTitle().subpageText, veri.dil:getirAsilAd()) ~= false then
table.insert(veri.kategoriler, "[[Kategori:" .. veri.koken:getirKategoriAdi() .. " kökenli " .. veri.dil:getirKategoriAdi() .. " sözcükler]]")
else
table.insert(veri.kategoriler, "[[Kategori:Köken şablonunun yanlış kullanıldığı sayfalar]]")
end
end
end
function getirKokenDiliOlmayan(dil)
while dil:getirTip() == "köken dili" do
local ebeveynKodu = dil:getirEbeveynKodu()
local ebeveyn = require("Modül:diller").getirKodaGore(ebeveynKodu)
or require("Modül:köken dilleri").getirKodaGore(ebeveynKodu)
or require("Modül:aileler").getirKodaGore(ebeveynKodu)
dil = ebeveyn
-- mw.log(terminfo.dil:getirTip() .. " " .. terminfo.dil:getirTip())
end
return dil
end
function cikart.kokenSozcuk(veri, sablon)
if sablon ~= "diğer" then
onislem(veri)
end
veri.koken = getirKokenDiliOlmayan(veri.koken)
if sablon == "devralınan" or sablon == "nakledilen" then
table.insert(veri.kategoriler, "[[Kategori:" .. araclar.dilDuzenle(veri.koken:getirKategoriAdi()) .. "n "..sablon.." "
.. veri.dil:getirKategoriAdi() .. " sözcükler]]")
end
if mw.title.getCurrentTitle().nsText == "" then else
veri.kategoriler = {}
end
veri.dil = veri.koken
-- sözcük Latin harfleriyle yazılmış ise italik yazılsın.
local enIyiAlfabe = alfabeler.bulEnIyiAlfabe(veri.sozcuk, veri.dil)
if enIyiAlfabe and enIyiAlfabe:getirKod() == "Latn" then
tip = "sözcük"
end
return "[[w:" .. veri.koken:getirKategoriAdi() .. "|" .. veri.koken:getirKategoriAdi() .. "]] "
.. (veri.sozcuk == "-" and " bilinmeyen bir " or require("Modül:bağlantılar").tam_bag(veri, tip, true))
.. table.concat(veri.kategoriler)
end
function cikart.koken(veri)
onislem(veri)
if mw.title.getCurrentTitle().nsText == "" then else
veri.kategoriler = {}
end
return "[[w:" .. veri.koken:getirKategoriAdi() .. "|" .. veri.koken:getirKategoriAdi() .. "]]" .. table.concat(veri.kategoriler)
end
return cikart