Module:άλλημορφή

Από Βικιλεξικό
Πήδηση στην πλοήγηση Πήδηση στην αναζήτηση
--[=[
	2013-2018 by Xoristzatziki
	2019.07.28. η παράμετρος#2 με ελεύθερο κείμενο (παράδειγμα [['λιοκαμένος]] Sarri.greek
]=]--

p = {}

local languages =  mw.loadData("Module:Languages")

errorhere = function(errstring)
    return '<div class="error">' .. errstring .. '</div>[[Κατηγορία:Σελίδες με σφάλματα]]'
end

--μπορούν να προστεθούν και άλλες κατηγορίες π.χ. για άλλες γλώσσες
p.export = function (frame)
    local lemmaargs = frame:getParent().args
    local lemmatolink = lemmaargs[1] or ''
    local kindof = lemmaargs[2] or ''
    --3η παράμετρος η γλώσσα
    local lang = lemmaargs[3] or ''
    --διάβασε τον τιτλο του λήμματος
    PAGENAME = mw.title.getCurrentTitle().text
    --local lemma = PAGENAME:match( "^%s*(.-)%s*$" )
    local output = ''
    --αν δεν έδοσε παράμετρο
    if lemmatolink == '' then
    	mw.addWarning('Δεν δόθηκε η λέξη!')
    	return frame:preprocess(errorhere('Δεν δόθηκε η λέξη!') )   	
    end
	wordlink = lemmatolink
	--αν έχει βάλει και γλώσσα κάνε παραπομπή στην αντίστοιχη ενότητα
	if lang ~= '' then
		if languages[lang] then
			if languages[lang].link ~= '' then
				wordlink = lemmatolink .. "#" .. languages[lang].link .. "|" .. lemmatolink
			end
		end
	end	
	--επιλογή είδους (μορφή, γραφή πολυτονικό)
	if kindof ~= '' then
		if kindof == 'πολ' then
			output = "''[[πολυτονικό|πολυτονική γραφή]] του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'πολυ' then
			output = "''[[πολυτονικό|πολυτονική γραφή]] του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'μον' then
			output = "''[[μονοτονικό|μονοτονική γραφή]] του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'μονο' then
			output = "''[[μονοτονικό|μονοτονική γραφή]] του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'μορφ' then
			output = "''[[Βικιλεξικό:Μορφές λέξεων|άλλη μορφή]] του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'παρωχ' then
			output = "''παρωχημένη γραφή του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'ασυν' then
			output = "''[[ασυναίρετος|ασυναίρετη]] μορφή του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'απλοπ' then
			output = "''[[απλοποιημένος|απλοποιημένη]] γραφή του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'αω' then
			output = "''[[ασυναίρετος|ασυναίρετη]] μορφή του ρήματος '''''[[".. wordlink .. "]]'''"	
		elseif kindof == 'συν' then
			output = "''[[συνηρημένος|συνηρημένη]] μορφή του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'σνρ' then
			output = "''[[συνηρημένος|συνηρημένη]] μορφή του '''''[[".. wordlink .. "]]'''"
		elseif kindof == 'συνων' then
			output = "''[[συνώνυμο|συνώνυμο]] του '''''[[".. wordlink .. "]]'''"
		-- παράμετρος#2 με ελεύθερο κείμενο (παράδειγμα [['λιοκαμένος]])
		else
			output = "''" .. kindof .. "'' '''[[".. wordlink .. "]]'''"
		end	
		--[=[ παράμετρος#2 με απαγόρευση ελεύθερου κειμένου
		else --έχει δεύτερη παράμετρο αλλά μάλλον είναι λάθος ή δεν υποστηρίζεται ακόμα
			mw.addWarning('Η δεύτερη παράμετρος είναι λάθος ή δεν υποστηρίζεται ακόμα!')
			output = "''[[Βικιλεξικό:Μορφές λέξεων|άλλη γραφή του]] ''[[".. wordlink .. "]][[Κατηγορία:Σελίδες με σφάλματα]]"	
		end
		--]=]

	else
		--Χωρίς δεύτερη παράμετρο υποθέτουμε ότι ο συντάκτης θέλει να καταγράψει το "άλλη γραφή"
		output = "''[[Βικιλεξικό:Μορφές λέξεων|άλλη γραφή του]] '''''[[".. wordlink .. "]]'''"		
	end
	return frame:preprocess(output)
end

return p