Module:ετυμολογία

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

Module:ετυμολογία/τεκμηρίωση

Το Module:ετυμολογία καλείται από τα πρότυπα

  • {{ετυμ}} (για Κατηγορίες προέλευση λέξεων) {{ετυμ|dd|rr}} rr: Τα νεοελληνικά (el) εννοούνται (δεν χρειάζεται να αναγράφεται κωδικός)

Για τα παρακάτω χρειάζονται και οι δύο κωδικοί γλωσσών για να μπουν σε Κατηγορίες:
{{δαν ή...|κωδικός γλώσσας-δότη|κωδικός γλώσσας-δέκτη}}

  • {{δαν}} (δάνειο)
  • {{μτφδ}} (μεταφραστικό δάνειο)
  • {{σμσδ}} (σημασιολογικό δάνειο)
  • {{ορθδ}} (ορθογραφικό δάνειο)
  • {{κλη}} (κληρονομιά)
    Η λειτουργία τους έχει ελεγχθεί. Δείτε τις οδηγίες τους για λεπτομέρειες.
  • Μπορείτε να προσθέσετε και |λέξη-δότη|εμφάνιση λέξης-δότη}}
  • το {{δαν}} και {{κλη}} δεν εμφανίζουν ορισμό, παρά μόνον εάν το επιθυμείτε.
  • τα δαν, μτφδ, σμσδ, ορθδ, κλη δέχονται: |notext= |nocat= |text=

ΕΠΙΠΛΕΟΝ πρότυπα που εντάσσουν σε κατηγορίες:

ΧΩΡΙΣ Κατηγορίες:
Yπάρχουν τα πρότυπα {{μσν}}, {{αρχ}}, {{ιε}} για απλή αναγραφή των όρων με συνδέσμους: (μεσαιωνική ελληνική), (αρχαία ελληνική), ινδοευρωπαϊκή (ρίζα) Δεν εντάσσουν σε καμία κατηγορία.

Δείτε και Βοήθεια:Ετυμολογία.

τεστ[επεξεργασία]

  • δοκιμάστε εδώ κάποιο τεστ

Προβλήματα[επεξεργασία]

  • To {{ετυμ}} συνδέει με τη Βικιπαίδεια, ενώ όλα τα άλλα πρότυπα, με το δικό μας λήμμα, το σχετικό με τη γλώσσα. Το οποίο διαθέτει λινκ και στη Βικιπαίδεια, αλλά και λινκ στην Κατηγορία της γλώσσας στο Βικιλεξικό με όλα της τα λήμματα. Τι προτιμάμε? 2019.02.27. Επιπλέον, η Βικιπαίδεια ως εξωτερικός σύνδεσμος έχει άλλα χρώματα.
  • στην αναγραφόμενη έκφραση: από την ή από τη: π.χ. από την ελληνική. Αλλά: από τη γαλλική. 2019.02.27. Γίνεται δοκιμή στην Ενότητα:δάνειο 2019.Απρίλιος.
  • όταν δεν υπάρχει κωδικός iso γλώσσας, στο {ετυμ} έχει σωστό warning. Θα μπορούσε να γίνει και στα άλλα. 2019.03.19.

-- 2019: μερικές προσθήκες στο Module του Xoristzatziki.
    --Διαμόρφωση ως εξής:
	--Α. Προκαταρκτικά
	--Β. οι functions που έχουν ελεγχθεί, έχουν πρότυπα και λειτουργούν
	-- ετυμ, δάνειο, μεταφραστικό δάνειο, σημασιολογικό δάνειο
	-- 2019.03.15. ορθογραφικό δάνειο
	-- κληρονομιά
	--Γ. Επιπλέον λειτουργίες 2019.04.11. (υποκοριστικό, μεγεθυντικό)
	--Δ. παλαιότερες function, δοκιμαστικά.
	--Ε. functions για έλεγχο κωδικών
-- 2016-2018: βασικές function, και πολλά δοκιμαστικά
	--1. κανονικά το module θα πρέπει πάντα να εντάσσει το λήμμα σε κάποια κατηγορία ετυμολόγησης
	--2. μάλλον δεν χρειάζεται το frame:preprocess
	--αν χρειάζεται το προσθέτουμε...
export = {}

--Α. Προκαταρκτικά.

local Ld = {}
--Ld['γλώσσες'] = mw.loadData("Module:γλώσσες")
Ld['γλώσσες'] = mw.loadData("Module:Languages")
--πίνακας με τις τοπικές συναρτήσεις
local Lf = {}

--βρες το όνομα του Προτύπου που κάλεσε το Module
--αλλά μόνο αν κλήθηκε από σελίδα που κάλεσε το πρότυπο
Lf['πρότυπο'] =  function(frame)
    if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
        local templateobj = mw.title.new(frame:getParent():getTitle())
        if templateobj.namespace == 10 then -- NS_TEMPLATE
            return templateobj.text:match( "^%s*(.-)%s*$" )
        else
            return nil
        end
    else
        return nil
    end
end

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

