我有一些代码注释如下:
/**
How to use this method.
@discussion To use it, do something like the following
id hook = [[STDeallocHook alloc] initWithBlock:^{
// Do something when 'hook' is dealloced
}];
*/因此,代码示例缩进了4个空格。当我用appledoc编译docset时,它会正确编译,并将代码显示为我生成的API引用中的代码。但是,回到XCode (在这里,appledoc为doco中的问题创建警告),我得到了警告:
Invalid [[STDeallocHook alloc] reference found hear STDeallocHook.h@16, unknown object: [STDeallocHook !我认为正在发生的事情是appledoc正在寻找代码块中的减价链接。
我怎样才能阻止这个警告出现呢?
发布于 2015-09-06 06:56:22
我也没能阻止它。它看起来像是一个自2011年以来已知的臭虫,但它仍然是坏的。
有趣的是,我不是什么都懂的。在一个大型代码示例中,我只会得到其中的几个.还没弄清楚它是怎么决定让我悲伤的.
解决办法
这是围绕警告工作的,在生成的文档中看起来很好,但是看起来像纯文本中的垃圾:用HTML转义代码[替换前面的[。
未来修正
据说,神话版本3已经解决了它,但我找不到任何提及埃塔为它。"3.0exp1“支行从2012年3月开始,"3.0dev“支行从2014年10月开始。
如果你既有时间又有兴趣,也许你可以看到它是如何修正的,并自己修补它(尽管从那以后,代码库显然已经改变了一吨)。
我的尝试
我对这个答案感到不满意,所以,我回去看了看源代码。第一次出现在那个密码里。很难驾驭..。而且没有一个类是文档化的,这一点我觉得很奇怪,特别是对于文档工具。
不管怎么说,我想我知道为什么我有时只收到警告。解析器将所有下划线视为格式标记。因此,如果它在文本的“块”中找到其中的两个,就会将它们分割开来。由于我在had类别文档上测试的代码,只有在每个“块”中遇到的最后一个代码引发了警告.因为其他人都被当作斜体.然后就被忽视了。
而且,如果代码块被标记为.
@code
[self wjh_doSomething];
@endcode或
自wjh_doSomething;
或
~~~
[self wjh_doSomething];
~~~第一种在文档块中很常见,后两种在标记中很常见。
这是一次黑客攻击,但似乎奏效了。我发了个公关,在这里可以找到。谁知道它是否会被接受,但如果你愿意的话,你可以自己尝试一下。
我想我至少会在当地使用它,因为它为我清除了一大堆警告.我可以试着重新整理我所有的文档来启动。
编辑
好吧,我想我应该先去看看公开的PRs。似乎有一个公共关系已经坐在那里处理同样的问题,这个问题从五月起就一直存在。这会帮我节省时间..。不过,用它做实验有点有趣;-)
你也许想用那个..。似乎更简单。更简单是更好,但我没有使用它,我不确定它完全忽略了块,但他似乎已经平息了他的补丁警告。
它不支持@code/@endcode,这是我很高兴拥有的。
https://stackoverflow.com/questions/31826216
复制相似问题