import io


def parse_aliases_file(file_path):
    """
    Parses an emoji aliases text file.
    Returns a list of tuples in the form ('src_name', 'dst_name').
    """
    with io.open(file_path, encoding='utf-8') as fp:
        lines = fp.read().splitlines()

    aliases_list = []
    for line in lines:
        line = line.strip()
        if not line or line.startswith('#'):
            continue
        # strip in-line comments
        comment_idx = line.find('#')
        if comment_idx > 0:
            line = line[:comment_idx].strip()
        aliases_list.append(tuple(line.split(';')))
    return aliases_list