Module:άλλημορφή

Από Βικιλεξικό
Μετάβαση στην πλοήγηση Πήδηση στην αναζήτηση

Module:άλλημορφή >> Module:άλλημορφή/τεκμηρίωση
Καλείται από το Πρότυπο:γραφή του ή {{γρ}}

Called by the template 'form of' {{γρ}}


--[=[
	2013-2018 by Xoristzatziki
	2019.07.28. η παράμετρος#2 με ελεύθερο κείμενο (παράδειγμα [['λιοκαμένος]] Sarri.greek
	2020.09.17. args['show']
]=]--

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 wordlink = "[[" .. lemmatolink .. "]]"
    local lemmashow = lemmaargs['show'] or lemmaargs['εμφ'] 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
    
    if lemmashow ~= '' and lemmashow ~= nil then -- π.χ. [[τροχοεμποδιστήρας]]
    	--αν έχει βάλει και γλώσσα κάνε παραπομπή στην αντίστοιχη ενότητα
		if lang ~= '' then
			if languages[lang] then
				if languages[lang].link ~= '' then
					wordlink = "[[" .. lemmatolink .. "#" .. languages[lang].link .. "|" .. lemmashow .. "]]"
				end
			end
		else
			wordlink = "[[" .. lemmatolink.. "|" .. lemmashow ..  "]]"
		end	
    	

	elseif lemmashow == '' or lemmashow == nil then -- with no lemmashow
		if lang ~= '' then
			if languages[lang] then
				if languages[lang].link ~= '' then
					wordlink = "[[" .. lemmatolink .. "#" .. languages[lang].link .. "|" .. lemmatolink .. "]]"
				end
			end
		else
			wordlink = "[[" .. lemmatolink .. "]]"	
		end	
	end -- close if lemmashow


	--επιλογή είδους (μορφή, γραφή πολυτονικό)
	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 .. "'''"
			-- χρησιμοποιείται και το [[Πρότυπο:σνρ]]
		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