我有一个问题,是否有可能得到铸造包,或文本包,语法颜色,就像你在xcode中看到的。不一定是相同的颜色,这没关系,但要让所有的变量类型和类似的东西都突出显示。
这方面的一个例子是,当我使用minted时,@synthesize, float, int,这些都高亮但是NSArray和NSMutableDictionary没有。
有人知道如何改变这个或可能添加更多的格式到包。我找过了,但没什么有用的。
提前感谢您的帮助!
不幸的是,这是不可能的。
minted
和texments
依赖于代码词法分析。词法分析相对容易和有效,但它只是解析源代码的第一阶段。
因此,词法分析可以识别关键字、字符串、注释和标识符,但不能区分标识符。为此,解析器需要解析整个代码基础(包含多个文件)并构建抽象语法树。
这更复杂、更耗时,而且通常对于语法着色来说效率太低。由于这个原因,大多数代码高亮显示工具不执行这样深入的分析。
Xcode需要完全解析代码(对于错误消息,调试和其他事情),并为每个项目维护解析信息的数据库。这使得它可以提供更复杂的代码高亮显示,并且仍然表现良好。你可能会注意到,如果你在Xcode中加载一个单独的代码文件(不是项目的一部分),也不会执行变量名的完整语法着色。