export['από πρότυπο'] = function(frame)
    lc = {}
    lc['παράμετροι λήμματος'] = frame:getParent().args
    --lc['παράμετρος 1'] = lc['παράμετροι λήμματος'][1] or ''
    --lc['παράμετρος 2'] = lc['παράμετροι λήμματος'][2] or ''
    lc['τίτλος λήμματος'] = mw.title.getCurrentTitle().text
    lc['πρότυπο'] = Lf['πρότυπο'](frame)
    -- το Πρότυπο:ετυμ λειτουργεί από εδώ
    if lc['πρότυπο'] == 'δαν' then return Lf['δάνειο'](lc) end
    if lc['πρότυπο'] == 'μτφδ' then return Lf['μεταφραστικό δάνειο'](lc) end
    if lc['πρότυπο'] == 'σμσδ' then return Lf['σημασιολογικό δάνειο'](lc) end
    if lc['πρότυπο'] == 'ορθδ' then return Lf['ορθογραφικό δάνειο'](lc) end
    if lc['πρότυπο'] == 'κλη' then return Lf['κληρονομιά'](lc) end
    -- ΔΟΚΙΜΕΣ
    --if lc['πρότυπο'] == 'μτφδ-τεστ' then return Lf['μεταφραστικό δάνειο'](lc) end    
    if lc['πρότυπο'] == 'αρχ' then return Lf['αρχαία'](lc) end
	--δοκιμή
    if lc['πρότυπο'] == 'αρχ3' then return Lf['αρχαία'](lc) end
    if lc['πρότυπο'] == 'μσν' then return Lf['μεσαιωνική'](lc) end
    if lc['πρότυπο'] == 'ελνστ' then return Lf['ελληνιστική'](lc) end
    if lc['πρότυπο'] == 'ιε' then return Lf['ινδοευρωπαϊκή ρίζα'](lc) end
    if lc['πρότυπο'] == 'ετυμ-επιθ' then return Lf['επίθημα'](lc) end
    --ίσως προσωρινή, ίσως μόνιμη λύση.
    if lc['πρότυπο'] == 'ετυμ-υποκ' then return Lf['υποκοριστικό'](lc) end
    if lc['πρότυπο'] == 'ετυμ-μεγεθ' then return Lf['μεγεθυντικό'](lc) end
    --if lc['πρότυπο'] == 'μσν' then return Lf['μεσαιωνική'](lc) end
    --if lc['πρότυπο'] == 'μσν' then return Lf['μεσαιωνική'](lc) end

    --δοκιμαστικό πρότυπο Πρότυπο:Χρήστης/Xoristzatziki/τεσταρχ με {{#invoke:Πρότυπο:ετυμ|βασική}} και στο λήμμα {{Χρήστης/Xoristzatziki/τεσταρχ...
    if lc['πρότυπο'] == 'Χρήστης/Xoristzatziki/τεσταρχ' then return Lf['τεσταρχ'](lc) end

    --δοκιμαστικό πρότυπο Πρότυπο:Χρήστης/Xoristzatziki/τεστιε με {{#invoke:Πρότυπο:ετυμ|βασική}} και στο λήμμα {{Χρήστης/Xoristzatziki/τεστιε...
    if lc['πρότυπο'] == 'Χρήστης/Xoristzatziki/τεστιε' then return Lf['ινδοευρωπαϊκή ρίζα'](lc) end

    --δοκιμαστικό πρότυπο Πρότυπο:Χρήστης/Xoristzatziki/τεστυποκ με {{#invoke:Πρότυπο:ετυμ|βασική}} και στο λήμμα {{Χρήστης/Xoristzatziki/τεστυποκ|υποκ...
    if lc['πρότυπο'] == 'Χρήστης/Xoristzatziki/τεστυποκ' then return Lf['υποκοριστικό'](lc) end

    --για τα υπόλοιπα:
    --αν η πρώτη παράμετρος είναι κάποια από τις:
    --αρχ, μσν, ελνστ, ιε ΙΣΩΣ να πήγαινει στις παραπάνω συναρτήσεις
    --αλλά θέλει αλλαγές στις παραμέτρους (στη σειρά τους δηλαδή)
    --ή μπορεί να κάνουμε ενδιάμεση συνάρτηση που να δημιουργεί νέες παραμέτρους

    --αν η πρώτη αριθμητική παράμετρος είναι κενή επίστρεψε σφάλμα
    --(δεν υπάρχει ακόμα κάποια χρήση για τέτοιες περιπτώσεις...)
    if lc['παράμετροι λήμματος'][1] == nil then
        error( 'Δεν δόθηκε καμία παράμετρος!' .. "#" .. type(frame.args) .. "#" .. type(frame.getParent) .. "#" .. lc['πρότυπο'] .. "#")
    end

    --αν είναι υποκ
    --(ή κάποιες που μπορεί να προστεθούν αργότερα όπως πρόθημα, επίθημα κλπ κατά τα αγγλικά Template:suffix κλπ.)
    --πήγαινε στην αντίστοιχη συνάρτηση (δες εκεί για τις υπόλοιπες παραμέτρους)
    --Αλλιώς θεώρησε ότι είναι το iso της γλώσσας του ετύμου
    --και η επόμενη είναι το iso της γλώσσας του λήμματος
    --τότε η τρίτη παράμετρος θα είναι το λήμμα για παραπομπή
    --και η τέταρτη ίσως είναι το τι θα εμφανίζει
    if lc['παράμετροι λήμματος'][1] == 'υποκ' then return Lf['υποκοριστικό'](lc) end

    if lc['παράμετροι λήμματος'][1] == 'επίθημα' then return Lf['επίθημα'](lc) end


    --περίπτωση κανονικής ετυμολόγησης
   
    return Lf['απλή ετυμολόγηση'](lc)


end

--Β. ΛΕΙΤΟΥΡΓΙΕΣ εν χρήσει
-- ετυμ (για Προελεύσεις), δάνειο, μεταφραστικό δάνειο, σημασιολογικό δάνειο, ορθογραφικό δάνειο,  κληρονομιά

-- ετυμ  από Xoristzatziki (καλείται από το [[Πρότυπο:ετυμ]] και δημιουργεί Κατηγορίες Προέλευσης)
--ΑΠΛΗ ΕΤΥΜΟΛΟΓΗΣΗ
Lf['απλή ετυμολόγηση'] = function(lc)
    --διαβάζουμε το iso γλώσσας ετύμου από την πρώτη παράμετρο
    lc['iso γλώσσας ετύμου'] = lc['παράμετροι λήμματος'][1] or ''
    --αν δεν υπάρχει ή είναι κενό επίστρεψε σφάλμα
    if Ld['γλώσσες'][lc['iso γλώσσας ετύμου']] == '' then
        return Lf['σφάλμα']('Η πρώτη παράμετρος (το iso της γλώσσας του ετύμου) είναι εσφαλμένη ή δεν δόθηκε!')
    end
    if lc['iso γλώσσας ετύμου'] == 'αρχ' then lc['iso γλώσσας ετύμου'] = 'grc' end
    if lc['iso γλώσσας ετύμου'] == 'μσν' then lc['iso γλώσσας ετύμου'] = 'gkm' end
    lc['ενότητα γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['link'] or ''
    lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    --αν δεν υπάρχει καταχωρισμένο όνομα γλώσσας επίστρεψε σφάλμα
    if lc['γλώσσα ετύμου'] == '' then
        return Lf['σφάλμα']( 'Δεν βρέθηκε όνομα γλώσσας του ετύμου: "' .. lc['iso γλώσσας ετύμου'] .. '"!')
    end
    --και η δεύτερη αριθμητική παράμετρος πρέπει να υπάρχει
    --if lc['παράμετροι λήμματος'][2] == nil then
        --return Lf['σφάλμα']( 'Δεν δόθηκε δεύτερη παράμετρος (το iso της γλώσσας)!')
    --end
    lc['iso γλώσσας λήμματος'] = lc['παράμετροι λήμματος'][2] or ''
    --αν είναι κενή τότε υποθέτουμε τα ελληνικά
    if lc['iso γλώσσας λήμματος'] == '' then lc['iso γλώσσας λήμματος'] = 'el' end
    --αν δεν υπάρχει το iso επίστρεψε σφάλμα
    if Ld['γλώσσες'][lc['iso γλώσσας λήμματος']] == nil then
        return Lf['σφάλμα']('Η δεύτερη παράμετρος (το iso της γλώσσας της ετυμολογούμενης λέξης) είναι λάθος ή δεν υπάρχει ο κωδικός!')
    end
    lc['επίθετο γλώσσας'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    if lc['επίθετο γλώσσας'] == '' then
        return Lf['σφάλμα']( 'Δεν βρέθηκε παράμετρος frm για τη γλώσσα του ετύμου: "' .. lc['iso γλώσσας ετύμου'] .. '"!')
    end
    --προετοιμασία παραπομπής
    lc['παραπομπή στη Βικιπαίδεια'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['wiki'] or ''
    if lc['παραπομπή στη Βικιπαίδεια'] ~= '' then
        lc['κείμενο'] = "''[[w:" .. lc['παραπομπή στη Βικιπαίδεια'] .. '|' .. lc['επίθετο γλώσσας'] .. "]]'' "
    else
        lc['κείμενο'] = "''" .. lc['επίθετο γλώσσας'] .. "'' "
    end

    --αν έχει δώσει και το έτυμο
    lc['έτυμο'] = lc['παράμετροι λήμματος'][3] or ''
    --θα δείξουμε το έτυμο αν δεν έχει δώσει 4η παράμετρο
    lc['λέξη που δείξουμε'] = lc['παράμετροι λήμματος'][4] or lc['έτυμο']

    if lc['έτυμο'] ~= '' then
        --αν έχει ενότητα η γλώσσα του ετύμου φτιάξε παραπομπή
        if lc['ενότητα γλώσσας ετύμου'] ~= '' then
            lc['κείμενο'] = lc['κείμενο'] .. "[[" .. lc['έτυμο'] .. '#' .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['λέξη που δείξουμε'] .. ']]'
        else
            lc['κείμενο'] = lc['κείμενο'] .. lc['λέξη που δείξουμε']
            --αν το έτυμο είναι διαφορετικό από τη λέξη που θέλει να δείξουμε βάζουμε το έτυμο σε παρένθεση
            --(αν βρεθεί περίπτωση που δεν θέλουμε να γίνεται, για κάποιον λόγο, μπορούμε να προσθέσουμε παράμετρο που να μην το έμφανίζει)
            if lc['έτυμο'] ~= lc['λέξη που δείξουμε'] then lc['κείμενο'] = lc['κείμενο'] .. '(' .. lc['έτυμο'] .. ')' end
        end
    end
    lc['γλώσσα λήμματος για κατηγορία'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['words'] or ''
    lc['γλώσσα ετύμου για κατηγορία'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['from'] or ''

    -- nocat (αν ΔΕΝ θέλουμε ένταξη σε κατηγορία)
    lc['όχικατηγορία'] = lc ['παράμετροι λήμματος']['nocat'] or ''
        if lc['όχικατηγορία'] ~= '' then
        lc['κείμενο'] =  lc['κείμενο']
            	else
    if lc['γλώσσα λήμματος για κατηγορία'] ~= '' and lc['γλώσσα ετύμου για κατηγορία'] ~= '' then
    	--ΚΑΝΩ ίδια line 167 και 169 διότι ΠΡΟΒΛΗΜΑ:αν η γλώσσα του λήμματος είναι η ελληνική δημιουργεί κατηγορία  Δάνεια από τα .. αλλιώς δημιουργεί κατηγορία ΧΧΧ λέξεις ΧΧΧ προέλευσης
    	if lc['iso γλώσσας λήμματος'] == 'el' then
    		lc['κείμενο'] = lc['κείμενο'] .. '[[Κατηγορία:' .. lc['γλώσσα λήμματος για κατηγορία'] .. ' ' .. lc['γλώσσα ετύμου για κατηγορία'] .. ']]'
    	else
        	lc['κείμενο'] = lc['κείμενο'] .. '[[Κατηγορία:' .. lc['γλώσσα λήμματος για κατηγορία'] .. ' ' .. lc['γλώσσα ετύμου για κατηγορία'] .. ']]'
        end
    else
        lc['κείμενο'] = lc['κείμενο'] .. '[[Κατηγορία:Eπιτήρηση:Πρότυπο:ετυμ με λάθος στη γλώσσα]]'
    end
    end -- κλείσιμο nocat
    return lc['κείμενο']
end


-- δάνειο [[Πρότυπο:δαν]]. Δημιουργεί Κατηγορία:Δάνεια από... και ταυτόχρονα, Κατηγορία:ΧΧ...ές λέξεις ...ής προέλευσης
Lf['δάνειο'] = function(lc)
    lc['iso γλώσσας ετύμου'] = lc['παράμετροι λήμματος'][1] or ''
    lc['iso γλώσσας λήμματος'] = lc['παράμετροι λήμματος'][2] or ''
    lc['έτυμο'] = lc['παράμετροι λήμματος'][3] or ''
    lc['εμφάνιση'] = lc['παράμετροι λήμματος'][4] or ''
    lc['κείμενο'] = '' or '' -- το default κείμενο είναι άδειο
    -- text αν θέλουμε κείμενο
    lc['μεγάλοκείμενο'] = lc ['παράμετροι λήμματος']['text'] or ''
    lc['γλώσσα ετύμου apoti'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['apoti'] or ''
    if lc['μεγάλοκείμενο'] ~= '' then
    	if lc['γλώσσα ετύμου apoti'] == '' then lc['κείμενο'] = '[[δάνειο]] από την' .. lc['κείμενο'] else
    		lc['κείμενο'] = '[[δάνειο]]  ' .. lc['γλώσσα ετύμου apoti'] .. ' ' end
    	else lc['κείμενο'] = lc['κείμενο'] end  

    -- param#1 και param#2 συνδυασμοί
    -- 1) 0 + 0
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] == '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Δάνεια, πρέπει να εισάγετε τους κωδικούς iso των γλωσσών (1η και 2η παράμετρος)')
    end
    -- 2) 0 + iso
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Δάνεια, πρέπει να εισάγετε και τον κωδικό iso της γλώσσας-δότριας (1η παράμετρος)')
    end
    -- 3) iso + 0: iso must be correct, else get error
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] == '' then
    --αν δεν υπάρχει το iso γλώσσας ετύμου στην param#1, επίστρεψε σφάλμα
    	if Ld['γλώσσες'][lc['iso γλώσσας ετύμου']] == nil then
        	return Lf['σφάλμα']('Η πρώτη παράμετρος (το iso της γλώσσας δότριας) είναι λάθος ή δεν υπάρχει ο κωδικός!')
        	else
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Δάνεια, πρέπει να εισάγετε ΚΑΙ τον κωδικό iso της γλώσσας-αποδέκτριας (2η παράμετρος)')
    	end
    end
    -- 4) iso + iso: if one iso is wrong, get error
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    --αν δεν υπάρχει το iso γλώσσας ετύμου στην param#1, ή iso γλώσσας-δέκτριας στην param#2, επίστρεψε σφάλμα
    	if Ld['γλώσσες'][lc['iso γλώσσας ετύμου']] == nil or Ld['γλώσσες'][lc['iso γλώσσας λήμματος']] == nil then
        	return Lf['σφάλμα']('Κάποια παράμετρος (iso γλώσσας) είναι λάθος ή δεν υπάρχει ο κωδικός!')
        	else
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['γλώσσα ετύμου apota'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['apota'] or ''
    	lc['γλώσσα λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['name'] or ''
    	lc['λέξεις γλώσσας λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['words'] or ''
    	lc['προέλευσης γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['from'] or ''
    	-- nocat
    	lc['όχικατηγορία'] = lc ['παράμετροι λήμματος']['nocat'] or ''
        	if lc['όχικατηγορία'] ~= '' then
            lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
            	else
    		lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' ' ..
    		'[[Κατηγορία:Δάνεια  ' .. lc['γλώσσα ετύμου apota'] .. ' (' ..lc['γλώσσα λήμματος'] .. ')]]' ..
    		'[[Κατηγορία:' .. lc['λέξεις γλώσσας λήμματος'] .. ' ' .. lc['προέλευσης γλώσσας ετύμου'] .. ']]'    	
    		end
    	end
    end
    	
	-- link στη λέξη-δότρια
    if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] ~= '' then
    	lc['ενότητα γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['link'] or ''
    	if lc['εμφάνιση'] ~= '' then
    		lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['εμφάνιση'] .. ']]'
    		else
    			lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['έτυμο'] .. ']]'
    			end
			else
				if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] == '' then
					if lc['εμφάνιση'] ~= '' then
						lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['εμφάνιση'] .. ']]'
						else
							lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['έτυμο'] .. ']]'
						end
				    end
        end
    return lc['κείμενο']
end


-- μεταφραστικό δάνειο [[Πρότυπο:μτφδ]] Δημιουργεί Κατηγορία:Μεταφραστικά δάνεια από
Lf['μεταφραστικό δάνειο'] = function(lc)
    lc['iso γλώσσας ετύμου'] = lc['παράμετροι λήμματος'][1] or ''
    lc['iso γλώσσας λήμματος'] = lc['παράμετροι λήμματος'][2] or ''
    lc['έτυμο'] = lc['παράμετροι λήμματος'][3] or ''
    lc['εμφάνιση'] = lc['παράμετροι λήμματος'][4] or ''
    lc['κείμενο'] = '([[μεταφραστικό δάνειο]]) ' or ''
    -- notext
    lc['όχικείμενο'] = lc ['παράμετροι λήμματος']['notext'] or ''
    if lc['όχικείμενο'] ~= '' then lc['κείμενο'] = '' else lc['κείμενο'] = '([[μεταφραστικό δάνειο]]) ' end
    -- text
    lc['μεγάλοκείμενο'] = lc ['παράμετροι λήμματος']['text'] or ''
    if lc['μεγάλοκείμενο'] ~= '' then lc['κείμενο'] = '[[μεταφραστικό δάνειο]] από την ' else lc['κείμενο'] = lc['κείμενο'] end    

    -- param#1 και param#2 συνδυασμοί
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] == '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Μεταφραστικά δάνεια, πρέπει να εισάγετε τους κωδικούς iso των γλωσσών (1η και 2η παράμετρος)')
    	end
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Μεταφραστικά δάνεια, πρέπει να εισάγετε και τον κωδικό iso της γλώσσας-δότριας (1η παράμετρος)')
    	end
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] == '' then
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Μεταφραστικά δάνεια, πρέπει να εισάγετε ΚΑΙ τον κωδικό iso της γλώσσας-αποδέκτριας (2η παράμετρος)')
    	end    		
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['γλώσσα ετύμου apota'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['apota'] or ''
    	lc['γλώσσα λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['name'] or ''
    	lc['λέξεις γλώσσας λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['words'] or ''
    	lc['προέλευσης γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['from'] or ''
    	-- nocat
    	lc['όχικατηγορία'] = lc ['παράμετροι λήμματος']['nocat'] or ''
        if lc['όχικατηγορία'] ~= '' then
            lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
            	else
    		lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' ' ..
    		'[[Κατηγορία:Μεταφραστικά δάνεια  ' .. lc['γλώσσα ετύμου apota'] .. ' (' ..lc['γλώσσα λήμματος'] .. ')]]'
    		-- 2019.03.10 Φεύγει: .. '[[Κατηγορία:' .. lc['λέξεις γλώσσας λήμματος'] .. ' ' .. lc['προέλευσης γλώσσας ετύμου'] .. ']]'    	
    		end
    	end
		
	-- link στη λέξη-δότρια
    if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] ~= '' then
    lc['ενότητα γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['link'] or ''
        if lc['εμφάνιση'] ~= '' then
        	lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['εμφάνιση'] .. ']]'
            	else
            		lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['έτυμο'] .. ']]'
                end
            else
            	if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] == '' then
            		if lc['εμφάνιση'] ~= '' then
            			lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['εμφάνιση'] .. ']]'
            			else
            			lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['έτυμο'] .. ']]'
            			end
            		end
            end

    return lc['κείμενο']
end



-- σημασιολογικό δάνειο [[Πρότυπο:σμσδ]] Δημιουργεί Κατηγορία:Σημασιολογικά δάνεια από
Lf['σημασιολογικό δάνειο'] = function(lc)
    lc['iso γλώσσας ετύμου'] = lc['παράμετροι λήμματος'][1] or ''
    lc['iso γλώσσας λήμματος'] = lc['παράμετροι λήμματος'][2] or ''
    lc['έτυμο'] = lc['παράμετροι λήμματος'][3] or ''
    lc['εμφάνιση'] = lc['παράμετροι λήμματος'][4] or ''
    lc['κείμενο'] = '([[σημασιολογικό δάνειο]]) ' or ''
    -- notext
    lc['όχικείμενο'] = lc ['παράμετροι λήμματος']['notext'] or ''
    if lc['όχικείμενο'] ~= '' then lc['κείμενο'] = '' else lc['κείμενο'] = '([[σημασιολογικό δάνειο]]) ' end
    -- text
    lc['μεγάλοκείμενο'] = lc ['παράμετροι λήμματος']['text'] or ''
    if lc['μεγάλοκείμενο'] ~= '' then lc['κείμενο'] = '[[σημασιολογικό δάνειο]] από την ' else lc['κείμενο'] = lc['κείμενο'] end    

    -- param#1 και param#2 συνδυασμοί
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] == '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Σημασιολογικά δάνεια, πρέπει να εισάγετε τους κωδικούς iso των γλωσσών (1η και 2η παράμετρος)')
    	end
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Σημασιολογικά δάνεια, πρέπει να εισάγετε και τον κωδικό iso της γλώσσας-δότριας (1η παράμετρος)')
    	end
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] == '' then
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Σημασιολογικά δάνεια, πρέπει να εισάγετε ΚΑΙ τον κωδικό iso της γλώσσας-αποδέκτριας (2η παράμετρος)')
    		end    		
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['γλώσσα ετύμου apota'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['apota'] or ''
    	lc['γλώσσα λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['name'] or ''
    	lc['λέξεις γλώσσας λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['words'] or ''
    	lc['προέλευσης γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['from'] or ''
    	-- nocat
    	lc['όχικατηγορία'] = lc ['παράμετροι λήμματος']['nocat'] or ''
        if lc['όχικατηγορία'] ~= '' then
            lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
            	else
    		lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' ' ..
    		'[[Κατηγορία:Σημασιολογικά δάνεια  ' .. lc['γλώσσα ετύμου apota'] .. ' (' ..lc['γλώσσα λήμματος'] .. ')]]'
    		-- 2019.03.10 Φεύγει: .. '[[Κατηγορία:' .. lc['λέξεις γλώσσας λήμματος'] .. ' ' .. lc['προέλευσης γλώσσας ετύμου'] .. ']]'    	
    		end
    	end
		
        if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] ~= '' then
            lc['ενότητα γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['link'] or ''
            if lc['εμφάνιση'] ~= '' then
            	lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['εμφάνιση'] .. ']]'
            		else
                lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['έτυμο'] .. ']]'
                end
            else
            	if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] == '' then
            		if lc['εμφάνιση'] ~= '' then
            			lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['εμφάνιση'] .. ']]'
            			else
            			lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['έτυμο'] .. ']]'
            			end
            		end
            end
    return lc['κείμενο']
end



-- ορθογραφικό δάνειο [[Πρότυπο:ορθδ]] Δημιουργεί Κατηγορία:Ορθογραφικά δάνεια από (π.χ. [[ζέβρα]])
Lf['ορθογραφικό δάνειο'] = function(lc)
    lc['iso γλώσσας ετύμου'] = lc['παράμετροι λήμματος'][1] or ''
    lc['iso γλώσσας λήμματος'] = lc['παράμετροι λήμματος'][2] or ''
    lc['έτυμο'] = lc['παράμετροι λήμματος'][3] or ''
    lc['εμφάνιση'] = lc['παράμετροι λήμματος'][4] or ''
    lc['κείμενο'] = '([[ορθογραφικό δάνειο]]) ' or ''
    -- notext
    lc['όχικείμενο'] = lc ['παράμετροι λήμματος']['notext'] or ''
    if lc['όχικείμενο'] ~= '' then lc['κείμενο'] = '' else lc['κείμενο'] = '([[ορθογραφικό δάνειο]]) ' end
    -- text
    lc['μεγάλοκείμενο'] = lc ['παράμετροι λήμματος']['text'] or ''
    if lc['μεγάλοκείμενο'] ~= '' then lc['κείμενο'] = '[[ορθογραφικό δάνειο]] από την ' else lc['κείμενο'] = lc['κείμενο'] end    

    -- param#1 και param#2 συνδυασμοί
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] == '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Ορθογραφικά δάνεια, πρέπει να εισάγετε τους κωδικούς iso των γλωσσών (1η και 2η παράμετρος)')
    	end
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Ορθογραφικά δάνεια, πρέπει να εισάγετε και τον κωδικό iso της γλώσσας-δότριας (1η παράμετρος)')
    	end
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] == '' then
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Ορθογραφικά δάνεια, πρέπει να εισάγετε ΚΑΙ τον κωδικό iso της γλώσσας-αποδέκτριας (2η παράμετρος)')
    		end    		
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['γλώσσα ετύμου apota'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['apota'] or ''
    	lc['γλώσσα λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['name'] or ''
    	lc['λέξεις γλώσσας λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['words'] or ''
    	lc['προέλευσης γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['from'] or ''
    	-- nocat
    	lc['όχικατηγορία'] = lc ['παράμετροι λήμματος']['nocat'] or ''
        if lc['όχικατηγορία'] ~= '' then
            lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
            	else
    		lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' ' ..
    		'[[Κατηγορία:Ορθογραφικά δάνεια  ' .. lc['γλώσσα ετύμου apota'] .. ' (' ..lc['γλώσσα λήμματος'] .. ')]]' ..
    		'[[Κατηγορία:' .. lc['λέξεις γλώσσας λήμματος'] .. ' ' .. lc['προέλευσης γλώσσας ετύμου'] .. ']]'    	
    		end
    	end
		
        if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] ~= '' then
        lc['ενότητα γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['link'] or ''
            if lc['εμφάνιση'] ~= '' then
            	lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['εμφάνιση'] .. ']]'
            		else
                lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['έτυμο'] .. ']]'
                end
            else
            	if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] == '' then
            		if lc['εμφάνιση'] ~= '' then
            			lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['εμφάνιση'] .. ']]'
            			else
            			lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['έτυμο'] .. ']]'
            			end
            		end
            end
    return lc['κείμενο']
end



-- κληρονομιά [[Πρότυπο:κλη]]. Δεν δίνει κείμενο. Δημιουργεί Κατηγορία:ΧΧ...ές λέξεις κληρονομημένες από την.. και ταυτόχρονα, Κατηγορία:ΧΧ...ές λέξεις ...ής προέλευσης
Lf['κληρονομιά'] = function(lc)
    lc['iso γλώσσας ετύμου'] = lc['παράμετροι λήμματος'][1] or ''
    lc['iso γλώσσας λήμματος'] = lc['παράμετροι λήμματος'][2] or ''
    lc['έτυμο'] = lc['παράμετροι λήμματος'][3] or ''
    lc['εμφάνιση'] = lc['παράμετροι λήμματος'][4] or ''
    lc['κείμενο'] = '' or '' -- το default κείμενο είναι άδειο
    -- text αν θέλουμε κείμενο
    lc['μεγάλοκείμενο'] = lc ['παράμετροι λήμματος']['text'] or ''
    if lc['μεγάλοκείμενο'] ~= '' then lc['κείμενο'] = 'κληρονομημένη από την ' else lc['κείμενο'] = lc['κείμενο'] end    

    -- param#1 και param#2 συνδυασμοί
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] == '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Κληρονομημένες λέξεις, πρέπει να εισάγετε τους κωδικούς iso των γλωσσών (1η και 2η παράμετρος)')
    	end
    if lc['iso γλώσσας ετύμου'] == '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    	lc['κείμενο'] =  lc['κείμενο']
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Κληρονομημένες λέξεις, πρέπει να εισάγετε και τον κωδικό iso της γλώσσας-δότριας (1η παράμετρος)')
    	end
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] == '' then
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
    	mw.addWarning('Αν θέλετε να μπει το λήμμα σε Κατηγορία:Κληρονομημένες λέξεις, πρέπει να εισάγετε ΚΑΙ τον κωδικό iso της γλώσσας-αποδέκτριας (2η παράμετρος)')
    		end    		
    if lc['iso γλώσσας ετύμου'] ~= '' and  lc['iso γλώσσας λήμματος'] ~= '' then
    	lc['γλώσσα ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['name'] or ''
    	lc['γλώσσα ετύμου frm'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['frm'] or ''
    	lc['γλώσσα ετύμου apota'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['apota'] or ''
    	lc['γλώσσα λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['name'] or ''
    	lc['λέξεις γλώσσας λήμματος'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']]['words'] or ''
    	lc['προέλευσης γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['from'] or ''
    	-- nocat
    	lc['όχικατηγορία'] = lc ['παράμετροι λήμματος']['nocat'] or ''
        if lc['όχικατηγορία'] ~= '' then
            lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' '
            	else
    		lc['κείμενο'] =  lc['κείμενο'] .. "''[[" .. lc['γλώσσα ετύμου'] .. '|' .. lc['γλώσσα ετύμου frm'] .. "]]''" .. ' ' ..
    		'[[Κατηγορία:Κληρονομημένες λέξεις  ' .. lc['γλώσσα ετύμου apota'] .. ' (' ..lc['γλώσσα λήμματος'] .. ')]]' ..
    		'[[Κατηγορία:' .. lc['λέξεις γλώσσας λήμματος'] .. ' ' .. lc['προέλευσης γλώσσας ετύμου'] .. ']]'    	
    		end
    	end
		
        if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] ~= '' then
        lc['ενότητα γλώσσας ετύμου'] = Ld['γλώσσες'][lc['iso γλώσσας ετύμου']]['link'] or ''
            if lc['εμφάνιση'] ~= '' then
            	lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['εμφάνιση'] .. ']]'
            		else
                lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. "#" .. lc['ενότητα γλώσσας ετύμου'] .. '|' .. lc['έτυμο'] .. ']]'
                end
            else
            	if lc['έτυμο'] ~= '' and lc['iso γλώσσας ετύμου'] == '' then
            		if lc['εμφάνιση'] ~= '' then
            			lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['εμφάνιση'] .. ']]'
            			else
            			lc['κείμενο'] =  lc['κείμενο'] .. ' ' .. '[[' .. lc['έτυμο'] .. '|' .. lc['έτυμο'] .. ']]'
            			end
            		end
            end

    return lc['κείμενο']
end

--Γ. ΕΠΙΠΛΕΟΝ ΛΕΙΤΟΥΡΓΙΕΣ από τα δοκιμαστικά του Xoristzatziki


-- Υποκοριστικό. 2019.04.11. Όπως ήταν από τον Xoristzatziki, αλλά με έκφραση: + υποκοριστικό επίθημα
-- - - - - - - . 2019.05.03. και παράμετρος για εμφάνιση λέξης
Lf['υποκοριστικό'] = function(lc)
    local TOYAPOTO = "''του''"
    lc['κείμενο'] = "''[[υποκοριστικό]]'' " .. TOYAPOTO .. " " or ''
    if lc['παράμετροι λήμματος'][1] == nil or lc['παράμετροι λήμματος'][1] == '' then return lc['κείμενο']  end
    lc['λέξη παραπομπής'] = lc['παράμετροι λήμματος'][1]
    lc['υποκοριστικό επίθημα'] = lc['παράμετροι λήμματος'][2] or ''
    lc['iso γλώσσας'] = lc['παράμετροι λήμματος'][3] or ''
    lc['εμφάνιση λέξης'] = lc['παράμετροι λήμματος'][4] or ''
    if lc['iso γλώσσας'] == '' then lc['iso γλώσσας'] = 'el' end

    --if lc['παράμετροι λήμματος']['γλ'] == nil or lc['παράμετροι λήμματος']['γλ'] == '' then lc['iso γλώσσας'] = 'el' else lc['iso γλώσσας'] = lc['παράμετροι λήμματος']['γλ'] end
    lc['ενότητα γλώσσας'] = Ld['γλώσσες'][lc['iso γλώσσας']]['link'] or ''
    --ευχής έργο θα ήταν να μπορούσαμε εδώ να κάνουμε έλεγχο αν είναι στη σωστή ενότητα γλώσσας. Μπορεί όμως να γίνει από μποτ.
    lc['γλώσσα για κατηγορία'] = Ld['γλώσσες'][lc['iso γλώσσας']]['name'] or ''

    lc['εμφάνιση λέξης'] = lc['παράμετροι λήμματος'][4] or ''
    if lc['εμφάνιση λέξης'] ~= '' then
    lc['κείμενο'] = lc['κείμενο'] .. "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['εμφάνιση λέξης'] .. "]]"
    else
    lc['κείμενο'] = lc['κείμενο'] .. "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['λέξη παραπομπής'] .. "]]"
    end

    if lc['υποκοριστικό επίθημα'] ~= '' and lc['γλώσσα για κατηγορία']  ~= '' then
    -- nocat
    lc['όχικατηγορία'] = lc ['παράμετροι λήμματος']['0'] or ''
    	if lc['όχικατηγορία'] ~= '' then
    		lc['εμφάνιση λέξης'] = lc['παράμετροι λήμματος'][4] or ''
    		if lc['εμφάνιση λέξης'] ~= '' then
        lc['κείμενο'] = "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['εμφάνιση λέξης'] .. "]]" .. " + ''[[υποκοριστικό]] [[επίθημα]]'' " ..
        "[[-" .. lc['υποκοριστικό επίθημα'].. "#" .. lc['ενότητα γλώσσας'] .. "|-" .. lc['υποκοριστικό επίθημα'] .. "]]"
        	else
        lc['κείμενο'] = "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['λέξη παραπομπής'] .. "]]" .. " + ''[[υποκοριστικό]] [[επίθημα]]'' " ..
        "[[-" .. lc['υποκοριστικό επίθημα'].. "#" .. lc['ενότητα γλώσσας'] .. "|-" .. lc['υποκοριστικό επίθημα'] .. "]]"
        	end
    	else -- Κατηγορία ναι, Category yes
    		lc['εμφάνιση λέξης'] = lc['παράμετροι λήμματος'][4] or ''
    		if lc['εμφάνιση λέξης'] ~= '' then
        lc['κείμενο'] = "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['εμφάνιση λέξης'] .. "]]" .. " + ''[[υποκοριστικό]] [[επίθημα]]'' " ..
        "[[-" .. lc['υποκοριστικό επίθημα'].. "#" .. lc['ενότητα γλώσσας'] .. "|-" .. lc['υποκοριστικό επίθημα'] .. "]]" ..
        "[[Κατηγορία:Υποκοριστικά σε -" .. lc['υποκοριστικό επίθημα'] 
        	if lc['iso γλώσσας'] == 'el' then
        	lc['κείμενο'] = lc['κείμενο'] .. ' (νέα ελληνικά)]]'
    			else
        	lc['κείμενο'] = lc['κείμενο'] .. ' (' .. lc['γλώσσα για κατηγορία'] ..')]]'	
			end -- clase if iso=el
		else
        lc['κείμενο'] = "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['λέξη παραπομπής'] .. "]]" .. " + ''[[υποκοριστικό]] [[επίθημα]]'' " ..
        "[[-" .. lc['υποκοριστικό επίθημα'].. "#" .. lc['ενότητα γλώσσας'] .. "|-" .. lc['υποκοριστικό επίθημα'] .. "]]" ..
        "[[Κατηγορία:Υποκοριστικά σε -" .. lc['υποκοριστικό επίθημα'] 
        	if lc['iso γλώσσας'] == 'el' then
        	lc['κείμενο'] = lc['κείμενο'] .. ' (νέα ελληνικά)]]'
    			else
        	lc['κείμενο'] = lc['κείμενο'] .. ' (' .. lc['γλώσσα για κατηγορία'] ..')]]'	
			end -- clase if iso=el
		end
		end -- close if nocat
    end -- close if υποκοριστικό επίθημα
    return lc['κείμενο']
