From d0b73fb6a0063ae5253d86015cace4de50e16788 Mon Sep 17 00:00:00 2001 From: ezirmusitua Date: Wed, 15 Nov 2023 09:28:09 +0800 Subject: [PATCH] doc: remove unnecessary space Signed-off-by: ezirmusitua --- .../current/start/build-and-run/aot.md | 6 +++--- .../current/start/build-and-run/cli.md | 6 +++--- .../current/start/build-and-run/docker_wasm.md | 4 ++-- .../current/start/getting-started/quick_start_redhat.md | 2 +- .../current/start/overview.md | 4 ++-- .../current/start/usage/serverless/netlify.md | 2 +- .../current/start/usage/serverless/vercel.md | 2 +- .../current/start/wasmedge/features.md | 4 ++-- .../current/start/wasmedge/integrations.md | 6 +++--- 9 files changed, 18 insertions(+), 18 deletions(-) diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/aot.md b/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/aot.md index af378b19..c59904b3 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/aot.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/aot.md @@ -50,12 +50,12 @@ USAGE - 默认值为 `2`,即 `O2`。 8. 输入的 WASM 文件(`/path/to/wasm/file`)。 9. 输出路径(`/path/to/output/file`)。 - - 默认情况下,`wasmedge compile` 命令将输出 [通用的 WASM 格式](#output-format-universal-wasm)。 - - 如果在输出路径中指定了特定的文件扩展名(在 Linux 上为 `.so`,在 MacOS 上为 `.dylib`,在 Windows 上为 `.dll`),`wasmedge compile` 命令将输出 [共享库格式](#output-format-shared-library)。 + - 默认情况下,`wasmedge compile` 命令将输出[通用的 WASM 格式](#output-format-universal-wasm)。 + - 如果在输出路径中指定了特定的文件扩展名(在 Linux 上为 `.so`,在 MacOS 上为 `.dylib`,在 Windows 上为 `.dll`),`wasmedge compile` 命令将输出[共享库格式](#output-format-shared-library)。 ## 示例 -我们建立了一个纯手写的 [fibonacci.wat](https://github.com/WasmEdge/WasmEdge/raw/master/examples/wasm/fibonacci.wat) 并使用 [wat2wasm](https://webassembly.github.io/wabt/demo/wat2wasm/) 工具将其转换为 `fibonacci.wasm` WebAssembly 程序。以此为例,将它导出为一个接收单个 `i32` 整数作为输入参数的 `fib()` 函数。 +我们创建了纯手工编写的 [fibonacci.wat](https://github.com/WasmEdge/WasmEdge/raw/master/examples/wasm/fibonacci.wat) 并使用 [wat2wasm](https://webassembly.github.io/wabt/demo/wat2wasm/) 工具将其转换为 `fibonacci.wasm` WebAssembly 程序。以此为例,将它导出为一个接收单个 `i32` 整数作为输入参数的 `fib()` 函数。 你可以执行: diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/cli.md b/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/cli.md index 4fd62739..73ff288f 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/cli.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/cli.md @@ -98,7 +98,7 @@ USAGE Hello World 示例是一个独立的 Rust 应用程序,可以通过 [WasmEdge 命令行工具](../build-and-run/cli)执行。它的源代码和构建说明可以在[此处](https://github.com/second-state/rust-examples/tree/main/hello)找到。 -你需要安装[Rust 编译器](https://github.com/second-state/rust-examples/blob/main/README.md#prerequisites),然后使用以下命令从 Rust 源代码构建 WASM 字节码文件。 +你需要安装 [Rust 编译器](https://github.com/second-state/rust-examples/blob/main/README.md#prerequisites),然后使用以下命令从 Rust 源代码构建 WASM 字节码文件。 ```bash cargo build --target wasm32-wasi --release @@ -189,7 +189,7 @@ Hello WasmEdge! [add](https://github.com/second-state/wasm-learning/tree/master/cli/add) 程序是用 Rust 编写的,包含一个导出的 `add()` 函数。你可以将其编译为 WebAssembly,并使用 `wasmedge` 调用 `add()` 函数。在这个示例中,您将看到如何从 CLI 进行此操作。通常在将 WasmEdge 嵌入到另一个主机应用程序中时,需要从主机调用 WASM 函数。 -你需要安装[Rust 编译器](https://github.com/second-state/rust-examples/blob/main/README.md#prerequisites),然后使用以下命令从 Rust 源代码构建 WASM 字节码文件。 +你需要安装 [Rust 编译器](https://github.com/second-state/rust-examples/blob/main/README.md#prerequisites),然后使用以下命令从 Rust 源代码构建 WASM 字节码文件。 ```bash cargo build --target wasm32-wasi --release @@ -256,7 +256,7 @@ wasmedge --dir .:. wasmedge_quickjs.wasm hello.js 1 2 3 Hello 1 2 3 ``` -[qjs_tf.wasm](https://github.com/WasmEdge/WasmEdge/raw/master/examples/wasm/js/qjs_tf.wasm) 是一个被贬意为 WebAssembly 的包含 [WasmEdge Tensorflow 扩展](https://www.secondstate.io/articles/wasi-tensorflow/) 的 JavaScript 解释器。要运行[qjs_tf.wasm](https://github.com/WasmEdge/WasmEdge/raw/master/examples/wasm/js/qjs_tf.wasm),你必须使用 `wasmedge-tensorflow-lite` CLI 工具,这是一个内置了 Tensorflow-Lite 扩展的 WasmEdge 构建版本。您可以下载一个完整的 [基于 Tensorflow 的 JavaScript 示例](https://github.com/second-state/wasmedge-quickjs/tree/main/example_js/tensorflow_lite_demo) 进行图像分类。 +[qjs_tf.wasm](https://github.com/WasmEdge/WasmEdge/raw/master/examples/wasm/js/qjs_tf.wasm) 是一个被贬意为 WebAssembly 的包含 [WasmEdge Tensorflow 扩展](https://www.secondstate.io/articles/wasi-tensorflow/) 的 JavaScript 解释器。要运行 [qjs_tf.wasm](https://github.com/WasmEdge/WasmEdge/raw/master/examples/wasm/js/qjs_tf.wasm),你必须使用 `wasmedge-tensorflow-lite` CLI 工具,这是一个内置了 Tensorflow-Lite 扩展的 WasmEdge 构建版本。您可以下载一个完整的[基于 Tensorflow 的 JavaScript 示例](https://github.com/second-state/wasmedge-quickjs/tree/main/example_js/tensorflow_lite_demo) 进行图像分类。 ```bash # Download the Tensorflow example diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/docker_wasm.md b/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/docker_wasm.md index 3076828d..3b88cb37 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/docker_wasm.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/start/build-and-run/docker_wasm.md @@ -97,7 +97,7 @@ Hello WasmEdge! WasmEdge 提供与 Node.js 兼容的 JavaScript 运行时。你可以创建轻量级的 WASM 容器镜像来运行 Node.js 应用程序。与标准的 Node.js Linux 容器镜像相比,WASM 镜像体积仅为其 1/100、完全可移植,并且启动时间是其 1/10。 -在本指南中,示例应用是一个用 Node.js 编写的 HTTP Web 服务器。其 [源代码和构建说明在此处](https://github.com/second-state/wasmedge-quickjs/tree/main/example_js/docker_wasm/server)。 +在本指南中,示例应用是一个用 Node.js 编写的 HTTP Web 服务器。其[源代码和构建说明在此处](https://github.com/second-state/wasmedge-quickjs/tree/main/example_js/docker_wasm/server)。 ### 构建 Node.js 示例 @@ -177,7 +177,7 @@ Hello WasmEdge Docker + WASM 允许我们构建和运行 WASM 容器。然而,在大多数复杂应用中,WASM 容器只是应用的一部分。它需要与系统中的其他 Linux 容器协同工作。[Docker compose](https://docs.docker.com/compose/) 工具广泛用于组合和管理多容器部署,它与 Docker Desktop 一起安装。 -在我们的 [示例微服务应用程序](https://github.com/second-state/microservice-rust-mysql) 中,包括一个 Nginx Web 服务器和一个 MySQL 数据库。WASM 容器仅用于 Rust 应用,用于访问数据库和处理 HTTP 请求(即应用服务器)。 +在我们的[示例微服务应用程序](https://github.com/second-state/microservice-rust-mysql) 中,包括一个 Nginx Web 服务器和一个 MySQL 数据库。WASM 容器仅用于 Rust 应用,用于访问数据库和处理 HTTP 请求(即应用服务器)。 :::note diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/start/getting-started/quick_start_redhat.md b/i18n/zh/docusaurus-plugin-content-docs/current/start/getting-started/quick_start_redhat.md index 3ccd20c3..6a54cbd6 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/start/getting-started/quick_start_redhat.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/start/getting-started/quick_start_redhat.md @@ -102,4 +102,4 @@ Hello WasmEdge ## 下一步 - [WasmEdge 的基本 Rust 示例](https://github.com/second-state/rust-examples) -- 用你喜欢的语言编写 WASM 应用,如 [Rust](/category/develop-wasm-apps-in-rust), [C/C++](/category/develop-wasm-apps-in-cc), [JavaScript](/category/develop-wasm-apps-in-javascript), [Go](/category/develop-wasm-apps-in-go) 以及其他许多语言。 +- 用你喜欢的语言编写 WASM 应用,如 [Rust](/category/develop-wasm-apps-in-rust)、[C/C++](/category/develop-wasm-apps-in-cc)、[JavaScript](/category/develop-wasm-apps-in-javascript)、[Go](/category/develop-wasm-apps-in-go) 以及其他许多语言。 diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/start/overview.md b/i18n/zh/docusaurus-plugin-content-docs/current/start/overview.md index dcef7ec2..046c30a0 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/start/overview.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/start/overview.md @@ -19,7 +19,7 @@ WasmEdge 运行时为其包含的 WebAssembly 字节码程序提供了良好定 - 介绍 [WasmEdge 运行时](/category/what-is-wasmedge) - [运行 WasmEdge](/category/running-with-wasmedge) -对于使用 WasmEdge 进行高级编程,请参考 [开发 WASM 应用程序](../develop/overview.md),[在应用中嵌入 WasmEdge](../embed/overview.md),或向 WasmEdge [进行贡献](../contribute/overview.md) 的指南。 +对于使用 WasmEdge 进行高级编程,请参考[开发 WASM 应用程序](../develop/overview.md),[在应用中嵌入 WasmEdge](../embed/overview.md),或向 WasmEdge [进行贡献](../contribute/overview.md) 的指南。 如果你有任何问题或有任何反馈,请通过以下方式联系我们: @@ -27,7 +27,7 @@ WasmEdge 运行时为其包含的 WebAssembly 字节码程序提供了良好定 - [创建 GitHub 问题以获取技术支持](https://github.com/WasmEdge/WasmEdge/issues) - [提交 GitHub 讨论](https://github.com/WasmEdge/WasmEdge/discussions) - [在 Twitter 关注 @realwasmedge](https://twitter.com/realwasmedge) -对于使用 WasmEdge 进行高级编程,请参考 [开发 WASM 应用程序](../develop/overview.md),[在应用中嵌入 WasmEdge](../embed/overview.md),或向 WasmEdge [进行贡献](../contribute/overview.md) 的指南。 +对于使用 WasmEdge 进行高级编程,请参考[开发 WASM 应用程序](../develop/overview.md),[在应用中嵌入 WasmEdge](../embed/overview.md),或向 WasmEdge [进行贡献](../contribute/overview.md) 的指南。 如果你有任何问题或有任何反馈,请通过以下方式联系我们: diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/start/usage/serverless/netlify.md b/i18n/zh/docusaurus-plugin-content-docs/current/start/usage/serverless/netlify.md index 0c70b00c..eff369a2 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/start/usage/serverless/netlify.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/start/usage/serverless/netlify.md @@ -184,6 +184,6 @@ module.exports = (req, res) => { }; ``` -现在,你可以 [将你 Fork 的存储库部署到 Netlify](https://www.netlify.com/blog/2016/09/29/a-step-by-step-guide-deploying-on-netlify/),获得一个用于主题分类的 Web 应用程序。 +现在,你可以[将你 Fork 的存储库部署到 Netlify](https://www.netlify.com/blog/2016/09/29/a-step-by-step-guide-deploying-on-netlify/),获得一个用于主题分类的 Web 应用程序。 接下来,轮到你使用 [netlify-wasm-runtime 存储库](https://github.com/second-state/netlify-wasm-runtime) 作为模板在 Netlify 中开发 Rust 无服务器函数了。期待着你出色的工作。 diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/start/usage/serverless/vercel.md b/i18n/zh/docusaurus-plugin-content-docs/current/start/usage/serverless/vercel.md index a8a3f48f..2088d6f1 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/start/usage/serverless/vercel.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/start/usage/serverless/vercel.md @@ -189,6 +189,6 @@ module.exports = (req, res) => { }; ``` -现在,你可以 [将你 Fork 的存储库部署到 Vercel](https://vercel.com/docs/git#deploying-a-git-repository),获得一个用于主题分类的 Web 应用。 +现在,你可以[将你 Fork 的存储库部署到 Vercel](https://vercel.com/docs/git#deploying-a-git-repository),获得一个用于主题分类的 Web 应用。 接下来,轮到你使用 [vercel-wasm-runtime 存储库](https://github.com/second-state/vercel-wasm-runtime) 作为模板,在 Vercel 中开发你自己的 Rust 无服务器函数了。期待着您出色的工作。 diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/start/wasmedge/features.md b/i18n/zh/docusaurus-plugin-content-docs/current/start/wasmedge/features.md index 78c68663..1455975c 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/start/wasmedge/features.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/start/wasmedge/features.md @@ -8,7 +8,7 @@ WasmEdge([CNCF 旗下的沙盒项目](https://www.cncf.io/projects/wasmedge/) ## 高性能 -利用 [基于 LLVM 的 AoT 编译器](../build-and-run/aot),WasmEdge 是市场上速度最快的 WebAssembly 运行时。 +利用[基于 LLVM 的 AoT 编译器](../build-and-run/aot),WasmEdge 是市场上速度最快的 WebAssembly 运行时。 - [高性能轻量设计用于无服务器计算](https://arxiv.org/abs/2010.07115),发表于 2021 年 1 月 IEEE 软件。[https://arxiv.org/abs/2010.07115](https://arxiv.org/abs/2010.07115) - [云端性能分析:Arm 与 x86 CPU 的比较](https://www.infoq.com/articles/arm-vs-x86-cloud-performance/),发表于 2021 年 1 月的 infoQ.com。[https://www.infoq.com/articles/arm-vs-x86-cloud-performance/](https://www.infoq.com/articles/arm-vs-x86-cloud-performance/) @@ -43,7 +43,7 @@ WasmEdge 可以与现有的云原生基础设施无缝集成。 要将 WasmEdge 与你现有的云原生基础架构集成,有几种管理 WASM 应用程序作为 Kubernetes 下的“容器”的选项。这些选项使您能够在 Kubernetes 集群中同时运行 Linux 容器和 WASM 容器。 -**选项 #1:** [使用 OCI 运行时 crun](../../develop/deploy/oci-runtime/crun.md)(runc 的 C 版本,主要由 Red Hat 支持)。crun 根据镜像注释决定 OCI 镜像是 WASM 还是基于 Linux 的。如果镜像被注释为 wasm32,则 crun 将绕过 Linux 容器设置,直接使用 WasmEdge 运行镜像。通过使用 crun,你可以让整个 Kubernetes 栈(包括 CRI-O、containerd、Podman、kind、micro k8s 和 k8s)与 WASM 镜像一起工作。 +**选项 #1:**[使用 OCI 运行时 crun](../../develop/deploy/oci-runtime/crun.md)(runc 的 C 版本,主要由 Red Hat 支持)。crun 根据镜像注释决定 OCI 镜像是 WASM 还是基于 Linux 的。如果镜像被注释为 wasm32,则 crun 将绕过 Linux 容器设置,直接使用 WasmEdge 运行镜像。通过使用 crun,你可以让整个 Kubernetes 栈(包括 CRI-O、containerd、Podman、kind、micro k8s 和 k8s)与 WASM 镜像一起工作。 选项 #2:[使用 containerd-shim 通过 runwasi 启动 WASM“容器”](../../develop/deploy/cri-runtime/containerd.md)。基本上,containerd 可以查看镜像的目标平台。如果镜像是 wasm32,则使用 runwasi;如果是 x86 / arm,则使用 runc。这是 Docker + Wasm 使用的方法。 diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/start/wasmedge/integrations.md b/i18n/zh/docusaurus-plugin-content-docs/current/start/wasmedge/integrations.md index dd4cda35..7102f32a 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/start/wasmedge/integrations.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/start/wasmedge/integrations.md @@ -10,10 +10,10 @@ WasmEdge 是云原生和边缘计算应用的“无服务器”运行时。它 WasmEdge 的一个主要用例是从主机应用程序启动虚拟机实例。根据你的主机应用程序编程语言,您可以使用 WasmEdge SDK 来启动和调用 WasmEdge 函数。 -- 使用 [WasmEdge C API](/category/c-sdk-for-embedding-wasmedge) 将 WasmEdge 函数嵌入到基于 `C` 的应用程序中。查看 [快速入门指南](../../embed/c/intro.md)。 -- 使用 [WasmEdge Go API](/category/go-sdk-for-embedding-wasmedge) 将 WasmEdge 函数嵌入到 `Go` 应用程序中。这里有一个 [教程](https://www.secondstate.io/articles/extend-golang-app-with-webassembly-rust/) 和一些 [示例](https://github.com/second-state/WasmEdge-go-examples)! +- 使用 [WasmEdge C API](/category/c-sdk-for-embedding-wasmedge) 将 WasmEdge 函数嵌入到基于 `C` 的应用程序中。查看[快速入门指南](../../embed/c/intro.md)。 +- 使用 [WasmEdge Go API](/category/go-sdk-for-embedding-wasmedge) 将 WasmEdge 函数嵌入到 `Go` 应用程序中。这里有一个[教程](https://www.secondstate.io/articles/extend-golang-app-with-webassembly-rust/) 和一些[示例](https://github.com/second-state/WasmEdge-go-examples)! - 使用 [WasmEdge Rust crate](https://crates.io/crates/wasmedge-sdk) 将 WasmEdge 函数嵌入到 `Rust` 应用程序中。 -- 使用 `NAPI` 将 WasmEdge 函数嵌入到 `Node.js` 应用程序中。这里有一个 [教程](https://www.secondstate.io/articles/getting-started-with-rust-function/)。 +- 使用 `NAPI` 将 WasmEdge 函数嵌入到 `Node.js` 应用程序中。这里有一个[教程](https://www.secondstate.io/articles/getting-started-with-rust-function/)。 - 通过生成一个新进程将 WasmEdge 函数嵌入到任何应用程序。查看 [Vercel 无服务器函数](https://www.secondstate.io/articles/vercel-wasmedge-webassembly-rust/) 和 [AWS Lambda](https://www.cncf.io/blog/2021/08/25/webassembly-serverless-functions-in-aws-lambda/) 的示例。 不过,WebAssembly 规范仅支持用于 WebAssembly 字节码函数的非常有限的输入参数和返回值的数据类型。要传递复杂数据类型(例如字符串或数组)作为来自 Rust 编译的 WebAssembly 的调用参数,你应该使用[`wasmedge-bindgen`](https://crates.io/crates/wasmedge-bindgen)提供的 `bindgen` 解决方案。我们目前在 [Rust](../../develop/rust/bindgen.md) 和 [Go](../../embed/go/bindgen.md) 中支持`wasmedge-bindgen`。