手指在键盘上飞速跳跃,终端上的代码也随着飞舞,是的这确实很酷。优秀的程序员总是这么一群人,他们不拘于现状,不固步自封,他们喜欢新奇的事,他们把自己发挥到极致。

指法攻略

放下您钟爱的鼠标吧,在前行之中它终会成为你的负累!

简记:

  • command 用来导航,控制导航区域

  • alt 控制右边的一些东西,比如Assistant Editor,utility editor

  • Control 编辑区域上的Jump bar的一些交互

Command 1~ 8: 跳转到导航区的不同位置

Command 0 :显示/隐藏导航区

Command Alt 1~ 6:在不同检测器之间跳转

Control Command Alt 1~4: 在不同库之间跳转

Control 1~ 6: 在Jump bar的不同标签页的跳转。

Command Alt 0: 显示/关闭工具区

Command + Enter: 显示标准单窗口编辑器

Command Alt Enter:打开Assistant editor

Command Alt Shift Enter: 打开版本控制编辑器

Command + Shift + Y:显示/隐藏调试区

Command + Shift + J,可展示当前你在工程导航器中打开的文件

Cmd + . 方便地暂停运行iOS模拟器

查找

使用 Command + Shift + Option + F 来打开 Find navigator 的替换模式,如果你嫌麻烦,也可以使用 Command + Shift + F 来打开 Find navigator 的查找模式,如果你还嫌麻烦,使用 command + 3 来打开 Find navigator,然后开启查找或者替换模式,选择一种最适合自己的方式就好。

快速打开

Command + Shift + O可以直接跳转到某个方法定义或者指定的代码文件。喜欢使用键盘但不喜欢使用鼠标的人会大爱这个快捷方式。键入第一个字母即可快速切换至某个文件或者找到特定的代码行。比如键入vDL,最先展示的结果是带有viewDidLoad()名的函数。

帮助

Command + Shift + 0 (Zero)打开文档和参考,键入代码中的某个关键字,文档提供了一些额外的资源和示例工程。当然也可以在变量、类或者方法名上执行Option+双击名称操作,从而更方便地跳转至文档。

在类或者方法名上执行Option + Left点击操作使用内联帮助可帮开发者快速学习类或代码片段的用法。如果点击了弹出视图底部的参考链接,那么就可以方便地跳转到Xcode提供的文档中。

个人比较中意Option+双击名称操作,毕竟来的直接。

代码片段

Xcode的代码片段(Code Snippets)创建自定义的代码片段,当你重用这些代码片段时,会给你带来很大的方便。

常用代码块

1.copy:

1
@property (nonatomic,copy) NSString *<#string#>;

2.strong:

1
@property (nonatomic,strong) <#Class#> *<#object#>;

3.weak:

1
@property (nonatomic,weak) <#Class#> *<#object#>;

4.assign:

1
@property (nonatomic,assign) <#Class#> <#property#>;

5.delegate:

1
@property (nonatomic,weak) id<<#protocol#>> <#delegate#>;

6.block:

1
@property (nonatomic,copy) <#Block#> <#block#>;

7.mark:

1
#pragma mark <#mark#>

8.gmark:

1
#pragma mark - <#gmark#>

9.warning:

1
#warning <#message#>

10.ReUseCell:

1
2
3
4
5
6
static NSString *rid=<#rid#>;
<#Class#> *cell=[tableView dequeueReusableCellWithIdentifier:rid];
if(cell==nil){
  cell=[[<#Class#> alloc] initWithStyle:UITableViewCellStyleDefault      reuseIdentifier:rid];
}
return cell;

11.initObj:

1
2
3
4
if(self=[super init]){
    <#init#>
}
return self;

12.dataFill:

1
2
3
-(void)dataFill:(<#ModelClass#> *)<#model#>{
    <#code#>
}

13.MainGCD:

1
2
3
dispatch_async(dispatch_get_main_queue(), ^{
<#code#>
});

14.GlobalGCD:

1
2
3
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
<#code#>
});

15.AfterGCD:

1
2
3
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(<#delayInSeconds#> * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
<#code to be executed after a specified delay#>
});

16.OnceGCD:

1
2
3
4
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
<#code to be executed once#>
});

黑技能(给代码排序)

使用Spotlight来搜索Automator,并打开它;然后点击File->New,并选择服务(service)一项;在Actions筛选栏,输入shell,然后双击运行shell脚本;在新添加的服务的菜单栏上,检查Output replaces selected text;将脚本内容切换至sort | uniq;同时按下command + s,将服务保存为 Sort & Uniq。

详情可以参考之前的文档:《mac上自定义脚本命令

