今天发现Xcode里一个好东西:代码片段库

你可以将自己常用的代码放到里面,给它命名,设置快捷键,以后想用这段代码的时候只要按快捷键,就会出现提示,直接将这段代码显示出来,十分高效。



比如我经常会用到一个动画:

[UIView beginAnimations:@"EaseIn" context:nil];

[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];

[UIView setAnimationDuration:0.5];

[UIView commitAnimations];



每次使用这个动画的时候,就会重复写上这么几行代码。本人比较懒,每次都去之前的项目里Copy过来,不喜欢自己写,有了这个Code Snippet Library就方便多了。

在菜单栏中选择view -> Utilities -> Show Code Snippet Library,Xcode右下角就会出现



里面已经内置了一些代码段,不过很少我能用的到的。我想添加一些我常用的代码段。

在编辑器中选中上面的代码段,直接拖到Code Snippet Library里,在列表最后一行就多了一项。

双击或者右键单击此行,显示该项所表示的代码段





点击左下角“Edit”按钮进行编辑





这里面有多个属性可以编辑,最主要的两项:标题和快捷键,决定了你用什么方式找到它。比如我定义,点快捷键V时,就会出现此段名为“ViewAnimations”的提示,如下图。





选择“V - ViewAnimations”这一项,整段代码就显示出来了,是不是很方便?

所谓自动完成功能就是自动完成喽。真是废话,哈哈!自动完成包括两种含义吧,一种是输入字母的时候可以动态弹出一个列表,然后通过选择,提高输入效率,这种好像叫代码提示(Code sense?);另一种就是输入几个字母的时候一回车,呼的一下出来一串儿东西(Code Snippet?),当然了,肯定不会乱出,都是你事先定义好的。记的这个功能在vim里叫作map,而我写php的时候最常用的一个map就是通过ctrl+d输入var_dump。

ok,还是说咱的xcode吧。君不见,当你输入for的时候会自动弹出下面的东东:



是不是觉得很神奇,好吧,你可能都已经习惯了,都懒的想为嘛会这样了。其实在xcode里,这是个叫作“Code Snippet”(代码片段)的东东。系统中已经有了一个“Code Snippet Library”,秘密都在那里。



上面的一堆库里,个人觉得有用的就两个,一个是inlineblock,回车以后会自动输入block的格式:

  <#Return Type#>(^<#Block Name#>)(<#Parameter Types#>) = ^(<#Parameters#>) {

    <#Code#>

  };



block狂人自然不要错过。另一个就是forin了。

  for (<#type *object#> in <#collection#>) {

    <#statements#>

  }



会自动输入类似php里的foreach语法,好吧,我承认,我原来一直都是用for然后回车,然后再自已修改里面的循环条件,囧一个~

到这里,我希望你对这个玩意儿已经感兴趣了,如果是的话,那咱继续,下面是怎么定义自已的语法。举个啥例子呢,如果你关心本博客的话,你肯定记得上一篇博客《关于查看自已写的方法的“描述”(AppleDoc)》里面有提到注释的格式,你不会真想把格式背下来吧?还是交给xcode来完成吧。设置方法很简单,在xcode里随便打开一个文件,输入

/**

 <#description#>

 @param <#parameter#>

 @returns <#retval#>

 @exception <#throws#>

 */

然后全选,然后鼠标在选中区域



左键按住不动,让选中的文本处于可拖动状态,然后拖向“Code Snippet Library”正常的话会如下图:



图上解释的基本清楚了,用法很简单了,当你以后输入doc的时候会自动提示的:



基本就是这个样子喽,最后说一下Xcode的版本,我的版本是xcode4.5.2,不过个人觉得的上面的功能在xcode4以后应该都是可以用的,如果你用的版本没有这样的功能,那么还等什么,升级撒,功欲善其事,必先利其器嘛。

2012.12.13 补充:

自定义的代码片段存放在:

~/Library/Developer/Xcode/UserData/CodeSnippets xcode

感谢半块烧饼提醒。

