有可能"得到"你在m文件中编写代码时的h文件

时间:2014-03-06 10:18:34

标签: xcode plugins filepath

我正在尝试制作一个插件,我的想法是在你写完像

之后

- (无效)thisMethodIsSomethingIWantToBeExposed

然后我可以按下alt + c之类的keycombo,然后它会写出.h文件中当前行的内容,这样我就不必将其粘贴到自己身上了。

任何人都知道如何获取我正在编写的文件的路径?然后我可以将m更改为h,然后我只需要弄清楚如何写入h文件,但这是另一回事。

1 个答案:

答案 0 :(得分:1)

我找到了一个解决方案,但我认为它可能有点hacky。

在我的xcode插件中,我把它放在我的init

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(notificationListener:) name:nil object:nil];

我做了一个名为

的方法
-(void)notificationListener:(NSNotification *)notification{
if (![notification.name isKindOfClass:[NSString class]]) {

    if ([[notification name] isEqualToString:@"IDESourceCodeDocumentDidUpdateSourceModelNotification"] ) {

        NSString *path =  [ NSString stringWithFormat :@"%@",notification.object ];
        path = [path substringFromIndex:49];


    }

你会得到很多通知,我花了一段时间才找到一条包含路径信息的通知,但是这个有通知。

相同的方法
NSLog(@"Not recv: %@", notification.name); 

将写出所有通知的所有名称。