feat: update: #4518, Add example for register,source,save,shuffle and from tsv (#4577)

This commit is contained in:
Justin Ma
2022-02-21 20:25:41 +08:00
committed by GitHub
parent d454fad4dc
commit 968427c4e9
5 changed files with 84 additions and 6 deletions

View File

@ -1,6 +1,6 @@
use nu_protocol::ast::Call;
use nu_protocol::engine::{Command, EngineState, Stack};
use nu_protocol::{Category, PipelineData, Signature, SyntaxShape};
use nu_protocol::{Category, Example, PipelineData, Signature, SyntaxShape};
#[derive(Clone)]
pub struct Register;
@ -50,4 +50,19 @@ impl Command for Register {
) -> Result<nu_protocol::PipelineData, nu_protocol::ShellError> {
Ok(PipelineData::new(call.head))
}
fn examples(&self) -> Vec<Example> {
vec![
Example {
description: "Register `nu_plugin_extra_query` plugin from ~/.cargo/bin/ dir",
example: r#"register -e capnp ~/.cargo/bin/nu_plugin_extra_query"#,
result: None,
},
Example {
description: "Register `nu_plugin_extra_query` plugin from `nu -c`(plugin will be available in that nu session only)",
example: r#"let plugin = ((which nu).path.0 | path dirname | path join 'nu_plugin_extra_query'); nu -c $'register -e capnp ($plugin); version'"#,
result: None,
},
]
}
}

View File

@ -1,7 +1,7 @@
use nu_engine::{eval_block, CallExt};
use nu_protocol::ast::Call;
use nu_protocol::engine::{Command, EngineState, Stack};
use nu_protocol::{Category, PipelineData, ShellError, Signature, SyntaxShape};
use nu_protocol::{Category, Example, PipelineData, ShellError, Signature, SyntaxShape};
/// Source a file for environment variables.
#[derive(Clone)]
@ -40,4 +40,24 @@ impl Command for Source {
let block = engine_state.get_block(block_id as usize).clone();
eval_block(engine_state, stack, &block, input)
}
fn examples(&self) -> Vec<Example> {
vec![
Example {
description: "Runs foo.nu in the current context",
example: r#"source foo.nu"#,
result: None,
},
Example {
description: "Runs foo.nu in current context and call the command defined, suppose foo.nu has content: `def say-hi [] { echo 'Hi!' }`",
example: r#"source ./foo.nu; say-hi"#,
result: None,
},
Example {
description: "Runs foo.nu in current context and call the `main` command automatically, suppose foo.nu has content: `def main [] { echo 'Hi!' }`",
example: r#"source ./foo.nu"#,
result: None,
},
]
}
}