请输入您要查询的百科知识:

 

词条 Module:Lang/utilities
释义

require ('Module:No globals');

local is_latn = require ("Module:Unicode data").is_Latin;

local p={}

--[[--------------------------< I S _ C J K >------------------------------------------------------------------

return true if code is one of the listed Chinese, Japanese, Korean ISO 639 codes, false else.

]]

local function is_cjk_code (code)

local cjk =

{

['zh'] = true, ['cdo'] = true, ['cjy'] = true, ['cmn'] = true, -- Chinese language codes

['cpi'] = true, ['cpx'] = true, ['czh'] = true, ['czo'] = true,

['gan'] = true, ['hak'] = true, ['hsn'] = true, ['ltc'] = true,

['lzh'] = true, ['mnp'] = true, ['nan'] = true, ['och'] = true,

['wuu'] = true, ['yue'] = true, ['zhx'] = true,

['ja'] = true, ['jpx'] = true, ['ojp'] = true, -- Japanese language codes

['ko'] = true, ['okm'] = true, ['oko'] = true, -- Korean language codes

}

return cjk[code] or false;

end

--[[--------------------------< S E T _ I T A L I C S >--------------------------------------------------------

Created for use with Template:Infobox book and Template:Infobox document and perhaps others to replace hard-coded

italic markup in the call to {{lang}}. This module attempts to make sure that {{lang}} correctly applies italic

markup according to MOS:FOREIGNITALIC.

]]

function p.set_italics (frame)

local code = frame.args[1] or frame.args['code'] or ; -- empty string causes 'yes' return; {{lang}} will handle the missing code error

local text = frame.args[2] or frame.args['text'] or ; -- empty string causes 'yes' return; {{lang}} will handle the missing text error

if is_cjk_code (code) and not is_latn (text) then -- is_latn() is in Module:Lang

return 'no'; -- only case for 'no'

end

return 'yes'; -- everything else is yes

end

return p;

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/9/27 10:20:27