Prevent foreign characters in filenames?
Cant you just use preg_replace("/[^A-Za-z0-9 ]/", '', $stuff) for this? Seems that will strip away anything that isnt a number or a letter from the english alphabet?

EDIT ---------
Challenge accepted ;)

public function modifyAssetFilename($filename){
    return preg_replace("/[^A-Za-z0-9-]/", '', $filename);
}


Something according to the above strips out all unwanted characters using the hook if you place it in a plugins main class file. The above preg_replace should also keep dashes e.t.c.

Another way you might be able to approach the sanitation of filenames is listening to the onBeforeSaveAsset method and then using craft()-&gt;assets-&gt;renameFile() once you have sanitized it. Not sure which one is better. Both should work.