预估是什么意思| 间接胆红素高是什么意思| 风化是什么意思| 2044年是什么年| 哑巴是什么生肖| 突然耳鸣是什么原因| 什么药可以延长时间| 五行黑色属什么| 什么东西放进去是硬的拿出来是软的| 玄牝是什么意思| 大汗淋漓什么意思| 秋葵长什么样| 7月5日是什么星座| hr是什么单位| 尿频繁吃什么药最见效| 胎盘分级0级什么意思| 7月6号是什么星座| 排骨炒什么配菜好吃| 15朵玫瑰花代表什么意思| 23年属什么生肖| 壁虎是什么动物| 肛门有灼烧感什么原因| 起什么转什么成语| 丝状疣用什么药膏最好| 口舌痣是什么意思| 嘴唇发黑是什么原因引起的| 什么牌子的耳机音质效果最好| 中国属于什么亚| 怹是什么意思| 代偿期和失代偿期是什么意思| 鱼水之欢是什么意思| 清浅是什么意思| 男士吃什么壮阳最厉害| 眼睛白色部分叫什么| 止汗药什么最好| 胃溃疡a1期是什么意思| 榴莲什么时候最便宜| 安康鱼长什么样| 油腻是什么意思| 氨基酸的作用是什么| 阳虚湿热吃什么中成药| 褒义词是什么意思| 做梦梦到水是什么征兆| 热结旁流是什么意思| 憩室炎吃什么药| 子宫肌瘤是什么病| 脚趾麻木是什么病先兆| 什么是同素异形体| 岁月的痕迹是什么意思| 妨夫痣是什么意思| 脚扭伤挂什么科| 醴什么意思| 便秘吃什么菜有助排便| gary什么意思| 重孝是什么意思| 什么药可以治早迣| 吃什么止血| 什么的公园| 什么是童话故事| 散光400度是什么概念| 蛋白石是什么| 王八是什么字| aa什么意思| 脱头发严重是什么原因引起的| dm什么意思| 艾滋病阳性是什么意思| 阿扎西是什么意思| 楼台是什么意思| 耳鸣是什么原因导致的| 爱出汗的人是什么原因| 小葫芦项链是什么牌子| 常德有什么大学| 碳13和碳14有什么区别| 水代表什么生肖| 打耳洞需要注意什么| 梦见买床是什么意思| 钾高了会出现什么症状| 什么是再生纤维素纤维| 谭字五行属什么| 身上肉疼是什么原因| 什么人始终不敢洗澡| 三黄鸡为什么那么便宜| 啤酒鸭可以放什么配菜| 宝宝辅食虾和什么搭配| 亲子鉴定需要什么材料| 虾滑可以做什么菜| 化妆的步骤是什么顺序| 阿尔茨海默症吃什么药| 氯喹是什么药| 降压药有什么副作用| 孙悟空是个什么样的人| 眼睛模糊流泪用什么药| 基佬是什么意思| 胃寒胃凉吃什么药| 924是什么星座| 煲仔饭用什么米最好| 北瓜是什么| 什么是德训鞋| 开车穿什么鞋最好| 头发掉得厉害是什么原因| 免冠照片是什么意思| 一直打嗝什么原因| 尿频是什么意思| 胎先露是什么意思| 怀孕有什么症状| 维生素b6吃多了有什么副作用| 生不如死是什么生肖| 蜗牛是什么生肖| 何以笙箫默什么意思| 调剂生是什么意思| 什么水果含糖量高| 喉咙发炎吃什么| 如厕什么意思| parzin眼镜是什么牌子| ch2o是什么物质| 神经病吃什么药效果好| 什么叫佛| 多愁善感的动物是什么生肖| 阳虚有什么症状和表现| 什么叫法令纹| 早上打碎碗是什么兆头| 心脏跳的快是什么原因| 管状腺瘤是什么意思| 妇科清洁度3度用什么药治疗| 7.21是什么日子| 肛门湿疹用什么药膏最有效| 眼睛经常充血是什么原因引起的| affairs是什么意思| 1986年虎是什么命| suki是什么意思| 马兰头是什么菜| 假卵是什么样子的| 一黑一白是什么蛇| 抗生素是什么| 用什么水和面烙饼最软| 精索炎吃什么药最好| 孕妇快生的时候有什么征兆| 什么是虎牙| 上吐下泻是什么原因| 石几念什么| 黄芪的功效是什么| 排卵试纸阴性是什么意思| 什么叫痔疮| 呦西是什么意思| 鹿象征什么寓意| 人怕冷是什么原因| 办理暂住证需要什么材料| 大熊猫属于什么科| 阿玛施属于什么档次| 女人梦见鬼是什么征兆| 腰肌劳损是什么原因造成的| 幽门螺旋杆菌用什么药治疗| 头发出油是什么原因| 多囊是什么病| 见性成佛是什么意思| 梦到掉牙齿是什么意思| 手术后吃什么营养品好| 记者学什么专业| 胆囊切除后吃什么好| rush什么意思| 凤字五行属什么| 家蛇出现寓意什么| 农历五月二十是什么星座| 检查肝脏应该挂什么科| 副县级是什么级别| 什么的油菜花| 10000mah是什么意思| 李幼斌是什么军衔| 零和博弈什么意思| 人少了一魄什么反应| 脑梗做什么检查| 从小一起长大的姐妹叫什么| 男人身体怕冷是什么原因如何调理| 一心一意指什么生肖| 膈肌痉挛是什么症状| 尿道炎和阴道炎有什么区别| 天池为什么没有鱼| 牙龈肿痛什么原因| 羽毛球拍磅数是什么意思| 点背是什么意思| 肚子怕冷是什么原因该怎么办| 导语是什么| 是什么品牌| 红棕色是什么颜色| 血脂稠吃什么食物好| 孩子嗓子有痰吃什么药| 蓝颜知己是什么意思| 为什么大便是黑色的| 石榴什么时候开花| 猎头是干什么的| 东坡肉属于什么菜系| 涟漪什么意思| 你喜欢吃什么用英语怎么说| 身上长痣是什么原因| 新生儿头发稀少是什么原因| 血糖高喝什么豆浆好| cob是什么意思| 万什么一心| 红细胞分布宽度偏低是什么原因| 尿道炎症吃什么药| 什么牌子充电宝好| 优越感是什么意思| 1月22号什么星座| 飞机票号是什么意思| hpmc是什么| 闰六月有什么讲究| 眼皮跳什么预兆| 布拉吉是什么| 儿女情长英雄气短是什么意思| 什么胃病需要做手术| 什么叫三观不正| 吃什么吐什么是怎么回事| 吃什么不长肉| 皮肤溃烂化脓用什么药| 经血粉红色是什么原因| 落花流水什么意思| 孕妇吃核桃对胎儿有什么好处| 混合型高脂血症是什么意思| 沉香有什么作用| 什么水果止咳| 改姓需要什么手续| 睡觉咳嗽是什么原因| 当是什么意思| a4纸能折什么| 漂白粉是什么| dt是什么意思| 什么花没有叶子| 呼吸音粗是什么原因| 吃什么可以降火| 月经什么时候来| 写生是什么意思| 夏威夷披萨都有什么配料| 临床试验是什么意思| 丝瓜有什么功效| 别有什么什么| 肌酐高吃什么药| 刻板是什么意思| 蓟类植物是什么| 孕前检查什么时候去最合适| 豆浆配什么主食当早餐| 皮蛋吃了有什么好处和坏处| medicine什么意思| 下半夜咳嗽是什么原因| 电疗有什么作用和功效| 手串断了是什么预兆| 厅长是什么级别| 脑门出汗多是什么原因| 老是嗳气是什么原因| 弱精吃什么能提高活力| 969368是什么电话| 什么是头七| 意下如何什么意思| 得乙肝的人有什么症状| 胳膊上的肌肉叫什么| 用劲的近义词是什么| 预包装食品指的是什么| 黄疸偏高有什么危害| 什么是炎症| 为什么过敏反复发作| 蠼螋吃什么| 心肌缺血吃什么药| 眉毛浓的男人代表什么| 木耳不能和什么一起吃| 什么是闰年什么是平年| 百度Jump to content

