mirror of
https://github.com/nushell/nushell.git
synced 2025-01-22 14:18:55 +01:00
table -e
align key to 2nd line (#6842)
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
This commit is contained in:
parent
ffb1dfb012
commit
b2c29117d9
@ -439,6 +439,7 @@ fn build_expanded_table(
|
||||
}
|
||||
|
||||
let is_limited = matches!(expand_limit, Some(0));
|
||||
let mut is_expanded = false;
|
||||
let value = if is_limited {
|
||||
value_to_styled_string(&value, 0, config, &color_hm).0
|
||||
} else {
|
||||
@ -469,6 +470,7 @@ fn build_expanded_table(
|
||||
|
||||
let result =
|
||||
table.draw_table(config, &color_hm, alignments, &theme, remaining_width);
|
||||
is_expanded = true;
|
||||
match result {
|
||||
Some(result) => result,
|
||||
None => return Ok(None),
|
||||
@ -482,6 +484,14 @@ fn build_expanded_table(
|
||||
}
|
||||
};
|
||||
|
||||
// we want to have a key being aligned to 2nd line,
|
||||
// we could use Padding for it but,
|
||||
// the easiest way to do so is just push a new_line char before
|
||||
let mut key = key;
|
||||
if !key.is_empty() && is_expanded && theme.has_top_line() {
|
||||
key.insert(0, '\n');
|
||||
}
|
||||
|
||||
let key = Value::String {
|
||||
val: key,
|
||||
span: Span::new(0, 0),
|
||||
|
@ -114,4 +114,11 @@ impl TableTheme {
|
||||
theme: Style::blank().into(),
|
||||
}
|
||||
}
|
||||
|
||||
pub fn has_top_line(&self) -> bool {
|
||||
self.theme.get_top().is_some()
|
||||
|| self.theme.get_top_intersection().is_some()
|
||||
|| self.theme.get_top_left().is_some()
|
||||
|| self.theme.get_top_right().is_some()
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user