跳转到内容

模組:Vgname

被永久保护的模块
维基百科,自由的百科全书

这是本页的一个历史版本,由Lopullinen留言 | 贡献2021年7月16日 (五) 07:33 (似乎要重寫)编辑。这可能和当前版本存在着巨大的差异。

require('Module:No globals')

local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local lc = require('Module:WikitextLC')
local nonChineseLanguages = mw.loadData('Module:Vgname/languages')

----------------------------------

-- 中文變种列表
local variants = {
  {'cn'; simp = '中国大陆', trad = '中國大陸'; script = 'hans' },
  {'hk'; simp = '香港', trad = '香港'; script = 'hant' },
  {'mo'; simp = '澳门', trad = '澳門'; script = 'hant' },
  {'my'; simp = '马来西亚', trad = '馬來西亞'; script = 'hans' },
  {'sg'; simp = '新加坡', trad = '新加坡'; script = 'hans' },
  {'tw'; simp = '台湾', trad = '臺灣'; script = 'hant' },
}

-- 將尾隨<ref>標籤的字字串分割爲兩部分
local function splitRef(str)
	local refPattern = '\127\'"`UNIQ%-%-[Rr][Ee][Ff]%-%x+%-QINU`"\'\127' -- [[:w:en:WP:UNIQ]]
  
  if (str == nil) then
    return '', ''
  end
  
	local s, _ = str:find(refPattern)
	if s then
		return str:sub(1, s-1), str:sub(s)
	end
	
	return str, ''
end

-- 文字加粗
local function boldText(args, str)
  local boldType = true
  if yesno(args.bold) == false then
    boldType = false
  end

  if boldType == true then
    str = "'''" .. str .. "'''"
  end
  return str
end

-- 標題文字套書名號或引號
local function bracketText(args, str)
  local bracketLeft, bracketRight = "《", "》" -- 預設用雙書名號
  
  if args['bracket-left'] and args['bracket-left'] then -- 試錯用參數,不要在模板說明檔中介紹
    bracketLeft, bracketRight = args['bracket-left'], args['bracket-right']
  elseif mw.ustring.lower(args.bracket) == 'q' then -- 'q'爲了引號(quotation marks)
    bracketLeft, bracketRight = '「', '」'
  elseif mw.ustring.lower(args.bracket) == 's' then -- 's'爲了單書名號(single book title marks)
    bracketLeft, bracketRight = '〈', '〉'
  elseif yesno(args.bracket) == false then
    bracketLeft, bracketRight = '', ''
  end
  
  return bracketLeft .. str .. bracketRight
end

----------------------------------

p = {}

function p.main(frame)
	local args = getArgs(frame)
	return p._main(args)
end

function p._main(args)
  local _args = args
end

return p