2012-01-29 30 views

回答

8

在Xcode中,当你的文件在编辑器中活跃的,你去编辑器菜单 - >语法着色 - > Objective-C的

这将适用于Objective-C的语法着色到一个文件中。无论其扩展名如何,都以纯文本文件为我工作。

这似乎为自动缩进工作也

+10

我在寻找的是一种自动语法高亮的方法。不是手动的。 – user1175914 2012-02-23 02:41:16

+0

这为我在我改变它的文件内自动语法高亮。或者你的意思是改变'Default for file type'语法突出显示,以便该类型的任何文件具有这种突出显示?如果是这样,我确实找到了这个解决方法...还没有测试:http://lists.apple.com/archives/xcode-users/2007/Dec/msg00679.html – pontidm 2012-02-24 10:15:18

25

的Xcode决定如何根据代表其用户界面的文件的文件的Uniform Type Identifier。据我所知,不可能为现有的UTI添加额外的文件扩展标签,但是您可以声明一个符合您要映射到的类型的新UTI。然后系统会将指定的文件扩展名与新的UTI相关联,并通过一致性Xcode和其他支持UTI的应用程序将文件识别为映射类型的源代码。

您可能想要考虑在哪里声明新的UTI。例如,如果这种类型的文件是由工具创建的,则该工具的捆绑包将是最合适的位置。在没有更好的替代方案的情况下,您可以创建一个存根应用程序包并在此声明新的UTI:

  1. 在Xcode中创建一个新的Cocoa应用程序项目。
  2. 在项目设置中,选择应用程序目标,然后选择信息选项卡。
  3. 创建一个新的导出的UTI。 UTI definition example
  4. 使用您控制的域的反向DNS表示法将标识符字段设置为唯一名称。例如,com.yourdomain.objective-c-source
  5. 将Conforms To字段设置为要映射到的UTI,例如public.objective-c-source。你可以通过浏览system-declared UTIs的列表或者在Xcode的Info.plist中导出的列表来找到它。
  6. 将扩展名字段设置为您想要与新UTI关联的逗号分隔列表。
  7. 按下回车键或将焦点移动到不同的字段,将更改提交到最后一个字段。
  8. 构建并运行应用程序以使用启动服务进行注册。
  9. 重新启动Xcode。

Xcode现在应该对具有指定扩展名的文件使用适当的语法高亮显示。

如果这不起作用,请检查构建的应用程序的Info.plist以确保所有预期信息都没有任何尾随空白。您还可以检查UTI已使用lsregister注册:

/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -dump 

搜索您的UTI的标识符的输出,并验证其存在和活跃。

+0

这工作!对于C++ .ipp文件,我使用'public.c-plus-plus-source'作为标识符名称。 – 2014-07-22 03:02:15

+0

This Works!我使用.ejs文件将其与HTML fule联系起来 – kamyFC 2015-04-03 13:29:37

+0

+1000对于.leaf Vapor文件扩展名也适用。 (符合 - > public.html) – 2017-02-04 07:15:53

10

的Xcode先后在“属性检查器” A“类型”字段(最左边的“管理工具”右侧边栏选项卡)在您的项目文件:

identity and type settings

正如你可以在上面看到,我设置我们的项目Fastfile被认为是Ruby脚本 - 尽管缺少预期的.rb扩展名。产生预期的语法高亮(与我的自定义颜色方案):

enter image description here

注:如果这只能将文件添加到您的项目(不是文件夹引用中)内:

fastlane group

这可能不是很理想,但Xcode中不能坚持中未明确在项目文件跟踪文件的属性。按照设计,文件夹没有Xcode项目中的内容条目,因为它是动态的。

+0

谢谢,这就是正是我所需要的 – Flar 2016-07-07 20:06:34

+0

谢谢Brian,这正是我所需要的,应该是被接受的答案。 – 2016-12-11 15:43:15

相关问题