武装你的Xcode(三)- 代码块Snippets

1、认识 Xcode 代码块

2、创建 Xcode 代码块

当然,代码块功能之所以强大,是因为你可以创建自定义的代码块。
创建代码块的过程:用户拖拽选中文本生成“剪切文本”。看下实际操作就很好理解:

用户将自定义的代码块添加到库里面后,可以双击列表中的块去编辑。


  • Title 标题 - 块的名字(出现在代码补全和代码块库列表中)
  • Summary 简介 - 简单描述下它是干嘛的(只出现在代码块库列表中)
  • Platform 平台 - 限制可访问该代码块的平台。OS X,iOS,或者(“全部”)
  • Language 语言 - 限制可访问该代码块的语言。常见的有 C,Objective-C,C++,或 Objective-C++
  • Completion Shortcut 输入码 - 快捷输入码。常用块的输入码应该非常简练。Xcode 不会警告冲突 / 重复的输入码,所以一定要确保新添加的不要和已有的冲突。
  • Completion Scopes 有效范围 - 限制可访问该代码块的范围。if / else语句的自动补全应该只在方法或者函数的实现中有效。下面这些选项可以任意组合:
    • 1、All 全部
    • 2、Class Implementation 类实现,范围为.m文件,
      @implementation - @end的范围
    • 3、Class Interface Methods 类接口方法,范围为.h文件的方法,@interface - @end的范围,指的是定义的方法
    • 4、Class Interface Variables 类接口变量,范围为.h文件的属性,@interface - @end的范围
    • 5、Code Expression 代码表达式,Method方法的一部分
    • 6、Function or Method 函数或方法,指的是调用的方法,区别于2和3(定义的方法)
    • 7、Preprocessor Directive 预处理指令
    • 8、String or Comment 字符串或注释
    • 9、Top Level 最高层

3、存储地址

~/Library/Developer/Xcode/UserData/CodeSnippets/
目录存放了所有 Xcode 代码段的文件表示

4、占位符

在你使用其他代码块时你可能已经注意到了这些占位符:



在 Xcode 中,占位符使用 <# 和 #>

5、常用代码块(第三方代码块)

  • 你可以在 Xcode-Snippets 找到一些好用的代码块,包括(文件名就是代码块快捷键)
    - tableView数据源方法
    - tableView代理方法
    - 单例
    - init方法

  • 下载此项目XcodeCodeSnippets,把后缀为.codesnippet拖入代码块存储地址,按标题顺序分为几个大类:

    -  动画 Animation
    -  类扩展 Class Extension
    -  Blocks
    -  调试打印 DebugLog   
    -  GCD and queues(Async)
    -  通知 Notifications
    -  日期 Formatting
    -  方法分组 Section Header #pragma 
    -  表格类代理方法 UITableView or UICollectionView
    -  生命周期 LifeCycle
        补充(这个项目比较完整,但是还是有遗漏,需要自己增加)
    -  属性 Property
    -  初始化方法 Initialization
    -  单例
    

方法二:点击运行下图的命令行即可自动导入代码块,同理,点击运行ClearSnippets.command可清楚代码块。

  • 补充
  • 去除NS,UI等前缀,给代码块设置快捷键。
    为了不和苹果已有的冲突,或者避免和苹果已有的混杂在一起,且简单,将前缀(如NS,UI)去除,调用最方便。
    eg:关于所有的通知NSNotification取名为notification,关于所有的调试打印NSLog取名为Log。

  • ** 属性代码块**
    1 Title: Property Assign
    2 Completion Shortcut: @strong
    3 Completion Scopes: All
    4 @property (assign, nonatomic)

  • ** 初始化方法**

     1  Title: Initialization
     2  Completion Shortcut: @strong
     3  Completion Scopes: Class Implementation
     4 
     - (instancetype)init {
     self = [super init];
         if (!self) {      
        }
         return self;
     }
    
     - (instancetype)initWithFrame:(CGRect)frame {
         self = [super initWithFrame:frame];
         if (!self) {
     
         }
         return self;
     }
    

6、同步备份

  • 使用ACCodeSnippetRepositoryPlugin插件
  • 将代码块打包,拷入其他电脑Xcode中
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容

  • 1、认识 Xcode 代码块 2、创建 Xcode 代码块 当然,代码块功能之所以强大,是因为你可以创建自定义的代...
    沬日十七阅读 5,432评论 0 4
  • 好莱坞电影里经常看到黑客们手指在键盘上飞速跳跃,同时终端上的代码也随着飞舞。如果你也想像电影里那样,那么你来对地方...
    阳春是你阅读 2,205评论 0 4
  • Code Snippets 通过code snippets,我们可以创建一些可重用的代码块,并且在任何需要的地方很...
    Jisen阅读 1,159评论 1 2
  • 很多事都不受控制的在发生着改变,或许从一份新工作开始,又或许从多一个人介入开始。 你却很清楚有些事情它迟早会变,只...
    满漫慢阅读 625评论 0 0
  • 听听, 秋的声音, 石榴裂开大嘴, "哈哈" 这是丰收的声音。 听听, 秋的声音, 青蛙跳进田里, "呱呱" 这是...
    潘子谙阅读 527评论 4 4