end



-- Μεγεθυντικό. 2019.05.03. κατά το 'Υποκοριστικό'
Lf['μεγεθυντικό'] = function(lc)
    local TOYAPOTO = "''του''"
    lc['κείμενο'] = "''[[μεγεθυντικό]]'' " .. TOYAPOTO .. " " or ''
    if lc['παράμετροι λήμματος'][1] == nil or lc['παράμετροι λήμματος'][1] == '' then return lc['κείμενο']  end
    lc['λέξη παραπομπής'] = lc['παράμετροι λήμματος'][1]
    lc['μεγεθυντικό επίθημα'] = lc['παράμετροι λήμματος'][2] or ''
    lc['iso γλώσσας'] = lc['παράμετροι λήμματος'][3] or ''
    lc['εμφάνιση λέξης'] = lc['παράμετροι λήμματος'][4] or ''
    if lc['iso γλώσσας'] == '' then lc['iso γλώσσας'] = 'el' end
    
    lc['ενότητα γλώσσας'] = Ld['γλώσσες'][lc['iso γλώσσας']]['link'] or ''
    lc['γλώσσα για κατηγορία'] = Ld['γλώσσες'][lc['iso γλώσσας']]['name'] or ''

    lc['εμφάνιση λέξης'] = lc['παράμετροι λήμματος'][4] or ''
    if lc['εμφάνιση λέξης'] ~= '' then
    lc['κείμενο'] = lc['κείμενο'] .. "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['εμφάνιση λέξης'] .. "]]"
    else
    lc['κείμενο'] = lc['κείμενο'] .. "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['λέξη παραπομπής'] .. "]]"
    end

    if lc['μεγεθυντικό επίθημα'] ~= '' and lc['γλώσσα για κατηγορία']  ~= '' then
    -- nocat
    lc['όχικατηγορία'] = lc ['παράμετροι λήμματος']['0'] or ''
    	if lc['όχικατηγορία'] ~= '' then
    		lc['εμφάνιση λέξης'] = lc['παράμετροι λήμματος'][4] or ''
    		if lc['εμφάνιση λέξης'] ~= '' then
        lc['κείμενο'] = "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['εμφάνιση λέξης'] .. "]]" .. " + ''[[μεγεθυντικό]] [[επίθημα]]'' " ..
        "[[-" .. lc['μεγεθυντικό επίθημα'].. "#" .. lc['ενότητα γλώσσας'] .. "|-" .. lc['μεγεθυντικό επίθημα'] .. "]]"
        	else
        lc['κείμενο'] = "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['λέξη παραπομπής'] .. "]]" .. " + ''[[μεγεθυντικό]] [[επίθημα]]'' " ..
        "[[-" .. lc['μεγεθυντικό επίθημα'].. "#" .. lc['ενότητα γλώσσας'] .. "|-" .. lc['μεγεθυντικό επίθημα'] .. "]]"
        	end
    	else -- Κατηγορία ναι, Category yes
    		lc['εμφάνιση λέξης'] = lc['παράμετροι λήμματος'][4] or ''
    		if lc['εμφάνιση λέξης'] ~= '' then
        lc['κείμενο'] = "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['εμφάνιση λέξης'] .. "]]" .. " + ''[[μεγεθυντικό]] [[επίθημα]]'' " ..
        "[[-" .. lc['μεγεθυντικό επίθημα'].. "#" .. lc['ενότητα γλώσσας'] .. "|-" .. lc['μεγεθυντικό επίθημα'] .. "]]" ..
        "[[Κατηγορία:Μεγεθυντικά σε -" .. lc['μεγεθυντικό επίθημα'] 
        	if lc['iso γλώσσας'] == 'el' then
        	lc['κείμενο'] = lc['κείμενο'] .. ' (νέα ελληνικά)]]'
    			else
        	lc['κείμενο'] = lc['κείμενο'] .. ' (' .. lc['γλώσσα για κατηγορία'] ..')]]'	
			end -- clase if iso=el
		else
        lc['κείμενο'] = "[[" .. lc['λέξη παραπομπής'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" .. lc['λέξη παραπομπής'] .. "]]" .. " + ''[[μεγεθυντικό]] [[επίθημα]]'' " ..
        "[[-" .. lc['μεγεθυντικό επίθημα'].. "#" .. lc['ενότητα γλώσσας'] .. "|-" .. lc['μεγεθυντικό επίθημα'] .. "]]" ..
        "[[Κατηγορία:Μεγεθυντικά σε -" .. lc['μεγεθυντικό επίθημα'] 
        	if lc['iso γλώσσας'] == 'el' then
        	lc['κείμενο'] = lc['κείμενο'] .. ' (νέα ελληνικά)]]'
    			else
        	lc['κείμενο'] = lc['κείμενο'] .. ' (' .. lc['γλώσσα για κατηγορία'] ..')]]'	
			end -- clase if iso=el
		end
		end -- close if nocat
    end -- close if μεγεθυντικό επίθημα
    return lc['κείμενο']