国家生态文明建设示范县规划:构建区域安全体系

From Wikiversity
百度 《美国新闻与世界报道》网站称,波音等美国企业将成为特朗普对华贸易战最大受害者。

This module makes {{printable}} & {{footer}} work.


-- Search and display the book pages from the TOC page, in order to create a printable version and a previous / next navigation.

debug = false
include_book_subpages_only = true
do_not_evaluate_each_chapter = false
local p = {}

ModuleTnt = require('Module:TNT')
Error = ModuleTnt.format('I18n/Module:Printable version', 'error_invalid_toc')
Beginning1 = ModuleTnt.format('I18n/Module:Printable version', 'header_notice')
Beginning2 = ModuleTnt.format('I18n/Module:Printable version', 'header_cover')
Break = ModuleTnt.format('I18n/Module:Printable version', 'page_break')
Ending1 = ModuleTnt.format('I18n/Module:Printable version', 'footer_license')
Ending2 = ModuleTnt.format('I18n/Module:Printable version', 'footer2')
templateLeft  = ModuleTnt.format('I18n/Module:Printable version', 'template_left')
templateRight = ModuleTnt.format('I18n/Module:Printable version', 'template_right')
TOC = ModuleTnt.format('I18n/Module:Printable version', 'TOC')
sep = ModuleTnt.format('I18n/Module:Printable version', 'subpage_separator')
page_before = ModuleTnt.format('I18n/Module:Printable version', 'page_before')
page_after = ModuleTnt.format('I18n/Module:Printable version', 'page_after')


