Example #1
0
def _conv_output_record(record: OutlineRecord) -> list:
    assert isinstance(record, OutlineRecord)

    tmp = []

    tmp.append(_record_title_of(record))
    tmp.append(_record_outline_of(record))
    tmp.append(get_format_record_as_br())

    return tmp
Example #2
0
def format_status_info_data(infos_data: InfosData, is_comment: bool) -> list:
    assert isinstance(infos_data, InfosData)
    assert isinstance(is_comment, bool)

    logger.debug(msg.PROC_START.format(proc=PROC))

    tmp = []

    for record in infos_data.get_data():
        assert isinstance(record, InfoRecord)
        if record.type in INFO_TITLES:
            pass
        elif InfoType.DATA_TITLE is record.type:
            tmp.append(_record_as_data_title_from(record))
            tmp.append(get_format_record_as_br(2))
        elif InfoType.SPLITTER is record.type:
            tmp.append(get_breakline())
        elif InfoType.PERSON_STATE_INFO is record.type:
            ret = _record_as_person_state_info_from(record)
            if ret:
                tmp.append(ret)
                tmp.append(get_format_record_as_br())
        elif InfoType.STAGE_STATE_INFO is record.type:
            ret = _record_as_stage_state_info_from(record)
            if ret:
                tmp.append(ret)
                tmp.append(get_format_record_as_br())
        elif InfoType.COMMENT is record.type:
            if is_comment:
                pass
            else:
                continue
        else:
            continue

    eliminated = eliminated_empty_format_records_from(tmp)

    logger.debug(msg.PROC_SUCCESS.format(proc=PROC))

    return eliminated
Example #3
0
def format_scripts_charcounts_data(counts_data: CountsData) -> list:
    assert isinstance(counts_data, CountsData)

    _PROC = f"{PROC}: format data"
    logger.debug(msg.PROC_START.format(proc=_PROC))

    tmp = []
    current = ElmType.NONE

    tmp.append(get_breakline())
    tmp.append("# SCRIPT char counts:\n")

    for record in counts_data.get_data():
        assert isinstance(record, CountRecord)
        if current is not record.type:
            tmp.append(get_format_record_as_br())
            tmp.append(head_string_from_elm(record.type, 'count'))
            current = record.type
        tmp.append(conv_charcounts_from(record))
        tmp.append(get_format_record_as_br())

    logger.debug(msg.PROC_SUCCESS.format(proc=PROC))
    return tmp
Example #4
0
def format_infos_data(infos_data: InfosData, is_comment: bool) -> list:
    assert isinstance(infos_data, InfosData)
    assert isinstance(is_comment, bool)

    logger.debug(msg.PROC_START.format(proc=PROC))

    tmp = []

    for record in infos_data.get_data():
        assert isinstance(record, InfoRecord)
        if record.type in INFO_TITLES:
            pass
        elif InfoType.DATA_TITLE is record.type:
            tmp.append(_record_as_data_title_from(record))
            tmp.append(get_format_record_as_br(2))
        elif InfoType.SCENE_HEAD is record.type:
            pass
        elif InfoType.SCENE_TRANSITION is record.type:
            ret = _record_as_transition_from(record)
            if ret:
                tmp.append(ret)
                tmp.append(get_format_record_as_br())
        elif InfoType.FLAG_INFO is record.type:
            ret = _record_as_flag_info_from(record)
            if ret:
                tmp.append(ret)
                tmp.append(get_format_record_as_br())
        elif InfoType.PERSON_INFO is record.type:
            ret = _record_as_person_info_from(record)
            if ret:
                tmp.append(ret)
                tmp.append(get_format_record_as_br())
        elif InfoType.FASHION_INFO is record.type:
            ret = _record_as_fashion_info_from(record)
            if ret:
                tmp.append(ret)
                tmp.append(get_format_record_as_br())
        elif InfoType.KNOWLEDGE_INFO is record.type:
            ret = _record_as_knowledge_info_from(record)
            if ret:
                tmp.append(ret)
                tmp.append(get_format_record_as_br())
        elif InfoType.STAGE_INFO is record.type:
            ret = _record_as_stage_info_from(record)
            if ret:
                tmp.append(ret)
                tmp.append(get_format_record_as_br())
        elif InfoType.ITEM_INFO is record.type:
            ret = _record_as_item_info_from(record)
            if ret:
                tmp.append(ret)
                tmp.append(get_format_record_as_br())
        elif InfoType.COMMENT is record.type:
            if is_comment:
                pass
            else:
                continue
        elif InfoType.ACTION is record.type:
            pass
        elif InfoType.FLAG_FORESHADOW is record.type:
            pass
        elif InfoType.FLAG_PAYOFF is record.type:
            pass
        elif InfoType.SPLITTER is record.type:
            tmp.append(get_breakline())
        elif record.type in [InfoType.NONE, InfoType.SCENE_END]:
            pass
        else:
            logger.warning(
                msg.ERR_FAIL_INVALID_DATA.format(data=f"info type in {PROC}"))
            continue

    eliminated = eliminated_empty_format_records_from(tmp)

    logger.debug(msg.PROC_SUCCESS.format(proc=PROC))
    return eliminated
