I use this transform chain for asciifying filenames (ridiculous as it is, in 2019 we still can't sync unicode filenames between different OSs):
uconv -x ':: Any-Latin; :: Latin-ASCII; [:^ASCII:] > \_'
Explanation: Any-Latin
Transliterates from non-latin scripts to latin script (e.g. "γραφὴν" --> "graphḕn"). Latin-ASCII
Tries to asciify characters as much as possible by discarding accents, splitting ligatures, replacing Unicode quotes with regular quotes, © --> (C), etc. [:^ASCII:] > \_
Replaces any remaining non-ASCII characters with an underscore.