Skip to content

Commit

Permalink
docs(zh-cn): update translation (#2077)
Browse files Browse the repository at this point in the history
Co-authored-by: Uiolee <[email protected]>
  • Loading branch information
D-Sketon and uiolee authored Oct 18, 2023
1 parent e7d4018 commit 4939edb
Show file tree
Hide file tree
Showing 22 changed files with 61 additions and 57 deletions.
6 changes: 3 additions & 3 deletions source/zh-cn/api/box.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ title: Box
---
「Box」是 Hexo 用来处理特定文件夹中的文件的容器,在 Hexo 中有两个 Box,分别是 `hexo.source``hexo.theme`,前者用于处理 `source` 文件夹,而后者用于处理主题文件夹。

## 载入文件
## 加载文件

Box 提供了两种方法来载入文件`process`, `watch`前者用于载入文件夹内的所有文件;而后者除了执行 `process` 以外,还会继续监视文件变动。
Box 提供了两种方法来加载文件`process`, `watch`前者用于加载文件夹内的所有文件;而后者除了执行 `process` 以外,还会继续监视文件变动。

``` js
box.process().then(function(){
Expand All @@ -19,7 +19,7 @@ box.watch().then(function(){

## 比对路径

Box 提供了多种比对路径的模式,您可以以使用正则表达式(regular expression)、函数、或是一种类似于 Express 的路径字符串,例如:
Box 提供了多种比对路径的模式,您可以以使用正则表达式(regular expression)、函数、或是 Express 风格的模式字符串,例如:

``` plain
posts/:id => posts/89
Expand Down
6 changes: 3 additions & 3 deletions source/zh-cn/api/console.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 控制台(Console)
---
控制台是 Hexo 与开发者之间沟通的桥梁。
控制台是 Hexo 与开发者之间沟通的桥梁。它注册并描述了可用的控制台命令。

## 概要

Expand Down Expand Up @@ -45,7 +45,7 @@ hexo.extend.console.register(name, desc, options, function(args){

### 选项

控制台的选项,例如:
控制台的各个选项的说明,例如:

``` js
{
Expand All @@ -59,7 +59,7 @@ hexo.extend.console.register(name, desc, options, function(args){

关于控制台命令的更详细的信息。

## 范例
## 示例

``` js
hexo.extend.console.register('config', 'Display configuration', function(args){
Expand Down
2 changes: 1 addition & 1 deletion source/zh-cn/api/deployer.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 部署器(Deployer)
---
部署器帮助开发者将网站快速部署到远程服务器上,避免了复杂的指令
部署器帮助开发者将网站快速部署到远程服务器上,而无需复杂的指令

## 概要

Expand Down
6 changes: 3 additions & 3 deletions source/zh-cn/api/events.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,18 +33,18 @@ hexo.on('new', function(post){
});
```

资料 | 描述
数据 | 描述
--- | ---
`post.path` | 文章文件的完整路径
`post.content` | 文章文件的内容

### processBefore

在处理原始文件前发布。此事件会返回一个地址,代表 Box(Box)的根目录。
在处理原始文件前发布。此事件会返回一个路径,代表 (Box)的根目录。

### processAfter

在原始文件处理后发布。此事件会返回一个地址,代表 Box(Box)的根目录。
在原始文件处理后发布。此事件会返回一个路径,代表 (Box)的根目录。

### ready

Expand Down
2 changes: 1 addition & 1 deletion source/zh-cn/api/filter.md
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@ hexo.extend.filter.register('post_permalink', function(data){

### server_middleware

新增服务器的 Middleware。`app` 是一个 [Connect] 实例。
向服务器添加中间件(Middleware`app` 是一个 [Connect] 实例。

举例来说,在响应头中新增 `X-Powered-By: Hexo`

Expand Down
10 changes: 5 additions & 5 deletions source/zh-cn/api/generator.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ hexo.extend.generator.register(name, function(locals){
});
```

在函数中会传入一个 `locals` 参数,等同于 [网站变量](../docs/variables.html#网站变量),请尽量利用此参数取得网站数据,避免直接存取资料库
`locals` 参数会被传递到此函数,其中包含 [网站变量](../docs/variables.html#网站变量),请尽量利用此参数取得网站数据,避免直接访问数据库

## 更新路由

Expand All @@ -36,13 +36,13 @@ hexo.extend.generator.register('test', function(locals){
`data` | 数据
`layout` | 布局。指定用于渲染的模板,可为字符串或数组,如果省略此属性的话则会直接输出 `data`

在原始文件更新时,Hexo 会执行所有生成器并重建路由,**请直接回传资料,不要直接操作路由**
在原始文件更新时,Hexo 会执行所有生成器并重建路由,**请直接回传数据,不要直接操作路由**

## 范例
## 示例

### 归档页面

`archives/index.html` 建立一归档页面,把所有文章当作资料传入模板内,这个资料也就等同于模板中的 `page` 变量。
`archives/index.html` 建立一归档页面,把所有文章当作数据传入模板内,这个数据也就等同于模板中的 `page` 变量。

然后,设置 `layout` 属性好让 Hexo 使用主题模板来渲染,在此例中同时设定了两个布局,当 `archive` 布局不存在时,会继续尝试 `index` 布局。

Expand Down Expand Up @@ -90,7 +90,7 @@ hexo.extend.generator.register('post', function(locals){

### 复制文件

这次不直接在 `data` 中返回数据而是返回一个函数,如此一来这个路由唯有在使用时才会建立 `fs.ReadStream`
这次我们不明确返回数据,而是将 `data` 设置为一个函数,这样路由只会在需要时才会构建 `fs.ReadStream`

``` js
var fs = require('hexo-fs');
Expand Down
12 changes: 7 additions & 5 deletions source/zh-cn/api/helper.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,16 @@ title: 辅助函数(Helper)
---
辅助函数帮助您在模板中快速插入内容,建议您把复杂的代码放在辅助函数而非模板中。

辅助函数不能从 `source` 的文件中访问。
## 概要

``` js
hexo.extend.helper.register(name, function(){
// ...
});
```

## 范例
## 示例

``` js
hexo.extend.helper.register('js', function(path){
Expand All @@ -25,11 +27,11 @@ hexo.extend.helper.register('js', function(path){

## 常见问题

### 定制 helper 应该放在哪里?
### 自定义 helper 应该放在哪里?

放置在 `scripts/``themes/<yourtheme>/scripts/` 目录中。
请放在 `scripts/``themes/<yourtheme>/scripts/` 目录中。

### 如何在我的定制 helper 中使用另外一个已经注册的 helper?
### 如何在我的自定义 helper 中使用另外一个已经注册的 helper?

所有的辅助函数都在同一个上下文中执行。例如,在一个自定义的辅助函数中使用 [`url_for()`](/zh-cn/docs/helpers#url-for)

Expand All @@ -39,7 +41,7 @@ hexo.extend.helper.register('lorem', function(path) {
});
```

### 如何在其他插件中使用已经注册的 helper?
### 如何在其他插件中使用已经注册的 helper

`hexo.extend.helper.get` 会返回一个指定名字的 helper,但是你还需要一个 `bind(hexo)`,就像这样:

Expand Down
10 changes: 5 additions & 5 deletions source/zh-cn/api/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@ hexo.init().then(function(){
`config` | 指定配置文件的路径。| `_config.yml`
`draft` / `drafts`| 是否将草稿加入到文章列表中。<br>例如在 `hexo.locals.get('posts')` 中获取草稿内容 | _config.yml 中 `render_drafts` 的值

## 载入文件
## 加载文件

Hexo 提供了两种方法来载入文件`load`, `watch`前者用于载入 `source` 文件夹内的所有文件及主题资源;而后者除了执行 `load` 以外,还会继续监视文件变动。
Hexo 提供了两种方法来加载文件`load`, `watch`前者用于加载 `source` 文件夹内的所有文件及主题资源;而后者除了执行 `load` 以外,还会继续监视文件变动。

这两个方法实际上所做的,就是载入文件列表,并把文件传给相对应的处理器(Processor),当文件全部处理完毕后,就执行生成器(Generator)来建立路由。
这两个方法实际上所做的,就是加载文件列表,并把文件传给相对应的处理器(Processor),当文件全部处理完毕后,就会执行生成器(Generator)来建立路由。

``` js
hexo.load().then(function(){
Expand All @@ -52,9 +52,9 @@ hexo.call('generate', {}).then(function(){
});
```

## 结束
## 退出

当指令完毕后,请执行 `exit` 方法让 Hexo 退出结束前的准备工作(如存储资料库)
无论控制台命令完成与否,都应调用 `exit` 方法。这样 Hexo 就能优雅地退出,并完成保存数据库等重要工作

``` js
hexo.call('generate').then(function(){
Expand Down
2 changes: 1 addition & 1 deletion source/zh-cn/api/posts.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ hexo.post.render(source, data);
`source` | 文件的完整路径(可忽略)
`data` | 数据

资料中必须包含 `content` 属性,如果没有的话,会尝试读取原始文件。此函数的执行顺序为:
数据中必须包含 `content` 属性,如果没有的话,Hexo 会尝试读取原始文件。此函数的执行顺序为:

- 执行 `before_post_render` 过滤器
- 使用 Markdown 或其他渲染器渲染(根据扩展名而定)
Expand Down
8 changes: 5 additions & 3 deletions source/zh-cn/api/renderer.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ title: 渲染引擎(Renderer)

``` js
hexo.extend.renderer.register(name, output, function(data, options){
// ...
}, sync);
```

Expand All @@ -16,16 +17,17 @@ hexo.extend.renderer.register(name, output, function(data, options){
`output` | 输出的扩展名(小写,不含开头的 `.`
`sync` | 同步模式

渲染函数中会传入两个参数
渲染函数中会传入三个参数

参数 | 描述
--- | ---
`data` | 包含两个属性:文件路径 `path` 和文件内容 `text``path` 不一定存在。
`option` | 选项
`callback` | 包含两个参数 `err`, `value` 的回调函数

## 范例
## 示例

### 非同步模式
### 异步模式

``` js
var stylus = require('stylus');
Expand Down
6 changes: 3 additions & 3 deletions source/zh-cn/api/rendering.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 渲染
---
在 Hexo 中,有两个方法可用于渲染文件或字符串,分别是非同步的 `hexo.render.render` 和同步的 `hexo.render.renderSync`,这两个方法的使用方式十分类似,因此以下仅以非同步的 `hexo.render.render` 为例。
在 Hexo 中,有两个方法可用于渲染文件或字符串,分别是异步的 `hexo.render.render` 和同步的 `hexo.render.renderSync`,这两个方法的使用方式十分类似,因此下文仅以异步的 `hexo.render.render` 为例。

## 渲染字符串

Expand Down Expand Up @@ -69,8 +69,8 @@ hexo.render.getOutput('image.png') // '''
如果你没有使用 [标签插件](/zh-cn/docs/tag-plugins) 并且想要在你的文章中使用 `{{ }}``{% %}` 而不使用 [转义](/zh-cn/docs/troubleshooting#转义(Escape)内容), 你可以通过以下方式在现有的渲染器中禁用对 Nunjucks 标签的处理:

``` js
// following example only applies to '.md' file extension
// you may need to cover other extensions, e.g. '.markdown', '.mkd', etc
// 以下示例仅适用于".md "文件扩展名
// 您可能需要覆盖其他扩展名,例如'.markdown''.mkd'
const renderer = hexo.render.renderer.get('md')
if (renderer) {
renderer.disableNunjucks = true
Expand Down
2 changes: 1 addition & 1 deletion source/zh-cn/api/router.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ title: 路由

## 获取路径

`get` 方法会传回一个 [Stream]例如把该路径的资料存储到某个指定位置
`get` 方法会传回一个 [Stream]例如把该路径的数据存储到某个指定位置

``` js
var data = hexo.route.get('index.html');
Expand Down
8 changes: 4 additions & 4 deletions source/zh-cn/api/tag.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ hexo.extend.tag.register(name, function(args, content){

标签函数会传入两个参数:`args``content`,前者代表开发者在使用标签插件时传入的参数,而后者则是标签插件所覆盖的内容。

从 Hexo 3 开始,因为新增了非同步渲染功能,而改用 [Nunjucks] 作为渲染引擎,其行为可能会与过去使用的 [Swig] 有些许差异。
从 Hexo 3 开始,因为新增了异步渲染功能,而改用 [Nunjucks] 作为渲染引擎,其行为可能会与过去使用的 [Swig] 有些许差异。

## 移除标签插件

Expand Down Expand Up @@ -44,9 +44,9 @@ hexo.extend.tag.register('youtube', tagFn);

### async

开启非同步模式,此选项默认为 `false`
开启异步模式,此选项默认为 `false`

## 范例
## 示例

### 没有结束标签

Expand All @@ -70,7 +70,7 @@ hexo.extend.tag.register('pullquote', function(args, content){
}, {ends: true});
```

### 非同步渲染
### 异步渲染

插入文件。

Expand Down
2 changes: 1 addition & 1 deletion source/zh-cn/api/themes.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ hexo.theme.removeView(path);

## 模板

模板本身有两个方法可供使用:`render``renderSync`。两者功能一样,只是前者为非同步函数,而后者为同步函数,因此仅以 `render` 演示调用方法。
模板本身有两个方法可供使用:`render``renderSync`。两者功能一样,只是前者为异步函数,而后者为同步函数,因此仅以 `render` 演示调用方法。

``` js
var view = hexo.theme.getView('layout.swig');
Expand Down
4 changes: 2 additions & 2 deletions source/zh-cn/docs/commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ $ hexo clean
$ hexo list <type>
```

列出网站资料
列出网站数据

## version

Expand All @@ -167,7 +167,7 @@ $ hexo version
$ hexo --safe
```

在安全模式下,不会载入插件和脚本。当您在安装新插件遭遇问题时,可以尝试以安全模式重新执行。
在安全模式下,不会加载插件和脚本。当您在安装新插件遭遇问题时,可以尝试以安全模式重新执行。

### 调试模式

Expand Down
4 changes: 2 additions & 2 deletions source/zh-cn/docs/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,8 @@ $ hexo server

### 翻译

1.`source` 资料夹中建立一个新的语言资料夹(全小写)。
2.`source` 资料夹中相关的文件(Markdown 和模板文件)复制到新的语言资料夹中
1.`source` 文件夹中建立一个新的语言文件夹(全小写)。
2.`source` 文件夹中相关的文件(Markdown 和模板文件)复制到新的语言文件夹中
3.`source/_data/language.yml` 中新增语言。
4.`en.yml` 复制到 `themes/navy/languages`中并命名为语言名称(全小写)。

Expand Down
4 changes: 2 additions & 2 deletions source/zh-cn/docs/data-files.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 数据文件
---
有时您可能需要在主题中使用某些资料,而这些资料并不在文章内,并且是需要重复使用的,那么您可以考虑使用 Hexo 3.0 新增的「数据文件」功能。此功能会载入 `source/_data` 内的 YAML 或 JSON 文件,如此一来您便能在网站中复用这些文件了。
有时您可能需要在主题中使用某些数据,而这些数据并不在文章内,并且是需要重复使用的,那么您可以考虑使用 Hexo 3.0 新增的「数据文件」功能。此功能会加载 `source/_data` 内的 YAML 或 JSON 文件,如此一来您便能在网站中复用这些文件了。

举例来说,在 `source/_data` 文件夹中新建 `menu.yml` 文件:

Expand All @@ -11,7 +11,7 @@ Gallery: /gallery/
Archives: /archives/
```
您就能在模板中使用这些资料
您就能在模板中使用这些数据
```
<% for (var link in site.data.menu) { %>
Expand Down
2 changes: 1 addition & 1 deletion source/zh-cn/docs/github-pages.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ title: 在 GitHub Pages 上部署 Hexo
$ git push -u origin main
```

- 默认情况下 `public/` 不会被上传(也不该被上传),确保 `.gitignore` 文件中包含一行 `public/`。整体文件夹结构应该与 [范例储存库](https://github.com/hexojs/hexo-starter) 大致相似。
- 默认情况下 `public/` 不会被上传(也不该被上传),确保 `.gitignore` 文件中包含一行 `public/`。整体文件夹结构应该与 [示例储存库](https://github.com/hexojs/hexo-starter) 大致相似。

3. 使用 `node --version` 指令检查你电脑上的 Node.js 版本,并记下该版本 (例如:`v16.y.z`)
4. 在储存库中建立 `.github/workflows/pages.yml`,并填入以下内容 (将 `16` 替换为上个步骤中记下的版本):
Expand Down
6 changes: 3 additions & 3 deletions source/zh-cn/docs/helpers.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ url: https://example.com/blog # example

### css

载入 CSS 文件。`path` 可以是数组或字符串,如果 `path` 开头不是 `/` 或任何协议,则会自动加上根路径;如果后面没有加上 `.css` 扩展名的话,也会自动加上。对于自定义属性请使用对象类型。
加载 CSS 文件。`path` 可以是数组或字符串,如果 `path` 开头不是 `/` 或任何协议,则会自动加上根路径;如果后面没有加上 `.css` 扩展名的话,也会自动加上。对于自定义属性请使用对象类型。

``` js
<%- css(path, ...) %>
Expand All @@ -144,7 +144,7 @@ url: https://example.com/blog # example

### js

载入 JavaScript 文件。`path` 可以是数组或字符串,如果 `path` 开头不是 `/` 或任何协议,则会自动加上根路径;如果后面没有加上 `.js` 扩展名的话,也会自动加上。对于自定义属性请使用对象类型。
加载 JavaScript 文件。`path` 可以是数组或字符串,如果 `path` 开头不是 `/` 或任何协议,则会自动加上根路径;如果后面没有加上 `.js` 扩展名的话,也会自动加上。对于自定义属性请使用对象类型。

``` js
<%- js(path, ...) %>
Expand Down Expand Up @@ -486,7 +486,7 @@ url: https://example.com/blog # example

### partial

载入其他模板文件,您可在 `locals` 设定区域变量。
加载其他模板文件,您可在 `locals` 设定区域变量。

``` js
<%- partial(layout, [locals], [options]) %>
Expand Down
Loading

0 comments on commit 4939edb

Please sign in to comment.