Skip to content

Commit

Permalink
📝 Docs: 重写教程与进阶指南 (#1604)
Browse files Browse the repository at this point in the history
Co-authored-by: Johnny Hsieh <[email protected]>
  • Loading branch information
yanyongyu and mnixry authored Mar 24, 2023
1 parent 8977be2 commit 18beb63
Show file tree
Hide file tree
Showing 165 changed files with 6,441 additions and 15,653 deletions.
7 changes: 4 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,16 +66,17 @@ yarn start

NoneBot2 文档并没有具体的行文风格规范,但我们建议你尽量写得简单易懂。

以下是比较重要的排版规范。目前 NoneBot2 文档中仍有部分文档不完全遵守此规范,如果在阅读时发现欢迎提交 PR。
以下是比较重要的编写与排版规范。目前 NoneBot2 文档中仍有部分文档不完全遵守此规范,如果在阅读时发现欢迎提交 PR。

1. 中文与英文、数字、半角符号之间需要有空格。例:`NoneBot2 是一个可扩展的 Python 异步机器人框架。`
2. 若非英文整句,使用全角标点符号。例:`现在你可以看到机器人回复你:“Hello, World !”。`
3. 直引号`「」`和弯引号`“”`都可接受,但同一份文件里应使用同种引号。
4. **不要使用斜体**,你不需要一种与粗体不同的强调。除此之外,你也可以考虑使用 docusaurus 提供的[告示](https://docusaurus.io/zh-CN/docs/markdown-features/admonitions)功能。
5. 文档中应以“我们”指代机器人开发者,以“机器人用户”指代机器人的使用者。

这是社区创始人 richardchien 的中文排版规范,可供参考:<https://stdrc.cc/style-guides/chinese>
以上由[社区创始人 richardchien 的中文排版规范](https://stdrc.cc/style-guides/chinese)补充修改得到

如果你需要编辑器提示 Markdown 规范,可以安装 VSCode 上的 markdownlint 插件
如果你需要编辑器检查 Markdown 规范,可以在 VSCode 中安装 markdownlint 扩展

### 参与开发

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ _✨ 跨平台 Python 异步机器人框架 ✨_
</p>

<p align="center">
<a href="https://asciinema.org/a/464654">
<a href="https://asciinema.org/a/569440">
<img src="https://v2.nonebot.dev/img/setup.svg">
</a>
</p>
Expand Down
20 changes: 10 additions & 10 deletions website/docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,44 +6,44 @@ slug: /

# 概览

NoneBot2 是一个现代、跨平台、可扩展的 Python 聊天机器人框架,它基于 Python 的类型注解和异步特性,能够为你的需求实现提供便捷灵活的支持。
NoneBot2 是一个现代、跨平台、可扩展的 Python 聊天机器人框架(下称 NoneBot),它基于 Python 的类型注解和异步优先特性(兼容同步),能够为你的需求实现提供便捷灵活的支持。同时,NoneBot 拥有大量的开发者为其开发插件,用户无需编写任何代码,仅需完成环境配置及插件安装,就可以正常使用 NoneBot

需要注意的是,NoneBot2 仅支持 **Python 3.8 以上版本**
需要注意的是,NoneBot 仅支持 **Python 3.8 以上版本**

## 特色

### 异步优先

NoneBot2 基于 Python [asyncio](https://docs.python.org/3/library/asyncio.html) 编写,并在异步机制的基础上进行了一定程度的同步函数兼容。
NoneBot 基于 Python [asyncio](https://docs.python.org/zh-cn/3/library/asyncio.html) 编写,并在异步机制的基础上进行了一定程度的同步函数兼容。

### 完整的类型注解

NoneBot2 参考 [PEP 484](https://www.python.org/dev/peps/pep-0484/) 等 PEP 完整实现了类型注解,通过 `pyright`/`pylance` 检查。配合编辑器的类型推导功能,能将绝大多数的 Bug 杜绝在编辑器中([编辑器支持](./start/editor-support))。
NoneBot 参考 [PEP 484](https://www.python.org/dev/peps/pep-0484/) 等 PEP 完整实现了类型注解,通过 Pyright(Pylance) 检查。配合编辑器的类型推导功能,能将绝大多数的 Bug 杜绝在编辑器中([编辑器支持](./editor-support))。

### 开箱即用

NoneBot2 提供了使用便捷、具有交互式功能的命令行工具--`nb-cli`使得初次接触 NoneBot2 时更容易上手。详细使用方法请参考各文档章节以及[使用脚手架](./start/nb-cli)
NoneBot 提供了使用便捷、具有交互式功能的命令行工具--`nb-cli`使得用户初次接触 NoneBot 时更容易上手。使用方法请阅读本文档[指南](./quick-start.mdx)以及 [CLI 文档](https://cli.nonebot.dev/)

### 插件系统

插件系统是 NoneBot2 的核心,通过它可以实现机器人的模块化以及功能扩展,便于维护和管理。
插件系统是 NoneBot 的核心,通过它可以实现机器人的模块化以及功能扩展,便于维护和管理。

### 依赖注入系统

NoneBot2 采用了一套自行定义的依赖注入系统,可以让事件的处理过程更加的简洁、清晰,增加代码的可读性,减少代码冗余。
NoneBot 采用了一套自行定义的依赖注入系统,可以让事件的处理过程更加的简洁、清晰,增加代码的可读性,减少代码冗余。

#### 什么是依赖注入

[**依赖注入**](https://zh.m.wikipedia.org/wiki/%E6%8E%A7%E5%88%B6%E5%8F%8D%E8%BD%AC)意思是,在编程中,有一种方法可以让你的代码声明它工作和使用所需要的东西,即**“依赖”**
[**依赖注入**](https://zh.m.wikipedia.org/wiki/%E6%8E%A7%E5%88%B6%E5%8F%8D%E8%BD%AC)意思是,在编程中,有一种方法可以让你的代码声明它工作和使用所需要的东西,即**『依赖』**

系统(在这里是指 NoneBot2)将负责做任何需要的事情,为你的代码提供这些必要依赖(即**“注入”**依赖性)
系统(在这里是指 NoneBot)将负责做任何需要的事情,为你的代码提供这些必要依赖(即**『注入』**依赖性)

这在你有以下情形的需求时非常有用:

- 这部分代码拥有共享的逻辑(同样的代码逻辑多次重复)
- 共享数据库以及网络请求连接会话
- 比如 `httpx.AsyncClient``aiohttp.ClientSession``sqlalchemy.Session`
- 用户权限检查以及认证
- 机器人用户权限检查以及认证
- 还有更多...

它在完成上述工作的同时,还能尽量减少代码的耦合和重复
207 changes: 0 additions & 207 deletions website/docs/advanced/README.md

This file was deleted.

Loading

0 comments on commit 18beb63

Please sign in to comment.