aboutsummaryrefslogtreecommitdiff
path: root/docs/_zh_CN
diff options
context:
space:
mode:
Diffstat (limited to 'docs/_zh_CN')
-rw-r--r--docs/_zh_CN/pages/12-exit-code.md4
-rw-r--r--docs/_zh_CN/pages/advanced/1-completion.md21
-rw-r--r--docs/_zh_CN/pages/other/features.md64
3 files changed, 16 insertions, 73 deletions
diff --git a/docs/_zh_CN/pages/12-exit-code.md b/docs/_zh_CN/pages/12-exit-code.md
index 9270b84..1f9e05c 100644
--- a/docs/_zh_CN/pages/12-exit-code.md
+++ b/docs/_zh_CN/pages/12-exit-code.md
@@ -12,7 +12,7 @@
@@@use mingling::setup::ExitCodeSetup;
fn main() {
let mut program = ThisProgram::new();
- program.with_setup(ExitCodeSetup::default());
+ program.with_setup(ExitCodeSetup);
@@@ program.exec_and_exit();
}
```
@@ -55,7 +55,7 @@ fn handle_check(_args: EntryCheck, ec: &mut ResExitCode) {
@@@use mingling::setup::ExitCodeSetup;
fn main() {
let mut program = ThisProgram::new();
- program.with_setup(ExitCodeSetup::default());
+ program.with_setup(ExitCodeSetup);
// 获取退出码自行处理
let exit_code = program.exec();
diff --git a/docs/_zh_CN/pages/advanced/1-completion.md b/docs/_zh_CN/pages/advanced/1-completion.md
index 28587b3..290fab0 100644
--- a/docs/_zh_CN/pages/advanced/1-completion.md
+++ b/docs/_zh_CN/pages/advanced/1-completion.md
@@ -11,13 +11,6 @@ Mingling 的补全是**完全动态**的——没有静态的补全文件,而
# Cargo.toml
[dependencies.mingling]
features = ["comp"]
-
-[build-dependencies.mingling]
-features = [
- "comp",
- # 启用 `build` 特性以提供构建期支持
- "build"
-]
```
## 工作原理
@@ -43,7 +36,7 @@ features = [
@@@dispatcher!("greet", EntryGreet);
#[completion(EntryGreet)]
-fn complete_greet(ctx: &ShellContext) -> Suggest {
+fn complete_greet(ctx: ShellContext) -> Suggest {
if ctx.previous_word == "greet" {
let mut items = BTreeSet::new();
items.insert(SuggestItem::new_with_desc("Alice".into(), "Likes to receive messages".into()));
@@ -72,8 +65,18 @@ suggest! {
## 生成补全脚本
-在 `build.rs` 中调用 `build_comp_scripts` 生成补全脚本(需要 `builds` + `comp` 特性)。
+开启 `comp` 特性后,`gen_program!()` 会在编译期自动调用 `build_comp!()`,生成以 `CARGO_PKG_NAME` 命名的补全脚本到 `target/mingling/`。
+
+如果你的二进制名与 crate 名不同,可以手动调用 `build_comp!()` 并指定二进制名:
+```rust
+// Features: ["comp"]
+@@@use mingling::macros::build_comp;
+@@@fn example() {
+build_comp!("mybin");
+@@@}
+```
+
详见 [example-completion](https://mingling-rs.github.io/mingling/docs/example-viewer.html?name=example-completion)。
<p align="center" style="font-size: 0.85em; color: gray;">
diff --git a/docs/_zh_CN/pages/other/features.md b/docs/_zh_CN/pages/other/features.md
index 5fa7c86..f8753e5 100644
--- a/docs/_zh_CN/pages/other/features.md
+++ b/docs/_zh_CN/pages/other/features.md
@@ -25,42 +25,6 @@ Mingling 提供了一系列**预设特性组**,方便用户按需组合启用
**定位:** 完整模式,启用 Mingling 的全部核心功能。在 `advanced` 的基础上额外包含 clap 集成、完整的结构化渲染器(含所有序列化格式)以及实验性的路径分析器,适合大型、功能全面的命令行应用。
-## `build_advanced`
-
-**启用特性:** `build`、`comp`
-
-**定位:** 构建期增强配置,用于在项目构建时生成补全脚本等构建辅助材料(`comp` 特性提供补全脚本生成能力)。
-
-> [!NOTE]
->
-> 此特性组为**构建依赖**专用,需配合 `advanced` 特性使用。请在 `Cargo.toml` 的 `[build-dependencies]` 中启用:
-
-```toml
-[dependencies.mingling]
-features = ["advanced"]
-
-[build-dependencies.mingling]
-features = ["build_advanced"]
-```
-
-## `build_full`
-
-**启用特性:** `build`、`comp`、`pathf`、`dispatch_tree`
-
-**定位:** 完整的构建期配置,在 `build_advanced` 的基础上额外包含路径分析器(`pathf`)以自动解析类型模块路径,适合结构复杂、需要自动化构建期分析的项目。
-
-> [!NOTE]
->
-> 此特性组为**构建依赖**专用,需配合 `full` 特性使用。请在 `Cargo.toml` 的 `[build-dependencies]` 中启用:
-
-```toml
-[dependencies.mingling]
-features = ["full"]
-
-[build-dependencies.mingling]
-features = ["build_full"]
-```
-
# 特性详解
## 特性 `all_serde_fmt`
@@ -91,23 +55,6 @@ async fn handle_state_foo(foo: StateFoo) -> Next {
详见 [示例](https://mingling-rs.github.io/mingling/docs/example-viewer.html?name=example-async-support)
-## 特性 `builds`
-
-**介绍:**
-
-启用部分需要在 `build.rs` 使用的脚本,目前包含:
-
-1. `comp` 特性下的补全脚本生成:
-
-```rust
-// BUILD TIME
-// Features: ["builds", "comp"]
-use mingling::build::build_comp_scripts;
-
-// 为 `myprogram` 生成补全脚本
-build_comp_scripts("myprogram").unwrap();
-```
-
## 特性 `clap`
**介绍:**
@@ -318,17 +265,10 @@ pub struct ErrorNotDir(PathBuf);
# Cargo.toml
[dependencies.mingling]
features = ["pathf"]
-
-[build-dependencies.mingling]
-features = ["builds", "pathf"]
-```
-
-```rust
-// BUILD TIME
-// Features: ["pathf"]
-analyze_and_build_type_mapping().unwrap();
```
+开启 `pathf` 特性后,`gen_program!()` 会在编译期自动调用 `build_pathf!()` 执行类型映射分析。
+
详见 [示例](https://mingling-rs.github.io/mingling/docs/example-viewer.html?name=example-pathfinder)
## 特性 `picker`