XCode开发技巧之UserScripts使用


  本文标签:XCode UserScripts 脚本

  XCode作为一款强大的IDE,当然也支持脚本功能  。通过添加自己的脚本我们可以很方便的完成我们的工作  。在XCode中点击 Edit User Scripts即可方便的添加脚本,而且XCode自带的脚本也相当于给我们提供了丰富的样例  。比如我们添加一个这样的脚本,并为其添加一个快捷键??P(快捷键添加方法参考Comments分类中的Un/Comment Selection脚本

  1. #!/bin/sh  
  2.    
  3. echo "%%%{PBXSelection}%%%"  
  4. echo "#pragma mark -"  
  5. echo "#pragma mark %%%{PBXSelectedText}%%%"  
  6. echo "%%%{PBXSelection}%%%" 

  注意在Output下拉列表中选择Replace Selection  。这个脚本的作用是方便我们建立#pragma,首先提供pragma的名字,然后选中这个名字,按相应快捷键,#pragma就自动完成了,很方便  。

  这个脚本也可以这样写,我们就不用每行都写echo了

  1. #!/bin/sh  
  2.    
  3. cat << EOF 
  4. %%%{PBXSelection}%%%  
  5. #pragma mark -  
  6. #pragma mark %%%{PBXSelectedText}%%%  
  7. %%%{PBXSelection}%%%  
  8. EOF 

  除了bash脚本,XCode还支持Ruby,Python等多种语言的脚本,比如这个Ruby脚本

  1. #!/usr/bin/env ruby -w
  2. # Source: http://allancraig.net/blog/?p=315 
  3. properties =  
  4. synthesize =  
  5. release    =  
  6. STDIN.read.each do |line  
  7.     line.gsub!(/\*/, ).strip!  
  8.     words = line.split(/\s+/)  
  9.     label = words.size > 2 ? words[1] : words[0]  
  10.     variable = words[-1]  
  11.     properties << "@property (nonatomic, retain) IBOutlet #{label} *#{variable}\n"  
  12.     synthesize << "@synthesize #{variable}\n"  
  13.     release << "[#{variable.chop} release];\n"  
  14. end  
  15. synthesize << release.chomp 
  16. `echo #{synthesize.chomp} | pbcopy`  
  17. print properties.chomp 

  该脚本的作用是帮助我们添加@property、@synthesize、还有dealloc方法中相应的release  。使用方法是选中.h文件中的成员变量,比如我们选中UIButton *aButton;,复制到要添加@property的位置,再次选中,按快捷键执行脚本,@property就添加完成了,然后到相应的.m文件中,在要添加@synthesize的位置按?V粘贴,@synthesize也添加好了,同时复制过来的还有[aButton release];,选中这行,剪切粘贴到dealloc方法中,大功告成  。使用这个脚本不仅可以快速添加@property @synthesize,同时也避免了变量名写错所造成的一些问题  。

  小结:XCode开发技巧之UserScripts使用的内容介绍完了,希望本文对你有所帮助!