Xcode插件-访问打开文件的主文本视图

Xcode插件-访问打开文件的主文本视图,xcode,macos,Xcode,Macos,我想构建一个Xcode插件,在打开的文件(主要是.h和.m文件)中标记一些文本 我正在尝试获取对主文本视图的引用 有什么方向吗?我想你已经运行了插件本身,只需要主编辑器 + (id)currentEditor { NSWindowController *currentWindowController = [[NSApp keyWindow] windowController]; if ([currentWindowController isKindOfClass:NSClassF

我想构建一个Xcode插件,在打开的文件(主要是.h和.m文件)中标记一些文本

我正在尝试获取对主文本视图的引用


有什么方向吗?

我想你已经运行了插件本身,只需要主编辑器

+ (id)currentEditor {
    NSWindowController *currentWindowController = [[NSApp keyWindow] windowController];
    if ([currentWindowController isKindOfClass:NSClassFromString(@"IDEWorkspaceWindowController")]) {
        id workspaceController = (IDEWorkspaceWindowController *)currentWindowController;
        id editorArea = [workspaceController editorArea];
        id editorContext = [editorArea lastActiveEditorContext];
        return [editorContext editor];
    }
    return nil;
}

+ (NSTextView *)currentSourceCodeTextView {
    if ([[self currentEditor] isKindOfClass:NSClassFromString(@"IDESourceCodeEditor")]) {
        id editor = [XCFXcodeFormatter currentEditor];
        return [editor textView];
    }

    if ([[self currentEditor] isKindOfClass:NSClassFromString(@"IDESourceCodeComparisonEditor")]) {
        id editor = [XCFXcodeFormatter currentEditor];
        return [editor keyTextView];
    }

    return nil;
}

这不是有点…宽吗?为什么?这是一项非常具体的任务。在Xcode中获取主要的活动文本视图?当您使用Xcode标题时,您可以用真实的接口定义替换ID(例如,通过转储获取)。谢谢@Dajj Djan,我会检查这一点,非常好,对于任何想知道这一点的人来说,哦,是的,对不起,我的不好。我为该回购协议提供了资金。很抱歉