xcode自动完成代码 Code Snippet Library
今天发现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的格式:
<#Code#>
};
block狂人自然不要错过。另一个就是forin了。
<#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 补充:
自定义的代码片段存放在:
感谢半块烧饼提醒。
xcode自动完成代码 Code Snippet Library的更多相关文章
- Xcode的代码片段快捷方式-Code Snippet Library(代码片段库)
最近换了新电脑,装上Xcode敲代码发现很多以前攒的Code Snippet忘记备份了,总结了一下Code Snippet的设置方法,且行且添加,慢慢积累吧. 如下图: Title - Code ...
- ios 显示代码块(show the code snippet library)
在项目的实际开发中,我们会重复的书写很多的代码,我经常是需要用到某一个功能,就从以前的项目中复制粘贴过来,很是麻烦 下面就为大家提供两种不错的方法, 一.宏定义,这个大家应该很熟悉,在这里就不做多的介 ...
- Code Snippet Library
你可以将自己常用的代码放到里面,给它命名,设置快捷键,以后想用这段代码的时候只要按快捷键,就会出现提示,直接将这段代码显示出来,十分高效. 比如我经常会用到一个动画:[UIView beginAnim ...
- iOS programming Code Snippet Library
iOS programming Code Snippet Library The freebie code comes from the code snippet library. 代码来自cod ...
- Xcode开发技巧之Code Snippets Library
http://blog.csdn.net/lin1986lin/article/details/21180007 目录(?)[-] 引言 什么是Code Snippets 如何新建Code Snipp ...
- 设置 Xcode 自动生成代码片段
一.什么是代码片段 当在Xcode中输入dowhile并回车后,Xcode会出现下图所示的提示代码: 这就是代码片段,目的是使程序员以最快的速度输入常用的代码片段,提高编程效率.该功能是从Xcode4 ...
- xcode自动生成代码片段
一.什么是代码片段 当在Xcode中输入dowhile并回车后,Xcode会出现下图所示的提示代码: 这就是代码片段,目的是使程序员以最快的速度输入常用的代码片段,提高编程效率.该功能是从Xcode4 ...
- 3、XCode: 如何添加自定义代码片段
我们经常会定义一些retain的property,而且大概每次我们都会像这样写: @property (nonatomic, retain) Type *name; 每次都要老老实实的把“@prope ...
- XCode: 如何添加自定义代码片段
转载自:http://rockonmycode.com/tips/xcode-code-snippets#more-185 我们经常会定义一些retain的property,而且大概每次我们都会像这样 ...
随机推荐
- WPF 导出Excel 导出图片
/// <summary> /// 导出Excel /// </summary> private void ExportExcel(DataTable ExcelDt) { / ...
- leetcode 238 & leetcode 152 & leetcode 228
lc238 Product of Array Except Self 遍历两次数组 用一个res[] 记录答案 1) 第一次,从左往右遍历 res[i] 记录0~i-1的乘积 2) 第二次,从右往左遍 ...
- 数据库顶会VLDB论文解读:阿里数据库智能参数优化的创新与实践
前言 一年一度的数据库领域顶级会议VLDB 2019于美国当地时间8月26日-8月30日在洛杉矶召开.在本届大会上,阿里云数据库产品团队多篇论文入选Research Track和Industrial ...
- 子类A继承父类B, A a = new A(); 则父类B构造函数、父类B静态代码块、父类B非静态代码块、子类A构造函数、子类A静态代码块、子类A非静态代码块 执行的先后顺序是
按照先后顺序: 1,静态先于非静态代码库执行(静态代码块随着类的加载而加载,初始化只执行一次) 2,父类先于子类 3,非静态代码块优于构造函数执行 所以执行顺序如下: 父类B静态代码块->子类A ...
- Python基础-列表、元组、字典、字符串(精简解析),全网最齐全。
一.列表 =====================================================1.列表的定义及格式: 列表是个有序的,可修改的,元素用逗号隔开,用中括号包围的序列 ...
- scikit-learn的基本使用
在机器学习和数据挖掘的应用中,scikit-learn是一个功能强大的python包.在数据量不是过大的情况下,可以解决大部分问题.学习使用scikit-learn的过程中,我自己也在补充着机器学习和 ...
- Redis源码解析:18Hiredis同步API和回复解析API代码解析
Redis的sentinel模式使用了Hiredis代码,Hiredis是redis数据库一个轻量级的C语言客户端库.它实现的向Redis发送命令的API函数redisCommand,使用方法类似于p ...
- Jquery 判断值是否存在于数组之内
var strArray=str.split(","); var fixed_init=function(v){ if($.inArray(v,strArray)==-1){ // ...
- 学习写Js的动画
说起前端,要说动画是最有乐子的东西了.玩好动画一定会很轻易的享受到前端的乐趣. 这里我不会讲述什么css3 的 transform animation keyframes,也不会讲述jquery的an ...
- WPF 利用HwndSource拦截Windows消息
WPF提供了一个HwndSource可以使你更快的实现处理Windows消息. 通过HwndSource.FromHwnd得到的HwndSource可以添加(AddHook)移除(Remove)Hoo ...