end


--Δ. ΔΟΚΙΜΑΣΤΙΚΑ

--ΔΟΚΙΜΑΣΤΙΚΑ ΓΙΑ ΑΡΧΙΚΟ ΕΛΕΓΧΟ. ΝΑ ΑΦΑΙΡΕΘΟΥΝ. ----------------------------------------------
Lf['τεσταρχ'] = function(lc)
    return Lf['αρχαία'](lc)
end
Lf['τεστυποκ'] = function(lc)
    return Lf['αρχαία'](lc)
end
--ΤΕΛΟΣ ΤΟΥ ΝΑ ΑΦΑΙΡΕΘΟΥΝ. --------------------------------------------------------------------

--ΚΥΡΙΕΣ ΣΥΝΑΡΤΗΣΕΙΣ ΓΙΑ ΤΗΝ ΕΤΥΜΟΛΟΓΗΣΗ
--ΚΛΑΣΙΚΑ ΠΡΟΤΥΠΑ
Lf['αρχαία'] = function(lc)
    lc['κείμενο'] = "[[w:Αρχαία ελληνική γλώσσα|''αρχαία ελληνική'']] "
    return Lf['αρχαία τελικό'](lc)
end

Lf['ελληνιστική'] = function(lc)
    lc['κείμενο'] = "[[w:Ελληνική γλώσσα#Ελληνιστική κοινή|''ελληνιστική κοινή'']] "
    return Lf['αρχαία τελικό'](lc)
