From a686a2e9d10ae8e593d92aa4149121bbd888c3e7 Mon Sep 17 00:00:00 2001 From: MrZ626 <1046101471@qq.com> Date: Sun, 29 Aug 2021 04:11:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BB=A3=E7=A0=81=E8=A7=84?= =?UTF-8?q?=E8=8C=83=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CONTRIBUTING | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 CONTRIBUTING diff --git a/CONTRIBUTING b/CONTRIBUTING new file mode 100644 index 00000000..9023d155 --- /dev/null +++ b/CONTRIBUTING @@ -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_ 返回到前面一个点,用于重新执行某个操作