mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2025-02-11 00:20:05 +00:00
![Jonathan Coates](/assets/img/avatar_default.png)
I've no motivation for modding right now, but always got time for build system busywork! CC:T (and CC before that) has always published its API docs. However, they're not always the most helpful — they're useful if you know what you're looking for, but aren't a good getting-started guide. Part of the issue here is there's no examples, and everything is described pretty abstractly. I have occasionally tried to improve this (e.g. the peripheral docs in bdffabc08e2eb9895f966c949acc8334a2bf4475), but it's a long road. This commit adds a new example mod, which registers peripherals, an API and a turtle upgrade. While the mod itself isn't exported as part of the docs, we reference blocks of it using Java's new {@snippet} tag. - Switch the Forge project to use NeoForge's new Legacy MDG plugin. We don't *need* to do this, but it means the build logic for Forge and NeoForge is more closely aligned. - Add a new SnippetTaglet, which is a partial backport of Java 18+'s {@snippet}. - Add an example mod. This is a working multi-loader mod, complete with datagen (albeit with no good multi-loader abstractions). - Move our existing <pre>{@code ...}</pre> blocks into the example mod, replacing them with {@snippet}s. - Add a new overview page to the docs, providing some getting-started information. We had this already in the dan200.computercraft.api package docs, but it's not especially visible there.
65 lines
1.5 KiB
YAML
65 lines
1.5 KiB
YAML
# SPDX-FileCopyrightText: 2022 The CC: Tweaked Developers
|
|
#
|
|
# SPDX-License-Identifier: CC0-1.0
|
|
|
|
# See https://pre-commit.com for more information
|
|
# See https://pre-commit.com/hooks.html for more hooks
|
|
repos:
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
rev: v4.4.0
|
|
hooks:
|
|
- id: trailing-whitespace
|
|
- id: end-of-file-fixer
|
|
- id: check-merge-conflict
|
|
|
|
# Quick syntax checkers
|
|
- id: check-xml
|
|
- id: check-yaml
|
|
- id: check-toml
|
|
- id: check-json
|
|
exclude: "tsconfig\\.json$"
|
|
|
|
- repo: https://github.com/editorconfig-checker/editorconfig-checker.python
|
|
rev: 2.7.2
|
|
hooks:
|
|
- id: editorconfig-checker
|
|
args: ['-disable-indentation']
|
|
exclude: "^(.*\\.(bat)|LICENSE)$"
|
|
|
|
- repo: https://github.com/fsfe/reuse-tool
|
|
rev: v4.0.3
|
|
hooks:
|
|
- id: reuse
|
|
|
|
- repo: local
|
|
hooks:
|
|
- id: license
|
|
name: Spotless
|
|
files: ".*\\.(java|kt|kts)$"
|
|
language: system
|
|
entry: ./gradlew spotlessApply
|
|
pass_filenames: false
|
|
require_serial: true
|
|
- id: checkstyle
|
|
name: Check Java codestyle
|
|
files: ".*\\.java$"
|
|
language: system
|
|
entry: ./gradlew checkstyle
|
|
pass_filenames: false
|
|
require_serial: true
|
|
- id: illuaminate
|
|
name: Check Lua code
|
|
files: ".*\\.(lua|java|md)"
|
|
language: system
|
|
entry: ./gradlew lintLua
|
|
pass_filenames: false
|
|
require_serial: true
|
|
|
|
exclude: |
|
|
(?x)^(
|
|
projects/[a-z]+/src/generated|
|
|
projects/[a-z]+/src/examples/generatedResources|
|
|
projects/core/src/test/resources/test-rom/data/json-parsing/|
|
|
.*\.dfpwm
|
|
)
|