end

Lf['επίθημα'] = function(lc)
	lc['λέξη'] = lc['παράμετροι λήμματος'][1] or ''
	lc['επίθημα'] = lc['παράμετροι λήμματος'][2] or ''
	lc['iso γλώσσας'] = lc['παράμετροι λήμματος'][3] or ''
	lc['εμφάνιση'] = lc['παράμετροι λήμματος'][4] or ''
	--αν δεν υπάρχει iso γλώσσας τότε υποθέτουμε (κακώς;) ελληνικά
	if lc['iso γλώσσας'] == ''  then lc['iso γλώσσας'] = 'el' end
	lc['κείμενο'] = Lf['σφάλμα']('Δόθηκαν λάθος παράμετροι.')
		
	if (lc['iso γλώσσας'] ~= '') and  (Ld['γλώσσες'][lc['iso γλώσσας']] ~= nil)  then
		lc['ενότητα γλώσσας'] = Ld['γλώσσες'][lc['iso γλώσσας']]['link']
		if lc['εμφάνιση'] == '' then lc['εμφάνιση'] = lc['λέξη'] end
		if lc['λέξη'] ~= '' then
			--if lc['iso γλώσσας'] == 'el' then
				--lc['κείμενο'] = "[[" ..  lc['εμφάνιση'] .. "]]"
			--else
				lc['κείμενο'] = "[[" .. lc['λέξη'] .. "#" .. lc['ενότητα γλώσσας'] .. "|" ..  lc['εμφάνιση'] .. "]]"
			--end
			if lc['επίθημα'] ~= '' then
				--lc['παραπομπή επιθήματος'] = "[[-" .. lc['επίθημα']
				--if lc['iso γλώσσας'] == 'el' then 
					--lc['παραπομπή επιθήματος'] = lc['παραπομπή επιθήματος'] .. "]]"
				--else
					lc['παραπομπή επιθήματος'] = "[[-" .. lc['επίθημα'] .. '#' .. lc['ενότητα γλώσσας'] ..  "|-" .. lc['επίθημα'] .. "]]"
				--end
				lc['κείμενο'] = lc['κείμενο'] .. " + επίθημα " .. lc['παραπομπή επιθήματος']
				if mw.ustring.sub(lc['τίτλος λήμματος'],-mw.ustring.len(lc['επίθημα'])) == lc['επίθημα'] then
					lc['κείμενο'] = lc['κείμενο'] .. "[[Κατηγορία:" .. Ld['γλώσσες'][lc['iso γλώσσας']]['words'] .. " με επίθημα: -" .. lc['επίθημα'] .. "]]"
					--Αν χρειαστεί να αφαιρέσουμε το "Ελληνικές λέξεις"
					--if lc['iso γλώσσας'] == 'el' then
						--lc['κείμενο'] = lc['κείμενο'] .. "]]"
					--else
						--lc['κείμενο'] = lc['κείμενο'] .. " (" .. Ld['γλώσσες'][lc['iso γλώσσας']]['name'] .. ")]]"
					--end
				else
					mw.addWarning('Η ετυμολόγηση του επιθήματος δεν αναφέρεται στο λήμμα!')
				end 
			else
				mw.addWarning('Δεν δώσατε τιμή στη δεύτερη παράμετρο (επίθημα).')
			end
		else
			mw.addWarning('Δεν δώσατε τιμή στην πρώτη παράμετρο.')
		end	
	else
		mw.addWarning('Δώσατε λάθος τιμή στην παράμετρο iso γλώσσας της ετυμολογούμενης λέξης.')
	end
    return lc['κείμενο']
