title: Converting to Precomposed Unicode String using Python-AppKit-ObjectiveC
body: <p>This document by Apple <a href="http://developer.apple.com/qa/qa2001/qa1235.html" rel="nofollow noreferrer">Technical Q&amp;A QA1235</a> describes a way to convert unicode strings from a composed to a decomposed version. Since I have a problem with  file names containing some characters (e.g. an accent grave), I'd like to try the conversion function</p>
  
  <p>void CFStringNormalize(CFMutableStringRef theString,
                         CFStringNormalizationForm theForm);</p>
  
  <p>I am using this with Python and the AppKit library. If i pass a Python String as an argument, I get:</p>
  
  <blockquote>
    <blockquote>
      <blockquote>
        <p>CoreFoundation.CFStringNormalize("abc",0)
        2009-04-27 21:00:54.314 Python[4519:613] <strong>* -[OC_PythonString _cfNormalize:]: unrecognized selector sent to instance 0x1f02510
        Traceback (most recent call last):
          File "", line 1, in 
        ValueError: NSInvalidArgumentException - *</strong> -[OC_PythonString _cfNormalize:]: unrecognized selector sent to instance 0x1f02510</p>
      </blockquote>
    </blockquote>
  </blockquote>
  
  <p>I suppose this is because a CFMutableStringRef is needed as an argument. How do I convert a Python String to CFMutableStringRef? </p>