Modül:temalar/şablonlar
Bu belgeleme Modül:temalar/şablonlar/belge (düzenle | geçmiş) sayfasından yansıtılmaktadır. Arayüz düzenleyicilerinin deney yapabilmeleri için ayrıca Modül:temalar/şablonlar/deneme tahtası sayfası kullanılabilir.
local cikart = {}
local dilDuzenle = require("Modül:tr-araçlar").dilDuzenle
local temalar = require("Modül:temalar").getirAsilAdaGore
local terimler = {}
local kategoriler = {}
local function ine(arg)
if arg == "" then
return nil
else
return arg
end
end
function degisken(terim)
local liste = {
["örtmece"] = "örtmeceler",
["yerleşim birimi"] = "yerleşim birimleri",
["alay"] = "alay ifadeli sözcükler",
["hakaret yollu"] = "hakaret yollu sözcükler",
["konuşma dili"] = "konuşma dili ifadeleri",
["şaka yollu"] = "şaka yollu sözcükler",
["noktalama işaretleri"] = "noktalama işareti adları",
}
return liste[terim] and liste[terim] or terim
end
-- {{terim}} şablonu için
function cikart.goster(frame)
local args = frame:getParent().args
if args["dil"] then
dil = require("Modül:diller").getirKodaGore(args["dil"]):getirAsilAd()
end
if not args["dilsiz"] then
if not args["dil"] and mw.title.getCurrentTitle().nsText ~= "Şablon" then
table.insert(kategoriler, "[[Kategori:Dil parametresi olmayan terim şablonları]]")
return "<span style='color:red'>'''(Lütfen bir dil kodu girin.)</span>'''" .. table.concat(kategoriler, "\n")
end
end
local terim = degisken(ine(args[1]))
local i = 1
if mw.title.getCurrentTitle().nsText == "Şablon" and frame.args["demo"] then
terim = "terim"
dil = require("Modül:diller").getirKodaGore("tr"):getirAsilAd()
end
while terim do
terim = mw.ustring.gsub(mw.ustring.gsub( terim, "%s$", ""), "^%s", "")
table.insert(terimler, terim)
i = i + 1
terim = degisken(ine(args[i]))
end
for x, y in ipairs(terimler) do
if temalar(y) then
if y == "eskimiş" then
y = "artık kullanılmayan sözcükler"
end
if not args["dilsiz"] and dil then
table.insert(kategoriler, "[[Kategori:" ..
((temalar(y) and (temalar(y):getirTip() == "konu" or temalar(y):getirTip() == "grup")) and dilDuzenle(dil) or dil) .. " " .. y .. "]]")
end
end
end
if mw.title.getCurrentTitle().nsText == "Şablon" then
kategoriler = {}
end
--Alfabe kontrolü
if dil and require("Modül:alfabekontrol").goster(mw.title.getCurrentTitle().subpageText, dil) == false then
kategoriler = {}
table.insert(kategoriler, "[[Kategori:Terim şablonunun yanlış kullanıldığı sayfalar]]")
end
return "(''" .. table.concat(terimler, "'', ''") .. "'')" .. table.concat(kategoriler, "\n")
end
return cikart