From 8443c013032765444fe3aec7a5d4cd24f8895e51 Mon Sep 17 00:00:00 2001 From: Artin Date: Mon, 7 Dec 2020 21:02:08 +0800 Subject: [PATCH] :memo: update docs --- docs/README.md | 2 +- docs/guide/basic-configuration.md | 17 ++++++++++++++--- docs/guide/creating-a-matcher.md | 7 +++---- docs/guide/creating-a-project.md | 4 ++-- docs/guide/end-or-start.md | 4 ++-- docs/guide/getting-started.md | 9 ++++++--- docs/guide/installation.md | 11 +++++------ docs/guide/loading-a-plugin.md | 2 +- 8 files changed, 34 insertions(+), 22 deletions(-) diff --git a/docs/README.md b/docs/README.md index c093eb5c..78cb0fc4 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,7 +1,7 @@ --- home: true heroImage: /logo.png -tagline: An asynchronous QQ bot framework. +tagline: An asynchronous bot framework. actionText: 开始使用 actionLink: guide/ features: diff --git a/docs/guide/basic-configuration.md b/docs/guide/basic-configuration.md index 73e88382..0cd9156a 100644 --- a/docs/guide/basic-configuration.md +++ b/docs/guide/basic-configuration.md @@ -13,19 +13,30 @@ NoneBot 在启动时将会从系统环境变量或者 `.env` 文件中寻找变量 `ENVIRONMENT` (大小写不敏感),默认值为 `prod`。 这将引导 NoneBot 从系统环境变量或者 `.env.{ENVIRONMENT}` 文件中进一步加载具体配置。 -现在,我们在 `.env` 文件中写入当前环境信息 +现在,我们在 `.env` 文件中写入当前环境信息: ```bash # .env ENVIRONMENT=dev ``` +如你所想,之后 NoneBot 就会从 `.env.dev` 文件中加载环境变量。 + ## .env.\* 文件 -详细配置文件,使用 [pydantic](https://pydantic-docs.helpmanual.io/) 加载配置。在 NoneBot 初始化时可以指定忽略 `.env` 中的环境信息转而加载某个配置文件: `nonebot.init(_env_file=".env.dev")`。 +NoneBot 使用 [pydantic](https://pydantic-docs.helpmanual.io/) 进行配置管理,会从 `.env.{ENVIRONMENT}` 文件中获悉环境配置。 + +可以在 NoneBot 初始化时指定加载某个环境配置文件: `nonebot.init(_env_file=".env.dev")`,这将忽略你在 `.env` 中设置的环境信息。 :::warning 提示 -由于 `pydantic` 使用 JSON 加载配置项,请确保配置项值为 JSON 能够解析的数据。如果 JSON 解析失败将作为字符串处理。 +由于 `pydantic` 使用 JSON 解析配置项,请确保配置项值为 JSON 格式的数据。如: + +```bash +list=["123456789", "987654321", 1] +test={"hello": "world"} +``` + +如果配置项值解析失败将作为字符串处理。 ::: 示例及说明: diff --git a/docs/guide/creating-a-matcher.md b/docs/guide/creating-a-matcher.md index e505bf0c..101a3c30 100644 --- a/docs/guide/creating-a-matcher.md +++ b/docs/guide/creating-a-matcher.md @@ -43,7 +43,7 @@ async def get_weather(city: str): ## [事件响应器](../api/matcher.md) -```python{4} +```python{5} from nonebot import on_command from nonebot.rule import to_me from nonebot.permission import Permission @@ -87,12 +87,11 @@ weather = on_command("天气", rule=to_me(), permission=Permission(), priority=5 事件响应器的优先级代表事件响应器的执行顺序,同一优先级的事件响应器会 **同时执行!**,优先级数字**越小**越先响应!优先级请从 `1` 开始排序! :::tip 提示 -使用 `nonebot-test` 可以看到当前所有事件响应器的执行流程,有助理解事件响应流程! +使用 `nonebot-plugin-test` 可以在网页端查看当前所有事件响应器的执行流程,有助理解事件响应流程! ```bash -pip install nonebot2[test] +nb plugin install nonebot_plugin_test ``` - ::: ### 阻断 block diff --git a/docs/guide/creating-a-project.md b/docs/guide/creating-a-project.md index b8ac3b77..5933b5fa 100644 --- a/docs/guide/creating-a-project.md +++ b/docs/guide/creating-a-project.md @@ -1,10 +1,10 @@ # 创建一个完整的项目 -上一章中我们已经运行了一个最小的 NoneBot 实例,在这一章,我们将从零开始一个完整的项目。 +上一章中我们已经运行了一个简单的 NoneBot 实例,在这一章,我们将从零开始一个完整的项目。 ## 目录结构 -首先,我们可以使用 `nb-cli` 或者自行创建完整的项目目录: +可以使用 `nb-cli` 或者自行创建完整的项目目录: ```bash nb create diff --git a/docs/guide/end-or-start.md b/docs/guide/end-or-start.md index 11780114..9587c4bb 100644 --- a/docs/guide/end-or-start.md +++ b/docs/guide/end-or-start.md @@ -1,9 +1,9 @@ # 结语 -至此,相信你已经能够写出一个基础的插件了,更多的用法将会在 进阶 部分进行介绍,这里给出几个小提示: +至此,相信你已经能够写出一个基础的插件了。这里给出几个小提示: - 请千万注意事件处理器的优先级设定 - 在匹配规则中请勿使用耗时极长的函数 - 同一个用户可以**跨群**(**私聊**)继续他的事件处理(除非做出权限限制,将在后续介绍) -如果你还不能满足,前往 [进阶](../advanced/README.md) 获得更多的功能信息。 +如果「指南」还不能满足你,前往 [进阶](../advanced/README.md) 查看更多的功能信息。 diff --git a/docs/guide/getting-started.md b/docs/guide/getting-started.md index 6a4e4ac5..30c562ce 100644 --- a/docs/guide/getting-started.md +++ b/docs/guide/getting-started.md @@ -32,7 +32,8 @@ if __name__ == "__main__": 在上方 `bot.py` 中,这几行高亮代码将依次: 1. 使用默认配置初始化 NoneBot -2. 加载 NoneBot 内置的 CQHTTP 协议适配组件 +2. 加载 NoneBot 内置的 CQHTTP 协议适配组件 + `register_adapter` 的第一个参数我们传入了一个字符串,该字符串将会在后文 [配置 QQ 协议端](#配置-qq-协议端) 时使用。 3. 加载 NoneBot 内置的插件 4. 在地址 `127.0.0.1:8080` 运行 NoneBot @@ -80,7 +81,7 @@ QQ 协议端举例: ```json{2,3,35-36,42} { - "uin": 你的QQ号, + "uin": "你的QQ号", "password": "你的密码", "encrypt_password": false, "password_encrypted": "", @@ -133,7 +134,9 @@ QQ 协议端举例: } ``` -其中 `ws://127.0.0.1:8080/cqhttp/ws` 中的 `127.0.0.1` 和 `8080` 应分别对应 nonebot 配置的 HOST 和 PORT +其中 `ws://127.0.0.1:8080/cqhttp/ws` 中的 `127.0.0.1` 和 `8080` 应分别对应 nonebot 配置的 HOST 和 PORT。 + +`cqhttp` 是前述 `register_adapter` 时传入的第一个参数,代表设置的 `CQHTTPBot` 适配器的路径,你可以对不同的适配器设置不同路径以作区别。 ## 历史性的第一次对话 diff --git a/docs/guide/installation.md b/docs/guide/installation.md index 2778371e..9beedaaa 100644 --- a/docs/guide/installation.md +++ b/docs/guide/installation.md @@ -17,8 +17,8 @@ pip uninstall nonebot ### 通过脚手架安装(推荐安装方式) -1. (推荐)使用你喜欢的 Python 环境管理工具(如`poetry`)创建新的虚拟环境。 -2. 使用 `pip` (或其他) 安装 NoneBot 脚手架。 +1. (推荐)使用你喜欢的 Python 环境管理工具(如 `poetry`)创建新的虚拟环境。 +2. 使用 `pip` (或其他包管理工具) 安装 nb-cli,nonebot2 作为其依赖会一起被安装。 ```bash pip install nb-cli @@ -33,16 +33,15 @@ pip uninstall nonebot ### 不使用脚手架(纯净安装) ```bash -# 在使用poetry的情况下 -poetry add nonebot2 -# 在使用pip的情况下 pip install nonebot2 +# 也可以通过 poetry 安装 +poetry add nonebot2 ``` 如果你需要使用最新的(可能**尚未发布**的)特性,可以直接从 GitHub 仓库安装: :::warning 注意 -直接从Github仓库中安装意味着你将使用最新提交的代码,它们并没有进行充分的稳定性测试 +直接从 Github 仓库中安装意味着你将使用最新提交的代码,它们并没有进行充分的稳定性测试 在任何情况下请不要将其应用于生产环境! ::: diff --git a/docs/guide/loading-a-plugin.md b/docs/guide/loading-a-plugin.md index e69c52a8..f026bbe0 100644 --- a/docs/guide/loading-a-plugin.md +++ b/docs/guide/loading-a-plugin.md @@ -48,7 +48,7 @@ if __name__ == "__main__": ::: :::warning 提示 -**插件不能存在相同名称!** +**不能存在相同名称的插件!** ::: :::danger 警告