function p._escapePattern(pattern)
    return mw.ustring.gsub(pattern, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1");
end


function p.displays_book(frame)
    if not debug then Error = '' end
    if frame == nil then return '' end
    if frame.args == nil then return '' end
    if frame.args[1] == nil then return '' end
    local BookName = frame.args[1]
    if (BookName ~= nil and mw.text.trim(BookName) ~= '') then
        title = mw.title.new(BookName)
        if frame.args[2] ~= nil and frame.args[2] ~= '' then
            BookName = frame.args[2]
        else
            if mw.ustring.find(BookName, sep .. TOC, 1, true) ~= nil then BookName = mw.ustring.gsub(BookName, "^(.*)" .. sep .. TOC .. "$", "%1") end
        end
        if frame.args[3] ~= nil then include_book_subpages_only = false end
    else
        return Error
    end
    if frame.args[4] ~= nil and frame.args[4] ~= '' then do_not_evaluate_each_chapter = true end

    if (title == nil or title == '') then return Error end
    text = title.getContent(title)
    if (text == nil or text == '') then return Error end

    -- Book subpages titles normalization to absolute names
    local lines_ = mw.text.split(text, "\n")
    local fullPageName
    local PrintVersion = {}

    if (page_before ~= '') then
        -- Add book header
        fullPageName = BookName .. sep .. page_before
        ChapterTitle = mw.title.new(fullPageName)
        if (ChapterTitle ~= nil and ChapterTitle.exists) then
            -- Title should be defined in the page itself
            table.insert(PrintVersion, frame:expandTemplate{ title = ':' .. fullPageName } .. '\n\n')
        end
    end

    -- Add book chapters
    for i,v in ipairs(lines_) do
        if mw.text.trim(v) ~= '' then
            fullPageName = p.getFullPageName(BookName, v)
            if fullPageName ~= nil then
                ChapterTitle = mw.title.new(fullPageName)
                if (ChapterTitle ~= nil and (do_not_evaluate_each_chapter or ChapterTitle.exists)) then
                    PageName = p.getSubpageName(BookName, fullPageName)
                    if (PageName ~= nil and PageName ~= '') then
                        if Break ~= "" then table.insert(PrintVersion, frame:expandTemplate{title = Break}) end
                            table.insert(PrintVersion, '\n<div style="clear:both;page-break-before:always;"></div>\n=' .. PageName .. '=\n')
                    end
                    table.insert(PrintVersion, frame:expandTemplate{ title = ':' .. fullPageName } .. '\n\n')
                else
                    if debug then table.insert(PrintVersion, '<span class="error">Missing subpage "' .. fullPageName .. '" on line "' .. v .. '" for the book:</span> ' .. BookName .. '\n\n') end
                end
            end
        end
    end
 
    if (page_after ~= '') then
        -- Add book footer
        fullPageName = BookName .. sep .. page_after
        ChapterTitle = mw.title.new(fullPageName)
        if (ChapterTitle ~= nil and ChapterTitle.exists) then
            -- Title should be defined in the page itself
            table.insert(PrintVersion, frame:expandTemplate{ title = ':' .. fullPageName } .. '\n\n')
        end
    end

    Templates1 = ""
    if Beginning1 ~= "" then Templates1 = Templates1 .. frame:expandTemplate{title = Beginning1} .. '\n' end
    if Beginning2 ~= "" then Templates1 = Templates1 .. frame:expandTemplate{title = Beginning2} .. '\n' end
    Templates2 = ""
    if Ending1 ~= "" then Templates2 = Templates2 .. frame:expandTemplate{title = Ending1} .. '\n' end
    if Ending2 ~= "" then Templates2 = Templates2 .. frame:expandTemplate{title = Ending2} .. '\n' end

    return Templates1 .. table.concat(PrintVersion, "\r\n") .. Templates2
end


function p.extract_fullPageName(frame)
    if frame == nil then return '' end
    if frame.args == nil then return '' end
    if frame.args[1] == nil then return '' end
    if frame.args[2] == nil then return '' end
    return p.getFullPageName(frame.args[1], frame.args[2])
end


function p.getFullPageName(BookName, chapter)
    if (BookName ~= nil and mw.text.trim(BookName) ~= '') or (chapter ~= nil and mw.text.trim(chapter) ~= '') then
        BookName = mw.text.trim(BookName)
        chapter = mw.text.trim(chapter)
        BookName = mw.ustring.gsub(BookName, "_", " ")
        chapter = mw.ustring.gsub(chapter, "_", " ")
    else
        if debug then chapter = '<span class="error">Incorrect book or chapter name</span>' else chapter = '' end
    end

    chapter = mw.ustring.gsub(chapter, "{{BOOKNAME}}", BookName)
    chapter = mw.ustring.gsub(chapter, "{{[Mm]odulo%|([^}]+)}}", "[[%1]]")
    chapter = mw.ustring.gsub(chapter, " *%| *[0-9]*.*{{[Cc]%|([^}]+)%|[0-9]}}", "[[" .. BookName .. sep .. "%1]]")
    chapter = mw.ustring.gsub(chapter, " *%| *[0-9]*.*{{[Cc]%|([^}]+)}}", "[[" .. BookName .. sep .. "%1]]")
    chapter = mw.ustring.gsub(chapter, " *%[%[Image:[^%]]+%]%]", "")
    chapter = mw.ustring.gsub(chapter, "{{[^}]*}}", "")
    chapter = mw.ustring.gsub(chapter, "^[%#%*:; ]*", "")
    chapter = mw.ustring.gsub(chapter, "%[%[%.%.?/", "[[" .. BookName .. sep)
    chapter = mw.ustring.gsub(chapter, "%[%[/", "[[" .. BookName .. sep)
    chapter = mw.ustring.gsub(chapter, "%/%]%]", "]]")
    chapter = mw.ustring.gsub(chapter, "%/$", "")
    if mw.ustring.find(chapter, "%[%[") ~= nil then
        -- Pages titles extraction from the TOC
        if mw.ustring.find(chapter, "%|") == nil or (mw.ustring.find(chapter, "%]") ~= nil and mw.ustring.find(chapter, "%|") > mw.ustring.find(chapter, "%]")) then
                Ending = "%]"
        else
                if mw.ustring.find(chapter, "%/%|") == nil or mw.ustring.find(chapter, "%/%|") > mw.ustring.find(chapter, "%|") then
                    Ending = "%|"
            else
                    Ending = "%/%|"
            end
        end
        chapter = mw.text.split(chapter, Ending)[1]   -- extraction of the line beginning
        --chapter = mw.text.split(chapter, "%[%[")[2]
        chapter = mw.ustring.gsub(chapter, "[^%[]*%[%[(.*)", "%1") -- brackets and pipes removal

        if chapter == BookName or chapter == BookName .. sep or mw.ustring.find(chapter, "%#") ~= nil then
            if debug then chapter = '<span class="error">Chapter = ' .. chapter .. ' => book name or another subpage name</span> with Ending = ' .. Ending else chapter = '' end
        else
            if include_book_subpages_only then
                -- Book subpages only (and ignoring the other links like "see also")
                if mw.ustring.find(chapter, BookName .. sep, 1, true) == nil then
                    if debug then chapter = "<span class=\"error\">No book subpage into the internal link:</span> '" .. chapter .. "' doesn't include '" .. BookName .. sep .. "'" else chapter = '' end
                end
            end
        end
    else
        if debug then chapter = "<span class=\"error\">No internal link</span> for: " .. chapter .. "\n" else chapter = '' end
    end
    return chapter
end


function p.getSubpageName(bookName, fullPageName)
    k, v = mw.ustring.gsub(fullPageName, '^' .. p._escapePattern(bookName .. sep), '')
    return k
end


function p.extract_subpageName(frame)
    if frame == nil then return '' end
    if frame.args == nil then return '' end
    if frame.args[1] == nil then return '' end
    if frame.args[2] == nil then return '' end
    return p.getSubpageName(frame.args[1], frame.args[2])
end


function p.displays_footer(frame)
    if not debug then Error = '' end
    if frame == nil then return "" end
    if frame.args == nil then return "" end
    if frame.args[1] == nil then return "" end
    local footer = {}

    local BookName = frame.args[1]
    if (BookName ~= nil and mw.text.trim(BookName) ~= "") then
        title = mw.title.new(BookName)
        if mw.ustring.find(BookName, sep .. TOC, 1, true) ~= nil then BookName = mw.ustring.gsub(BookName, "^(.*)" .. sep .. TOC .. "$", "%1") end
    else
        return Error
    end

    local currentPageName
    if frame.args[2] ~= nil and frame.args[2] ~= '' then
        currentPageName = frame.args[2]
    else
        currentPageName = p.getSubpageName(BookName, mw.title.getCurrentTitle().fullText)
    end
    if (currentPageName ~= nil and mw.text.trim(currentPageName) ~= "") then 
        currentPageName = mw.text.trim(currentPageName)
    else
        return Error
    end
    if debug then table.insert(footer, " currentPageName = " .. currentPageName .. "\n") end

    if (title == nil or title == "") then return Error end
    text = title.getContent(title)
    if (text == nil or text == "") then return Error end

    if frame.args[3] ~= nil and frame.args[3] ~= '' then
        if frame.args[3] == 'programming' then
            if debug then table.insert(footer, " skin=programming\n\n") end
            templateLeft = '{| style="width:100%; border:solid 1px #71c837; background:#c6e9af; color:#2d5016;" class="navlinks noprint"\n| style="text-align:left; width:33%; font-size:90%;" class="navprevious" |[[Image:Navigation_Left_Arrow.svg|18px|link=printf|alt=]] [[printf]]\n'
            templateRight = '| style="text-align:center; width:34%;" class="navtitle" | [['..mw.title.getCurrentTitle().rootText..']]<br><b>'..mw.title.getCurrentTitle().subpageText..'</b>\n| style="text-align:right; width:33%; font-size:90%;" class="navnext" | [[printf]] [[Image:Navigation_Right_Arrow.svg|18px|link=printf|alt=]]\n|}'
        end
    end

    -- Book subpages titles normalization to absolute names
    local lines_ = mw.text.split(text, "\n")
    local previousChapter = ""
    local found = false
    local fullPageName
    local homepage = false
    local subpageName
    local rawFullPageName

    if (currentPageName == BookName) then
        if debug then table.insert(footer, " homepage\n") end
        homepage = true
    end

    for i, v in ipairs(lines_) do
        rawFullPageName = mw.text.trim(v)
        if rawFullPageName ~= '' then
            fullPageName = p.getFullPageName(BookName, rawFullPageName)
            if debug then
                if mw.ustring.find(fullPageName, "<span class=\"error\">No internal link</span>") ~= nil then
                    fullPageName = nil
                else
                    table.insert(footer, " research into: " .. rawFullPageName .. "\n")
                    table.insert(footer, " extraction of: " .. fullPageName .. "\n")
                end
            end
            if fullPageName ~= nil then
                if mw.ustring.find(fullPageName, BookName .. sep, 1, true) == nil then
                    if debug then table.insert(footer, " replacement of " .. fullPageName .. " by " .. BookName .. sep .. fullPageName .. "\n") end
                    fullPageName = BookName .. sep .. fullPageName
                end
                ChapterTitle = mw.title.new(fullPageName)
                if (ChapterTitle ~= nil and ChapterTitle.exists) then
                    subpageName = p.getSubpageName(BookName, fullPageName)
                    if debug then table.insert(footer, " cut subpage: " .. subpageName .. "\n") end
                    if (subpageName ~= nil and subpageName ~= "") then
                        if found == true or homepage == true then
                            if debug then table.insert(footer, "<span class=\"error\">Previous & next chapter insertion</span>\n") end

                            if homepage == false then
                                if previousChapter == "" then
                                    theTemplateLeft, nb = mw.ustring.gsub(templateLeft, "printf", BookName .. "|" .. TOC)
                                else
                                    theTemplateLeft, nb = mw.ustring.gsub(templateLeft, "printf", BookName .. sep .. previousChapter .. "|" .. previousChapter)
                                end
                                table.insert(footer, theTemplateLeft)
                            end

                            theTemplateRight, nb = mw.ustring.gsub(templateRight, "printf", BookName .. sep .. subpageName .. "|" .. subpageName)
                            table.insert(footer, theTemplateRight)
                            break
                        elseif subpageName == currentPageName then
                            if debug then table.insert(footer, "<span class=\"error\">Page</span> '" .. currentPageName .. "' found\n\n") end
                            found = true
                        elseif fullPageName ~= "" then
                            if debug then table.insert(footer, " " .. subpageName .. " is different from " .. currentPageName .. "\n") end
                            previousChapter = subpageName
                        else
                            if debug then table.insert(footer, "<span class=\"error\">The current page</span> '" .. subpageName .. "' is not '" .. currentPageName .. "'") end
                        end
                    end
                else
                    if debug then table.insert(footer, "<span class=\"error\">The page</span> '" .. fullPageName .. "' doesn't exist, for '" .. currentPageName .. "'\n\n") end
                end
            end
        end
    end

    if found == true and table.getn(footer) == 0 then
        if debug then table.insert(footer, "<span class=\"error\">No next chapter</span>\n") end
        theTemplateLeft, nb = mw.ustring.gsub(templateLeft, "printf", BookName .. sep .. previousChapter .. "|" .. previousChapter)
        table.insert(footer, theTemplateLeft)
        theTemplateRight, nb = mw.ustring.gsub(templateRight, "printf", BookName .. "|" .. TOC)
        table.insert(footer, theTemplateRight)
    end

    return table.concat(footer, "")
end


return p
什么工作赚钱最快 1955年属什么 阴虱长什么样子图片 早餐做什么简单又好吃 迎风流泪用什么眼药水
近亲为什么不能结婚 一直倒霉预示着什么 三月三号是什么星座 砂锅是什么材料做的 叶黄素是什么
宝宝咳嗽有痰吃什么药效果好 最好的红酒是什么牌子 不可开交是什么意思 狐臭用什么药 两肺间质性改变是什么意思
死鬼什么意思 智齿为什么会发炎 什么是生理盐水 浅表性胃炎吃什么药好 蛔虫和蛲虫有什么区别
花苞裤不适合什么人穿hcv7jop9ns1r.cn 位图是什么意思hcv9jop5ns6r.cn 灾煞是什么意思hcv9jop3ns2r.cn 手足口病有什么症状0735v.com 孕妇宫缩是什么症状hcv7jop5ns2r.cn
夜尿次数多是什么原因hcv8jop1ns9r.cn 什么是朱砂helloaicloud.com 女性小腹疼痛是什么原因jinxinzhichuang.com 核糖体由什么组成hcv9jop4ns0r.cn 挪威用什么货币hcv7jop6ns0r.cn
嘴巴下面长痘痘是什么原因引起的hcv8jop3ns7r.cn 全麦是什么hcv8jop6ns4r.cn 胡萝卜炒什么hcv7jop6ns2r.cn 骨髓纤维化是什么病yanzhenzixun.com 吃什么减肥瘦肚子hcv8jop0ns0r.cn
结膜出血用什么眼药水hcv9jop6ns8r.cn 手麻胳膊麻是什么原因引起的hcv8jop6ns5r.cn 牙疼去医院挂什么科hcv8jop0ns2r.cn 芡实和什么搭配最好hcv8jop5ns8r.cn 1954年属什么生肖hcv9jop3ns7r.cn
百度