一部完整的家谱基本哪些常见内容?
一、谱名
谱名中最重要的是谱籍和姓氏,即是什么地方、什么家族的家谱,为什么这样要这样写?更准确的反映家谱作为“史书”来反映信息,不然,编修的人当时明白,经年累月之后,转之何人何地?便无从查考,给后人寻根带来巨大困难。
二、像赞
人物像赞有各种表达,或始祖,如三皇五帝,也可以是近祖,或者迁祖,还可以是自古到今的家族内非凡的人物,特别杰出的人才。以昭示后人发奋图强。
三、谱序
稍具规模的家谱,卷首一定会有一篇至几十篇不等的序文,它是每部家谱不可缺少的内容之一。谱序包括新序、旧序、族外人的客序、跋语、目录和刻印人名以及其它关于本族的记述。
四、目录
全部家谱内容提要,以便检索。
五、谱论
谱论,即谱学理论,从司马迁开始历代都有名家,如欧阳修,苏轼,王安石,朱熹,王阳明,比如章学诚的《文史通义》曰:“有谱、州有志、国有史,其义一也。”,“且有天下之史,有一国之史有一家之史,有一人之史。传状志述,一人之史也;家乘谱牒,一家之史也;郡府县志,一国之史;综纪一朝,天下之史也。
六、凡例
凡例,即修谱的原则,规定,比如哪些人可以入谱,哪些人不能入谱,对人的次序的排定,哪些内容怎么去写等等,就是规定家谱里面都有什么,这个显示出编修之人的主观态度,如明朝家谱对女性入家谱,就很明确的规定:丈夫之后跟原配,接着依次是:继配,侧室,妾,纳,除原配外,这些二三四五老婆不可以有名字,原籍,生卒,等,这个男尊女卑的“名分”观念,尤 是对女性的一种变态的歧视。
七、家训
不要误解,《家训》不是家谱内容,这里为了突出家训的内容做个配图,中国是家天下的社会结构,名门望族是一大特色,家训家风起了很重要的教育作用。
八、世系
世系是家谱内容的核心部分,从家族第一世开始,记载其生卒,婚配,事略,墓葬,其人如何?一目了然。
九、传记
传记,不是每个人都有,是对家族内的杰出人物,立功立德之人的具体描写,反应出这些人物的杰出品质, 垂范后辈,是榜样力量。可分内传。外传,内传是五服之内,外传是五服之外,还有列传,分门别类,比如家佣,二三四老婆中的贞烈之妇,可做列传,这已经不适合今天。
十、谱跋
上图是梅曾亮的家谱跋语,他自夸了一下,“知岩”以乡兵保障宣州,然后对家族的分派流迁做了陈说,所以跋语就是做谱之后的感想,经验,过程等含有者的寄托之语。
十一、领谱字号
家族支派繁多广布,必须有字号,作为验证, 跟对号入座一样。家谱一般就包括上述内容,除此之外比较重要的包括,祠堂,敕封,艺文,契约等还有一些图表,制作时可根据原谱内容确定。没有原谱,就必须另起创谱,不使历史中断,再根据个人情况确定内容。
#include<iostreamh>
#include<stdlibh>
#include<stdioh>
#include<stringh>
typedef struct Node
{
int degree;//人员所在代数
char data;//人员标志
struct Node lchild;//data的孩子
struct Node rchild;//data的兄弟
}BTNode;
#define max 100
int choose;
char X;
void CreatBTNode(BTNode b,char str);//创建记录
BTNode SearchX(BTNode b,char X);//查找记录
void InputBTNode(BTNode b,char str);//1记录输入
void OutputBTNode(BTNode b,char str);//2记录输出
void Store(BTNode b,char str);//3家谱记录存盘
void DispTree(BTNode b);//4用括号法输出家谱
void SearchXSon(BTNode b,char X);//5查找某人的儿子
void SearchXAncestor(BTNode b,char X);//6查找某人的祖先
void Distory(BTNode b,char str);//7清除全部文件记录
int main()
{BTNode b=NULL;
char str=(char)malloc(maxsizeof(char));
str[0]='\0';
cout<<"--------------------------------------------------------------------"<<endl;
cout<<"0退出"<<endl;
cout<<"1记录输入:\t"<<endl;
cout<<"2记录输出:\t"<<endl;
cout<<"3家谱记录存盘:\t"<<endl;
cout<<"4用括号法输出家谱:\t"<<endl;
cout<<"5查找某人的儿子:\t"<<endl;
cout<<"6查找某人的祖先:\t"<<endl;
cout<<"7清除全部文件记录:\n"<<endl;
cout<<"-------------------------------------------------------------------"<<endl;
cout<<"Please choose the operation you want to do "<<endl;
cout<<"choose=";
cin>>choose;
while(choose)
{switch(choose)
{
case 1:
InputBTNode(&b,str);break;
case 2:
OutputBTNode(&b,str);break;
case 3:
Store(b,str);
printf("文件已经保存!");
break;
case 4:
DispTree(b); break;
case 5:
printf("请输入需要查找儿子的结点:");
cin>>X;
SearchXSon(b,X);
break;
case 6:
printf("请输入需要查找祖先的结点:\n");
cin>>X;
BTNode p;
p=SearchX(b,X);
if(p!=NULL)
SearchXAncestor(b,X);
else
printf("该结点不存在!");
break;
case 7:
Distory(&b,str);
printf("文件记录已经清除!");
break;
default:
cout<<endl<<"Invalid input,input again";
}
cout<<endl<<"please choose again:"<<endl;
cout<<"the choose =";
cin>>choose;
}
return 0;
}
void CreatBTNode(BTNode b,char str) //创建树
{
BTNode S[max],p=NULL;
int top=-1,tag,j=0,d=0;
char ch;
b=NULL;
ch=str[j];
while(ch!='\0')
{
switch(ch)
{
case '(':
d++;
top++;
S[top]=p;
tag=1;break;
case ')':
top--;break;
case ',':
d--;
tag=2;break;
default:
p=(BTNode )malloc(sizeof(BTNode));
p->degree=d;
p->data=ch;
p->lchild=NULL;
p->rchild=NULL;
if((b)==NULL)(b)=p;
else
{
switch(tag)
{
case 1: S[top]->lchild=p;break;
case 2: S[top]->rchild=p;break;
}
}
}
ch=str[++j];
}
}
void InputBTNode(BTNode b,char str)//记录输入
{
do
{
printf("请输入需要输入的记录:\n");
gets(str);
if(str[0]=='\0')
printf("输入的记录为空,请再次输入:\n");
}while(str[0]=='\0');
CreatBTNode(b,str);
printf("记录创建成功!");
}
void OutputBTNode(BTNode b,char str)//从文件中读出记录
{
FILE fp;
if((fp=fopen("wangljtxt","r"))==NULL)
{
printf("不存在记录文件,要建立吗\n建立请输入Y,否则按其他键:");
if(getchar()=='Y')
{
fp=fopen("wangljtxt","w+");
printf("记录文件“wangljtxt”已建立\n");
}
else
exit(1);
}
else
{
if(!feof(fp))
fscanf(fp,"%s",str);
fclose(fp);
CreatBTNode(b,str);
printf("文件中记录已输出\n");
}
}
void Store(BTNode b,char str)//储存全部的结点记录
{
BTNode p;
p=b;
FILE fp;
fp=fopen("wangljtxt","w+");
if(fp==NULL)
{
printf("文件打开失败!");
return;
}
else
{
if(p!=NULL)
{
fprintf(fp,"%s",str);
fclose(fp);
}
}
}
void DispTree(BTNode b)//用括号法输出家谱记录
{
if(b!=NULL)
{printf("%c",b->data);
if(b->lchild!=NULL||b->rchild!=NULL)
{printf("(");
DispTree(b->lchild);
if(b->rchild!=NULL)
{printf(",");
DispTree(b->rchild);
}
printf(")");
}
}
else
printf("\0");
}
BTNode SearchX(BTNode b,char X)//查找结点X
{BTNode p;
if(b==NULL) return NULL;
else if(b->data==X) return b;
else
{
p=SearchX(b->lchild,X);
if(p!=NULL) return p;
else
{
return SearchX(b->rchild,X);
}
}
}
void SearchXSon(BTNode b,char X)//查找结点X的所有儿子
{
BTNode p,q;
p=SearchX(b,X); //找到节点X
if(p!=NULL)
{
p=p->lchild;
if(p==NULL) //X没有孩子
printf("节点%c没有儿子!",X);
else
{
printf("节点%c的所有儿子为:",X);
if(p!=NULL)
printf("%c ",p->data);
q=p->rchild;
while(q)
{
printf("%c ",q->data);
q=q->rchild;
}
}
}
else
printf("该结点不存在!");
}
void TraverseBT(BTNode b,int d)//遍历家谱
{
if(b!=NULL)
if(b->degree<d)
{
printf("%c ",b->data);
if(b->lchild!=NULL)
TraverseBT(b->lchild,d);
if(b->rchild!=NULL)
TraverseBT(b->rchild,d);
}
}
void SearchXAncestor(BTNode b,char X)//查找结点X的所有祖先
{
if(b==NULL)
{
printf("这是一棵空树!");
return ;
}
BTNode p=SearchX(b,X);
if(p->degree==0)
{
printf("X为根节点或其兄弟,没有祖先!");
return;
}
printf("%c结点的祖先有:",X);
TraverseBT(b,p->degree);
}
void Distory(BTNode b,char str)//清除全部的记录
{
(b)=NULL;
FILE fp;
fp=fopen("wangljtxt","w");
if(fp==NULL)
{
printf("打开文件失败!");
exit(1);
}
str="";
fclose(fp);
}
(1)谱名:为明血统,防乱宗,谱名一般包含里籍,如《韶山毛氏族谱》、《镇海横河堰包氏宗谱》(包玉刚),有的还加编修时间、次数,如《同治九年进贤刘氏重修族谱》、《中湘陈氏六修族谱》等。
(2)谱序:内容涉及修谱缘由、姓氏渊源、家族迁徙、修谱理论等,续修谱一般保存以前的谱序。大多由本族人撰写,也有名人撰写,如朱熹、文天祥等。
(3)凡例:阐明修谱的原则和体例,少则几条,多则几十条,随时代变化而变化。如民国时有些谱凡例规定女子也入谱。
(4)遗像:刊载祖先及族中重要人物遗像及赞语,诸如“秉姓忠直”,“忠悬日月”等。
(5)恩荣录:登载皇帝对家族中官员、亲属、烈女等的勅书、赐匾、赐碑等。
(6)姓氏源流:考述本族姓氏来源、本姓历史、始祖、始迁祖、家族迁徙经过,各支派远近关系等。
(7)族规家法:各家族自己制定的约束、教化族人的宗族法规,内容具体,包括忠君、孝亲、祭祖、禁赌、财产继承、约束妇女等。
(8)祠堂:记载祠堂建筑图案,修建经过、规模、地理位置,祠堂内祖先牌位排列次序。
(9)世系、世传:记载始祖至撰修该谱时本家族各世代成员的姓氏、生卒年月、科第、妻室、子女、葬地等,是家谱中最重要最本质的内容,往往占到一部家谱的四分之三的篇幅,是寻根的主要依据。
(10)传记:又称行状、行述等,记载家族中重要人物,如忠臣、孝子、义夫、节妇的主要事迹。
(11)族产:家族集体财产,如坟地、祀田、义庄、学田、山林、房屋等数量、位置以及管理办法。
(12)契约:登载与族产有关的契据、文约,宗族内部关于承嗣、分家等契约,卖买田地、房屋、邻里纠纷等文据。
(13)坟墓:包括墓图、坟向(如乾山坤向),祖坟、各支派坟的地理位置,便于后人祭祖扫墓,“不忘祖先”。
(14)艺文:收录族人著述、诗词、奏疏等。
(15)字辈、排行、行第:记载族人世系人名的排行用语。
(16)领谱字号:家谱严禁公开,内部发行,印数按家族房数决定,多余一二部存放祠堂。各房领家谱则按谱号领取,如“天地玄黄,宇宙洪荒……”,并有记录,到时检查。
从上述内容看出,家谱具有以下特点:记载范围的宗族性,系本族人的事迹,本族人撰写;记载内容的广泛性,实是本家族的一部百科全书;记载体例的多样性,史、图、表、志、传,兼容并蓄。
明代中后期是中国家谱体例演变与内容更新的一个重要分水岭。体例的变化与内容丰富是此前谱牒所少有的。正德元年所纂《余氏会通谱》内容包括新旧序、跋、辨、图、外传、外纪图、世系图、茔域图、卷末跋、后序。《休宁文昌金氏世谱》内容已较全面,包括序、凡例、列士、金氏本国、世系、事略、行实、行状、墓志铭、杂著、记、诗、赞、规约。嘉靖十八年许璞、许汉纂《许氏统宗世谱》内容涉及序、名人传记、行状、墓志、世系。嘉靖三十四年朱世恩纂《朱氏统宗世谱》内容涵括历代谱序、敕命、凡例、像赞、祠屋图、墓图、传、世系图。嘉靖三十七年黄侍、黄仁德纂《左田黄氏孟宗谱》内容包括序、图、地理志、姓氏源流、世系、文翰。隆庆六年许可复、许凤翔纂《新安歙北许氏东支世谱》吸收并总结了嘉靖以前家谱的有关内容,且有所扩展。该谱涉及历代谱序、目录、世系图、考、先世文翰、序、说、传、记、寿叙、赋、诗、歌、词、挽诗、行状、赞、祭文、谱说、后骗子、领谱字号等诸项内容。
万历以后,字谱内容较前更为丰富。隆庆、万历年间歙县殷氏宗族“始为谱,其大凡有姓氏、本原、世系三考”,其后内容又扩充了“世德、规范、训典、文献、宅第、丘墓、遗文、遗迹、里社九考。”万历五年吕仕道纂《吕氏续修宗谱》涉及目录、书法、凡例,历代谱序、像赞、迁源源流、祠墓寺图表、里居图、姓氏来源、世系、世德、规范、训典、文献、遗事、丘墓、祭田、家规、修谱衔名、修谱总论、后序、跋等内容,该谱的列诸项涵盖了后世家谱所具备的基本内容。万历十八年程弘宾纂《歙西严镇百忍程氏本宗信谱》分谱序、谱例、纪源、传疑、传信、世系、世传、内传、保莹、遗翰、族约、续后十二篇。万历末年修成的休宁《曹氏统宗世谱》涉及序列、题辞、谱引、谱歌、谱诗、恩荣录、曹氏先达、迁徙源流、坟墓、后序、跋、谱约、支谱图、统宗谱系小叙、系图、事略、重修族谱叙略、家乘序、诗集序、遗嘱、跋等内容,名目纷繁,同万历以前所修宗谱相比,内容得到大规模扩展,几乎囊括了与宗族相关的所有事项。通过对上述明代宗谱的分析,我们不难发现,与宋元谱相比较,明谱新增加的内容主要体现为家规家训、祠产族产等宗族制度的相关方面,这也正是明代宗族制度较前有所发展的一个反映。
关于体例方面,明谱在因袭欧苏谱例的同时,增加了“志”“图”“考”“录”等项新内容,这是明修宗谱进一步吸收正史和地方志编纂学上成果的重要体现。据翟屯建先生研究,明代宗谱体例主要有三种形式:一是纲目体,以纲统目;二是条目体,一事一目,互助统辖;三是纲目与条目的混合体。且愈往后,这种混合体的方法在宗谱编纂中愈益得到广泛的运用。与明代以后所修宗谱相比较,有明一代所修宗谱的体例已比较完备,且大体上已定型,此后清、民国年间所纂宗谱在体例上基本承袭明谱,变更甚微。
一部完整的家谱基本哪些常见内容?
本文2023-11-02 12:04:14发表“资讯”栏目。
本文链接:https://www.lezaizhuan.com/article/394387.html