Wiki贡献(Contributing to Wiki)

预计阅读时间: 3 分钟

您可以查看Test来了解此维基可以做的所有事情。

请务必检查 GitHub 上维基仓库的 README 文件,了解文件结构的信息。

您可以查看 https://kubejs.com/wiki/preview/x 来预览当前打开的 PR。

请务必不要强制推送。目前这样做会导致预览不更新。

格式规则

为了使维基更易于理解,所有代码应按以下方式格式化:

  • 在代码块中,使用制表符,而不是空格。

  • 尽可能使用 const 声明变量。

  • 对所有变量名使用 camelCase(驼峰式),常量除外,它们应使用 SCREAMING_SNAKE_CASE(全大写下划线分隔)。

  • 使用 event 作为事件处理程序回调参数的名称。

  • 对所有函数使用箭头函数 (() => {})。

  • 对于单参数箭头函数省略括号 (ServerEvents.recipes(event => {}))。

  • 对变量名使用描述性但简洁的名称(如 ctxcontext),除非是常用名称,否则不要使用单字母名称(c)(ij 用于循环索引,xyz 用于坐标)。

  • 每当使用 Minecraft 物品时,使用 minecraft: 命名空间。您知道可以省略它吗?

  • 不要留下尾随逗号。

  • 对于字符串字面量,使用单引号 ('minecraft:stone'),除非使用双引号会导致更少的引号被转义 ("I'm not escaped!")。

  • 在开始注释后留一个空格 (// This is a comment with a space!)。

  • 用大写字母开始注释,除非它包含代码 (// console.log('Here we don't start with a capital letter'))

  • 使用 Beans

  • 每当浮点数等于 0 (5.0) 时,省略小数点。

  • 不要使用分号,除非在 return 调用后或由于代码被意外解析而绝对必要时。但是,如果可能,应避免此类情况。

console.log('Hello, world!')
// 这里需要分号,以便代码不会被解析为:
// console.log('Hello, world!')['minecraft:stone', 'minecraft:cobblestone'].forEach(item => {})
;['minecraft:stone', 'minecraft:cobblestone'].forEach(item => {})
  • 在像 iffor 等运算符后使用空格。总是将分支中的代码用块包裹,除非该分支导致提前返回。
if (player.hand == "OFF_HAND") return; // 这里,`return` 不需要用块包裹。
if (player.hand == "MAIN_HAND") {
 console.log("Right-clicked with main hand")
}

AI

我们不允许AI生成的文章。但是,我们允许使用AI来帮助编写文档,只要:

  • 清楚地说明在PR制作中使用了AI

  • 在提交PR之前,作者必须仔细检查其中的所有信息,而不是盲目提交