Просмотр исходного кода

Merge branch 'main' into mount_point

Christina Sørensen 2 лет назад
Родитель
Сommit
fe1ac47dd7

+ 4 - 4
Cargo.lock

@@ -3,10 +3,10 @@
 version = 3
 
 [[package]]
-name = "ansi_term"
-version = "0.12.1"
+name = "ansiterm"
+version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
+checksum = "4ab587f5395da16dd2e6939adf53dede583221b320cadfb94e02b5b7b9bf24cc"
 dependencies = [
  "winapi",
 ]
@@ -82,7 +82,7 @@ dependencies = [
 name = "eza"
 version = "0.11.0"
 dependencies = [
- "ansi_term",
+ "ansiterm",
  "datetime",
  "git2",
  "glob",

+ 1 - 1
Cargo.toml

@@ -36,7 +36,7 @@ name = "eza"
 
 
 [dependencies]
-ansi_term = "0.12"
+ansiterm = "0.12.2"
 glob = "0.3"
 lazy_static = "1.3"
 libc = "0.2"

+ 10 - 3
README.md

@@ -38,7 +38,7 @@ By deliberately making some decisions differently, eza attempts to be a more fea
  -   Selinux context output.
  -   Git repo status output.
  -   Human readable relative dates.
- -   Several security fixes (see [dependabot](https://github.com/eza-community/eza/security/dependabot?q=is%3Aclosed))
+ -   Several security fixes.
  -   Many smaller bug fixes/changes!
 
 ---
@@ -84,11 +84,17 @@ If you already have a Rust environment set up, you can use the `cargo install` c
 Cargo will build the `eza` binary and place it in `$HOME/.cargo`.
 
 ### Arch Linux
-[![AUR package](https://repology.org/badge/version-for-repo/aur/eza.svg)](https://repology.org/project/eza/versions)
 
-Eza is available in the [AUR](https://aur.archlinux.org/packages/eza-git).
+[![Arch Linux package](https://repology.org/badge/version-for-repo/arch/eza.svg)](https://repology.org/project/eza/versions)
+
+Eza is available in the [\[extra\]](https://archlinux.org/packages/extra/x86_64/eza/) repository of Arch Linux.
+
+```bash
+pacman -S eza
+```
 
 ### Debian and Ubuntu
+
 Eza is available from [deb.gierens.de](http://deb.gierens.de). The GPG public
 key is in this repo under [deb.asc](/deb.asc).
 
@@ -101,6 +107,7 @@ sudo apt install -y eza
 ```
 
 ### Nix (Linux, MacOS)
+
 [![nixpkgs unstable package](https://repology.org/badge/version-for-repo/nix_unstable/eza.svg)](https://repology.org/project/eza/versions)
 
 Eza is available from [Nixpkgs](https://github.com/NixOS/nixpkgs).

+ 37 - 1
flake.nix

@@ -108,11 +108,47 @@
             mode = "clippy";
             inherit buildInputs;
           };
+
+          vhs = pkgs.buildGoModule rec {
+            pname = "vhs";
+            version = "0.6.0";
+
+            src = pkgs.fetchFromGitHub {
+              owner = "PThorpe92";
+              repo = pname;
+              rev = "70ff84c3b192a2f3379adf56dd873c63bc8163ac";
+              hash = "sha256-QgE9XpJKZSJDjY2Z2GC1ndWgwXOJaB1fzvGUGFFf5XM=";
+            };
+
+            vendorHash = "sha256-zugGnhLrqqqVjMFZrO4rrSj3UzyHWpLra1rxyGG2ga4=";
+
+            nativeBuildInputs = with pkgs; [installShellFiles makeWrapper];
+
+            ldflags = ["-s" "-w" "-X=main.Version=${version}"];
+
+            postInstall = ''
+              wrapProgram $out/bin/vhs --prefix PATH : ${pkgs.lib.makeBinPath (pkgs.lib.optionals pkgs.stdenv.isLinux [pkgs.chromium] ++ [pkgs.ffmpeg pkgs.ttyd])}
+              $out/bin/vhs man > vhs.1
+              installManPage vhs.1
+              installShellCompletion --cmd vhs \
+                --bash <($out/bin/vhs completion bash) \
+                --fish <($out/bin/vhs completion fish) \
+                --zsh <($out/bin/vhs completion zsh)
+            '';
+
+            meta = with pkgs.lib; {
+              description = "A tool for generating terminal GIFs with code";
+              homepage = "https://github.com/charmbracelet/vhs";
+              changelog = "https://github.com/charmbracelet/vhs/releases/tag/v${version}";
+              license = licenses.mit;
+              maintainers = with maintainers; [cafkafk];
+            };
+          };
         };
 
         # For `nix develop`:
         devShells.default = pkgs.mkShell {
-          nativeBuildInputs = with pkgs; [toolchain just pandoc vhs convco];
+          nativeBuildInputs = with pkgs; [toolchain just pandoc packages.vhs convco];
         };
 
         # For `nix flake check`

+ 2 - 2
src/info/filetype.rs

@@ -7,7 +7,7 @@
 //! # Contributors
 //! Please keep these lists sorted. If you're using vim, :sort i
 
-use ansi_term::Style;
+use ansiterm::Style;
 use phf::{phf_map, Map};
 
 use crate::fs::File;
@@ -265,7 +265,7 @@ pub struct FileTypeColor;
 impl FileColours for FileTypeColor {
     /// Map from the file type to the display style/color for the file.
     fn colour_file(&self, file: &File<'_>) -> Option<Style> {
-        use ansi_term::Colour::*;
+        use ansiterm::Colour::*;
 
         match FileType::get_file_type(file) {
             Some(FileType::Compiled)   => Some(Yellow.normal()),

+ 1 - 1
src/logger.rs

@@ -2,7 +2,7 @@
 
 use std::ffi::OsStr;
 
-use ansi_term::{Colour, ANSIString};
+use ansiterm::{Colour, ANSIString};
 
 
 /// Sets the internal logger, changing the log level based on the value of an

+ 2 - 2
src/main.rs

@@ -28,7 +28,7 @@ use std::ffi::{OsStr, OsString};
 use std::io::{self, Write, ErrorKind};
 use std::path::{Component, PathBuf};
 
-use ansi_term::{ANSIStrings, Style};
+use ansiterm::{ANSIStrings, Style};
 
 use log::*;
 
@@ -97,7 +97,7 @@ fn main() {
     logger::configure(env::var_os(vars::EXA_DEBUG));
 
     #[cfg(windows)]
-    if let Err(e) = ansi_term::enable_ansi_support() {
+    if let Err(e) = ansiterm::enable_ansi_support() {
         warn!("Failed to enable ANSI support: {}", e);
     }
 

+ 1 - 1
src/output/cell.rs

@@ -3,7 +3,7 @@
 use std::iter::Sum;
 use std::ops::{Add, Deref, DerefMut};
 
-use ansi_term::{Style, ANSIString, ANSIStrings};
+use ansiterm::{Style, ANSIString, ANSIStrings};
 use unicode_width::UnicodeWidthStr;
 
 

+ 1 - 1
src/output/details.rs

@@ -65,7 +65,7 @@ use std::mem::MaybeUninit;
 use std::path::PathBuf;
 use std::vec::IntoIter as VecIntoIter;
 
-use ansi_term::Style;
+use ansiterm::Style;
 use scoped_threadpool::Pool;
 
 use crate::fs::{Dir, File};

+ 1 - 1
src/output/escape.rs

@@ -1,4 +1,4 @@
-use ansi_term::{ANSIString, Style};
+use ansiterm::{ANSIString, Style};
 
 
 pub fn escape(string: String, bits: &mut Vec<ANSIString<'_>>, good: Style, bad: Style) {

+ 1 - 1
src/output/file_name.rs

@@ -1,7 +1,7 @@
 use std::fmt::Debug;
 use std::path::Path;
 
-use ansi_term::{ANSIString, Style};
+use ansiterm::{ANSIString, Style};
 
 use crate::fs::mounts::MountedFs;
 use crate::fs::{File, FileTarget};

+ 1 - 1
src/output/grid_details.rs

@@ -2,7 +2,7 @@
 
 use std::io::{self, Write};
 
-use ansi_term::ANSIStrings;
+use ansiterm::ANSIStrings;
 use term_grid as grid;
 
 use crate::fs::{Dir, File};

+ 1 - 1
src/output/icons.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 use phf::{phf_map, Map};
 
 use crate::fs::File;

+ 1 - 1
src/output/lines.rs

@@ -1,6 +1,6 @@
 use std::io::{self, Write};
 
-use ansi_term::ANSIStrings;
+use ansiterm::ANSIStrings;
 
 use crate::fs::File;
 use crate::fs::filter::FileFilter;

+ 3 - 3
src/output/render/blocks.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 use locale::Numeric as NumericLocale;
 use number_prefix::Prefix;
 
@@ -67,8 +67,8 @@ pub trait Colours {
 
 #[cfg(test)]
 pub mod test {
-    use ansi_term::Style;
-    use ansi_term::Colour::*;
+    use ansiterm::Style;
+    use ansiterm::Colour::*;
 
     use super::Colours;
     use crate::output::cell::{TextCell, DisplayWidth};

+ 1 - 1
src/output/render/filetype.rs

@@ -1,4 +1,4 @@
-use ansi_term::{ANSIString, Style};
+use ansiterm::{ANSIString, Style};
 
 use crate::fs::fields as f;
 

+ 3 - 3
src/output/render/git.rs

@@ -1,4 +1,4 @@
-use ansi_term::{ANSIString, Style, Color};
+use ansiterm::{ANSIString, Style, Color};
 
 use crate::output::cell::{TextCell, DisplayWidth};
 use crate::fs::fields as f;
@@ -79,8 +79,8 @@ pub mod test {
     use crate::output::cell::{TextCell, DisplayWidth};
     use crate::fs::fields as f;
 
-    use ansi_term::Colour::*;
-    use ansi_term::Style;
+    use ansiterm::Colour::*;
+    use ansiterm::Style;
 
 
     struct TestColours;

+ 3 - 3
src/output/render/groups.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 use uzers::{Users, Groups};
 
 use crate::fs::fields as f;
@@ -62,8 +62,8 @@ pub mod test {
     use uzers::{User, Group};
     use uzers::mock::MockUsers;
     use uzers::os::unix::GroupExt;
-    use ansi_term::Colour::*;
-    use ansi_term::Style;
+    use ansiterm::Colour::*;
+    use ansiterm::Style;
 
 
     struct TestColours;

+ 2 - 2
src/output/render/inode.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 
 use crate::fs::fields as f;
 use crate::output::cell::TextCell;
@@ -16,7 +16,7 @@ pub mod test {
     use crate::output::cell::TextCell;
     use crate::fs::fields as f;
 
-    use ansi_term::Colour::*;
+    use ansiterm::Colour::*;
 
 
     #[test]

+ 3 - 3
src/output/render/links.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 #[cfg(unix)]
 use locale::Numeric as NumericLocale;
 
@@ -32,8 +32,8 @@ pub mod test {
     #[cfg(unix)]
     use crate::fs::fields as f;
 
-    use ansi_term::Colour::*;
-    use ansi_term::Style;
+    use ansiterm::Colour::*;
+    use ansiterm::Style;
     #[cfg(unix)]
     use locale;
 

+ 2 - 2
src/output/render/octal.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 
 use crate::fs::fields as f;
 use crate::output::cell::TextCell;
@@ -37,7 +37,7 @@ pub mod test {
     use crate::output::cell::TextCell;
     use crate::fs::fields as f;
 
-    use ansi_term::Colour::*;
+    use ansiterm::Colour::*;
 
 
     #[test]

+ 3 - 3
src/output/render/permissions.rs

@@ -1,6 +1,6 @@
 use std::iter;
 
-use ansi_term::{ANSIString, Style};
+use ansiterm::{ANSIString, Style};
 
 use crate::fs::fields as f;
 use crate::output::cell::{TextCell, DisplayWidth};
@@ -183,8 +183,8 @@ pub mod test {
     use crate::output::cell::TextCellContents;
     use crate::fs::fields as f;
 
-    use ansi_term::Colour::*;
-    use ansi_term::Style;
+    use ansiterm::Colour::*;
+    use ansiterm::Style;
 
 
     struct TestColours;

+ 1 - 1
src/output/render/securityctx.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 
 use crate::fs::fields as f;
 use crate::output::cell::{TextCell, DisplayWidth};

+ 3 - 3
src/output/render/size.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 use locale::Numeric as NumericLocale;
 use number_prefix::Prefix;
 
@@ -95,8 +95,8 @@ pub mod test {
     use crate::fs::fields as f;
 
     use locale::Numeric as NumericLocale;
-    use ansi_term::Colour::*;
-    use ansi_term::Style;
+    use ansiterm::Colour::*;
+    use ansiterm::Style;
     use number_prefix::Prefix;
 
 

+ 1 - 1
src/output/render/times.rs

@@ -1,7 +1,7 @@
 use std::time::SystemTime;
 
 use datetime::TimeZone;
-use ansi_term::Style;
+use ansiterm::Style;
 
 use crate::output::cell::TextCell;
 use crate::output::time::TimeFormat;

+ 3 - 3
src/output/render/users.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 use uzers::Users;
 
 use crate::fs::fields as f;
@@ -45,8 +45,8 @@ pub mod test {
 
     use uzers::User;
     use uzers::mock::MockUsers;
-    use ansi_term::Colour::*;
-    use ansi_term::Style;
+    use ansiterm::Colour::*;
+    use ansiterm::Style;
 
 
     struct TestColours;

+ 2 - 2
src/theme/default_theme.rs

@@ -1,5 +1,5 @@
-use ansi_term::Style;
-use ansi_term::Colour::*;
+use ansiterm::Style;
+use ansiterm::Colour::*;
 
 use crate::theme::ColourScale;
 use crate::theme::ui_styles::*;

+ 3 - 3
src/theme/lsc.rs

@@ -1,8 +1,8 @@
 use std::iter::Peekable;
 use std::ops::FnMut;
 
-use ansi_term::{Colour, Style};
-use ansi_term::Colour::*;
+use ansiterm::{Colour, Style};
+use ansiterm::Colour::*;
 
 
 // Parsing the LS_COLORS environment variable into a map of names to Style values.
@@ -143,7 +143,7 @@ impl<'var> Pair<'var> {
 #[cfg(test)]
 mod ansi_test {
     use super::*;
-    use ansi_term::Style;
+    use ansiterm::Style;
 
     macro_rules! test {
         ($name:ident: $input:expr => $result:expr) => {

+ 3 - 3
src/theme/mod.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 
 use crate::fs::File;
 use crate::output::file_name::Colours as FileNameColours;
@@ -371,7 +371,7 @@ fn apply_overlay(mut base: Style, overlay: Style) -> Style {
 
     base
 }
-// TODO: move this function to the ansi_term crate
+// TODO: move this function to the ansiterm crate
 
 
 #[cfg(test)]
@@ -379,7 +379,7 @@ fn apply_overlay(mut base: Style, overlay: Style) -> Style {
 mod customs_test {
     use super::*;
     use crate::theme::ui_styles::UiStyles;
-    use ansi_term::Colour::*;
+    use ansiterm::Colour::*;
 
     macro_rules! test {
         ($name:ident:  ls $ls:expr, exa $exa:expr  =>  colours $expected:ident -> $process_expected:expr) => {

+ 1 - 1
src/theme/ui_styles.rs

@@ -1,4 +1,4 @@
-use ansi_term::Style;
+use ansiterm::Style;
 
 use crate::theme::lsc::Pair;
 

+ 36 - 36
tests/references/eza-blocksize.txt

@@ -75,7 +75,7 @@
 
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l --blocksize
+> cargo run -q -- -l --blocksize --no-user --no-time --no-filesize
 
 
 
@@ -94,7 +94,7 @@
 
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l --blocksize
+> cargo run -q -- -l --blocksize --no-user --no-time --no-filesize
 
 
 
@@ -113,40 +113,40 @@
 
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l --blocksize
-.rw-r--r-- 0 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --blocksize --no-user --no-time --no-filesize
+.rw-r--r-- 0 a
+.rw-r--r-- 0 b
+.rw-r--r-- 0 c
+.rw-r--r-- 0 d
+.rw-r--r-- 0 e
+.rw-r--r-- 0 f
+.rw-r--r-- 0 g
+.rw-r--r-- 0 h
+.rw-r--r-- 0 i
+.rw-r--r-- 0 j
+.rw-r--r-- 0 k
+.rw-r--r-- 0 l
+.rw-r--r-- 0 m
+.rw-r--r-- 0 n
+.rw-r--r-- 0 o
+.rw-r--r-- 0 p
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l --blocksize
-.rw-r--r-- 0 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --blocksize --no-user --no-time --no-filesize
+.rw-r--r-- 0 a
+.rw-r--r-- 0 b
+.rw-r--r-- 0 c
+.rw-r--r-- 0 d
+.rw-r--r-- 0 e
+.rw-r--r-- 0 f
+.rw-r--r-- 0 g
+.rw-r--r-- 0 h
+.rw-r--r-- 0 i
+.rw-r--r-- 0 j
+.rw-r--r-- 0 k
+.rw-r--r-- 0 l
+.rw-r--r-- 0 m
+.rw-r--r-- 0 n
+.rw-r--r-- 0 o
+.rw-r--r-- 0 p
 ────────────────────────────────────────────────────────────────────────────────

+ 138 - 138
tests/references/eza-long.txt

@@ -75,7 +75,7 @@
 
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
+> cargo run -q -- -l --no-user --no-time --no-filesize
 
 
 
@@ -94,7 +94,7 @@
 
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
+> cargo run -q -- -l --no-user --no-time --no-filesize
 
 
 
@@ -113,154 +113,154 @@
 
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
-.rw-r--r-- 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- a
+.rw-r--r-- b
+.rw-r--r-- c
+.rw-r--r-- d
+.rw-r--r-- e
+.rw-r--r-- f
+.rw-r--r-- g
+.rw-r--r-- h
+.rw-r--r-- i
+.rw-r--r-- j
+.rw-r--r-- k
+.rw-r--r-- l
+.rw-r--r-- m
+.rw-r--r-- n
+.rw-r--r-- o
+.rw-r--r-- p
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
-.rw-r--r-- 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- a
+.rw-r--r-- b
+.rw-r--r-- c
+.rw-r--r-- d
+.rw-r--r-- e
+.rw-r--r-- f
+.rw-r--r-- g
+.rw-r--r-- h
+.rw-r--r-- i
+.rw-r--r-- j
+.rw-r--r-- k
+.rw-r--r-- l
+.rw-r--r-- m
+.rw-r--r-- n
+.rw-r--r-- o
+.rw-r--r-- p
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
-.rw-r--r-- 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- a
+.rw-r--r-- b
+.rw-r--r-- c
+.rw-r--r-- d
+.rw-r--r-- e
+.rw-r--r-- f
+.rw-r--r-- g
+.rw-r--r-- h
+.rw-r--r-- i
+.rw-r--r-- j
+.rw-r--r-- k
+.rw-r--r-- l
+.rw-r--r-- m
+.rw-r--r-- n
+.rw-r--r-- o
+.rw-r--r-- p
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
-.rw-r--r-- 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- a
+.rw-r--r-- b
+.rw-r--r-- c
+.rw-r--r-- d
+.rw-r--r-- e
+.rw-r--r-- f
+.rw-r--r-- g
+.rw-r--r-- h
+.rw-r--r-- i
+.rw-r--r-- j
+.rw-r--r-- k
+.rw-r--r-- l
+.rw-r--r-- m
+.rw-r--r-- n
+.rw-r--r-- o
+.rw-r--r-- p
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
-.rw-r--r-- 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- a
+.rw-r--r-- b
+.rw-r--r-- c
+.rw-r--r-- d
+.rw-r--r-- e
+.rw-r--r-- f
+.rw-r--r-- g
+.rw-r--r-- h
+.rw-r--r-- i
+.rw-r--r-- j
+.rw-r--r-- k
+.rw-r--r-- l
+.rw-r--r-- m
+.rw-r--r-- n
+.rw-r--r-- o
+.rw-r--r-- p
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
-.rw-r--r-- 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- a
+.rw-r--r-- b
+.rw-r--r-- c
+.rw-r--r-- d
+.rw-r--r-- e
+.rw-r--r-- f
+.rw-r--r-- g
+.rw-r--r-- h
+.rw-r--r-- i
+.rw-r--r-- j
+.rw-r--r-- k
+.rw-r--r-- l
+.rw-r--r-- m
+.rw-r--r-- n
+.rw-r--r-- o
+.rw-r--r-- p
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
-.rw-r--r-- 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- a
+.rw-r--r-- b
+.rw-r--r-- c
+.rw-r--r-- d
+.rw-r--r-- e
+.rw-r--r-- f
+.rw-r--r-- g
+.rw-r--r-- h
+.rw-r--r-- i
+.rw-r--r-- j
+.rw-r--r-- k
+.rw-r--r-- l
+.rw-r--r-- m
+.rw-r--r-- n
+.rw-r--r-- o
+.rw-r--r-- p
 ────────────────────────────────────────────────────────────────────────────────
 > cd tests/itest
-> cargo run -q -- -l
-.rw-r--r-- 0 ces 20 Aug 06:45 a
-.rw-r--r-- 0 ces 20 Aug 06:45 b
-.rw-r--r-- 0 ces 20 Aug 06:45 c
-.rw-r--r-- 0 ces 20 Aug 06:45 d
-.rw-r--r-- 0 ces 20 Aug 06:45 e
-.rw-r--r-- 0 ces 20 Aug 06:45 f
-.rw-r--r-- 0 ces 20 Aug 06:45 g
-.rw-r--r-- 0 ces 20 Aug 06:45 h
-.rw-r--r-- 0 ces 20 Aug 06:45 i
-.rw-r--r-- 0 ces 20 Aug 06:45 j
-.rw-r--r-- 0 ces 20 Aug 06:45 k
-.rw-r--r-- 0 ces 20 Aug 06:45 l
-.rw-r--r-- 0 ces 20 Aug 06:45 m
-.rw-r--r-- 0 ces 20 Aug 06:45 n
-.rw-r--r-- 0 ces 20 Aug 06:45 o
-.rw-r--r-- 0 ces 20 Aug 06:45 p
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- a
+.rw-r--r-- b
+.rw-r--r-- c
+.rw-r--r-- d
+.rw-r--r-- e
+.rw-r--r-- f
+.rw-r--r-- g
+.rw-r--r-- h
+.rw-r--r-- i
+.rw-r--r-- j
+.rw-r--r-- k
+.rw-r--r-- l
+.rw-r--r-- m
+.rw-r--r-- n
+.rw-r--r-- o
+.rw-r--r-- p
 ────────────────────────────────────────────────────────────────────────────────

+ 56 - 56
tests/references/main.txt

@@ -17,7 +17,7 @@
 
 
 ────────────────────────────────────────────────────────────────────────────────
-> cargo run -q --
+> cargo run -q -- -l --no-user --no-time --no-filesize
 
 
 
@@ -36,7 +36,7 @@
 
 
 ────────────────────────────────────────────────────────────────────────────────
-> cargo run -q --
+> cargo run -q -- -l --no-user --no-time --no-filesize
 
 
 
@@ -55,60 +55,60 @@
 
 
 ────────────────────────────────────────────────────────────────────────────────
-> cargo run -q --
-build.rs            CONTRIBUTING.md  out.gif              src
-Cargo.lock          devtools         README.md            target
-Cargo.toml          flake.lock       result               tests
-CHANGELOG.md        flake.nix        rust-toolchain.toml  treefmt.nix
-cliff.toml          Justfile         screenshots.png      Vagrantfile
-CODE_OF_CONDUCT.md  LICENCE          SECURITY.md          xtests
-completions         man              snap
->
-
-
-
-
-
-
-
-
-
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- build.rs
+.rw-r--r-- Cargo.lock
+.rw-r--r-- Cargo.toml
+.rw-r--r-- CHANGELOG.md
+.rw-r--r-- cliff.toml
+.rw-r--r-- CODE_OF_CONDUCT.md
+drwxr-xr-x completions
+.rw-r--r-- CONTRIBUTING.md
+.rw-r--r-- deb.asc
+drwxr-xr-x devtools
+.rw-r--r-- flake.lock
+.rw-r--r-- flake.nix
+.rw-r--r-- Justfile
+.rw-r--r-- LICENCE
+drwxr-xr-x man
+.rw-r--r-- out.gif
+.rw-r--r-- README.md
 ────────────────────────────────────────────────────────────────────────────────
-> cargo run -q --
-build.rs            CONTRIBUTING.md  out.gif              src
-Cargo.lock          devtools         README.md            target
-Cargo.toml          flake.lock       result               tests
-CHANGELOG.md        flake.nix        rust-toolchain.toml  treefmt.nix
-cliff.toml          Justfile         screenshots.png      Vagrantfile
-CODE_OF_CONDUCT.md  LICENCE          SECURITY.md          xtests
-completions         man              snap
->
-
-
-
-
-
-
-
-
-
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- build.rs
+.rw-r--r-- Cargo.lock
+.rw-r--r-- Cargo.toml
+.rw-r--r-- CHANGELOG.md
+.rw-r--r-- cliff.toml
+.rw-r--r-- CODE_OF_CONDUCT.md
+drwxr-xr-x completions
+.rw-r--r-- CONTRIBUTING.md
+.rw-r--r-- deb.asc
+drwxr-xr-x devtools
+.rw-r--r-- flake.lock
+.rw-r--r-- flake.nix
+.rw-r--r-- Justfile
+.rw-r--r-- LICENCE
+drwxr-xr-x man
+.rw-r--r-- out.gif
+.rw-r--r-- README.md
 ────────────────────────────────────────────────────────────────────────────────
-> cargo run -q --
-build.rs            CONTRIBUTING.md  out.gif              src
-Cargo.lock          devtools         README.md            target
-Cargo.toml          flake.lock       result               tests
-CHANGELOG.md        flake.nix        rust-toolchain.toml  treefmt.nix
-cliff.toml          Justfile         screenshots.png      Vagrantfile
-CODE_OF_CONDUCT.md  LICENCE          SECURITY.md          xtests
-completions         man              snap
->
-
-
-
-
-
-
-
-
-
+> cargo run -q -- -l --no-user --no-time --no-filesize
+.rw-r--r-- build.rs
+.rw-r--r-- Cargo.lock
+.rw-r--r-- Cargo.toml
+.rw-r--r-- CHANGELOG.md
+.rw-r--r-- cliff.toml
+.rw-r--r-- CODE_OF_CONDUCT.md
+drwxr-xr-x completions
+.rw-r--r-- CONTRIBUTING.md
+.rw-r--r-- deb.asc
+drwxr-xr-x devtools
+.rw-r--r-- flake.lock
+.rw-r--r-- flake.nix
+.rw-r--r-- Justfile
+.rw-r--r-- LICENCE
+drwxr-xr-x man
+.rw-r--r-- out.gif
+.rw-r--r-- README.md
 ────────────────────────────────────────────────────────────────────────────────

+ 3 - 1
tests/tapes/eza-blocksize.tape

@@ -1,5 +1,7 @@
 Output outfile
 
+Set DisableRender true
+
 Set Shell fish
 Sleep 2s
 
@@ -7,7 +9,7 @@ Type "cd tests/itest"
 Enter
 Sleep 1s
 
-Type "cargo run -q -- -l --blocksize"
+Type "cargo run -q -- -l --blocksize --no-user --no-time --no-filesize"
 Enter
 Sleep 3s
 

+ 5 - 3
tests/tapes/eza-long.tape

@@ -1,5 +1,7 @@
 Output outfile
 
+Set DisableRender true
+
 Set Shell fish
 Sleep 2s
 
@@ -7,15 +9,15 @@ Type "cd tests/itest"
 Enter
 Sleep 1s
 
-Type "cargo run -q -- -l"
+Type "cargo run -q -- -l --no-user --no-time --no-filesize"
 Enter
 Sleep 3s
 
-Type "cargo run -q -- -l --grid"
+Type "cargo run -q -- -l --no-user --no-time --no-filesize"
 Enter
 Sleep 3s
 
-Type "cargo run -q -- -l --grid --icons"
+Type "cargo run -q -- -l --grid --icons --grid --no-user --no-time"
 Enter
 Sleep 3s
 

+ 3 - 1
tests/tapes/main.tape

@@ -1,8 +1,10 @@
 Output outfile
 
+Set DisableRender true
+
 Set Shell fish
 Sleep 2s
-Type "cargo run -q -- -l"
+Type "cargo run -q -- -l --no-user --no-time --no-filesize"
 Enter
 Sleep 3s
 Sleep 3s