全科医学科是什么科| 宫腔内稍高回声是什么意思| 小饭桌是什么意思| 牙医靠什么吃饭| 后遗症是什么意思| 乳腺增生不能吃什么食物| 捻子泡酒有什么功效| 什么含维生素d| 胃功能三项检查是什么| 遍体鳞伤是什么意思| 股骨径是指胎儿什么| yp是什么| 乌龟喜欢吃什么食物| 衣原体感染有什么症状| 软组织肿胀是什么意思| 卵泡刺激素是什么意思| 传说中的狮身人面像叫什么名字| 痛风吃什么中药最有效| 兔肉和什么相克| 结婚的礼数都有什么| 阴虱是什么原因引起的| 月经过多是什么原因| 80是什么意思| 孕中期头疼是什么原因| 11月5号什么星座| 蜜蜂吃什么| 三国演义是什么朝代| 什么叫反式脂肪| ph值是什么| 奇经八脉指的是什么| 黄芪可以和什么一起泡水喝| 什么办法退烧快| pick是什么意思| 5月份什么星座| 百什么百什么| 痛风用什么消炎药最好| 为什么身上会痒| 乳糖不耐受可以喝什么奶| 两个gg是什么牌子的包包| 免疫球蛋白e高说明什么| 主胰管不扩张是什么意思| 喉咙痛吃什么药好得快| 梦见雪是什么意思| 银耳和什么一起煮最好| miniso是什么意思| 去台湾需要什么证件| 呆小症是缺乏什么激素| 电脑长期不关机有什么影响| 牡丹什么时候开放| 大暑是什么意思| 安宫牛黄丸什么时候吃最好| 牙疼吃什么食物能缓解| 浪荡闲游是什么生肖| 血糖高适合吃什么零食| 梦见自己流产了是什么征兆| 头发麻是什么原因| 焦虑症什么症状| 吃过期药有什么危害| 橙子皮泡水喝有什么好处| 没有胎心胎芽是什么原因造成的| 宝宝吃什么辅食最好| 子宫大是什么原因| 孕检都检查什么项目| 仙茅配什么壮阳效果好| 守灵什么意思| 睾丸积液是什么原因造成的| 有什么植物| 日有所思夜有所梦是什么意思| 毛主席什么时候死的| 脸油油的是什么原因| 撒丫子是什么意思| 物以类聚是什么意思| 来月经期间吃什么最好| 拔完智齿吃什么食物好| 维生素c什么时候吃| 梦见吃饭是什么意思| 怜惜是什么意思| 尿酸高吃什么药效果好| 喝什么酒对身体好| 农历五月初五是什么星座| 裸婚什么意思| 桔色搭配什么颜色好看| 全血检查能查些什么病| 五险都有什么| 喝酒前吃什么药| 想当演员考什么学校| 血燥是什么意思| 手机账号是什么| 为什么鞋子洗了还是臭| 焦虑症是什么症状| 什么是破窗效应| 限用日期是什么意思| 2008年什么年| 红花有什么功效| 藏红花是什么| 女性腹部彩超检查什么| 蓝脸的窦尔敦盗御马是什么歌| gsp全称是什么| 养尊处优是什么意思| nlp是什么| 浙江属于什么方向| 手脚抽筋吃什么药最好| 什么的爱| 菊花和金银花一起泡水有什么效果| 甲亢是一种什么病| 龙凤呈祥代表什么生肖| 牙齿酸胀是什么原因| 过年吃什么| 大黄泡水喝有什么功效| 美篇是什么| 红线女是什么意思| 缘是什么生肖| 脉弱是什么原因导致的| 什么是电信诈骗| 1990年什么命| 吃什么对胃最好| darling是什么意思| 1和0是什么意思| 虾子不能和什么一起吃| 体位是什么意思| 尿酸高饮食要注意什么| 万艾可是什么| 尖湿锐吃什么药最好| 歼灭是什么意思| 欺山莫欺水是什么意思| 腋窝淹了用什么药| 周围神经病是什么病| 宣府是现在的什么地方| 什么是股癣| 什么是火象星座| 莱赛尔是什么面料| mh是什么意思| 什么是价值| sls是什么化学成分| 日十组成什么字| 流鼻血吃什么好| 六块钱的麻辣烫是什么意思| 美尼尔综合症吃什么药| 一什么十什么的成语| 中国特工组织叫什么| 类风湿关节炎吃什么好| 两面派是什么意思| 宇舶手表什么档次| 藿香正气水能治什么病| 男人下面胀痛什么原因造成呢| 1989年是什么年| jdv是什么牌子| spi是什么| 提炼是什么意思| 什么是uv| 送女生什么礼物比较好| 内心os什么意思| 三八送什么花| 什么样的枫叶| b细胞是什么| 玉髓什么颜色最贵| 不以规矩下一句是什么| fic是什么意思| 博士的学位是什么| 肝不好吃什么好| ia是什么意思| 小猫的尾巴有什么作用| 什么是阴虚火旺| 眼角疼是什么原因| 米其林什么意思| 光纤和宽带有什么区别| 上火便秘吃什么最快排便| 手脚麻木挂什么科| 什么是低保户| b长什么样| guou是什么牌子的手表| 攀缘是什么意思| 梦见床代表什么预兆| 淋巴结吃什么药| 智是什么意思| ce是什么元素| 婊是什么意思| 夏天为什么要吃姜| 营养科都检查什么项目| 降甘油三酯吃什么食物最好| 白露是什么季节| 山梨酸钾是什么添加剂| 突然腰疼是什么原因| 妈妈的妹妹应该叫什么| 皮肤发红发烫是什么原因| 七月有什么节日| 瘖什么意思| 什么算高危性行为| 绍兴酒是什么酒| 水泡用什么药膏最有效| 鼠目寸光是什么意思| 副主任科员是什么级别| 什么是阴历什么是阳历| npv是什么| 肾b超能检查出什么| 宫外孕是什么| 尔尔是什么意思| 手淫对身体有什么伤害| 日行一善是什么意思| 西凤酒什么香型| 手足口什么症状| 豹子号是什么意思| 什么人不能喝桑黄| chihiro是什么意思| 阴茎越来越小是什么原因| 为什么牛肝便宜没人吃| 物以类聚人以群分什么意思| 抗心磷脂抗体是什么意思| 手指关节发黑是什么原因| 月经期吃什么水果好| 保姆代表什么生肖| 屁特别多是什么原因| 四维是检查什么| 捉代表什么生肖| 鼻炎会引起什么症状| 没有力气是什么原因| 阴虚吃什么食物| 梅雨季节是什么意思| 胃痛吃什么药最有效| 掌眼什么意思| 补钙最好的食物是什么| 双肺纤维条索是什么意思| cas号是什么意思| 横纹肌溶解症是什么原因造成的| 怀孕了想打掉吃什么药| 省委组织部长是什么级别| 肚子老是疼是什么原因| 牛黄是什么| 王炸是什么意思| 拔节是什么意思| 儿童胃肠型感冒吃什么药| 梦见自己光脚走路是什么意思| 东南大学什么专业最牛| 舌头发紫是什么原因| 尿里带血是什么原因| 补液盐是什么| 每个月月经都推迟是什么原因| 脸上长藓用什么药| 窦性心动过缓是什么意思| 神经梅毒有什么症状| 女人做梦哭醒预示什么| quake是什么意思| 农历六月十八是什么星座| 老年人喝什么蛋白粉好| 口是心非是什么生肖| cooh是什么基| 什么是复利| 正常的白带是什么样的| 寒湿重吃什么药| 右额头上有痣代表什么| 消化不良吃什么水果| 吃相难看是什么意思| 12月生日是什么星座| 自律什么意思| 黄昏是什么时辰| 羊和什么相冲| 请示是什么意思| 伽利略是什么学家| 紫癜是什么| 梅毒吃什么药最好| 乘风破浪的意思是什么| 92年出生属什么生肖| dx是什么药| adivon是什么牌子| 百度Jump to content

