Modul:Teamim
Erscheinungsbild
SimpleStruct |
Zeichen |
Zeichenfolge |
Vorlagenprogrammierung | Diskussionen | Lua | Unterseiten | |||
Modul | Deutsch | English
|
Modul: | Dokumentation |
Diese Seite enthält Code in der Programmiersprache Lua. Einbindungszahl Cirrus
--[=[ Teamim 2022-07-03
Data Management Module for Access from Within Templates
providing infos for Teamim sequences using unicode for display
Author: Vollbracht
* disjunctList(elements) Wikidata information for sign sequences (table form)
(under construction)
* data() switch for Zeichen.data()/Zeichenfolge.data()
(planed)
* wordPos(sign/Num) sign linked to legend
* legend(sign/Num) legend line providing infos for wordPos
]=]
--Module globals
local p = {}
local _, Parser = pcall(require, "Modul:SimpleStruct")
local _, SequencesMod = pcall(require, "Modul:Zeichenfolge")
local Sequences = SequencesMod.service
local WORDPOS = {
{"wp1", "↑", "steht über dem Konsonanten der betonten Silbe"},
{"wp2", "↓", "steht unter dem Konsonanten der betonten Silbe"},
{"wp3", "[↑]", "steht über dem Konsonanten der betonten Silbe, wenn das Wort nicht beim endständigen Zeichen betont ist"},
{"wp4", "↱", "steht vor der Tonsilbe im gleichen oder vorangehenden Wort, kann auch fehlen"},
{"wp5", "↗", "steht oben am Wortanfang, also ''vor'' dem ersten Buchstaben"},
{"wp6", "↘", "steht unten am Wortanfang, also ''vor'' dem ersten Buchstaben"},
{"wp7", "↖", "steht oben am Wortende, also ''nach'' dem letzten Buchstaben"},
{"wp8", "←", "steht als getrenntes Schriftzeichen nach dem Wort"},
["↑"]=WORDPOS[1], ["↓"]=WORDPOS[2], ["[↑]"]=WORDPOS[3], ["↱"]=WORDPOS[4],
["↗"]=WORDPOS[5], ["↘"]=WORDPOS[6], ["↖"]=WORDPOS[7], ["←"]=WORDPOS[8]
}
--[[
p.wordPos(sign/Num)
]]
local wpError = function()
local result = 'Fehler: Bitte nur mit Wortposition gemäß folgender '
result = result .. 'Legende verwenden:<br />' .. p.legend() .. '<br />'
result = result .. '[[Kategorie:Wikipedia:Qualitätssicherung '
result = result .. 'Vorlageneinbindung fehlerhaft]]'
return framle:preprocess(result)
end
p.wordPos = function(frame)
if frame.arg[1] == nil then return wpError end
local set = WORDPOS[frame.arg[1]]
if set == nil then return wpError end
return framle:preprocess('[[#' .. set[1] .. '|' .. set[2] .. ']]')
end
--[[
p.legend(sign/Num)
]]
p.legend = function(frame)
if frame.arg[1] then
local set = WORDPOS[frame.arg[1]]
local result = '<span id="' .. set[1] .. '">' .. set[2]
result = result .. ' <span class="reference-text">' .. set[3]
return result .. '</span></span>'
else
local result = '<table>'
for _, set in ipairs(WORDPOS) do
result = result .. '<tr id="' .. set[1] .. '"><td>' .. set[2]
result = result .. '</td><td class="reference-text">' .. set[3]
result = result .. '</td></tr>'
end
return result .. '</table>'
end
end
--[[
p.disjunctList(frame)
parameters:
elements simple struct with each element in syntax:
{
qualifier{Q1234} rank{König} wordPos{↓ ←}
grammar{Mitte eines ...-Segments, wenn ...}
}
]]
p.disjunctList = function(frame)
end
return p