コンテンツにスキップ

このWebサイトは、管理人が個人的に書き留めている備忘録です。それ以上でもそれ以下でもありません。
誤記・誤解・誤謬を含め、記述内容の確度を一切保証しません。責任を負いません。問い合わせ等を受け付けません。
This Mediawiki is a personal memorandum written by Administrator, nothing more, nothing less.
Administrator do NOT guarantee accuracy of content, including any errors, misunderstandings, fallacies, take NO responsibility, do NOT accept inquiries anything of the sort.

モジュール:Vertical header

提供: Memorandum

このモジュールについての説明文ページを モジュール:Vertical header/doc に作成できます

local p = {}

function p.cell(frame)
	local text = frame.args.text
	local sortPadding = frame.args.sortPadding
	local vertAlign = frame.args.vertAlign
	local maxWidth = frame.args.maxWidth
	local noBold = frame.args.noBold
	local style = frame.args.style:gsub("\"", """)
	local cellStyle = frame.args.cellstyle:gsub("\"", """)
	local rotate= frame.args.rotate
	local wikiText = "class = \"nowrap"
	local normalAlign = ""
	-- local stupidIEAlign = ""
	local rows = 1
	local width = 0
	if maxWidth ~= "" then
		width = maxWidth
	else
		for eachMatch in text:gmatch("<[bB][rR] */? *>") do
			rows = rows + 1
		end
		width = rows * 0.875
		width = width .. "em"
	end
	if sortPadding == "" then
		wikiText = wikiText .. " unsortable"
	end
	wikiText = wikiText .. "\" style=\"line-height:99%;vertical-align:" .. vertAlign .. ";padding:"
	if sortPadding == "" then
		wikiText = wikiText .. ".4em"
	else
		wikiText = wikiText .. "21px"
	end
	wikiText = wikiText .. " .4em .2em;background-position:50% .4em !important;"
	wikiText = wikiText .. "min-width:" .. width .. ";max-width:" .. width .. ";width:" .. width .. ";overflow:hidden;" .. cellStyle .. "\""
	wikiText = wikiText .. " | <div style=\"" .. frame:preprocess("{{writing-mode|v1}}{{Transform-rotate|".. rotate .."}}") .. "-ms-transform: none \ ;padding-left:1px;text-align:"
	if vertAlign == "top" then
		normalAlign = "right"
		-- stupidIEAlign = "left"
	elseif vertAlign == "middle" then
		normalAlign = "center"
		-- stupidIEAlign = "center"
	else
		normalAlign = "left"
		-- stupidIEAlign = "right"
	end
	wikiText = wikiText .. normalAlign .. ";" -- text-align:" .. stupidIEAlign .. " \ ;"
	wikiText = wikiText .. style .. "\">"
	if noBold == "" then
		wikiText = wikiText .. text
	else
		wikiText = wikiText .. frame:preprocess("{{nobold|1=" .. text .. "}}")
	end
	wikiText = wikiText .. "</div>"
	return wikiText
end

return p