Zum Inhalt springen

Modul:Zeichen

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 14. Juni 2022 um 01:28 Uhr durch Vollbracht (Diskussion | Beiträge) (Wikidata service; bedingt abhängig von Unicode). Sie kann sich erheblich von der aktuellen Version unterscheiden.
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
verwendete Moduln:
SimpleStruct
SimpleDataAccess
Zeichenfolge
Vorlagenprogrammierung Diskussionen Lua Unterseiten
Modul Deutsch English

Modul: Dokumentation

Diese Seite enthält Code in der Programmiersprache Lua. Einbindungszahl Cirrus


--[=[ Zeichen 2022-06-12
Data Management Module for Access from Within Templates and Other Modules
providing infos for signs usually using unicode for display
Author: Vollbracht
* data() wikidata information for current sign in table form
]=]
	
--Module globals
local p = {service = {}}

p.service.data = function()
	local result = {}
	result.label = mw.wikibase.getLabel()
	result.description = mw.wikibase.getDescription()
	local character = mw.wikibase.getEntity()
	local unicodeQ = character["claims"]["P1299"][1]["mainsnak"]["datavalue"]["value"]["id"]
	local unicodeMS = mw.wikibase.getBestStatements(unicodeQ, "P5522")
	if unicodeMS[1] == nil then
		result.block = ""
	else
		result.block = mw.wikibase.getLabel(unicodeMS[1]["mainsnak"]["datavalue"]["value"]["id"])
	end
	unicodeMS = mw.wikibase.getBestStatements(unicodeQ, "P4213")
	if unicodeMS[1] == nil then
		result.code = ""
	else
		result.code = unicodeMS[1]["mainsnak"]["datavalue"]["value"]
	end
	return result
end

p.data = function(frame)
	local source = p.service.data()
	local result = '<table><tr><th colspan="2" style="' .. frame.args.thStyle
	result = result .. '">' .. source.label .. ':<br />' .. source.description
	result = result .. '</th></tr><tr><td style="vertical-align: middle;">Zeichen:</td>'
	result = result .. '<td style="font-size:250%;">&#x' .. source.code
	result = result .. '</td></tr><tr><td>Code:</td><td>0x' .. source.code
	result = result .. '</td></tr><tr><td>Codeblock:</td><td>'
	result = result .. frame:preprocess('[[' .. source.block .. ']]')
	result = result .. '</td></tr></table>'
	return result
end

return p