From bb7f00dbef3bf4c7c00c1969cb0089de51bd9ba9 Mon Sep 17 00:00:00 2001 From: Conrad Ludgate Date: Sun, 26 Mar 2023 15:47:38 +0100 Subject: chore: use fork of skim (#803) * use fuzzy-matcher instead of skim switch to a search-engine abstraction * fmt * fix deprecated warnings --- src/command/client/search/engines/db.rs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/command/client/search/engines/db.rs (limited to 'src/command/client/search/engines/db.rs') diff --git a/src/command/client/search/engines/db.rs b/src/command/client/search/engines/db.rs new file mode 100644 index 00000000..5a35da10 --- /dev/null +++ b/src/command/client/search/engines/db.rs @@ -0,0 +1,30 @@ +use async_trait::async_trait; +use atuin_client::{database::Database, history::History, settings::SearchMode}; +use eyre::Result; + +use super::{SearchEngine, SearchState}; + +pub struct Search(pub SearchMode); + +#[async_trait] +impl SearchEngine for Search { + async fn full_query( + &mut self, + state: &SearchState, + db: &mut dyn Database, + ) -> Result> { + Ok(db + .search( + self.0, + state.filter_mode, + &state.context, + state.input.as_str(), + Some(200), + None, + None, + ) + .await? + .into_iter() + .collect::>()) + } +} -- cgit v1.3.1