summaryrefslogtreecommitdiffstats
path: root/src/listview.rs
diff options
context:
space:
mode:
authorrabite <rabite@posteo.de>2019-03-17 06:05:31 +0100
committerrabite <rabite@posteo.de>2019-03-17 06:05:31 +0100
commitcc8020ee8c6060de86280b76a8bf5f7018ea6226 (patch)
tree2dfa747f0cc365b7ff0bd00ea3680a5dc715048e /src/listview.rs
parenta7abc0d6453248b06c88c739525c344e0a4220c2 (diff)
shorten HOME and show indicator for links
Diffstat (limited to 'src/listview.rs')
-rw-r--r--src/listview.rs13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/listview.rs b/src/listview.rs
index 416191b..58e7a3c 100644
--- a/src/listview.rs
+++ b/src/listview.rs
@@ -335,17 +335,25 @@ impl ListView<Files>
(selection_gap + name, crate::term::color_yellow())
} else { (name.clone(), "".to_string()) };
+ let (link_indicator, link_indicator_len) = if file.target.is_some() {
+ (format!("{}{}{}",
+ term::color_yellow(),
+ "--> ".to_string(),
+ term::highlight_color()),
+ 4)
+ } else { ("".to_string(), 0) };
let xsize = self.get_coordinates().unwrap().xsize();
let sized_string = term::sized_string(&name, xsize);
let size_pos = xsize - (size.to_string().len() as u16
- + unit.to_string().len() as u16);
+ + unit.to_string().len() as u16
+ + link_indicator_len);
let padding = sized_string.len() - sized_string.width_cjk();
let padding = xsize - padding as u16;
let padding = padding - tag_len;
format!(
- "{}{}{}{}{}{}{}",
+ "{}{}{}{}{}{}{}{}",
termion::cursor::Save,
match &file.color {
Some(color) => format!("{}{}{}{:padding$}{}",
@@ -365,6 +373,7 @@ impl ListView<Files>
} ,
termion::cursor::Restore,
termion::cursor::Right(size_pos),
+ link_indicator,
term::highlight_color(),
size,
unit