From Wikipedia
百度 那么,被动式建筑又是如何做到的?据了解,被动式太阳能建筑是利用太阳能提供的室内热能,不需要任何机械设备提供能源,仅仅依靠传导、对流和辐射的自然热传递。

Documentation for this module may be created at Module:Category handler/doc

--------------------------------------------------------------------------------
--                                                                            --
--                              CATEGORY HANDLER                              --
--                                                                            --
--      This module implements the {{category handler}} template in Lua,      --
--      with a few improvements: all namespaces and all namespace aliases     --
--      are supported, and namespace names are detected automatically for     --
--      the local wiki. This module requires [[Module:Namespace detect]]      --
--      and [[Module:Yesno]] to be available on the local wiki. It can be     --
--      configured for different wikis by altering the values in              --
--      [[Module:Category handler/config]], and pages can be blacklisted      --
--      from categorisation by using [[Module:Category handler/blacklist]].   --
--                                                                            --
--------------------------------------------------------------------------------

-- Load required modules
local yesno = require('Module:Yesno')

-- Lazily load things we don't always need
local mShared, mappings

local p = {}

--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------

local function trimWhitespace(s, removeBlanks)
	if type(s) ~= 'string' then
		return s
	end
	s = s:match('^%s*(.-)%s*$')
	if removeBlanks then
		if s ~= '' then
			return s
		else
			return nil
		end
	else
		return s
	end