Example #5
0
def format_structs_data(structs_data: StructsData, is_comment: bool) -> list:
    assert isinstance(structs_data, StructsData)
    assert isinstance(is_comment, bool)

    logger.debug(msg.PROC_START.format(proc=PROC))

    tmp = []

    index = HeadIndex(0, 0, 0)

    for record in structs_data.get_data():
        assert isinstance(record, StructRecord)
        if record.type in TITLES:
            if StructType.TITLE_BOOK is record.type:
                ret = _record_as_title_from(record, index)
                if ret:
                    tmp.append(get_format_record_as_br())
                    tmp.append(get_breakline())
                    tmp.append(ret)
                    tmp.append(get_format_record_as_br(2))
            elif StructType.TITLE_CHAPTER is record.type:
                index.chapter += 1
                ret = _record_as_title_from(record, index)
                if ret:
                    tmp.append(get_format_record_as_br())
                    tmp.append(ret)
                    tmp.append(get_format_record_as_br(2))
            elif StructType.TITLE_EPISODE is record.type:
                index.episode += 1
                ret = _record_as_title_from(record, index)
                if ret:
                    tmp.append(get_format_record_as_br())
                    tmp.append(ret)
                    tmp.append(get_format_record_as_br(2))
            elif StructType.TITLE_SCENE is record.type:
                index.scene += 1
                ret = _record_as_title_from(record, index)
                if ret:
                    tmp.append(get_format_record_as_br())
                    tmp.append(ret)
                    tmp.append(get_format_record_as_br(2))
            else:
                tmp.append(_record_as_title_from(record))
        elif StructType.SCENE_DATA is record.type:
            tmp.append(_record_as_scene_data_from(record))
            tmp.append(get_format_record_as_br(2))
        elif StructType.PERSON_DATA is record.type:
            tmp.append(_record_as_person_info_from(record))
            tmp.append(get_format_record_as_br())
        elif StructType.ITEM_DATA is record.type:
            tmp.append(_record_as_item_info_from(record))
            tmp.append(get_format_record_as_br())
        elif StructType.EVENT_DATA is record.type:
            tmp.append(_record_as_event_info_from(record))
            tmp.append(get_format_record_as_br(2))
        elif StructType.COMMENT is record.type:
            if is_comment:
                tmp.append(get_format_record_as_comment(record.subject))
                tmp.append(get_format_record_as_br())
            else:
                continue
        elif StructType.ACTION is record.type:
            tmp.append(_record_as_action_from(record))
            tmp.append(get_format_record_as_br())
        elif StructType.NONE is record.type:
            continue
        elif StructType.SCENE_END is record.type:
            continue
        else:
            logger.warning(
                msg.ERR_FAIL_INVALID_DATA_WITH_DATA.format(
                    data=f"struct type in {PROC}"), record.type)
            continue

    eliminated = _eliminated_empty_record(tmp)

    logger.debug(msg.PROC_SUCCESS.format(proc=PROC))
    return eliminated