discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gnustep make on MacOSX


From: Wolfgang Lux
Subject: Re: gnustep make on MacOSX
Date: Fri, 16 Jul 2010 21:08:54 +0200

Andreas Höschler wrote:

Hi all,

I am preparing migration from MacOSX 10.2.8 (Power PC) to MacOSX 10.5.2 (Intel) and have problems building apps with gnustep make on this new platform. I have an app that is supposed to edit *.sproject files. I have Info-gnustep.plist and CustomInfo.plist with

...
NSTypes = (
     {
        NSName = "sproject";
        NSHumanReadableName = "sproject File";
        NSUnixExtensions = ("sproject");
        NSDOSExtensions = ("sproject");
        NSRole = Editor;
        NSIcon = "projfile.tiff";
      },
...

I have also tried to copy and adopt /Applications/TextEdit.app/ Contents/Info.plist to my /Applications/InterfaceBuilder/Contents/ Info.plist with no success. How can I make gnustep make to generate MacOSX apps that are recognized by Finder.app as editors for given document types (*.smib in my case)?

Replace
  NSTypes          -> CFBundleDocumentTypes
  NSName           -> CFBundleTypeName
  NSUnixExtensions -> CFBundleTypeExtensions
  NSRole           -> CFBundleTypeRole
  NSIcon           -> CFBundleTypeIconFile
There is no direct equivalent for NSHumanReadableName. Instead use InfoPlist.strings to provide an appropriate localization for CFBundleTypeName, e.g.,
  "sproject" = "sproject File";
in English.lproj/InfoPlist.strings,
 "sproject" = "sproject Datei";
in German.lproj/InfoPlist.strings. Also forget about NSDOSExtensions; there is no equivalent in OS X. The NSTypes keys were never officially supported by OS X and Apple apparently has dropped support for these legacy keys.

Also keep in mind that gnustep-make merges the contents of file XXXInfo.plist into the final Info.plist file, where XXX is the name of the application. So unless your application is called Custom, the contents of file CustomInfo.plist is just ignored.

Wolfgang





reply via email to

[Prev in Thread] Current Thread [Next in Thread]