是否有一个快捷方式在Xcode中做出块注释?

我写ANSI兼容的C代码,因此我不能使用行(/)评论。 我正在使用Xcode。 在Sublime Text和Eclipse中,我认为大多数其他的IDE都有单独的用于行注释和块注释的键盘快捷键( /**/ )。 但是,我没有看到在Xcode中 – 实际上,我甚至没有看到添加块注释的菜单选项。 Xcode中不支持吗? 如果是的话,这肯定会是一个蹩脚的决定。

试试命令 + / 。 这个对我有用。

所以,您只需突出显示您想要注释的代码块并按下这两个键即可。

现在有一个Xcode插件允许这个: CComment 。

安装这个最简单的方法是使用Xcode的惊人的Alcatraz插件pipe理器 。

编辑苹果公司可悲(和错误,恕我直言)退休Xcode 8的旧插件模型。新的插件系统是相当有限的,但应该允许像这样的插件的发展了。 对于有兴趣的人,请观看WWDC 2016会话414 。 另外,请为您想要编写或查看的插件提供针对API的雷达 。

更新:

由于我很懒,也没有完全实现我的解决scheme,所以我search了一下,发现了BlockComment for Xcode ,一个最近发布的插件( 2017年6月 )。 不要打扰我的解决scheme,这个插件工作得很好,我强烈推荐它。

原文答案:

上面的代码在Xcode 78上都没有工作,所以我:

  1. 使用AppleScript创buildAutomator服务
  2. 确保“输出replace选定的文本”被选中
  3. input以下代码:

     on run {input, parameters} return "/*\n" & (input as string) & "*/" end run 

在这里输入图像说明

现在,您可以通过Xcode – 服务菜单访问该服务,或者通过右键点击您想要评论的代码块,或者在系统偏好设置下给它一个快捷方式。

现在用xCode 8你可以这样做:

+ + /

自动生成文档评论。

来源: https : //twitter.com/felix_schwarz/status/774166330161233920

你可以很容易地分配这个,这里是一步一步解释。

1.)在你的xCode .m文件中键入以下内容,只要它是一个空白区域,你键入的内容并不重要。

 /* */ 

2.)突出显示两行代码,然后拖放到“代码段库面板”区域(位于“实用程序”面板的底部)。 如果你做得对,会出现一个浅蓝色的加号。

在这里输入图像说明

3)松开鼠标button后,会popup一个新窗口,并要求您添加名称,快捷方式等。 如图所示。 正如你所看到的,我添加了我的快捷方式//。 所以每次我想要一个块的评论我会input//。 希望这可以帮助

在这里输入图像说明

我修改了Nikola Milicevic的一些代码,所以如果代码已经被注释,它也会删除注释块:

 on run {input, parameters} repeat with anInput in input if "/*" is in anInput then set input to replaceText("/*", "", input as string) set input to replaceText("*/", "", input as string) return input exit repeat end if end repeat return "/*" & (input as string) & "*/" end run on replaceText(find, replace, textString) set prevTIDs to AppleScript's text item delimiters set AppleScript's text item delimiters to find set textString to text items of textString set AppleScript's text item delimiters to replace set textString to "" & textString set AppleScript's text item delimiters to prevTIDs return textString end replaceText 

希望这会帮助别人。 在这里输入图像说明

我设法得到这个工作,通过一个automator任务,并使用快捷键绑定到组合键Ctrl +选项+命令+ B。 我所要做的就是突出显示我想要在xcode中注释的代码,然后按上面的键,选定的文本被块注释掉,使用/ * … * /。

我使用折叠公平的代码,所以我想这个function的原因是我可以轻松地折叠一块评论的代码…代码评论通常的方式使用/ /不会折叠。

即时通讯不熟悉使用MAC自动提款机,但我只是按照下面的wwdcvideo文书

在WWDC 2012video会议402 – 使用Xcode(从6分钟左右开始)高效工作中,介绍了如何使用Mac OSX Automator添加服务来操作选定的文本。 video中显示的示例是使用shell命令sort和uniq删除选定文本中的重复项。 使用这种方法,你可以做同样的事情,但你input下面的命令,而不是他在video中做什么

awk'BEGIN {print“/ ”} {print $ 0} END {print“ /”}'

(注意在前面的行中有2个星号,由于某种原因没有显示出来……他们在下面的屏幕截图中显示出来,所以作为正确的命令input)

你最终应该像这样运行一个shell脚本

截图

对于任何给定的文本,这将会在注释分隔符之前和之后。

当你保存它,你应该得到选项来命名它(我称之为块注释),也分配一个键盘快捷键

那么你应该可以打开xcode,select一些文本,右键单击,上下文菜单,你给这个脚本的名字应该显示在底部附近

只需单击名称,脚本将运行并阻止评论选定的代码或使用您分配的键盘快捷键。

希望这可以帮助

在编辑用户脚本的xcode的帮助菜单之前有一个符号。 在注释部分的Un / Comment选项中更改my $ cCmt =“//”; 到我的$ cCmt =“#”; 或者不pipe你的IDE如何工作。 然后通过select行和命令+ /(这是我的xcode默认),你可以评论和取消注释选定的行。

更新:Xcode 8更新

现在用xcode 8你可以这样做:

+ + /

注意:下面的方法在xcode version => 8中不起作用

非常简单的步骤来添加块评论function的Mac OS X的任何编辑器

  1. 打开Automator
  2. select服务
  3. search运行Shell脚本并双击它

在textarea中添加下面的applescript

awk 'BEGIN{print "/*"}{print $0}END{print "*/"}'

苹果脚本块评论

  1. 将脚本保存为Block Comment

添加一个键盘快捷键

打开系统首选项>键盘>快捷方式 ,通过点击+添加新的快捷方式,同样的名字,即Block Comment ,你给第四步中的苹果脚本。 添加您的键盘快捷键 ,然后单击添加button。

新的键盘快捷键

现在,您应该可以在Xcode或其他编辑器中使用块注释,select一些文本,使用快捷键来阻止评论任何代码行或右键单击,上下文菜单和您给这个脚本的名字应该显示在附近底端。

在Macbook中,您可以使用shift + cmd + 7来注释以前突出显示的块

@Nikola Milicevic

这是缩进问题的屏幕截图。 这是非常小的,但奇怪的是,在你的例子中,它似乎工作得很好。

我还添加了我的Automator设置的屏幕截图…

谢谢

在这里输入图像说明

在这里输入图像说明

更新:

如果我稍微改变脚本到:

在这里输入图像说明

然后在XCode中select完整的行,我得到期望的结果:

在这里输入图像说明

在这里输入图像说明

如果你正在寻找一种方法来转换自动生成的评论从Add Documentation行动(可在cmdshift/下 ),你可能会发现它也很有用:

 function run(input, parameters) { var lines = input[0].split('\n'); var line1 = lines[0]; var prefixRe = /^( *)\/\/\/?(.*)/gm; var prefix = prefixRe.test(line1) ? line1.replace(prefixRe, "$1") : "" var result = prefix + "/*\n"; lines.forEach(function(line) { result += prefix + line.replace(prefixRe, "$2") + '\n'; }); result += '\n' + prefix + ' */'; return result; } 

像@Charles Robertson一样rest回答:

的Automator

服务

Cmd + Shift + 7将注释选定的行。

似乎已经有很多人回答了这个问题。

在Swift 3.0中,单行注释是把前面的双斜线向前翻:“//”; 多行放在“/ * …. * /”。

希望这可以帮助。