end

Lf['αρχαία τελικό'] = function(lc)
    --για παραμέτρους που θα δείχνουν άλλη λέξη από τη λέξη παραπομπής
    --και για παραμέτρους που θα περιέχουν τη γλώσσα του ετυμολογούμενου λήμματος
    --καλύτερα να μπουν ονομαστικά
    --π.χ. γλ και λ:
    --γλ=la (ή it ή de κλπ.)
    --λ=λέξησεάλληπτώση
    if lc['παράμετροι λήμματος'][1] == nil then return lc['κείμενο'] end
    if lc['παράμετροι λήμματος'][1] == '' then
        lc['παραπομπή στο λήμμα'] = lc['τίτλος λήμματος']
    else
        lc['παραπομπή στο λήμμα'] = lc['παράμετροι λήμματος'][1]
    end
    lc['κείμενο'] = lc['κείμενο'] .. "[[" .. lc['παραπομπή στο λήμμα'] .. "#" .. Ld['γλώσσες']['grc']['link'] .. "|" .. lc['παραπομπή στο λήμμα'] .. "]]"
    return lc['κείμενο']
end

Lf['μεσαιωνική'] = function(lc)
    lc['κείμενο'] = "[[w:Ελληνική γλώσσα#Μεσαιωνική Ελληνική|''μεσαιωνική ελληνική'']]"
    if lc['παράμετροι λήμματος'][1] == nil then return lc['κείμενο'] end
    if lc['παράμετροι λήμματος'][1] == '' then
        lc['παραπομπή στο λήμμα'] = lc['τίτλος λήμματος']
    else
        lc['παραπομπή στο λήμμα'] = lc['παράμετροι λήμματος'][1]
    end
    lc['κείμενο'] = lc['κείμενο'] .. " [[" .. lc['παραπομπή στο λήμμα'] .. "#" .. Ld['γλώσσες']['gkm']['link'] .. "|" .. lc['παραπομπή στο λήμμα'] .. "]]"
    return lc['κείμενο']
