XCode 学习技巧之 User Scripts是本文要介绍的内容,XCode作为一款强大的IDE,当然也支持脚本功能。通过添加自己的脚本我们可以很方便的完成我们的工作。
在XCode中点击 Edit User Scripts即可方便的添加脚本,而且XCode自带的脚本也相当于给我们提供了丰富的样例。比如我们添加一个这样的脚本,并为其添加一个快捷键??P(快捷键添加方法参考Comments分类中的Un/Comment Selection脚本)
- #!/bin/sh
- echo "%%%{PBXSelection}%%%"
- echo "#pragma mark -"
- echo "#pragma mark %%%{PBXSelectedText}%%%"
- echo "%%%{PBXSelection}%%%"
注意在Output下拉列表中选择Replace Selection。这个脚本的作用是方便我们建立#pragma,首先提供pragma的名字,然后选中这个名字,按相应快捷键,#pragma就自动完成了,很方便。
这个脚本也可以这样写,我们就不用每行都写echo了
- #!/bin/sh
- cat << EOF
- %%%{PBXSelection}%%%
- #pragma mark -
- #pragma mark %%%{PBXSelectedText}%%%
- %%%{PBXSelection}%%%
- EOF
除了bash脚本&#xff0c;XCode还支持Ruby&#xff0c;Python等多种语言的脚本&#xff0c;比如这个Ruby脚本
- #!/usr/bin/env ruby -w
- # Source: http://allancraig.net/blog/?p&#61;315
- properties &#61; &#39;&#39;
- synthesize &#61; &#39;&#39;
- release &#61; &#39;&#39;
- STDIN.read.each do |line
- line.gsub!(/\*/, &#39;&#39;).strip!
- words &#61; line.split(/\s&#43;/)
- label &#61; words.size > 2 ? words[1] : words[0]
- variable &#61; words[-1]
- properties << "&#64;property (nonatomic, retain) IBOutlet #{label} *#{variable}\n"
- synthesize << "&#64;synthesize #{variable}\n"
- release << "[#{variable.chop} release];\n"
- end
- synthesize << release.chomp
- &#96;echo &#39;#{synthesize.chomp}&#39; | pbcopy&#96;
- print properties.chomp
该脚本的作用是帮助我们添加&#64;property、&#64;synthesize、还有dealloc方法中相应的release。使用方法是选中.h文件中的成员变量&#xff0c;比如我们选中UIButton *aButton;&#xff0c;复制到要添加&#64;property的位置&#xff0c;再次选中&#xff0c;按快捷键执行脚本&#xff0c;&#64;property就添加完成了&#xff0c;然后到相应的.m文件中&#xff0c;在要添加&#64;synthesize的位置按?V粘贴&#xff0c;&#64;synthesize也添加好了&#xff0c;同时复制过来的还有[aButton release];&#xff0c;选中这行&#xff0c;剪切粘贴到dealloc方法中&#xff0c;大功告成。使用这个脚本不仅可以快速添加&#64;property &#64;synthesize&#xff0c;同时也避免了变量名写错所造成的一些问题。
小结&#xff1a;XCode 学习技巧之 UserScripts的内容介绍完了&#xff0c;希望本文对你有所帮助&#xff01;