xcode自动完成代码 Code Snippet Library的更多相关文章

  1. Xcode的代码片段快捷方式-Code Snippet Library(代码片段库)

    最近换了新电脑,装上Xcode敲代码发现很多以前攒的Code Snippet忘记备份了,总结了一下Code Snippet的设置方法,且行且添加,慢慢积累吧. 如下图:   Title - Code ...

  2. ios 显示代码块(show the code snippet library)

    在项目的实际开发中,我们会重复的书写很多的代码,我经常是需要用到某一个功能,就从以前的项目中复制粘贴过来,很是麻烦 下面就为大家提供两种不错的方法, 一.宏定义,这个大家应该很熟悉,在这里就不做多的介 ...

  3. Code Snippet Library

    你可以将自己常用的代码放到里面,给它命名,设置快捷键,以后想用这段代码的时候只要按快捷键,就会出现提示,直接将这段代码显示出来,十分高效. 比如我经常会用到一个动画:[UIView beginAnim ...

  4. iOS programming Code Snippet Library

    iOS programming  Code Snippet Library  The freebie code comes from the code snippet library. 代码来自cod ...

  5. Xcode开发技巧之Code Snippets Library

    http://blog.csdn.net/lin1986lin/article/details/21180007 目录(?)[-] 引言 什么是Code Snippets 如何新建Code Snipp ...

  6. 设置 Xcode 自动生成代码片段

    一.什么是代码片段 当在Xcode中输入dowhile并回车后,Xcode会出现下图所示的提示代码: 这就是代码片段,目的是使程序员以最快的速度输入常用的代码片段,提高编程效率.该功能是从Xcode4 ...

  7. xcode自动生成代码片段

    一.什么是代码片段 当在Xcode中输入dowhile并回车后,Xcode会出现下图所示的提示代码: 这就是代码片段,目的是使程序员以最快的速度输入常用的代码片段,提高编程效率.该功能是从Xcode4 ...

  8. 3、XCode: 如何添加自定义代码片段

    我们经常会定义一些retain的property,而且大概每次我们都会像这样写: @property (nonatomic, retain) Type *name; 每次都要老老实实的把“@prope ...

  9. XCode: 如何添加自定义代码片段

    转载自:http://rockonmycode.com/tips/xcode-code-snippets#more-185 我们经常会定义一些retain的property,而且大概每次我们都会像这样 ...

随机推荐

  1. Create STKNetDiskC Instance Error

    关于Create STKNetDiskC Instance Error错误的解决方法 这个错误可能出现在: AM8 附件直接存网盘的时候 报错 解决方法步骤如下: 在出现该错误的机器上,先将AM及 m ...

  2. object and namespace

    http://effbot.org/zone/python-objects.htm 几点总结: (1) 类的基本属性 . id, returned by id(obj) . type, returne ...

  3. 【NOIP2018模拟11.01】树

    题目 描述 题目大意 维护一个序列,支持三种操作: 1.修改一段区间,将这段区间内的所有数都andandand一个数. 2.询问区间和. 3.询问区间两两相加的平方和. N≤10000N\leq 10 ...

  4. Linux下IP修改后重启服务器 oralce 出错(监听无法启动)

    针对linux下修改IP导致的Oracle不能启动问题的解决 主要修改/etc/hosts配置文件.修改前配置: # Do not remove the following line, or vari ...

  5. 让pandoc输出pdf时支持中文

    主机环境为:Ubuntu 12.04 LTS.对于RH系列,yum安装包的名称可能会有不同,不过yum联想能力比较强,应该不是问题. 安装pandoc,安装tex-live sudo apt-get ...

  6. Newtonsoft.json 二次引用出错解决办法

    一.一般在C# 项目中二次引用会出现如下错误: 解决办法:用编辑器打开项目下的文件(*.csproj),可以找到在这个文件中,Newtonsoft.Json的引用,删掉引用,然后在项目中重新引用就可以 ...

  7. HDU 3086 马拉车模板

    模板,但是对这个算法还是不太清楚,真实不明觉厉.... #include <iostream> #include <cstdio> #include <string.h& ...

  8. 【html、CSS、javascript-12】jquery-效果

    一.jQuery 效果- 隐藏和显示 通过 jQuery,您可以使用 hide() 和 show() 方法来隐藏和显示 HTML 元素: $("#hide").click(func ...

  9. TZ_15Spring-Cloud_Eureka-Ribbon-Hystix-Feign-Zuul微服务整合

    1.一个微服务框架的基本流程 2.Eureka                                   --Feign-Zuul Eureka:就是服务注册中心(可以是一个集群),对外暴露 ...

  10. 【笔记】LR11中关联设置

    LR中关联建议都手动进行,自动不好用,也容易出错. 在LR中我们什么要做关联:1.关联解决的是动态数据的参数化.2.关联的数据一定是服务器响应的数据.3.服务器响应过来的数据在后面的服务还要使用. 手 ...