pub struct TerminalCaptureOptions {Show 19 fields
pub file: String,
pub args: Vec<String>,
pub cwd: Option<PathBuf>,
pub env: HashMap<String, String>,
pub env_remove: Vec<String>,
pub env_clear: bool,
pub cols: u16,
pub rows: u16,
pub aspect_ratio: Option<f64>,
pub settle_duration: Duration,
pub frames_on_write: bool,
pub recording: bool,
pub interactions: Vec<TerminalInteraction>,
pub stop_marker: Option<String>,
pub stop_marker_grace: Duration,
pub timeout: Option<Duration>,
pub artifact_directory: Option<PathBuf>,
pub artifacts: Option<Vec<TerminalArtifact>>,
pub on_trace: Option<TerminalTraceCallback>,
}Fields§
§file: String§args: Vec<String>§cwd: Option<PathBuf>§env: HashMap<String, String>Variables set on top of the inherited environment.
env_remove: Vec<String>Inherited variables to drop, applied after env (issue #229).
env_clear: boolStart from an empty environment instead of the parent’s (issue #229).
TERM, COLUMNS, LINES and env are still set.
cols: u16§rows: u16Ignored when aspect_ratio is set.
aspect_ratio: Option<f64>Derive rows as max(1, round(cols / (2 * aspect_ratio))), like the JS
aspectRatio option (JS defaults to 4 / 3, i.e. 30 rows for 80
columns; None keeps rows, 24 by default).
settle_duration: Duration§frames_on_write: boolRetain a frame after every parsed PTY write instead of waiting for idle.
recording: boolDisable recording history; keep the latest frame and last 1MB of output.
interactions: Vec<TerminalInteraction>§stop_marker: Option<String>§stop_marker_grace: Duration§timeout: Option<Duration>Deadline for the whole run. None keeps the child alive indefinitely,
which is the default for crate::terminal::open_terminal sessions.
artifact_directory: Option<PathBuf>§artifacts: Option<Vec<TerminalArtifact>>Which files to write to artifact_directory; None writes all of
TerminalArtifact::ALL. Renderers of unselected files are skipped.
on_trace: Option<TerminalTraceCallback>Receives output, interaction, timeout and exit events as they happen.
Trait Implementations§
Source§impl Clone for TerminalCaptureOptions
impl Clone for TerminalCaptureOptions
Source§impl Debug for TerminalCaptureOptions
impl Debug for TerminalCaptureOptions
Auto Trait Implementations§
impl !RefUnwindSafe for TerminalCaptureOptions
impl !UnwindSafe for TerminalCaptureOptions
impl Freeze for TerminalCaptureOptions
impl Send for TerminalCaptureOptions
impl Sync for TerminalCaptureOptions
impl Unpin for TerminalCaptureOptions
impl UnsafeUnpin for TerminalCaptureOptions
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.