def find_descriptions(def_file, table_type):
    """
    Preprocesses the definitions file in order to enable some nice mouseover effects for the known column names.

    Parameters
    ----------
    def_file: SBtab.SBtabTable
        Definitions file as SBtab table object.
    table_type: str
        SBtab table type for which the descriptions shall be extracted.

    Returns: (dict, dict)
        Two dictionaries that link the column name to its description and to a Bool flag indicating if it
        is a shortname identifier possibly linking to another SBtab table.
    """
    col2description = {}
    col2link = {}
    for row in def_file.value_rows:
        if row[def_file.columns_dict['!IsPartOf']] == table_type:
            col2description[row[def_file.columns_dict['!ComponentName']]
                ] = row[def_file.columns_dict['!Description']]
            col2link['!' + row[def_file.columns_dict['!ComponentName']]] = row[
                def_file.columns_dict['!isShortname']]
    return col2description, col2link
