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自定义路由事件
WPF中的路由事件 as U know,和以前Windows消息事件区别不再多讲,这篇博文中,将首先回顾下WPF内置的路由事件的用法,然后在此基础上自定义一个路由事件. 1.WPF内置路由事件 W ...
- xshell上传文件到linux
z,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具. 优点就是不用再开一个sftp工具登录上去上传下载文件. sz:将选定的文件发送(send)到本地机器 rz:运行该 ...
- 匿名/局部内部类访问局部变量时,为什么局部变量必须加final
我们都知道方法中的匿名/局部内部类是能够访问同一个方法中的局部变量的,但是为什么局部变量要加上一个final呢? 首先我们来研究一下变量生命周期的问题,局部变量的生命周期是当该方法被调用时在栈中被创建 ...
- Java爬虫的实现
距离上一次写爬虫还是几年前了,那时候一直使用的是httpclient. 由于最近的项目又需要使用到爬虫,因此又重新查询了一些爬虫相关的框架,其中最合适的是WebMagic 官方文档:https://g ...
- mac上python3.x安装 图文详解
mac安装brew报错及解决办法 https://blog.csdn.net/zdp072/article/details/82563320 更改脚本中的资源链接,替换成中国科学技术大学的镜像 htt ...
- 2019-8-31-dotnet-如何调试某个文件是哪个代码创建
title author date CreateTime categories dotnet 如何调试某个文件是哪个代码创建 lindexi 2019-08-31 16:55:58 +0800 201 ...
- 如何提高英语听力(内容摘自NECCS)+ 乘法表
乘法表 print('\n'.join([' '.join(['%s*%s=%-2s'%(y,x,x*y) for y in range(1,x+1)]) for x in range(1,10)]) ...
- 跟我一起做一个vue的小项目(二)
这个vue项目是紧跟着之前的项目跟我一起做一个vue的小项目(一)来的. 我继续后面的开发(写的比较粗糙,边学边记录) 下图是header头部的样式 header组件内容如下 //header.vue ...
- Hackerrank--Divisibility of Power(Math)
题目链接 You are given an array A of size N. You are asked to answer Q queries. Each query is of the for ...
- [jnhs]教训之jsp页面无法用jstl取值的坑.真他妈的奇葩,实体类的属性名不能用大写
结果页面永远都是空 调试发现,数据正常的塞进去了 问题解决: https://zhidao.baidu.com/question/570584436.html 实体类的属性名,首字母不能大写,改成小写 ...