Xcode 4插件开发
我一直在寻找,但我找不到任何东西。 有谁知道在哪里可以find关于如何创buildXcode 4插件的文档?
据我所知,没有官方的方式来创buildXcode 4插件 (就像没有一个v3.x)。
这里是Xcode缺less插件支持的openradar:
请支持第三方通过公共插件API扩展Xcode。 Aperture,Visual Studio,Eclipse,TextMate和其他应用程序都受益于此function。 我希望看到更高级的重构,代码分析(Jetbrains认为的Resharper)和build模。
为Xcode 4提供插件API (rdar:// 8622025)
如果你想插件,请欺骗这个 !
编辑:刚才偶然发现了这个:
CédricLuthi :“ Xcode 4确实支持用户定义的插件 ,请参阅CLITool-InfoPlist中有关工作Xcode 4插件的示例,您只需在Info.plist中添加XC4Compatible(true)即可。
https://github.com/0xced/CLITool-InfoPlist
这就是说,这些GitHub回购可能也很方便:
-
Xcode4 Plugin-API文档 ( 链接 无效 )
-
Xcode插件模板 ( 链接已更新 )
更多mogenerator的Xmod插件可能是一个很好的起点。
(不是Xcode-4兼容,但上次我检查,虽然)
最好的学习方法是查看github插件代码(请参阅下面的长列表):
- 基本上它是一个插件包。
- 没有main.m没有MainMenu.xib
- 通过在info.plist中设置NSPrincipalClass加载第一类
- 在其init:您注册AppKit通知
- 查看代码示例
- 一些检查mainBundle应用程序ID,以确保这是XCode
- XCode编辑器窗口类是DVTSourceTextView
- 它是DVTSourceTextView的一个子类:NSTextView:NSText
- 因此您可以注册以侦听NSTextView或NSText的通知
- 如NSTextViewWillChangeNotifyingTextViewNotification
因为它不是一个官方的标准,我注意到每个样本加载的方式不同。
XCODE插件样本
通过searchgithub / web进行编译
'DVTSourceTextView'
这是Xcode编辑器窗口类的名称
要么
信息列表键
'XC4Compatible' https://github.com/omz/ColorSense-for-Xcode https://github.com/ciaran/xcode-bracket-matcher - uses a ruby parser run as pipe! https://github.com/joshaber/WTFXcode https://github.com/0xced/NoLastUpgradeCheck http://code.google.com/p/google-toolbox-for-mac/downloads/list see GTMXcode4Plugin https://github.com/DeepIT/XcodeColors https://github.com/0xced/CLITool-InfoPlist https://github.com/sap-production/xcode-ide-maven-integration https://github.com/ciaran/xcode-bracket-matcher
到达控制台的NSTextView
https://github.com/sap-production/xcode-ide-maven-integration
- (NSTextView *)findConsoleAndActivate { Class consoleTextViewClass = objc_getClass("IDEConsoleTextView"); NSTextView *console = (NSTextView *)[self findView:consoleTextViewClass inView:NSApplication.sharedApplication.mainWindow.contentView]; if (console) { NSWindow *window = NSApplication.sharedApplication.keyWindow; if ([window isKindOfClass:objc_getClass("IDEWorkspaceWindow")]) { if ([window.windowController isKindOfClass:NSClassFromString(@"IDEWorkspaceWindowController")]) { id editorArea = [window.windowController valueForKey:@"editorArea"]; [editorArea performSelector:@selector(activateConsole:) withObject:self]; } } } return console; }
看看这个新的插件: https : //github.com/sap-production/xcode-ide-maven-integration 。 也许你可以为你的插件派生一些概念。
昨天, ColorSense for Xcode 4在Github上发布。 由于代码非常紧凑,分布在三个class,我想你应该看看那里。
Xcode没有公共的插件API。
早期版本就是这种情况,Xcode 4也是如此。
看看这篇文章: Xcode 4:Interface Builder插件
不,Xcode不支持插件,或者你可以尝试iOS / MacOS的另一个IDE的AppCode,它支持插件开发。