就形制而言,历日有简本和繁本之分。通常来说,简本历日以朔日甲子为序,或逐日排列,或以二十四节气为序进行编排,中间兼及社、奠、腊等个别纪事,总体没有吉凶标注,内容相对简单。如S.3824《元和十四年己亥岁(819)历日》,首起五月十八日甲午金建,终于六月九日乙卯水成,皆以干支为序,逐日编排,不知年九宫、月九宫,亦无吉凶注,仅五月十八日注“天赦”和蜜日注[35],显然为简本历日。杏雨书屋藏羽40v《年次未详历日抄》中,七月“十六日戊申土建”下注“天赦”,“廿三日乙卯水破”下注有“八月节”,八月“廿四日乙酉水闭”下注有“九月节”,七月“十九日辛亥金平”“二十六日戊午火收”,八月“十五日丙子水平”“廿一日壬午木收”“廿八日己丑火平”下注有“罡”字[36],其他均无宜忌标注,因而仍属简本之列。
值得注意的是,杏雨书屋藏羽41V—3《戊寅年历日》。此历起于二月十九日,其抄写格式甚为特殊:每日仅写地支和建除,而没有天干和五行内容。如“二月十九日酉破,廿日戌危,廿一日亥成,廿二日子收,廿三日丑开,廿四日寅闭,廿五日卯建,廿六日辰除,廿七日巳满,廿八日午平,廿九日未定,卅日申执”[37]。此下亦遵循这种格式,逐日依次排列,建除十二客则连续分配于每日之下,中间没有任何节气说明,也没有其他注记,总体看来属于简本历日。邓文宽据各月朔日地支,判定此件为《宋太平兴国三年戊寅岁(978)历日草稿》[38]。
以二十四节气为序而编排的简本历日,目前所见共有两件。其一是《北魏太平真君十一年(450)、十二年(451)历日》[39],内容仅有朔日、二十四节气、春秋二社、腊日、始耕、月食等条,其他日期均不收录。另一件是《开成五年日历》,圆仁《入唐求法巡礼行记》曾有收录,现摘引如下:
开成五年历日,干同支同(金)纳音本(木),凡三百五十五日,合在乙巳上取土修造。大岁申,大将军在午,岁德在甲寅,岁刑在寅,岁破在寅,岁煞在未,黄旙在辰,豹尾在戌,蚕官在巽。
正月大,一日戊寅土建,四日得辛,十一日雨水,廿六日惊蛰。
二月小,一日戊寅土破,十一日社、春分,廿六日清明。
三月大,一日丁丑水闭,二日天赦,十二日谷雨,廿八日立夏。
四月小,一日丁未水平,十三日小满,廿八日芒种。
五月[小],一日丙子水破,十四日夏至,十九日天赦。
六月大,一日乙巳火开,十一日初伏,十五日大暑,卅日立秋。
七月小,一日乙亥土平,二日除(后)伏,十五日处暑。
八月大,一日甲辰火成,白露,五日天赦,十五日社,十六日秋分。
九月小,一日甲戌火除,二日寒露,十七日霜降。
十月大,一日癸卯金执,二日立冬,十八日小雪,廿[二]日天赦。
十一月大,一日癸酉金收,三日大雪,廿日冬至。
十二月[大],一日癸卯金平,三日小寒,十八日大寒,廿六日腊。
右件历日具注勘过。[40]
不难看出,《开成五年历日》旨在二十四节气的描述,同时兼顾了朔日干支及春社、秋社、初伏、后伏、腊的日期。除此之外,还有两点值得注意:一是“得辛”,即正月初一后的第一个“辛”日,此历正月朔日戊寅,可知四日辛巳,故有“四日得辛”的说法。与此相应,历日中还有“几龙治水”的标注。S.612《宋太平兴国三年戊寅岁(978)具注历日》:“六日得辛,七龙治水。”[41]《金天会十三年乙卯岁(1135)历日》:“十二龙治水,七日得辛。”所谓“几龙治水”,是以正月初一后的第几日为“辰”日来计算的。古人认为龙多则雨少,龙少则雨多,故须在得辛日备供品向神明祈谷[42],以求风调雨顺,五谷丰登。二是“天赦”,即赦宥罪过之吉日。《星历考原》卷三“天赦”条引《天宝历》曰:“天赦者赦过宥罪之辰也。……天赦其日,可以缓刑狱、雪冤枉、施恩惠,若与德神会,合尤宜兴造。”《历例》曰:春戊寅,夏甲午,秋戊申,冬甲子是也。曹震圭曰:“天赦者,乃天之赦过宥罪之神也。”[43]同书卷六“肆赦”条引《历例》曰:“凡赦过宥罪、释狱缓刑、蠲除赋役、起拔幽锢、抚纳流亡、复还迁黜等事,宜天赦天徳合。”[44]由此可见,天赦是颁布大赦、释放囚徒、蠲免赋役、宣示恩惠的吉日。开成五年历中,天赦注于三月二日(戊寅)、五月十九日(甲午)、八月五日(戊申)、十月廿二日(甲子),这与《历例》的规定正相契合[45]。这样看来,历日中的“天赦”标注,显然是适应了朝廷大赦天下的需要。中唐以后,中央王朝面对当前的政治和社会问题(如疏理囚徒、减免赋役、权停修造、赈济灾害、旌表孝亲等),往往通过各种形式的大赦诏令来予以解决,因而反映在历日中便有“天赦”的标注。
至于繁本历日,就是通常所说的具注历日,虽然也是逐日排列,但每日大致都有吉凶神煞、宜忌事项、日游和人神位置的说明,总体呈现出择吉避凶的宜忌特征,从而给人们的立身行事和日常生活提供时间指南。敦煌吐鲁番所出历日中,此类“具注历星”的写本较多,兹不赘述。需要说明的是,P.3507虽有“淳化四年癸巳岁具注历日”标题,且有年九宫、月九宫信息,但其内容与抄写方式明显与其他《具注历》不同:
正月小建,甲寅。一日庚寅木除,水泽腹坚,嫁、修、符、葬吉。四日蜜。六日立春正月节。七日人日。八日上弦。十一日蛰虫[始][振]。十二日往亡、祭风伯。十五日望。十六日鱼上冰。廿一日雨水正月节。廿二日藉田。廿三日下弦,启原祭。廿六日鸿雁来。廿八日灭。廿九日祭祀。六日书(昼)四十四刻,夜五十六刻。十四日昼四十五刻,夜五十五刻。廿三日昼四十六刻,夜五十四刻[46]。
二月大[建],乙卯。一日己未火执,二日草木萌动,昼四十七刻,夜五十三刻。三日蜜。七日惊蛰二月节,桃始花(华)。九日上弦。十日昼四十八刻,夜五十二刻。十二日鶬鶊鸣。十六日望。十七日鹰化为鸠。十八日昼四十九,夜五十一。十九日奠。廿日往亡、社、天赦。廿一日没。廿三日春分中,玄鸟至。廿四日下弦,昼五十刻,夜五十刻。廿八日雷乃发声。
三月小建,丙寅(辰)。一日己丑火开。二日昼五十一刻,夜四十九刻。三日始电。八日上弦,清明三月节,桐始花(华)。十日昼五十二刻,夜四十八刻。十二日田鼠化为鴽。十五日望。十六日昼五十四(三)刻,夜四十六(七)刻。十八[日]虹始见。廿日土王事,祭川原。廿三日下弦,谷雨三月中,萍始生。(后缺)
可见,此历在编排中着眼于朔、望、节气、物候、漏刻、上弦、下弦等要素,同时兼顾了人日、祭风伯、藉田、启原祭、奠、社、祭川原等祭祀礼仪,所谓的“具注”其实仅限于正月一日的婚嫁、修造、符镇和丧葬,因而形式上似与简本更为接近。不过,此历还关注了蜜、没、灭、往亡、天赦等时日宜忌。P.2765《唐太和八年甲寅岁(834)具注历日》云“往亡日不拜官、移徙,不呼女娶妇、远行、归家”,“没、灭日不涉深水、江河”。S.1473+S.11427v《宋太平兴国七年(982)具注历日并序》称“蜜日不吊死问病,朔日不会客及歌乐”,“往亡日不远行及归家、掘墓、移徙”,“灭、没日不涉深水及行船”[47]。在帝王政治中,朔日宜朝会群臣,天赦宜赦宥罪过,往亡“不利出师”“不可出军”[48],皆为吉凶宜忌之事。这样看来,P.3507《淳化四年癸巳岁(993)历日》的书写形式上虽然简单,但实则覆盖了历日的必备要素及当时社会甚为关注的祭祀礼仪,并初步汲取了九宫、时日宜忌等“具注”元素,客观反映了历日形态从简本向繁本过渡、演进的大致历程。