1
mirror of https://github.com/CarmJos/EasyConfiguration.git synced 2024-09-19 20:25:51 +00:00

docs(readme): Add English version of README files.

This commit is contained in:
Carm Jos 2023-12-23 21:15:15 +08:00
parent 89c8ec8adf
commit b3e0007eba
6 changed files with 239 additions and 62 deletions

16
.doc/README.md Normal file
View File

@ -0,0 +1,16 @@
# 欢迎使用 EasyConfiguration
这个项目刚刚创建详细的Javadoc与开发指南还在补充请给我一点时间~
## 基本定义
Value: 实际配置的单例值。
Manifest: 用于描述值基本配置的对象。
Provider: 用于提供配置文件的接口。
Wrapper: 用于包装配置文件的接口。
Initializer: 用于初始化的接口

View File

@ -1,3 +0,0 @@
# 欢迎使用 EasyConfiguration
这个项目刚刚创建详细的Javadoc与开发指南还在补充请给我一点时间~

View File

@ -41,7 +41,7 @@ jobs:
rm -rf docs rm -rf docs
mkdir -vp docs mkdir -vp docs
cp -vrf core/target/apidocs/* docs/ cp -vrf core/target/apidocs/* docs/
cp -vrf .documentation/JAVADOC-README.md docs/README.md cp -vrf .doc/JAVADOC-README.md docs/README.md
- name: "Generate the Javadoc sitemap" - name: "Generate the Javadoc sitemap"
id: sitemap id: sitemap

101
README.md
View File

@ -1,10 +1,6 @@
```text 以下是上述中文文档的英文翻译,尽可能保留原意的同时,调整为更适合美国读者的表述方式:
____ _____ ____ __ _
/ __/__ ____ __ __ / ___/__ ___ / _(_)__ ___ _________ _/ /_(_)__ ___ ---
/ _// _ `(_-</ // / / /__/ _ \/ _ \/ _/ / _ `/ // / __/ _ `/ __/ / _ \/ _ \
/___/\_,_/___/\_, / \___/\___/_//_/_//_/\_, /\_,_/_/ \_,_/\__/_/\___/_//_/
/___/ /___/
```
# EasyConfiguration # EasyConfiguration
@ -15,56 +11,50 @@
![CodeSize](https://img.shields.io/github/languages/code-size/CarmJos/EasyConfiguration) ![CodeSize](https://img.shields.io/github/languages/code-size/CarmJos/EasyConfiguration)
![](https://visitor-badge.glitch.me/badge?page_id=EasyConfiguration.readme) ![](https://visitor-badge.glitch.me/badge?page_id=EasyConfiguration.readme)
轻松(做)配置,简单便捷的通用配置文件加载、读取与更新工具,可自定义配置格式。 **Easy _(to make)_ Configurations!**
## 优势 Introducing EasyConfiguration, your simple and universal solution for managing configuration files. Enjoy the ease of use with customizable formats for loading, reading, and updating your configuration files.
- 基于类的配置文件初始化、加载、获取与更新机制,方便快捷。 ## Advantages
- 支持复杂配置的手动序列化、反序列化。
- 提供多种builder形式快速构建 `ConfigValue<?>` 对象。
- 支持通过注解规定配置对应的路径、注释等信息。
## 开发 - Class-based mechanism for initializing, loading, retrieving, and updating configuration files, ensuring convenience and efficiency.
- Supports manual serialization and deserialization of complex configurations.
- Offers multiple builder forms for rapid construction of `ConfigValue<?>` objects.
- Enables specification of configuration paths, comments, and more via annotations.
详细开发介绍请 [点击这里](.documentation/README.md) , JavaDoc(最新Release) 请 [点击这里](https://CarmJos.github.io/EasyConfiguration) 。 ## Development
### 示例代码 For a detailed development guide, [click here](.doc/README.md). For the latest JavaDoc release, [click here](https://CarmJos.github.io/EasyConfiguration).
您可以 [点击这里](demo/src/main/java/cc/carm/lib/configuration/demo/DatabaseConfiguration.java) 查看部分代码演示,更多演示详见 [开发介绍](.documentation/README.md) 。 ### Code Samples
### 依赖方式 Check out some code demonstrations [here](demo/src/main/java/cc/carm/lib/configuration/demo/DatabaseConfiguration.java). For more examples, see the [development guide](.doc/README.md).
#### Maven 依赖 ### Dependencies
#### Maven Dependency
<details> <details>
<summary>远程库配置</summary> <summary>Remote Repository Configuration</summary>
```xml ```xml
<project> <project>
<repositories> <repositories>
<repository> <repository>
<!--采用Maven中心库安全稳定但版本更新需要等待同步--> <!-- Using Maven Central Repository for secure and stable updates, though synchronization might be needed. -->
<id>maven</id> <id>maven</id>
<name>Maven Central</name> <name>Maven Central</name>
<url>https://repo1.maven.org/maven2</url> <url>https://repo1.maven.org/maven2</url>
</repository> </repository>
<repository> <repository>
<!--采用github依赖库实时更新但需要配置 (推荐) --> <!-- Using GitHub dependencies for real-time updates, configuration required (recommended). -->
<id>EasyConfiguration</id> <id>EasyConfiguration</id>
<name>GitHub Packages</name> <name>GitHub Packages</name>
<url>https://maven.pkg.github.com/CarmJos/EasyConfiguration</url> <url>https://maven.pkg.github.com/CarmJos/EasyConfiguration</url>
</repository> </repository>
<repository>
<!--采用我的私人依赖库,简单方便,但可能因为变故而无法使用-->
<id>carm-repo</id>
<name>Carm's Repo</name>
<url>https://repo.carm.cc/repository/maven-public/</url>
</repository>
</repositories> </repositories>
</project> </project>
``` ```
@ -72,13 +62,12 @@
</details> </details>
<details> <details>
<summary>通用原生依赖</summary> <summary>Generic Native Dependency</summary>
```xml ```xml
<project> <project>
<dependencies> <dependencies>
<!--基础实现部分需要自行实现“Provider”与“Wrapper”。--> <!-- Basic implementation part, requiring custom implementation of “Provider” and “Wrapper”. -->
<dependency> <dependency>
<groupId>cc.carm.lib</groupId> <groupId>cc.carm.lib</groupId>
<artifactId>easyconfiguration-core</artifactId> <artifactId>easyconfiguration-core</artifactId>
@ -86,7 +75,7 @@
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<!--基于YAML文件的实现版本可用于全部Java环境。--> <!-- YAML file-based implementation, compatible with all Java environments. -->
<dependency> <dependency>
<groupId>cc.carm.lib</groupId> <groupId>cc.carm.lib</groupId>
<artifactId>easyconfiguration-yaml</artifactId> <artifactId>easyconfiguration-yaml</artifactId>
@ -94,8 +83,7 @@
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<!--基于JSON文件的实现版本可用于全部Java环境。--> <!-- JSON file-based implementation, compatible with all Java environments. Note: JSON does not support file comments. -->
<!--需要注意的是JSON不支持文件注释。-->
<dependency> <dependency>
<groupId>cc.carm.lib</groupId> <groupId>cc.carm.lib</groupId>
<artifactId>easyconfiguration-json</artifactId> <artifactId>easyconfiguration-json</artifactId>
@ -109,42 +97,39 @@
</details> </details>
#### Gradle 依赖 #### Gradle Dependency
<details> <details>
<summary>远程库配置</summary> <summary>Remote Repository Configuration</summary>
```groovy ```groovy
repositories { repositories {
// 采用Maven中心库安全稳定但版本更新需要等待同步 // Using Maven Central Repository for secure and stable updates, though synchronization might be needed.
mavenCentral() mavenCentral()
// 采用github依赖库实时更新但需要配置 (推荐) // Using GitHub dependencies for real-time updates, configuration required (recommended).
maven { url 'https://maven.pkg.github.com/CarmJos/EasyConfiguration' } maven { url 'https://maven.pkg.github.com/CarmJos/EasyConfiguration' }
// 采用我的私人依赖库,简单方便,但可能因为变故而无法使用
maven { url 'https://repo.carm.cc/repository/maven-public/' }
} }
``` ```
</details> </details>
<details> <details>
<summary>通用原生依赖</summary> <summary>Generic Native Dependency</summary>
```groovy ```groovy
dependencies { dependencies {
//基础实现部分需要自行实现“Provider”与“Wrapper”。 // Basic implementation part, requiring custom implementation of “Provider” and “Wrapper”.
api "cc.carm.lib:easyconfiguration-core:[LATEST RELEASE]" api "cc.carm.lib:easyconfiguration-core:[LATEST RELEASE]"
//基于YAML文件的实现版本可用于全部Java环境。 // YAML file-based implementation, compatible with all Java environments.
api "cc.carm.lib:easyconfiguration-yaml:[LATEST RELEASE]" api "cc.carm.lib:easyconfiguration-yaml:[LATEST RELEASE]"
//基于JSON文件的实现版本可用于全部Java环境。 // JSON file-based implementation, compatible with all Java environments. Note: JSON does not support file comments.
//需要注意的是JSON不支持文件注释。
api "cc.carm.lib:easyconfiguration-json:[LATEST RELEASE]" api "cc.carm.lib:easyconfiguration-json:[LATEST RELEASE]"
} }
@ -152,23 +137,25 @@ dependencies {
</details> </details>
## 衍生项目 ## Derived Projects
### [**MineConfiguration**](https://github.com/CarmJos/MineConfiguration) (by @CarmJos ) ### [**MineConfiguration**](https://github.com/CarmJos/MineConfiguration) (by @CarmJos)
EasyConfiguration for MineCraft! EasyConfiguration for MineCraft!
开始在 MineCraft 相关服务器平台上轻松(做)配置吧! Easily manage configurations on MineCraft-related server platforms.
目前支持 BungeeCord, Bukkit(Spigot) 服务端,后续将支持更多平台。 Currently supports BungeeCord, Bukkit (Spigot) servers, with more platforms to be supported soon.
## 支持与捐赠 ## Support and Donation
若您觉得本插件做的不错,您可以通过捐赠支持我! If you appreciate this plugin, consider supporting me with a donation!
感谢您对开源项目的支持! Thank you for supporting open-source projects!
<img height=25% width=25% src="https://raw.githubusercontent.com/CarmJos/CarmJos/main/img/donate-code.jpg" alt=""/> Many thanks to Jetbrains for kindly providing a license for us to work on this and other open-source projects.
[![](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg)](https://www.jetbrains.com/?from=https://github.com/ArtformGames/ResidenceList)
## 开源协议
本项目源码采用 [GNU LESSER GENERAL PUBLIC LICENSE](https://www.gnu.org/licenses/lgpl-3.0.html) 开源协议。 ## Open Source License
This project's source code is licensed under the [GNU LESSER GENERAL PUBLIC LICENSE](https://www.gnu.org/licenses/lgpl-3.0.html).

177
README_CN.md Normal file
View File

@ -0,0 +1,177 @@
```text
____ _____ ____ __ _
/ __/__ ____ __ __ / ___/__ ___ / _(_)__ ___ _________ _/ /_(_)__ ___
/ _// _ `(_-</ // / / /__/ _ \/ _ \/ _/ / _ `/ // / __/ _ `/ __/ / _ \/ _ \
/___/\_,_/___/\_, / \___/\___/_//_/_//_/\_, /\_,_/_/ \_,_/\__/_/\___/_//_/
/___/ /___/
```
# EasyConfiguration
[![version](https://img.shields.io/github/v/release/CarmJos/EasyConfiguration)](https://github.com/CarmJos/EasyConfiguration/releases)
[![License](https://img.shields.io/github/license/CarmJos/EasyConfiguration)](https://www.gnu.org/licenses/lgpl-3.0.html)
[![workflow](https://github.com/CarmJos/EasyConfiguration/actions/workflows/maven.yml/badge.svg?branch=master)](https://github.com/CarmJos/EasyConfiguration/actions/workflows/maven.yml)
[![CodeFactor](https://www.codefactor.io/repository/github/carmjos/easyconfiguration/badge)](https://www.codefactor.io/repository/github/carmjos/easyconfiguration)
![CodeSize](https://img.shields.io/github/languages/code-size/CarmJos/EasyConfiguration)
![](https://visitor-badge.glitch.me/badge?page_id=EasyConfiguration.readme)
轻松(做)配置,简单便捷的通用配置文件加载、读取与更新工具,可自定义配置格式。
## 优势
- 基于类的配置文件初始化、加载、获取与更新机制,方便快捷。
- 支持复杂配置的手动序列化、反序列化。
- 提供多种builder形式快速构建 `ConfigValue<?>` 对象。
- 支持通过注解规定配置对应的路径、注释等信息。
## 开发
详细开发介绍请 [点击这里](.doc/README.md) , JavaDoc(最新Release) 请 [点击这里](https://CarmJos.github.io/EasyConfiguration) 。
### 示例代码
您可以 [点击这里](demo/src/main/java/cc/carm/lib/configuration/demo/DatabaseConfiguration.java) 查看部分代码演示,更多演示详见 [开发介绍](.doc/README.md) 。
### 依赖方式
#### Maven 依赖
<details>
<summary>远程库配置</summary>
```xml
<project>
<repositories>
<repository>
<!--采用Maven中心库安全稳定但版本更新需要等待同步-->
<id>maven</id>
<name>Maven Central</name>
<url>https://repo1.maven.org/maven2</url>
</repository>
<repository>
<!--采用github依赖库实时更新但需要配置 (推荐) -->
<id>EasyConfiguration</id>
<name>GitHub Packages</name>
<url>https://maven.pkg.github.com/CarmJos/EasyConfiguration</url>
</repository>
<repository>
<!--采用我的私人依赖库,简单方便,但可能因为变故而无法使用-->
<id>carm-repo</id>
<name>Carm's Repo</name>
<url>https://repo.carm.cc/repository/maven-public/</url>
</repository>
</repositories>
</project>
```
</details>
<details>
<summary>通用原生依赖</summary>
```xml
<project>
<dependencies>
<!--基础实现部分需要自行实现“Provider”与“Wrapper”。-->
<dependency>
<groupId>cc.carm.lib</groupId>
<artifactId>easyconfiguration-core</artifactId>
<version>[LATEST RELEASE]</version>
<scope>compile</scope>
</dependency>
<!--基于YAML文件的实现版本可用于全部Java环境。-->
<dependency>
<groupId>cc.carm.lib</groupId>
<artifactId>easyconfiguration-yaml</artifactId>
<version>[LATEST RELEASE]</version>
<scope>compile</scope>
</dependency>
<!--基于JSON文件的实现版本可用于全部Java环境。-->
<!--需要注意的是JSON不支持文件注释。-->
<dependency>
<groupId>cc.carm.lib</groupId>
<artifactId>easyconfiguration-json</artifactId>
<version>[LATEST RELEASE]</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
```
</details>
#### Gradle 依赖
<details>
<summary>远程库配置</summary>
```groovy
repositories {
// 采用Maven中心库安全稳定但版本更新需要等待同步
mavenCentral()
// 采用github依赖库实时更新但需要配置 (推荐)
maven { url 'https://maven.pkg.github.com/CarmJos/EasyConfiguration' }
// 采用我的私人依赖库,简单方便,但可能因为变故而无法使用
maven { url 'https://repo.carm.cc/repository/maven-public/' }
}
```
</details>
<details>
<summary>通用原生依赖</summary>
```groovy
dependencies {
//基础实现部分需要自行实现“Provider”与“Wrapper”。
api "cc.carm.lib:easyconfiguration-core:[LATEST RELEASE]"
//基于YAML文件的实现版本可用于全部Java环境。
api "cc.carm.lib:easyconfiguration-yaml:[LATEST RELEASE]"
//基于JSON文件的实现版本可用于全部Java环境。
//需要注意的是JSON不支持文件注释。
api "cc.carm.lib:easyconfiguration-json:[LATEST RELEASE]"
}
```
</details>
## 衍生项目
### [**MineConfiguration**](https://github.com/CarmJos/MineConfiguration) (by @CarmJos )
EasyConfiguration for MineCraft!
开始在 MineCraft 相关服务器平台上轻松(做)配置吧!
目前支持 BungeeCord, Bukkit(Spigot) 服务端,后续将支持更多平台。
## 支持与捐赠
若您觉得本插件做的不错,您可以通过捐赠支持我!
感谢您对开源项目的支持!
<img height=25% width=25% src="https://raw.githubusercontent.com/CarmJos/CarmJos/main/img/donate-code.jpg" alt=""/>
万分感谢 Jetbrains 为我们提供了从事此项目和其他开源项目的许可!
[![](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg)](https://www.jetbrains.com/?from=https://github.com/ArtformGames/ResidenceList)
## 开源协议
本项目源码采用 [GNU LESSER GENERAL PUBLIC LICENSE](https://www.gnu.org/licenses/lgpl-3.0.html) 开源协议。