diff options
Diffstat (limited to 'src/shell/history/mod.rs')
-rw-r--r-- | src/shell/history/mod.rs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/shell/history/mod.rs b/src/shell/history/mod.rs index 7cd37fc..8ff9ccc 100644 --- a/src/shell/history/mod.rs +++ b/src/shell/history/mod.rs @@ -88,7 +88,7 @@ impl History { pub async fn run( &mut self, - ast: crate::parse::Commands, + ast: crate::parse::ast::Commands, env: &Env, event_w: async_std::channel::Sender<Event>, ) -> anyhow::Result<usize> { @@ -269,7 +269,7 @@ impl std::iter::DoubleEndedIterator for VisibleEntries { } fn run_commands( - ast: crate::parse::Commands, + ast: crate::parse::ast::Commands, entry: async_std::sync::Arc<async_std::sync::Mutex<Entry>>, mut env: Env, input_r: async_std::channel::Receiver<Vec<u8>>, @@ -299,7 +299,8 @@ fn run_commands( } }; - for pipeline in ast.pipelines() { + let commands = ast.eval(&env); + for pipeline in commands.pipelines() { env.set_pipeline(pipeline.input_string().to_string()); match run_pipeline(&pty, &mut env, event_w.clone()).await { Ok((pipeline_status, done)) => { |