mirror of
https://github.com/Llewellynvdm/exa.git
synced 2024-11-28 22:56:29 +00:00
Merge pull request #842 from ariasuni/dont-aggregate-git-ignored-status2
Fix deducing git ignored state for files too, not only directories
This commit is contained in:
commit
051a46c643
@ -300,6 +300,8 @@ touch "ignoreds/music.m4a"
|
||||
mkdir "ignoreds/nested"
|
||||
touch "ignoreds/nested/70s grove.mp3"
|
||||
touch "ignoreds/nested/funky chicken.m4a"
|
||||
mkdir "ignoreds/nested2"
|
||||
touch "ignoreds/nested2/ievan polkka.mp3"
|
||||
|
||||
mkdir "target"
|
||||
touch "target/another ignored file"
|
||||
|
@ -242,21 +242,30 @@ impl Git {
|
||||
else { self.file_status(index) }
|
||||
}
|
||||
|
||||
/// Get the status for the file at the given path.
|
||||
/// Get the user-facing status of a file.
|
||||
/// We check the statuses directly applying to a file, and for the ignored
|
||||
/// status we check if any of its parents directories is ignored by git.
|
||||
fn file_status(&self, file: &Path) -> f::Git {
|
||||
let path = reorient(file);
|
||||
|
||||
self.statuses.iter()
|
||||
.find(|p| p.0.as_path() == path)
|
||||
.map(|&(_, s)| f::Git { staged: index_status(s), unstaged: working_tree_status(s) })
|
||||
.unwrap_or_default()
|
||||
let s = self.statuses.iter()
|
||||
.filter(|p| if p.1 == git2::Status::IGNORED {
|
||||
path.starts_with(&p.0)
|
||||
} else {
|
||||
p.0 == path
|
||||
})
|
||||
.fold(git2::Status::empty(), |a, b| a | b.1);
|
||||
|
||||
let staged = index_status(s);
|
||||
let unstaged = working_tree_status(s);
|
||||
f::Git { staged, unstaged }
|
||||
}
|
||||
|
||||
/// Get the combined, user-facing status of a file or directory.
|
||||
/// Get the combined, user-facing status of a directory.
|
||||
/// Statuses are aggregating (for example, a directory is considered
|
||||
/// modified if any file under it has the status modified), except
|
||||
/// for ignored which applies to files under (for example, a file is
|
||||
/// considered ignored if one of its parent directories is ignored)
|
||||
/// modified if any file under it has the status modified), except for
|
||||
/// ignored status which applies to files under (for example, a directory
|
||||
/// is considered ignored if one of its parent directories is ignored).
|
||||
fn dir_status(&self, dir: &Path) -> f::Git {
|
||||
let path = reorient(dir);
|
||||
|
||||
|
@ -101,13 +101,21 @@ status = 0
|
||||
tags = [ 'long', 'git' ]
|
||||
|
||||
[[cmd]]
|
||||
name = "‘exa --git -l’ with an ignored directory argument does not flag the contents as ignored"
|
||||
name = "‘exa --git -l’ with an ignored directory argument flags the contents as ignored"
|
||||
shell = "exa --git -l /testcases/git2/target"
|
||||
stdout = { file = "outputs/git2_long_ignoreddir.ansitxt" }
|
||||
stderr = { empty = true }
|
||||
status = 0
|
||||
tags = [ 'long', 'git' ]
|
||||
|
||||
[[cmd]]
|
||||
name = "‘exa --git -l --list-dirs’ with a directory argument doesn’t flag it as ignored if only the content is"
|
||||
shell = "exa --git -l --list-dirs /testcases/git2/ignoreds/nested2"
|
||||
stdout = { file = "outputs/git2_long_ignoredcontent.ansitxt" }
|
||||
stderr = { empty = true }
|
||||
status = 0
|
||||
tags = [ 'long', 'git' ]
|
||||
|
||||
[[cmd]]
|
||||
name = "‘exa --git -l’ with a nested repository argument uses the sub-repository rules"
|
||||
shell = "exa --git -l /testcases/git2/deeply/nested/repository"
|
||||
@ -155,7 +163,7 @@ status = 0
|
||||
tags = [ 'long', 'git' ]
|
||||
|
||||
[[cmd]]
|
||||
name = "‘exa --git -l’ shows a Git status column for multiple repositories across multiple directories"
|
||||
name = "‘exa --git -l’ shows a Git status column for multiple repositories across multiple directories 2"
|
||||
shell = "exa --git -l /testcases/{git2/deeply/nested/directory,git/edits,git2/target,git2/deeply,git}"
|
||||
stdout = { file = "outputs/git1+2_long_nested.ansitxt" }
|
||||
stderr = { empty = true }
|
||||
|
@ -8,7 +8,7 @@
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m20[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[34mM[0m unstaged
|
||||
|
||||
/testcases/git2/target:
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m another ignored file
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m another ignored file
|
||||
|
||||
/testcases/git2/deeply:
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [1;34mnested[0m
|
||||
|
@ -1 +1 @@
|
||||
[38;5;92mmusic.m4a[0m [1;34mnested[0m
|
||||
[38;5;92mmusic.m4a[0m [1;34mnested[0m [1;34mnested2[0m
|
||||
|
@ -1,2 +1,3 @@
|
||||
[38;5;92mmusic.m4a[0m
|
||||
[1;34mnested[0m
|
||||
[1;34mnested2[0m
|
||||
|
@ -1,2 +1,3 @@
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;92mmusic.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [1;34mnested[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [1;34mnested2[0m
|
||||
|
@ -1 +1 @@
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;92mmusic.m4a[0m [1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [1;34mnested[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;92mmusic.m4a[0m [1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [1;34mnested[0m [1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [1;34mnested2[0m
|
||||
|
@ -1,5 +1,8 @@
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;92mmusic.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [1;34mnested[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [1;34mnested2[0m
|
||||
|
||||
/testcases/git2/ignoreds/nested:
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;92mfunky chicken.m4a[0m
|
||||
|
||||
/testcases/git2/ignoreds/nested2:
|
||||
|
@ -1,4 +1,5 @@
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [36m/testcases/git2/[1;34mignoreds[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m├──[0m [38;5;92mmusic.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m└──[0m [1;34mnested[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m├──[0m [1;34mnested[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m│ └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m└──[0m [1;34mnested2[0m
|
||||
|
@ -1,4 +1,5 @@
|
||||
[36m/testcases/git2/[1;34mignoreds[0m
|
||||
[38;5;244m├──[0m [38;5;92mmusic.m4a[0m
|
||||
[38;5;244m└──[0m [1;34mnested[0m
|
||||
[38;5;244m └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[38;5;244m├──[0m [1;34mnested[0m
|
||||
[38;5;244m│ └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[38;5;244m└──[0m [1;34mnested2[0m
|
||||
|
1
xtests/outputs/git2_long_ignoredcontent.ansitxt
Normal file
1
xtests/outputs/git2_long_ignoredcontent.ansitxt
Normal file
@ -0,0 +1 @@
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m [36m/testcases/git2/ignoreds/[1;34mnested2[0m
|
@ -1 +1 @@
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m another ignored file
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m another ignored file
|
||||
|
@ -1,3 +1,4 @@
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;92mmusic.m4a[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;92mmusic.mp3[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [1;34mnested[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m [1;34mnested2[0m
|
||||
|
@ -5,6 +5,7 @@
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;92mmusic.m4a[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;92mmusic.mp3[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [1;34mnested[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m [1;34mnested2[0m
|
||||
|
||||
/testcases/git2/target:
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m another ignored file
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m another ignored file
|
||||
|
@ -20,10 +20,14 @@
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;92mmusic.m4a[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;92mmusic.mp3[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [1;34mnested[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m [1;34mnested2[0m
|
||||
|
||||
/testcases/git2/ignoreds/nested:
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;92m70s grove.mp3[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;92mfunky chicken.m4a[0m
|
||||
|
||||
/testcases/git2/ignoreds/nested2:
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;92mievan polkka.mp3[0m
|
||||
|
||||
/testcases/git2/target:
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m another ignored file
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m another ignored file
|
||||
|
@ -18,6 +18,9 @@
|
||||
/testcases/git2/ignoreds:
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;92mmusic.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [1;34mnested[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [1;34mnested2[0m
|
||||
|
||||
/testcases/git2/ignoreds/nested:
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;92mfunky chicken.m4a[0m
|
||||
|
||||
/testcases/git2/ignoreds/nested2:
|
||||
|
@ -9,8 +9,10 @@
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;244m├──[0m [1;34mignoreds[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;244m│ ├──[0m [38;5;92mmusic.m4a[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;244m│ ├──[0m [38;5;92mmusic.mp3[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;244m│ └──[0m [1;34mnested[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;244m│ ├──[0m [38;5;92m70s grove.mp3[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;244m│ └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;244m│ ├──[0m [1;34mnested[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;244m│ │ ├──[0m [38;5;92m70s grove.mp3[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[32mN[0m [38;5;244m│ │ └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m [38;5;244m│ └──[0m [1;34mnested2[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;244m│ └──[0m [38;5;92mievan polkka.mp3[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;244m└──[0m [1;34mtarget[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m--[0m [38;5;244m └──[0m another ignored file
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m-[0m[2mI[0m [38;5;244m └──[0m another ignored file
|
||||
|
@ -8,5 +8,6 @@
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m│ └──[0m subfile
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m└──[0m [1;34mignoreds[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m ├──[0m [38;5;92mmusic.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m └──[0m [1;34mnested[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m ├──[0m [1;34mnested[0m
|
||||
.[1;33mr[31mw[0m[38;5;244m-[33mr[31mw[38;5;244m-[33mr[38;5;244m--[0m [1;32m0[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m │ └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[1;34md[33mr[31mw[32mx[0m[33mr[31mw[32mx[33mr[38;5;244m-[32mx[0m [38;5;244m-[0m cassowary [34m 1 Jan 12:34[0m [38;5;244m └──[0m [1;34mnested2[0m
|
||||
|
@ -8,5 +8,6 @@
|
||||
[38;5;244m│ └──[0m subfile
|
||||
[38;5;244m└──[0m [1;34mignoreds[0m
|
||||
[38;5;244m ├──[0m [38;5;92mmusic.m4a[0m
|
||||
[38;5;244m └──[0m [1;34mnested[0m
|
||||
[38;5;244m └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[38;5;244m ├──[0m [1;34mnested[0m
|
||||
[38;5;244m │ └──[0m [38;5;92mfunky chicken.m4a[0m
|
||||
[38;5;244m └──[0m [1;34mnested2[0m
|
||||
|
Loading…
Reference in New Issue
Block a user