end

--------------------------------------------------------------------------------
-- CategoryHandler class
--------------------------------------------------------------------------------

local CategoryHandler = {}
CategoryHandler.__index = CategoryHandler

function CategoryHandler.new(data, args)
	local obj = setmetatable({ _data = data, _args = args }, CategoryHandler)
	
	-- Set the title object
	do
		local pagename = obj:parameter('demopage')
		local success, titleObj
		if pagename then
			success, titleObj = pcall(mw.title.new, pagename)
		end
		if success and titleObj then
			obj.title = titleObj
			if titleObj == mw.title.getCurrentTitle() then
				obj._usesCurrentTitle = true
			end
		else
			obj.title = mw.title.getCurrentTitle()
			obj._usesCurrentTitle = true
		end
	end

	-- Set suppression parameter values
	for _, key in ipairs{'nocat', 'categories'} do
		local value = obj:parameter(key)
		value = trimWhitespace(value, true)
		obj['_' .. key] = yesno(value)
	end
	do
		local subpage = obj:parameter('subpage')
		local category2 = obj:parameter('category2')
		if type(subpage) == 'string' then
			subpage = mw.ustring.lower(subpage)
		end
		if type(category2) == 'string' then
			subpage = mw.ustring.lower(category2)
		end
		obj._subpage = trimWhitespace(subpage, true)
		obj._category2 = trimWhitespace(category2) -- don't remove blank values
	end
	return obj
end

function CategoryHandler:parameter(key)
	local parameterNames = self._data.parameters[key]
	local pntype = type(parameterNames)
	if pntype == 'string' or pntype == 'number' then
		return self._args[parameterNames]
	elseif pntype == 'table' then
		for _, name in ipairs(parameterNames) do
			local value = self._args[name]
			if value ~= nil then
				return value
			end
		end
		return nil
	else
		error(string.format(
			'invalid config key "%s"',
			tostring(key)
		), 2)
	end
end

function CategoryHandler:isSuppressedByArguments()
	return
		-- See if a category suppression argument has been set.
		self._nocat == true
		or self._categories == false
		or (
			self._category2
			and self._category2 ~= self._data.category2Yes
			and self._category2 ~= self._data.category2Negative
		)

		-- Check whether we are on a subpage, and see if categories are
		-- suppressed based on our subpage status.
		or self._subpage == self._data.subpageNo and self.title.isSubpage
		or self._subpage == self._data.subpageOnly and not self.title.isSubpage
end

function CategoryHandler:shouldSkipBlacklistCheck()
	-- Check whether the category suppression arguments indicate we
	-- should skip the blacklist check.
	return self._nocat == false
		or self._categories == true
		or self._category2 == self._data.category2Yes
end

function CategoryHandler:matchesBlacklist()
	if self._usesCurrentTitle then
		return self._data.currentTitleMatchesBlacklist
	else
		mShared = mShared or require('Module:Category handler/shared')
		return mShared.matchesBlacklist(
			self.title.prefixedText,
			mw.loadData('Module:Category handler/blacklist')
		)
	end
end

function CategoryHandler:isSuppressed()
	-- Find if categories are suppressed by either the arguments or by
	-- matching the blacklist.
	return self:isSuppressedByArguments()
		or not self:shouldSkipBlacklistCheck() and self:matchesBlacklist()
end

