summaryrefslogtreecommitdiffstats
path: root/src/repl/init.rs
diff options
context:
space:
mode:
authorsigoden <sigoden@gmail.com>2023-03-12 07:54:18 +0800
committersigoden <sigoden@gmail.com>2023-03-12 07:54:18 +0800
commit0ed0ad1fd26cccb9f41379e2f0f2c77fca43c608 (patch)
treef0e44c0fd0d62c7a8ddb3ffe77f8e5687d855b5d /src/repl/init.rs
parent4aab872ee1033df31827a35a1af2ee9f1ec2e2e7 (diff)
downloadaichat-0ed0ad1fd26cccb9f41379e2f0f2c77fca43c608.tar.gz
chore: optimize readline multiline
Diffstat (limited to 'src/repl/init.rs')
-rw-r--r--src/repl/init.rs10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/repl/init.rs b/src/repl/init.rs
index 6914cdc..ae337ee 100644
--- a/src/repl/init.rs
+++ b/src/repl/init.rs
@@ -1,11 +1,13 @@
-use super::{highlighter::ReplHighlighter, prompt::ReplPrompt, REPL_COMMANDS};
+use super::{
+ highlighter::ReplHighlighter, prompt::ReplPrompt, validator::ReplValidator, REPL_COMMANDS,
+};
use crate::config::{Config, SharedConfig};
use anyhow::{Context, Result};
use reedline::{
- default_emacs_keybindings, ColumnarMenu, DefaultCompleter, DefaultValidator, Emacs,
- FileBackedHistory, KeyCode, KeyModifiers, Keybindings, Reedline, ReedlineEvent, ReedlineMenu,
+ default_emacs_keybindings, ColumnarMenu, DefaultCompleter, Emacs, FileBackedHistory, KeyCode,
+ KeyModifiers, Keybindings, Reedline, ReedlineEvent, ReedlineMenu,
};
const MENU_NAME: &str = "completion_menu";
@@ -36,7 +38,7 @@ impl Repl {
.with_edit_mode(edit_mode)
.with_quick_completions(true)
.with_partial_completions(true)
- .with_validator(Box::new(DefaultValidator))
+ .with_validator(Box::new(ReplValidator))
.with_ansi_colors(true);
let prompt = ReplPrompt::new(config);
Ok(Self { editor, prompt })