end

Lf['ινδοευρωπαϊκή ρίζα'] = function(lc)
    --αν επεκτεθεί ώστε να προστεθούν διαφορετικές σελίδες σε διαφορετικές οικογένειες
    --θα πρέπει να προστεθούν ονομαστικές ή ανώνυμοι παράμετροι και να αλλαχθεί κάπως ο κώδικας εδώ
    lc['κείμενο'] = "[[w:Ινδοευρωπαϊκές γλώσσες|''ινδοευρωπαϊκή (ρίζα)'']] "
    lc['παραπομπή στο παράρτημα'] = lc['παράμετροι λήμματος'][1] or ''
    if lc['παραπομπή στο παράρτημα'] == '' then return lc['κείμενο'] end
    lc['κείμενο'] = lc['κείμενο'] .. "[[Παράρτημα:Αμάρτυρες λέξεις/ιε/*" .. lc['παραπομπή στο παράρτημα'] .. "|*" .. lc['παραπομπή στο παράρτημα'] .. "]]"
    return lc['κείμενο']
end

--ΥΠΟΠΕΡΙΠΤΩΣΕΙΣ
-- 2019.04.11. πήραμε από εδώ, το Υποκοριστικό



export['δάνεια'] = function(frame)
    lc = {}
    lc['σφάλμα:άδειο'] = "[[Κατηγορία:Eπιτήρηση:Πρότυπο:δάνεια χωρίς παραμέτρους]]"
    lc['σφάλμα:iso'] = "[[Κατηγορία:Eπιτήρηση:Πρότυπο:δάνεια με λάθος σε γλώσσα]]"
    --lc['σφάλμα:χωρις 1'] = "[[Κατηγορία:Eπιτήρηση:Πρότυπο:δάνεια χωρίς πρώτη παράμετρο]]"
    lc['παράμετροι λήμματος'] = frame:getParent().args
    lc['τίτλος λήμματος'] = mw.title.getCurrentTitle().text
    
    lc['iso γλώσσας δανείου'] = lc['παράμετροι λήμματος'][1] or ''
    --lc['iso γλώσσας παραπομπής'] = lc['παράμετροι λήμματος'][2] or ''

    lc['παραπομπή γλώσσας δανείου'], lc['σφάλμα 1']  = export['εμφάνιση γλώσσας 1'](lc['iso γλώσσας δανείου'])
    if lc['παραπομπή γλώσσας δανείου'] == '' then
    
        return lc['σφάλμα:άδειο'] .. lc['σφάλμα:iso'] 
    end

    --έχουμε να στείλουμε κάποια γλώσσα, συνεχίζουμε.
    
    lc['κατηγορία γλώσσας δανείου'] = Ld['γλώσσες'][lc['iso γλώσσας δανείου']].cat or ''

    --η γλώσσα είναι έτοιμη να σταλεί: lc['παραπομπή γλώσσας δανείου']
    --δημιουργία κατηγορίας
    --δημιουργία λεκτικού «από»
    lc['από'] = Ld['γλώσσες'][lc['iso γλώσσας δανείου']].apo or ''
    if lc['από'] == '' then
        lc['για τα'] = Ld['γλώσσες'][lc['iso γλώσσας δανείου']].name or ''
        if lc['για τα'] ~= '' then
            lc['από'] = 'τα ' .. lc['για τα']
        end
    end
    
    if lc['παράμετροι λήμματος'][2] == nil then
    	--δεν έχει δεύτερη παράμετρο, δεν γνωρίζουμε τη γλώσσα αναφοράς στο λήμμα
        return lc['παραπομπή γλώσσας δανείου'] 
    else
        --έχει δεύτερη παράμετρο
        lc['iso γλώσσας λήμματος'] = lc['παράμετροι λήμματος'][2] or ''
        if lc['iso γλώσσας λήμματος'] == '' then
            --θεωρούμε ότι αφορά Δάνεια της ελληνικής γλώσσας
            lc['iso γλώσσας λήμματος'] = 'el'
            lc['κατηγορία'] = '[[Κατηγορία:Δάνεια από ' .. lc['από'] .. ']]'
        else
            --υπάρχει iso για τη γλώσσα του λήμματος
            lc['γλώσσα κατηγορίας'] = Ld['γλώσσες'][lc['iso γλώσσας λήμματος']].name or ''
            if lc['γλώσσα κατηγορίας']~= '' then
                --αν έχει name το βάζουμε
                lc['κατηγορία'] = '[[Κατηγορία:Δάνεια από ' .. lc['από'] .. " (" .. lc['γλώσσα κατηγορίας'] .. ")" .. ']]'
            else
                --αλλιώς δεν δημιουργούμε κατηγορία
                lc['κατηγορία'] = ''
            end
        end
    end
    --έλεγχος αν έχουμε λήμμα για παραπομπή
    local args2 = {}
    args2['λήμμα']  = lc['παράμετροι λήμματος'][3]
    --args2['λήμμα'] = 'for'
    args2['iso'] = lc['iso γλώσσας δανείου']
    args2['προεπιλεγμένο iso'] = 'el'
    lc['παραπομπή'] , lc['σφάλμα 2'] = export['παραπομπή'](args2)

    if lc['παραπομπή'] == '' then
        --δεν υπάρχει, επίστρεψε μόνο τη γλώσσα και την κατηγορία
        return lc['παραπομπή γλώσσας δανείου'] .. lc['κατηγορία']
    end
    return lc['παραπομπή γλώσσας δανείου'] .. ' ' .. lc['παραπομπή'] .. lc['κατηγορία']
