static void risout_write( fields *f, FILE *fp, param *p, unsigned long refnum ) { int type; type = get_type( f, p ); output_type( fp, type, p ); output_allpeople( fp, f, type ); output_date( fp, f ); output_alltitles( fp, f, type ); output_pages( fp, f ); output_easy( fp, f, "VOLUME", "VL", LEVEL_ANY ); output_easy( fp, f, "ISSUE", "IS", LEVEL_ANY ); output_easy( fp, f, "NUMBER", "IS", LEVEL_ANY ); output_easy( fp, f, "EDITION", "ET", LEVEL_ANY ); output_easy( fp, f, "NUMVOLUMES", "NV", LEVEL_ANY ); output_easy( fp, f, "AUTHORADDRESS", "AD", LEVEL_ANY ); output_easy( fp, f, "PUBLISHER", "PB", LEVEL_ANY ); output_easy( fp, f, "DEGREEGRANTOR", "PB", LEVEL_ANY ); output_easy( fp, f, "DEGREEGRANTOR:ASIS", "PB", LEVEL_ANY ); output_easy( fp, f, "DEGREEGRANTOR:CORP", "PB", LEVEL_ANY ); output_easy( fp, f, "ADDRESS", "CY", LEVEL_ANY ); output_keywords( fp, f ); output_easy( fp, f, "ABSTRACT", "AB", LEVEL_ANY ); output_easy( fp, f, "CALLNUMBER", "CN", LEVEL_ANY ); output_easy( fp, f, "ISSN", "SN", LEVEL_ANY ); output_easy( fp, f, "ISBN", "SN", LEVEL_ANY ); output_easyall( fp, f, "URL", "UR", LEVEL_ANY ); output_easyall( fp, f, "DOI", "DO", LEVEL_ANY ); output_file( fp, f, "FILEATTACH", "L1", LEVEL_ANY ); output_file( fp, f, "FIGATTACH", "L4", LEVEL_ANY ); output_easy( fp, f, "CAPTION", "CA", LEVEL_ANY ); output_pmid( fp, f ); output_pmc( fp, f ); output_arxiv( fp, f ); output_jstor( fp, f ); output_easy( fp, f, "LANGUAGE", "LA", LEVEL_ANY ); output_easy( fp, f, "NOTES", "N1", LEVEL_ANY ); output_easy( fp, f, "REFNUM", "ID", LEVEL_ANY ); output_thesishint( fp, type ); fprintf( fp, "ER - \n" ); fflush( fp ); }
static void endout_write( fields *info, FILE *fp, param *p, unsigned long refnum ) { int type, status; fields_clearused( info ); type = get_type( info, p, refnum ); output_type( fp, type, p ); status = output_title( fp, info, "TITLE", "SUBTITLE", "%T", LEVEL_MAIN ); if ( status==0 ) output_title( fp, info, "SHORTTITLE", "SHORTSUBTITLE", "%T", LEVEL_MAIN ); else output_title( fp, info, "SHORTTITLE", "SHORTSUBTITLE", "%!", LEVEL_MAIN ); output_people( fp, info, "AUTHOR", "%A", LEVEL_MAIN ); output_people( fp, info, "EDITOR", "%E", LEVEL_MAIN ); if ( type==TYPE_ARTICLE || type==TYPE_MAGARTICLE || type==TYPE_ELECTRONICARTICLE || type==TYPE_NEWSARTICLE ) output_people( fp, info, "EDITOR", "%E", LEVEL_HOST ); else if ( type==TYPE_INBOOK || type==TYPE_INPROCEEDINGS ) { output_people( fp, info, "EDITOR", "%E", LEVEL_HOST ); } else { output_people( fp, info, "EDITOR", "%Y", LEVEL_HOST ); } output_people( fp, info, "TRANSLATOR", "%H", LEVEL_ANY ); output_people( fp, info, "AUTHOR", "%Y", LEVEL_SERIES ); output_people( fp, info, "EDITOR", "%Y", LEVEL_SERIES ); if ( type==TYPE_CASE ) output_easy( fp, info, "AUTHOR:CORP", "%I", LEVEL_MAIN ); else if ( type==TYPE_HEARING ) output_easyall( fp, info, "AUTHOR:CORP", "%S", LEVEL_MAIN ); else if ( type==TYPE_NEWSARTICLE ) output_people( fp, info, "REPORTER", "%A", LEVEL_MAIN ); else if ( type==TYPE_COMMUNICATION ) output_people( fp, info, "RECIPIENT", "%E", LEVEL_ANY ); else { output_easyall( fp, info, "AUTHOR:CORP", "%A", LEVEL_MAIN ); output_easyall( fp, info, "AUTHOR:ASIS", "%A", LEVEL_MAIN ); output_easyall( fp, info, "EDITOR:CORP", "%E", LEVEL_ANY ); output_easyall( fp, info, "EDITOR:ASIS", "%E", LEVEL_ANY ); output_easyall( fp, info, "TRANSLATOR:CORP", "%H", LEVEL_ANY ); output_easyall( fp, info, "TRANSLATOR:ASIS", "%H", LEVEL_ANY ); } if ( type==TYPE_ARTICLE || type==TYPE_MAGARTICLE || type==TYPE_ELECTRONICARTICLE || type==TYPE_NEWSARTICLE ) { status = output_title( fp, info, "TITLE", "SUBTITLE", "%J", LEVEL_HOST ); if ( status==0 ) status = output_title( fp, info, "SHORTTITLE", "SHORTSUBTITLE", "%J", LEVEL_HOST ); } else if ( type==TYPE_INBOOK || type==TYPE_INPROCEEDINGS ) { status = output_title( fp, info, "TITLE", "SUBTITLE", "%B", LEVEL_HOST ); if ( status==0 ) output_title( fp, info, "SHORTTITLE", "SHORTSUBTITLE", "%B", LEVEL_HOST ); } else { status = output_title( fp, info, "TITLE", "SUBTITLE", "%S", LEVEL_HOST ); if ( status==0 ) output_title( fp, info, "SHORTTITLE", "SHORTSUBTITLE", "%S", LEVEL_HOST ); } if ( type!=TYPE_CASE && type!=TYPE_HEARING ) { output_title( fp, info, "TITLE", "SUBTITLE", "%S", LEVEL_SERIES ); } output_year( fp, info, LEVEL_ANY ); output_monthday( fp, info, LEVEL_ANY ); output_easy( fp, info, "VOLUME", "%V", LEVEL_ANY ); output_easy( fp, info, "ISSUE", "%N", LEVEL_ANY ); output_easy( fp, info, "NUMBER", "%N", LEVEL_ANY ); output_easy( fp, info, "EDITION", "%7", LEVEL_ANY ); output_easy( fp, info, "PUBLISHER", "%I", LEVEL_ANY ); output_easy( fp, info, "ADDRESS", "%C", LEVEL_ANY ); output_easy( fp, info, "DEGREEGRANTOR", "%C", LEVEL_ANY ); output_easy( fp, info, "DEGREEGRANTOR:CORP", "%C", LEVEL_ANY ); output_easy( fp, info, "DEGREEGRANTOR:ASIS", "%C", LEVEL_ANY ); output_easy( fp, info, "SERIALNUMBER", "%@", LEVEL_ANY ); output_easy( fp, info, "ISSN", "%@", LEVEL_ANY ); output_easy( fp, info, "ISBN", "%@", LEVEL_ANY ); output_easy( fp, info, "LANGUAGE", "%G", LEVEL_ANY ); output_easy( fp, info, "REFNUM", "%F", LEVEL_ANY ); output_easyall( fp, info, "NOTES", "%O", LEVEL_ANY ); output_easy( fp, info, "ABSTRACT", "%X", LEVEL_ANY ); output_easy( fp, info, "CLASSIFICATION", "%L", LEVEL_ANY ); output_easyall( fp, info, "KEYWORD", "%K", LEVEL_ANY ); output_easyall( fp, info, "NGENRE", "%9", LEVEL_ANY ); output_thesishint( fp, type ); output_easyall( fp, info, "DOI", "%R", LEVEL_ANY ); output_easyall( fp, info, "URL", "%U", LEVEL_ANY ); output_easyall( fp, info, "FILEATTACH", "%U", LEVEL_ANY ); output_doi( fp, info ); output_pmid( fp, info ); output_pmc( fp, info ); output_arxiv( fp, info ); output_jstor( fp, info ); output_pages( fp, info ); fprintf( fp, "\n" ); fflush( fp ); }