title: Create (sane/safe) filename from any (unsafe) string
body: <p>I want to create a sane/safe filename (i.e. somewhat readable, no &quot;strange&quot; characters, etc.) from some random Unicode string (which might contain just anything).</p>
  <p>(It doesn't matter for me whether the function is Cocoa, ObjC, Python, etc.)</p>
  <hr />
  <p>Of course, there might be infinite many characters which might be strange. Thus, it is not really a solution to have a blacklist and to add more and more to that list over the time.</p>
  <p>I could have a whitelist. However, I don't really know how to define it. <code>[a-zA-Z0-9 .]</code> is a start but I also want to accept unicode chars which can be displayed in a normal way.</p>