添加代码规范文件

This commit is contained in:
MrZ626
2021-08-29 04:11:25 +08:00
parent 720ee71f8b
commit a686a2e9d1

45
CONTRIBUTING Normal file
View File

@@ -0,0 +1,45 @@
代码规范(小程序和外部库等部分代码可以不遵守)
缩进全部使用四个空格
文件尾要有空行
变量名:
库变量 全大写
库方法和全局变量用 小驼峰
局部函数 下划线开头小驼峰
简单的局部变量 大写,单字母或多个单词首字母
需要阅读的局部变量 小驼峰
单行注释:
写在函数定义行/单行代码末尾/代码块前面第一行
多行注释:
用双方括号(等号能不带就不带),写在函数或者一堆函数的前面
方括号开头行带上几个字的概述,方便折叠的时候预览
字符串:
只存在于代码里不展示给玩家的字符串用单引号
会输出给玩家或者看的(或给开发者看的debug信息)用双引号
双方括号(等号能不带就不带)用于大段文本
代码紧凑:
少空格(这几种地方不要用空格):
逗号后
运算符两边
左括号前
右括号后
省小括号:
如果一个函数只能接受一个输入
并且输入的值是table或者string
那么小括号要省略,例如
GC.DO{
{'print',"Hello",0,0},
{'print',"World",0,20},
}
少空格紧凑方法:
用正则查找替换,把
\s?([+\-*/=()\[\]{}"']|==|>=|<=|~=|\.\.)\s?
全部替换成
$1
注意,需要缩进模式为制表符,可以先切到制表符然后替换再切回去
注意,字符串常量内部首尾空格会被替换
goto:
所有标签必须使用下列前缀的一个:
BREAK_ 类似一般的break,用于跳出任意层,可能跳过循环后一部分代码
CONTINUE_ 类似一般的continue,用于快速跳到循环的末尾执行下一次循环
THROW_ 类似一般的catch,用于捕获错误或跳出一个块并执行统一操作
REPEAT_ 返回到前面一个点,用于重新执行某个操作