end

-- Ε. Functions για έλεγχο κωδικών

--[=[Τι μπορούμε να κάνουμε;
:Να ελέγχουμε αν υπάρχει το λήμμα και η ενότητα γλώσσας 
:ώστε να στείλουμε ένα "ροζ" (ή άλλο χρώμα) σε περίπτωση που υπάρχει μεν λήμμα αλλά όχι η ενότητα γλώσσας]=]
export['παραπομπή'] = function(args)
    --δεν ελέγχουμε τον ονοματοχώρο
    --δέχεται προεπιλογή π.χ. για κενή παράμετρο
    --επιστρέφει 2 αλφαριθμητικά
    --1. την παραπομπή
    --2. κενό ή σφάλμα
    local lc = {}
    lc['λήμμα'] = args['λήμμα'] or ''
    lc['iso'] = args['iso'] or ''
    lc['προεπιλεγμένο iso'] = args['προεπιλεγμένο iso'] or ''

    if lc['λήμμα'] == '' then
        return '','λήμμα'
    end
    if lc['iso'] == '' then
        if lc['προεπιλεγμένο iso'] ~= '' then
            lc['iso'] = lc['προεπιλεγμένο iso']
        else
            return '','iso'
        end
    end
    lc['iso γλώσσας'] = Ld['γλώσσες'][lc['iso']] or ''
    if lc['iso γλώσσας'] == '' then
        return '','iso'
    end
    lc['κείμενο'] = lc['λήμμα']
    lc['γλωσσική ενότητα'] = Ld['γλώσσες'][lc['iso']].link or ''
    if lc['γλωσσική ενότητα'] ~= '' then
        lc['κείμενο']  = lc['κείμενο'] .. '#' .. lc['γλωσσική ενότητα']  .. '|' .. lc['κείμενο']
    end
    return '[[' .. lc['κείμενο'] .. ']]'
end

export['εμφάνιση γλώσσας 1'] = function(aniso)
    --επιστρέφει 2 αλφαριθμητικά
    --1. την παραπομπή ή τη «σκέτη» γλώσσα
    --2. κενό ή σφάλμα
    local lc = {}
    lc['iso γλώσσας'] = aniso or ''
    if lc['iso γλώσσας'] == '' then
        --υποχρεωτική η πρώτη παράμετρος iso γλώσσας
        --mw.addWarning('Δεν υπάρχει η πρώτη παράμετρος (παράμετρος γλώσσας ετύμου).')
        return '', 'σφάλμα:χωρίς iso'
    end
    --έλεγχος εγκυρότητας γλώσσας ετύμου
    if Ld['γλώσσες'][lc['iso γλώσσας']] == nil then
        --δεν υπάρχει το iso
        mw.addWarning('Δεν υπάρχει στο Module:Languages.' .. lc['iso γλώσσας'])
        return '', 'σφάλμα:iso'
    else
        lc['γλώσσα'] = Ld['γλώσσες'][lc['iso γλώσσας']].frm or ''
        if lc['γλώσσα'] == '' then
            --δεν υπάρχει το frm ή είναι κενό
            mw.addWarning('Δεν υπάρχει frm στο Module:Languages.' .. lc['iso γλώσσας'])
            return '', 'σφάλμα:χωρίς frm'
        end
    end
    --έχουμε να στείλουμε κάποια γλώσσα, συνεχίζουμε.
    --lc['κείμενο γλώσσας δανείου'] = ''
    lc['παραπομπή γλώσσας'] = lc['γλώσσα']
    lc['κατηγορία'] = Ld['γλώσσες'][lc['iso γλώσσας']].cat or ''
    if lc['κατηγορία'] == '' then
        --δεν έχουμε cat
        --αφήνουμε την παραπομπή σε: frm
        mw.addWarning('χωρίς κατηγορία στο Languages:' .. lc['iso γλώσσας'])
    else
        --θα παραπέμψουμε στην κατηγορία της γλώσσας
        lc['παραπομπή γλώσσας'] = '[[:Κατηγορία:' .. lc['κατηγορία'] .. '|' .. lc['παραπομπή γλώσσας']  .. ']]'
    end
    --πλάγια γραφή
    return "''" .. lc['παραπομπή γλώσσας'] .. "''" , ''
end

return export