for font in fmanager.ttflist:
if str(font.weight) in ("400", "normal", "regular"):
fonts.setdefault(font.name, dict())["regular"] = True
if str(font.weight) in ("700", "bold"):
fonts.setdefault(font.name, dict())["bold"] = True
valid_fonts = {key for key, val in fonts.items() if len(val) == 2}
retval = sorted(list(valid_fonts.intersection(tk_font.families())))
return ["default"] + retval