配置
以下的配置字段大部分都是
.gckitconfig文件中存在,可以通过直接修改.gckitconfig中对应的字段来实现修改配置,理论上配置中的所有字段都可以在自定义模板文件中使用的,这样大家可以非常灵活的实现自己特定的需要的
基本配置
organization
Type:
stringDefault:
'gckit'表示组织机构。
author
Type:
stringDefault:
'读取本机名称'提示
生成文件时头部的注释的
作者名称显示。
preset
- Type:
string - Default:
'normal'
Gckit CLI为同一文件类型提供了5种不同的模板类型,比如在自定义Swift的Model类型时你可以提前自定义Struct、Class或者SwiftJSON、ObjcetMapper等不同的模板种类,在生成的时候可以灵活选择。
提示
在执行文件生成之前,必须要实现对应类型的模板,以下代表的意思主要是针对
iOS下ViewController的生成的时候,其它情况下就可以代表不同的模板种类了
normal: 系统生成
common: 简单的自定义方法
inherit: 继承父类、导入依赖名
all: 全量生成
list
- Type:
string - Default:
'none'
指定生成文件的列表类型,该字段主要是针对iOS中生成ViewController类型时选择是否使用列表类型以及列表的种类(UITableView 或者 UICollectionView)
提示
none: 无列表
tv: UITableView
cv: UICollectionView
force
Type:
booleanDefault:
false默认情况下,当生成文件时,如果已经存在则就不会覆盖。当然你可以将
force设置为true表示强制覆盖。
注意
该字段是针对普通文件类型有效,如果文件类型的isProject为true时(表示生成的文件类型为项目级别的)当force设置为true也不会强制覆盖,而是会弹出询问是否强制覆盖的
isDeep
Type:
booleanDefault:
true表示生成
Model类型时,是否需要根据JSON文件的不同层级分别生成Model,默认为true,表示生成不同层级的Model,否则生成最顶级的Model。
tempJPath
Type:
stringDefault:
tempJson表示生成文件时,读取
JSON文件的相对文件夹路径名称。
mainPath
Type:
stringDefault:
Main表示生成文件时,生成的文件相对于当前的路径,默认为
Main文件夹,不过可以通过配置时输入空格实现生成的文件为当前目录,另外如果是与 CocoaPods 组件化配合使用,则默认会设置为Classes文件夹。
gTypes
Type:
ArrayDefault:
[ "viewcontroller", "viewmodel", "model", "cell", "api", "router", "core" ]改字段是在执行
一键生成(即:在执行生成文件时没有指定要生成的文件类型,默认会生成对应哪几种类型)。
注意
该字段的配置需要与语言字段lang一定要配合使用,例如该字默认表示:Swift语言下执行一键生成时会分别生成:viewcontroller、 viewmodel、 model、 cell、 api、 router、 core,这些模板类型只有在Swift语言下才是有效的。
prefix
Type:
stringDefault: ``
表示生成文件名称需要增加的前缀,该字段大部分情况下是不需要配置的,只有
lang为Objective-C(没有命名空间)时才会配置改字段(🤪OC 特有)
文件类型
gType.path
- Type:
String - Default:
对应类型
表示对应类型的相对路径,生成的每种类型都独立到各自的文件夹下以保证方便管理。
gType.suffix
- Type:
String - Default:
_对应类型的缩写(一种约定)
通过输入的Name名称然后再加上文件类型的suffix即可生成对应类型的名称了。
gType.isProject
- Type:
boolean - Default:
false
表示该类型是否为项目级别,如果是项目级别的文件名称不会根据输入的Name生成而是根据项目的名称加上文件类型的suffix所生成。
cGTypes
Type:
ArrayDefault:
[]用于缓存用户自定义配置的文件类型,包含的子字段有:
- gType:表示自定义类型名称
- path:对应类型的相对路径
- suffix:对应类型的后缀
- isProject:表示对应类型是否为项目级别
提示
用户可以通过下面命令进行自定义文件类型,该字段就是用于缓存用户自定义的文件类型
$ gckit c -g
语言
lang
Type:
stringDefault:
swift表示生成文件的语言。
lang需要与生成类型gTypes对应
cLangList
Type:
ArrayDefault:
[]用于缓存用户自定义配置的语言列表,包含的子字段有:
- lang:语言的名称
- ext:语言对应文件的格式
- hasPrefix:是否包含前缀
- types:表示语言的数据类型用于生成对应的
Model的时候需要 - crossPlatform:是否是跨平台语言(跨平台考虑区别大小写问题文件名为小写下划线的形式,否则大写)
提示
用户可以通过下面命令进行自定义语言,该字段就是用于缓存用户自定义的语言列表
$ gckit c -l