如何在Xcode中标记“待办事项”评论?

时间:2013-06-04 08:27:50

标签: xcode

目前我正在开发基于iOS的图像处理任务。

问题:

我正在研究不同的模块。因此,如果我将来需要在模块中添加内容,我想将其标记为待办事项。 是否有其他宏或类似的东西在Xcode中添加待办事项?

我试过了:

目前我正在使用#pragma,如:

#pragma mark -
#pragma mark To do: Add the Image processing methods.

我得到了:

但它在方法部分中列出如下:

To Do

我真正需要的是:

问题是,它列在方法列表下,所以有时我忘了从部分中删除它也很难在整个源代码中找到它。 (搜索#pragma结果以显示整个列表)

技术细节:

我正在使用Xcode版本4.6.2。

10 个答案:

答案 0 :(得分:129)

// TODO: the thing todo

你是如何展示待办事项的。

答案 1 :(得分:125)

我明白了。

写评论如:

// TODO: Do something

会做的伎俩。

我有类似的东西:

TO DO


还有很多选项,例如

  1. // FIXME: Midhun

  2. // ???: Midhun

  3. // !!!: Midhun

  4. // MARK: Midhun

答案 2 :(得分:41)

使用

//TODO: some thing here

如果你想要做的就是查看下拉列表中的待办事项列表

如果您想要打扰,可以改为使用#warning标记:

#warning this will create a compiler warning.

当你构建应用程序时,你会得到一个编译器警告(一个黄色的三角形,而不是一个编译器错误),这是一个“在你面前”提醒你需要做的事情。

答案 3 :(得分:35)

使用下面的脚本,您可以看到所有必需的标签,例如警告。

  1. 在Project Navigator中选择您的项目
  2. 打开侧栏中的目标并转到“构建阶段”选项卡
  3. 点击“+”标志
  4. 选择“新建运行脚本构建阶段” Script adding
  5. 将以下脚本添加到“运行脚本” Ready Script 脚本:

    KEYWORDS="TODO:|FIXME:|DevTeam:|XXX:"
    find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($KEYWORDS).*\$" | perl -p -e "s/($KEYWORDS)/ warning: \$1/"
    
  6. enter image description here

    原始答案取自Here

    另一个替代方案是Xcode的XToDo插件。

答案 4 :(得分:6)

您可以使用XToDo插件

https://github.com/trawor/XToDo

use ctrl+t to trigger the List Window on/off

使用ctrl + t来打开/关闭列表窗口

Toolbar exemple

使用恶魔岛轻松安装 使用ctrl + t来打开/关闭列表窗口

答案 5 :(得分:6)

我从

开始
  

// TODO: Implement bubble sort

然后我加入了一个大型项目,有时我需要一个todo比WIP提交更长寿,所以为了区分我的同伴和我的同事,我用我的名字来区分我的待办事项:

  

// TODO: SM: Implement bubble sort

有时我想要更多的可见性,所以我开始在某些地方使用pragma警告。

  

#warning Implement bubble sort

有一天,我决定通过向我的cflags添加-Werror来打开硬模式。不幸的是,这使得pragma警告无用,因为它们阻止了编译。所以我回到使用// TODO:,直到杰夫纳多告诉我,我可以把

  

-Wno-error=#warnings

在我的cflags中,以免将pragma警告视为错误。所以现在#warning-Werror可以相互生活。

答案 6 :(得分:3)

我倾向于写完// TODO:Blah blah blah blah

然后我只做一个COMMAND-SHIFT-F并寻找“// TODO”。

使用文件大纲下拉列表只会显示当前文件的TODO,但我倾向于查看项目的TODO状态。

粗略的解决方案,但它确实有效。

答案 7 :(得分:1)

我将识别出的标记分为警告和错误以供自己使用,以为我可以在这里共享它:

KEYWORDS="STUB:|WARNING:|TODO:|FIXME:|DevTeam:|\?\?\?:" 
find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -not -path "${SRCROOT}/Pods/*" -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($KEYWORDS).*\$" | perl -p -e "s/($KEYWORDS)/1: warning: \$1/"

KEYWORDS="ERROR:|XXX:|\!\!\!:" 
find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -not -path "${SRCROOT}/Pods/*" -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($KEYWORDS).*\$" | perl -p -e "s/($KEYWORDS)/1: error: \$1/"
ERROR_OUTPUT=`find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -not -path "${SRCROOT}/Pods/*" -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($KEYWORDS).*\$" | perl -p -e "s/($KEYWORDS)/1: error: \$1/"`

exit ${#ERROR_OUTPUT}

答案 8 :(得分:0)

另一个简单的方法,如果你不想让方法列表栏混乱,在框外,是在//Todo:之类的评论中使用约定,当你想要集中处理它们时,只需选择查找导航器,匹配大小写并搜索//Todo:

即可

我更喜欢这个,因为我不喜欢看起来像spagetti-code的方法。是的,我经常有很多Todo:的;)

答案 9 :(得分:0)

#error

#warning

也用于C编程