让您的Xcode键字如飞的更多相关文章

  1. 李洪强iOS开发之让您的Xcode键字如飞

    手指在键盘上飞速跳跃,终端上的代码也随着飞舞,是的这确实很酷.优秀的程序员总是这么一群人,他们不拘于现状,不固步自封,他们喜欢新奇的事,他们把自己发挥到极致. 指法攻略 放下您钟爱的鼠标吧,在前行之中 ...

  2. Object C学习笔记24-关键字总结

    学习Object C也有段时间了,学习的过程中涉及到了很多Object C中的关键字,本文总结一下所涉及到的关键字以及基本语法. 1.  #import #import <> 从syste ...

  3. 李洪强iOS开发之零基础学习iOS开发【02-C语言】03-关键字、标识符、注释

    上一讲中已经创建了第一个C语言程序,知道了C程序是由函数构成的,这讲继续学习C语言的一些基本语法.C语言属于一门高级语言,其实,所有的高级语言的基本语法组成部分都是一样的,只是表现形式不太一样.就好像 ...

  4. Object C学习笔记24-关键字总结(转)

    学习Object C也有段时间了,学习的过程中涉及到了很多Object C中的关键字,本文总结一下所涉及到的关键字以及基本语法. 1.  #import #import <> 从syste ...

  5. RobotFramework-Selenium2Library--关键字

    Selenium2Library用户关键字 *** Settings *** Library Selenium2Library *** Keywords *** Checkbox应该不被选择 [Arg ...

  6. C--关键字static

    static在C中主要有两个作用: 1.修饰变量  (局部变量.全局变量 都存在内存的静态区) 静态全局变量: 作用域仅限于变量被定义的文件中,其中文件即使用extern声明也无法使用它. 静态局部变 ...

  7. RobotFramework-关键字

    地址:https://github.com/NitorCreations/RobotFramework-EclipseIDE/tree/master/plugin/robot-indices Coll ...

  8. java--关键字和保留字

    关键字:Java的关键字对java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等. 保留字:为java预留的关键字.现在还没用到,但是在升级版本中可能作为关键字. 访问控制:pr ...

  9. JAVA 语 言 如 何 进 行 异 常 处 理 , 关 键 字 : throws,throw,try,catch,final

    throws是获取异常throw是抛出异常try是将会发生异常的语句括起来,从而进行异常的处理,catch是如果有异常就会执行他里面的语句,而finally不论是否有异常都会进行执行的语句.

随机推荐

  1. Hierarchyid(层次结构)数据类型

    实例表结构 CREATE TABLE [dbo].[Emp]( ,), ), [Org] [hierarchyid], ) INSERT INTO Emp(Name,Org) VALUES('吴xx' ...

  2. js实例--js滚动条缓慢滚动到顶部

    收集篇(已测)-- <html><head> <script type="text/javascript"> var currentPositi ...

  3. jQuery第五章

    jQuery对表单.表格的操作以及更多应用 一.表单应用 1.单行文本框应用 (1)获取和失去焦点改变样式 HTML代码如下: <form action="#" method ...

  4. POJ 2773 Happy 2006#素数筛选+容斥原理+二分

    http://poj.org/problem?id=2773 说实话这道题..一点都不Happy好吗 似乎还可以用欧拉函数来解这道题,但正好刚学了容斥原理和二分,就用这个解法吧. 题解:要求输出[1, ...

  5. hdu_2296_Ring(AC自动机+DP)

    题目链接:hdu_2296_Ring 题意: 有m个字符串,每个字符串有一个价值,现在让你组成一个不超过n长度的字符串,使得价值最大 题解: 很明显是在AC自动机上的DP,设dp[i][j]表示当前长 ...

  6. 2016腾讯"创益24小时"互联网公益创新大赛总结

    上周末参加了腾讯的"创益24小时"互联网公益大赛,和两个小伙伴(设计师Beryl和产品经理Benny)浴血奋战两天一夜,完成了一个叫"彩虹桥"的公益项目. (一 ...

  7. Storm源码分析--Nimbus-data

    nimbus-datastorm-core/backtype/storm/nimbus.clj (defn nimbus-data [conf inimbus] (let [forced-schedu ...

  8. 一步一步学EF系列【6、IOC 之AutoFac】

    前言 之前的前5篇作为EF方面的基础篇,后面我们将使用MVC+EF 并且使用IOC ,Repository,UnitOfWork,DbContext来整体来学习.因为后面要用到IOC,所以本篇先单独先 ...

  9. 在IE8中如何通过javascripts改变<style />中的内容?

    1.createStyleSheet() if(document.createStyleSheet){  var cssStyle=document.createStyleSheet();  //兼容 ...

  10. 可以有效防护XSS,sql注射,代码执行,文件包含等多种高危漏洞。

    http://bbs.aliyun.com/read/137391.html <?php /** * 云体检通用漏洞防护补丁v1.1 * 更新时间:2013-05-25 * 功能说明:防护XSS ...