欢迎来到奇葩栖息地!欢迎加入Discord服务器:XfrfHCzfbW请先至特殊:参数设置验证邮箱后再进行编辑。特殊:参数设置挑选自己想要使用的小工具!不会编辑?请至这里学习Wikitext语法。

模块:Chinese calendar:修订间差异

来自奇葩栖息地
添加173字节 、​ 2025年1月1日 (星期三)
//Edit via InPageEdit
(//Edit via InPageEdit)
(//Edit via InPageEdit)
第100行:
local function getTermOffset(year, termIndex)
local y = year - 1900
local n = math.floor(y * 0.2422)
local d = 0
 
-- 针对不同节气的偏移修正
if termIndex =<= 12 then -- 小寒、大
d = math.floor((y * 0.2422 + 3.87) - n)
local n d = math.floor(y * 0.2422 + 3.87) - math.floor(y/4)
elseif termIndex =<= 26 then -- 大寒立春到春分
d = math.floor((y * 0.2422 + 18.73) - n)
d = math.floor((y * 0.2422 + 3.87) - nmath.floor(y/4)
else
elseif termIndex <= 12 then -- 清明到夏至
-- 其他节气使用基础偏移量
d = math.floor((y * 0.2422 + 184.7315) - nmath.floor(y/4)
return 0
elseif termIndex <= 18 then -- 小暑到秋分
d = math.floor(y * 0.2422 + 4.15) - math.floor(y/4)
else -- 寒露到冬至
d = math.floor(y * 0.2422 + 3.87) - math.floor(y/4)
end
 
第119行 ⟶ 第122行:
local termIndex = (month - 1) * 2 + 1
 
-- 获取该月的两个节气日期
for i = 0, 1 do
local idx = termIndex + i
第126行 ⟶ 第128行:
local termDay = baseDay + offset
 
-- 如果是跨月的节气,进行修正
if termDay > 31 then
termDay = termDay - 31
第135行 ⟶ 第136行:
end
end
 
return nil
end
第200行:
local date = frame.args[1]
local showSolarTerm = frame.args.showSolarTerm
 
if showSolarTerm == nil then
showSolarTerm = false
else
elseif type(showSolarTerm) == "string" then
showSolarTerm = (showSolarTerm:lower() == true or showSolarTerm == "true" or showSolarTerm == "1")
end
 
2,099

个编辑