def is_diacritic(char, strict=True):
	"""
	Check whether the character is a diacritic (as opposed to a letter or a
	suprasegmental).

	In strict mode return True only if the diacritic is part of the IPA spec.
	"""
	if char in chart.diacritics:
		return True

	if not strict:
		return (unicodedata.category(char) in ['Lm', 'Mn', 'Sk']) \
				and (not is_suprasegmental(char)) \
				and (not is_tie_bar(char)) \
				and (not 0xA700 <= ord(char) <= 0xA71F)

	return False
Check whether the character is a diacritic (as opposed to a letter or a
	suprasegmental).

	In strict mode return True only if the diacritic is part of the IPA spec.