【无限互联】xcode自定义类的模板
翻译:http://www.bobmccune.com/2012/03/04/creating-custom-xcode-4-file-templates/
其实说是翻译有些牵强。我想实现的东西很简单:每次新创建类文件的时候都会自带一些函数,如:
我希望是:
}
@end还有:
@interfaceViewController()
@end
@implementationViewController
-(id)initWithNibName:(NSString*)nibNameOrNilbundle:(NSBundle*)nibBundleOrNil
{
self=[superinitWithNibName:nibNameOrNilbundle:nibBundleOrNil];
if(self){
//Custominitialization
}
returnself;
}
-(void)viewDidLoad
{
[superviewDidLoad];
//Doanyadditionalsetupafterloadingtheviewfromitsnib.
}
-(void)viewDidUnload{
[superviewDidUnload];
//Releaseanyretainedsubviewsofthemainview.
//e.g.self.myOutlet=nil;
}
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return(interfaceOrientation==UIInterfaceOrientationPortrait);
}
@end我希望是
@interfaceViewController()
@end
@implementationViewController
-(id)initWithNibName:(NSString*)nibNameOrNilbundle:(NSBundle*)nibBundleOrNil{
self=[superinitWithNibName:nibNameOrNilbundle:nibBundleOrNil];
if(self){
//Custominitialization
}
returnself;
}
-(void)viewDidLoad{
[superviewDidLoad];
//Doanyadditionalsetupafterloadingtheviewfromitsnib.
}
-(void)viewDidUnload{
[superviewDidUnload];
//Releaseanyretainedsubviewsofthemainview.
//e.g.self.myOutlet=nil;
}
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
return(interfaceOrientation==UIInterfaceOrientationPortrait);
}
@end简单说来就是:
我希望.h文件里:两边儿的东西是挨着的;然后帮我加个{},应该是分两行的,{在文件尾。
我希望.m文件里:缩近的tab是两个空格;然后帮我加个{},应该是分两行的,{在文件尾。
就这个小需求就找了挺久,找不到,不过今天还是无意间让我给翻到了上面的英文。那篇文章很中规中距,是讲怎样自定义属于自己的模板,类似你要用js或者php开发,要新加一个板块儿那种。而我的需求要简单的多,就是改一下默认的配置。ok,开工:
首先说明模板文件位置
mac的模板文件在:ios的模拟文件在:
(其实这个要看实际情况,因为如果默认安装的话会是安装在/Applications下,但是像我这种不守规矩的,就把xcode.app搁到宿主目录下的application文件夹里了)
找到模板文件以后就是修改了。
原谅不建议大家这个目录修改现在的文件,强烈要求大家把这个路径下的文件拷贝到如果路径不存在就创建。
我开始没认真看,然后照做了,然后就发现我新建议文件的时候,模板都是两份儿,名字都一下。后来想想也对,人家是为了自定义自己用的模板,而我是为了修改系统模板怎么吧?我觉得不改路径,在原始目录里操作,当然了,作为了一个好习惯把FileTemplates复制一份儿备份。
ok,接下来就是体力活了,你要一个一个的文件夹进去,然后分别修改.h和.m文件,然后一个一个接着找下去,而我呢,属于“工欲善其事,必先利其器”的那种,这么多文件哪受的了啊?想想这么多文件用脚本改也不合适,万一遇到不一样的就死了,还是手工操作,但是是怎么操作呢?
Finder->Go to the folder输入:然后在搜索框里输入:filebasename
是不是都乖乖的集合了?
然后就是分批来,先整.h的
把所有的.h文件全选,右键,然后用xcode打开
然后就是一个一个改喽
.h改起来还算好改,要改的东西少,一遍是删除:两边儿空格,一遍是粘帖{}。要说的一点就是,我xcode设置成了自动保存,所以可以少按一遍command+s,改完以后直接关闭就全保存了。
完后就是如法儿泡制.m文件了。
改{}好改,直接command+e到文件尾,然后command+k下一行的{自动合到这一行了。tab改成两个的话更简单,因为我xcode里的设置就是tab是两个空格,这时候只要在文件里command+a全选,然后command+剪切,然后command+粘贴就要以了。xcode会自动帮你2个空格缩近。
就这样就好了,xcode甚至不用重启就可以直接用新创建的模板了。如果你和我一样,喜欢两个空格缩近,{这个东东在行尾的话,你可直接下载下面的附件了。不然,就照着上边儿方法儿改一遍呗File Templates