feat(output): handle icon overrides in FileName.paint

This basically ports the PR #914 and thus also resolves #909

Signed-off-by: Sandro-Alessio Gierens <sandro@gierens.de>
This commit is contained in:
Sandro-Alessio Gierens 2024-03-31 11:49:20 +02:00 committed by Christina Sørensen
parent b16d9bbdd9
commit 80aa4702ef

View file

@ -203,8 +203,12 @@ impl<'a, 'dir, C: Colours> FileName<'a, 'dir, C> {
};
if let Some(spaces_count) = spaces_count_opt {
let style = iconify_style(self.colours.icon().unwrap_or_else(|| self.style()));
let file_icon = icon_for_file(self.file).to_string();
let style = iconify_style(self.style());
let file_icon = match self.colours.icon_override(self.file) {
Some(icon) => icon,
None => icon_for_file(self.file),
}
.to_string();
bits.push(style.paint(file_icon));
bits.push(style.paint(" ".repeat(spaces_count as usize)));
}