From 1c9ca1b002badb511ff21d58b3f20986741ab31f Mon Sep 17 00:00:00 2001 From: sigoden Date: Sun, 24 Dec 2023 16:04:18 +0800 Subject: feat: custom REPL prompt (#283) --- src/utils/render_prompt.rs | 155 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 155 insertions(+) create mode 100644 src/utils/render_prompt.rs (limited to 'src/utils/render_prompt.rs') diff --git a/src/utils/render_prompt.rs b/src/utils/render_prompt.rs new file mode 100644 index 0000000..12661fa --- /dev/null +++ b/src/utils/render_prompt.rs @@ -0,0 +1,155 @@ +use std::collections::HashMap; + +/// Render REPL prompt +/// +/// The template comprises plain text and `{...}`. +/// +/// The syntax of `{...}`: +/// - `{var}` - When `var` has a value, replace `var` with the value and eval `template` +/// - `{?var