function CategoryHandler:getNamespaceParameters()
	if self._usesCurrentTitle then
		return self._data.currentTitleNamespaceParameters
	else
		if not mappings then
			mShared = mShared or require('Module:Category handler/shared')
			mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
		end
		return mShared.getNamespaceParameters(
			self.title,
			mappings
		)
	end
end

function CategoryHandler:namespaceParametersExist()
	-- Find whether any namespace parameters have been specified.
	-- We use the order "all" --> namespace params --> "other" as this is what
	-- the old template did.
	if self:parameter('all') then
		return true
	end
	if not mappings then
		mShared = mShared or require('Module:Category handler/shared')
		mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
	end
	for ns, params in pairs(mappings) do
		for i, param in ipairs(params) do
			if self._args[param] then
				return true
			end
		end
	end
	if self:parameter('other') then
		return true
	end
	return false
end

function CategoryHandler:getCategories()
	local params = self:getNamespaceParameters()
	local nsCategory
	for i, param in ipairs(params) do
		local value = self._args[param]
		if value ~= nil then
			nsCategory = value
			break
		end
	end
	if nsCategory ~= nil or self:namespaceParametersExist() then
		-- Namespace parameters exist - advanced usage.
		if nsCategory == nil then
			nsCategory = self:parameter('other')
		end
		local ret = {self:parameter('all')}
		local numParam = tonumber(nsCategory)
		if numParam and numParam >= 1 and math.floor(numParam) == numParam then
			-- nsCategory is an integer
			ret[#ret + 1] = self._args[numParam]
		else
			ret[#ret + 1] = nsCategory
		end
		if #ret < 1 then
			return nil
		else
			return table.concat(ret)
		end
	elseif self._data.defaultNamespaces[self.title.namespace] then
		-- Namespace parameters don't exist, simple usage.
		return self._args[1]
	end
	return nil
end

--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------

local p = {}

function p._exportClasses()
	-- Used for testing purposes.
	return {
		CategoryHandler = CategoryHandler
	}
end

function p._main(args, data)
	data = data or mw.loadData('Module:Category handler/data')
	local handler = CategoryHandler.new(data, args)
	if handler:isSuppressed() then
		return nil
	end
	return handler:getCategories()
end

function p.main(frame, data)
	data = data or mw.loadData('Module:Category handler/data')
	local args = require('Module:Arguments').getArgs(frame, {
		wrappers = data.wrappers,
		valueFunc = function (k, v)
			v = trimWhitespace(v)
			if type(k) == 'number' then
				if v ~= '' then
					return v
				else
					return nil
				end
			else
				return v
			end
		end
	})
	return p._main(args, data)
end

return p
什么然起什么 6.8什么星座 鸽子和什么炖气血双补 吃什么补钾快 七月七是什么节
梦特娇属于什么档次 属虎的适合什么职业 1月12日什么星座 做梦被杀了是什么征兆 2011是什么年
1999年属兔的是什么命 尿红色是什么原因 飞克手表什么档次 暑伏为什么要吃饺子 19朵玫瑰代表什么意思
h代表什么单位 限用日期是什么意思 帕罗西汀是什么药 卡拉是什么意思 什么空调
黄体生成素高是什么原因hcv9jop0ns6r.cn 攻是什么意思hebeidezhi.com mandy是什么意思hcv8jop3ns9r.cn 保家仙是什么jingluanji.com 陈皮有什么作用hcv8jop5ns4r.cn
低频是什么意思hcv8jop6ns4r.cn 长期吃避孕药有什么副作用hcv8jop5ns8r.cn 疴是什么意思hcv8jop0ns7r.cn 白菜发苦是什么原因wuhaiwuya.com 燕窝是什么做成的hcv7jop6ns9r.cn
文武双全是什么意思hcv9jop3ns6r.cn 茗茶是什么茶hcv9jop5ns2r.cn 小狗拉肚子吃什么药hcv9jop3ns9r.cn 酸奶什么时候喝好hcv7jop6ns3r.cn 牛奶和什么不能一起吃hcv8jop5ns0r.cn
阴虱长什么样子hcv8jop3ns0r.cn 吃炒黑豆有什么好处和坏处hcv8jop1ns6r.cn 妈祖叫什么名字hcv7jop4ns5r.cn 返利是什么意思hcv8jop0ns6r.cn 中国的国花是什么花hcv7jop9ns2r.cn
百度